Purdue University
Purdue e-Pubs Computer Science Technical Reports
Department of Computer Science
1997
Computing Volumes of Solids Enclosed by Recursive Subdivision Surfaces Jörg Peters Ahmad Nasri Report Number: 97-005
Peters, Jörg and Nasri, Ahmad, "Computing Volumes of Solids Enclosed by Recursive Subdivision Surfaces" (1997). Computer Science Technical Reports. Paper 1345. http://docs.lib.purdue.edu/cstech/1345
This document has been made available through Purdue e-Pubs, a service of the Purdue University Libraries. Please contact
[email protected] for additional information.
COMPUTING VOLUMES OF SOLIDS ENCLOSED BY RECURSIVE SUBDIVISION SURFACES Jorg Peters Ahmad Nasri
CSD-TR 97-005 January 1997
Computing Volumes of Solids Enclosed by Recursive Subdivision Surfaces Jorg Peters
Ahmad Nasci t
*
January 16, 1997
Abstract
bust algorithm for measuring volumes of subdivision surfaces and sketch how higher-order moments can be treated in the same framework. Consider first the direct approach of tracing the volume of the subdivision surface by dissecting the subdivision polyhedron. This requires exponential amount of work already because the number of polyhedron facets typically quadruples with each subdivision step. A more sophisticated approach is to compute the volume of the initial polyhedron and then track the change in volume due to the refinement, interpreting the refinement as asequcnce of cuts applied to the solid enclosed by the polyhedron. ITowever, this tracking is not easily implemented since cuts, in general, arc neither simple nor planar and may add or remove material depending on local convexity. The approach is also not efficient since the amount of work is still proportional to the exponential increase of the number of facets under subdi.vision. Yel there is an efficient and robust approach to measuring the volume of most subdivision surfaces. Efficient means that the amount of work is constant at each subdivision step and robust means that a twosided error bound exists and contracts by a constant multiple less than 1, typically 2- 3 , with each refinement step. The two key observations leading to the result are (1) that piecewise polynomial surfaces allow efficient computation of the exact volume and higherorder moments (see [4]) and (2) that most popular subdivision schemes, e.g. [3],(1] and (7], arc modifications of box-spline subdivision rules, and hence give the limit surface a piecewise polynomial representation excepl at some isolated points, called extraordi-
The volume of a solid enclosed by a recursive subdivision surface can be approximated based on the closedform representation of regular parts of the subdivision surface and a tight estimate of the local convex hull near e.xtraordinary points. The approach presented is efficient, i.e. non-exponential, and robust in that it yields rapidly contracting error bounding boxes. An extension to measuring higher-order moments is sketched.
1
Introduction
·Supported by NSF National Young Investigator grant 9457806-CCR !Supportcd by an AUB grant
1
nary points. That is, while subdivision surfaces lack a global closed-form representation increasing submeshes of the subdivision polyhedron do. This said, the overall strategy is clear - namely to compute the asymptotic volume contributions exactly for the regular regions of the subdivision surface away from the extraordinary points, and to estimate and bound the volume contributions of the neighborhood of each extraordinary point. For clarity we list our assumptions on the subdivision scheme.
.""-
I'U~
r.::v
1. The subdivision scheme generates regular submeshes that refine to regular submeshes so that the number of extraordinary points remains constant.
2
•
Doo·Sabin
¥
2. Regularsubmeshes have a polynomialparametrization.
• EXlr.lordinary Point
3. The subdivision algorithm has the local convex hull property. That is, new mesh points are convex combinations of old ones nearby.
o CCRlcr of regular submesh
)8JJ flo
0
~
00'(, 00 00 o 0 0
Volume contributions from regular submeshes
At each step, a subdivision algorithm creates a new mesh of points from an old mesh. A desirable property of any subdivision algorithm is that it generates increasing submeshes all of whose points have the same valence and whose facets all have the same number of edges. A submesh of points and facets with this standard valence and number of edges is called regular. Popular subdivision schemes derive their appeal from the fact that the limit surface is explicitly known for regular submeshes. For example, the limit surface of the Doa-Sabin subdivision scheme [3] applied to a regular nine-point submesh is a biquadratic tensor-product spline surface. The limit surface of the Catmull-Clarksubdivision scheme [1] applied to a regular sixteen-point submesh is a bicubic tensor-product spline surface. And the limit surface of Loop's subdivision [7] is a linear combination of shifts of a 3direction box spline. With respect to these subsurfaces we will apply Gauss' divergence theorem.
o o
00 0 0 0
Cntmull-CJark
Figure 1: Diamonds mark extraordinary points on the subdivision polyhedra. The centers of regular submeshes in the less refined polyhedra on the left are marked by circles. A regular submesh of the Doa-Sabin scheme on lop consists of four quadrilaterals surrounding a vertex. A regular submesh of the Catmull-Clark scheme (bottom) consists of eight quadrilaterals surrounding a quadrilateral.
2
The divergence theorem Given a parametrization
x(u) ::::: [x, y, z](u, v):::::
('("'")) !I(U,~) z(u,v)
,
(u,v) E U
of a surface S with normal N =
n/lnl,
ax 8u
8x 8v
n=-A-.
where
and given amapf: R 3 I----> R 3 , the divergence theorem (see e.g. [9J 10.51) states that
1
'V·fdV:::::
h
f . N dS
i.e. that the integral of the divergence 'V·f::::: L kfi over the volume V equals the integral of the normal component f . N ::::: L f; N,' over the surface S of V. By change of variable
is
dS:::::
Figure 2: Union of surface layers at a 5-valenl extraordinary point. to determine the volume
fu Inl dudv
Vs
0=
lldV = 1
i.e. the area element Inl is the inverse of the normalization fador of the normal direction and hence
::::: h[O,o,z].[n 1 ,n 2 ,n3 ]dS
: : : fu
1V'·fdV= hr.n/lnldS
:: 1
Z
n3 dudv.
The algorithm
f·n dudv.
Initially the algorithm computes Vs for all, possibly zero, surface pieces corresponding to regular submeshes: for each patch (see Figure 3) z(u, v)· n3(u, v) is computed and integrated. - Each subsequent subdivision adds exactly one, geometrically ever smaller, layer of surface pieces defined by regular submeshes around each extraordinary point as shown in Figure 2 and Figure 3. Since the contributions to the volume by these regular layers are computed exactly and for the limit surface, the contribution of suhmeshes obtained by subdividing a regular submesh need not be recomputed! Thus the work at each subdivision step is constant, proportional only to the number of extraordinary points, and consists of computing the sur· face integral of the layer added at the extraordinary point. Section 4 gives a concrete example.
Now if both f and x are polynomial then the integrand is polynomial; and if U is a simple domain, say a triangle or square, then the integral can be determined efficiently, explicitly and exactly by averaging the Bernstein-Hezier coefficients [2]. If the parametrization x of S consists of patches Xi and U is the union of the patch domains U,' then
Choosing f::::: [0,0, z] we need only compute one component of D,
8x 8y
V'. [O,O"jdV
ax 8y
n-' - - -8vau' -8uav 3
3
Volume contributions of the neighborhood of an extraordinary point
Having deal t with the regular parts of the mesh in the previous section, the goal of this section is to cap ofT the holes remaining in the regular surface around the extraordinary points and compute the integrals of the capping surfaces. Each cap should join continuously and without gap or overlap Extraordinary points are typically either meshpoints with a valence different from the regular meshpoints, or centroids of mesh facets that have a different than the standard number of edges. For example, cr. Figure 1, the Doo-Sabin subdivision scheme has a standard valence of four for both vertices and facets, i.e. every mesh point is surrounded by four quadrilaterals.
The error bounding box By assumption, the volume is bDunded by the convex hull Df the submesh in the neighbDrhDod Df the extraDrdinary pDint. Figure 3 schematically shDws such a submesh fDr the DDD-Sabin scheme. The estimate can be improved by knDt insertiDn, i.e. cDnversiDn to Bernstein-Bezier fDrm at the bDundary between the regular surface pieces and the neighbDrhDDd of the extraordinary pDint. Figure 4 shDws the indices of the boundary coefficients b02 , b12 , bOZ2 , b21, bozo for the Doa-Sabin subdivision. Since, depending on the valence of the extraordinary point, the exact convex hull may be expensive tD cDmpute, we settle for an efficiently computable bDunding box that encloses the minimal and maximal values of each compDnent of the control points in the neighborhood of the extraordinary pDint. To get an estimate Df the contraction Df this error bDx it is natural and standard to look at the subdivision matrix which maps the submesh arDund the extraDrdinary point to a refined submesh with the same number of mesh points. For the Doa-Sabin scheme the matrix is of size p x p where p = q(3 . 3) at a q-valent extraordinary point, e.g. p = 45 for the example in Figure 3. For a smooth-surfacing scheme
0
0
0 0 0 0 0
0
0 0 0 0
Figure 3: On top, dDts, some labelled ejk' indicate the nodes Df a submesh that determines the subdivision matrix at an extraordinary point in the DDa-Sabin scheme. The grey quadrilaterals each represent a biquadratic patch. Bdow circles indicate the nodes Df the refined submesh. Again the biquadratic patches are delineated.
the leading eigenvalue of this matrix. is 1 and the two subdominant, next largest eigenvalues determine the first-order behavior of the subdivision surface and hence the asymptotic shrinkage factor of the submesh surrounding the extraordinary point [8]. Denoting the second-largest eigenvalue by ..\ < 1, the bounding box volume in three dimensions converges asymptotically on the order of ..\3 with each refinement step. In practical examples the asymptotic rate is immediately reached (d. Tables 1 and 2). Finally we define the caps. To get a good estimate of the volume the cap patches must lie within the bounding box. We choose them as a ring, corresponding to the white quadrilaterals in Figure 4, of CO-connected patches, of the same degree as the regular OJ: subdivision surface, and extending the regular surface parametrically Ok to cover the neighborhood of the extraordinary point. This avoids gaps and determines k + 1 layers of Bernstein-Bezier coefficients adjacent to the regular surface. The remaining in" nermost ring(s) of coefficients may be determined by symmetry and knowledge of the limiting surface. For example, for the Doa-Sabin algorithm, the 0 1 extension determines aU but the Bernstein-Bezier caefficient with index 00 (d. Figure 4). A natural choice for this coefficient is the centroid of the n-sided mesh cell which is interpolated by the limit surface. For the Catmull-Clark algorithm, the 0 2 extension pins down all but one Bernstein-Bezier coefficient which we may choose to be the extraordinary point of the subdivision polyhedron.
4
Figure 4: Indices of the Bernstein-Bezier coefficients of a biquadratic extension.
Figure 5: Mesh refinement by the Doa-Sahin algarithm.
Example: The volume ofDooSabin subdivision surfaces 1/16--------3/16
The Doo-Sabin algorithm is a generalization of the subdivision scheme for biquadratic tensor product Bsplines. For each n-gon of the original mesh, a new, smaller n-gon is created and connected with its neighbors as shown in Figure 5. The masks for generating a new n-gon from an old one are specified in Figure 6 for the regular case n ::::: 4 (left), and the general case
3/16 ----9/16
,, , ,
\
.---- er?
\ /
0'
Figure 6: Masks for the Doa-Sabin algorithm.
5
(right). In [3] Doa and Sabin suggest
cJ =
3+2cos(2irjln)
+
4n
{1/4 0
cube shown in Figure 7 and the stencil shape in Figure 8 the error bounds arc confirmed by Table I and Table 2. A tighter error bound could be obtained by observing that C~o :::: b11 implies that the limit surCace lies in the convex hull of the Bcrnslein-Bezicr coefficients of the cap.
if j = 0 else
A regular DOD-Sabin submesh consists of nine points Gij arranged as four quadrilateral facets surrounding a central point G li (d. Figure 3):
C O2 Cal Coo
012
C:?2
ell
021
C 10
020
5
The procedure outlined for the zeroth order moment, the volume, is easily extended to higher-order moments (c.f. [1]). For example, to compute the xcomponent of the center of mass we can choose f :::: [0,0, xz]. As a visual aid a mass error-box whose size is the sum of the individual error boxes may be placed at the center of mass of the approximate surface.
The points define a biquadratic patch with BernsteinBezier coefficients bj ); where
b1'2 = 2"'(Coo) +C,~
bll = G u b10 = 2"' ( +Cll c" )
For this patch, z n3 is a scalar-valued biquintic polynomial. Denoting its Bernstein-Dezier coefficients by ·t . t I·' Pii 1 5 to egra IS 36 L..-.=O L.Jj=O Pii' To cap the neighborhood of the extraordinary point for the given subdivision step, the coefficients oj" generate the Bernstein-Dezier coefficients of a ring of biquadratic patches defined by 0 1 extension and interpolation of the centroid:
References
,,5 ,,5
(1] CATMULL, E., AND CLARK, J. Recursively generated B-spline surfaces on arbitrary lopological meshes. Computer Aided Des. 10 (1978),350355. [2] DE BOOR, C. B-form basics. In Geometric Mod· eling: Algorithms and New Trends, G. Farin, Ed. SLAM, Philadelphia, 1987, pp. 131-118.
i +C i +C;+I +ci+ 1 ) b'02 = 4l(C00 01 00 10
. 1 b12 = 2"(COO
+ COl)
1· b22 = 4(CoO
+ COl
-
bill =
1· 2"(COO
.
.
[3] Doo, D., AND SABIN, M. BehavioUIofrecursive subdivision surfaces near extraordinary points. Computer Aided De.s. 10, 6 (Nov 1978), 356-360.
. +Cio+C~t>
+ C~O'+1 )
(4] GONZALEZ-OCHOA, C., MCCAMMON, S., AND PETERS, J. Computing moments of piecewise polynomial surfaces. xxx xx (199x). submitted.
bl1 = CJo b21
bi
1·
= -(Coo 2
l
-
+ C10 )
10 = 2" lci00 +
Extension to higher-order Moments
[5] HOPPE, H., DEROSE, T., DUCHAMP, T., HALSTEAD, M., JIN, H., McDONALD, J., SCHWEITZER, J., AND STU8TZLE, W. Piecewise smooth surface reconstruction. Compute.r Graphics - Proceedings of Siggraph 9.{ (1994), 295-302.
C;-I) 00
i 1 b'20=4 1 (C; 00+ C'10+ C 00- + C;-I) 01 .
The sub dominant eigenvalue of the subdivision matrix is >. :::: 1/2 implying an asymptotic reduction of the error box volume by 2- 3 . Indeed, for the unit
[6] KOBBELT, L. Interpolatory subdivision on open quadrilateral nets with arbitrary topology. 6
Figure 7: Volume error boxes of the first three DODSabin subdivisions of a cube-shaped mesh. subdivision 1 2
3 4 5 6 7 8
error box volume 5.27343e-02 1.04675e-02 1.04761e-03 1.16415e-04 1.36961e-05 1.66014e-06 2.04325e-07 2.53426e-08
Table 1: Volume of each error box when subdividing Lhe unit cube. The volume measured in the eighth subdivision is 0.6291374278.
Figure 8: Volume error boxes for a stencil shape. valence 3 4 5 6
I
0.052734 0.125797 0.113717 0.264948
subdivision 2 0.010467 0.034572 0.033833 0.066169
3 0.001047 0.004076 0.003127 0.006275
Table 2: Volume of error boxes when subdividing the 7 stencil shape.
vol. 15, Basil Blackwell Ltd. Eurographics 96 conference issue. (7] LooP, C. Smooth subdivision for surfaces based on triangles. Thesis, Univ. of Utah (1987). [8] REIF, U. A unified approach to subdivision algorithms near extraordinary vertices. CAGD 12 (1995), 153-174. [9] [10]
W. Real and complex analysis. Series in Higher Mathematics. McGraw-Hill, 1987.
RUDIN,
E. J., DEROSE, T. D., AND D. H. Wavelets for computer graphics: theory and applications. Morgan Kaufmann, San Francisco, Calif, 199(). STOLLNITZ, SALESIN,
Contact author: Jorg Peters Dept of Computer Sciences Purdue University W-Lafayette IN 47907-1398 e-mail: jorgcs.purdue.edu t,l, US (317) 494-6183 fa,,, US (317) 494-0739 http://www .cs.purdue.edu/peoplejjorg Co-author: Dr. Ahmad Nasri American University of Beirut Math. Dept., Beirut, Lebanon
8