Graphics Reference
In-Depth Information
wanted for the polygonizations described in Section 14.3. The algorithms therefore
need to be judged with respect to those properties in addition to any new constraints.
One early algorithm for representing trimmed surfaces is described by Rockwood
et al. in [RoHD89]. The main steps for this algorithm are:
(1) Convert the given surface representation to a grid of Bézier patch represen-
tations. Each trimming curve is converted into a Bézier or linear trimming curve. A
NURBS surface and its NURBS trimming curves are converted by means of knot inser-
tions and change of basis. If trimming regions cross patches, they are divided so that
they can be dealt with on a patch-by-patch basis.
(2) Subdivide all the trimming regions for a patch in (u,v)-parameter space into
uv-monotone regions with respect to the u- or v-axis, where a region is said to be
uv-monotone with respect to an axis if every line perpendicular to that axis intersects
the region in a convex set, that is, an interval. Figure 14.12(a) shows four such uv-
monotone regions.
(3) Each uv-monotone region is then further subdivided into rectangles in the
interior and a triangular coving along its boundary. The size of the rectangles, specif-
ically the step sizes s u and s v in the u- and v-direction, respectively, is determined by
ensuring that each rectangle projects into a sufficiently small region in screen space.
The user specifies how small the screen space regions should be. See Figure 14.12(b).
(4) Each trimming curve in parameter space is approximated by a polygonal curve
whose vertices lie on the curve. The spacing of the vertices is determined from the
parameterization of the curve and from the size of the rectangles if the curve lies in
the interior of the patch. The vertices and the rectangles determine the triangular
coving near the boundary of a region. The manner in which this is done guarantees
that adjacent parametric patches will not generate any cracks because adjacent
patches will always use the same vertices along their common boundary even if the
rectangle size is different in each patch.
The step sizes s u and s v are based on curvature bounds for Bézier functions and are
view dependent. The uv-monotone regions are determined by finding local maxima
and minima of the trimming curves using a root finder. Problems with this approach
are that the algorithm for finding uv-monotone regions is complicated and the coving
may produce undesirable triangles. In addition, although it prevented cracks between
Figure 14.12.
From the algorithm in [RoHD89].
Search WWH ::




Custom Search