MAIN_AIRFOIL = ag41d ELEVATOR_AIRFOIL = b540ols-il RUDDER_AIRFOIL = ht13 TAIL = t-tail UNAME = $(shell uname) ifeq ($(UNAME), Linux) SCAD = openscad endif ifeq ($(UNAME), Darwin) SCAD = OpenSCAD endif AIRFOILS = $(MAIN_AIRFOIL).dat $(ELEVATOR_AIRFOIL).dat $(RUDDER_AIRFOIL).dat b: build/allparts.svg build: mkdir -p build build/assembly.scad: src/*.rs $(AIRFOILS) mkdir -p build cargo run $(AIRFOILS) $(TAIL) assembly build/part%.scad: src/*.rs $(AIRFOILS) mkdir -p build cargo run $(AIRFOILS) parts $(TAIL) build/allparts.scad: src/*.rs $(AIRFOILS) mkdir -p build cargo run $(AIRFOILS) sheet $(TAIL) e393.dat: curl http://airfoiltools.com/airfoil/seligdatfile?airfoil=e393-il -o e393.dat ag24.dat: curl https://m-selig.ae.illinois.edu/ads/coord/ag24.dat -o ag24.dat ag41d.dat: curl https://web.mit.edu/drela/Public/web/avl/runs/ag41d.dat -o $@ sd8020.dat: curl http://airfoiltools.com/airfoil/seligdatfile?airfoil=sd8020-il -o $@ %.dat: curl --fail-with-body https://m-selig.ae.illinois.edu/ads/coord/$@ -o $@ ||\ curl --fail-with-body http://airfoiltools.com/airfoil/seligdatfile?airfoil=$(basename $@) -o $@ edgevertical.zip: curl "https://www.rcgroups.com/forums/showatt.php?attachmentid=2973018&d=1262752423" -o edgevertical.zip edgevertical.dat: edgevertical.zip unzip -p edgevertical.zip Edge-Vertical.dat > edgevertical.dat build/%.png: build/%.scad $(SCAD) --imgsize 1920,1080 --colorscheme Metallic -o $@ $< build/%.svg: build/%.scad $(SCAD) -o $@ $< build/%.stl: build/%.scad $(SCAD) -o $@ $< build/%.dxf: build/%.scad $(SCAD) -o $@ $< build/%.dwg: build/%.svg svg2dwg -no-gui -no-dock-icon -o $@ $< .PHONY: svgs dxfs clean b v-tail svgs: build/part%.scad ls build/part*.scad | sed 's/scad/svg/' | xargs make dxfs: build/part%.scad ls build/part*.scad | sed 's/scad/dxf/' | xargs make clean: rm -rf build rm *.dat cargo clean vis: build/assembly-clear.scad $(SCAD) build/assembly-clear.scad v-tail: src/*.rs $(AIRFOILS) cargo run $(AIRFOILS) v-tail assembly sheet parts t-tail: src/*.rs $(AIRFOILS) cargo run $(AIRFOILS) t-tail assembly sheet parts build/testwing-clear.scad: build/testwing.scad sed 's/color("clear-red")/color([1.0,1.0,0.0,0.9])/g' $< > $@ sed 's/color("clear-blue")/color([0.0,1.0,1.0,1.0])/g' -i $@ build/assembly-clear.scad: src/*.rs $(AIRFOILS) build cargo run $(AIRFOILS) assembly $(TAIL) film stdout |\ sed 's/color("clear-red")/color([1.0,0.0,0.0,0.5])/g' |\ sed 's/color("clear-blue")/color([0.0,1.0,0.0,0.9])/g' |\ sed 's/color("clear-blue")/color([0.0,0.0,1.0,0.9])/g' > $@