pub fn loft_profile_brep_closed(
input_sections: &[Vec<NurbsCurve>],
) -> Result<BrepSolid, String>Expand description
§5.8 CLOSED loft: the sections form a RING (the last flows back into the
first), producing a capless genus-1 solid. Every interpolation column runs
through interpolate_curve_closed, so the ring is C² across the closure —
not a welded seam. Topology per skin is the cylinder-wall rectangle turned
on its side: u runs along the section curve (open), v through the sections
(closed); the section-0 curves themselves serve as the doubled v-seam
edges and the corner rings (one closed curve through every section at each
section corner) are shared between adjacent skins.