diff --git a/src/main.rs b/src/main.rs index 9d2e3c1..2efda1f 100644 --- a/src/main.rs +++ b/src/main.rs @@ -10,8 +10,6 @@ use std::ops::Range; mod constants; mod selig; -static PARTS: Mutex> = Mutex::new(Vec::new()); - fn main() { let mut scad_file = ScadFile::new(); //let mut parts: Vec = Vec::new(); @@ -70,7 +68,7 @@ fn main() { scad_file.write_to_file(String::from("build/assembly.scad")); - for (idx, part) in PARTS.lock().unwrap().clone().into_iter().enumerate() { + for (idx, part) in parts.clone().into_iter().enumerate() { let mut file = ScadFile::new(); file.set_detail(50); file.add_object(part); @@ -79,7 +77,7 @@ fn main() { let mut allparts = ScadFile::new(); allparts.set_detail(50); - for (idx, part) in PARTS.lock().unwrap().iter().cloned().enumerate() { + for (idx, part) in parts.into_iter().enumerate() { allparts.add_object(scad!(Translate2d(vec2(0.0, INF * idx as f32)); part)); } allparts.write_to_file("build/allparts.scad".to_string()); @@ -256,7 +254,6 @@ fn extrude_strut( strut_hole: ScadObject, width: f32, chord: f32, - register: bool, ) -> ScadObject { let mut strut_shape = scad!(Difference); strut_shape.add_child(shape); @@ -272,9 +269,6 @@ fn extrude_strut( let unit: Vector3 = Vector3::new(1.0, 1.0, 1.0); let scaled = scad!(Scale(unit * chord); shape); - if register { - register_part(scaled.clone()); - } let strut = scad!(LinearExtrude(extrude); scaled); let rotated = scad!(Rotate(90.0, vec3(1.0, 0.0, 0.0)); strut); rotated @@ -303,14 +297,14 @@ fn topspar_negative(airfoil: &SeligFile, chord: f32, range: Range) -> ScadO } last = Some(current); } - register_part(mask.clone()); mask } +// TODO: shift to trangle design fn spar(length: f32, center: bool) -> ScadObject { let mut spar = scad!(Union); - register_part(scad!(Square(vec2(length, SPAR_SIDE_WIDTH * 3.0)))); + //register_part(scad!(Square(vec2(length, SPAR_SIDE_WIDTH * 3.0)))); for i in 0..3 { let mut panel = scad!(Cube(vec3(SPAR_SIDE_WIDTH, length, CARDBOARD_WIDTH))); @@ -326,10 +320,6 @@ fn spar(length: f32, center: bool) -> ScadObject { spar } -fn register_part(part: ScadObject) { - PARTS.lock().unwrap().push(part); -} - fn lerp(a: f32, b: f32, x: f32) -> f32 { a * (1.0 - x) + b * x } @@ -379,7 +369,7 @@ fn topwing_spar( let spacing = strut_idx as f32 * gap; let shape = topspar_negative(aerofoil, chord, 0.1..0.6); - let extruded = extrude_strut(shape.clone(), scad!(Union), CARDBOARD_WIDTH, chord, false); + let extruded = extrude_strut(shape.clone(), scad!(Union), CARDBOARD_WIDTH, chord); let mut transform = scad!(Translate(vec3(0.0, spacing, 0.0))); transform.add_child(extruded);