pub fn room(surface: NurbSurface3D) -> GeopResult<NurbSurface3D>Expand description
surface with room around it: carried on past each side
(NurbSurface3D::extended) by as much of its parameter as its end
span is long that way — or by a half, a quarter or an eighth of that
where more would carry it too far: an arc round past where its weights
stay positive, a cone through its apex, a free-form patch past where it
folds back on itself and has no normal. Not past a side that is a single
point, a pole: the pole would end up inside the patch, where it has no
normal. How much room is a free choice; the patch’s own size is room
enough unless a face moves as far as it is wide.
A face’s copy can reach past the face where they meet at an inward corner — or, for a plane cut off by the box around the profile, past where the patch ends — so its surface needs room around the face.