Skip to main content

replace_faces

Function replace_faces 

Source
pub fn replace_faces(
    part: &mut NamedModel,
    namer: &Namer,
    faces: &[FaceId],
    smooth: Smooth,
    surface: impl FnMut(&str, &NurbSurface3D) -> GeopResult<NurbSurface3D>,
) -> GeopResult<SolidId>
Expand description

Puts the faces faces of one solid of part on new surfaces — surface(name, old) gives the one for the face named name, on the surface old — and rebuilds the solid around them (rebuilt): the result replaces it, named namer’s root, and every face, edge and vertex keeps its name. What a draft, a face moved, offset or replaced do. A new surface’s normal points out of the solid, as the old one’s did.

A face that runs smoothly into a neighbour — a piece of a cylinder beside the next, a wall into its fillet — takes it along if smooth says to follow: the faces the new surfaces are made for are then every face the picked ones run smoothly into, on and on. Otherwise that is refused (see tangent_to_kept).

Refused, by name: faces of several solids, or of none.