Skip to main content

hollow

Function hollow 

Source
pub fn hollow(
    mesh: &Triangulation,
    wall: f64,
    grid: &Grid,
    tol: Tolerances,
) -> OgeomResult<Hollowed>
Expand description

Hollow a closed mesh, leaving a wall wall thick.

The part must bound a solid as boolean asks of an operand: closed, 2-manifold, no degenerate triangle, no triangle meeting another but at shared corners, wound outward; it may have cavities of its own, and the wall keeps clear of them. The cavity is sampled on grid and decimated within a sixteenth of a cell, with tol’s confusion as the decimation’s; see the module documentation.

The field costs a nearest-triangle query for each node inside the part, about V / h³ of them, and the checks one exact pass over the part; the decimation, which checks every collapse against the marched cavity and the triangles near it, costs most on a curved cavity.

§Errors

OgeomError::Construction if wall or the cell is not a positive distance, and as boolean for an operand if the part does not bound a solid, named “part”. OgeomError::Range if the grid would have more than u32::MAX nodes along an axis or the cavity more than u32::MAX vertices. OgeomError::Invariant if the marched cavity fails the check of the result, named “hollowed”.