Ringing Js refinements

Loading...
Thumbnail Image
Author(s)
Schaefer, Scott
Advisor(s)
Editor(s)
Associated Organization(s)
Organizational Unit
Series
Supplementary to:
Abstract
Both the four-point and the uniform cubic B-spline refinement (i.e. subdivision) schemes double the number of vertices of a closed-loop polygonal curve jP and respectively produce sequences of vertices fk and bk. The Js refinement proposed here produces vertices vk=(1-s)fk+sbk. Iterative applications of Js yield a family of curves parameterized by s. It includes the four-point curve (J0), the uniform cubic B-spline (J8/8), and the quintic B-spline (J12/8). Iterating Js converges to a C2 curve for 0[less than]s[less than]1, to a C3 curve for 1[less than or equal to]s[less than]3/2, and to a C4 curve for s=S3/2. J3/8 tends to reduce the error between consecutive refinements and is useful to reduce popping when switching levels-of-detail in multi-resolution rendering. J4/8 produces the Jarek curve, which, in 2D, encloses a surface area that is usually very close to the area enclosed by the original control polygon 0P. We propose model-dependent and model-independent optimizations for these parameter values. As other refinement schemes, the Js approach extends trivially to open curves, animations, and surfaces. To reduce memory requirements when evaluating the final refined curve, surface, or animation, we introduce a new evaluation technique, called Ringing. It requires a footprint of only 5 points per subdivision level for each curve and does not introduce any redundant calculations.
Sponsor
Date
2007
Extent
Resource Type
Text
Resource Subtype
Technical Report
Rights Statement
Rights URI