You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
newDoubleView(model, model->RADIUS_START, Quantities::length, DoubleRange::unrestricted(1e-3), "Start radius of the spiral segment")
15
+
newDoubleView(model, model->RADIUS_START, Quantities::length, DoubleRange::unrestricted(1e-3), "Start radius of the spiral segment (or zero for no radius)")
16
16
);
17
17
18
18
addProperty(
19
19
"Radius (end)",
20
-
newDoubleView(model, model->RADIUS_END, Quantities::length, DoubleRange::unrestricted(1e-3), "End radius of the spiral segment")
20
+
newDoubleView(model, model->RADIUS_END, Quantities::length, DoubleRange::unrestricted(1e-3), "End radius of the spiral segment (or zero for no radius)")
puby_nodes:Vec<DVector<f64>>,// Layer bounds at nodes (y in cross section coordinates)
26
26
pubh_nodes:Vec<DVector<f64>>,// Layer heights at nodes
27
27
28
+
pubp_control:Vec<SVector<f64,3>>,// Positions (x, y, φ) of the control points
29
+
28
30
pubn_eval:Vec<f64>,// Relative lengths at which the limb quantities are evaluated
29
31
pubs_eval:Vec<f64>,// Arc lengths at which the limb quantities are evaluated
30
32
pubp_eval:Vec<SVector<f64,3>>,// Positions (x, y, φ) of the evaluation points
@@ -87,6 +89,9 @@ impl LimbGeometry {
87
89
let y_nodes = n_nodes.iter().map(|&n| self.section.layer_bounds(n).0).collect_vec();
88
90
let h_nodes = n_nodes.iter().map(|&n| self.section.layer_bounds(n).1).collect_vec();// TODO: Collect in one step
89
91
92
+
// Control points of the profile curve
93
+
let p_control = self.profile.get_nodes().iter().map(|node| vector![node.r[0], node.r[1], node.φ]).collect();// TODO: Make those conversions unnecessary by using a single format for curve points
94
+
90
95
// Equidistant evaluation points along the length of the limb
91
96
let s_eval = lin_space(self.profile.s_start()..=self.profile.s_end(), n_eval_points).collect_vec();
92
97
let n_eval = s_eval.iter().map(|&s| self.profile.normalize(s)).collect_vec();
0 commit comments