Expand description
Offsetting a solid, and the shelling built on it.
The topology-preserving offset: every face’s surface moves along its own
outward normal (a plane translates, a cylinder’s radius grows or
shrinks), and the topology is rebuilt one-for-one on the moved surfaces.
Vertices re-solve where their planes now meet, edges re-derive on the
moved supports with their directions and parameterizations preserved, and
band faces rebuild through make_revolution_band so seams stay seams.
Corners stay sharp: this is the parallel solid of the intersection join,
not the rounded Minkowski body.
Shelling is the offset pointed inward and the boolean pointed at the result: the cavity is the inward offset with the removed faces left exactly where they were, so it reaches the boundary at the openings, and the cut’s same-domain resolution melts the flush faces away, which is what opens the shell.
The honest limits, refused by name: faces whose surfaces are not among the five analytics (a spline, revolution, extrusion, trimmed or offset surface has no same-family parallel to move to, though a face something replaces (a draft’s turned wall) rides through on the replacement and a face moved by nothing keeps its own surface whatever the family), vertices whose seats leave them under-determined, and offsets that collapse the solid. Edges between moved supports re-derive exactly where a line or circle exists; anywhere else the pair’s own intersection is marched and fitted, with its stated slop widening the edge; an edge that sits unmoved on both supports rebuilds on its own curve.
Functions§
- make_
thick_ solid - Hollow a solid into a shell of the given wall
thickness, opening it at theremovedfaces. - offset_
shape - Offset a solid by
offset: positive grows it, negative shrinks it, and the topology is preserved one-for-one.