Skip to main content

split_ring_on_column

Function split_ring_on_column 

Source
pub fn split_ring_on_column(
    model: &mut Model,
    surface: &SurfaceGeometry,
    ring: &Shape,
    anchor: &Shape,
    tol: Tolerances,
) -> OgeomResult<Option<Built>>
Expand description

Split a closed circle rim of a revolution band where it crosses the column of anchor, the vertex of the band’s other rim, so both rims have a vertex on one column and a seam can join them.

The rim must be a parallel of surface (its axis the revolution axis, its centre on it), as make_revolution_band requires. It becomes two edges on its own curve: the first from its vertex to a new vertex on the anchor’s column, the second back. The result is a closed wire of the two in the curve’s direction starting on the anchor’s column, the second piece first, ready to be a ring of make_band_of_rings. The history records the rim as modified into both pieces.

The pieces carry no pcurves, and every face holding the rim must take both pieces in its place, or the shell opens along the rim: a caller splitting a rim that bounds a face already built rebuilds that face.

Returns None when the rim’s vertex already stands on the anchor’s column.

§Errors

OgeomError::Construction if the rim is not a closed circle that is a parallel of surface, or the anchor stands on its axis.