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.