Added tool to generate BOM

This commit is contained in:
2022-03-05 15:32:19 +01:00
parent 83e6dee3f3
commit 4ff8fa021b
2 changed files with 46 additions and 0 deletions

27
genbom.sh Normal file
View File

@@ -0,0 +1,27 @@
#!/usr/bin/env bash
function bom() {
openscad --export-format echo -o - assembly.scad |grep 'BOM: print'
}
function run_scad() {
openscad --export-format echo -o - "$@" gen_parts.scad |
sed -ne '/^ECHO: /{' -e 's/^ECHO: "\(.*\)"$/\1/' -e p -e '}'
}
function partcount() {
run_scad -D id=0
}
nparts=$(partcount |sed -e 's/Children: //')
mkdir -p print
for i in $(seq $nparts); do
part_name="$(run_scad -D id=$i |grep 'BOM: print' |sed -e 's/BOM: print \([^(]*\).*/\1/')"
printf "%s: <%s>\n" $i "$part_name"
fname="print/${i}_${part_name}"
openscad -o "${fname}.3mf" \
-D id=$i \
gen_parts.scad
done
#run_scad -D id=1