Files
film-scanner/mechanical/genbom.sh

28 lines
662 B
Bash

#!/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}.amf" \
-D id=$i \
gen_parts.scad
done
#run_scad -D id=1