1
Fork 0

added film feature

This commit is contained in:
Andy Killorin 2023-11-05 21:21:12 -06:00
parent 34793585ad
commit e1f727101f
Signed by: ank
GPG key ID: B6241CA3B552BCA4
3 changed files with 30 additions and 1 deletions

View file

@ -8,3 +8,6 @@ edition = "2021"
[dependencies]
scad = "1.2.2"
nalgebra = "0.16.14"
[features]
film = []

View file

@ -69,6 +69,7 @@ build/testwing-clear.scad: build/testwing.scad
sed 's/color("clear-blue")/color([0.0,1.0,1.0,1.0])/g' -i $@
build/assembly-clear.scad: build/assembly.scad
sed 's/color("clear-red")/color([1.0,0.0,0.0,0.9])/g' $< > $@
cargo run --features film
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' -i $@
sed 's/color("clear-blue")/color([0.0,0.0,1.0,0.9])/g' -i $@

View file

@ -21,6 +21,14 @@ fn main() {
// main wing
let mut wing_transform = mirrored_wing(&wing_airfoil, &WING);
#[cfg(feature = "film")] {
let mut wrapped = scad!(Hull; wing_transform.visualization.clone());
wrapped = scad!(Minkowski; wrapped);
wrapped.add_child(scad!(Sphere(Radius(1.0))));
scad_file.add_object(scad!(NamedColor("clear-red".to_string()); wrapped));
}
scad_file.add_object(wing_transform.visualization);
parts.append(wing_transform.parts.as_mut());
@ -40,10 +48,27 @@ fn main() {
parts.append(struts.parts.as_mut());
parts.append(spar.parts.as_mut());
rudder = scad!(Translate(vec3(LENGTH-RUDDER_CHORD, 0.0, 0.0)); rudder);
#[cfg(feature = "film")] {
let mut wrapped = scad!(Hull; rudder.clone());
wrapped = scad!(Minkowski; wrapped);
wrapped.add_child(scad!(Sphere(Radius(1.0))));
scad_file.add_object(scad!(NamedColor("clear-red".to_string()); wrapped));
}
scad_file.add_object(rudder);
// elevator
let mut elevator = mirrored_wing(&wing_airfoil, &ELEVATOR);
#[cfg(feature = "film")] {
let elevator = scad!(Translate(vec3(LENGTH - ELEVATOR_CHORD, 0.0, 0.0)); elevator.visualization.clone());
let mut wrapped = scad!(Hull; elevator);
wrapped = scad!(Minkowski; wrapped);
wrapped.add_child(scad!(Sphere(Radius(1.0))));
scad_file.add_object(scad!(NamedColor("clear-red".to_string()); wrapped));
}
scad_file.add_object(scad!(Translate(vec3(LENGTH - ELEVATOR_CHORD, 0.0, 0.0)); elevator.visualization));
parts.append(&mut elevator.parts);