1
Fork 0

main() cleanup

This commit is contained in:
Andy Killorin 2023-11-05 20:48:49 -06:00
parent 60f3b9d1b5
commit c9d173a252
Signed by: ank
GPG key ID: B6241CA3B552BCA4

View file

@ -9,37 +9,20 @@ mod selig;
fn main() {
let mut scad_file = ScadFile::new();
//let mut parts: Vec<ScadObject> = Vec::new();
let mut parts = Vec::new();
scad_file.set_detail(50);
// cambered airfoil, used in the wing
let wing_airfoil: SeligFile = SeligFile::parse(include_str!("../ag24.dat"));
println!(
"name {}, perim {}",
wing_airfoil.get_name(),
wing_airfoil.get_points().length()
);
println!(
"desc {}",
wing_airfoil
.get_description()
.clone()
.unwrap_or("no desc".to_string())
);
// symetric airfoil, used in the control surfaces
// symmetric airfoil, used in the control surfaces
let control_airfoil: SeligFile = SeligFile::parse(include_str!("../edgevertical.dat"));
let wing_transform = mirrored_wing(&wing_airfoil, &WING);
let mut wing_spar = ScadFile::new();
let wing_spar_outline = wing_transform.parts.last().unwrap().clone();
wing_spar.add_object(wing_spar_outline);
wing_spar.write_to_file("build/wingspar.scad".to_string());
// spars
// main wing
let mut wing_transform = mirrored_wing(&wing_airfoil, &WING);
scad_file.add_object(wing_transform.visualization);
parts.append(wing_transform.parts.as_mut());
// "fuselage"
scad_file.add_object(scad!(Rotate(-90.0, vec3(0.0, 0.0, 1.0));
@ -60,16 +43,14 @@ fn main() {
scad_file.add_object(rudder);
// elevator
let mut elevator = mirrored_wing(&wing_airfoil, &ELEVATOR);
scad_file.add_object(scad!(Translate(vec3(LENGTH - ELEVATOR_CHORD, 0.0, 0.0)); elevator.visualization));
parts.append(&mut elevator.parts);
let cardboard = vec3(0.38, 0.26, 0.26);
scad_file.add_object(scad!(Color(cardboard); wing_transform.visualization));
// every part visualized together
scad_file.write_to_file(String::from("build/assembly.scad"));
// every part in seperate files
for (idx, part) in parts.clone().into_iter().enumerate() {
let mut file = ScadFile::new();
file.set_detail(50);
@ -77,6 +58,7 @@ fn main() {
file.write_to_file(format!("build/part{idx}.scad"));
}
// all parts in one file
let mut allparts = ScadFile::new();
allparts.set_detail(50);
for (idx, part) in parts.into_iter().enumerate() {
@ -84,6 +66,7 @@ fn main() {
}
allparts.write_to_file("build/allparts.scad".to_string());
// test airfoil
let mut test = ScadFile::new();
let test_airfoil = SeligFile::parse(include_str!("../m1-il.dat"));
let wing = wing(&test_airfoil, &RUDDER, SparType::Top);