pub fn make_pipe_sections(
model: &mut Model,
sections: &[Shape],
spine: &Shape,
frenet: bool,
tolerance: f64,
tol: Tolerances,
) -> OgeomResult<Built>Expand description
Sweep several planar sections down one spine, the section changing shape along the path: a multisection pipe.
Each section stands where the spine crosses its plane, and is read in
the spine’s moving frame there (rotation-minimizing, or Frenet where
frenet asks). Between two sections the section is blended in that
frame by the length run along the spine, matched point to point from
each section’s own start, so the result follows the spine rather than
the chord between the sections. The sections are closed wires or
faces; the ends are capped. Faces may have holes, as many in every
section: each hole, the kth of every section in turn, is swept the
same way as a solid of its own and cut from the outer loop’s. The first
or last section may be a vertex where the spine starts or ends, where
no section has a hole: the pipe closes to that point, uncapped there.
§Errors
OgeomError::Construction if
there are fewer than two sections, a section is not planar, the
sections have holes and differ in their count or one is a point, the
spine does not cross a section’s plane, or the sections stand out of
order along the spine;
OgeomError::NotDone if the skin
cannot reach tolerance.