Read time: 0.0 minutes (1 words)

assembly: fin

Design Notes

(None)

assembly Design File

fuselage/fin/fin.scad
 1//#####################################
 2// fin.scad
 3// (c) 2021 by Roie R. Black
 4//=====================================
 5include <colors.scad>
 6use <MMlib/position.scad>
 7include <./fin_pos.scad>
 8
 9use <./arc/fin_arc.scad>
10use <./leading_edge/leading_edge.scad>
11use <./trailing_edge/trailing_edge.scad>
12use <./rib1/fin_rib1.scad>
13use <./rib2/fin_rib2.scad>
14use <./arc/fin_arc.scad>
15use <./covering/fin_covering.scad>
16
17
18module fin() {
19  color(WOOD_Balsa) {
20    align(le_pos) leading_edge();
21    align(te_pos) trailing_edge();
22    align(arc_pos) fin_arc();
23    align(rib1_pos) fin_rib1();
24    align(rib2_pos) fin_rib2();
25  }
26  align(covering_pos) fin_covering();
27}
28
29//--------------------------------------
30// debug display
31
32fin();
33

Component Data File(s)

fuselage/fin/fin_data.scad
 1//#####################################
 2// fin-data.scad
 3// (c) 2021 by Roie R. Black
 4//=====================================
 5include <colors.scad>
 6
 7fin_span = 2;
 8fin_chord = 4;
 9fin_radius = 1.5;
10spar_size = 1/32;
11fin_color = WOOD_Balsa;
12
13//-------------------------------------
14// calculated values
15
16fin_le_length = fin_span - fin_radius - spar_size;
17fin_te_length = fin_span -2*spar_size;
18

Components

Component Position File

fuselage/fin/fin_pos.scad
 1//########################################
 2// arc_pos.scad
 3// (c) 2021 - Roie R. Black
 4//****************************************
 5include <./fin_data.scad>
 6
 7le_pos = [0,-fin_le_length/2-spar_size,0,0,0,0];
 8te_pos = [fin_chord - spar_size,-fin_te_length/2 - spar_size,0,0,0,0];
 9arc_pos = [fin_radius, -fin_span + fin_radius, 0,0,0,0];
10rib1_pos = [fin_chord/2,-spar_size,0,0,0,90];
11rib2_pos = [(fin_chord+fin_radius)/2-spar_size/2,-fin_span,0,0,0,90];
12covering_pos = [0,0,0,0,0,0];