Skip to main content

make_band_between

Function make_band_between 

Source
pub fn make_band_between(
    model: &mut Model,
    surface: &SurfaceGeometry,
    rings: [(&Shape, PlanarCurve); 2],
    tol: Tolerances,
) -> OgeomResult<Shape>
Expand description

Build the face of a band between two closed rings that need not be circles, each with a caller-supplied chart image.

make_revolution_band’s general sibling: where the band derives each circle’s row and pcurve itself, this takes the rings as they come (a fitted tangency curve, a wavy trim), with the pcurve the caller already knows for each, same-parameter over the edge’s own range. The seam stays an exact iso-column of the surface, which is what routes around the closed-form refusal in make_face_with_pcurves.

The caller’s contract: both rings are closed, both chart images run the full period forward in u, and both start on the same column; the seam runs there, between the two start vertices. One ring may be a pole: a degenerate edge whose image is the pole’s row over (0, period). The face walks the lower ring forward and the upper one back, whichever order they come in, so it keeps itself on the left of its walk.

§Errors

OgeomError::Construction if a ring is not closed, the images disagree about the start column or do not run the period forward, or the surface’s iso-curve has no closed form.