A parametric surface interrogation interface must specify its parameter domain, patch boundaries, trimming restrictions and any exceptional or singular points. It must evaluate and the available derivatives, in particular for tangent vectors andfor the oriented normal vector where the denominator is nonzero. Second derivatives are needed when the code requests curvature or second-order geometric error estimates; higher derivatives depend on the enquiry. The interface must report where these quantities exist, rather than assign an artificial normal at a singular parameter point.
Global searches also need subdivision into equivalent restricted patches, certified bounding volumes and a geometric approximation/error bound. These support intersection isolation, pruning and tolerance-controlled meshing. A single point-evaluation routine cannot guarantee a global search because it may miss remote branches or features between samples. Adjacent-patch topology and consistent orientation are needed to join results and interpret the represented surface.
Use the PDF's notation: is the fixed point light, is the casting curve, and is the receiver. A shadow point solvesThe separating-plane assumption puts the caster between light and receiver, so the relevant intersections are beyond the caster, not on the backward ray. The facing assumption supplies transverse regular intersections on the lit side. Carry out shadow tracing for a parametric curve as follows.
First subdivide the curve domain and receiving patches. Reject combinations whose certified bounding volumes cannot intersect the corresponding forward ray cone. For the remaining combinations, subdivide and isolate a hit, then correct its parameters using a three-variable Newton method with JacobianCheck that the corrected parameters lie in the patch domain and . Seed every connected component; one arbitrary initial hit does not establish that other components are absent. If a ray has several receiving hits, compare their values and retain the visible first hit, rather than jumping between sheets.
At a transverse branch the Jacobian is nonsingular because . Differentiate the equation to predict the next hit:Use this predictor for a proposed parameter step, then apply Newton correction. To control the polygonal approximation, the shadow path is . A second differentiation givesTogether with the surface derivatives this supplies a bound on . If over an interval of width , the maximum error from its chord is at most . Subdivide until this bound, plus the numerical intersection error, is below the graphics tolerance. Corrected endpoints then give the requested point sequence on . If second-derivative bounds are unavailable, refine until a certified enclosure of the entire branch segment lies within tolerance of its chord; a sufficiently small enclosure diameter is a conservative fallback.
Continue through adjacent patches, split at a trim or surface boundary, and stop a component when its admissible intersection ceases. Record closed components without duplicating their starting point. Use adaptive chord-error control and component isolation; a fixed fine sampling or an unverified sequence of local Newton solves can miss part of the shadow. If only estimated midpoint errors are available, those support a practical rendering heuristic rather than a certified tolerance.
Without the separation assumptions, explicitly test whether the caster lies between the light and receiver: roots with are not receiver points shadowed by that caster point, and belongs to the backward ray. The light can lie on the curve, making , or a ray can run along rather than cut the surface; both need exceptional treatment.
Without the facing assumption, allow back-facing regions, tangencies with singular continuation Jacobian, folds, multiple ray intersections, self-occlusion and changes of the visible first intersection. Visibility can create or delete whole shadow branches or switch them between receiver sheets. Also handle open boundaries, trimmed holes, disconnected receivers, closed casting loops, caster/receiver intersections and a light inside a closed receiver. Subdivision and intersection isolation must precede branch continuation near these events; normals, orientation and sorted ray distances decide which solutions are physically visible. The output can be several point sequences, rather than one connected polyline.
Articles by others on the same topic
There are currently no matching articles.