Treat the subdivision surface as an evaluable limit together with its refinement hierarchy. At a requested location , evaluate the limit position and two independent limit tangent vectors, then set
On regular regions, local spline patches supply position and derivative evaluations. Near extraordinary vertices, use the actual subdivision rule and its limit-position and tangent evaluation machinery, or a convergent local refinement with controlled position and normal vector errors. If a tangent pair degenerates, the regular offset evaluator is not defined there; a crease requires separate one-sided offsets and an explicitly chosen join.
For polygonal interrogation, subdivide the base mesh adaptively. At every new sample, evaluate the base limit and its limit normal vector, and displace that sample by . Connect these samples with the inherited connectivity, refining until flatness and normal-variation bounds meet the desired tolerance. If the position error is and unit-normal error is , the offset-position error is at most , in addition to the interpolation error between samples. A variable normal offset can be sampled at the same locations, with its approximation error included as well. The result retains the base subdivision hierarchy for locating points and refining patches.
Displacing the original control vertices along estimated vertex normals and applying the original subdivision mask just once does not, in general, give the exact surface offset. If is one linear refinement step, then , while displacing the refined base gives ; normalization and the normal calculation are nonlinear, so in general. Thus the exact offset is an interrogation wrapper around the base limit, and a conventional subdivision control mesh for it is a fitted approximation requiring refinement or error control. Refine and interrogate the base limit, then offset its evaluated points; do not assume offsetting commutes with subdivision.
For a regular parametric surface , form , and define the offset evaluator
It is already a parametric surface with the same parameter domain, even if its coordinates no longer belong to the original polynomial or rational patch family. Point interrogation requires evaluations of and one normalization. For tangent or normal vector interrogation, differentiate the evaluator. For example,
and similarly for . The offset normal vector is the normalized cross product wherever it is nonzero. These derivatives also support intersection, projection and curvature calculations by the usual methods for parametric surfaces. For a variable normal offset, add and to the corresponding tangent derivatives.
With shape operator , the constant-distance offset differential is . Along a principal direction its factor is , where is a principal curvature. Consequently regular interrogation fails at ; on regular pieces the offset principal curvatures are with the continued normal orientation. Global self-intersections can occur even when both local factors are nonzero. Evaluate and differentiate the base surface and its normalized normal; an exact conversion back to the original patch type is unnecessary.
A practical family consists of constant-distance parallel surfaces and smooth variable normal offsets
Constants cover wall thickness, cutter radius and clearance. A scalar B-spline or piecewise polynomial displacement field permits thickness variation, local bumps and smooth blending; compact support makes local edits economical. Use the base parameterization or compatible data on its subdivision hierarchy so that evaluating the displacement and its derivatives requires only a small local stencil. Choose displacement size and gradients to avoid unintended folds, and trim global self-intersections where the physical application requires an envelope. A constant displacement smaller than the local curvature radii prevents the corresponding local focal singularities, although global clearance still needs a separate check.
When remaining within a polynomial or rational representation is more useful than prescribing an exact distance, a related practical form is with a low-degree scalar field . Its displacement is normal but has magnitude , so it is not a constant-distance parallel surface. For polynomial and , it stays polynomial; for rational input it stays rational. More general low-degree vector displacement fields similarly preserve efficient evaluation, while relinquishing the normal-offset condition. These forms make explicit the tradeoff between an exact metric offset, which involves normalization, and an easily represented deformation. Simple scalar normal-displacement fields are useful and directly evaluable; algebraic displacement fields are useful when representation closure is required.
Variable normal offset 2026-10-14
A variable normal offset displaces a parametric surface along its unit normal vector by a scalar field . Unlike a constant-distance parallel surface, its derivatives also contain and .
// Target: analysis.bigb