Citation |

- Permanent Link:
- http://ufdc.ufl.edu/UF00101371/00001
## Material Information- Title:
- Dynamic framework for subdivision surfaces
- Creator:
- Mandal, Chhandomay (
*Dissertant*) Vemuri, Baba C. (*Thesis advisor*) Qin, Hong (*Thesis advisor*) Sahni, Sartaj (*Reviewer*) Fishwick, Paul A. (*Reviewer*) Cenzer, Douglas A. (*Reviewer*) - Place of Publication:
- Gainesville, Fla.
- Publisher:
- Department of Computer and Information Science and Engineering, University of Florida
- Publication Date:
- 1998
- Copyright Date:
- 1998
- Language:
- English
- Physical Description:
- xv, 168 leaves : ill. ; 29 cm.
## Subjects- Subjects / Keywords:
- Butterflies ( jstor )
Damping ( jstor ) Data ranges ( jstor ) Datasets ( jstor ) Degrees of freedom ( jstor ) Dynamic modeling ( jstor ) Geometric shapes ( jstor ) Matrices ( jstor ) Topology ( jstor ) Vertices ( jstor ) Computer and Information Science and Engineering thesis, Ph.D Computer graphics -- Mathematical models ( lcsh ) Computer vision -- Mathematical models ( lcsh ) Dissertations, Academic -- UF -- Computer and Information Science and Engineering Image processing -- Digital techniques ( lcsh ) - Genre:
- bibliography ( marcgt )
theses ( marcgt )
## Notes- Abstract:
- Subdivision surfaces are extensively used to model smooth shapes of arbitrary topology. Recursive subdivision on a user-defined initial control mesh generates a visually pleasing smooth surface in the limit. However, users have to carefully select the intiail mesh and.or manipulate the control vertex positions at different levels of subdivision hierarchy to satisfy the functional and aesthetic requirements in the smooth limit surface. This modeling drawback results fromt eh lack of direct manipulation tools for the limit surface. In this dissertation, techniques from physics-based modeling are integrated with geometric subdivision methodology, and a dynamic framework is presented for direct manipulation of the smooth limit surface generated by the subdivision schemes using physics based â€œforceâ€ tools. In a typical subdivision scheme, the user starts with an initial control mesh which is refined recursively using a fixed set of subdivision rules, and a smooth surface is produced in the limit. Most often this limit surface does not have an analytic expression, and hence poses challenging problems in incorporating mass and damping distribution functions, internal deformation energy, forces, and other physical quantities required to develop a physics-based subdivision surface model. In this dissertation, local parameterization techniques suitable for embedding the geometric subdivision surface model in a physics-based modeling framework have been developed. Specific local parameterization techniques have been fully developed for the Catmull-Clark, modified butterfly and the Loop subdivision schemes. Techniques for assigning material properties to geometric subdivision surfaces are derived, and a motion equation for the dynamic model has been formulated using Lagrangian dynamics. Furthermore, advantages of the physics-based deformable models are incorporated into the conventional subdivision schemes, and a dynamic hierarchical control of this model is introduced. Finally, a multiresolution representation of the control mesh is developed and a unified approach for deriving subdivision surface-based finite elements is presented. The proposed dynamic framework enhances the applicability of the subdivision surfaces in modeling applications. It is also useful for hierarchical shape recovery from large range and volume data sets, as well as for non-rigid motion tracking from a temporal sequence of data sets. Multiresolution representation of the initial mesh controlling the smooth limit surface enables global and local editing of the shape as desired by the modeler. This dynamic framework has also been used for synthesizing natural terrain models from sparse elevation data.
- General Note:
- Typescript.
- General Note:
- Vita.
- Thesis:
- Thesis (Ph.D.)--University of Florida, 1998.
- Bibliography:
- Includes bibliographical references (leaves 159-167).
## Record Information- Source Institution:
- University of Florida
- Holding Location:
- University of Florida
- Rights Management:
- Copyright [name of dissertation author]. Permission granted to the University of Florida to digitize, archive and distribute this item for non-profit research and educational purposes. Any reuse of this item in excess of fair use or other copyright exemptions requires permission of the copyright holder.
- Resource Identifier:
- 851387304 ( OCLC )
2427664 ( ALEPH )
## UFDC Membership |

Downloads |

## This item has the following downloads:
1998287 ( .pdf )
UF00101371_00001.pdf 1998287_Page_153.txt 1998287_Page_056.txt 1998287_Page_167.txt 1998287_Page_093.txt 1998287_Page_023.txt 1998287_Page_101.txt 1998287_Page_002.txt 1998287_Page_017.txt 1998287_Page_094.txt 1998287_Page_010.txt 1998287_Page_053.txt 1998287_Page_128.txt 1998287_Page_162.txt 1998287_Page_035.txt 1998287_Page_169.txt 1998287_Page_012.txt 1998287_Page_007.txt 1998287_Page_168.txt 1998287_Page_047.txt 1998287_Page_122.txt 1998287_Page_092.txt 1998287_Page_163.txt 1998287_Page_064.txt 1998287_Page_136.txt 1998287_Page_001.txt 1998287_Page_085.txt 1998287_Page_075.txt 1998287_Page_180.txt 1998287_Page_109.txt 1998287_Page_130.txt 1998287_Page_144.txt 1998287_Page_173.txt 1998287_Page_062.txt 1998287_Page_063.txt 1998287_Page_018.txt E1Z5QE7RQ_5Q4KUP_xml.txt 1998287_Page_111.txt 1998287_Page_022.txt 1998287_Page_097.txt 1998287_Page_067.txt 1998287_Page_069.txt 1998287_Page_076.txt 1998287_Page_102.txt 1998287_Page_032.txt 1998287_Page_133.txt 1998287_Page_038.txt 1998287_Page_152.txt 1998287_Page_125.txt 1998287_Page_060.txt 1998287_Page_055.txt 1998287_Page_099.txt 1998287_Page_084.txt 1998287_Page_100.txt 1998287_Page_151.txt 1998287_Page_004.txt 1998287_Page_087.txt 1998287_Page_071.txt 1998287_Page_113.txt 1998287_Page_135.txt 1998287_Page_139.txt 1998287_Page_073.txt 1998287_Page_058.txt 1998287_Page_041.txt 1998287_Page_072.txt 1998287_Page_008.txt 1998287_Page_059.txt 1998287_Page_141.txt 1998287_Page_068.txt UF00101371_00001_pdf.txt 1998287_Page_143.txt 1998287_Page_183.txt 1998287_Page_181.txt 1998287_Page_025.txt 1998287_Page_116.txt 1998287_Page_024.txt 1998287_Page_033.txt 1998287_Page_106.txt 1998287_Page_070.txt 1998287_Page_039.txt 1998287_Page_115.txt 1998287_Page_011.txt 1998287_Page_086.txt 1998287_Page_030.txt 1998287_Page_078.txt 1998287_Page_142.txt 1998287_Page_014.txt 1998287_pdf.txt 1998287_Page_043.txt 1998287_Page_170.txt 1998287_Page_146.txt 1998287_Page_077.txt 1998287_Page_091.txt 1998287_Page_095.txt 1998287_Page_117.txt 1998287_Page_127.txt 1998287_Page_028.txt 1998287_Page_179.txt 1998287_Page_120.txt 1998287_Page_174.txt 1998287_Page_044.txt 1998287_Page_165.txt 1998287_Page_005.txt 1998287_Page_048.txt 1998287_Page_104.txt 1998287_Page_015.txt 1998287_Page_119.txt 1998287_Page_021.txt 1998287_Page_114.txt 1998287_Page_118.txt 1998287_Page_051.txt 1998287_Page_182.txt 1998287_Page_050.txt 1998287_Page_040.txt 1998287_Page_019.txt 1998287_Page_080.txt 1998287_Page_171.txt 1998287_Page_016.txt 1998287_Page_159.txt 1998287_Page_027.txt 1998287_Page_129.txt 1998287_Page_037.txt 1998287_Page_081.txt 1998287_Page_103.txt 1998287_Page_149.txt 1998287_Page_003.txt 1998287_Page_042.txt 1998287_Page_090.txt 1998287_Page_140.txt 1998287_Page_164.txt 1998287_Page_098.txt 1998287_Page_049.txt 1998287_Page_020.txt 1998287_Page_026.txt 1998287_Page_065.txt 1998287_Page_107.txt 1998287_Page_145.txt 1998287_Page_172.txt 1998287_Page_045.txt 1998287_Page_131.txt 1998287_Page_006.txt 1998287_Page_177.txt 1998287_Page_124.txt 1998287_Page_036.txt 1998287_Page_088.txt 1998287_Page_054.txt 1998287_Page_154.txt 1998287_Page_105.txt 1998287_Page_009.txt 1998287_Page_121.txt 1998287_Page_089.txt 1998287_Page_160.txt 1998287_Page_132.txt 1998287_Page_031.txt 1998287_Page_112.txt 1998287_Page_046.txt 1998287_Page_147.txt 1998287_Page_074.txt 1998287_Page_155.txt 1998287_Page_175.txt 1998287_Page_150.txt 1998287_Page_176.txt 1998287_Page_061.txt 1998287_Page_029.txt 1998287_Page_034.txt 1998287_Page_156.txt 1998287_Page_052.txt 1998287_Page_148.txt 1998287_Page_161.txt 1998287_Page_066.txt 1998287_Page_137.txt 1998287_Page_108.txt 1998287_Page_013.txt 1998287_Page_157.txt 1998287_Page_123.txt 1998287_Page_158.txt 1998287_Page_138.txt 1998287_Page_096.txt 1998287_Page_110.txt 1998287_Page_083.txt 1998287_Page_057.txt 1998287_Page_134.txt 1998287_Page_082.txt 1998287_Page_178.txt 1998287_Page_126.txt 1998287_Page_166.txt 1998287_Page_079.txt |

Full Text |

A DYNA i',C FRA -.i1l WORK FOR SUBDIVISION SURFACES CHHANDO.iAY I. iANDAL A DISSERTATION PRESENTED TO THE GRADUATE SCHOOL OF THE UNIVERSITY OF FLORIDA IN PARTIAL FULFIl I'-.i.l:NT OF THE REQUIREMENTS FOR THE DEGREE OF DOCTOR OF PHILOSOPHY UNIVERSITY OF FLORIDA 1998 Copyright 1998 by C !,!,,i ,,l, I_.,-, ', I,,i ,l I To iy Parents, and .liy Brother ACKNOWLEDGE; 1: NTS I am deeply grateful to my advisor Dr. Baba C. Vemuri, whose guidance, en- couragement and support made the completion of this work possible. I thank him for his academic as well as non-academic advice and assistance during my study at the University of Florida, and for his impressive example of integrity and academic responsibility. I wish to express sincere appreciation to my co-advisor, Dr. Hong Qin, for introducing me to the wonders of computer graphics, for patiently guiding me all the way till the end, and for assisting me in various ways. I would also like to thank Dr. Sartaj Sahni, Dr. Paul A. Fi-hl, i, 1 and Dr. Douglas A. Center for serving in my supervisory committee and advising me on various aspects of this dissertation. .iy dissertation research was supported in part by the NSF grant ECS-9210648 and the NIH grant ROl-i:'. 'i944 of Dr. Vemuri, and by the NSF CAREER award CCR-9702103 and DI 1i-9700129 of Dr. Qin. I wish to acknowledge Dr. Tim :.1. il,- erney, Dr. Gregoire M.il.,iiil.iii Dr. Hughes Hoppe, Dr. Kari Pulli, Dr. Dimitry Goldgof, Dr. C!, i-i ii., Leonard and Dr. S!,.li.-TII, ig Lai for helping me at various stages of the work by providing various data sets, software and figures. I would like to thank the faculty, staff and students of the computer and in- formation science and engineering department, who were always there to help me. In my years with the computational vision, graphics and medical imaging group, I have enjoyed working with a set of bright students, including Yanlin Guo, Yi Cao, Li C11 ii, Li Wang, 'l illi.iying Huang, Clii.iiir Kapoor, Fengting C11 i Arun Srini- vasan, Jundong Liu and Jun Ye. Special thanks goes to my long time roommates, Raja Cli.ii i rjee and Kingshuk .ijii inl.ii. for helping me in various ways during my stay at Gainesville. Finilly, I would like to thank my parents and my brother for their constant en- couragement and support, for cheering me up during the hard days and for providing an ever increasing incentive to finish my graduate study. I would have been nowhere near my goals without them. TABLE OF CONTENTS ACKNOW LEDG ( il NTS ............................. iv LIST OF FIGURES ..................... .......... ix ABSTRACT ............ ..... .......... ...... xiii CHAPTERS 1 INTRODUCTION ............................... 1 1.1 Problem Statement ............................ 2 1.2 Proposed Solution ................... ......... 3 1.3 Contributions .. .. .. ... .. .. .. .. ... .. .. .. .. .. 5 1.4 Outline of Dissertation .......................... 8 2 BACKGROUND ..................... .......... 11 2.1 Subdivision Surfaces ................... ..... 11 2.2 Physics-based Deformable Surface M'.idels ....... ...... 17 2.3 S~11 ie '.ibdeling Using Physics-based Subdivision-surface '.idel . 20 2.4 11 1iip and '. ition Estimation Using Physics-based Subdivision-surface '.idel ....... ... .... ....... ...... 22 2.5 Unified Framework for !,liip Recovery and S!liipi dealing g . . 24 3 DYNA' iiC CAT'.IULL-CLARK SUBDIVISION SURFACES ...... ..27 3.1 Overview of the Catmull-Clark Subdivision Scheme . . . ... 27 3.2 Formulation .................. ........... .. .. 30 3.2.1 Assigning Patches to Regular Faces . . . . . ..... 31 3.2.2 Assigning Patches to Irregular Faces . . . . . 33 3.2.3 Kinematics .................. ......... .. 36 3.2.4 Dynamics .................. .......... .. 44 3.2.5 '.i ili!; vel Dynamics ................ .... .. 46 3.3 Finiii Element Implementation ............... . . .. 49 3.3.1 Data Structures .................. ..... .. 49 3.3.2 Normal Elements .................. ..... .. 51 3.3.3 Special Elements .................. ..... .. 51 3.3.4 Force Application .................. ..... .. 52 3.3.5 Discrete Dynamic Equation .................. .. 54 3.3.6 .i, del Subdivision .................. .. .. .. 55 3.4 Generalization of the Approach ............... .. .. 56 4 DYNA-.IIC BUTTER FLY SUBDIVISION SURFACES . . . .... 57 4.1 Overview of the ('.1>dified) Butterfly Subdivision Scheme ...... . 57 4.2 Formulation .................. ........... .. .. 61 4.2.1 Local Parameterization ................. . . .. 62 4.2.2 Dynamics .................. .......... .. 72 4.2.3 `.ililk!vel Dynamics ................ .... .. 74 4.3 Filiii Element Implementation ............... .. ... 76 4.3.1 Elemental '.I1--, and Damping matrices . . . . .... 77 4.3.2 Elemental Stiffness '.,i.i.\ .................. . 79 4.3.3 Other Implementation Issues ..... . . . . . ..... 81 4.4 Generalization of the Approach ............... .. .. 82 5 UNIFIED DYNAI .iC FRAI ii;WORK FOR SUBDIVISION SURFACES 83 5.1 Overview of the Unified Approach . . . . . . . .. .. 83 5.2 Unified Dynamic Framework for Catmull-Clark Subdivision Surfaces 85 5.2.1 Local Parameterization ................. . . .. 88 5.2.2 Dynamics .................. .......... .. 92 5.2.3 Fi;iii Element Implementation . . . . . . .... 92 5.3 Unified Dynamic Framework for Loop Subdivision Surfaces . . 95 5.3.1 Local Parameterization ................. . . .. 97 5.3.2 Dynamics .............. . . . . ... 100 5.3.3 Fi;iii Element Implementation . . . . . . . 100 5.4 A General Outline of the Framework for Approximating Subdivision Schemes .................. . ............. 101 5.5 A General Outline of the Framework for Interpolatory Subdivision Schemes ............................. ...... 102 6 'iULTIRESOLUTION DYNAIiCS ............. . . .. .. 103 6.1 Overview of ', ltl i resolution Analysis and Wavelets . . . ... 109 6.2 ':. li ii resolution Analysis for Surfaces of Arbitrary Topology . . 114 6.2.1 .-1 ii Spaces through Subdivision . . . . . . 116 6.2.2 Inner Product ........ . . . . . ........ 118 6.2.3 Biorthogonal Surface Wavelets on Arbitrary .' li l 1 . . .119 6.3 '. li it resolution Representation ...... . . . . . ..125 6.4 Dynamics .................. . . . . ... 128 6.5 Implementation Details .................. .. ...... 129 7 SYSTEM ARCHITECTURE ............ 7.1 Topological Information Processing ':. dule ............. 135 7.2 Subdivision '.1, dule ........... ................ 135 7.3 Fiiii Element Analysis '.idule ...... ....... . . . .. 135 7.4 Force Synthesis '.ibdule .................. .. ..... . 136 7.5 Update Engine .................. ......... .. .. 136 7.6 Display '.iodule ............... . . . . . .. . 137 8 APPLICATIONS ................. . . . . ... 138 8.1 Geometric ':. Ideling ......... . . . . . . ... 138 8.2 SliipeI Recovery from Range and Volume Data. . . . . . . 1 1 8.3 Non-rigid M.i )tion Estimation. ............. .. . .. .. 148 8.4 'liili resolution Editing .................. .. ..... . 150 8.5 .'; 1 i 1.! Terrain ':.MIdeling ................... . . 151 9 CONCLUSIONS AND FUTURE WORK .. . . . . . ..... 155 9.1 Conclusions ................. . . . . . ... 155 9.2 Future Directions ............. . . . . . ...... 156 9.2.1 Automatic Cn111, of Topology . . . . . ..... 156 9.2.2 Local Refinement ........ . . . . . . ... 157 9.2.3 Automatic i. del Parameter Selection . . . . .... 157 9.2.4 Constraint Imposition ....... . . . . . ... 157 9.2.5 Recovery of S'1,irp Features ..... . . . . . ..... 158 9.2.6 Automatic o. del Initialization . . . . . ..... 158 9.2.7 Improved Synthesized Force Fields . . . . . . 158 REFERENCES ................... .. ........ ...... 159 BIOGRAPHICAL SKETCH ............ . . . . . ...... 168 LIST OF FIGURES 2.1 Refinement of an initial control mesh to obtain the limit surface. (Courtesy : H. Hoppe) .................. .. .... .. .. 12 3.1 Catmull-Clark subdivision : (a) initial mesh, (b) mesh obtained after one step of Catmull-Clark subdivision, and (c) mesh obtained after another subdivision step. .................. .... 28 3.2 A rectangular mesh and its limit surface consisting of 4 bicubic surface patches. . . .. .. .. . . . . . . .. .. .. 32 3.3 A mesh with an extraordinary point of degree 3 and its limit surface. 34 3.4 Local subdivision around the extraordinary point and the limit surface. 35 3.5 Local subdivision around the extraordinary point and the correspond- ing patches in the limit surface from different levels of subdivision. . 43 3.6 T!i, data structure used for dynamic subdivision surface implementation. 50 3.7 '1ldel subdivision to increase the degrees of freedom : (a) evolution of the initial mesh, and (b) the corresponding limit surface evolution perceived by the user. ................... ...... . 55 4.1 (a) Ti, control polygon with triangular faces; (b) mesh obtained after one subdivision step using butterfly subdivision rules. . . . ... 58 4.2 (a) T!i, contributing vertices in the j-th level for the vertex in the j+1- th level corresponding to the edge between vi and vi; (b) the weighing factors for different vertices. .................. .... 58 4.3 (a) Tli, weighing factors of contributing vertex positions for an edge connecting two vertices of degree 6; (b) the corresponding case when one vertex is of degree n and the other is of degree 6. . . . ... 60 4.4 Ti, smoothing effect of the subdivision process on the triangles of the initial m esh. . . . . . . . . . .. ... . . . 62 4.5 Tracking a point x through various levels of subdivision : (a) initial mesh, (b) the selected section (enclosed by dotted lines) of the mesh in (a), after one subdivision step, (c) the selected section of the mesh in (b), after another subdivision step. ..... . . . . ...... 64 4.6 Different set of control points at a subdivided level obtained by apply- ing different subdivision matrices on a given set of control points in a coarser mesh. .................. ........ . 67- 68 4.7 (a) An initial mesh, and (b) the corresponding limit surface. Tli, do- mains of the shaded elements in the limit surface are the corresponding triangular faces in the initial mesh. Tli, encircled vertices in (a) are the degrees of freedom for the corresponding element. . . . ... 75 5.1 A control mesh with an extraordinary vertex of degree 5 and the corre- sponding limit surface : (a) using the concepts developed in Cliipi r 3, where the limit surface consists of quadrilateral normal elements and a pentagonal special element; (b) using the unified concept developed in this chapter, where the limit surface consists of one single type of quadrilateral finite element. .................. .... 86 5.2 In Catmull-Clark subdivision, each non-boundary quadrilateral face in the control mesh has a corresponding quadrilateral patch in the limit surface : (a) control mesh, (b) limit surface. . . . . . 87 5.3 (a) Tli, marked 16 control vertices define the shaded quadrilateral patch associated with the shaded regular face in the control mesh; (b) the marked 14 control vertices define the shaded quadrilateral patch associated with the shaded irregular face in the control mesh.. . . 91 5.4 (a) Tli, control polygon with triangular faces; (b) mesh obtained after one subdivision step using Loop's subdivision rules. . . . ... 96 5.5 An initial mesh and the corresponding limit surface obtained using Loop's subdivision rules. T!i, domains of the shaded triangular patches in the limit surface are the corresponding triangular faces in the initial mesh. Tli, encircled vertices are the control vertices for the corre- sponding triangular patch in the limit surface. . . . . .... 98 5.6 Each triangular patch in the limit surface can be associated with a non-boundary triangular face in the initial mesh, which in turn can be parameterized over a triangle with vertices at (0,0), (1,0) and (0, 1).. 99 6.1 Schematic block diagram of the multilevel dynamics approach. . . 104 6.2 '.i llil, 1vel dynamics vs. multiresolution dynamics . . . . . 106 6.3 Representation of the degrees of freedom in multilevel dynamics and multiresolution dynamics approach. ..... . . . . . ...... 108 6.4 Tli. filter bank. .................. ........ 112 6.5 Subdivision refinement of a tetrahedron. ..... . . . ..... 119 6.6 Wavelet construction. .................. ........ 123 7.1 System architecture. .................. ........ 134 8.1 (a), (b), (c) and (d) : Initial shapes (obtained applying Catmull-Clark subdivision rules on control meshes); (e), (f), (g) and (h) : the corre- sponding modified shapes after interactive force application. .... 139 8.2 (a), (b), (c) and (d) : Initial shapes (obtained applying modified but- terfly subdivision rules on control meshes); (e), (f), (g) and (h) : the corresponding modified shapes after interactive sculpting via force ap- plication.. ................... . . . . ... 141 8.3 (a) Range data of a bulb along with the initialized model, (b) an intermediate stage of evolution, and (c) the fitted dynamic Catmull- Clark subdivision surface model. .................. ..143 8.4 (a) Range data of an anvil along with the initialized model, (b) an intermediate stage of evolution, and (c) the fitted dynamic Catmull- Clark subdivision surface model. .................. ..144 8.5 (a) Range data of a head along with the initialized model, (d) the fitted dynamic butterfly subdivision model, and (c) visualization of the shape from another view point. ..... . . . . . ..... 144 8.6 (a) A slice from a brain '.11:1 (b) initialized model inside the region of interest superimposed on the slice, (c) the fitted model superim- posed on the slice, and (d) a 3D view of the dynamic Catmull-Clark subdivision surface model fitted to the cerebellum. . . . . ... 146 8.7 (a) Data points identifying the boundary of the caudate nucleus on a I ii: slice of human brain, (b) data points (from all slices) in 3D along with the initialized model, and (c) the fitted dynamic butterfly subdivision model. .................. ....... 146 8.8 Snapshots from the animation of canine heart motion over a cardiac cycle using the dynamic butterfly subdivision model. . . . ... 149 8.9 (a) Ti, initialized model along with the data set; (b) the fitted model with two subdivisions on the initial mesh, along with attached springs for editing. Tli~ model after editing (c) at lower resolution, (d) at the same resolution of the fitted model, and (e) at higher resolution. . 150 8.10 (a) Discrete elevation data set (4096 points), (b) fitted dynamic but- terfly subdivision surface model with 841 vertices (without noise ad- dition), and (c) fitted dynamic subdivision surface model with 841 vertices when Gaussian noise is added. ............... ..153 8.11 Synthesized natural terrain of different roughness using the dynamic butterfly subdivision surface model with 841 vertices from a data set of 3099 elevation values. ................ ........ 154 Abstract of Dissertation Presented to the Graduate School of the University of Florida in Partial Fulfillment of the Requirements for the Degree of Doctor of Philosophy A DYNAI ilC FRA. 1il:WORK FOR SUBDIVISION SURFACES By n1 1 i i ii Id I l l December 1998 C11.!l ,, ini Dr. Baba C. Vemuri Cochairman : Dr. Hong Qin ., ij, r Department: Computer and Information Science and Engineering Subdivision surfaces are extensively used to model smooth shapes of arbitrary topology. Recursive subdivision on a user-defined initial control mesh generates a visually pleasing smooth surface in the limit. However, users have to carefully select the initial mesh and/or manipulate the control vertex positions at different levels of subdivision hierarchy to satisfy the functional and aesthetic requirements in the smooth limit surface. This modeling drawback results from the lack of direct manip- ulation tools for the limit surface. In this dissertation, techniques from physics-based modeling are integrated with geometric subdivision methodology, and a dynamic framework is presented for direct manipulation of the smooth limit surface generated by the subdivision schemes using physics-based "force" tools. In a typical subdivision scheme, the user starts with an initial control mesh which is refined recursively using a fixed set of subdivision rules, and a smooth sur- face is produced in the limit. '.i, I- often this limit surface does not have an analytic expression, and hence poses challenging problems in incorporating mass and damp- ing distribution functions, internal deformation energy, forces, and other physical quantities required to develop a physics-based subdivision surface model. In this dissertation, local parameterization techniques suitable for embedding the geometric subdivision surface model in a physics-based modeling framework have been devel- oped. Specific local parameterization techniques have been fully developed for the Catmull-Clark, modified butterfly and the Loop subdivision schemes. Techniques for assigning material properties to geometric subdivision surfaces are derived, and a motion equation for the dynamic model has been formulated using Lagrangian dynamics. Furthermore, advantages of the physics-based deformable models are in- corporated into the conventional subdivision schemes, and a dynamic hierarchical control of this model is introduced. Fi illy, a multiresolution representation of the control mesh is developed and a unified approach for deriving subdivision surface- based finite elements is presented. Ti, proposed dynamic framework enhances the applicability of the subdivision surfaces in modeling applications. It is also useful for hierarchical shape recovery from large range and volume data sets, as well as for non-rigid motion tracking from a temporal sequence of data sets. ':. ill resolution representation of the initial mesh controlling the smooth limit surface enables global and local editing of the shape as desired by the modeler. This dynamic framework has also been used for synthesizing natural terrain models from sparse elevation data. CHAPTER 1 INTRODUCTION Generating smooth surfaces of arbitrary topology poses a grand challenge for the computer graphics, computer-aided geometric design and scientific visualization researchers. Tli, existing techniques for modeling smooth complex shapes can be broadly classified into two distinct categories namely, (1) explicit patching using parametric surfaces and (2) subdivision surfaces. Ti, explicit patching technique involves partitioning the model surface into a collection of individual parametric surface patches. Adjacent surface patches are then explicitly stitched together using continuity constraints. This explicit stitching process is very complicated for modeling smooth surfaces of arbitrary topology due to the continuity constraints which need to be satisfied along the patch boundaries. Subdivision surfaces are simple procedural models which offer an alternate rep- resentation for the smooth surfaces of arbitrary topology. A typical recursive subdi- vision scheme produces a visually pleasing smooth surface in the limit by repeated application of a fixed set of refinement rules on an user-defined initial control mesh. Tli, initial control mesh is a simple polygonal mesh of the same topological type as that of the smooth surface to be modeled. At each step of subdivision, a finer polygonal mesh with more vertices and faces is constructed from the previous one via the refinement process, and the smooth surface is obtained in the limit. However, a few subdivision steps on the initial mesh generally suffice to approximate the smooth surface for all practical purposes. Various sets of rules lead to different subdivision schemes which mainly differ in the smoothness property of the resulting limit surface and/or the type of initial mesh (i.e. triangular, quadrilateral etc.) chosen. 1.1 Problem Statement To model a smooth surface of arbitrary topology using subdivision surfaces, first a polygonal mesh of same topology needs to be chosen as the initial mesh. This ini- tial mesh, also known as the control mesh, is refined via recursive subdivision using a fixed set of rules, and a smooth surface of the desired topology is obtained in the limit. However, users have to carefully select the initial mesh and/or manipulate the control vertex positions at different levels of subdivision hierarchy in order to satisfy the functional and aesthetic requirements on the smooth limit surface. For example, to obtain a desired effect on the smooth limit surface, it might be necessary to reposition a handful of vertices in the mesh obtained after one subdivision step, or a large number of vertices might need to be moved in the mesh produced after three subdivision steps! This process is not intuitive and at best laborious. Despite the presence of a variety of subdivision schemes in the computer graphics and geo- metric modeling literature, there is no direct and natural way of manipulating the limit surface. Ti, current state-of-the-art only permits the modeler to interactively obtain the desired effects on the smooth surface by kinematically manipulating the vertex positions at various levels of the subdivision hierarchy. In this dissertation, the challenging problem of directly manipulating the smooth limit surface at arbitrary locations/areas is addressed and a novel solution is presented where the modeler can not only manipulate the smooth limit surface directly but also control the extent of the manipulation effect (i.e., global or local manipulation) on the limit surface. Subdivision surfaces have also been used for recovering shapes from a given set of points in 3D. However, most of the existing subdivision surface-based shape recovery techniques resort to complex algorithms to derive a mesh for the underlying shape, and then mesh optimization techniques are used to obtain a compact representation of the same. t' ., i cheless, this process yields a control mesh of the smooth subdi- vision surface representing the underlying shape that typically uses a large number of degrees of freedom (control vertices) for representation. In this dissertation, an efficient hierarchical method of recovering shapes from range and volume data sets is proposed where the control mesh of the smooth limit surface will use very few degrees of freedom for representation. 1.2 Proposed Solution Physics-based modeling techniques offer a potential solution to the problem of directly manipulating the smooth limit surface generated by the recursive sub- division procedure. In the physics-based modeling paradigm, a deformable model is derived by assigning mass, damping, stiffness and other physical properties to a surface model. Ti, model is deformed by applying synthesized forces and this de- formation is governed by physical laws. Now, if the purely geometric subdivision surface models can be embedded in a physics-based modeling paradigm, then the smooth limit surface can be deformed directly by using physics-based "force" tools. However, this procedure-based surface model obtained through the subdivision pro- cess does not have a closed-form analytic formulation in general, and hence poses challenging problems to incorporate mass and damping distribution functions, inter- nal deformation energy, forces, and other physical quantities required to develop a physics-based model. Techniques of locally parameterizing the smooth limit surface generated by various subdivision schemes are proposed in this dissertation. Once a suitable local parameterization scheme is developed for a specific subdivision scheme, a dynamic framework is provided for the corresponding subdivision scheme where the modeler can directly manipulate the smooth limit surface by using synthesized forces. At the same time, a dynamic framework for the wavelets derived using subdi- vision schemes will assist in adopting a multiresolution representation of the control mesh defining the smooth limit surface, and the modeler can control the extent of manipulation effect by choosing a desired level of editing. Synthesized force applica- tion at a lower resolution will yield a global effect whereas manipulations at a finer resolution will have localized effects on the limit surface. Tli1 motion of this physics- based deformable subdivision surface model is governed by a second-order differential equation, which is solved numerically using the finite element method. N"- types of finite elements for the chosen subdivision scheme are also presented for representing the smooth limit surface. Tli, proposed dynamic framework for the subdivision surfaces provides an effi- cient solution to the shape recovery problem as well. A simple subdivision surface model with very few vertices in the control mesh can be initialized (positioned) fully inside a given set of points in 3D. Ti, initialized model will be deformed by applying forces synthesized from the given data points. When an equilibrium is obtained, the number of vertices in the control mesh can be increased via a subdivision step on the current control mesh thereby increasing the degrees of freedom for model representa- tion, and a new equilibrium with a better fit to the given data set can be obtained. This process can be repeated till a prescribed error in fit is achieved. Similar approach can be taken for shape recovery from volume data sets as well where a different type of synthesized force needs to be specified. Tli, hierarchical shape recovery process ensures a compact representation of the recovered smooth limit surface using very few degrees of freedom. 1.3 Contributions In this dissertation, techniques from physics-based modeling are integrated with geometric subdivision methodology to present a scheme for directly manipulating the smooth limit surface generated by the subdivision process. As a result, unlike the existing geometric solutions that only allow the operations on control vertices, the proposed methodology and algorithms permit the user to physically modify the shape of subdivision surfaces at desired locations via application of forces. This gives the user a .iiit!" clay/play-dough modeling environment. Ti, proposed model can be edited directly in a hierarchical fashion using synthesized forces. Also, this physics-based subdivision surface model efficiently recovers shapes as well as non- rigid motions from large range and volumetric data sets. Note that this dissertation neither proposes a new subdivision technique nor provides a different interpretation of any existing subdivision technique, but integrates the advantages of subdivision surface-based and physics-based modeling techniques to solve important theoretical and practical problems. Although the principles of physics-based modeling are well understood by the graphics experts and modeling researchers, this dissertation will greatly advance the state of the art in physics-based shape modeling due to the contributions listed below. Local parameterization techniques for the smooth limit surface generated by various subdivision schemes are systematically derived in a hierarchical frame- work, and subsequently the initial control polyhedron can be viewed as the parametric domain of the physics-based smooth limit surface. Tli, smooth dynamic subdivision surface in the limit is treated as a i !" physical object represented by a set of novel finite elements. Ti, basis (shape) functions of these new variety of finite elements are derived using the subdivision schemes. Ti, proposed finite element methods will prove to be useful not only in the areas of computer graphics and geometric design, but also in engineering analysis as well. Ti, subdivision techniques are used to create a surface model that incorporates mass and damping distribution functions, internal deformation energy, forces, and other physical quantities. Tli, motion equations are also systematically derived for this dynamic subdivision surface model whose degrees of freedom are the collection of initial user-specified control vertices. Tli, i, fi, e, the advantages of both the physics-based modeling philosophy and the geometric subdivision schemes are incorporated within a single unified framework. Users will be able to manipulate this physics-based model in an arbitrary region, and the model will respond naturally (just like a real-world object would) to this force application. This shape deformation is quantitatively characterized by the time-varying displacement of control points that uniquely define the geometry of the limit surface. Tlii dynamic framework for wavelets derived using subdivision schemes en- ables a multiresolution representation of the control mesh defining the smooth limit surface. This provides additional flexibility to the physics-based modeling framework since the modeler is free to choose the desired editing level. If a lower resolution editing level is chosen, the synthesized force application on the smooth limit surface will have global effects, whereas editing with force-based tools at a finer resolution will yield a localized effect. Algorithms and procedures are developed which approximate the proposed new finite elements using a collection of linear and/or bilinear finite elements subject to the implicit geometric constraints enforced by the subdivision rules. This hierarchically-structured approximation can satisfy any user-specified error tol- erance. Ti, proposed dynamic framework enhances the applicability of subdivision sur- face models in various application areas. It provides a direct and intuitive way of manipulating shapes in a hierarchical fashion for geometric modeling applications. It has also been successfully used for efficient and hierarchical shape recovery from range and volume data sets as well as for tracking a shape of interest from a time sequence of range or volume data sets. Fini lly, the dynamic framework of subdivision surfaces is combined with a variant of a fractal surface synthesis technique to present a novel natural terrain modeling method. 1.4 Outline of Dissertation Tli, rest of the dissertation is organized as follows : Cli~,ipi r 2 contains an overview of the subdivision surfaces along with a review of the related literature. Ti, motivation for embedding the subdivision surface models in a physics-based modeling framework is discussed, and the proposed model is com- pared with the existing physics-based models. Tli, advantages of a unified framework for shape modeling and shape recovery are also pointed out in this chapter. Cllip, ir 3 provides a dynamic framework for the Catmull-Clark subdivision scheme, which is one of the most popular subdivision techniques for modeling compli- cated objects of arbitrary genus. Analytic formulation of the limit surface generated by the Catmull-Clark subdivision scheme is derived and the p!1i, !" quantities required to develop the dynamic model are introduced [57, 60, 76]. Til, governing dynamic differential equation is derived using Lagrangian mechanics and is imple- mented using a finite element technique. In Cl11,lpi r 4, a dynamic framework is provided for the butterfly subdivision scheme, another popular subdivision technique for modeling smooth surfaces of arbi- trary topology. A local parameterization scheme for the butterfly subdivision surface is derived in a hierarchical style. Tlii physics-based butterfly subdivision model is formulated as a set of novel finite elements which are optimally approximated by a collection of standard finite elements subjected to implicit geometric constraints [58, 61]. Cli,,1pi r 5 presents an unified approach for providing a dynamic framework for subdivision surfaces in general. In particular, it has been shown that the limit surface obtained using any subdivision scheme can be viewed as a collection of either quadri- lateral or triangular finite elements whose basis (shape) functions can be derived using the chosen subdivision scheme [59]. In Cliipi, r 6, a dynamic framework is presented for the subdivision surface- based wavelet schemes. This dynamic framework enables a multiresolution represen- tation of the control mesh defining the smooth limit surface and consequently, the modeler can control the extent of the effect of manipulation on the limit surface by choosing a proper editing level. In Clilpi, r 7, a system that integrates the implementation of the concepts pro- posed in earlier chapters is presented. Several modules comprise the entire system, and the functionality of these modules are discussed in this chapter. Ti, proposed modeling framework is used in various application areas and the results are presented in Clilipi r 8. Ti, proposed dynamic model has been success- fully used in geometric modeling, shape recovery and non-rigid motion estimation applications. A novel technique for natural terrain modeling is also presented where the dynamic framework is combined with a variant of a fractal surface synthesis technique. Finilly, conclusions are drawn in Cliipi, r 9 where future directions of research are also pointed out. CHAPTER 2 BACKGROUND In this chapter, a brief overview of the subdivision surfaces is presented followed by a review of the previous work done in the area of subdivision surfaces. This is followed by an overview of the physics-based models along with a review of the re- lated literature. Tli, motivating factors for embedding geometric subdivision surface models in a physics-based modeling paradigm are presented in the next section. TI, advantages of the proposed dynamic models over the existing physics-based models for shape recovery are discussed and finally advantages of a unified framework for shape modeling and shape recovery are also presented. 2.1 Subdivision Surfaces Tli, input to any subdivision scheme is an initial mesh (also known as control mesh), \1" = (V, Fo), which is a collection of vertices V0 and a collection of faces F. Ti, subdivision surface S(.\l") associated with the initial mesh \'1" is defined as the limit of the recursive application of the refinement R as shown in Fig.2.1. TIi, refinement R, when applied on a mesh I.k = (V, Fk), creates a refined mesh \/k+1 = (Vk+l, Fk+l) where the vertices in Vk+1 are computed as affine combinations of the vertices in Vk and the faces in Fk+1 are obtained by splitting each face in Fk into a fixed number of sub-faces. (c) Mesh M' = R(R(M)) (d) Limit surface S(M) = R"(M) Figure 2.1. Refinement of an initial control mesh to obtain the limit surface. (Cour- tesy : H. Hoppe) 'b) Mesh M-' = R(1M) It may be noted that the vertices introduced through the subdivision process have a fixed degree in general (4 in case of quadrilateral meshes and 6 in case of tri- angular meshes). Ti, vertices which do not have this degree are called extraordinary vertices. Ti, number of extraordinary vertices are very few as these vertices are not introduced via subdivision refinement in general. For example, in the Catmull-Clark subdivision scheme (defined on quadrilateral meshes) the number of extraordinary vertices does not change after the first subdivision on the initial mesh, whereas in the modified butterfly subdivision scheme (defined on triangular meshes) the subdivision process never introduces an extraordinary vertex. Ti, limit surface defined by the subdivision process is most often C1(first derivative continuous) or C2 (second deriva- tive continuous) depending on the subdivision rules expect at very few extraordinary points corresponding to the extraordinary vertices in the mesh. Specific subdivision schemes along with the properties of their limit surfaces will be discussed in later chapters. A lot of research have been carried out on subdivision surfaces, which are mainly focused either on the development of a new subdivision technique or on analyzing the smoothness properties of the limit surface generated by a subdivision scheme. However, in this dissertation the focus is entirely different, namely, embedding the subdivision surfaces in a physics-based modeling paradigm to enhance the applicabil- ity of these surface models. In the rest of this section, these i iliid .1 !" techniques of subdivision surfaces are reviewed. Cli.il.i i [14] first introduced the concept of subdivision to the computer graphics community for generating a smooth curve from a given control polygon. During the last two decades, a wide variety of subdivision schemes for modeling smooth surfaces of arbitrary topology have been derived following Cli;i .i i's pioneering work on curve generation. In general, these subdivision schemes can be categorized into two distinct classes namely, (1) approximating subdivision techniques and (2) interpolatory sub- division techniques. Tih limit surface obtained using an approximating subdivision technique only approximates the initial mesh, whereas the limit surface interpolates the initial mesh in case of interpolatory subdivision techniques. Among the approximating schemes, the techniques of Doo and Sabin [27, 83] generalize the idea of obtaining uniform biquadratic patches from a rectangular con- trol mesh. This scheme is an example of vertex subdivision scheme where a vertex surrounded by k faces is split into k sub-vertices, one for each face. Doo and Sabin's subdivision technique can be applied to any mesh of arbitrary topology, and the re- sulting smooth limit surface would be biquadratic B-splines, except at extraordinary points corresponding to the extraordinary vertices in the control mesh. Catmull and Clark [10] developed a method for recursively generating a smooth surface from a polyhedral mesh of arbitrary topology. Tih Catmull-Clark subdivision surface, defined by an arbitrary initial mesh, can be reduced to a set of standard bicubic B-spline patches except at a finite number of degenerate points. This scheme is an example of face subdivision scheme, where a k-sided face is split into k sub- faces. Tl, details of this subdivision scheme are discussed in Section 3.1. Halstead et al. [38] proposed an algorithm to construct a Catmull-Clark subdivision surface that interpolates the vertices of a mesh of arbitrary topology. Loop [51] presented a subdivision scheme based on the generalization of quartic triangular B-splines for triangular meshes. Loop's subdivision rules are presented in Section 5.3. Hoppe et al. [40] extended Loop's work to produce piecewise smooth surfaces with discontinuities in selected areas of the limit surface. T11 -- introduced new subdivision rules that allow for sharp features such as creases and corners in the limit surface. Peters and Reif [73] proposed a simple subdivision scheme for smoothing poly- hedra. Tli, ii refinement rules yield a C1 surface that has a piecewise quadratic pa- rameterization except at isolated extraordinary points. ':.1- recently, non-uniform Doo-Sabin and Catmull-Clark surfaces that generalize non-uniform tensor product B-spline surfaces to arbitrary topologies were introduced by Sederberg et al. [88]. All the schemes mentioned above generalize recursive subdivision schemes for generating limit surfaces with a known parameterization. Various issues involved with character animation using these approximating subdivision schemes were discussed at length by DeRose et al. [25]. Ti, most well-known interpolation-based subdivision scheme is the ill i, ill ' algorithm proposed by Dyn et al. [30]. Butterfly subdivision method, like other sub- division schemes, makes use of a small number of neighboring vertices for subdivision. It requires simple data structures and is extremely easy to implement. However, it needs a topologically regular setting of the initial (control) mesh in order to obtain a smooth C1 limit surface. A variant of this scheme with better smoothness prop- erties can be found in Dyn et al. [29]. Zorin et al. [109] developed an improved interpolatory subdivision scheme (which we call the modified butterfly scheme) that retains the simplicity of the butterfly scheme and results in much smoother surfaces even from irregular initial meshes. T111 interpolatory subdivision schemes have extensive applications in wavelets on manifolds, multiresolution decomposition of polyhedral surfaces and multiresolution editing. A variational approach for interpolatory refinement has been proposed by Kobbelt [43, 44] and by Kobbelt and Schrider [46]. In this approach, the vertex positions in the refined mesh at each subdivision step are obtained by solving an optimization problem. Ti, i, f; e, these schemes are global, i.e., every new vertex position depends on all the vertex positions of the coarser level mesh. Ti, local refinement property which makes the subdivision schemes attractive for implementation in the computer graphics applications is not retained in the variational approach. Tli, derivation of various mathematical properties of the smooth limit surface generated by the subdivision algorithms is rather complex. Doo and Sabin [28] first analyzed the smoothness behavior of the limit surface using the Fourier transform and an eigen-analysis of the subdivision matrix. Ball and Storry [3, 4] and Reif [80] further extended Doo and Sabin's prior work on continuity properties of subdivision surfaces by deriving various necessary and sufficient conditions on smoothness for different subdivision schemes. Specific subdivision schemes were analyzed by Schweitzer [87], Habib and Warren [37], Peters and Reif [74] and Zorin [108]. '.1i -, recently, Stam [90] presented a method for exact evaluation of Catmull-Clark subdivision surfaces at arbitrary parameter values. It may be noted that the focus of this dissertation is not on deriving a new subdivision technique or analyzing a subdivision technique, but on deriving a deformable surface model using these subdivision schemes. 2.2 Physics-based Deformable Surface .odels SIilipe models can be broadly categorized into two types -lumped parameter models and distributed parameter models. A lumped parameter model uses small number of parameters to represent model geometry, whereas a distributed parameter model uses large number of degrees of freedom for model representation. An example of a lumped parameter surface model is a superquadric. Spline surfaces serve as a good example for distributed parameter model. Deformable surfaces are distributed parameter models which use large number of degrees of freedom for representing the model geometry. A large variety of shapes can be modeled using this type of model, but handling a large number of degrees of freedom can be cumbersome. However, the large degrees of freedom of a deformable model are embedded in a physics-based framework to allow only a pli -i, .llI mean- i.hlil model behavior. Various types of energies are assigned to the model using the degrees of freedom, and the model "d(, I .i ii-" to find an equilibrium state with min- imal energy. Ti, motion equation is derived using Lagrangian dynamics [36], where various energies associated with model gives rise to internal and external forces. Ti, equilibrium state of the model is a model position where the internal deformation force becomes equal to the externally applied force. Tli, physics-based deformable models are useful for modeling where the modeler can deform a surface by applying synthesized forces, and for data fitting where external forces are synthesized from a given data set such that the model approximates the given data at equilibrium. A deformable surface model is typically parameterized over the domain [0, 1]2. Let s(u, v, p) be a deformable surface model, where 0 < u, v < 1 and p is a collection of the degrees of freedom p i = 1, 2,..., n associated with the model (assuming the model has n degrees of freedom). Ti, degrees of freedom pi(t) is a set of generalized coordinates which are functions of time and are assembled into the vector p. Let fi(t) be the generalized force represented by the vector fp and acting on p Let T be the kinetic energy, F be the dissipation energy and U be the potential energy of the deformable surface model. Tir, i, the Lagrangian equation of motion for the model can be expressed as d OT OT OF OU + --+ f=. (2.1) dt 0 /; 0 1 (0/ ( 0/, Let i(u, v) be the mass density function of the surface. Til 11, the kinetic energy of the surface is T = f _s'sdudv = pMp, (2.2) 2 i2 where M is called the mass matrix. Similarly, let j(u, v) be the damping density function of the surface. Tli, I the dissipation energy is F = 1 'sdudv = pDp, (2.3) 2JJ 2 where D is called the damping matrix. Tli, potential energy of the model can be defined using the thin-plate-under-tension energy model [96], and is given by S s' Os Os' Os 02s' 02s U (a + O22 P11 U S( u u ov ov o2u o2u 02T 02s 02s' 2s 1 + 312 v + 322 )dudv = p Kp, (2.4) uLiv uLiv d2- d2v 2 ' where aii(u, v) and 3ij (u, v) are elasticity functions which control tension and rigidity respectively of the deformable surface model, and K is known as the stiffness matrix. Ti, discretized equation of motion can be derived using the expressions of the kinetic, dissipation and potential energy in Eqn.2.1, which is given by Mp + Dp + Kp = fp, (2.5) where fp is the generalized force vector. Tlii free-form deformable models discussed above were first introduced to com- puter graphics and visualization in Terzopoulos et al. [99] and further developed by Terzopoulos and Fleischer [97], Pentland and Williams [72], i i-.11.1,x and Terzopou- los [65] and Vemuri and Radisavljevic [104]. Celniker and Gossard [11] developed a system for interactive free-form design based on the finite element optimization of en- ergy functionals proposed in Terzopoulos and Fleischer [97]. Bloor and Wilson [8, 9], Celniker and Welch [12] and Welch and Witkin [105] proposed deformable B-spline curves and surfaces which can be designed by imposing the shape criteria via the minimization of the energy functionals subject to hard or soft geometric constraints through Lagrange multipliers or penalty methods. Qin and Terzopoulos [77, 78, 100] developed dynamic NURBS (D-NURBS) which are very sophisticated models suit- able for representing a wide variety of free-form as well as standard analytic shapes. T1i, D-NURBS have the advantage of interactive and direct manipulation of NURBS curves and surfaces, resulting in physically meaningful hence intuitively predictable motion and shape variation. Deformable models are also widely used for shape recovery, segmentation, mo- tion tracking and other computer vision and medical imaging applications. A detailed survey of deformable models used in these techniques can be found in ':.1 II1i Iny and Terzopoulos [64] and the references therein. Some specific existing deformable models used for shape recovery and non-rigid motion estimation will be reviewed in Section 2.4. 2.3 1,ip,1 .ideling Using Physics-based Subdivision-surface :iodel Recursive subdivision surfaces are powerful for representing smooth geometric shapes of arbitrary topology. However, they constitute a purely geometric represen- tation, and furthermore, conventional geometric modeling with subdivision surfaces may be difficult for representing highly complicated objects. For example, modelers are faced with the tedium of indirect shape modification and refinement through time- consuming operations on a large number of (most often irregular) control vertices when using typical subdivision surface-based modeling schemes. Despite the advent of advanced 3D graphics interaction tools, these indirect geometric operations remain non-intuitive and laborious in general. In addition, it may not be enough to obtain the most "fair" surface that interpolates a set of (ordered or unorganized) data points. A certain number of local features such as bulges or inflections may be strongly de- sired while requiring geometric objects to satisfy global smoothness constraints in geometric modeling and computer graphics applications. In contrast, physics-based modeling provides a superior approach to shape modeling that can overcome most of the limitations associated with traditional geometric modeling approaches. Free-form deformable models governed by the laws of continuum mechanics are of particular interest in this context. Ti, -, dynamic models respond to externally applied forces in a very intuitive manner. Tlii dynamic formulation marries the model geometry with time, mass, damping and constraints via a force balance equation. Dynamic models produce smooth, natural motions which are easy to control. In addition, they facilitate interaction -especially direct manipulation of complex geometries. Fur- thermore, the equilibrium state of the model is characterized by a minimum of the deformation energy of the model subject to the imposed constraints. Tli, deformation energy functionals can be formulated to satisfy local and global modeling criteria, and geometric constraints relevant to shape design can also be imposed. Tli, dynamic approach subsumes all of the aforementioned modeling capabilities in a formulation which grounds everything in real-world physical behavior. A severe limitation of the existing deformable models, including D-NURBS, is that they are defined on a rectangular parametric domain. Hence, it can be very difficult to model surfaces of arbitrary genus using these models. In a recent work, DeRose et al. [25] assigned material properties to control meshes at various subdivi- sion levels in order to simulate cloth dynamics using subdivision surfaces. Note that, they assign physical properties on the control meshes at various levels of subdivision and not on the limit surface itself, and hence can not solve the modeling goal we are trying to achieve. In this dissertation, a dynamic framework is presented for subdivision surfaces which combines the benefits of subdivision surfaces for modeling arbitrary topology as well as that of dynamic splines for interactive shape manip- ulation by applying synthesized forces. Ti, proposed dynamic framework presents the modeler a formal mechanism of direct and intuitive manipulation of the smooth limit surface, as if they were seamlessly sculpting a piece of real-world !Li A dynamic framework for subdivision surface-based wavelets adds flexibility in the pro- posed modeling paradigm. It enables a multiresolution representation of the evolving control mesh defining the smooth limit surface, and the modeler can control the extent of manipulation effect by choosing a proper editing level. TI formulation and implementation details of these dynamic frameworks are discussed in subsequent chapters. 2.4 11i,11i and otion Estimation Using Physics-based Subdivision-surface : .odel Tlii dynamic subdivision surface model has been developed primarily for mod- eling arbitrary (known) topology where modelers can directly manipulate the limit surface by applying synthesized forces in an intuitive fashion. However, another im- portant application of the dynamic subdivision surfaces is in non-rigid shape and motion reconstruction/recovery. Accurate shape recovery requires distributed pa- rameter models which typically possess a large number of degrees of freedom. On the other hand, efficient shape representation imposes the requirement of geometry compression, i.e., models with fewer degrees of freedom. Tli, requirements are conflicting and numerous researchers have been seeking to strike a balance between these contradicting requirements [5, 21, 47, 49, 62, 89, 100, 104]. Another important criterion in the design of shape models is that the initialization of the model during the shape recovery process should not be restricted to globally parameterized input meshes since it may be infeasible to globally parameterize shapes of arbitrary topol- ogy. A physics-based model best satisfying the above mentioned criteria is an ideal candidate for a solution to the shape recovery problem for obvious reasons. Deformable models which come in many varieties, have been used to solve this problem in the physics-based modeling paradigm. T111 models involve the use of either fixed size [21, 66, 71, 98, 104] or adaptive size [15, 41, 47, 62, 95, 101] grids. Tli, models with fixed grid size generally use less number of degrees of freedom for representation at the cost of accuracy of the recovered shape. On the other hand, models using adaptive grids generally need large number of degrees of freedom to recover the shapes accurately. Note that the shapes being recovered from the image data are smooth in most of the medical applications, i.e. the anatomical structures even with considerable amount of details have more or less a C1 surface. Under these circumstances, the finite element approaches as in Cohen and Cohen [21] and .1 i, i i iy and Terzopoulos [62] need a large number of degrees of freedom for deriving a smooth and accurate representation. In addition, they can not represent shapes with known arbitrary topology. i'.1 .reover, almost all of these schemes require a globally parameterized mesh as their input which may be infeasible at times. Tli, proposed model solves the shape recovery problem very effectively as it can recover shapes from large range and volume data sets using very few degrees of freedom (control vertices) for its representation and can cope with any arbitrary input mesh, not necessarily parameterized. Ti, initialized model deforms under the influence of synthesized forces to fit the data set by minimizing its energy. Once the approximate shape is recovered, the model is further subdivided automatically and a better approximation to the input data set is achieved using more degrees of freedom. Ti, process of subdivision after achieving an approximate fit is continued till a pre- scribed error criteria for fitting the data points is achieved. Tli, proposed dynamic subdivision surface models have also been successfully used in motion tracking and visualization of a dynamically deforming shape from a time sequence of volumetric data sets. 2.5 Unified Framework for Sliple Recovery and ,l,1. 1i modeling Currently, shape recovery and shape modeling are viewed as two distinct areas in computer graphics and geometric modeling literature. However, there are potential benefits if these two can be combined in an unified framework. For example, the modeler starts from scratch to build a specific model in a typical geometric modeling scenario. First, a rough shape is modeled and then it is fine-tuned by manipulating control vertex positions to obtain the desired effects. This turns out a cumbersome process in general. On the other hand, shape recovery using state-of-the-art methods yield large polygonal meshes which are very difficult to manipulate, especially for global changes in shape. .- often the resulting meshes from a shape recovery application are not directly amenable to multiresolution analysis. Computationally expensive re-meshing techniques are needed to convert these meshes into a specific type of meshes on which multiresolution analysis can be performed. This specific type of mesh is known as mesh with lidivision-( .iI II,, 1 i.;l implying a topologically equivalent mesh with the same connectivity as of the given mesh can be obtained by recursive subdivision of a very simple known initial mesh. Tli, proposed dynamic framework combines shape recovery and shape modeling in an unified framework where the modeler can scan in 3D points of a prototype model, recover the shape using the proposed dynamic subdivision surface model, and edit at any desired resolution using physics-based force tools. T!i11- the modeler is re- lieved of the burden of both building an initial model and editing a cumbersome huge polygonal mesh. Tli, shape recovery process starts with a smooth subdivision surface model which has a simple initial mesh. This model is deformed using synthesized forces from the given data points and is automatically refined using some pre-defined error in fit criteria. Ti, initial mesh of the final recovered smooth shape has subdivi- sion connectivity in-built, as it is obtained by subdivision refinement, and therefore no re-meshing is needed for multiresolution analysis. Tli, dynamic framework for subdivision surface-based wavelets makes multiresolution editing using physics-based force tools easy to perform. Ti, -, advantages of shape modeling and shape recovery in a unified framework will be further illustrated in later chapters. CHAPTER 3 DYNA-i, C CAT'.IULL-CLARK SUBDIVISION SURFACES Subdivision surfaces, as mentioned earlier, can be broadly classified into two categories -approximating and interpolatory subdivision schemes. Ti, approxi- mating subdivision schemes typically generalize recursive subdivision techniques for generating limit surfaces with known parameterizations. In this chapter, a dynamic framework will be presented for Catmull-Clark subdivision scheme, a popular approx- imating subdivision technique. T!i, Catmull-Clark subdivision scheme generalizes the idea of obtaining a bicubic B-spline surface by recursive subdivision of a rectangu- lar initial mesh. Before discussing the dynamic framework, first the Catmull-Clark subdivision scheme is briefly reviewed. 3.1 Overview of the Catmull-Clark Subdivision Scheme Catmull-Clark subdivision scheme, like any other subdivision scheme, starts with a user-defined mesh of arbitrary topology. It refines the initial mesh by adding new- vertices, edges and faces with each step of subdivision following a fixed set of subdivision rules. In the limit, a recursively refined polyhedral mesh will converge to a smooth surface. Ti, subdivision rules are as follows: (a) (b) Figure 3.1. Catmull-Clark subdivision : (a) initial mesh, (b) mesh obtained after one step of Catmull-Clark subdivision, and (c) mesh obtained after another subdivision step. For each face, a new face vertex is introduced which is the average of all the old vertices defining the face. For each (non-boundary) edge, a new edge vertex is introduced which is the average of the following four points: two old vertices defining the edge and two new face vertices of the faces adjacent to the edge. For each (non-boundary) vertex V, a new vertex is introduced whose position is + 2E- (n 3) where F is the average of the new face vertices of all faces n n n adjacent to the old vertex V, E is the average of the midpoints of all the edges incident on the old vertex V and n is the number of the edges incident on the vertex. -, "i edges are formed by connecting each newx face vertex to the newx edge vertices of the edges defining the old face and by connecting each newx vertex corresponding to an old vertex to the new edge vertices of all old edges incident on the old vertex. * i faces are defined as faces enclosed by new edges. An example of Catmull-Clark subdivision on an initial mesh is shown in Fig.3.1. Tli, most important property of the Catmull-Clark subdivision surfaces is that a smooth surface can be generated from any control mesh of arbitrary topology. Tl ,i 1 - fore, this subdivision scheme is extremely valuable for modeling various complicated geometric objects of arbitrary topology. Catmull-Clark subdivision surfaces include standard bicubic B-spline surfaces as their special case (i.e., the limit surface is a bicubic B-spline surface for a rectangular mesh with all non-boundary vertices of degree 4). In addition, the aforementioned subdivision rules generalize the recur- sive bicubic B-spline patch subdivision algorithm. For non-rectangular meshes, the limit surface converges to a bicubic B-spline surface except at a finite number of ex- traordinary points. T111 extraordinary points correspond to extraordinary vertices (vertices whose degree is not equal to 4) in the mesh. Note that, after the first sub- division, all faces are quadrilaterals, hence all the newx vertices created subsequently will have four incident edges. Tli, number of extraordinary points on the limit sur- face is a constant, and is equal to the number of extraordinary vertices in the refined mesh obtained after applying one step of the Catmull-Clark subdivision on the initial mesh. Tli, limit surface is curvature-continuous everywhere except at extraordinary vertices, where only tangent plane continuity is achieved. In spite of the popularity of Catmull-Clark subdivision surfaces for representing complex geometric shapes of arbitrary topology, these subdivision surfaces may not be easily parameterizable and deriving a closed-form analytic formulation of the limit surface can be very difficult. T111 deficiencies preclude their immediate pointwise manipulation and hence may restrain the applicability of these schemes. In the rest of the chapter, a dynamic framework is developed for the Catmull-Clark subdivision surfaces which offers a closed-form analytic formulation and allows users to manipulate the model directly and intuitively. It may be noted that recently a scheme was proposed by Stam [90] for directly evaluating the Catmull-Clark subdivision surfaces at arbitrary parameter values, but the work presented here on dynamic Catmull-Clark subdivision surfaces [57, 60, 76] was published prior to the publication of the above-mentioned work. 3.2 Formulation In this section, a systematic formulation of the new dynamic model based on Catmull-Clark subdivision surfaces is presented. This dynamic model treats the smooth limit surface as a function of its initial mesh. However, the control vertex po- sitions need to be updated continually at every level of subdivision in order to develop the dynamic framework. Note that, all the vertices introduced through subdivision are obtained as an affine combination of control vertex positions in the initial mesh. TI 1, i .,_re, the dynamic behavior of the limit surface can be controlled by formulat- ing the dynamic model on the initial mesh itself, the only exception being the case when the initial mesh has non-rectangular faces. This problem can be circumvented by taking the mesh obtained through one step of subdivision as the initial mesh. It may be noted that an additional subdivision step may be needed in some cases to isolate the extraordinary points, and the resulting mesh is treated as the initial mesh. A typical example of the above mentioned scenario is when the initial mesh is a tetrahedron where two subdivision steps are needed, and the dynamic framework can be developed by treating the mesh obtained after two subdivision steps as the initial mesh. To define the limit surface using the vertices of the initial mesh, the enumeration of the bicubic patches in the limit surface is necessary. In the next two sections, various schemes are presented for assigning the bicubic patches to various faces of the initial mesh. 3.2.1 Assigning Patches to Regular Faces In Fig.3.2, a rectangular control mesh is shown along with the bicubic B-spline surface (4 patches) in the limit after an infinite number of subdivision steps. Note that, each of the bicubic patches in the limit surface is defined by a rectangular face with each vertex of degree four, thereby accounting for 16 control points (from its 8 connected neighborhood) needed to define a bicubic surface patch in the limit. Ti, 1, F; re, for each rectangular face in the initial mesh with a degree of 4 at each vertex, the corresponding bicubic surface patch can be assigned to it in a straight forward way. In Fig.3.2, the surface patches S1, S2, S3 and S4 are assigned to face F1, F2, F3 and F4 respectively. Tli, 16 control points for the patch S1, corresponding to face F1, are highlighted in Fig.3.2. Note that, the initial control mesh can be viewed as the parametric domain of the limit surface. Tli! i, F, re, face F1 can be thought of as the portion of the parametric domain over which the patch S1 is defined, i.e., has non-zero values. t' ,. i. heless, each rectangular face (e.g. Fi) can be parametrically I I -------- ,------- -- ----- r II I I -- -" ----- S S 4 --_--- --------------------------------- _ ---- ---- - S2 S3 r----- - - - Figure 3.2. A rectangular mesh and its limit surface consisting of 4 bicubic surface patches. defined over [0, 1]2, and hence, all bicubic B-spline patches defined by 16 control points are locally parameterized over [0, 1]2. 3.2.2 Assigning Patches to Irregular Faces In Fig.3.3, a mesh containing an extraordinary point of degree 3 and its limit sur- face are shown. T11, faces F0, F1, ..., F8 are assigned to bicubic patches So, S1,..., Sg respectively (as they all have vertices of degree 4) following the aforementioned scheme. However, the central smooth surface enclosed by the patches So, Si,..., Sg consists of infinite number of bicubic patches converging to a point in the limit. A re- cursive way of enumerating these bicubic patches and assigning them to various faces at different levels need to be developed in order to formulate the dynamic framework for Catmull-Clark subdivision surface model. Tli1 idea of enumerating the bicubic patches corresponding to faces having an extraordinary vertex is shown in Fig.3.4 where a local subdivision of the mesh con- sisting of faces F0, F1, .., F8, Po, P1, P2 (and not the other boundary faces) of Fig.3.3 is carried out. Topologically, the resulting local subdivision mesh (shown as dotted mesh) is exactly the same as the mesh in Fig.3.3 and hence exactly the same number of bicubic patches can be assigned to its faces with vertices of degree 4 as is evident from Fig.3.4 (the new faces and the corresponding patches are marked by "p" and "n" respectively). This process of local subdivision and assignment of bicubic patches around an extraordinary point can be carried out recursively and in the limit, the enclosed patch corresponding to faces sharing the extraordinary point will converge to a point. However, there is no need to carry out an infinite number of subdivision F II II 1 I I S2 S4 30Z) 8 S 6 \ \ S S Si F - - - - - - - - - -- i o Fu i Figure 3.3. A mesh xith an extraordinary point of degree 3 and its limit surface. selected mesh for -- local subdivision t Figure 3.4. Local subdivision around the extraordinary point and the limit surface. steps. This description is for formulation purposes only and the exact implementation will be detailed in a later section. 3.2.3 Kinematics In this section, the mathematics for the kinematics of the limit surface is devel- oped via illustrative examples and then the generalized formulas are presented. It may be noted that a single bicubic B-spline patch is obtained as the limiting process of the Catmull-Clark subdivision algorithm applied to an initial 4 by 4 rectangular control mesh. Let sp(u, v), where (u, v) c [0, 1]2, denote this bicubic B-spline patch which can be expressed analytically as 3 3 Sp(u, v) (x(u, v), y(u, v), z(u, v))T= E di,jBi,4(u)Bj,4(v), (3.1) i=0 j=0 where dj represents a 3-dimensional position vector at the (i,j)th control point location and Bi,4(u) and Bj,4(v) are the cubic B-spline basis functions. Ti, subscript p on s denotes the patch under consideration. Expressing Eqn.3.1 in a generalized coordinate system we have Sp = Jpqp, (3.2) where Jp is a transformation matrix storing the basis functions of a bicubic B-spline patch, and is of size (3, 48). Vector q, is the concatenation of all control points defining a B-spline patch in 3D. Note that in the concatenation of the control points, each control point has an (x, y, z) component. For example, the (x, y, z) components of the control point (i,j) correspond to positions 3k, 3k + 1, 3k + 2 where, k = 4i + j respectively in the vector qp. \We can express the entries of Jp explicitly in the following way: Jp(0, k) = J(1, k + 1) = Jp(2,k + 2) = Bi,4 ()Bj,4(v) and Jp(0, k + 1) = Jp(0, k + 2) = Jp((1, k) = Jp(, k + 2) = Jp(2, k) = Jp(2, k + 1) = 0. Limit surface with many bicubic patches from a rectangular initial mesh Now a limit surface consisting of many bicubic surface patches obtained after applying an infinite number of subdivision steps to a rectangular initial mesh is considered. For example, let the limit surface of Fig.3.2 be Sm which can be written as 1 1 1 1 (u, v) = s, (2u,2v)+s2(2(u- -),2v)+s, (2(u- ),2(v )) +s, (2u, 2(v )), 2 2 2 2 (3.3) where sm,(2u, 2v) = sm(u,v) for 0 < u, v < and 0 otherwise. Similarly, sm,,Sm3 and s,4 are also equal to sm(u, v) for an appropriate range of values of u, v and 0 outside. It may be noted that sm, sm s,, m ,4 correspond to patches S1, S2, S3, S4 respectively in Fig.3.2. Eqn.3.3 in generalized coordinates becomes 4 Sm= Jlql + J2q2 + J3q3 + J4q4 = iqi, (3.4) i=1 where Jis are the transformation matrices of size (3, 48) and qis are the (x,y,z) com- ponent concatenation of a subset of the control points of sm defining sm,, i = 1, 2, 3 and 4. A more general expression for Sm is 4 sm = JiAlq + J2A2qm + J3A3q[m + J4A4qm = JiAiqm = Jmqm. (3.5) i=1 Where, q, is the 75-component vector of 3D positions of the 25 vertex control mesh defining the limit surface s,. ':., 111 i'es Ai, 1 < i < 4, are of size (48, 75) each row consisting of a single nonzero entry (= 1) and the (3, 75)-sized matrix J = Zi=1 JiAi. Limit surface with many bicubic patches from an arbitrary initial mesh Tli, stage is now set to define the limit surface s using the vertices of initial mesh AM for any arbitrary topology, assuming all faces are quadrilateral and no face contains more than one extraordinary point as its vertex (i.e., extraordinary points are isolated). As mentioned earlier, if these assumptions are not satisfied, one or two steps of global subdivision may be required and the resulting mesh can be treated as the initial mesh. Let the number of vertices in the initial mesh AM be a, and let I of these be the extraordinary vertices. Tli, number of faces in the initial mesh are assumed to be b, and k of these faces have vertices with degree 4 (henceforth termed a 111 I i1i, 1. I ) and each of the remaining (b- k) faces have one of the I extraordinary vertices (henceforth termed a -"1' i! 1, 1. "). Let p be the 3a = N dimensional vector containing the control vertex positions in 3D. Using the formulations in Section 3.2.1 and Section 3.2.2, the smooth limit surface can be expressed as k I s = ni + sj, (3.6) i=1 j=l where ni is a single bicubic patch assigned to each of the normal faces and sj is a collection of infinite number of bicubic patches corresponding to each of the extraor- dinary points. As s is a surface defined over the faces of the initial control mesh, each ni can be viewed as a bicubic patch defined over the corresponding regular face in the initial control mesh. Similarly, each sj can be defined over the corresponding irregu- lar faces in the initial mesh (refer to Fig.3.2 -Fig.3.4 for the detailed description on parametric domains of subdivision surfaces). For the simplicity of the following math- ematical derivations on the dynamic model, from now on the parametric domain will not be explicitly provided in the formulation. Employing the same approach taken before to derive Eqn.3.5, it can be shown that k k k n, = (Ji)("pi) = (("Ji)(nAi))p = ("J)p, (3.7) i=1 i=1 i=1 Where "Ji," pi and "Ai are the equivalent of Ji, pi in Eqn.3.4 and Ai in Eqn.3.5 respec- tively. Ti, pre-superscript n is used to indicate that these mathematical quantities describe bicubic patch in the limit surface corresponding to normal faces. Ti, following notational convention will be used for describing various math- ematical quantities used in the derivation of the expression for a collection of infinite number of bicubic patches around an extraordinary vertex. Tli, pre-superscript s is used to represent a collection of bicubic patches around an extraordinary vertex, the subscript j is used to indicate the j-th extraordinary point, the post-superscript represents the exponent of a mathematical quantity and the level indicator (to rep- resent various levels of subdivision in the local control mesh around an extraordinary vertex) is depicted via a subscript on the curly braces. Ti, expression for sj is derived using the recursive nature of local subdivision around an extraordinary vertex as shown in Section 3.2.2. First, sj can be expressed as sj = {SJj}{Spj} + {sj}l, (3.8) where the first term of Eqn.3.8 is the generalized coordinate representation of the bicubic B-spline patches corresponding to the normal faces of the new local subdivi- sion mesh obtained after one subdivision step on the local control mesh (similar to those patches marked n in Fig.3.4). {sj}1 represents the rest of the infinite bicubic B-spline patches surrounding the extraordinary point (similar to the central patch enclosed by patches marked n in Fig.3.4). Tli, vertices in the newly obtained lo- cal subdivision mesh {'"pj} can be expressed as a linear combination of a subset of the vertices of the initial mesh M (which will contribute to the local subdivi- sion) following the subdivision rules. We can name this subset of initial control vertices {'pj }. Furthermore, there exists a matrix {'Bj}I of size (3c, 3d), such that {'Bj}{pjJ}0o = {'pj}1 where {"pJ}, and {(PJ}0 are vectors of dimension 3c and 3d respectively. Applying the idea of recursive local subdivision again on {sj}I, sj can be further expanded as sj {'Jj}l{'Bj}l{'pj}o + fJJ2{ Bj}2 + {s}2. (3.9) In the above derivation, {'Pj}I is a vector of dimension 3d, comprising of a subset of the vertices defining the 3c dimensional vector {'pj}I. Note that, {'Pj}I has the same structure as {Spj}o, therefore, there exists a (3d,3d) matrix {'Cj}1 such that {SCj} {spj } = {sPj}l. Each subdivision of a local mesh with d vertices creates a new local mesh with c vertices which contributes a fixed number of bicubic B-spline patches. Proceeding one step further, it can be shown that Sj = {sJj}l{Bj}lp J+pJ}o JJ2{z"BJC}2 Cj SPj}o +{"J}{SBy C}{s}o + {s,}3. (3.10) Because of the intrinsic property of the local recursive subdivision around the ex- traordinary point, we have {"J} = {sJj}2 ... = }{Jj = ... = .Jj. In addition, the subdivision rules remain the same throughout the refinement process, we also have {(Bj} = {"Bj}2 = ... = {(Bj}, ... = { Bj},. So, the above equations can be further simplified leading to Sj = {sJj} {Bj}l {spj}o {SJjlSBjl {sCj} {spj}o +{sJj}{SBj "sC} 2 sP }o ... = sJjl{sBj}l (E {Cj} ){"Spj}o. (3.11) i=0 Vector Sj can be written as sj = (SJj)(Spj), (3.12) where "Jj = {(JjJ}I"BN}I(E o {"CN}i) and "pj = {"pJ}0. Tl, idea of local recursive subdivision around an extraordinary point is illustrated in Fig.3.5. Note that, each vertex position in the subdivided mesh is obtained by an affine combination of some vertices in the previous level and hence any row of {(CjN} sums to 1. Tlii largest eigenvalue of such a matrix is 1 and it can be shown that the corresponding infinite series is convergent following a similar approach as in Halstead et al. [38]. Ti, rest of the derivation leading to an expression for s is relatively straight forward. Using the same approach used to derive the Eqn.3.7, it can be shown that Ssj = (sJj)(spj) = ( s(JjA)(sAj))p = (sJ)p. (3.13) j=1 j=1 j=1 From Eqn.3.6, Eqn.3.7 and Eqn.3.13, s = (nJ)p + (SJ)p. (3.14) Let J = ("J) + ("J), and hence s = Jp. (3.15) fIspi ------ fsB. 1sj 2s so Figure 3.5. Local subdivision around the extraordinary point and the corresponding patches in the limit surface from different levels of subdivision. 3.2.4 Dynamics In the previous section, an expression is derived for the smooth limit surface obtained via infinite subdivision steps. This expression treats the smooth limit surface as a function of the control vertex positions in the initial mesh. Now the vertex positions in the initial mesh defining the smooth limit surface s are treated as a function of time in order to embed the Catmull-Clark subdivision model in a dynamic framework. Tlii velocity of this surface model can be expressed as s(u,v,p) = Jp, (3.16) where an overstruck dot denotes a time derivative. Ti, physics of the dynamic subdivision surface model is based on the work-energy version of Lagrangian dynamics [36] and is formulated in an analogous way to the dynamic framework presented in Section 2.2. Let it(u, v) be the mass density function of the surface. T 11, the kinetic energy of the surface is T 2= I ,IsTsdudv 2= TMp, (3.17) where (using Eqn.3.16) M = if Jdudv (3.18) is the mass matrix of size (N, N). Similarly, let '(u, v) be the damping density function of the surface. Ti 1, the dissipation energy is F I I 'sdudv = Dp, (3.19) where D= J JJdudv (3.20) is the damping matrix of size (N, N). Ti, potential energy of the smooth limit surface can be expressed as 1 U = p'Kp, (3.21) 2 where K is the stiffness matrix of size (N, N). A thin-plate-under-tension energy model [96] is used to compute the elastic potential energy of the dynamic subdivision surface. Ti, corresponding expression for the stiffness matrix K is K = (/ (a(IJo f + OJJ2 +v 11 + iT 12 J + 322 VJ,)dudv. (3.22) where the subscripts on J denote the parametric partial derivatives. Ti11 aii(u,v) and 3ij (u, v)s are elasticity functions controlling local tension and rigidity in the two parametric coordinate directions. Note that the thin-plate energy expression might diverge at extraordinary points on the limit surface for Catmull-Clark subdivision scheme as shown in Halstead et al. [38]. Several methods have been -il-.-. -i ,1 in Halstead et al. [38] to overcome the problem of the divergent series. However, in this dissertation, the problem is circumvented by setting the corresponding rigidity coef- ficients to be zero at these points. Tli11 i fi .e, the thin-plate energy at extraordinary points is zero. Tli, effect is negligible to the overall thin-plate energy as very few extraordinary points are present in the smooth limit surface. Using the expressions for the kinetic, dissipation and potential energy in Eqn.2.1, the same motion equation as in Eqn.2.5 can be obtained. Ti, generalized force vector fp, which can be obtained through the principle of virtual work [36], is expressed as fp = Jff j (, v, t)dudv (3.23) Different types of forces can be applied on the smooth limit surface, and the limit surface would evolve over time according to Eqn.2.5 to obtain an equilibrium position characterized by a minimum of the total model energy. 3.2.5 ',lii i!lvel Dynamics At this point, a dynamic framework is developed for the Catmull-Clark subdi- vision scheme where the smooth limit surface evolves over time in response to the applied forces. Ti, entire process can be described as follows. Given an initial mesh, a smooth surface is obtained in the limit. Users can directly apply synthesized forces to this smooth limit surface to enforce various functional and aesthetic constraints. This direct manipulation is then transferred back as virtual forces acting on the initial mesh through a transformation matrix (Eqn.3.23), and the initial mesh (as well as the underlying smooth limit surface) deforms continuously over time until an equilib- rium position is obtained. Ti, deformation of the surface in response to the applied forces is governed by the motion equation (Eqn.2.5). Within the physics-based mod- eling framework, the limit surface evolves as a consequence of the evolution of the initial mesh. One can apply various types of forces on the limit surface to obtain a desired effect, but the possible level of details appearing in a shape that can be obtained through evolution is constrained by the number of control vertices in the initial mesh. It might be necessary to increase the number of control vertices in the initial mesh in order to obtain a detailed shape through this evolution process. Tli, number of control vertices defining the same smooth limit surface can be increased by simply replacing the initial mesh with a mesh obtained after one subdi- vision step applied to the initial mesh. This new mesh has more number of vertices but defines the same limit surface. T!, ,, f, re, the dynamic Catmull-Clark surface model can be subdivided globally to increase the number of vertices (control points) of the model. For example, after one step of global subdivision, the initial degrees of freedom p (refer to Eqn.3.15 and Eqn.3.16) in the dynamic system will be replaced by a larger number of degrees of freedom q, where q = Ap. A is a global subdivi- sion matrix of size (.~, N) whose entries are uniquely determined by Catmull-Clark subdivision rules (see Section 3.1 for the details about the rules). Tlil-, p, expressed as a function of q, can be written as p = (ATA) -ATq = Atq, (3.24) where At = (A A)- AT. Tli, i, fI .re, Eqn.3.15 and Eqn.3.16 can be rewritten as s = (JAt)q, (3.25) and s(u, v, q) = (JAt)q, (3.26) respectively. Now the equation of motion needs to be derived for this new subdivided model involving a larger number of control vertices namely q. Ti, mass, damping and stiffness matrices need to be recomputed for this "li "I level. T!i, structure of the motion equation as given by Eqn.2.5 remains unchanged, but the dimensionality and the entries of M, D, K, p and fp change correspondingly in this newly obtained subdivided level. In particular the motion equation, explicitly expressed as a function of q, can be written as Mq + Dq + Kq = fq, (3.27) where Mq = ff J/(At)'J' JAtdudv and the derivation of Dq, Kq and fq follow suit. It may be noted that further subdivision, if necessary, can be carried out in a similar fashion. T, i i, ,re, multilevel dynamics is achieved through recursive subdi- vision on the initial set of control vertices. Users can interactively choose the level of detail representation of the dynamic model as appropriate for their modeling and de- sign requirements. Alternatively, the system can automatically determine the level of subdivision most suitable for an application depending on some application-specific criteria. 3.3 Finii Element Implementation Ti, evolution of the generalized coordinates for our new dynamic surface model can be determined by the second-order differential equation as given by Eqn.2.5. An analytical solution of the governing differential equation can not be derived in general. However, an efficient numerical implementation can be obtained using the finite ele- ment method [42]. Tli, limit surface of the dynamic Catmull-Clark subdivision model is a collection of bicubic patch elements. We use two types of finite elements for this purpose normal elements (bicubic patches assigned to the normal faces of the initial mesh) and special elements (collection of infinite number of bicubic patches assigned to each extraordinary vertex of the initial mesh). Tli, shape functions for the nor- mal element are the basis functions of the bicubic surface patch, whereas the shape functions for the special element are the collection of basis functions corresponding to the bicubic patches in the special element. In the current implementation, the M, D and K matrices for each individual normal and special elements are calculated and they can be assembled into the global M, D and K matrices that appear in the corresponding discrete equation of motion. In practice, we never assemble the global matrices explicitly in the interest of time performance. Tli, detailed implementation is explained in the following sections. 3.3.1 Data Structures Tli, limit surface of the dynamic Catmull-Clark subdivision model is a collection of bicubic patches, and hence requires us to keep track of the control polygons defining such patches. We can get the control polygons for the normal elements in the limit NLL list of faces List of edges Subdiv object -Suv o t list of vertices list of normal elements 1 c 1 subdivision around extraordinary vertices List of faces list of faces list of edges -u v oj list of edges -ubdiv object 3ubdiv object list of vertices list of vertices List of normal elements -list of normal elements Figure 3.6. T!i data structure used for dynamic subdivision surface implementation. surface from the initial control mesh itself. However, we need to locally subdivide the initial control mesh around the extraordinary vertices to obtain the control polygons of the bicubic patches in the special elements on the limit surface. A subdivision surface defined by a control mesh at any level is designed as a class which has a pointer to its parent mesh, a set of pointers to its offspring meshes (arising out of local subdivision around the extraordinary vertices at that level), a list of faces, edges, vertices and normal elements Face, edge, vertex and normal elements are, in turn, classes which store all the connectivity and other information needed to either enumerate all the patches or locally subdivide around an extraordinary vertex in that level. Ti, implementation takes the initial mesh as the base subdivision surface object (with its parent pointer set to NULL) and locally subdivides the initial mesh upto a user-defined maximum level around each extraordinary vertex to create offspring objects at different levels (Fig.3.6). At this point, let's take a closer look at the normal and special element data structures and computation of the corresponding local M, D and K matrices. 3.3.2 Normal Elements Each normal element is a bicubic surface patch and hence is defined by 16 vertices (from the 8-connected neighborhood of the corresponding normal face) in the initial control mesh. Each normal element keeps a set of pointers to those vertices of the initial mesh which act as control points for the given element. For a normal element, the mass, damping and stiffness matrices are of size (16,16) and can be computed exactly by carrying out the necessary integration analytically. Ti, matrix J in Eqn.3.18, 3.20 and 3.22 needs to be replaced by Jp (of Eqn.3.2) for computation of the local M, D and K matrices respectively of the corresponding normal element. 3.3.3 Special Elements Each special element consists of an infinite number of bicubic patches in the limit. We have already described a recursive enumeration of the bicubic patches of a special element in Section 3.2.2. Let us now consider an arbitrary bicubic patch of the special element in some level j. Ti, mass matrix M, of this patch can be written as M, = Mp, (3.28) where Mp is the normal element mass matrix (scaled by a factor of to take into account of the area shrinkage in bicubic patches at higher level of subdivision) and Q2, is the transformation matrix of the control points of that arbitrary patch from the corresponding control points in the initial mesh. Tli, damping and stiffness matrices for the given bicubic patch can be derived in a similar fashion. Tli1 -i mass, damping and stiffness matrices from various levels of (local) subdivision can then be assembled to form the mass, damping and stiffness matrices of the special element. It may be noted that the stiffness energy due to plate terms diverges at the extraordinary points on the limit surface. We solve the problem using a slightly different approach than the one used in Halstead et al. [38]. When the area of the bicubic patch obtained via local subdivision of the initial mesh around an extraordinary vertex becomes smaller than the display resolution, the contribution from such a bicubic patch is ignored in computing the physical matrices of the corresponding special element. Tli1 number of extraordinary points in the limit surface is very few, and the above mentioned approximation is found to work well in practice. 3.3.4 Force Application Ti!, force f(u, v, t) in Eqn.3.23 represents the net effect of all externally applied forces. Ti, current implementation supports spring, inflation as well as image-based forces. However, other types of forces like repulsion forces, gravitational forces etc. can easily be implemented. To apply spring forces, a spring of stiffness k can be connected from a point do to a point xo on the limit surface (or, to the j-th level approximation mesh), the net applied spring force being f(x, t) = (do s(x,t))(x- xo)dx, (3.29) where 8 is the unit impulse function implying f(xo, t) = / (,, s(xo, t)| and vanishes elsewhere on the surface. However, the 6 function can be replaced with a smooth kernel to spread the force over a greater portion on the surface. Tli, spring forces can be applied interactively using the computer mouse or the points from which forces need to be applied can be read in from a file. To recover shapes from 3D image data, we synthesize image-based forces. A 3D edge detection is performed on a volume data set using the 3D '-.1 n;.i-Deriche(. Ii)) operator [69] to produce a 3D potential field P(x, y, z), which we use as an external potential for the model. Tli, force distribution is then computed as VP(x" y, z) f(x, y,z)= A P( (3.30) || VPr y, ) || where A controls the strength of the force. Tli, applied force on each vertex at the j- th approximation level is computed by trilinear interpolation for evaluating Eqn.3.23 in Cartesian coordinates. '.i ,re sophisticated image-based forces which incorporate region-based information such as gradients of a thresholded fuzzy voxel classification can also be used to yield better and more accurate shape recovery. It may be noted that we can apply spring forces in addition with the image-based forces by placing points on the boundary of the region of interest in each slices of the 3D volume (' i : CT etc.) image data. 3.3.5 Discrete Dynamic Equation Ti, differential equation given by Eqn.2.5 is integrated through time by dis- cretizing the time derivative of p over time steps At. Tli, state of the dynamic subdivision surface at time t + At is integrated using prior states at time t and t At. An implicit time integration method is used in the current implementation where discrete derivatives of p are calculated using (t + At) = pp(t + At) 2p(t) + p(t At) (3.31) p (t +A t) = 2 (3.31) At2 and p(t + At) = p(t + At) p(t At) (3.32) p(t t)- =t> (3.32) 2At Ti, elemental mass, damping and stiffness matrices can be assembled to get the global mass, damping and stiffness matrix for the smooth subdivision surface model. However, we do not assemble these global sparse matrices explicitly for efficiency reasons. For the time varying stiffness matrix, we recompute K at each time step. Using Eqn.2.5, Eqn.3.31 and Eqn.3.32, the discrete equation of motion is obtained as (2M + DAt + 2At2K)p(t + At) = 2At2f,(t + At) + (DAt 2M)p(t At) + 4Mp(t). (3.33) evolLtion evolution subdiv sion same limit surface at equili rium with more patches evol tion evol tion (a) (b) Figure 3.7. .idel subdivision to increase the degrees of freedom : (a) evolution of the initial mesh, and (b) the corresponding limit surface evolution perceived by the user. This linear system of equations is solved iteratively between each time step using the conjugate gradient method [34, 75]. 3.3.6 '.iodel Subdivision Tli, initialized model grows dynamically according to the equation of motion (Eqn.2.5). Tli, degrees of freedom of the initialized model is equal to the number of control vertices in the initial mesh as mentioned earlier. When an equilibrium is achieved for the model, the number of control vertices can be increased by replacing the original initial mesh by a new initial mesh obtained through one step of Catmull- Clark subdivision. This increases the number of degrees of freedom to represent the same (deformed) smooth limit surface and a new equilibrium position for the model can be obtained. This process is depicted schematically in Fig.3.7. '- idel subdivision might be needed to obtain a very localized effect on a smooth limit surface. For a shape recovery application, one may start with a very simple initial model, and when an approximate shape is recovered, the degrees of freedom can be increased to obtain a new equilibrium position for the model with a better fit to the given data set. Tl1I error of fit criteria for the discrete data is based on distance between the data points and the points on the limit surface where the corresponding springs are attached. In the context of image-based forces, if the model energy does not change between successive iterations indicating an equilibrium for the given resolution, the degrees of freedom for the model can be increased by the above-mentioned replacement scheme until the model energy is sufficiently small and the change in model energy between successive iterations becomes less than a pre-specified tolerance. 3.4 Generalization of the Approach Tli, proposed approach can be generalized for other approximating subdivision schemes. However, a more general approach is presented in Clplii, r, 5 for deriving the dynamic framework. Dynamic Catmull-Clark subdivision surface model is reformu- lated in Section 5.2 using this general approach. A dynamic framework for another popular approximating subdivision scheme namely, Loop's subdivision scheme, is also discussed in Cl.,pli r 5. CHAPTER 4 DYNAI, iC BUTTERFLY SUBDIVISION SURFACES In the previous chapter, a dynamic framework has been presented for an approx- imating subdivision scheme namely, Catmull-Clark subdivision scheme. In this chap- ter, a dynamic framework is developed for (modified) butterfly subdivision scheme, which is an interpolatory subdivision technique. First, a brief overview of the (mod- ified) butterfly subdivision scheme is presented. ':i \, a local parameterization tech- nique for the limit surface obtained via (modified) butterfly subdivision is discussed. This parameterization scheme is then used to derive the dynamic model. Tli, imple- mentation details are also discussed. 4.1 Overview of the ( modifiedd) Butterfly Subdivision Scheme Tli, butterfly subdivision scheme [30], like many other subdivision schemes used in geometric design literature/applications, starts with an initial triangular mesh which is also known as the control mesh. Ti, vertices of the control mesh are known as the control points. In each step of subdivision, the initial (control) mesh is refined through the transformation of each triangular face into a patch with four smaller triangular faces. After one step of refinement, the new mesh in the finer level retains the vertices of each triangular face in the previous level and hence, interpolates the coarser mesh in the previous level. In addition, every edge in each triangular face (a) (b) Figure 4.1. (a) Ti, control polygon with triangular faces; (b) mesh obtained after one subdivision step using butterfly subdivision rules. -W -W -W -W Figure 4.2. (a) Tli, contributing vertices in the j-th level for the vertex in the j+1- th level corresponding to the edge between vi and v ; (b) the weighing factors for different vertices. is spilt by adding a new vertex whose position is obtained by an affine combination of the neighboring vertex positions in the coarser level. For instance, the mesh in Fig.4.1(b) is obtained by subdividing the initial mesh shown in Fig.4.1(a) once. It may be noted that all the newly introduced vertices corresponding to the edges in the original mesh have degree 6, whereas the position and degree of the original vertices do not change in the subdivided mesh. In the original butterfly scheme, the new vertices corresponding to the edges in the previous level are obtained using an eight-point stencil as shown in Fig.4.2(a). To show how this stencil is used, a vertex to be introduced and the contributing vertices from the stencil are highlighted in Fig.4.1(a). Tli, name of the scheme originated from the ill i ii Il'-like configuration of the contributing vertices. T11, weighing factors for different contributing vertex positions are shown in Fig.4.2(b). Ti, vertex el in the j 1-th level of subdivision, corresponding to the edge connecting vertices v] and vi at level j, is obtained by e1 = 0.5(v1 + vj) + 2w(v- + vj) w(vj + v- + v' + vJ), (4.1) where 0 < w < 1, and vJ denotes the position of the i-th vertex at the j-th level. Tli, butterfly subdivision scheme produces a smooth C1 surface in the limit except at the extraordinary points corresponding to the extraordinary vertices (ver- tices with degree not equal to 6) in the initial mesh [109]. All the vertices introduced through subdivision have degree 6, and therefore, the number of extraordinary points in the smooth limit surface equals the number of extraordinary vertices in the initial -0.06 0625-w n-2 w (a) (b) Figure 4.3. (a) Tli, weighing factors of contributing vertex positions for an edge connecting two vertices of degree 6; (b) the corresponding case when one vertex is of degree n and the other is of degree 6. mesh. Recently, this scheme has been modified by Zorin et al. [109] to obtain better smoothness properties at the extraordinary points. This modified scheme is known as modified butterfly subdivision technique. In Zorin et al. [109], all the edges have been categorized into three classes : (i) edges connecting two vertices of degree 6 (a 10 point stencil, as shown in Fig.4.3(a), is used to obtain the new vertex positions corresponding to these edges), (ii) edges connecting a vertex of degree 6 and a vertex of degree n = 6 (the corresponding stencil to obtain new vertex position is shown in Fig.4.3(b), where q = .75 is the weight associated with the vertex of degree n $ 6, and si = (0.25 + cos(27ri/n) + 0.5cos(47i/n))/n, i = 0, 1,... 1, are the weights associated with the vertices of degree 6), and (iii) edges connecting two vertices of degree n $ 6. Ti, last case can not occur except in the initial mesh as the newly introduced vertices are of degree 6, and the new vertex position in this last case is obtained by averaging the positions obtained through the use of stencil shown in Fig.4.3(b) at each of those two extraordinary vertices. 4.2 Formulation In this section, a systematic formulation of the dynamic framework for the modi- fied butterfly subdivision scheme is presented. Unlike the approximating schemes, the limit surface obtained via modified butterfly subdivision does not have any analytic expression even in a regular setting. Ti, iI fi 'e, derivation of a local parameterization suitable for developing the dynamic framework for the limit surface is the key issue here which is discussed next. * 0- Figure 4.4. Tli, smoothing effect of the subdivision process on the triangles of the initial mesh. 4.2.1 Local Parameterization Ti, smooth limit surface defined by the modified butterfly subdivision technique is of arbitrary topology where a global parameterization is impossible. t'. '. i cheless, the limit surface can be locally parameterized over the domain defined by the initial mesh following a similar approach described in Lounsbery et al. [53]. Tli, idea is to track any arbitrary point on the initial mesh across the meshes obtained via the subdivision process (see Fig.4.4 and Fig.4.5), so that a correspondence can be established between the point being tracked in the initial mesh and its image on the limit surface. Tli, modified butterfly subdivision scheme starts with an initial mesh consisting of a set of triangular faces. T!i, recursive application of the subdivision rules smoothes out each triangular face, and in the limit, a smooth surface is obtained which can also be considered as a collection of smooth triangular patches. Ti, subdivision process and the triangular decomposition of the limit surface is depicted in Fig.4.4. Note that, the limit surface can be represented by the same number of smooth triangular patches as that of the triangular faces in the initial mesh. Tli, i fI .e, the limit surface s can be expressed as s = Sk, (4.2) k=l where n is the number of triangular faces in the initial mesh and Sk is the smooth triangular patch in the limit surface corresponding to the k-th triangular face in the initial mesh. Tih stage is now set for describing the parameterization of the limit surface over the initial mesh. Tih process is best explained through the following example. A simple planar mesh shown in Fig.4.5(a) is chosen as the initial mesh. An arbitrary point x inside the triangular face abc is tracked over the meshes obtained through subdivision. Th, vertices in the initial mesh are darkly shaded in Fig.4.5. After one step of subdivision, the initial mesh is refined by addition of newx vertices which are lightly shaded. Another subdivision step on this refined mesh leads to a finer mesh with introduction of newx vertices which are unshaded. It may be noted that any point inside the smooth triangular patch in the limit surface corresponding to the face abc in the initial mesh depends only on the vertices in the initial mesh which are within the 2-neighborhood of the vertices a, b and c due to the local nature of the subdivision process. For example, the vertex d, introduced after first subdivision step, can be obtained using the 10 point stencil shown in Fig.4.3(a) on the edge ab. All the contributing vertices in the initial mesh are within the 1-neighborhood of the vertices a and b. A 10 point stencil can be used again in the next subdivision step on the edge db to obtain the vertex g. Some of the contributing vertices at this level of subdivision, for example, the (lightly shaded) 1-neighbors of the vertex b (except (a) (b) Figure 4.5. Tracking a point x through various levels of subdivision : (a) initial mesh, (b) the selected section (enclosed by dotted lines) of the mesh in (a), after one subdivision step, (c) the selected section of the mesh in (b), after another subdivision step. d and e) in Fig.4.5(b), depend on some vertices in the initial mesh which are within the 2-neighborhood of the vertices a, b and c in the initial mesh. In the rest of the formulation, superscripts are used to indicate the subdivision level. For example, vuvw, denotes the collection of vertices at level j which control the smooth patch in the limit surface corresponding to the triangular face uvw at the j-th level of subdivision. Let vobe be the collection of vertices in the initial mesh which are within the 2-neighborhood of the vertices a, b and c (marked black in Fig.4.5(a)). Let the number of such vertices be r. Ti,11 the vector Vab which is the concatenation of the (x, y, z) positions for all the r vertices, is of dimension 3r. Til, -, r vertices control the smooth triangular patch in the limit surface corresponding to the triangular face abc in the initial mesh. Now, there exists four subdivision matrices (Aabc)t, (Aabc)l, (Aabc)r and (Aabc)m of dimension (3r, 3r) such that Vadf = (Abc\Vc Vbed = (Aabc)lVabc f = (eAabc)rVbc Vde = (Aabc),mVb0, (4.3) where the subscripts t, 1, r and m denote top, left, right and middle triangle positions respectively (indicating the relative position of the new triangle with respect to the original triangle), and V Vd, ved, Vfe and vef are the concatenation of the (x, y, z) positions for the vertices in the 2-neighborhood of the corresponding triangle in the newly obtained subdivided mesh. Ti. new vertices in this level of subdivision are lightly shaded in Fig.4.5(b). Ti, 2-neighborhood configuration of the vertices in the newly obtained triangles is exactly the same as that of the original triangle, hence local subdivision matrices are square and the vector dimensions on both sides of Eqn.4.3 are the same. This concept is further illustrated in Fig.4.6. Carrying out one more level of subdivision, a new set of vertices which are unshaded in Fig.4.5(c) are obtained along with the old vertices. Adopting a similar approach as in the derivation of Eqn.4.3, it can be shown that V gi = (Abed)tV d v 2g = (Abed)V Ied Veih = (Abed)Ved Vghi = (Abed)mVbed (4.4) Tli, relative position of the triangular face dgi in Fig.4.5(c) with respect to the triangular face bed is topologically the same as of the triangular face adf in Fig.4.5(b) with respect to the triangular face abc. Ti, I r ;.e, one can write (Abed)t = (Aabc)t. Using similar reasoning, Eqn.4.4 can be rewritten as V gi = (Abed)tV d = (Aabc)tV d V hg = (Abed)V Ied = (Aabc)V Ied Vi = (Abed)rVed = (Aabc)rV1ed Veih __bd 67 IV,-bc abc l I 1 eb ------------------------------ (a) (Aabc) 1 / (b) Figure 4.6. Different set of control points at different subdivision matrices on a given set a subdivided level obtained by applying of control points in a coarser mesh. vi = (Abed),Vd = (Aabc),Ved. (4.5) Combining Eqn.4.3 and Eqn.4.5, it can be shown that dgi = (Aabc)t(Aabc)tVbc, Vhg = (Aabc)t(Aabc)tVbc, 2 0 Veih = (Aabc)r(Aabc)lVabc, Vhi = (Aabc)m(Aabc)tVbc. (4.6) Let x be a point with barycentric coordinates (Oabc( 0bc 7abc) inside the trian- gular face abc. When the initial mesh is subdivided, x becomes a point inside the triangular face bed with barycentric coordinates ( bd, led, Tbed). Another level of subdivision causes x to be included in the triangular face dgi with barycentric coor- dinates (Ogi,, q2g 7ygi). Let sbc denote the j-th level approximation of the smooth triangular patch Sabc in the limit surface corresponding to the triangular face abc in the initial mesh. Now vbc can be written as r r r oabc [=ax, bx, C, ..., ay, by, cy, . ., az, bz, c, .... where the subscripts x, y and z indicate the x, y and z coordinates respectively of the corresponding vertex position. Tli, expressions for vd and v 2 can also be written ~h~1~311V1 1 II bed dg in a similar manner. 'i \ the matrix BOb can be constructed as follows: r r r bc ybc, 0,..., 0, 0,... 0,..., 0 r r r B xabc, ( 0,.,00 1 abc,, c bc, O, O, 0...,0 0 0, "", "' r r r 0,...,0,0,...,0, ab bc bc, ... (2.)ab, V ^c. .... abc, b Tli, matrices Bed and B' can also be constructed in a similar fashion. Now so~ (x), sbc((x), and sb c(x) can be written as sabc(x) 0 Bbc(X)Vbc, bc(x) = Bbed(x)vbed = B (x)(Aabc)V bc, sbc(x) = B ( (x)v = B 0 j(x)(Aabc,)tved = B j (x)(Abc)(Aabc)V b (4.7) Proceeding in a similar way, the expression for sbc(x), j-th level approximation of Sabc (x), is given by sbc(x) = BL,,(x) (Aabc)m ... (Aabc)t(Aabc); Vabc = BI(x) (Abc)Vabc S bc (X) V abc, (4.8) where x is inside the triangular face uvw at level j (with an assumption that uvw is the triangular face in the middle with respect to its coarser level original triangular face in the previous level), (A.bc) = (A.abc (Aabc),(Aabc) and Bbc (x) = BW,(x)(AbJ). It may be noted that the sequence of applying (Aabc)t, (Aabc)l, (Aabc), and (Aabc), depends on the triangle inside which the tracked point x falls after each subdivision step. Fin.illy, the local parameterization process can be completed by writing Sabc(x) = (lim Bjbc(X))V bc = Babc(X)V.be. (4.9) In the above equation, Babc is the collection of basis functions at the vertices of vabc. It may also be noted that the modified butterfly subdivision scheme is a sta- tionary subdivision process, and hence new vertex positions are obtained by affine combinations of nearby vertices. This guarantees that each row of the matrices (Aabc)t, (Aabc)l, (Aabc)r and (Aab(c), sums to one. Tli, largest eigenvalue of such ma- trices is 1 and therefore the limit in Eqn.4.9 exists. Now, assuming the triangular face abc is the k-th face in the initial mesh, Eqn.4.9 can be rewritten as Sk(x) = Bk(x)v = Bk(x)Akp, (4.10) where p is the concatenation of the (x,y,z) positions of all the vertices in the initial mesh and the matrix Ak, when post-multiplied by p, selects the vertices vk controlling the k-th smooth triangular patch in the limit surface. If there are t vertices in the initial mesh and r of them control the k-th patch, then p is a vector of dimension 3t, Ak is a matrix of dimension (3r, 3t), and Bk(x) is a matrix of dimension (3, 3r). Combining Eqn.4.2 and Eqn.4.10, it can be shown that s(x) = (E Bk(x)Ak)p = J(x)p, (4.11) k=l where J, a matrix of dimension (3, 3t), is the collection of basis functions for the corresponding vertices in the initial mesh. Ti, vector p is also known as the degrees of freedom vector of the smooth limit surface s. 4.2.2 Dynamics An expression of the limit surface obtained via modified butterfly subdivision process is derived in the last section. Now a dynamic framework for the limit surface can be derived using this expression. Tli, derivation of the dynamic model from this point is exactly similar in spirit as that of the dynamic Catmull-Clark subdivision model presented in Section 3.2.4. Ti, vertex positions in the initial mesh defining the smooth limit surface s are treated as a function of time in order to embed the modified butterfly subdivision model in a dynamic framework. Ti, velocity of this surface model can be expressed as s(x, p) = J(x)p, (4.12) where an overstruck dot denotes a time derivative and x E So, So being the domain defined by the initial mesh. As in the case of the dynamic Catmull-Clark subdivision surfaces, the Lagrangian equation of motion (Eqn.2.1) is used to derive the dynamic modified butterfly subdivision surface model. Let p be the mass density function of the surface. Ti 1, the kinetic energy of the surface is r 1. T (x)s(x)s(x)x Mp, (4.13) 2 xESO 2 where (using Eqn.4.12) M = fXo t(x)JT(x)J(x)dx is the mass matrix of dimen- sion (3t, 3t). Similarly, let 7 be the damping density function of the surface. T!i, dissipation energy is 1r 1. F I (x)s (x)s(x)dx = Dp, (4.14) 2 Jxso 2 where D = fXEso y(x)JT(x)J(x)dx is the damping matrix of dimension (3t, 3t). Tli, potential energy of the smooth limit surface can be expressed as 1 U = p'Kp, (4.15) 2 where K is the stiffness matrix of dimension (3t, 3t) obtained by assigning various internal energies to a discretized approximation of the limit surface and is detailed in Section 4.3. Using the expressions for the kinetic, dissipation and potential energy in Eqn.2.1, the same motion equation as in Eqn.2.5 can be obtained. Tli, generalized force vector fp can be obtained is a similar fashion described in Section 3.2.4 and is given by fp= I J (x)f(x, t)dx. (4.16) 4.2.3 Ai li ilvel Dynamics Ti, initial mesh of the dynamic modified butterfly subdivision surface model can be subdivided to increase the degrees of freedom for model representation. Ti11 situation is exactly similar to that of the dynamic Catmull-Clark subdivision surface model as described in Section 3.2.5 and a similar example is used for illustration. After one step of modified butterfly subdivision, the initial degrees of freedom p (refer to Eqn.4.11 and Eqn.4.12) in the dynamic system is replaced by a larger number of degrees of freedom q, where q = Bp. B is a global subdivision matrix of size (3s, 3t) whose entries are uniquely determined by the weights used in the modified butterfly subdivision scheme (see Section 4.1 for the weights). Tlit-, p, expressed as a function of q, can be written as p = (BTB)-IBTq = B'q, (4.17) where Bt = (B 'B)-1B'. Tli, i, ._re, Eqn.4.11 and Eqn.4.12 is modified as s(x) = (J(x)Bt)q, (4.18) and (4.19) s(x, q) = (J(x)Bt)q, Figure 4.7. (a) An initial mesh, and (b) the corresponding limit surface. Ti, domains of the shaded elements in the limit surface are the corresponding triangular faces in the initial mesh. Ti, encircled vertices in (a) are the degrees of freedom for the corresponding element. respectively. Tli, motion equation, explicitly expressed as a function of q, can be written as M~iq + Dq + Kqq = fL, where Mq (4.20) fxst 1(x)(Bt)TJT(x)J(x)Btdx, S1 being the domain defined by the newly obtained subdivided mesh. Ti, derivations of D,, K, and f, are similar. 4.3 Fini, Element Implementation In the previous section, the smooth limit surface obtained via modified butterfly subdivision process is expressed as a function of the control vertex positions in its initial mesh; mass and damping distribution, internal deformation energy and forces are assigned to the limit surface in order to develop the corresponding physical model. In this section, the implementation of this physical model is detailed. It may be noted that even though the formulation of the dynamic framework for modified butterfly subdivision scheme is similar to that of Catmull-Clark subdivision scheme once the local parameterization is derived, the finite element implementation is totally different as the limit surface does not have any analytic expression in case of the modified butterfly subdivision scheme. In Section 4.2 it was pointed out that the smooth limit surface obtained by the recursive application of the modified butterfly subdivision rules can be represented by a set of smooth triangular patches, each of which is represented by a finite element. Tli, shape (basis) function of this finite element is obtained by smoothing a hat function through repeated application of the modified butterfly subdivision rules. Tli, number of finite elements in the smooth limit surface is equal to the number of triangular faces in the initial mesh as mentioned earlier (refer Fig.4.4 and 4.7). A detailed discussion on how to derive the mass, damping and stiffness matrices for these elements is presented next. Tli, elemental matrices can be assembled to obtain the global physical matrices M, D and K, and a numerical solution to the governing second-order differential equation as given by Eqn.2.5 can be obtained using finite element analysis techniques [42]. Tli, same example as in Section 4.2 (refer Fig.4.5) is used to develop the related concepts. Tli, concept of elements along with the control vertices and their corresponding domains is further illustrated in Fig.4.7. Now it will be shown how to derive the mass, damping and stiffness matrices for the element corresponding to the triangular face abc in Fig.4.5. Tli, derivations hold for any element in general. 4.3.1 Elemental .I,--, and Damping matrices Ti, mass matrix for the element given by Sab, (Eqn.4.9) can be written as Mabc = i (x) s Babc(x) (B(x)T Bab (x) }dx. (4.21) However, from Eqn.4.9 it is known that the basis functions corresponding to the vertices in vabe which are stored as entries in Babc are obtained as a limiting process. Ti, -, basis functions do not have any analytic form, hence computing the inner product of such basis functions as needed in Eqn.4.21 is a challenging problem. In Lounsbery et al. [53], an outline is provided on the computation of these inner products without performing any integration. In this dissertation, a different yet simpler approach is developed to solve this problem. Tli, smooth triangular patch in the limit surface corresponding to the face abc in the initial mesh is approximated by a triangular mesh with 4J faces obtained after j levels of subdivision of the original triangular face abc (each subdivision step splits one triangular face into 4 triangular faces). Ti, ii the mass matrix can be expressed as 4J Mabc = : ( t(x){BNbc(x) } { Bbc(X) }dx. (4.22) i=1 xEAi Ti, j-th level approximation of the corresponding basis functions can be explicitly evaluated (refer Eqn.4.8 for an expression of B bc). An important point to note is that Eqn.4.8 involves several matrix multiplications and hence can be very expensive to evaluate. However, the matrix (Ab,)(= (Aabc)m .. (Aabc),(Aabc)1) in Eqn.4.8 encodes how vertices in the 2-neighborhood of the triangular face uvw at level j are related to the vertices in the 2-neighborhood of the triangular face abc in the initial mesh. In the implementation, how a new vertex is obtained from the contributing vertices in its immediate predecessor level is tracked. TI,, information stored in (Aabc) can be obtained by tracking the contributions from level j to level 0 recursively. TI [ -. the entries of (Abc) can be determined without forming any local subdivision matrices and thereby avoiding subsequent matrix multiplications. By choosing a sufficiently high value of j, a reasonably good approximation of the elemental mass matrices is achieved. Tli, computations involved in evaluating the integrals in Eqn.4.22 are eliminated by using discrete mass density function which has non-zero values only at the vertex positions of the j-th subdivision level mesh. TI! 1, fi .e, the approximation of the mass matrix for the element can be written as k Mabc= E (v)L{Bbc(v )} b { c(vi)}, (4.23) i=1 where k is the number of vertices in the triangular mesh with 4- faces. This approxi- mation has been found to be very effective and efficient for implementation purposes. Tli, elemental damping matrix can be obtained in a similar fashion. 4.3.2 Elemental Stiffness '.i i7,\ Ti, internal energy is assigned to each element in the limit surface, thereby defining the internal energy of the smooth subdivision surface model. A similar approach as in the derivation of the elemental mass and damping matrix is taken and the internal energy is assigned to a j-th level approximation of the element. Three types of internal energy are used -tension, stiffness and spring energy. For the examples used throughout the paper, this energy at the j-th level of approx- imation can be written as Eab, Eb, = (E b,)t + (Eabt + (Eabc)sp, (4.24) where the subscripts t, st and sp denote tension, stiffness and spring respectively. Tli, expression for the tension energy, which is essentially equivalent to the first order strain (membrane) energy [96], is 1 2 (abc) 2 v -vI = 2I b} (Kbc)IVbc}, (4.25) where kt is a constant, v, and v the 1-th and m-th vertex in the j-th level mesh, are in the 1-neighborhood of each other, Q is the domain defined by all such vertex pairs, and vb, is the concatenation of the (x,y,z) positions of all the vertices in the j-th subdivision level of the triangular face abc in the initial mesh. Similarly, the expression for stiffness energy, which is equivalent to the second order strain (thin plate) energy [96], can be written as 1 j Eab)St 2kst IV] 2v + v | 2 n = 1vk,,u} (Ku )s{v,}, (4.26) where v{, vi and vi are the three vertices of a triangular face. Ti, summation in- volves three terms corresponding to each triangular face, and is over all the triangular faces in the mesh at the j-th level of subdivision. Fiiilly, a spring energy term is added which is given by 1 (km),,p(I|v v~| 1m,) (EIp = (vE v )- v (abcp 2 vm = 1{v,} (K ){vb}, (4.27) where (kim), is the spring constant, Q is the domain as in Eqn.4.25 and tm is the natural length of the spring connected between v1 and v-. It may be noted that the entries in (K b,) depend on the distance between the connected vertices and hence, (K b,) unlike other elemental matrices, is a function of time which needs to be recomputed in each time step. Combining the expressions for tension, stiffness and spring energy, it can be shown that EJb =c {vb( {(K b)t + k. I (K~).(t+ (K bc) sp Vbc} = {vbc } (Kabca){v bta 1 2 I = {(Ab)vb.}} (Kb)(Ab bc}J = {vb}T {(Ajb)Tc(K 'b)(Abc)}{ }, (fI where (Aabc) and vabe are same as in Eqn.4.8. T, i, f; re, the expression for the elemental stiffness matrix is given by Kabc = (AbT (Kjb)(Ajb). (4.29) It may be noted that the matrix multiplications for constructing Kabc are avoided in the implementation by following the same technique described in Section 4.3.1. 4.3.3 Other Implementation Issues Tli, techniques of applying synthesized forces on the smooth limit surface ob- tained via modified butterfly subdivision process are similar to those described in Section 3.3.4 in the context of dynamic Catmull-Clark subdivision surface model. Ti, techniques of model subdivision and discrete dynamic equation derivation are also the same. 4.4 Generalization of the Approach Ti, proposed approach of deriving the dynamic framework for modified butter- fly subdivision scheme is generalized for other interpolatory subdivision schemes in the next chapter, Cli.,11i r 5. CHAPTER 5 UNIFIED DYNA I C FRA 1ii;WORK FOR SUBDIVISION SURFACES Dynamic framework for specific subdivision schemes was presented in the last two chapters. In Clilipi r 3, Catmull-Clark subdivision scheme, a representative of the approximating subdivision schemes, is embedded in a physics-based modeling en- vironment. In C(ri _iir 4, a dynamic framework is provided for the modified butterfly subdivision scheme, a popular interpolatory subdivision technique. In this chapter, a unified approach is presented for embedding any subdivision scheme in a dynamic framework. 5.1 Overview of the Unified Approach Tli, key concept of the unified approach is the ability to express the smooth limit surface generated by a subdivision scheme as a collection of a single type of finite elements. Ti, type of this finite element depends on the subdivision scheme involved. For example, the limit surface generated by the Catmull-Clark subdivision scheme can be expressed as a collection a quadrilateral finite element patches. This approach differs form the one taken in Cliip i, 3 where the limit surface was a collection of normal elements (corresponding to the quadrilateral bicubic B-spline patches away from the extraordinary points) and special elements (corresponding to the n-sided patches near extraordinary vertices of degree n). This concept will be further elaborated in the next few sections. Tli, unified approach adopts two different strategies depending on the subdivi- sion scheme involved. One strategy is for the approximating schemes, whose limit surface is some type of B-spline surface away from the extraordinary points, and the other is for the interpolatory subdivision schemes, where the limit surface does not have any analytical expression. It may be recalled that recursive subdivision is a method for smoothing polyhedra, and hence corresponding to each n-sided face in the control mesh, there would be a smooth n-sided patch in the limit surface in general. For example, the control mesh (after at most one subdivision step) of the Catmull-Clark subdivision scheme consists of quadrilateral faces, which when smoothed through subdivision lead to quadrilateral patches in the limit surface (see Fig.5.1(b)). In the case of approximating subdivision schemes, the faces which do not contain any extraordinary vertex lead to spline patches with analytic expressions. On the other hand, faces which have one extraordinary vertex, lead to patches whose analytic expressions are difficult to determine. Continuing the example with the Catmull-Clark subdivision scheme, the faces without extraordinary vertices lead to quadrilateral bicubic B-spline patches in the limit, whereas the faces with one extraor- dinary vertex lead to quadrilateral patches whose analytic expressions are difficult to obtain. In Cliipl r 3, n such adjacent patches corresponding to an extraordinary vertex of degree n are effectively combined together to obtain an expression for the re- sulting n-sided patch (see Fig.5.1(a)). Recently, Stam [90, 91] has introduced schemes for exactly evaluating the limit surface, even near the extraordinary points, for ap- proximating subdivision schemes. Analytic expressions for the patches resulting from smoothing faces with an extraordinary vertex can be obtained using these schemes. T!i, 1, fi .e, the limit surface can be expressed as a collection of a single patch type, and consequently a single type of finite element can be used to provide the dynamic framework for the approximating subdivision schemes. This unified framework for approximating subdivision schemes is fully worked out in this chapter for Catmull- Clark and Loop subdivision schemes and a general outline is also presented on how to carry out the same strategy for other approximating subdivision schemes. Tli1 limit surface resulting from an interpolatory subdivision scheme does not have an analytic expression in general, and hence a strategy similar to the one adopted in Cliipi, r 4 needs to be used. An outline of the strategy to be used for interpolatory subdivision schemes is also presented in this chapter. 5.2 Unified Dynamic Framework for Catmull-Clark Subdivision Surfaces A systematic formulation along with the implementation details of the unified dynamic framework for Catmull-Clark subdivision surfaces is presented in this sec- tion. Tli1 key difference between the framework developed in Clilipi r 3 and the one presented here is the representation of the limit surface, which leads to different types of finite elements used for developing the dynamic framework. This is illustrated with a schematic diagram in Fig.5.1. |

Full Text |

xml version 1.0 encoding UTF-8
REPORT xmlns http:www.fcla.edudlsmddaitss xmlns:xsi http:www.w3.org2001XMLSchema-instance xsi:schemaLocation http:www.fcla.edudlsmddaitssdaitssReport.xsd INGEST IEID E1Z5QE7RQ_5Q4KUP INGEST_TIME 2017-07-20T21:26:07Z PACKAGE UF00101371_00001 AGREEMENT_INFO ACCOUNT UF PROJECT UFDC FILES A DYNAMIC FRAMEWORK FOR SUBDIVISION SURFACES By CHHANDOMAY MANDAL A DISSERTATION PRESENTED TO THE GRADUATE SCHOOL OF THE UNIVERSITY OF FLORIDA IN PARTIAL FULFILLMENT OF THE REQUIREMENTS FOR THE DEGREE OF DOCTOR OF PHILOSOPHY UNIVERSITY OF FLORIDA 1998 Â©Copyright 1998 by Chhandomay Mandal To My Parents, and My Brother ACKNOWLEDGMENTS I am deeply grateful to my advisor Dr. Baba C. Vomuri, whose guidance, enÂ¬ couragement and support made the completion of this work possible. I thank him for his academic as well as non-academic advice and assistance during my study at the University of Florida, and for his impressive example of integrity and academic responsibility. I wish to express sincere appreciation to my co-advisor, Dr. Hong Qin, for introducing me to the wonders of computer graphic's, for patiently guiding me all the way till the end, and for assisting me in various ways. I would also like to thank Dr. Sartaj Sahni, Dr. Paul A. Fishwick and Dr. Douglas A. Conzor for serving in my supervisory committee and advising me on various aspects of this dissertation. My dissertation research was supported in part by the NSF grant ECS-9210648 and the NTH grant RO1-LM05944 of Dr. Vomuri, and by the NSF CAREER award CCR-9702103 and DMI-9700129 of Dr. Qin. I wish to acknowledge Dr. Tim Mcln- ornoy, Dr. Grogoiro Malandain, Dr. Hughes Hoppe, Dr. Kari Pulli, Dr. Dimitry Goldgof, Dr. Christina Leonard and Dr. Shang-Hong Lai for helping mo at various stages of the work by providing various data sots, software and figures. I would like to thank the faculty, staff and students of the computer and inÂ¬ formation science and engineering department, who wore always there to help mo. IV In my years with the computational vision, graphic's and medical imaging group, I have enjoyed working with a set of bright students, including Yanlin Guo, Yi Gao, Li Chen, Li Wang, Shuangying Huang, Chinar Kapoor, Fengting Chen, Arun Srini- vasan, Jundong Liu and Jun Ye. Special thanks goes to my long time roommates, Raja Chatterjee and Kingshuk Majumdar, for helping me in various ways during my stay at Gainesville. Finally, I would like to thank my parents and my brother for their constant enÂ¬ couragement and support, for cheering me up during the hard days and for providing an ever increasing incentive to finish my graduate study. I would have been nowhere near my goals without them. TABLE OF CONTEXTS ACKNOWLEDGMENTS iv LIST OF FIGURES ix ABSTRACT xiii CHAPTERS 1 INTRODUCTION 1 1.1 Problem Statement 2 1.2 Proposed Solution 3 1.3 Contributions 5 1.4 Outline of Dissertation 8 2 BACKGROUND 11 2.1 Subdivision Surfaces 11 2.2 Physics-based Deformable Surface Models 17 2.3 Shape Modeling Using Physics-based Subdivision-surface Model ... 20 2.4 Shape and Motion Estimation Using Physics-based Subdivision-surface Model 22 2.5 Unified Framework for Shape Recovery and Shape Modeling 24 3 DYNAMIC CATMULL-CLARK SUBDIVISION SURFACES 27 3.1 Overview of the Catmull-Clark Subdivision Scheme 27 3.2 Formulation 30 3.2.1 Assigning Patches to Regular Faces 31 3.2.2 Assigning Patches to Irregular Faces 33 3.2.3 Kinematics 36 3.2.4 Dynamics 44 3.2.5 Multilevel Dynamics 46 3.3 Finite Element Implementation 49 3.3.1 Data Structures 49 3.3.2 Normal Elements 51 3.3.3 Special Elements 51 vi 3.3.4 Force Application 52 3.3.5 Discrete Dynamic Equation 54 3.3.6 Model Subdivision 55 3.4 Generalization of the Approach 56 4 DYNAMIC BUTTERFLY SUBDIVISION SURFACES 57 4.1 Overview of the (Modified) Butterfly Subdivision Scheme 57 4.2 Formulation 61 4.2.1 Local Parameterization 62 4.2.2 Dynamics 72 4.2.3 Multilevel Dynamics 74 4.3 Finite Element Implementation 76 4.3.1 Elemental Mass and Damping matrices 77 4.3.2 Elemental Stiffness Matrix 79 4.3.3 Other Implementation Issues 81 4.4 Generalization of the Approach 82 5 UNIFIED DYNAMIC FRAMEWORK FOR SUBDIVISION SURFACES . 83 5.1 Overview of the Unified Approach 83 5.2 Unified Dynamic Framework for Catmull-Clark Subdivision Surfaces . 85 5.2.1 Local Parameterization 88 5.2.2 Dynamics 92 5.2.3 Finite Element Implementation 92 5.3 Unified Dynamic Framework for Loop Subdivision Surfaces 95 5.3.1 Local Parameterization 97 5.3.2 Dynamics 100 5.3.3 Finite Element Implementation 100 5.4 A General Outline of the Framework for Approximating Subdivision Schemes 101 5.5 A General Outline of the Framework for Interpolatory Subdivision Schemes 102 6 MULTIRESOLUTION DYNAMICS 103 6.1 Overview of Multiresolution Analysis and Wavelets 109 6.2 Multiresolution Analysis for Surfaces of Arbitrary Topology 114 6.2.1 Nested Spaces through Subdivision 116 6.2.2 Inner Product 118 6.2.3 Biorthogonal Surface Wavelets on Arbitrary Manifold 119 6.3 Multiresolution Representation 125 6.4 Dynamics 128 6.5 Implementation Details 129 vii 7 SYSTEM ARCHITECTURE 133 7.1 Topological Information Processing Module 135 7.2 Subdivision Module 135 7.3 Finite Element Analysis Module 135 7.4 Force Synthesis Module 136 7.5 Update Engine 136 7.6 Display Module 137 8 APPLICATIONS 138 8.1 Geometric Modeling 138 8.2 Shape Recovery from Range and Volume Data 142 8.3 Non-rigid Motion Estimation 148 8.4 Multiresolution Editing 150 8.5 Natural Terrain Modeling 151 9 CONCLUSIONS AND FUTURE WORK 155 9.1 Conclusions 155 9.2 Future Directions 156 9.2.1 Automatic Change of Topology 156 9.2.2 Local Refinement 157 9.2.3 Automatic Model Parameter Selection 157 9.2.4 Constraint Imposition 157 9.2.5 Recovery of Sharp Features 158 9.2.6 Automatic Model Initialization 158 9.2.7 Improved Synthesized Force Fields 158 REFERENCES 159 BIOGRAPHICAL SKETCH 168 viii LIST OF FIGURES 2.1 Refinement of an initial control mesh to obtain the limit surface. (Courtesy : H. Hoppe) 12 3.1 Catmull-Clark subdivision : (a) initial mesh, (b) mesh obtained after one step of Catmull-Clark subdivision, and (c) mesh obtained after another subdivision step 28 3.2 A rectangular mesh and its limit surface consisting of 4 bicubic surface patches 32 3.3 A mesh with an extraordinary point of degree 3 and its limit surface. 34 3.4 Local subdivision around the extraordinary point and the limit surface. 35 3.5 Local subdivision around the extraordinary point and the correspondÂ¬ ing patches in the limit surface from different levels of subdivision. . . 43 3.6 The data structure used for dynamic subdivision surface implementation. 50 3.7 Model subdivision to increase the degrees of freedom : (a) evolution of the initial mesh, and (b) the corresponding limit surface evolution perceived by the user 55 4.1 (a) The control polygon with triangular faces; (b) mesh obtained after one subdivision step using butterfly subdivision rules 58 4.2 (a) The contributing vertices in the j-th level for the vertex in the j-l-l- th level corresponding to the edge between v( and v^; (b) the weighing factors for different vertices 58 4.3 (a) The weighing factors of contributing vertex positions for an edge connecting two vertices of degree 6; (b) the corresponding case when one vertex is of degree n and the other is of degree 6 60 4.4 The smoothing effect of the subdivision process on the triangles of the initial mesh 62 IX 4.5 Tracking a point x through various levels of subdivision : (a) initial mesh, (b) the selected section (enclosed by dotted lines) of the mesh in (a), after one subdivision step, (c) the selected section of the mesh in (b), after another subdivision step 64 4.6 Different set of control points at a subdivided level obtained by applyÂ¬ ing different subdivision matrices on a given set of control points in a coarser mesh 67-68 4.7 (a) An initial mesh, and (b) the corresponding limit surface. The doÂ¬ mains of the shaded elements in the limit surface are the corresponding triangular faces in the initial mesh. The encircled vertices in (a) are the degrees of freedom for the corresponding element 75 5.1 A control mesh with an extraordinary vertex of degree 5 and the correÂ¬ sponding limit surface : (a) using the concepts developed in Chapter 3, where the limit surface consists of quadrilateral normal elements and a pentagonal special element; (b) using the unified concept developed in this chapter, where the limit surface consists of one single type of quadrilateral finite element 86 5.2 In Catmull-Clark subdivision, each non-boundary quadrilateral face in the control mesh has a corresponding quadrilateral patch in the limit surface : (a) control mesh, (b) limit surface 87 5.3 (a) The marked 16 control vertices define the shaded quadrilateral patch associated with the shaded regular face in the control mesh; (b) the marked 14 control vertices define the shaded quadrilateral patch associated with the shaded irregular facie in the control mesh 91 5.4 (a) The control polygon with triangular faeces; (b) mesh obtained after one subdivision step using Loopâ€™s subdivision rules 96 5.5 An initial mesh and the corresponding limit surface obtained using Loopâ€™s subdivision rules. The domains of the shaded triangular patches in the limit surface are the corresponding triangular faces in the initial mesh. The encircled vertices are the control vertices for the correÂ¬ sponding triangular patch in the limit surface 98 5.6 Each triangular patch in the limit surface can be associated with a non-boundary triangular face in the initial mesh, which in turn can be parameterized over a triangle with vertices at (0, 0), (1, 0) and (0,1). . 99 6.1 Schematic block diagram of the multilevel dynamic's approach 104 x 6.2 Multilevel dynamics vs. multiresolution dynamics 106 6.3 Representation of the degrees of freedom in multilevel dynamic's and multiresolution dynamic's approach 108 6.4 The filter bank 112 6.5 Subdivision refinement of a tetrahedron 119 6.6 Wavelet construction 123 7.1 System architecture 134 8.1 (a), (b), (e) and (d) : Initial shapes (obtained applying Catmull-Clark subdivision rules on control meshes); (e), (f), (g) and (h) : the correÂ¬ sponding modified shapes after interactive force application 139 8.2 (a), (b), (c) and (d) : Initial shapes (obtained applying modified butÂ¬ terfly subdivision rules on control meshes); (e). (f), (g) and (h) : the corresponding modified shapes after interactive sculpting via force apÂ¬ plication 141 8.3 (a) Range data of a bulb along with the initialized model, (b) an intermediate stage of evolution, and (e) the fitted dynamic.' Catmull- Clark subdivision surface model 143 8.4 (a) Range data of an anvil along with the initialized model, (b) an intermediate stage of evolution, and (e) the fitted dynamic.' Catmull- Clark subdivision surface model 144 8.5 (a) Range data of a head along with the initialized model, (d) the fitted dynamic butterfly subdivision model, and (c) visualization of the shape from another view point 144 8.6 (a) A slice from a brain MRI, (b) initialized model inside the region of interest superimposed on the slice, (e) the fitted model superimÂ¬ posed on the slice, and (d) a 3D view of the dynamic.' Catmull-Clark subdivision surface model fitted to the cerebellum 146 8.7 (a) Data points identifying the boundary of the caudate nucleus on a MRI slice of human brain, (b) data points (from all slices) in 3D along with the initialized model, and (e) the fitted dynamic.' butterfly subdivision model 146 xi 8.8 Snapshots from the animation of canino heart motion over a cardiac cycle using the dynamic butterfly subdivision model 149 8.9 (a) The initialized model along with the data set; (b) the fitted model with two subdivisions on the initial mesh, along with attached springs for editing. The model after editing (c) at lower resolution, (d) at the same resolution of the fitted model, and (e) at higher resolution. . . . 150 8.10 (a) Discrete elevation data set (4096 points), (b) fitted dynamic butÂ¬ terfly subdivision surface model with 841 vertices (without noise adÂ¬ dition), and (c) fitted dynamic subdivision surface model with 841 vertices when Gaussian noise is added 153 8.11 Synthesized natural terrain of different roughness using the dynamic butterfly subdivision surface model with 841 vertices from a data set of 3099 elevation values 154 xii Abstract of Dissertation Presented to the Graduate School of the University of Florida in Partial Fulfillment of the Requirements for the Degree of Doctor of Philosophy A DYNAMIC FRAMEWORK FOR SUBDIVISION SURFACES By Chhandomay Mandal December 1998 Chairman: Dr. Baba C. Vemuri Cochairman : Dr. Hong Qin Major Department: Computer and Information Science and Engineering Subdivision surfaces are extensively used to model smooth shapes of arbitrary topology. Recursive subdivision on a user-defined initial control mesh generates a visually pleasing smooth surface in the limit. However, users have to carefully select the initial mesh and/or manipulate the control vertex positions at different levels of subdivision hierarchy to satisfy the functional and aesthetic requirements in the smooth limit surface. This modeling drawback results from the lack of direct manipÂ¬ ulation tools for the limit surface. In this dissertation, techniques from physics-based modeling are integrated with geometric subdivision methodology, and a dynamic framework is presented for direct manipulation of the smooth limit surface generated by the subdivision schemes using physics-based â€œforceâ€ tools. xiii In a typical subdivision scheme, the user starts with an initial control mesh which is refined recursively using a fixed set of subdivision rules, and a smooth surÂ¬ face is produced in the limit. Most often this limit surface does not have an analytic.' expression, and hence poses challenging problems in incorporating mass and dampÂ¬ ing distribution functions, internal deformation energy, forces, and other physical quantities required to develop a physics-based subdivision surface model. In this dissertation, local parameterization techniques suitable for embedding the geometric.' subdivision surface model in a physics-based modeling framework have been develÂ¬ oped. Specific.' local parameterization techniques have been fully developed for the Catmull-Clark, modified butterfly and the Loop subdivision schemes. Techniques for assigning material properties to geometric.' subdivision surfaces are derived, and a motion equation for the dynamic.' model has been formulated using Lagrangian dynamic's. Furthermore, advantages of the physics-based deformable models are inÂ¬ corporated into the conventional subdivision schemes, and a dynamic.' hierarchical control of this model is introduced. Finally, a multiresolution representation of the control mesh is developed and a unified approach for deriving subdivision surface- based finite elements is presented. The proposed dynamic.' framework enhances the applicability of the subdivision surfaces in modeling applications. It is also useful for hierarchical shape recovery from large range and volume data sets, as well as for non-rigid motion tracking from a temporal sequence of data sets. Multiresolution representation of the initial mesh controlling the smooth limit surface enables global and local editing of the shape as xiv desired by the modeler. This dynamic framework has also been used for synthesizing natural terrain models from sparse elevation data. xv CHAPTER 1 INTRODUCTION Generating smooth surfaces of arbitrary topology poses a grand challenge for the computer graphic's, computer-aided geometric.1 design and scientific.1 visualization researchers. The existing techniques for modeling smooth complex shapes can be broadly classified into two distinct categories namely, (1) explicit patching using parametric surfaces and (2) subdivision surfaces. The explicit patching technique involves partitioning the model surface into a collection of individual parametric surface patches. Adjacent surface patches are then explicitly stitched together using continuity constraints. This explicit stitching process is very complicated for modeling smooth surfaces of arbitrary topology due to the continuity constraints which need to be satisfied along the patch boundaries. Subdivision surfaces are simple procedural models whic.ii offer an alternate repÂ¬ resentation for the smooth surfaces of arbitrary topology. A typical recursive subdiÂ¬ vision scheme produces a visually pleasing smooth surface in the limit by repeated application of a fixed set of refinement rules on an user-defined initial control mesh. The initial control mesh is a simple polygonal mesh of the same topological type as that of the smooth surface to be modeled. At each step of subdivision, a finer polygonal mesh with more vertices and faces is constructed from the previous one via 1 2 the refinement process, and the smooth surface is obtained in the limit. However, a few subdivision steps on the initial mesh generally suffice to approximate the smooth surface for all practical purposes. Various sets of rules lead to different subdivision schemes which mainly differ in the smoothness property of the resulting limit surface and/or the type of initial mesh (i.e. triangular, quadrilateral etc.) chosen. 1.1 Problem Statement To model a smooth surface of arbitrary topology using subdivision surfaces, first a polygonal mesh of same topology needs to be chosen as the initial mesh. This iniÂ¬ tial mesh, also known as the control mesh, is refined via recursive subdivision using a fixed set of rules, and a smooth surface of the desired topology is obtained in the limit. However, users have to carefully select the initial mesh and/or manipulate the control vertex positions at different levels of subdivision hierarchy in order to satisfy the functional and aesthetic requirements on the smooth limit surface. For example, to obtain a desired effect on the smooth limit surface, it might be necessary to reposition a handful of vertices in the mesh obtained after one subdivision step, or a large number of vertices might need to be moved in the mesh produced after three subdivision steps! This process is not intuitive and at best laborious. Despite the presencie of a variety of subdivision schemes in the computer graphic's and geoÂ¬ metric.1 modeling literature, there is no direct and natural way of manipulating the limit surface. The current state-of-the-art only permits the modeler to interactively obtain the desired effects on the smooth surface by kinematically manipulating the vertex positions at various levels of the subdivision hierarchy. In this dissertation, the 3 challenging problem of directly manipulating the smooth limit surface at arbitrary locations/areas is addressed and a novel solution is presented where the modeler can not only manipulate the smooth limit surface directly but also control the extent of the manipulation effect (i.e.. global or local manipulation) on the limit surface. Subdivision surfaces have also been used for recovering shapes from a given set of points in 3D. However, most of the existing subdivision surface-based shape recovery techniques resort to complex algorithms to derive a mesh for the underlying shape, and then mesh optimization techniques are used to obtain a compact representation of the same. Nevertheless, this process yields a control mesh of the smooth subdiÂ¬ vision surface representing the underlying shape that typically uses a large number of degrees of freedom (control vertices) for representation. In this dissertation, an efficient hierarchical method of recovering shapes from range and volume data sets is proposed where the control mesh of the smooth limit surface will use very few degrees of freedom for representation. 1.2 Proposed Solution Physics-based modeling techniques offer a potential solution to the problem of directly manipulating the smooth limit surface generated by the recursive subÂ¬ division procedure. In the physics-based modeling paradigm, a deformable model is derived by assigning mass, damping, stiffness and other physical properties to a surface model. The model is deformed by applying synthesized forces and this deÂ¬ formation is governed by physical laws. Xow, if the purely geometric.1 subdivision surface models can be embedded in a physics-based modeling paradigm, then the 4 smooth limit surface can be deformed directly by using physics-based â€œforceâ€ tools. However, this procedure-based surface model obtained through the subdivision proÂ¬ cess does not have a closed-form analytic formulation in general, and hence poses challenging problems to incorporate mass and damping distribution functions, interÂ¬ nal deformation energy, forces, and other physical quantities required to develop a physics-based model. Techniques of locally parameterizing the smooth limit surface generated by various subdivision schemes are proposed in this dissertation. Once a suitable local parameterization scheme is developed for a specific subdivision scheme, a dynamic framework is provided for the corresponding subdivision scheme where the modeler can directly manipulate the smooth limit surface by using synthesized forces. At the same time, a dynamic framework for the wavelets derived using subdiÂ¬ vision schemes will assist in adopting a multiresolution representation of the control mesh defining the smooth limit surface, and the modeler can control the extent of manipulation effect by choosing a desired level of editing. Synthesized force applicaÂ¬ tion at a lower resolution will yield a global effect whereas manipulations at a finer resolution will have localized effects on the limit surface. The motion of this physics- based deformable subdivision surface model is governed by a second-order differential equation, which is solved numerically using the finite element method. Xew types of finite elements for the chosen subdivision scheme are also presented for representing the smooth limit surface. The proposed dynamic framework for the subdivision surfaces provides an effiÂ¬ cient solution to the shape recovery problem as well. A simple subdivision surface 5 model with very few vertices in the control mesh can be initialized (positioned) fully inside a given set of points in 3D. The initialized model will be deformed by applying forces synthesized from the given data points. When an equilibrium is obtained, the number of vertices in the control mesh can be increased via a subdivision step on the current control mesh thereby increasing the degrees of freedom for model representaÂ¬ tion, and a new equilibrium with a better fit to the given data set can be obtained. This process can be repeated till a prescribed error in fit is achieved. Similar approach can be taken for shape recovery from volume data sets as well where a different type of synthesized force needs to be specified. The hierarchical shape recovery process ensures a compact representation of the recovered smooth limit surface using very few degrees of freedom. 1.3 Contributions In this dissertation, techniques from physics-based modeling are integrated with geometric.1 subdivision methodology to present a scheme for directly manipulating the smooth limit surface generated by the subdivision process. As a result, unlike the existing geometric.' solutions that only allow the operations on control vertices, the proposed methodology and algorithms permit the user to physically modify the shape of subdivision surfaces at desired locations via application of forces. This gives the user a â€œvirtualâ€ clay/play-dough modeling environment. The proposed model can be edited directly in a hierarchical fashion using synthesized forces. Also, this physics-based subdivision surface model efficiently recovers shapes as well as non- rigid motions from large range and volumetric.' data sets. Note that this dissertation 6 neither proposes a new subdivision technique nor provides a different interpretation of any existing subdivision technique, but integrates the advantages of subdivision surface-based and physics-based modeling techniques to solve important theoretical and practical problems. Although the principles of physics-based modeling are well understood by the graphic's experts and modeling researchers, this dissertation will greatly advance the state of the art in physics-based shape modeling due to the contributions listed below. â€¢ Local parameterization techniques for the smooth limit surface generated by various subdivision schemes are systematically derived in a hierarchical frameÂ¬ work, and subsequently the initial control polyhedron can be viewed as the parametric domain of the physics-based smooth limit surface. â€¢ The smooth dynamic.1 subdivision surface in the limit is treated as a â€œrealâ€ physical object represented by a set of novel finite elements. The basis (shape) functions of these new variety of finite elements are derived using the subdivision schemes. The proposed finite element methods will prove to be useful not only in the areas of computer graphic's and geometric.1 design, but also in engineering analysis as well. â€¢ The subdivision techniques are used to create a surface model that incorporates mass and damping distribution functions, internal deformation energy, forces, and other physical quantities. The motion equations are also systematically derived for this dynamic.1 subdivision surface model whose degrees of freedom are the collection of initial user-specified control vertices. Therefore, the advantages 7 of both the physics-based modeling philosophy and the geometric subdivision schemes are incorporated within a single unified framework. â€¢ Users will be able to manipulate this physics-based model in an arbitrary region, and the model will respond naturally (just like a real-world object would) to this force application. This shape deformation is quantitatively characterized by the time-varying displacement of control points that uniquely define the geometry of the limit surface. â€¢ The dynamic.1 framework for wavelets derived using subdivision schemes enÂ¬ ables a multiresolution representation of the control mesh defining the smooth limit surface. This provides additional flexibility to the physics-based modeling framework since the modeler is free to choose the desired editing level. If a lower resolution editing level is chosen, the synthesized force application on the smooth limit surface will have global effects, whereas editing with force-based tools at a finer resolution will yield a localized effect. â€¢ Algorithms and procedures are developed which approximate the proposed new finite elements using a collection of linear and/or bilinear finite elements subject to the implicit geometric.' constraints enforced by the subdivision rules. This hierarchically-structured approximation can satisfy any user-specified error tolÂ¬ erance. The proposed dynamic.' framework enhances the applicability of subdivision surÂ¬ face models in various application areas. It provides a direct and intuitive way of 8 manipulating shapes in a hierarchical fashion for geometric modeling applications. It has also been successfully used for efficient and hierarchical shape recovery from range and volume data sets as well as for tracking a shape of interest from a time sequence of range or volume data sets. Finally, the dynamic framework of subdivision surfaces is combined with a variant of a fractal surface synthesis technique to present a novel natural terrain modeling method. 1.4 Outline of Dissertation The rest of the dissertation is organized as follows : Chapter 2 contains an overview of the subdivision surfaces along with a review of the related literature. The motivation for embedding the subdivision surface models in a physics-based modeling framework is discussed, and the proposed model is comÂ¬ pared with the existing physics-based models. The advantages of a unified framework for shape modeling and shape recovery are also pointed out in this chapter. Chapter 3 provides a dynamic framework for the Catmull-Clark subdivision scheme, which is one of the most popular subdivision techniques for modeling compliÂ¬ cated objects of arbitrary genus. Analytic formulation of the limit surface generated by the Catmull-Clark subdivision scheme is derived and the â€œphysicalâ€ quantities required to develop the dynamic model are introduced [57, 60, 76]. The governing dynamic differential equation is derived using Lagrangian mechanics and is impleÂ¬ mented using a finite element technique. 9 In Chapter 4, a dynamic.1 framework is provided for the butterfly subdivision scheme, another popular subdivision technique for modeling smooth surfaces of arbiÂ¬ trary topology. A local parameterization scheme for the butterfly subdivision surface is derived in a hierarchical style. The physics-based butterfly subdivision model is formulated as a set of novel finite elements which are optimally approximated by a collection of standard finite elements subjected to implicit geometric.1 constraints [58, 61]. Chapter 5 presents an unified approach for providing a dynamic.1 framework for subdivision surfaces in general. In particular, it has been shown that the limit surface obtained using any subdivision scheme can be viewed as a collection of either quadriÂ¬ lateral or triangular finite elements whose basis (shape) functions can be derived using the chosen subdivision scheme [59]. In Chapter 6, a dynamic.1 framework is presented for the subdivision surface- based wavelet schemes. This dynamic.1 framework enables a multiresolution represenÂ¬ tation of the control mesh defining the smooth limit surface and consequently, the modeler can control the extent of the effect of manipulation on the limit surface by choosing a proper editing level. In Chapter 7, a system that integrates the implementation of the concepts proÂ¬ posed in earlier chapters is presented. Several modules comprise the entire system, and the functionality of these modules are discussed in this chapter. 10 The proposed modeling framework is used in various application areas and the results are presented in Chapter 8. The proposed dynamic model has been successÂ¬ fully used in geometric modeling, shape recovery and non-rigid motion estimation applications. A novel technique for natural terrain modeling is also presented where the dynamic framework is combined with a variant of a fractal surface synthesis technique. Finally, conclusions are drawn in Chapter 9 where future directions of research are also pointed out. CHAPTER 2 BACKGROUND In this chapter, a brief overview of the subdivision surfaces is presented followed by a review of the previous work done in the area of subdivision surfaces. This is followed by an overview of the physics-based models along with a review of the reÂ¬ lated literature. The motivating factors for embedding geometric subdivision surface models in a physics-based modeling paradigm are presented in the next section. The advantages of the proposed dynamic models over the existing physics-based models for shape recovery are discussed and finally advantages of a unified framework for shape modeling and shape recovery are also presented. 2.1 Subdivision Surfaces The input to any subdivision scheme is an initial mesh (also known as control mesh), MÂ° = (Vo, FÂ°), which is a collection of vertices Vo and a collection of faces FÂ°. The subdivision surface S(MÂ°) associated with the initial mesh MÂ° is defined as the limit of the recursive application of the refinement R as shown in Fig.2.1. The refinement R, when applied on a mesh Mk = (Vk,Fk), (.'reates a refined mesh Mk+1 = (Vk+1. Fk+1) where the vertices in Vk+1 are computed as affine combinations of the vertices in Vk and the faces in Fk+1 are obtained by splitting each face in Fk into a fixed number of sub-faces. 11 12 Figuro 2.1. Refinement of an initial control mesh to obtain the limit surface. (CourÂ¬ tesy : H. Hoppe) 13 It may bo noted that the vortices introduced through the subdivision process have a fixed degree in general (4 in case of quadrilateral meshes and 6 in case of triÂ¬ angular meshes). The vertices which do not have this degree are called extraordinary vertices. The number of extraordinary vertices are very few as those vertices are not introduced via subdivision refinement in general. For example, in the Catmull-Clark subdivision scheme (defined on quadrilateral meshes) the number of extraordinary vertices does not change after the first subdivision on the initial mesh, whereas in the modified butterfly subdivision scheme (defined on triangular meshes) the subdivision process never introducios an extraordinary vortex. The limit surface defined by the subdivision process is most often C1 (first derivative continuous) or C2 (second derivaÂ¬ tive continuous) depending on the subdivision rules expect at very few extra,ordinary points corresponding to the extraordinary vertices in the mesh. Specific subdivision schemes along with the properties of their limit surfaces will bo discussed in later chapters. A lot of research have boon carried out on subdivision surfaces, which are mainly focused either on the development of a now subdivision technique or on analyzing the smoothness properties of the limit surface generated by a subdivision scheme. However, in this dissertation the focus is entirely different, namely, embedding the subdivision surfaces in a physics-based modeling paradigm to enhance the applicabilÂ¬ ity of those surface models. In the rest of this section, those â€œtraditionalâ€ techniques of subdivision surfaces are reviewed. 14 Chaikin [14] first introduced the concept of subdivision to the computer graphic's community for generating a smooth curve from a given control polygon. During the last two decades, a wide variety of subdivision schemes for modeling smooth surfaces of arbitrary topology have been derived following Chaikinâ€™s pioneering work on curve generation. In general, these subdivision schemes can be categorized into two distinct classes namely, (1) approximating subdivision techniques and (2) interpolator^- subÂ¬ division techniques. The limit surface obtained using an approximating subdivision technique only approximates the initial mesh, whereas the limit surface interpolates the initial mesh in case of interpolator^- subdivision techniques. Among the approximating schemes, the techniques of Doo and Sabin [27, 83] generalize the idea of obtaining uniform biquadratic.1 patches from a rectangular conÂ¬ trol mesh. This scheme is an example of vertex subdivision scheme where a vertex surrounded by k faces is split into k sub-vertices, one for each face. Doo and Sabinâ€™s subdivision technique can be applied to any mesh of arbitrary topology, and the reÂ¬ sulting smooth limit surface would be biquadratic B-splines, except at extraordinary points corresponding to the extraordinary vertices in the control mesh. Catmull and Clark [10] developed a method for recursively generating a smooth surface from a polyhedral mesh of arbitrary topology. The Catmull-Clark subdivision surface, defined by an arbitrary initial mesh, can be reduced to a set of standard bicubic B-spline patches except at a finite number of degenerate points. This scheme is an example of face subdivision scheme, where a Aâ€™-sided face is split into k subÂ¬ faces. The details of this subdivision scheme are discussed in Section 3.1. Halstead 15 ot al. [38] proposed an algorithm to construct a Catmull-Clark subdivision surface that interpolates the vertices of a mesh of arbitrary topology. Loop [51] presented a subdivision scheme based on the generalization of quartic triangular B-splines for triangular meshes. Loopâ€™s subdivision rules are presented in Section 5.3. Hoppe ot al. [40] extended Loopâ€™s work to produce piecewise smooth surfaces with discontinuities in selected areas of the limit surface. They introduced now subdivision rules that allow for sharp features such as creases and corners in the limit surface. Peters and Roif [73] proposed a simple subdivision scheme for smoothing poly- hodra. Their refinement rules yield a C1 surface that has a piecewise quadratic.1 paÂ¬ rameterization except at isolated extraordinary points. Most recently, non-uniform Doo-Sabin and Catmull-Clark surfaces that generalize non-uniform tensor product B-splinc surfaces to arbitrary topologies wore introduced by Sederberg ot al. [88]. All the schemes mentioned above generalize recursive subdivision schemes for generating limit surfaces with a known parameterization. Various issues involved with character animation using those approximating subdivision schemes wore discussed at length by DoRoso ot al. [25]. The most well-known interpolation-based subdivision scheme is the â€œbutterflyâ€ algorithm proposed by Dyn ot al. [30]. Butterfly subdivision method, like other subÂ¬ division schemes, makes use of a small number of neighboring vortices for subdivision. It requires simple data structures and is extremely easy to implement. However, it needs a topologically regular sotting of the initial (control) mesh in order to obtain 16 a smooth C1 limit surface. A variant of this scheme with better smoothness propÂ¬ erties can be found in Dyn et al. [29]. Zorin et al. [109] developed an improved interpolatory subdivision scheme (which we (.'all the modified, butterfly scheme) that retains the simplicity of the butterfly scheme and results in much smoother surfaces even from irregular initial meshes. These interpolatory subdivision schemes have extensive applications in wavelets on manifolds, multiresolution decomposition of polyhedral surfaces and multiresolution editing. A variational approach for interpolatory refinement has been proposed by Kobbelt [43, 44] and by Kobbelt and Schroder [46]. In this approach, the vertex positions in the refined mesh at each subdivision step are obtained by solving an optimization problem. Therefore, these schemes are global, i.o., every new vertex position depends on all the vertex positions of the coarser level mesh. The local refinement property which makes the subdivision schemes attractive for implementation in the computer graphic's applications is not retained in the variational approach. The derivation of various mathematical properties of the smooth limit surface generated by the subdivision algorithms is rather complex. Doo and Sabin [28] first analyzed the smoothness behavior of the limit surface using the Fourier transform and an eigen-analysis of the subdivision matrix. Ball and Stony [3, 4] and Reif [80] further extended Doo and Sabinâ€™s prior work on continuity properties of subdivision surfaces by deriving various necessary and sufficient conditions on smoothness for different subdivision schemes. Specific.1 subdivision schemes were analyzed by Schweitzer [87], Habib and Warren [37], Peters and Reif [74] and Zorin [108]. Most recently, Stam 17 [90] presented a method for exact evaluation of Catmull-Clark subdivision surfaces at arbitrary parameter values. It may be noted that the focus of this dissertation is not on deriving a new subdivision technique or analyzing a subdivision technique, but on deriving a deformable surface model using these subdivision schemes. 2.2 Physics-based Deformable Surface Models Shape models can be broadly categorized into two types - lumped parameter models and distributed parameter models. A lumped parameter model uses small number of parameters to represent model geometry, whereas a distributed parameter model uses large number of degrees of freedom for model representation. An example of a lumped parameter surface model is a superquadric. Spline surfaces serve as a good example for distributed parameter model. Deformable surfaces are distributed parameter models which use large number of degrees of freedom for representing the model geometry. A large variety of shapes can be modeled using this type of model, but handling a large number of degrees of freedom can be cumbersome. However, the large degrees of freedom of a deformable model are embedded in a physics-based framework to allow only a â€œphysically meanÂ¬ ingfulâ€ model behavior. Various types of energies are assigned to the model using the degrees of freedom, and the model â€œdeformsâ€ to find an equilibrium state with minÂ¬ imal energy. The motion equation is derived using Lagrangian dynamic's [36], where various energies associated with model gives rise to internal and external forces. The equilibrium state of the model is a model position where the internal deformation force becomes equal to the externally applied force. These physics-based deformable 18 models are useful for modeling where the modeler can deform a surface by applying synthesized forces, and for data fitting where external forces are synthesized from a given data set such that the model approximates the given data at equilibrium. A deformable surface model is typically parameterized over the domain [0, l]2. Let s(u, v, p) be a deformable surface model, where 0 < u, v < 1 and p is a collection of the degrees of freedom Pi, i = 1,2,, n associated with the model (assuming the model has n degrees of freedom). The degrees of freedom p,Â¿(Ã) is a set of generalized coordinates which are functions of time and are assembled into the vector p. Let fi(t) be the generalized force represented by the vector fp and acting on p,Â¿. Let T be the kinetic.1 energy, F be the dissipation energy and U be the potential energy of the deformable surface model. Then, the Lagrangian equation of motion for the model can be expressed as d_0T_ _ dT (W dt dpi dpi + dpi + dp,Â¿ (2.1) Let /./,(Â«, v) be the mass density function of the surface. Then the kinetic.' energy of the surface is T 1 2 f.i s1 sdudv (2.2) whore M is called the mass matrix. Similarly, let 7(u.v) be the damping density function of the surface. Then the dissipation energy is ^PiDP, F 1 2 7s7 sdudv (2.3) 19 where D is (.'ailed the damping matrix. The potential energy of the model can be defined using the tMn-plate-under-tension energy model [96], and is given by U Qill + /hi dsT ds d u d u d2sT d2s dudodudo + Â«22- dsT Os do do + (h d2sT o2i d2u 02u + p22 d2sT d2s d2o d2v )dudo lpJKp, (2.4) where <\Â¿Â¿( The discretized equation of motion can be derived using the expressions of the kinetic.', dissipation and potential energy in Eqn.2.1, which is given by Mp + Dp + Kp = fp, (2.5) where fp is the generalized force vector. The free-form deformable models discussed above were first introduced to comÂ¬ puter graphic's and visualization in Terzopoulos et al. [99] and further developed by Terzopoulos and Fleischer [97], Pentland and Williams [72], Metaxas and TerzopouÂ¬ los [65] and Vemuri and Radisavljevic [104], Celniker and Gossard [11] developed a system for interactive free-form design based on the finite element optimization of enÂ¬ ergy functionals proposed in Terzopoulos and Fleischer [97]. Bloor and Wilson [8, 9], Celniker and Welch [12] and Welch and Witkin [105] proposed deformable B-spline curves and surfaces which can be designed by imposing the shape criteria via the minimization of the energy functionals subject to hard or soft geometric.' constraints 20 through Lagrange multipliers or penalty methods. Qin and Terzopoulos [77, 78, 100] developed dynamic XL7RBS (D-XTJRBS) which are very sophisticated models suitÂ¬ able for representing a wide variety of free-form as well as standard analytic shapes. The D-XXRBS have the advantage of interactive and direct manipulation of XXRBS curves and surfaces, resulting in physically meaningful hence intuitively predictable motion and shape variation. Deformable models are also widely used for shape recovery, segmentation, moÂ¬ tion tracking and other computer vision and medical imaging applications. A detailed survey of deformable models used in these techniques can be found in Mclnerney and Terzopoulos [64] and the references therein. Some specific existing deformable models used for shape recovery and non-rigid motion estimation will be reviewed in Section 2.4. 2.3 Shape Modeling Using Physics-based Subdivision-surface Model Recursive subdivision surfaces are powerful for representing smooth geometric shapes of arbitrary topology. However, they constitute a purely geometric represenÂ¬ tation, and furthermore, conventional geometric modeling with subdivision surfaces may be difficult for representing highly complicated objects. For example, modelers are faced with the tedium of indirect shape modification and refinement through time- consuming operations on a large number of (most often irregular) control vertices when using typical subdivision surface-based modeling schemes. Despite the advent of advanced 3D graphic's interaction tools, these indirect geometric.1 operations remain non-intuitive and laborious in general. In addition, it may not be enough to obtain 21 the most â€œfairâ€ surface that interpolates a set of (ordered or unorganized) data points. A certain number of local features such as bulges or inflections may be strongly deÂ¬ sired while requiring geometric objects to satisfy global smoothness constraints in geometric modeling and computer graphic's applications. In contrast, physics-based modeling provides a superior approach to shape modeling that can overcome most of the limitations associated with traditional geometric.1 modeling approaches. Free-form deformable models governed by the laws of continuum mechanics are of particular interest in this context. These dynamic.1 models respond to externally applied forces in a very intuitive manner. The dynamic.1 formulation marries the model geometry with time, mass, damping and constraints via a force balance equation. Dynamic.1 models produce smooth, natural motions which are easy to control. In addition, they facilitate interaction - especially direct manipulation of complex geometries. FurÂ¬ thermore, the equilibrium state of the model is characterized by a minimum of the deformation energy of the model subject to the imposed constraints. The deformation energy functionals can be formulated to satisfy local and global modeling criteria, and geometric.1 constraints relevant to shape design can also be imposed. The dynamic.1 approac.ii subsumes all of the aforementioned modeling capabilities in a formulation whicii grounds everything in real-world physical behavior. A severe limitation of the existing deformable models, including D-XURBS, is that they are defined on a rectangular parametric.1 domain. Hence, it can be very difficult to model surfaces of arbitrary genus using these models. In a recent work, 22 DeRose et al. [25] assigned material properties to control meshes at various subdiviÂ¬ sion levels in order to simulate (doth dynamic's using subdivision surfaces. Note that, they assign physical properties on the control meshes at various levels of subdivision and not on the limit surface itself, and hence can not solve the modeling goal we are trying to achieve. In this dissertation, a dynamic.1 framework is presented for subdivision surfaces which combines the benefits of subdivision surfaces for modeling arbitrary topology as well as that of dynamic.1 splines for interactive shape manipÂ¬ ulation by applying synthesized forces. The proposed dynamic.1 framework presents the modeler a formal mechanism of direct and intuitive manipulation of the smooth limit surface, as if they were seamlessly sculpting a piece of real-world â€œ(day.â€ A dynamic.1 framework for subdivision surface-based wavelets adds flexibility in the proÂ¬ posed modeling paradigm. It enables a multiresolution representation of the evolving control mesh defining the smooth limit surface, and the modeler can control the extent of manipulation effect by choosing a proper editing level. The formulation and implementation details of these dynamic.1 frameworks are discussed in subsequent chapters. 2.4 Shape and Motion Estimation Using Physics-based Subdivision-surface Model The dynamic.1 subdivision surface model has been developed primarily for modÂ¬ eling arbitrary (known) topology where modelers can directly manipulate the limit surface by applying synthesized forces in an intuitive fashion. However, another imÂ¬ portant application of the dynamic.1 subdivision surfaces is in non-rigid shape and 23 motion reconstruction/recovery. Accurate shape recovery requires distributed paÂ¬ rameter models which typically possess a large number of degrees of freedom. On the other hand, efficient shape representation imposes the requirement of geometry compression, i.e., models with fewer degrees of freedom. These requirements are conflicting and numerous researchers have been seeking to strike a balance between these contradicting requirements [5. 21. 47, 49, 62, 89, 100, 104], Another important criterion in the design of shape models is that the initialization of the model during the shape recovery process should not be restricted to globally parameterized input meshes since it may be infeasible to globally parameterize shapes of arbitrary topolÂ¬ ogy. A physics-based model best satisfying the above mentioned criteria is an ideal candidate for a solution to the shape recovery problem for obvious reasons. Deformable models which come in many varieties, have been used to solve this problem in the physics-based modeling paradigm. These models involve the use of either fixed size [21, 66, 71, 98, 104] or adaptive size [15, 41, 47, 62, 95, 101] grids. The models with fixed grid size generally use less number of degrees of freedom for representation at the cost of accuracy of the recovered shape. On the other hand, models using adaptive grids generally need large number of degrees of freedom to recover the shapes accurately. Note that the shapes being recovered from the image data are smooth in most of the medical applications, i.e. the anatomical structures even with considerable amount of details have more or less a C1 surface. Under these circumstances, the finite element approaches as in Cohen and Cohen [21] and Mclnerney and Terzopoulos [62] need a large number of degrees of freedom for deriving 24 a smooth and accurate representation. In addition, they can not represent shapes with known arbitrary topology. Moreover, almost all of these schemes require a globally parameterized mesh as their input which may be infeasible at times. The proposed model solves the shape recovery problem very effectively as it can recover shapes from large range and volume data sets using very few degrees of freedom (control vertices) for its representation and can cope with any arbitrary input mesh, not necessarily parameterized. The initialized model deforms under the influence of synthesized forces to fit the data set by minimizing its energy. Once the approximate shape is recovered, the model is further subdivided automatically and a better approximation to the input data set is achieved using more degrees of freedom. The process of subdivision after achieving an approximate fit is continued till a preÂ¬ scribed error criteria for fitting the data points is achieved. The proposed dynamic subdivision surface models have also been successfully used in motion tracking and visualization of a dynamically deforming shape from a time sequence of volumetric data sets. 2.5 Unified Framework for Shape Recovery and Shape Modeling Currently, shape recovery and shape modeling are viewed as two distinct areas in computer graphic's and geometric.1 modeling literature. However, there are potential benefits if these two can be combined in an unified framework. For example, the modeler starts from scratch to build a specific model in a typical geometric.1 modeling scenario. First, a rough shape is modeled and then it is fine-tuned by manipulating control vertex positions to obtain the desired effects. This turns out a cumbersome 25 process in general. On the other hand, shape recovery using state-of-the-art methods yield large polygonal meshes which are very difficult to manipulate, especially for global changes in shape. Most often the resulting meshes from a shape recovery application are not directly amenable to multiresolution analysis. Computationally expensive re-meshing techniques are needed to convert these meshes into a specific.1 type of meshes on which multiresolution analysis can be performed. This specific.1 type of mesh is known as mesh with â€œsubdivision-connectivityâ€, implying a topologically equivalent mesh with the same connectivity as of the given mesh can be obtained by recursive subdivision of a very simple known initial mesh. The proposed dynamic.1 framework combines shape recovery and shape modeling in an unified framework where the modeler can scan in 3D points of a prototype model, recover the shape using the proposed dynamic.1 subdivision surface model, and edit at any desired resolution using physics-based force tools. Thus, the modeler is reÂ¬ lieved of the burden of both building an initial model and editing a cumbersome huge polygonal mesh. The shape recovery process starts with a smooth subdivision surface model which has a simple initial mesh. This model is deformed using synthesized forces from the given data points and is automatically refined using some pre-defined error in fit criteria. The initial mesh of the final recovered smooth shape has subdiviÂ¬ sion connectivity in-built, as it is obtained by subdivision refinement, and therefore no re-meshing is needed for multiresolution analysis. The dynamic.1 framework for subdivision surface-based wavelets makes multiresolution editing using physics-based 26 force tools easy to perform. These advantages of shape modeling and shape recovery in a unified framework will be further illustrated in later chapters. CHAPTER 3 DYNAMIC CATMULL-CLARK SUBDIVISION SURFACES Subdivision surfaces, as mentioned earlier, can be broadly classified into two categories - approximating and interpolatory subdivision schemes. The approxiÂ¬ mating subdivision schemes typically generalize recursive subdivision techniques for generating limit surfaces with known parameterizations. In this chapter, a dynamic.' framework will be presented for Catmull-Clark subdivision scheme, a popular approxÂ¬ imating subdivision technique. The Catmull-Clark subdivision scheme generalizes the idea of obtaining a bicubic B-spline surface by recursive subdivision of a rectanguÂ¬ lar initial mesh. Before discussing the dynamic.' framework, first the Catmull-Clark subdivision scheme is briefly reviewed. 3.1 Overview of the Catmull-Clark Subdivision Scheme Catmull-Clark subdivision scheme, like any other subdivision scheme, starts with a user-defined mesh of arbitrary topology. It refines the initial mesh by adding new vertices, edges and faces with each step of subdivision following a fixed set of subdivision rules. In the limit, a recursively refined polyhedral mesh will converge to a smooth surface. The subdivision rules are as follows: 27 28 Figuro 3.1. Catmull-Clark subdivision : (a) initial mesh, (b) mesh obtained after one stop of Catmull-Clark subdivision, and (e) mesh obtained after another subdivision stop. â€¢ For each face, a now face vortex is introduced which is the average of all the old vertices defining the face. â€¢ For each (non-boundary) edge, a now edge vortex is introduced which is the average of the following four points: two old vortices defining the edge and two now face vortices of the faces adjacent to the edge. â€¢ For each (non-boundary) vortex V, a now vortex is introduced whoso position is n + ^ â– whÂ°r0 F is the average of the now face vortices of all faces adjacent to the old vortex V, E is the average of the midpoints of all the edges incident on the old vortex V and n is the number of the edges incident on the vortex. â€¢ Xow edges are formed by connecting each now face vortex to the now edge vortices of the edges defining the old face and by connecting each now vortex 29 corresponding to an old vortex to the now edge vertices of all old edges incident on the old vortex. â€¢ Xow faces are defined as faces enclosed by now edges. An example of Catmull-Clark subdivision on an initial mesh is shown in Fig.3.1. The most important property of the Catmull-Clark subdivision surfaces is that a smooth surface can be generated from any control mesh of arbitrary topology. ThereÂ¬ fore, this subdivision scheme is extremely valuable for modeling various complicated geometric objects of arbitrary topology. Catmull-Clark subdivision surfaces include standard bicubic B-spline surfaces as their special ease (i.e., the limit surface is a bicubic B-spline surface for a rectangular mesh with all non-boundary vertices of degree 4). In addition, the aforementioned subdivision rules generalize the recurÂ¬ sive bicubic B-spline patch subdivision algorithm. For non-rectangular meshes, the limit surface converges to a bicubic B-spline surface except at a finite number of exÂ¬ traordinary points. These extraordinary points correspond to extraordinary vertices (vertices whose degree is not equal to 4) in the mesh. Note that, after the first subÂ¬ division, all faces are quadrilaterals, hence all the new vertices created subsequently will have four incident edges. The number of extraordinary points on the limit surÂ¬ face is a constant, and is equal to the number of extraordinary vertices in the refined mesh obtained after applying one step of the Catmull-Clark subdivision on the initial mesh. The limit surface is curvature-continuous everywhere except at extraordinary vertices, where only tangent plane continuity is achieved. In spite of the popularity of Catmull-Clark subdivision surfaces for representing complex geometric shapes of 30 arbitrary topology, those subdivision surfaces may not bo easily paramotorizablo and deriving a (dosed-form analytic.1 formulation of the limit surface can be very difficult. Those deficiencies preclude their immediate pointwisc manipulation and hence may restrain the applicability of those schemes. In the rest of the chapter, a dynamic.1 framework is developed for the Catmull-Clark subdivision surfaces which offers a closed-form analytic.1 formulation and allows users to manipulate the model directly and intuitively. It may bo noted that recently a scheme was proposed by Stam [90] for directly evaluating the Catmull-Clark subdivision surfaces at arbitrary parameter values, but the work presented hero on dynamic.1 Catmull-Clark subdivision surfaces [57, 60, 76] was published prior to the publication of the above-mentioned work. 3.2 Formulation In this section, a systematic.1 formulation of the now dynamic.1 model based on Catmull-Clark subdivision surfaces is presented. This dynamic.1 model treats the smooth limit surface as a function of its initial mesh. However, the control vortex poÂ¬ sitions need to bo updated continually at every level of subdivision in order to develop the dynamic.1 framework. Note that, all the vertices introduced through subdivision are obtained as an affine combination of control vortex positions in the initial mesh. Therefore, the dynamic.1 behavior of the limit surface can bo controlled by formulatÂ¬ ing the dynamic.1 model on the initial mesh itself, the only exception being the (.'aso when the initial mesh has non-rcctangular faces. This problem can be circumvented by taking the mesh obtained through one stop of subdivision as the initial mesh. It may bo noted that an additional subdivision stop may bo needed in some (.'ases 31 to isolate the extraordinary points, and the resulting mesh is treated as the initial mesh. A typical example of the above mentioned scenario is when the initial mesh is a tetrahedron where two subdivision steps are needed, and the dynamic framework can be developed by treating the mesh obtained after two subdivision steps as the initial mesh. To define the limit surface using the vertices of the initial mesh, the enumeration of the bicubic patches in the limit surface is necessary. In the next two sections, various schemes are presented for assigning the bicubic patches to various faces of the initial mesh. 3.2.1 Assigning Patches to Regular Faces In Fig.3.2, a rectangular control mesh is shown along with the bicubic B-spline surface (4 patches) in the limit after an infinite number of subdivision steps. Note that, each of the bicubic patches in the limit surface is defined by a rectangular face with each vertex of degree four, thereby accounting for 16 control points (from its 8 connected neighborhood) needed to define a bicubic surface patch in the limit. Therefore, for each rectangular face in the initial mesh with a degree of 4 at each vertex, the corresponding bicubic surface patch can be assigned to it in a straight forward way. In Fig.3.2, the surface patches Si,S2,S^ and 5*4 are assigned to face Fi, F2, F?> and ip respectively. The 16 control points for the patch Si, corresponding to face Fi, are highlighted in Fig.3.2. Note that, the initial control mesh can be viewed as the parametric domain of the limit surface. Therefore, face ip can be thought of as the portion of the parametric domain over which the patch S\ is defined, i.e., has non-zero values. Nevertheless, each rectangular face (e.g. ip) can be parametrically 32 Figure 3.2. A rectangular mesh and its limit surface consisting of 4 bicubic surface patches. 33 defined over [0, l]2, and hence, all bicubic B-spline patches defined by 16 control points are locally parameterized over [0, l]2. 3.2.2 Assigning Patches to Irregular Faces In Fig.3.3, a mesh containing an extraordinary point of degree 3 and its limit surÂ¬ face are shown. The faces F0,Fi, ..., F8 are assigned to bicubic patches S0, Si,..., S% respectively (as they all have vertices of degree 4) following the aforementioned scheme. However, the central smooth surface enclosed by the patches S0, Si,..., S% consists of infinite number of bicubic patches converging to a point in the limit. A reÂ¬ cursive way of enumerating these bicubic patches and assigning them to various faces at different levels need to be developed in order to formulate the dynamic framework for Catmull-Clark subdivision surface model. The idea of enumerating the bicubic patches corresponding to faces having an extraordinary vertex is shown in Fig.3.4 where a local subdivision of the mesh conÂ¬ sisting of faces Fq, ifi,.... F%, P0, Pi, P2 (and not the other boundary faces) of Fig.3.3 is carried out. Topologically, the resulting local subdivision mesh (shown as dotted mesh) is exactly the same as the mesh in Fig.3.3 and hence exactly the same number of bicubic patches can be assigned to its faces with vertices of degree 4 as is evident from Fig.3.4 (the new faces and the corresponding patches are marked by â€œpâ€ and â€œnâ€ respectively). This process of local subdivision and assignment of bicubic patches around an extraordinary point can be carried out recursively and in the limit, the enclosed patch corresponding to faces sharing the extraordinary point will converge to a point. However, there is no need to carry out an infinite number of subdivision 34 Figuro 3.3. A mesh with an extraordinary point of degree 3 and its limit surface. 35 Figuro 3.4. Local subdivision around the extraordinary point and the limit surface. 36 stops. This description is for formulation purposes only and the exact implementation will bo detailed in a later section. 3.2.3 Kinematics In this section, the mathematics for the kinematics of the limit surface is develÂ¬ oped via illustrative examples and then the generalized formulas are presented. It may bo noted that a single bicubic B-splinc patch is obtained as the limiting process of the Catmull-Clark subdivision algorithm applied to an initial 4 by 4 rectangular control mesh. Let sp(u,v), whore (u.v) e [0, l]2, denote this bicubic B-splinc patch which can bo expressed analytically as 3 3 sp(u, v) = (.r{ Ã/. v), //(ii. v), z(u, v))1 = X X di:jBiA(u)BjA(v), (â€¢â– '>â€¢ 1) i=0j=0 whore d*.Â¿ represents a 3-dimcnsional position vector at the (i.j)th control point location and BiA(u) and BjA(v) are the cubic B-splinc basis functions. The subscript p on s denotes the patch under consideration. Expressing Eqn.3.1 in a generalized coordinate system we have Sp = JpQp; (3.2) where 3P is a transformation matrix storing the basis functions of a bicubic B-spline patch, and is of size (3,48). Vector qp is the concatenation of all control points defining a B-spline patch in 3D. Note that in the concatenation of the control points, each control point has an (x, y, z) component. For example, the (x, y, z) components of the control point (i.j) correspond to positions 3k, 3k + 1,3k + 2 - where, k = 37 4?! + j - respectively in the vector qp. We can express the entries of Jp explicitly in the following way: Jp(0, k) = Jp(l,k + 1) = Jp(2, A: + 2) = BiA(u)BjA(v) and Jp(0, k + 1) = Jp(0, k + 2) = Jp(l. k) = Jp(l. k + 2) = Jp(2, k) = Jp(2, k + 1) = 0. Limit surface with many bicubic patches from a rectangular initial mesh Xow a limit surface consisting of many bicubic surface patches obtained after applying an infinite number of subdivision steps to a rectangular initial mesh is considered. For example, let the limit surface of Fig.3.2 be sm which can be written as sm(u, v) = smi(2u. 2v)+sm.2(2(u â€” -), 2w)+sm3(2(Â« â€” -), 2(w^-))+smil(2w,, 2(v â€” -)), (3.3) where smi(2-Â«, 2?;) = sm(u. v) for 0 < u. v < and 0 otherwise. Similarly, sm2,sma and smi are also equal to sm(u,v) for an appropriate range of values of u.v and 0 outside. It may be noted that smi, sm2, sm3, smi correspond to patches Si, S2, S3, S4 respectively in Fig.3.2. Eqn.3.3 in generalized coordinates becomes 4 sm = JiQi + J2Q.2 + J.sQs + JrQr = (3.4) i=l where J,Â¿s are the transformation matrices of size (3, 48) and q,Â¿s are the (x,y,z) comÂ¬ ponent concatenation of a subset of the control points of sm defining smÂ¿, i = 1, 2, 3 38 and 4. A moro general expression for sm is 4 Sm = JiAiqm + J2A2Qm + J.sAsqm + J4A4qm = 'y ( J,Â¿A,Â¿qm = Jmqm. (3-5) i=l Whore, qm is the 75-componcnt vector of 3D positions of the 25 vortex control mesh defining the limit surface sm. Matrices A,Â¿, 1 < i < 4, are of size (48,75) , each row consisting of a single nonzero entry (= 1) and the (3, 75)-sizcd matrix Jm = Eti J,-A,, Limit surface with many bicubic patches from an arbitrary initial mesh The stage is now sot to define the limit surface s using the vortices of initial mesh M for any arbitrary topology, assuming all faces are quadrilateral and no face contains more than one extraordinary point as its vortex (i.c., extraordinary points are isolated). As mentioned earlier, if those assumptions are not satisfied, one or two stops of global subdivision may bo required and the resulting mesh can bo treated as the initial mesh. Lot the number of vortices in the initial mesh M bo a, and lot l of those bo the extraordinary vortices. The number of faces in the initial mesh are assumed to bo b, and k of those faces have vortices with degree 4 (henceforth termed a â€œnormal faceâ€) and each of the remaining (b â€” k) faces have one of the l extraordinary vortices (henceforth termed a â€œspecial faceâ€). Lot p bo the 3a = N dimensional vector containing the control vortex positions in 3D. Using the formulations in Section 3.2.1 39 and Section 3.2.2, the smooth limit surface can be expressed as k l Â¿=1 j=1 (3.6) where rp is a single bicubic patch assigned to each of the normal faces and Sj is a collection of infinite number of bicubic patches corresponding to each of the extraorÂ¬ dinary points. As s is a surface defined over the faces of the initial control mesh, each n* can be viewed as a bicubic patch defined over the corresponding regular face in the initial control mesh. Similarly, each sj can be defined over the corresponding irreguÂ¬ lar faces in the initial mesh (refer to Fig.3.2 - Fig.3.4 for the detailed description on parametric domains of subdivision surfaces). For the simplicity of the following mathÂ¬ ematical derivations on the dynamic model, from now on the parametric domain will not be explicitly provided in the formulation. Employing the same approach taken before to derive Eqn.3.5, it can be shown that k k k E n, = E("JÂ¡)("p,) = (E("JÂ¡)("A,.))p = ("J)p (3.7) i=l i=l i=l i=l where "X/," p, and "A,Â¿ are the equivalent of J,Â¿, pÂ¿ in Eqn.3.4 and A,Â¿ in Eqn.3.5 respecÂ¬ tively. The pre-superscript n is used to indicÃate that these mathematical quantities describe bicubic patch in the limit surface corresponding to normal faces. The following notational convention will be used for describing various mathÂ¬ ematical quantities used in the derivation of the expression for a collection of infinite number of bicubic patches around an extraordinary vertex. The pre-superscript s 40 is used to represent a collection of bicubic patches around an extraordinary vertex, the subscript j is used to indicate the j-th extraordinary point, the post-superscript represents the exponent of a mathematical quantity and the level indicator (to repÂ¬ resent various levels of subdivision in the local control mesh around an extraordinary vertex) is depicted via a subscript on the curly braces. The expression for Sj is derived using the recursive nature of local subdivision around an extraordinary vertex as shown in Section 3.2.2. First, Sj can be expressed as sj = + \sj}v (3-8) where the first term of Eqn.3.8 is the generalized coordinate representation of the bicubic B-spline patches corresponding to the normal faces of the new local subdiviÂ¬ sion mesh obtained after one subdivision step on the local control mesh (similar to those patches marked n in Fig.3.4). {sJ}1 represents the rest of the infinite bicubic B-spline patches surrounding the extraordinary point (similar to the central patch enclosed by patches marked n in Fig.3.4). The vertices in the newly obtained loÂ¬ cal subdivision mesh {â– â€˜ipJ}1 can be expressed as a linear combination of a subset of the vertices of the initial mesh M (which will contribute to the local subdiviÂ¬ sion) following the subdivision rules. We can name this subset of initial control vertices {â€¢,pj}0. Furthermore, there exists a matrix of size (3c, 3d), such that fB/lifPjlo = {'P./li where {â€¢,pj}1 and {â€¢,pj}0 are vectors of dimension 3c and 3d respectively. Applying the idea of recursive local subdivision again on sj can 41 bo further expanded as sj = fJjlifB/lifPjlo + + {s j}2. (3.9) In the above derivation, is a vector of dimension 3d, comprising of a subset of the vortices defining the 3c dimensional vector {â– â€˜ipJ}1. Note that, {â– â€˜ip?}1 has the same structure as {',â€™Pj}0; therefore, there exists a (3d, 3d) matrix such that {',â€™Cj}1{',â€™Pj}0 = {â€¢,pj}1. Each subdivision of a local mesh with d vortices (â€¢reatos a now local mesh with c vortices which contributes a fixed number of bicubic B-splinc patches. Proceeding one stop further, it can bo shown that SJ = {'-l,}i{j}i{'P./lu + iM'C/11i'P./lu + { S }3^ SB4 }3^ S^4 } 1 { SPi }0 + i SJ }3' (3.10) Because of the intrinsic.1 property of the local recursive subdivision around the exÂ¬ traordinary point, wo have = â€¢â€¢â€¢ = = â€¢â€¢â€¢ = In addition, the subdivision rules remain the same throughout the refinement process, we also have {*BJ}1 = {SB;}2 = ... = {*Bj}n = ... = {'Bj}^. So, the above equations can bo further simplified loading to OO = {'JUitBUifEt'CUiH'pUr i=0 (3.11) 42 Vector sj can be written as CJjJCPj) (3.12) where â– â€˜â€™ Jj = sCj }') and spÂ¿ = {',â€™Pj}0- The idea of local recursive subdivision around an extraordinary point is illustrated in Fig.3.5. Note that, each vertex position in the subdivided mesh is obtained by an affine combination of some vertices in the previous level and hence any row of sums to 1. The largest eigenvalue of such a matrix is 1 and it can be shown that the corresponding infinite series is convergent following a similar approach as in Halstead et al. [38]. The rest of the derivation leading to an expression for s is relatively straight forward. Using the same approach used to derive the Eqn.3.7, it can be shown that E s; = Bâ€™JiXâ€™pj) = (Bâ€™-W-Mp = ('J)p- (3.13) j=1 i=1 i=1 j=1 From Eqn.3.6, Eqn.3.7 and Eqn.3.13 s = (â€J)p + (sJ)p. (3.14) Let J = ("J) + (SJ). and hence s = Jp. (3.15) 43 Figuro 3.5. Local subdivision around the extraordinary point and the corresponding patches in the limit surface from different levels of subdivision. 44 3.2.4 Dynamics In the previous section, an expression is derived for the smooth limit surface obtained via infinite subdivision steps. This expression treats the smooth limit surface as a function of the control vertex positions in the initial mesh. Now the vertex positions in the initial mesh defining the smooth limit surface s are treated as a function of time in order to embed the Catmull-Clark subdivision model in a dynamic framework. The velocity of this surface model can be expressed as s(u, v, p) = Jp, (3.16) where an overstruck dot denotes a time derivative. The physic's of the dynamic subdivision surface model is based on the work-energy version of Lagrangian dynamic's [36] and is formulated in an analogous way to the dynamic.' framework presented in Section 2.2. Let fi(u, v) be the mass density function of the surface. Then the kinetic.' energy of the surface is T 1 2 // (3.17) where (using Eqn.3.16) (3.18) 45 is the mass matrix of size (N.N). Similarly, lot 7(u.v) bo the damping density function of the surface. Then the dissipation energy is F = J'js1 sdudv = ^p^Dp, (3.19) whore D = J J 7J2 Jdudo (3.20) is the damping matrix of size (N, N). The potential energy of the smooth limit surface can be expressed as U = ^pJKp, (3.21) whore K is the stiffness matrix of size (N.N). A fJiin-plate-under-tension energy model [96] is used to compute the elastic.1 potential energy of the dynamic.1 subdivision surface. The corresponding expression for the stiffness matrix K is K = J/(aâ€žJiJ. + o'22^l J-Â« + (hi^iu^uu + A2J uv^uv + /Ã22J lvJVv)dudv. (3.22) where the subscripts on J demote the parametric.1 partial derivatives. The r) and [iij(u, ?;)s are elasticity functions controlling local tension and rigidity in the two parametric.1 coordinate directions. Note that the thin-plato energy expression might diverge at extraordinary points on the limit surface for Catmull-Clark subdivision scheme as shown in Halstead et al. [38]. Several methods have been suggested in 46 Halstead ot al. [38] to overcome the problem of the divergent series. However, in this dissertation, the problem is circumvented by setting the corresponding rigidity coefÂ¬ ficients to be zero at these points. Therefore, the thin-plate energy at extraordinary points is zero. The effect is negligible to the overall thin-plate energy as very few extraordinary points are present in the smooth limit surface. Using the expressions for the kinetic, dissipation and potential energy in Eqn.2.1, the same motion equation as in Eqn.2.5 can be obtained. The generalized force vector ip, which (tan be obtained through the principle of virtual work [36], is expressed as (3.23) Different types of forces can be applied on the smooth limit surface, and the limit surface would evolve over time according to Eqn.2.5 to obtain an equilibrium position characterized by a minimum of the total model energy. 3.2.5 Multilevel Dynamics At this point, a dynamic framework is developed for the Catmull-Clark subdiÂ¬ vision scheme where the smooth limit surface evolves over time in response to the applied forces. The entire process can be described as follows. Given an initial mesh, a smooth surface is obtained in the limit. Users can directly apply synthesized forces to this smooth limit surface to enforce various functional and aesthetic.1 constraints. This direct manipulation is then transferred back as virtual forces acting on the initial mesh through a transformation matrix (Eqn.3.23), and the initial mesh (as well as 47 the underlying smooth limit surface) deforms continuously over time until an equilibÂ¬ rium position is obtained. The deformation of the surface in response to the applied forces is governed by the motion equation (Eqn.2.5). Within the physics-based modÂ¬ eling framework, the limit surface evolves as a consequence of the evolution of the initial mesh. One can apply various types of forces on the limit surface to obtain a desired effect, but the possible level of details appearing in a shape that can be obtained through evolution is constrained by the number of control vertices in the initial mesh. It might be necessary to increase the number of control vertices in the initial mesh in order to obtain a detailed shape through this evolution process. The number of control vertices defining the same smooth limit surface can be increased by simply replacing the initial mesh with a mesh obtained after one subdiÂ¬ vision step applied to the initial mesh. This new mesh has more number of vertices but defines the same limit surface. Therefore, the dynamic Catmull-Clark surface model can be subdivided globally to increase the number of vertices (control points) of the model. For example, after one step of global subdivision, the initial degrees of freedom p (refer to Eqn.3.15 and Eqn.3.16) in the dynamic system will be replaced by a larger number of degrees of freedom q, where q = Ap. A is a global subdiviÂ¬ sion matrix of size (M. N) whose entries are uniquely determined by Catmull-Clark subdivision rules (see Section 3.1 for the details about the rules). Thus, p, expressed as a function of q, can be written as p = (ArAf Vq = Atq, (3.24) 48 where At = (ArA)-1 Ar. Therefore, Eqn.3.15 and Eqn.3.16 can be rewritten as s = (JAt)q, (3.25) and s(m, w,q) = (JAt)q. (3.26) respectively. Xow the equation of motion needs to be derived for this new subdivided model involving a larger number of control vertices namely q. The mass, damping and stiffness matrices need to be recomputed for this â€œfinerâ€ level. The structure of the motion equation as given by Eqn.2.5 remains unchanged, but the dimensionality and the entries of M, D,K,p and fp change correspondingly in this newly obtained subdivided level. In particular the motion equation, explicitly expressed as a function of q, can be written as M(?q + D(?q + K(?q = f9, (3.27) where M, = / / fi.{A^)1 JrJAhiudv and the derivation of D^, and fq follow suit. It may be noted that further subdivision, if necessary, can be carried out in a similar fashion. Therefore, multilevel dynamic's is achieved through recursive subdiÂ¬ vision on the initial set of control vertices. Users can interactively choose the level of detail representation of the dynamic.1 model as appropriate for their modeling and deÂ¬ sign requirements. Alternatively, the system can automatically determine the level of subdivision most suitable for an application depending on some application-specific criteria. 49 3.3 Finito Element Implementation The evolution of the generalized coordinates for our new dynamic surface model can be determined by the second-order differential equation as given by Eqn.2.5. An analytical solution of the governing differential equation can not be derived in general. However, an efficient numerical implementation can be obtained using the finite eleÂ¬ ment method [42], The limit surface of the dynamic Catmull-Clark subdivision model is a collection of bicubic patch elements. We use two types of finite elements for this purpose - normal elements (bicubic patches assigned to the normal faces of the initial mesh) and special elements (collection of infinite number of bicubic patches assigned to each extraordinary vertex of the initial mesh). The shape functions for the norÂ¬ mal element are the basis functions of the bicubic surface patch, whereas the shape functions for the special element are the collection of basis functions corresponding to the bicubic patches in the special element. In the current implementation, the M, D and K matrices for each individual normal and special elements are calculated and they can be assembled into the global M, D and K matrices that appear in the corresponding discrete equation of motion. In practice, we never assemble the global matrices explicitly in the interest of time performance. The detailed implementation is explained in the following sections. 3.3.1 Data Structures The limit surface of the dynamic Catmull-Clark subdivision model is a collection of bicubic patches, and hence requires us to keep track of the control polygons defining such patches. We cÃan get the control polygons for the normal elements in the limit 50 Figuro 3.6. The data structure used for dynamic subdivision surface implementation. surface from the initial control mesh itself. However, wo need to locally subdivide the initial control mesh around the extraordinary vortices to obtain the control polygons of the bicubic patches in the special elements on the limit surface. A subdivision surface defined by a control mesh at any level is designed as a class which has a pointer to its parent mesh, a sot of pointers to its offspring meshes (arising out of local subdivision around the extraordinary vortices at that level), a list of faces, edges, vortices and normal elements . Face, edge, vortex and normal elements are, in turn, classes which store all the connectivity and other information needed to either enumerate all the patches or locally subdivide around an extraordinary vortex in that level. The implementation takes the initial mesh as the base subdivision surface object (with its parent pointer sot to NULL) and locally subdivides the initial mesh upto a user-defined maximum level around each extraordinary vortex to create 51 offspring objects at different levels (Fig.3.6). At this point, letâ€™s take a closer look at the normal and special element data structures and computation of the corresponding local M, D and K matrices. 3.3.2 Normal Elements Each normal element is a bicubic surface patch and hence is defined by 16 vertices (from the 8-eonneeted neighborhood of the corresponding normal face) in the initial control mesh. Each normal element keeps a set of pointers to those vertices of the initial mesh which act as control points for the given element. For a normal element, the mass, damping and stiffness matrices are of size (16,16) and can be computed exactly by carrying out the necessary integrations analytically. The matrix J in Eqn.3.18, 3.20 and 3.22 needs to be replaced by 3P (of Eqn.3.2) for computation of the local M, D and K matrices respectively of the corresponding normal element. 3.3.3 Special Elements Each special element consists of an infinite number of bicubic patches in the limit. We have already described a recursive enumeration of the bicubic patches of a special element in Section 3.2.2. Let us now consider an arbitrary bicubic patch of the special element in some level j. The mass matrix M., of this patch can be written as M.s = n'i'Mpns (3.28) where Mp is the normal element mass matrix (scaled by a factor of A to take into account of the area shrinkage in bicubic patches at higher level of subdivision) and 52 a is the transformation matrix of the control points of that arbitrary patch from the corresponding control points in the initial mesh. The damping and stiffness matrices for the given bicubic patch can be derived in a similar fashion. These mass, damping and stiffness matrices from various levels of (local) subdivision can then be assembled to form the mass, damping and stiffness matrices of the special element. It may be noted that the stiffness energy due to plate terms diverges at the extraordinary points on the limit surface. We solve the problem using a slightly different approach than the one used in Halstead et al. [38]. When the area of the bicubic patch obtained via local subdivision of the initial mesh around an extraordinary vertex becomes smaller than the display resolution, the contribution from such a bicubic patch is ignored in computing the physical matrices of the corresponding special element. The number of extraordinary points in the limit surface is very few, and the above mentioned approximation is found to work well in practice. 3.3.4 Force Application The force f (u, v, t) in Eqn.3.23 represents the net effect of all externally applied forces. The current implementation supports spring, inflation as well as image-based forces. However, other types of forces like repulsion forces, gravitational forces etc. can easily be implemented. To apply spring forces, a spring of stiffness k can be connected from a point d0 to a point x0 on the limit surface (or, to the j-th level approximation mesh), the net 53 applied spring force being f(x. t) = / Aâ€™(d0 â€” s(x. i))i(x â€” x0)dx. (3.29) where S is the unit impulse function implying f(x0, t) = At|do â€” s(x0, t) | and vanishes elsewhere on the surface. However, the S function can be replaced with a smooth kernel to spread the force over a greater portion on the surface. The spring forces can be applied interactively using the computer mouse or the points from which forces need to be applied can be read in from a file. To recover shapes from 3D image data, we synthesize image-based forces. A 3D edge detection is performed on a volume data set using the 3D Monga-Deriehe(MD) operator [69] to produce a 3D potential field P(x,y,z), which we use as an external potential for the model. The force distribution is then computed as (3.30) where A controls the strength of the force. The applied force on each vertex at the j- th approximation level is computed by trilinear interpolation for evaluating Eqn.3.23 in Cartesian coordinates. More sophisticated image-based forces which incorporate region-based information such as gradients of a thresholded fuzzy voxel classification can also be used to yield better and more accurate shape recovery. It may be noted that we can apply spring forces in addition with the image-based forces by placing 54 points on the boundary of the region of interest in each slices of the 3D volume (MR. CT etc.) image data. 3.3.5 Discrete Dynamic Equation The differential equation given by Eqn.2.5 is integrated through time by disÂ¬ cretizing the time derivative of p over time steps At. The state of the dynamic subdivision surface at time t + Ad is integrated using prior states at time t and t â€” Ai. An implicit time integration method is used in the current implementation where discrete derivatives of p are calculated using p(f + Ad) â€” 2p(f) + p(f â€” Ad) Ad2 p(f + Ad) (3.31) and (3.32) The elemental mass, damping and stiffness matrices can be assembled to get the global mass, damping and stiffness matrix for the smooth subdivision surface model. However, we do not assemble these global sparse matrices explicitly for efficiency reasons. For the time varying stiffness matrix, we recompute K at each time step. Using Eqn.2.5, Eqn.3.31 and Eqn.3.32, the discrete equation of motion is obtained as (2M + JAAd + 2Af2K)p(f + Ad) = 2Ad2ip(t + Ad) + (DAd â€” 2M)p(f â€” Ad) + 4Mp(f). (3.33) 55 Figuro 3.7. Model subdivision to increase the degrees of freedom : (a) evolution of the initial mesh, and (b) the corresponding limit surface evolution perceived by the user. This linear system of equations is solved iteratively between each time stop using the conjugate gradient method [34, 75]. 3.3.6 Model Subdivision The initialized model grows dynamically according to the equation of motion (Eqn.2.5). The degrees of freedom of the initialized model is equal to the number of control vertices in the initial mesh as mentioned earlier. When an equilibrium is achieved for the model, the number of control vertices can be increased by replacing the original initial mesh by a new initial mesh obtained through one step of Catmull- Clark subdivision. This increases the number of degrees of freedom to represent the same (deformed) smooth limit surface and a new equilibrium position for the model can be obtained. This process is depicted schematically in Fig.3.7. Model subdivision might be needed to obtain a very localized effect on a smooth limit surface. For a 56 shape recovery application, one may start with a very simple initial model, and when an approximate shape is recovered, the degrees of freedom can be increased to obtain a new equilibrium position for the model with a better fit to the given data set. The error of fit criteria for the discrete data is based on distancÃe between the data points and the points on the limit surface where the corresponding springs are attached. In the context of image-based forces, if the model energy does not change between successive iterations indicating an equilibrium for the given resolution, the degrees of freedom for the model can be increased by the above-mentioned replacement scheme until the model energy is sufficiently small and the change in model energy between successive iterations becomes less than a pro-specified tolerance. 3.4 Generalization of the Approach The? proposed approach cÃan be generalized for other approximating subdivision schemes. However, a more general approach is presented in Chapter 5 for deriving the dynamic framework. Dynamic Catmull-Clark subdivision surface model is reformuÂ¬ lated in Section 5.2 using this general approach. A dynamic framework for another popular approximating subdivision scheme namely, Loopâ€™s subdivision scheme, is also discussed in Chapter 5. CHAPTER 4 DYNAMIC BUTTERFLY SUBDIVISION SURFACES In the previous chapter, a dynamic.1 framework has been presented for an approxÂ¬ imating subdivision scheme namely, Catmull-Clark subdivision scheme. In this chapÂ¬ ter. a dynamic.1 framework is developed for (modified) butterfly subdivision scheme, which is an interpolatory subdivision technique. First, a brief overview of the (modÂ¬ ified) butterfly subdivision scheme is presented. Next, a local parameterization techÂ¬ nique for the limit surface obtained via (modified) butterfly subdivision is discussed. This parameterization scheme is then used to derive the dynamic.1 model. The impleÂ¬ mentation details are also discussed. 4.1 Overview of the (Modified) Butterfly Subdivision Scheme The butterfly subdivision scheme [30], like many other subdivision schemes used in geometric design literature/applications, starts with an initial triangular mesh which is also known as the control mesh. The vertices of the control mesh are known as the control points. In each step of subdivision, the initial (control) mesh is refined through the transformation of each triangular face into a patch with four smaller triangular faces. After one step of refinement, the new mesh in the finer level retains the vertices of each triangular face in the previous level and hence, interpolates the coarser mesh in the previous level. In addition, every edge in each triangular face 57 58 Figuro 4.1. (a) The control polygon with triangular faces; (b) mesh obtained after one subdivision stop using butterfly subdivision rules. -W -W (a) (b) Figure 4.2. (a) The contributing vortices in the j-th level for the vortex in the j+1- th level corresponding to the edge between v~[ and Vg; (b) the weighing factors for different vortices. 59 is spilt by adding a now vertex whoso position is obtained by an affine combination of the neighboring vortex positions in the coarser level. For instance, the mesh in Fig.4.1(b) is obtained by subdividing the initial mesh shown in Fig.4.1(a) once. It may bo noted that all the newly introduced vortices corresponding to the edges in the original mesh have degree 6, whereas the position and degree of the original vortices do not change in the subdivided mesh. In the original butterfly scheme, the now vortices corresponding to the edges in the previous level are obtained using an eight-point stencil as shown in Fig.4.2(a). To show how this stencil is used, a vortex to bo introduced and the contributing vortices from the stencil are highlighted in Fig.4.1(a). The name of the scheme originated from the â€œbutterflyâ€-like configuration of the contributing vortices. The weighing factors for different contributing vortex positions are shown in Fig.4.2(b). The vortex ejj1 in the j + 1-th level of subdivision, corresponding to the edge connecting vortices v~[ and V2 at level j. is obtained by ei2 1 = 0.5(v{ + vÂ¿) + 2+ v|) - ?/;(v^ + vÂ¿ + vÂ¿ + v|), (4.1) whore 0 < w < 1, and vj denotes the position of the ?'-th vortex at the j-th level. The butterfly subdivision scheme producios a smooth C1 surface in the limit except at the extraordinary points corresponding to the extra,ordinary vortices (vorÂ¬ tices with degree not equal to 6) in the initial mesh [109]. All the vortices introduced through subdivision have degree 6, and therefore, the number of extraordinary points in the smooth limit surface equals the number of extraordinary vortices in the initial 60 w (a) (b) Figuro 4.3. (a) The weighing factors of contributing vortex positions for an edge connecting two vortices of degree 6; (b) the corresponding case when one vortex is of degree n and the other is of degree 6. 61 mesh. Recently, this scheme has been modified by Zorin et al. [109] to obtain better smoothness properties at the extraordinary points. This modified scheme is known as modified, butterfly subdivision technique. In Zorin et al. [109], all the edges have been categorized into three classes : (i) edges connecting two vertices of degree 6 (a 10 point stencil, as shown in Fig.4.3(a), is used to obtain the new vertex positions corresponding to these edges), (ii) edges connecting a vertex of degree 6 and a vertex of degree n/6 (the corresponding stencil to obtain new vertex position is shown in Fig.4.3(b), where q = .75 is the weight associated with the vertex of degree n ^ 6, and Sj, = (0.25 + cos(2m/n) + Q.bcos(Am/n))/n, i = 0,1,..., n â€” 1, are the weights associated with the vertices of degree 6), and (iii) edges connecting two vertices of degree n ^ 6. The last case can not occur except in the initial mesh as the newly introduced vertices are of degree 6, and the new vertex position in this last case is obtained by averaging the positions obtained through the use of stencil shown in Fig.4.3(b) at each of those two extraordinary vertices. 4.2 Formulation In this section, a systematic.1 formulation of the dynamic.1 framework for the modiÂ¬ fied butterfly subdivision scheme is presented. Unlike the approximating schemes, the limit surface obtained via modified butterfly subdivision does not have any analytic.1 expression even in a regular setting. Therefore, derivation of a local parameterization suitable for developing the dynamic.1 framework for the limit surface is the key issue here which is discussed next. 62 Figuro 4.4. The smoothing effect of the subdivision process on the triangles of the initial mesh. 4.2.1 Local Parameterization The smooth limit surface defined by the modified butterfly subdivision technique is of arbitrary topology whore a global parameterization is impossible. Nevertheless, the limit surface can be locally parameterized over the domain defined by the initial mesh following a similar approach described in Lounsbcry ot al. [53]. The idea is to track any arbitrary point on the initial mesh across the meshes obtained via the subdivision process (see Fig.4.4 and Fig.4.5). so that a correspondence can be established between the point being tracked in the initial mesh and its imago on the limit surface. The modified butterfly subdivision scheme starts with an initial mesh consisting of a set of triangular faces. The recursive application of the subdivision rules smoothes out each triangular face, and in the limit, a smooth surface is obtained which can also be considered as a collection of smooth triangular patches. The subdivision process and the triangular decomposition of the limit surface is depicted in Fig.4.4. Note that, the limit surface can be represented by the same number of smooth triangular patches as that of the triangular faces in the initial mesh. Therefore, the limit surface 63 s can bo expressed as n s = 5>, (4.2) k=1 whore n is the number of triangular faces in the initial mesh and is the smooth triangular patch in the limit surface corresponding to the k-th triangular face in the initial mesh. The stage is now sot for describing the parameterization of the limit surface over the initial mesh. The process is best explained through the following example. A simple planar mesh shown in Fig.4.5(a) is chosen as the initial mesh. An arbitrary point x inside the triangular face abc is tracked over the meshes obtained through subdivision. The vortices in the initial mesh are darkly shaded in Fig.4.5. After one stop of subdivision, the initial mesh is refined by addition of now vortices which are lightly shaded. Another subdivision stop on this refined mesh loads to a finer mesh with introduction of now vortices which are unshaded. It may bo noted that any point inside the smooth triangular patch in the limit surface corresponding to the fare abc in the initial mesh depends only on the vertices in the initial mesh which are within the 2-neighborhood of the vertices a, b and c due to the local nature of the subdivision process. For example, the vortex d, introduced after first subdivision stop, can bo obtained using the 10 point stencil shown in Fig.4.3(a) on the edge ab. All the contributing vortices in the initial mesh are within the 1-neighborhood of the vortices a and b. A 10 point stencil can bo used again in the next subdivision stop on the edge d.b to obtain the vortex g. Some of the contributing vortices at this level of subdivision, for example, the (lightly shaded) 1-ncighbors of the vortex b (except 64 Figuro 4.5. Tracking a point x through various levels of subdivision : (a) initial mesh, (b) the selected section (enclosed by dotted linos) of the mesh in (a), after one subdivision stop, (c) the selected section of the mesh in (b). after another subdivision stop. 65 d and e) in Fig.4.5(b), depend on some vertices in the initial mesh which are within the 2-neighborhood of the vertices a, b and c in the initial mesh. In the rest of the formulation, superscripts are used to indicÃate the subdivision level. For example, vjuvw denotes the collection of vertices at level j which control the smooth patch in the limit surface corresponding to the triangular facie uvw at the j-th level of subdivision. Let vÂ°he be the collection of vertices in the initial mesh which are within the 2-neighborhood of the vertices a, b and c (marked black in Fig.4.5(a)). Let the number of such vertices be r. Them, the vector vÂ°he, which is the concatenation of the (x, y, z) positions for all the r vertices, is of dimension 3?â€™. These r vertices control the smooth triangular patch in the limit surface corresponding to the triangular face a,be in the initial mesh. Xow, there exists four subdivision matrices (Aafcc),., (Aabc),, (Aabc)r and (Aa6c)m of dimension (3r, 3r) such that "V adf (A-ahc) fy aha ^bed (Aabc)yabc, VÃ/e = {-^-abc)r'vabc- VÃe/ = {A-abc)m'vabc; (4.3) where the subscripts t, /, r and m denote top, left, right and middle triangle positions respectively (indicating the relative position of the new triangle with respect to the original triangle), and vÂ¿dy, vÂ¿ed, vÂ¿je and vÂ¿ej are the concatenation of the (x.y.z) positions for the vertices in the 2-neighborhood of the corresponding triangle in the 66 newly obtained subdivided mesh. The new vertices in this level of subdivision are lightly shaded in Fig.4.5(b). The 2-neighborhood configuration of the vertices in the newly obtained triangles is exactly the same as that of the original triangle, hence local subdivision matrices are square and the vector dimensions on both sides of Eqn.4.3 are the same. This concept is further illustrated in Fig.4.6. Carrying out one more level of subdivision, a new set of vertices which are unshaded in Fig.4.5(c) are obtained along with the old vertices. Adopting a similar approach as in the derivation of Eqn.4.3, it can be shown that Ydgi (-A-bed)/ Y bp.d <9 = (A hed)yld VL. = ( A-bfÃd) r~V bed V9 hi â€” (A bed,) nibbed, (4.4) The relative position of the triangular face dgi in Fig.4.5(e) with respect to the triangular face bed is topologically the same as of the triangular face adf in Fig.4.5(b) with respect to the triangular face abc. Therefore, one can write (A^), = (A^),. Using similar reasoning, Eqn.4.4 can be rewritten as VdÂ§f = (A-bed) /.V'fcd = {A-abc) fYked, VIhg = ( Afeed )/VÂ¿erf = (A abc)Ybed ^eih (A-6ed)rVi)ed (-^-abc) bed, 67 (a) (b) 68 (<0 (<1) Figuro 4.6. Different sot of control points at a subdivided level obtained by applying different subdivision matrices on a given sot of control points in a coarser mesh. 69 vsAi = (Abed)mvÂ¡ed = (Aa6e)mvÂ¿ed. (4.5) Combining Eqn.4.3 and Eqn.4.5. it can bo shown that ( Aabc) /. ( Aabc); vabc: iAabc) iiAabc) abe' (Aabc)r(Aabc)i vfl,6e: (Aabc)m(Aabc)iyabc (4-6) Lot x bo a point with barycentric coordinates (o^hcJ^hcy^hc) inside the trianÂ¬ gular face abc. When the initial mesh is subdivided, x becomes a point inside the triangular face bed with barycentric coordinates (alPd, ftled, 7Â¿ed). Another level of subdivision causes x to be included in the triangular face dgi with barycentric coorÂ¬ dinates fjg/. 'g â€¢)â€¢ Lot sJahc denote the j-th level approximation of the smooth triangular patch sabc in the limit surface corresponding to the triangular face abc in the initial mesh. Xow vÂ°he can be written as r r r ^ rjrt "V abc. [dr: ^.r; dr: â€¢ â€¢ â€¢: Â®j/; fyi/; d/; â€¢ â€¢ â€¢: bz, C: â€¢ â€¢ â€¢] where the subscripts x, y and 2 indicÃate the x, y and z coordinates respectively of the corresponding vertex position. The expressions for vÂ¿ed and vÂ¿gi can also be written dgi â€™ bhg 'VfÃih ghi 70 in a similar manner. Next, the matrix BÂ°he can be constructed as follows: r r r r The matrices Bled and B^ can also be constructed in a similar fashion. Xow sÂ°he(x), sa6c(x): an(l sa6c(x) can 4)0 written as SlbAx) = BL(X)VL> Slbc(x) = BL(X)Vld = BLd(X)(AÂ«te)iVL> SlhAx) = BdSi(x)Vrfsi = Bd9f(x)(Aa6e),VÂ¿ed = B^ÃxJÃAateJ^A^)^ (4.7) Proceeding in a similar way, the expression for j-th level approximation of snfoc(x), is given by j Sabc(x) = Bwm;(x) (Aabc)m â– â– â– (Aabc)Â¿(Aabc)ivabc = BÃvw(x)(AÃbc)Vabc = BtbrÃX)Vabc> (4â€˜8) where x is inside the triangular face uvw at level j (with an assumption that uvw is the triangular face in the middle with respect to its coarser level original triangular face in 71 the previous level), (A^) = {Aahc)m ... (Aabc),(Aabc)l and BÂ¿6e(x) = B{0l0(x)(A^). It may be noted that the sequence of applying (A^),. (AafIC)l, (Aafjc)r and {Aabc)m depends on the triangle inside which the tracked point x falls after each subdivision step. Finally, the local parameterization process can be completed by writing SÂ«,6e(x) = ( lim B^e(x))vÂ°6e = Bafcfxjv^. (4.9) j~>0O In the above equation, is the collection of basis functions at the vertices of vÂ°he. It may also be noted that the modified butterfly subdivision scheme is a staÂ¬ tionary subdivision process, and hence new vertex positions are obtained by affine combinations of nearby vertices. This guarantees that each row of the matrices (Aabc)p (Aabc)i, (Aa/,c)r and {Aabc)m sums to one. The largest eigenvalue of such maÂ¬ trices is 1 and therefore the limit in Eqn.4.9 exists. Xow, assuming the triangular face abc is the Avth face in the initial mesh, Eqn.4.9 can be rewritten as s*(x) = B/fe(x)v2 = B/feixJA/fep, (4.10) where p is the concatenation of the (x,y,z) positions of all the vertices in the initial mesh and the matrix A*, when post-multiplied by p, selects the vertices vÂ° controlling the k-th smooth triangular patch in the limit surface. If there are t vertices in the initial mesh and r of them control the Aâ€™-th patch, then p is a vector of dimension 31, Ak is a matrix of dimension (3?â€™, 31), and B*(x) is a matrix of dimension (3, 3?â€™). 72 Combining Eqn.4.2 and Eqn.4.10. it can bo shown that n s(x) = B^(x)A^)p = J(x)p. (4.11) k=1 where J, a matrix of dimension (3,31), is the collection of basis functions for the corresponding vortices in the initial mesh. The vector p is also known as the degrees of freedom vector of the smooth limit surface s. 4.2.2 Dynamics An expression of the limit surface obtained via modified butterfly subdivision process is derived in the last section. Xow a dynamic framework for the limit surface can bo derived using this expression. The derivation of the dynamic.1 model from this point is exactly similar in spirit as that of the dynamic.1 Catmull-Clark subdivision model presented in Section 3.2.4. The vortex positions in the initial mesh defining the smooth limit surface s are treated as a function of time in order to embed the modified butterfly subdivision model in a dynamic.1 framework. The velocity of this surface model can bo expressed as s(x, p) = J(x)p, (4.12) whore an ovcrstruck dot denotes a time derivative and x e SÂ°, 5*Â° being the domain defined by the initial mesh. As in the case of the dynamic.1 Catmull-Clark subdivision surfaces, the Lagrangian equation of motion (Eqn.2.1) is used to derive the dynamic modified butterfly subdivision surface model. 73 Lot /i bo the mass density function of the surface. Then the kinetic energy of the surface is T = ^ f /.Â¿(xjs2 (x)s(x) dissipation energy is F = \ [ 7'(x)sri (x)s{x)dx = ^p^Dp, (4.14) 2 Jxesn 2 whore D = /xe5n y(x)Ji (x)J(x) U = ^prKp, (4.15) whore K is the stiffness matrix of dimension (31 31) obtained by assigning various internal energies to a discretized approximation of the limit surface and is detailed in Section 4.3. Using the expressions for the kinetic, dissipation and potential energy in Eqn.2.1, the same motion equation as in Eqn.2.5 can be obtained. The generalized force vector 74 fp can bo obtained is a similar fashion described in Section 3.2.4 and is given by (4.16) 4.2.3 Multilevel Dynamics The initial mesh of the dynamic modified butterfly subdivision surface model can bo subdivided to increase the degrees of freedom for model representation. The situation is exactly similar to that of the dynamic Catmull-Clark subdivision surface model as described in Section 3.2.5 and a similar example is used for illustration. After one stop of modified butterfly subdivision, the initial degrees of freedom p (refer to Eqn.4.11 and Eqn.4.12) in the dynamic system is replaced by a larger number of degrees of freedom q, whore q = Bp. B is a global subdivision matrix of size (3s. 31) whoso entries are uniquely determined by the weights used in the modified butterfly subdivision scheme (see Section 4.1 for the weights). Thus, p, expressed as a function of q, can bo written as p = (BrB) 1Biq = Btq, (4.17) whore B^ = (BrB) B7. Therefore, Eqn.4.11 and Eqn.4.12 is modified as s(x) = (J(x)Bf)q, (4.18) and s(x,q) = (J(x)Bf)q (4.19) 75 Figuro 4.7. (a) An initial mesh, and (b) the corresponding limit surface. The domains of the shaded elements in the limit surface are the corresponding triangular faces in the initial mesh. The encircled vertices in (a) are the degrees of freedom for the corresponding element. respectively. The motion equation, explicitly expressed as a function of q, can be written as M(?q + D(?q + K(?q = f,, (4.20) whore M9 = fxe$i /i(x)(B^f J1 (x)J(x)BVix, 51 being the domain defined by the newly obtained subdivided mesh. The derivations of D^, and are similar. 76 4.3 Finito Element Implementation In the previous section, the smooth limit surface obtained via modified butterfly subdivision process is expressed as a function of the control vertex positions in its initial mesh; mass and damping distribution, internal deformation energy and forces are assigned to the limit surface in order to develop the corresponding physical model. In this section, the implementation of this physical model is detailed. It may be noted that even though the formulation of the dynamic framework for modified butterfly subdivision scheme is similar to that of Catmull-Clark subdivision scheme once the local parameterization is derived, the finite element implementation is totally different as the limit surface does not have any analytic expression in case of the modified butterfly subdivision scheme. In Section 4.2 it was pointed out that the smooth limit surface obtained by the recursive application of the modified butterfly subdivision rules can be represented by a set of smooth triangular patches, each of which is represented by a finite element. The shape (basis) function of this finite element is obtained by smoothing a hat function through repeated application of the modified butterfly subdivision rules. The number of finite elements in the smooth limit surface is equal to the number of triangular faces in the initial mesh as mentioned earlier (refer Fig.4.4 and 4.7). A detailed discussion on how to derive the mass, damping and stiffness matrices for these elements is presented next. These elemental matrices can be assembled to obtain the global physical matrices M, D and K, and a numerical solution to the governing second-order differential equation as given by Eqn.2.5 can be obtained 77 using finito element analysis techniques [42], The same example as in Section 4.2 (refer Fig.4.5) is used to develop the related concepts. The concept of elements along with the control vertices and their corresponding domains is further illustrated in Fig.4.7. Xow it will bo shown how to derive the mass, damping and stiffness matrices for the element corresponding to the triangular face abc in Fig.4.5. The derivations hold for any element in general. 4.3.1 Elemental Mass and Damping matrices The mass matrix for the element given by satÂ¡c (Eqn.4.9) can be written as Mabc= f /Â¿(xHB^x^jB^x^fix. (4.21) JxEsnhc However, from Eqn.4.9 it is known that the basis functions corresponding to the vertices in vÂ°he which are stored as entries in ~Bahc are obtained as a limiting process. Those basis functions do not have any analytic.1 form, hence computing the inner product of such basis functions as needed in Eqn.4.21 is a challenging problem. In Lounsbcry ct al. [53], an outline is provided on the computation of those inner products without performing any integration. In this dissertation, a different yet simpler approach is developed to solve this problem. The smooth triangular patch in the limit surface corresponding to the face abc in the initial mesh is approximated by a triangular mesh with 4J faces obtained after j levels of subdivision of the original triangular face a,be (each subdivision stop splits one triangular face into 4 triangular 78 faces). Then the mass matrix can be expressed as Mafic E /Ã(x){BÂ¿Ã)e(x)}i{BÂ¿Ã)e(x)}dx. (4.22) The j-th level approximation of the corresponding basis functions can be explicitly evaluated (refer Eqn.4.8 for an expression of BÂ¿he). An important point to note is that Eqn.4.8 involves several matrix multiplications and hence can be very expensive to evaluate. However, the matrix (A3abc)(= (Aabc)m ... (A^J^Aai,.),) in Eqn.4.8 encodes how vertices in the 2-neighborhood of the triangular face uvw at level j are related to the vertices in the 2-neighborhood of the triangular face abc in the initial mesh. In the implementation, how a new vertex is obtained from the contributing vertices in its immediate predecessor level is tracked. The information stored in (A3abc) can be obtained by tracking the contributions from level j to level 0 recursively. Thus the entries of (AJabc) can be determined without forming any local subdivision matrices and thereby avoiding subsequent matrix multiplications. By choosing a sufficiently high value of j. a reasonably good approximation of the elemental mass matrices is achieved. The computations involved in evaluating the integrals in Eqn.4.22 are eliminated by using discrete mass density function which has non-zero values only at the vertex positions of the j-th subdivision level mesh. Therefore, the approximation of the mass matrix for the element can be written as = E //(V'/H B'^Av'/)}' {B/if)r {v/)} i=l (4.23) 79 where k is the number of vertices in the triangular mesh with 4J faces. This approxiÂ¬ mation has been found to be very effective and efficient for implementation purposes. The elemental damping matrix can be obtained in a similar fashion. 4.3.2 Elemental Stiffness Matrix The internal energy is assigned to each element in the limit surface, thereby defining the internal energy of the smooth subdivision surface model. A similar approach as in the derivation of the elemental mass and damping matrix is taken and the internal energy is assigned to a j-th level approximation of the element. Three types of internal energy are used - tension, stiffness and spring energy. For the examples used throughout the paper, this energy at the j-th level of approxÂ¬ imation can be written as Eabc ~ EJabc â€” (EJahc)t + (EJahf,)H + (Tâ€™a6e).,p (4.24) where the subscripts t, st and sp denote tension, stiffness and spring respectively. The expression for the tension energy, which is essentially equivalent to the first order strain (membrane) energy [96], is Q 1 (4.25) where kt. is a constant, v/ and vj^, the /-th and m-th vertex in the j-th level mesh, are in the 1-neighborhood of each other, Q is the domain defined by all such vertex 80 pairs, and vJabc is the concatenation of the (x.y.z) positions of all the vertices in the j-th subdivision level of the triangular face abc in the initial mesh. Similarly, the expression for stiffness energy, which is equivalent to the second order strain (thin plate) energy [96], can be written as (Eibc)s, = ^wElv/^2vm+vn|2 z n = (Kibc) sMbc}: (4â€˜26) where vf, v^ and vÂ£ are the three vertices of a triangular face. The summation inÂ¬ volves three terms corresponding to each triangular face, and is over all the triangular faces in the mesh at the j-th level of subdivision. Finally, a spring energy term is added which is given by sp (hm)sp( I v? â€” V*? 1 v l m | f/m) | i i 1 v/ - vJm\ -E z n K (4.27) where (kim) is the spring constant, Q is the domain as in Eqn.4.25 and ('im is the natural length of the spring connected between v/ and v^. It may be noted that the entries in (K.3abc) depend on the distancÃe between the connected vertices and hence, (KÂ¿6<.) , unlike other elemental matrices, is a function of time which needs to be recomputed in each time step. 81 Combining the expressions for tension, stiffness and spring energy, it can be shown that EL = Â¿Kfc/WKL), + MKÃ + (Ki,Jsâ€ž}M J = Â¿MÃTfKiJKiJ = ^vll'hÃAÃ^j'hKivXAi^JÃlvl}, (4.28) where (AJabc) and vÂ°he are same as in Eqn.4.8. Therefore, the expression for the elemental stiffness matrix is given by Kaâ€ž = (A{hf{K{lx)(A{h,:). (4.29) It may be noted that the matrix multiplications for constructing K.abc are avoided in the implementation by following the same technique described in Section 4.3.1. 4.3.3 Other Implementation Issues The techniques of applying synthesized forces on the smooth limit surface obÂ¬ tained via modified butterfly subdivision process are similar to those described in Section 3.3.4 in the context of dynamic Catmull-Clark subdivision surface model. The techniques of model subdivision and discrete dynamic equation derivation are also the same. 82 4.4 Generalization of the Approach The proposed approach of deriving the dynamic.1 framework for modified butterÂ¬ fly subdivision scheme is generalized for other interpolator)- subdivision schemes in the next chapter. Chapter 5. CHAPTER 5 UNIFIED DYNAMIC FRAMEWORK FOR SUBDIVISION SURFACES Dynamic.1 framework for specific.' subdivision schemes was presented in the last two chapters. In Chapter 3, Catmull-Clark subdivision scheme, a representative of the approximating subdivision schemes, is embedded in a physics-based modeling enÂ¬ vironment. In Chapter 4, a dynamic.' framework is provided for the modified butterfly subdivision scheme, a popular interpolatory subdivision technique. In this chapter, a unified approach is presented for embedding any subdivision scheme in a dynamic.' framework. 5.1 Overview of the Unified Approach The key concept of the unified approach is the ability to express the smooth limit surface generated by a subdivision scheme as a collection of a single type of finite elements. The type of this finite element depends on the subdivision scheme involved. For example, the limit surface generated by the Catmull-Clark subdivision scheme can be expressed as a collection a quadrilateral finite element patches. This approach differs form the one taken in Chapter 3 where the limit surface was a collection of normal elements (corresponding to the quadrilateral bicubic B-spline patches away from the extraordinary points) and special elements (corresponding to 83 84 the n-sided patches near extraordinary vertices of degree n). This concept will be further elaborated in the next few sections. The unified approach adopts two different strategies depending on the subdiviÂ¬ sion scheme involved. One strategy is for the approximating schemes, whose limit surface is some type of B-spline surface away from the extraordinary points, and the other is for the interpolator)- subdivision schemes, where the limit surface does not have any analytical expression. It may be recalled that recursive subdivision is a method for smoothing polyhedra, and hence corresponding to each n-sided face in the control mesh, there would be a smooth n-sided patch in the limit surface in general. For example, the control mesh (after at most one subdivision step) of the Catmull-Clark subdivision scheme consists of quadrilateral faces, which when smoothed through subdivision lead to quadrilateral patches in the limit surface (see Fig.5.1(b)). In the ease of approximating subdivision schemes, the faces which do not contain any extraordinary vertex lead to spline patches with analytic.1 expressions. On the other hand, faces which have one extraordinary vertex, lead to patches whose analytic.1 expressions are difficult to determine. Continuing the example with the Catmull-Clark subdivision scheme, the faces without extraordinary vertices lead to quadrilateral bicubic B-spline patches in the limit, whereas the faces with one extraorÂ¬ dinary vertex lead to quadrilateral patches whose analytic.1 expressions are difficult to obtain. In Chapter 3, n such adjacent patches corresponding to an extraordinary vertex of degree n are effectively combined together to obtain an expression for the reÂ¬ sulting n-sidod patch (see Fig.5.1(a)). Recently, Stain [90, 91] has introduced schemes 85 for exactly evaluating the limit surface, even near the extraordinary points, for apÂ¬ proximating subdivision schemes. Analytic expressions for the patches resulting from smoothing faces with an extraordinary vertex can be obtained using these schemes. Therefore, the limit surface can be expressed as a collection of a single patch type, and consequently a single type of finite element can be used to provide the dynamic framework for the approximating subdivision schemes. This unified framework for approximating subdivision schemes is fully worked out in this chapter for Catmull- Clark and Loop subdivision schemes and a general outline is also presented on how to carry out the same strategy for other approximating subdivision schemes. The limit surface resulting from an interpolatory subdivision scheme does not have an analytic expression in general, and hence a strategy similar to the one adopted in Chapter 4 needs to be used. An outline of the strategy to be used for interpolatory subdivision schemes is also presented in this chapter. 5.2 Unified Dynamic Framework for Catmull-Clark Subdivision Surfaces A systematic formulation along with the implementation details of the unified dynamic framework for Catmull-Clark subdivision surfaces is presented in this secÂ¬ tion. The key difference between the framework developed in Chapter 3 and the one presented here is the representation of the limit surface, which leads to different types of finite elements used for developing the dynamic.' framework. This is illustrated with a schematic diagram in Fig.5.1. 86 (a) (b) Figuro 5.1. A control mesh with an extraordinary vortex of degree 5 and the correÂ¬ sponding limit surface : (a) using the concepts developed in Chapter 3, whore the limit surface consists of quadrilateral normal elements and a pentagonal special eleÂ¬ ment; (b) using the unified concept developed in this chapter, whore the limit surface consists of one single typo of quadrilateral finite element. 87 Figuro 5.2. In Catmull-Clark subdivision, each non-boundary quadrilateral face in the control mesh has a corresponding quadrilateral patch in the limit surface : (a) control mesh, (b) limit surface. Following the concepts developed in Chapter 3, the limit surface of the control mesh shown in Fig.5.1. consists of quadrilateral bicubic B-splinc patches correspondÂ¬ ing to the faces marked hiâ€™ (faces with no extraordinary points), and a pentagonal patch corresponding to the faces marked â€™sâ€™ (faces having one extraordinary vertex of degree 5) (Fig.5.1(a)). However, in this section, it will be shown that the entire limit surface can be expressed as a collection of quadrilateral patches as illustrated in Fig.5.1(b) using the schemes proposed by Stam [90]. Next, the local parameterization of the limit surface is described in order to develop the unified dynamic.' framework. 5.2.1 Local Parameterization As mentioned earlier, the control mesh (after at most one subdivision step) for the Catmull-Clark subdivision scheme consists of quadrilateral faces which lead to quadrilateral patches in the limit surface. For the sake of simplicity, it is assumed that each face has at most one extraordinary vertex. If this assumption is violated, then one more subdivision step needs to be performed on the current control mesh in order to obtain a new control mesh on which the following analysis can be carried out. The number of quadrilateral patches in the limit surface is equal to the number of non-boundary quadrilateral faces in the control mesh (Fig.5.2). Therefore, the smooth limit surface s can be expressed as n s = 5>, (5.1) 1=1 where n is the number of non-boundary faces in the control mesh and S; is the smooth quadrilateral patch corresponding to the /-th non-boundary quadrilateral face in the control mesh. Each of these quadrilateral patches can be parameterized over the corresponding non-boundary quadrilateral face in the control mesh. However, since a quadrilateral face can easily be parameterized over a [0, l]2 domain, each quadrilateral patch is locally parameterized over the domain [0, l]2. The non-boundary quadrilateral faces are of two types : (a) faces having no extraordinary vertices (dubbed as â€œregularâ€ faces in Section 3.2.1, marked as k in Fig.5.2(a)) and (b) faces with one extraordinary vertex (dubbed as â€œirregularâ€ faces in Section 3.2.2, marked as ( in Fig.5.2(a)). If there are m regular and n â€” m irregular faces, then Eqn.5.1 can be rewritten as rn nâ€”m s = Es?+E^ (5-2) Â¿=i j=i where s, is the quadrilateral patch corresponding to the ?!-th regular face and sj is the quadrilateral patch corresponding to the j-th irregular face. The quadrilateral patch in the limit surface corresponding to each regular face is a bicubic B-spline patch, which is defined over [0, l]2. The set of control vertices defining this bicubic B-spline patch can be obtained using the adjacent face informaÂ¬ tion (refer to Section 3.2.1 and Fig.3.1 in Chapter 3). Therefore, the quadrilateral patches in the smooth limit surface corresponding to the regular faces in the conÂ¬ trol mesh can be easily expressed analytically, which are essentially bicubic B-spline patches defined by 16 control vertices over a [0, l]2 domain. The analytic.1 expression for the quadrilateral patch corresponding to the regular face i is given by S'f = Jfc(M5w)Pi = (Jft('M, e)Aj)p = 3i(n. r)p. (5.3) where 0 < u. v < 1, Jh(u,v) is the collection of the bicubic B-spline basis functions, p,Â¿ is the concatenation of the 16 control vertex positions defining the bicubic B-spline patch, A,Â¿ is a selection matrix which when multiplied with p, the concatenation of 90 all the control vortex positions defining the smooth limit surface, selects the correÂ¬ sponding sot of control vortices, and JÂ¿(m, v) = J<,(â– Â«, â€>Aâ€ž The analytic.1 expression of the quadrilateral patches corresponding to the irÂ¬ regular faces in the control mesh was difficult to derive, and hence an alternative approach was taken in Mandal ot al. [57, 60] and Qin ot al. [76] as well as in Chapter 3. However, very recently an efficient scheme for evaluating Catmull-Clark subdiviÂ¬ sion surfaces at arbitrary parameter values was proposed by Stam [90]. The proposed approac.ii, involving eigen-analysis of the subdivision matrix, loads to an analytic.' exÂ¬ pression of a quadrilateral patch parameterized over an irregular face. Following the scheme developed by Stam [90], the quadrilateral patch corresponding to the irregular face j is given by s, = â€¢!â€¢'dP, = (Jd*(Â«5w)A/)P = Jj(u,v)p, (5.4) whore 0 < u. v < 1 as before. Jdk(u,v) is the collection of basis functions for the corresponding quadrilateral patch in the smooth limit surface. The subscript <4 is used to denote the fact that the irregular face has an extraordinary vortex of degree k. The detailed derivation and the analytic.1 expressions of those basis functions involving the eigenvalues and eigenvectors of the subdivision matrix can bo found in Stam [90]. The rest of the notations used in Eqn.5.4 have the usual moaning : pj is the concatenation of the 2A: + 8 control vertices defining the quadrilateral patch in the 91 Figuro 5.3. (a) The marked 16 control vortices define the shaded quadrilateral patch associated with the shaded regular face in the control mesh; (b) the marked 14 control vortices define the shaded quadrilateral patch associated with the shaded irregular face in the control mesh. limit surface, p is the concatenation of all the control vortex positions defining the smooth limit surface. Aj is a selection matrix which when multiplied with p selects the corresponding sot of control vortices, and Jj(Â«, v) = J4 (Â«, v)Aj. It may bo noted that the number of control vortices in the initial mesh defining a quadrilateral patch in the smooth limit surface is 2k + 8, whore k = 4 in case the associated quadrilateral face in the control mesh is regular, or k = degree of the extraordinary vortex if the associated quadrilateral face is irregular. For example, the shaded quadrilateral patch is associated with the shaded regular face in Fig.5.3(a), and the 16 control vortices defining this patch (which is actually a bicubic B-splinc patch) are marked. Similarly, the shaded quadrilateral patch is associated with the 92 shaded irregular face in Fig.5.3(b), and the 14 control vertices defining this patch are highlighted. Now an expression of the smooth limit surface can be easily formulated. Using Eqn.5.2, 5.3 and 5.4, it can be shown that rn nâ€”m s = 5ZjÃp+5Zjjp Â¿=i j=i m nâ€”m = (EjÃ+ E Ji)p Â¿=i j=i = Jp, (5.5) where J = i J; + Z)"=r J?)- ^ote that even though the initial mesh serves as the parametric domain of the smooth limit surface, each quadrilateral face in the initial mesh and consequently the smooth limit surface can be defined over a [0, l]2 domain. 5.2.2 Dynamics The expression of the limit surface as given by Eqn.5.5 is same as the one derived in Chapter 3 (Eqn.3.15). However, the contents of the matrix J is totally different in two cases. Nevertheless, the dynamic's of the limit surface can be formulated using the same symbolic.1 expressions (which, when actually evaluated will lead to different expressions depending on the contents of the matrix J). Therefore, the symbolic.1 expression of the motion equation remains the same as in the earlier formulation of the dynamic.1 Catmull-Clark subdivision surface model. 5.2.3 Finite Element Implementation In the unified dynamic.1 framework, the smooth limit surface obtained via Catmull- Clark subdivision process is expressed as a collection of quadrilateral patches. Each 93 quadrilateral patch in the limit surface is considered as a finite element. Therefore, the limit surface under the unified framework consists of a single type of finite elÂ¬ ements instead of two different types of elements as in Mandal ot al. [57, 60] and Qin ot al. [76]. The mass, damping and stiffness matrices for those elements along with the generalized force vector can bo evaluated analytically, provided the mateÂ¬ rial properties (like mass, damping, rigidity and bonding distributions) have analytic.1 expressions. Those distribution functions are assumed to bo constant in most (.'ases. Xow, the expressions of the mass, damping and stiffness matrices for a quadrilateral element which is a bicubic B-splinc can bo written as and (5.6) D, 1 rl 0 JO qjl Jtidudv, (5.7) Ke [ [ (Â«lliÃJh)'Â»}1 {(J/Â¡)a} + Â«'22 { ( ),, } 7 { (J ft),,, } + /^l 1 { (J 6) MM } 7 { ( J 6)Â« Â« } Jo Jo +A2{(J/>)m-<.}:/ {(J ft)Â«} + /^{(Jfi)?â„¢}2 {(J b)w})dudv (5-8) respectively, whore Jh is the bicubic B-splinc basis matrix, /./,(Â«, v) is the mass density, q(Â«, v) is the damping density, a Â¡Â¡{a. r) and Â¡Â¡Â¡{o. r) are the tension and rigidity functions respectively. The subscript a and v denote partial derivatives with respect to u and v respectively. The subscript e is used to indicÃate elemental matrices which 94 aro of size (16,16). The expression for the corresponding generalized force vector is (5.9) The mass, damping and stiffness matrices for the quadrilateral elements which are not bicubic B-splincs (corresponding to the irregular faces) can bo expressed analytically as well simply by replacing the matrix J<, in Eqn.5.6, 5.7 and 5.8 by the matrix J^ (refer to Eqn.5.4), whore k denotes the degree of the extraordinary vortex associated with the corresponding irregular face. Those elemental matrices are of size (2k + 8, 2k + 8). The generalized force vector for those elements can also bo determined in a similar fashion. It may bo noted that the limits of integration need to bo chosen carefully for elemental stiffness matrices as the second derivative diverges near the extraordinary points for Catmull-Clark subdivision surfaces. The elemental matrices combined together, either explicitly or implicitly, give the global matrices. Similarly, elemental generalized force vectors can bo combined together to obtain the global generalized force vector. The motion equation is discretized and solved following similar techniques described in Chapter 3. It may bo noted that oven though an analytical expression for a quadrilateral element in the limit surface which is not a bicubic B-splinc exists, it is cumbersome to actually evaluate the elemental matrix expressions. Numerical integration using Gaussian quadrature may bo used to obtain approximations of those elemental maÂ¬ trices. However, in this dissertation, an approach similar to the dynamic modified 95 butterfly subdivision model presented in Chapter 4 is taken for implementation purÂ¬ poses. An approximation of the smooth limit surface is obtained by subdividing the initial control mesh j times, and a spring-mass system is developed on this j-th approximation level in a similar fashion as in Section 4.3. The physical matrices of this system are used as approximations to the actual physical matrices. These approximations have been found to be very efficient for implementation purposes. 5.3 Unified Dynamic Framework for Loop Subdivision Surfaces Loopâ€™s subdivision scheme starts with a triangular control mesh and generates a smooth surface with triangular patches in the limit. It is an approximating subdiviÂ¬ sion scheme which generalizes recursive subdivision schemes for obtaining C2 quartic triangular B-spline patches in a regular setting. In each step of Loop subdivision, each (non-boundary) triangular face is refined into 4 triangular faces using the following rules : â€¢ For each (non-boundary) vertex V of degree n, a new vertex point is introduced. The position of this newly introduced vertex point is given by Q:(")v+vi+-+v"; where v is the position vector of vertex V, Vi,..., vn are the vertex positions of the n vertices connected to vertex V. a(n) = and ft(n) = | â€” (?>+2cns(2n / n))2 64 ' â€¢ For each (non-boundary) edge E, a new edge point is introduced. Let E be the connecting edge between vertices \\ and V2, and is shared by faces ip and F2. If Fi and F2 have vertices V'iy and V>2 respectively (apart from \\ and V2), then the position of the newly introduced edge point is given by 3(Vi+V2)+Vf1+vf2 _ 96 Figuro 5.4. (a) The control polygon with triangular faces; (b) mesh obtained after one subdivision stop using Loopâ€™s subdivision rules. whore vl5 v2. vFl and vFa are the position vector of the vortex \\, V'2, VFl and Vt\Â¿ respectively. â€¢ Xow edges are formed by connecting each now vortex point to the now edge points corresponding to the edges incident on the old vortex, and by connecting each now edge point to the now edge points of the other edges in the two faces which shared the original edge. â€¢ Xow faces are defined as faces enclosed by the now edges. Examples of refining an initial mesh using Loopâ€™s subdivision rules are shown in Fig.5.4 and 5.5. Those subdivision rules ensure tangent piano continuity of the limit surface oven in a irregular sotting, i.o., when the triangular control mesh has 97 extraordinary vertices whose degree is not equal to 6. The limit surface shown in Fig.2.1(d) is actually obtained by subdividing the control mesh shown in Fig.2.1(a) using Loop subdivision rules. A detailed discussion on how to obtain positions and normals in the smooth limit surface generated by the Loop subdivision scheme can be found in Section 4.2 of Hoppeâ€™s thesis [39]. 5.3.1 Local Parameterization The limit surface obtained via Loopâ€™s subdivision scheme can be locally paÂ¬ rameterized easily. This local parameterization scheme is very similar in nature to the one described for Catmull-Clark subdivision scheme in Section 5.2.1. For Loopâ€™s scheme, the smooth limit surface consists of triangular patches and the number of these triangular patches is same as the number of non-boundary triangular faces in the control mesh. Therefore, each of the triangular patch in the limit can be locally parameterized over the corresponding triangular face in the control mesh. In may be noted that each triangular face in the control mesh can be parameterized over a triangular domain whose vertices are located at (0,0), (0,1) and (1,0), and hence each triangular patch and consequently the smooth limit surface can be defined over this domain (refer Fig.5.6). The triangular patches in the smooth limit surface are of two types. For a nonÂ¬ boundary triangular face in the control mesh with no extraordinary vertices (i.e., with three vertices of degree 6), the corresponding triangular patch in the limit surface is a particular type of triangular B-spline (the three-direction quartic box spline) whose analytic.1 expression is easy to obtain. This triangular B-spline patch is controlled by 98 Figuro 5.5. An initial mesh and the corresponding limit surface obtained using Loopâ€™s subdivision rules. The domains of the shaded triangular patches in the limit surface are the corresponding triangular faces in the initial mesh. The encircled vertices are the control vertices for the corresponding triangular patch in the limit surface. 99 Figuro 5.6. Each triangular patch in the limit surface can bo associated with a nonÂ¬ boundary triangular face in the initial mesh, which in turn can bo parameterized over a triangle with vortices at (0, 0), (1.0) and (0,1). 100 12 vortices as shown in Fig.5.5 (the set of enclosed vertices in the left hand side). The triangular patch in the limit surface corresponding to a non-boundary triangular face in the control mesh with one extraordinary vertex can also be expressed analytically using the schemes proposed by Stain [91]. This triangular patch is controlled by n + 6 vertices in the control mesh where n is the degree of the extraordinary vertex. The set of control vertices for a triangular patch of the later type is shown in the right hand side of Fig.5.5. Therefore, each triangular patch in the limit surface can be expressed analytically, and an expression of the limit surface similar to Eqn.5.5 can be obtained. 5.3.2 Dynamics Once an expression for the limit surface obtained via Loopâ€™s subdivision is obÂ¬ tained, the dynamic model can be developed following an exactly similar procedure described for Catmull-Clark subdivision scheme in Section 5.2.2. The motion equaÂ¬ tion of the dynamic Loop subdivision model can also be derived in a similar fashion. 5.3.3 Finite Element Implementation The implementation of the dynamic framework for Loop subdivision scheme usÂ¬ ing the unified approach treats each triangular patch in the limit surface as a finite element. Each triangular patch has an analytic expression, and hence the elemental physical matrices and the generalized force vector can be derived analytically. The derivation of an exact expression for elemental matrices is cumbersome for the triÂ¬ angular patches corresponding to the triangular faces with an extraordinary vertex, and numerical integration using Gaussian quadrature may be used for deriving an 101 approximation. However, a practical alternative for implementation is to subdivide the control mesh j times using Loopâ€™s subdivision rules, and to build a spring-mass system on this j-th level approximation as has been done for the dynamic modified butterfly subdivision model in Section 4.3. The physical matrices of this spring-mass system provide an approximation of the original physical matrices, and it works well in practice. 5.4 A General Outline of the Framework for Approximating Subdivision Schemes The unified approach presented to provide a dynamic framework for Catmull- Clark and Loop subdivision schemes can be generalized easily. This approach involves three steps which are as follows : 1. The limit surface obtained via an approximating subdivision scheme can be expressed as a collection of smooth patches which can be locally parameterized over a corresponding face in the control mesh. Each patch is n-sided if it is locally parameterized over a n-sided face. Analytic expressions for each of these patches can be derived even in the presencie of extraordinary vertices in the control mesh, and hence an expression of the limit surface can be obtained. 2. Once an expression of the limit surface is obtained, the dynamic framework can be developed by treating control vertex positions as a function of time. The corresponding motion equation can be derived. 102 3. Each patch in the limit surface is treated as a finite element in implementation. The elemental mass, damping and stiffness matrices along with the generalÂ¬ ized force vector can be obtained by either analytic.1 or numerical integration. Alternatively, the control mesh can be subdivided j times to obtain an approxiÂ¬ mation of the smooth limit surface, and a spring-mass system can be developed on this approximation mesh. The physical matrices of this system provide an approximation to the original physical matrices and works well in practice. 5.5 A General Outline of the Framework for Interpolatory Subdivision Schemes Most of the interpolatory subdivision schemes are obtained by modifying the butterfly subdivision scheme [30]. Therefore, the framework developed for the modiÂ¬ fied butterfly subdivision scheme in Chapter 4 is pretty general and can be used for other interpolatory subdivision schemes as well. The only difference is that the basis functions as well as the set of control vertices for a patch in the limit surface depend on the chosen interpolatory subdivision rules. It may also be noted that unlike the approximating schemes, the physical matrices can not be obtained analytically as the basis functions corresponding to interpolatory subdivision schemes do not have any analytic.1 expressions in general. Even though these matrices can be obtained via numerical integration, the spring-mass system developed in Chapter 4 is preferred for implementation purposes due to efficiency reasons. CHAPTER 6 MULTIRESOLUTIOX DYNAMICS The dynamic.' framework developed for subdivision surfaces allows the users to directly manipulate the smooth limit surface by applying synthesized forces. In any subdivision scheme, an initial (control) mesh is refined using specific subdivision rules to obtain a smooth surface in the limit. To develop the dynamic.' framework, this smooth limit surface is parameterized over the domain defined by the initial mesh and hence, the limit surface can be expressed as a function of the initial mesh. The users apply synthesized forces on the smooth limit surface which is transferred back on the initial mesh via a transformation matrix. The initial mesh evolves over time in response to the applied forces, and consequently the smooth limit surface deforms to obtain an equilibrium position where all forces are balanced. As noted earlier, even though various types of forces can be applied on the limit surface to obtain a desired effect, the possible shapes that can be obtained via evolution is directly related to the number of control vertices present in the initial mesh. The concept of multilevel dynamic's was introduced earlier in order to have varyÂ¬ ing number of control vertices in the initial mesh, and a wide range of shapes with arbitrary topology can be modeled within the dynamic.' framework. The reader is 103 104 black box to the user Figuro 6.1. Schematic block diagram of the multilevel dynamic's approach. 105 referred to Section 3.2.5 and Section 3.3.6 of this dissertation for the details of multiÂ¬ level dynamics in the context of dynamic Catmull-Clark surfaces, and to Section 4.2.3 for the dynamic.' modified butterfly subdivision scheme. The concept of multilevel dyÂ¬ namics is illustrated with block diagrams in Fig.6.1. This multilevel dynamics can be considered as a subdivision surface-based eoarse-to-fine modeling framework and can be summarized as follows. The user starts with a smooth limit surface which has a very simple initial mesh with few control vertices. This smooth surface is deformed by applying synthesized forces so that the limit surface at equilibrium would look like the final desired shape but without the details in it. Then, the number of control vertices in the initial mesh is increased by replacing the initial mesh at equilibrium by another one obtained via one subdivision step on the old initial mesh, and the old initial mesh is discarded. Both of these old and new initial mesh represent the same limit surface, but the latter has more control vertices. Xow, this new initial mesh, and consequently the smooth limit surface, can be deformed to obtain a shape at equilibrium which has more details. This process is repeated till the deformed smooth surface has all the desired details. The limitation of the multilevel dynamic's approach is that once a finer resolution is chosen, the modeler can not opt for a lower resolution as the dynamic's is defined on the current initial mesh. There is no way of having the dynamic's defined on a simpler initial mesh, at the same time preserving the already obtained details in the model within the multilevel dynamic's approach. This is potentially a severe restriction. For example, let us imagine the scenario depicted in Fig.6.2. The modeler has recovered 106 (a) Shape recovery ca Q O initial shape recovered global shape with few degrees of freedom recovered detailed shape with large degrees of freedom (b) Editing the recovered shape : Global bending Multilevel dynamics approach formulate dynamics on the current control mesh which has large degrees of freedom, bend the entire detailed shape. (time consuming, difficult) Multiresolution dynamics approach formulate dynamics on a coarser level of the control mesh with few degrees of freedom, bend the global shape, and then add back the details. (fast, easy) + details! (static)1 Figuro 6.2. Multilevel dynamics vs. multiresolution dynamics. 107 a long straight pipe-like shape with lots of detail by synthesized force application on a smooth limit surface. This smooth limit surface initially had a simple initial mesh with few vertices, but the current initial mesh after many model subdivision steps has large number of control vertices. Xow, if the modeler wants to bend this straight pipe-like shape, the synthesized forces applied on the smooth limit surface need to deform an initial mesh with a large number of control vertices. It would have been much easier and faster if a lower resolution version of the current initial mesh could be deformed with the details being added back when the shape has bent to the desired extent in response to the applied synthesized forces. Also, it has been pointed out in Section 2.5 that the dynamic framework can integrate shape recovery and shape modeling in a unified framework where the recovered shape can easily be edited as well. However, if the modeler wants a global change in the recovered shape, a lower resolution control mesh (than the one obtained via shape recovery process) may be required, and the details need to be preserved at the same time. A multiresolution representation of the initial mesh is proposed in this chapter to solve the above-mentioned problem. At equilibrium, an initial mesh is subdivided to obtain an initial mesh with more control vertices (degrees of freedom). Instead of developing the dynamic's on this newly obtained initial mesh as in the multilevel dynamic's approach, the dynamic's is developed on a representation which views the newly obtained initial mesh as the previous initial mesh plus detail (wavelet) coÂ¬ efficients needed to get the current initial mesh (see Fig.6.3). This is essentially developing the dynamic's on a multiresolution representation of the evolving initial 108 ( 3 control vertices) ( 3 control vertices, 3 detail coefficients) (b) Multiresolution approach Figure 6.3. Representation of the degrees of freedom in multilevel dynamic's and multiresolution dynamic's approach. 109 mesh which has undergone model subdivision step(s) to increase the degrees of freeÂ¬ dom. It may be noted that both the multilevel and the multiresolution approach have same degrees of freedom to represent the initial mesh obtained after a model subdivision step, but the degrees of freedom for the multilevel dynamic's approach are the control vertex positions in the newly obtained mesh whereas, the degrees of freeÂ¬ dom for the current approach are the control vertex positions in the previous initial mesh and the detailed coefficients necessary to obtain the current initial mesh from the previous one. The multiresolution approach has the benefit that the modeler can opt for a lower resolution initial mesh later, on which the dynamic's can be defined, at the same time preserving the detailed coefficients of the initial mesh on which the dynamic's is currently defined. This concept will be detailed further in later sections, but first an overview of the multiresolution analysis is provided so that the reader can easily follow the rest of the material presented in this chapter. 6.1 Overview of Multiresolution Analysis and Wavelets The basic.' idea of multiresolution analysis is to decompose a complicated function into a lower resolution version along with a set of detailed coefficients (also known as wavelet coefficients) necessary to recover the original function. Multiresolution analysis and wavelets have widespread applications in diverse areas like signal analysis [55, 81], image processing [26, 56], physics [2], numerical analysis [7], computen- vision [48] and computen- graphic's [6, 13, 16, 17, 31, 32, 35, 45, 50, 53, 67, 68, 70, 85, 86, 104, 110]. The specific areas in computer graphics that involve multiresolution analysis and wavelets include, but not limited to, global illumination [16, 17, 35, 85], 110 curvo, mesh and imago editing [6, 32, 110], video processing [31], surface viewing [13], surface interpolation [70], creating surfaces from contours [67, 68], animation control [50], polyhedral compression [53], modeling [45, 104] and representing functions on a sphere [86]. Various applications of wavelets in computer graphic's are detailed in Stollnitz ot al. [92], The idea of multircsolution analysis is explained next with a simple example. Let p-; be a vector containing functional values of some arbitrary function at n discrete points. A lower resolution representation of the function using m (m < n) functional values can be obtained from pJ by doing certain weighted averages of the n functional values stored in pT This is essentially a low pass filtering followed by down-sampling, and the entire operation can be expressed as pJ'-1 = AJpJ, (6.1) where pJ'-1 is the 7?t-valued vector representing a lower resolution version and the matrix AJ is of size (m, n) and implements the low pass filter along with the down- sampler. The lower resolution pJ'-1 has fewer functional values than p7. and hence some amount of detail present in p7 is lost due to the low pass filtering process. If the low pass filter A7 is chosen appropriately, it is possible to capture the lost detail by high pass filtering followed by a down-sampling of the original functional values stored in Ill p7. This operation can be expressed as qJ_1 = B7p7, (6.2) where q7_1 is a (n â€” m)-valued vector representing detailed coefficients necessary to recover p7 from p7_1. The matrix B7 is of size (n â€” m, n) and implements the high pass filter along with the down-sampler. The high pass filter B7 is related to the low pass filter AT These two filters, A7 and B7. are known as analysis filters and the process of splitting a high resolution vector p7 into a low resolution vector pJ_1 and a vector qJ_1 storing detail coefficients is known as decomposition. The original vector p7 can be reconstructed from the vectors pJ_1 and qJ_1 if the synthesis filters are chosen correctly. This is called the reconstruction process, which can be expressed as pi _ pipi 1 + Qlql 1, (6.3) where PJ is a refinement matrix of size (n. m) and QJ is a perturbation matrix of size (n.ni â€” n). The refinement matrix P; encodes the rules for obtaining a vector of larger size from a given vector and the perturbation matrix QJ encodes how to obtain a perturbation of (pJ â€” PJpJ-1) from the given detailed coefficient vector qJ_1. The matrices P; and Q; are collectively (.'ailed synthesis filters, and are related to the analysis filters. 112 Figuro 6.4. The filter bank. The process of decomposition can be continued recursively. For example, p7 is decomposed into a lower resolution part p7_1 and a detail part q7-1. Then, p7_1 can be expressed as a lower resolution part p7-2 and another detail part q7-2. This recursive process is depicted in Fig.6.4 and is known as filter bank. The original vector is decomposed into a hierarchy of lower resolution parts p7_1. p7-2..... pÂ° and detail parts q7_1. q7-2..... qÂ°. The original vector p7 can be recovered from the sequence PÂ°: qÂ°: q1: â€¢ â€¢ â€¢: qJ'-2: qJ_1. This sequence has the same size as that of the original vector and is known as the wa.velet transform, of the original vector. The analysis and synthesis filters are designed in such a fashion that the low resolution versions are good approximations of the original function in a least square sense. The decomposition and reconstruction processes should have time complexity 0(n), where n is the size of the vector being decomposed or reconstructed. A deÂ¬ tail (wavelet) coefficient value should also be related to the error introduced in the approximation when that particular coefficient is set to zero. 113 Multiresolution analysis is a framework for developing these analysis and synÂ¬ thesis filters. It involves derivation of a sequence of nested linear spaces Vo C V1 C V2 C ... such that the resolution of the functions contained in some space Vj inÂ¬ creases with increasing j. Also, there exists an orthogonal complement space 11 1 for each \ 1. j = 1. 2.... such that V7'-1 Â© 11 1 = \ i.e.. the linear space V'J_1 and its orthogonal complement space 11 1 together span the linear space Vj. The inner product between any two functions at some level j. j = 0,1. 2,... needs to be defined in order to derive the orthogonal complement space. Let 4>[. 4>2, ..., be a set of basis functions spanning the linear space Vj. These basis functions are also (.'ailed scaling functions for level j. Xow, V'J-1 C Vj and hence the basis functions |_\ can be expressed as a linear combination of the basis functions than span the linear space Vj. This refinability of scaling functions is used to construct the refinement matrix PJ, which should satisfy the expression 1 = &Pj, (6.4) where (fiff1,.... & = [(fr[, (fy,..., (fy], and PJ is the (n, m) reÂ¬ finement matrix introduced earlier (Eqn.6.3). Similarly, let L^-1. ..., be a set of basis functions that span the linear space 11 1. These basis functions, also known as wavelets at level j â€” 1, together with the basis functions of linear space V'i-1 form a basis for the linear space Vj. Next, the perturbation matrix Q; can be 114 constructed such that it satisfies the expression yj-i = qjqj (6.5) where fit7 1 = [Ap1, A^1, â– â– â– , â€™tpn-m], and Q; is the (n, n â€” m) perturbation matrix introduced in Eqn.6.3. A more compact expression may be obtained by combining Eqn.6.4 and 6.5, which can be written as [&-1 | = & [PJ | QJ]. (6.6) The analysis filters AJ and BJ should satisfy the inverse relation [&-1 | AJ W Both the matrices [PJ | QJ] and are of size (n, n) and satisfy the relation [PJ I QJ] (6.8) 6.2 Multiresolution Analysis for Surfaces of Arbitrary Topology Classically, the multiresolution analysis was developed on infinite domains such as real line 5ft and plane 5ft2 [22, 23]. Infinite domains are spatially invariant and hence a single basis function at the coarsest resolution can be dilated and translated to form the basis functions at higher resolutions. However, many applications need multiresolution analysis on bounded intervals and techniques for imposing boundary 115 constrains have also boon dorivod [19, 79]. Tho idoa of generalizing multirosolution analysis on arbitrary manifolds was first introduced by Lounsbory ot al. [52, 53], and was further improved by Stollnitz ot al. [92] using tho concepts of lifting scheme [93]. In this dissertation, tho multirosolution schemes dorivod by Stollnitz ot al. [92] for surfaces of arbitrary topology will bo adopted to develop tho multirosolution dynamic.1 framework for subdivision surfaces. Multirosolution analysis using wavelets can bo categorized into throe typos - orthogonal [22, 55], somiorthogonal [18] and biorthogonal [20, 93]. A multirosolution scheme has orthogonal wavelets if tho wavelets are orthogonal to one another, and every wavelet is orthogonal to every coarser scaling function. It is difficult to conÂ¬ struct orthogonal wavelets that have local support (i.o., non-zero over a small section of tho domain). Locally supported wavelets are important as they load to sparse synthesis and analysis filters which in turn load to linear time complexity in vector size. Wavelets with local support can bo constructed by relaxing tho orthogonality constraint. If tho wavelets are orthogonal to each other within one resolution but not across different resolutions, then they are (.'ailed somiorthogonal wavelets. In a biorthogonal sotting, tho orthogonality constraint is dropped whore 11 1 is some (and not orthogonal) complement of V'J_1 in Vj. Tho wavelets on arbitrary manifolds developed by Stollnitz ot al. [92] and used in this dissertation are biorthogonal. Tho multirosolution analysis on arbitrary manifolds involve (1) developing nested spaces using subdivision sellemos, (2) selecting an inner product on arbitrary manifold and (3) constructing biorthogonal wavelets, which are discussed in tho rest of this section. 116 It may bo noted that there is a slight deviation from the standard notational convention of writing vectors in bold face lower case and matrices in bold face upper ease letters in a particular situation in the rest of this chapter. The collection of control point positions are assumed to bo a throe-column matrix (one for each of the x, y and z components) instead of a vector whoso size is thrice the number of control points. Consequently, the three-row matrix representing the collection of basis functions becomes a row vector. This approach is more natural for developing the wavelet expressions, whereas the opposite was true for the theory developed in earlier chapters. However, bold face lower case letters are used to represent the three- column matrix of control vertex positions and bold face upper case letters are used to represent the vector of basis functions, so that the reader does not get confused with a new notation for representing the same thing in a different format. The notational purity is given away to a small extent for the sake of clarity. All the expressions can be reformulated by merging the columns of the three-column matrix into a single vector, but the resulting expressions will unnecessarily obscure the intuitiveness contained in the current set of expressions. 6.2.1 Nested Spaces through Subdivision In previous chapters, it has been shown that the smooth limit surface generated by a recursive subdivision scheme in general can be written as s(x) = J(x)p, (6.9) 117 where s is the smooth limit surface. J is a collection of basis functions spanning the space defined by the control mesh S, p is the vertex positions in the control mesh and x e S. A general outline on how to obtain this expression for any type of subdivision scheme has been provided in Section 5.4 and 5.5 of this dissertation and specific examples can be found in Eqn.3.15 and Eqn.5.5 for Catmull-Clark subdivision scheme and in Eqn.4.11 for the modified butterfly scheme. Let the control mesh defining the smooth limit surface be SÂ°. Renaming the control vertex vector p to pÂ° and the basis (sealing) function matrix J to JÂ°. Eqn.6.9 can be rewritten as s(x) = JÂ°(x)pÂ°, (6.10) where x e 5Â°. Let S1 be a mesh obtained by subdividing SQ once using the subÂ¬ division rules. If the control vertices of the mesh S1 are collected in a vector p1, then P1 = P^, (6.H) where P1 is the subdivision (refinement) matrix. However, the control mesh S1 has the same limit surface (as it is obtained via one subdivision step on the control mesh SÂ°) and hence the same limit surface can be written as s(x) = J^p1 J^xJPV (6.12) 118 where J1 is a collection of basis (scaling) functions spanning the space defined by S1. From Eqn.6.10 and Eqn.6.12, it is obvious that JÂ°(x) = J^xJP1, (6.13) which essentially means that the scaling functions at subdivision level 0 can be exÂ¬ pressed as a linear combination of the sealing functions at subdivision level 1. i.e.. Vo (SÂ°) C y1(5'Â°). This can be generalized for other subdivision levels as well, and hence subdivision naturally leads to a nested space sequence Vo(SÂ°) C y1(5'Â°) C V2(SÂ°) C ... which will be utilized for multiresolution analysis on arbitrary maniÂ¬ folds. 6.2.2 Inner Product The inner product proposed in Stollnitz et al. [92] is used in this dissertation. If fa and ft, are two functions defined on the domain SQ. then their inner product < fa, fb > is given by jeF(sÂ°) Jxe'r where F(SÂ°) is the set of (triangular or quadrilateral, depending on the subdivision scheme) faces in the control mesh SÂ°, 7 is a face in the set F(SÂ°), 0.(7) is the area of the face 7 and dtx. is the usual differential area in 5ft3. 119 Figuro 6.5. Subdivision refinement of a tetrahedron. 6.2.3 Biorthogonal Surface Wavelets on Arbitrary Manifold The biorthogonal wavelets discussed hero can be developed for any subdivision scheme in general. However, some minor modifications are needed in some situations. The construction is based on the lifting scheme [93] whore first â€œlazyâ€ wavelets at level j â€” 1 are constructed using some scaling functions at level j. and then those wavelets are â€œliftedâ€ so that they become as orthogonal as desired to the scaling functions at level j â€” 1. Those concepts are described below using a simple example. A more detailed discussion on this construction can be found in Stollnitz ot al. [92], Let SÂ°, as shown in Fig.6.5, bo a (tetrahedral) control mesh which when refined using some subdivision rules loads to a smooth surface in the limit. The subdivision rulos refine each triangular face into four triangular faces by introducing now vertices corresponding to each edge in the mesh as shown in Fig.6.5. Let the smooth surface in the limit bo s (denoted by SÂ°Â° in Fig.6.5). Let pÂ° be the collection of four control vortex positions defining the control mesh SÂ°. Xow, there exists scaling functions f(x), x e SÂ°, associated with each vortex pÂ», * = 4, such that they span the 120 space Vo(5Â°). Those scaling functions depend on the subdivision scheme involved and may or may not have analytic.1 expressions. Those scaling functions are collected in JÂ°(x) = [5i(x), 2(x)- 5l(x): 5l(x)]- The smooth limit surface s can be written as s = JÂ°(x) pÂ°, (6.15) whore x e 5Â°. The control mesh 51 is obtained by subdividing the control mesh 5Â° once. The ten control vertices of the mesh 51 can be categorized into two classes : (1) four control vortices corresponding to the four control vortices in original mesh 5Â° (the filled dots in Fig.6.5) and (2) six control vortices corresponding to the six edges in original mesh 5Â° (the unfilled dots in Fig.6.5). If the control vortex positions of the mesh 51 are collected in p1 such that the â€œoldâ€ vortices corresponding to the vortices in the original mesh procedo the â€œnowâ€ vortices corresponding to the edges in the original mesh, then pÂ°, (6.16) whore P1 is the subdivision matrix, and P*M and P^ are portions of the subdivision matrix that encode rules to obtain the â€œoldâ€ and â€œnowâ€ vortices respectively. Basis functions corresponding to the vortices in p1 can bo collected in J1(;r) = [Jb,d(;r) | Jjje?i)(;r)] = [5Ã(X); â€¢ â€¢ â€¢; 5i(x) | 5(x): â€¢ â€¢ â€¢, 5Ão(x)L whore the first four basis funcÂ¬ i_o P*p P1 old tions are associated with old vortices and the last six basis functions are associated 121 with now vortices. The samo smooth limit surface s can bo written as s = J^x) p1. (6.17) Evidently, the dimension of Vo (SÂ°) and \n(SÂ°) are 4 and 10 respectively. In the lazy wavelet construction, a complement space WÂ° (SÂ°) of dimension 6 is constructed with the set of basis functions corresponding to the now vertices in S1, i.e.. the wavelets spanning IE0(S'0) are WÂ°(x) = [AÂ°(x),.... rÂ°(x)â€™ = [J0(x)]. This construction is called â€œlazyâ€ because no extra computation need to be done to derive the wavelets. The refinement relations for the lazy wavelet construction can be compactly written as [JÂ°(x) | WÂ°(x)] = [JÃW(.r) | [PÂ¡azy I Qlazyh (6.18) whore P* = P1 and [pLy I Qia*Â»] o P1 I new 0 and I denoting zero and identity matrix respectively. After developing the synthesis filters for the lazy wavelets, the analysis filters can be derived using the inverse relation 122 and aro given by -i A1 ' lazy P1 aid 0 0 R1 lazy. P1 new i _pi fpi \_1 naw\ old) I (6.19) The lazy wavelet construction developed hero can bo generalized for any subdivision level j in a straight-forward manner. The synthesis and analysis filters at level j for a subdivision scheme can bo written as [P i lazy pj r old 0 pj X new (6.20) and -i ' Aj lazy pi r old 0 (p^r1 0 RJ lazy pi new i I respectively, whore PJnld encodes subdivision rules for obtaining â€œoldâ€ vortices at j- th level corresponding to the vortices in the (j â€” l)-th level control mesh and PJnew encodes rules for obtaining the other â€œnowâ€ vortices in the j-th level control mesh. It may bo noted that the lazy wavelet construction loads to sparse synthesis matrices. However, the corresponding analysis filters may not bo sparse in general as inverse of PJnld is not necessarily sparse. This implies that oven though the synthesis can bo done in linear time with respect to the number of vortices, the complexity of the analysis depends on how fast the inverse can bo computed. The synthesis can not bo done in linear time in case of approximating subdivision schemes. However, PJM 123 Wavelet associated with the edge connecting a and b Lazy : the scaling function associated with the introduced vertex at higher level Lifted : the scaling function associated with the introduced vertex at higher level - ( weighted combination of the scaling functions associated with the solid vertices) Figuro 6.6. Wavelet construction. is an identity matrix for interpolatory subdivision schemes, and hence both synthesis and analysis can be done in linear time for interpolatory subdivision schemes. The simplified expressions of the synthesis and analysis filters in case of interpolatory subdivision scheme are given by [P j lazy 0 pj X new (6.22) and Aj lazy RJ lazy new (6.23) respectively. 124 The lazy wavelets are easy to construct. However, a lower resolution mesh obtained using the analysis filters of the lazy wavelet construction is far from the least-squares-best approximation. Lazy wavelets at some level (j â€” 1) are nowhere orÂ¬ thogonal to V^'-1. The lifting scheme [93] improves the lazy wavelets at level (j â€” 1) by subtracting a liner combination of the coarser level scaling functions which overlap to a given wavelet. The resulting wavelet function becomes somewhat more orthogonal to the coarser level scaling functions than the original lazy wavelet. Mathematically, a â€œliftedâ€ wavelet at level (j â€” 1) can be expressed as 'â€¢â€™/'Â¿W = Mazy A*) - XXi<#_1(x) l = 'W- (6-24) l where ?!-th lazy wavelet function at level (j â€” 1) is the scaling function associated with the ?'-th â€œnewâ€ vertex at level j, and l is restricted to a few vertices at level (j â€” 1) in the neighborhood of the ?'-th new vertex at level j (Fig.6.6). In order to get the values of sJu for the lifted wavelet i, a linear system of equations is derived and solved in a least squares sense by imposing the constraints < (x)-O'*. '(x) > = 0 for all k, such that the supports of Â¡.â€™Â¿j/^x) and non-zero entries is in sj - needs to be controlled. A large number of non-zero entries will lead to a lifted wavelet function that is nearly orthogonal to the coarser level scaling functions, at the same time the multiresolution analysis will become more time consuming, and hence a tradeoff needs to be decided as far as orthogonality and time of computation is concerned. In Stollnitz et al. [92], â€œk-disk waveletsâ€ are 125 constructed for triangular mesh-based subdivision schemes where the non-zero entries of sjj are restricted to the vertices at level (j â€” 1) which are within the ^-neighborhood of the ?'-th â€œnewâ€ vertex at level j. The reader is referred to Stollnitz ot al. [92] for the details of the construction. Once the non-zero values of sjA are computed, they can be assembled to a matrix ST Then, the expressions for the synthesis and analysis filters of the lifted wavelet scheme can be written as rpi i ry l lazy I Hazy (6.25) and ' A3 ft pi _Hfl respectively. 6.3 Multiresolution Representation The multiresolution analysis on arbitrary manifold was developed to obtain good low resolution approximations of complicated meshes. This is a top-down technique where one starts with a complicated arbitrary topology mesh and goes on obtainÂ¬ ing lower resolution meshes using analysis filters. The complicated mesh on which multiresolution analysis is applied can be reconstructed using the synthesis filters. In this dissertation, the multiresolution technique is used in a novel bottom-up apÂ¬ proach where an evolving control mesh of a dynamic subdivision surface is subdivided at equilibrium to obtain more degrees of freedom, and then, the resulting control mesh is treated as the previous control mesh and a collection of detail (wavelet) coefficients. A J i C./p./ lazy ' 0 ^lazy pi lazy (6.26) 126 Of course, the detail coefficients are zero when an control mesh is replaced by another control mesh obtained by a pure subdivision step on the previous mesh, but becomes non-zero as the new control mesh (represented as previous control mesh and wavelet coefficients) evolves over time in response with the synthesized force application. This idea is further illustrated in the rest of this section. Let s be a smooth limit surface obtained via infinite number of subdivision steps on an initial mesh SÂ°, whose vertex positions are collected in pÂ°. As mentioned earlier, the limit surface can be written as s = JÂ°pÂ°, (6.27) where JÂ° is a collection of basis functions. If the control mesh S1 is obtained by subdividing SQ once, then the same limit surface can be expressed as s = .^p1, (6.28) where p1 is the collection of vertex positions of the mesh S1 and J1 is the collection of corresponding basis functions. Since p1 = P1pÂ°, the limit surface s can also be written as s = J^p0. (6.29) The difference between Eqn.6.27 and Eqn.6.28 is that the limit surface s has more degrees of freedom (control vertices) for representation in the latter in comparison with the former. However, in Eqn.6.29, even though the limit surface is expressed 127 using the samo basis functions as that of S1, the degrees of freedom remains the same as that of SÂ°. Eqn.6.29 can be modified in the following manner so that it uses same basis functions and same number of degrees of freedom as that of S1. s = Jx [P1 Q1] whore qÂ° is the collection of wavelet coefficients whoso values are zero, P1 and Q1 are the synthesis matrices andQ^y, respectively. The above formulation yields a multiresolution representation of the control mesh S1 obtained via one subdivision stop on the previous control mesh SÂ°. The mesh S1 is represented as a mesh at level 0 along with the detail (wavelet) coefficients at level 0. As mentioned earlier, those coefficients would become non-zero when the smooth limit surface deforms over time duo to synthesized force application. Similarly after one more subdivision stop, the now control mesh S2 can be viewed as control vortex positions at level 0, wavelet coefficients at level 0 and wavelet coefficients at level 1, and can be written as (6.30) s J2 p2 J2 [P2 Q2] J2 [P2 Q2] P1 Q1 0 0 0 1 (6.31) 128 where J2 is the collection of basis functions at level 2, p2, p1 and pÂ° are the control vertex positions at level 2, 1 and 0 respectively, q1 and qÂ° are the wavelet coefficients at level 1 and 0 respectively. I is the identity matrix and 0 is the zero matrix. This idea can be generalized for a control mesh obtained after j-th subdivision and the corresponding expression can be written as JJ AJ pi r'j (6.32) where (p2)1 = [pÂ°qÂ° ... q2 2q2 1]. and A2 = [P2 Q2 1 1 1 o 7 Oâ€™ 1 1 to Q2-2 0 1 o l O O Oâ€™ 0 . 1 O I o 0 I I o 0 I i hâ€”H I o 0 I . i hâ€”H The multiresolution dynamic's is developed using this formulation in the next section. 6.4 Dynamics The smooth limit surface s can be made dynamic if the control vertex positions at level 0 and wavelet coefficients at level 1,2,.... (j â€” 1) are functions of time. The velocity of the smooth surface, controlled by the mesh Sj obtained through j steps of model subdivision, is given by s(x. p2) = J2(x)A2p2, (6.33) 129 where the overstruck dot denotes the time derivative and x e Si The Lagrangian motion equation (refer to Eqn.2.5) can be derived in a similar fashion as mentioned in earlier chapters, and is given by M>'pÂ¿ + D-'p-' + K-'p? = fj>, (6.34) where MJ, D; and K; are the j-th level mass, damping and stiffness matrices respec Â¬ tively and is the generalized force vector at level j. If /.Â¿(x) is the mass density of the subdivision surface model, then the mass matrix at j-th level is given by M> = [ fi{x){AJf{JJ{x))TJJ{x)AJdx. The damping matrix DJ can be derived in a similar fashion, while the stiffness maÂ¬ trix K; can be obtained following the techniques described in Section 4.3.2. The generalized force vector at level j can be written as Pp = f (AJ'f (JJ'(x)f f(x.t)dx. 6.5 Implementation Details Multiresolution representation of the evolving control mesh achieves eoarse-to- fine as well as fine-to-coarse manipulation of the smooth limit surface. For example, the user starts with a deformable smooth surface with a simple control mesh SÂ° and directly manipulates the limit surface by applying synthesized forces. When an 130 equilibrium is obtained, the user can increase the degrees of freedom by switching to a control mesh S1 which is theoretically obtained by applying one subdivision step on SÂ°, but represented as a collection of vertex positions in SÂ° along with wavelet coefficients at level 0 needed to reconstruct S1. The wavelet coefficients are zero at the point of switching, but becomes non-zero as the control mesh S1, represented as mentioned above, evolves over time. The user can further increase the degrees of freedom to obtain more localized effect by introducing control mesh S2 which is represented as control vertex positions of mesh SÂ°, along with wavelet coefficients at level 0 and 1. Thus the user can have coarse-to-fine manipulation of the smooth limit surface. This facility is also present in the multilevel dynamic's approach as mentioned earlier. However, the multilevel dynamic's approach does not support fine- to-eoarse manipulation - it fails if the user wants to apply synthesized forces on a coarser control mesh at level j after moving up to level j + k. This can be achieved in multiresolution approach by simply using the dynamic.' equation of motion at level j. and applying synthesized forces on a smooth limit surface which is obtained by multiresolution synthesis using â€œtime varyingâ€ control vertex positions at level 0 and wavelet coefficients at level 0,1,..., (j â€” 1) and â€œstaticâ€ wavelet coefficients at level j, (j + 1),..., (j + k â€” 1). If the user switches back to level (j + k), then the control vertex positions at level 0 as well as all the wavelet coefficients at level 0,1,..., (j â€” 1), j,(j + 1),..., (j + k â€” 1) become function of time, and the system switches back to the motion equation of level (j + k). 131 The actual implementation differs slightly from the formulation to achieve effiÂ¬ ciency in coarse-to-fine and fine-to-eoarse manipulation. In the implemented system, the user starts out with a smooth limit surface which has a simple control mesh with very few degrees of freedom. The model grows and when the equilibrium is achieved, one step of subdivision yields larger degrees of freedom. This larger degrees of freeÂ¬ dom are the control vertex positions in this finer resolution and not control vertex positions in lower resolution along with wavelet coefficients in that lower resolution. The model can grow further, and if more subdivision step is needed to increase the degrees of freedom, it is handled in a similar fashion. If at any certain point of time the user needs to go back to a coarser level control mesh, wavelet decomposition is done on the higher resolution base mesh. This decomposition yields vertex positions in the coarser level mesh (which becomes the new base mesh) and non-zero wavelet coefficients. The lower resolution mesh evolves with time due to the force applied on the limit surface. It may be noted that the limit surface in this scenario is obtained by doing wavelet reconstruction with non-zero wavelet coefficients at some levels. The user can choose further coarser level control mesh by repeating the same process. In the implemented system, the user can achieve global deformation on a deÂ¬ tailed mesh by going down couple of levels using wavelet decomposition, retaining the wavelet coefficients, and applying force on the limit surface (obtained through wavelet reconstruction process) and letting the coarser level mesh evolve. Similarly, to achieve local deformation on a coarser mesh, the user can move up couple of steps 132 by doing subdivision (and adding non-zero wavelet coefficients at higher levels, if present) and applying synthesized forces in the region of interest. The formulation using wavelet representation has mathematical niceties, but inefficient for implementation purposes. The synthesized force is applied on the limit surface. To evaluate the limit surface, wavelet reconstruction needs to be done at each time step starting from the original control mesh upto a specified level if an explicit wavelet representation of the evolving control mesh is maintained as mentioned in the formulation. On the other hand, if the evolving mesh is control vertex positions at that resolution, then the wavelet reconstruction starts from that resolution for evaluating the limit surface. Wavelet decomposition needs to be done while going down from finer to coarser resolution, but this happens only once in a while, and not at each time step. Therefore, the implemented version is much more efficient. It may be noted that the motion equation at any level is implemented using finite element techniques discussed in earlier chapters for various subdivision schemes. CHAPTER 7 SYSTEM ARCHITECTURE The architecture of the prototype system is described in this chapter. The basic.1 building blocks of the system are different modules performing different tasks. The overall architecture of the system is shown in Fig. 7.1. The user first provides the input about the geometry and topology of the initial mesh. Typically these information consist of some type of connectivity information and control vertex positions in 3D. The topological information processing module derives other necessary topological information from the given input data, and passes all the information to the subdivision module. The subdivision module performs preÂ¬ specified number of subdivision steps on the initial mesh, and then the finite element analysis module computes different elemental matrices needed by the update engine. The user can apply different types of synthesized forces on the limit surface, and the model is constantly updated to obtain an equilibrium position. The updated information is passed to the display module which renders the deforming smooth surface on the screen. The user is also allowed to choose different model parameter values like mass density, damping density, spring constants etc. Details of the specific.1 modules are provided in the rest of this chapter. 133 134 r Figuro 7.1. System architecture. 135 7.1Topological Information Processing Modulo In the implemented system, the user needs to provide the connectivity of the initial mesh by listing the vertices of every face. The vertex information of a face must be provided in an orderly fashion (either clockwise or anti-clockwise). The topological information processing module derives other necessary information like vertex connectivity information of the edges, edge connectivity information of the faces etc. from the input provided by the user. 7.2Subdivision Module This module applies different subdivision rules to refine an input control mesh. Currently, Catmull-Clark and modified butterfly subdivision schemes are supported in the system. Other subdivision schemes can also be easily incorporated. The subdivision scheme for a specific application is chosen by the user. However, there are certain inherent restrictions depending on the chosen subdivision scheme. For example, butterfly subdivision scheme can be chosen only if the initial (control) mesh has triangular faces. Once the user provides input about the initial mesh and the chosen subdivision scheme, this module then subdivides the initial mesh a pro-specified number of times to obtain a high resolution mesh which effectively approximates the smooth limit surface. 7.3Finite Element Analysis Modulo The finite element analysis modulo determines the typo of finite element to bo used and the total number of elements describing the smooth limit surface. It computes all elemental matrices such as mass, damping and stiffness matrices, as 136 well as determines the set of vertices in the initial mesh controlling each individual element. This module also provides the information about the global mass, damping and stiffness matrices without actually assembling them from individual elemental matrices. 7.4 Force Synthesis Module The user can apply various types of forces on the smooth limit surface. Currently spring forces, balloon forces, and image gradient-based forces are being supported. Other types of forces can also be easily incorporated. The user applies spring forces on the limit surface by providing points in 3D from which the springs need to be attached. The 3D point specification is done either interactively from mouse input or from files. To apply balloon forces, the user needs to specify whether the ballooning force is to inflate the model or to deflate the model. Volume images are provided as input to apply image gradient-based forces. A detailed discussion on these force application methods was provided in Section 3.3.4. 7.5 Update Engine After the user provides all the necessary information about the model and the force application method, the update engine constantly updates the dynamic subÂ¬ division surface model to achieve an equilibrium position. The discretized second order differential equation of motion leads to solving a large sparse linear system of equations. Conjugate gradient [34, 75], an iterative linear system solver, is used for this purpose. The user can choose either multilevel dynamic's or multiresolution 137 dynamic's approach, and the update engine accordingly chooses algorithms when the degrees of freedom of the evolving surface model is changed. 7.6 Display Module The update engine constantly updates the dynamic.1 model, and the relevant geometric.1 and topological information is passed to the display module for rendering the evolving smooth surface. The display module uses OpenGL graphic's libraries for rendering purposes. It also serves as the input module for mouse-based user interactions. CHAPTER 8 APPLICATIONS The proposed dynamic.1 framework extends the application areas of subdivision surfaces beyond the traditional modeling domain. The framework enhances the suitÂ¬ ability of subdivision surfaces for geometric.1 modeling. At the same time, the proposed dynamic.1 models can be used for recovery of shapes from range and volume data, non- rigid motion estimation, multiresolution editing and natural terrain modeling. The applicability of the dynamic.1 model in these areas is further illustrated in the rest of this chapter. 8.1 Geometric Modeling The proposed dynamic.1 framework for subdivision surfaces can be used to repÂ¬ resent a wide variety of arbitrary topological shapes with remarkable ease. In a typical geometric.1 modeling application using dynamic.1 subdivision surfaces, the user can specify any mesh as the initial (control) mesh, and the corresponding limit surface can be sculpted interactively by applying synthesized forces. Any dynamic.1 subdiviÂ¬ sion surface model can be used for the modeling purpose. The examples shown in this section use dynamic.1 Catmull-Clark and dynamic.1 modified butterfly subdivision surface models. 138 139 Figuro 8.1. (a), (b). (e) and (d) : Initial shapes (obtained applying Catmull-Clark subdivision rules on control meshes); (o). (f), (g) and (h) : the corresponding modified shapes after interactive force application. 140 First, dynamic Catmull-Clark surface models as presented in Chapter 3 are used for shape modeling. The special elements in the limit surface are darkly shaded and the normal elements are lightly shaded in all the modeling examples. It may be noted that the formulation presented in Chapter 5. which will have only one type of finite element in the limit surface, can be used as well. In Fig.8.1, several initial surfaces obtained from different control meshes using Catmull-Clark subdivision rules and the corresponding modified surfaces after interactive spring force application are shown. To change the shape of an initial surface, springs are attached from different points in 3D to the nearest points on the limit surface such that the limit surface deforms towards these points generating the desired shape. In Fig.8.1 (a), an open surface defined by an initial mesh of 61 vertices and 45 faces is shown. The mesh has one extraordinary vertex of degree 5. This limit surface is modified by applying spring forces interactively, and the modified surface is depicted in Fig.8.1(e). A torus, defined by an initial mesh of 32 vertices and 32 faces, and its modified shape is shown in Fig.8.1 (b) and (f) respectively. The initial mesh of the smooth limit surface shown in Fig.8.1(c) has 544 faces and 542 vertices, 8 of them are extraordinary vertices of degree 5. The limit surface is modified interactively by applying spring forces from various points in 3D and the modified shape is depicted in Fig.8.1(g). Note that the extent of deformation has been interactively controlled by varying the stiffness of the attached springs. The upper portion of the limit surface has been deformed by applying spring forces of higher magnitude, whereas the lower portion has been modified by applying spring forces of lower magnitude. The spread of the 141 (o) (f) (g) (10 Figuro 8.2. (a), (b), (e) and (d) : Initial shapes (obtained applying modified butterfly subdivision rules on control meshes); (e), (f), (g) and (h) : the corresponding modified shapes after interactive sculpting via force application. deformation effect is (dearly larger in the latter case for obvious reasons. Finally, a flat shoot defined by an initial mesh of 64 faces and 81 vortices, shown in Fig.8.1(d), is deformed interactively to obtain the hat-like shape shown in Fig.8.1(h). Next, shape modeling examples using the dynamic.' modified butterfly subdiviÂ¬ sion surface model are shown. The limit surface hero consists of a single typo of smooth triangular finite element patches, irrespective of the number of extraordinary vortices in the control mesh. In Fig.8.2, several initial surfaces obtained from different 142 control meshes using the modified butterfly subdivision rules and the corresponding modified surfaces after interactive sculpting are shown. As with the dynamic Catmull- Clark subdivision surfaces, the user can attach springs from different points in 3D to the nearest points on the limit surface and the limit surface deforms towards these points to generate the desired shape. The initial mesh of the smooth surface shown in Fig.8.2(a) has 125 faces and 76 vertices (degrees of freedom), which is deformed to the smooth shape shown in Fig.8.2(e) by interactive spring force application. The initial mesh of the closed cube-like shape in Fig.8.2(b) has 24 faces and 14 vertices. This cube-like shape is deformed to the shape shown in Fig.8.2(f). The one hole torus in Fig.8.2(e) and the corresponding modified shape in Fig.8.2(g) have initial meshes with 64 faces and 32 vertices. A two hole torus with a control mesh of 272 faces and 134 vertices, shown in Fig.8.2(d), is dynamically sculpted to the shape shown in Fig.8.2(h). 8.2 Shape Recovery from Range and Volume Data The dynamic subdivision surface models can recover the underlying shape of a given range or volume data set in a hierarchical fashion. The initialized model deforms under the influencie of the synthesized forces from the range or volume data. When an approximate shape is recovered, a new control mesh can be obtained by doing one step of subdivision on the initial mesh thereby increasing the degrees of freedom to represent the same limit surface, and a better fit to the given range data set can be achieved. It may be noted that the model initialization is interactive, and the initialized model can have any control mesh of the desired genus. However, 143 (a) (b) (c) Figuro 8.3. (a) Rango data of a bulb along with tho initialized modol, (b) an in- tormodiato stago of ovolution, and (e) tho fittod dynamic Catmull-Clark subdivision surfaco modol. an initial mosh with fow dogroos of froodom usually porforms bottor in torms of tho compact roprosontation of tho underlying shape. Any dynamic subdivision surface modol can be used for shape recovery. Next, throe examples of shape recovery from range data sots are shown. Tho first two examples use dynamic.' Catmull-Clark subdivision surfaco modol and tho third one uses dynamic.' modified butterfly subdivision surfaco modol. Tho error in fit, which is defined as tho maximum distance between a data point and tho nearest point on tho limit surfaco as a percentage of tho diameter of tho smallest sphere enclosing tho object, is approximately 3% in all tho experiments with range data. Tho time of dynamic.' ovolution for fitting tho range data sots used in tho experiments is approxiÂ¬ mately 3 minutes in a SGI O2 workstation. 144 Figuro 8.4. (a) Rango data of an anvil along with tho initializod modol, (b) an intormodiato stago of ovolution, and (c) tho fittod dynamic Catmull-Clark subdivision surface modol. (a) (b) (<0 Figuro 8.5. (a) Rango data of a head along with tho initializod modol, (d) tho fittod dynamic butterfly subdivision modol, and (c) visualization of the shape from another view point. 145 The examples shown in Fig.8.3 and Fig.8.4 involve dynamic Catmull-Clark subÂ¬ division surface. The same shading convention for normal and special elements as mentioned earlier is used. In both of these examples, the initialized model had 96 faces and 98 vertices. 8 of them being extraordinary vertices of degree 3. The final fitted model, obtained through one step of subdivision, has a control polygon of 384 faces with 386 vertices. In Fig.8.3, the dynamic Catmull-Clark subdivision surface model is fitted to laser range data acquired from multiple views of a light bulb. Prior to applying the model fitting algorithm, the data were transformed into a single referÂ¬ ence coordinate system. The model was initialized inside the 1000 range data points on the surface of the bulb. In the next experiment, the dynamic Catmull-Clark subÂ¬ division surface model is fitted to an anvil data set (Fig.8.4). The data set has 2031 data points. It may be noted that the final shape with 3% error tolerance uses very few control points for representation in comparison with the number of data points present in the original range data set. In the last example with range data set, the shape of a human head is recovered from a range data set using dynamic modified butterfly subdivision surface model (Fig.8.5). The initialized model has a control mesh comprising of 24 triangular faces and 14 vertices whereas the control mesh of the fitted model has 384 triangular faces and 194 vertices. The range data set has 1779 points in 3D, and a compact representation of the recovered shape using few degrees of freedom in comparison with original data set is obtained in this example as well. 146 Figuro 8.6. (a) A slice from a brain MRI, (b) initialized model inside the region of interest superimposed on the slice, (c) the fitted model superimposed on the slice, and (d) a 3D view of the dynamic Catmull-Clark subdivision surface model fitted to the cerebellum. Figure 8.7. (a) Data points identifying the boundary of the caudate nucleus on a MRI slice of human brain, (b) data points (from all slices) in 3D along with the initialized model, and (c) the fitted dynamic.' butterfly subdivision model. 147 The application of the dynamic.' subdivision surface models to anatomical shape recovery from 3D volumetric.' MRI data is shown in the next two examples. The first one uses dynamic.' Catmull-Clark model and the next one uses dynamic.' modified butterfly subdivision surface model. A dynamic.' Catmull-Clark subdivision surface model is fitted to a cerebellum (a cortical structure in brain) given an input of 30 sagittal slices from a MR brain scan. As in the examples with range data, the initialized model had 96 faces and 98 vertices. 8 of them being extraordinary vertices of degree 3. The final fitted model, obtained through one step of subdivision, has a control polygon of 384 faces with 386 vertices. Fig.8.6(a) depicts a slice from this MRI scan and the model initialization is shown in Fig.8.6(b). Continuous image based forces are applied to the model and the model deforms under the influence of these forces until maximum conformation to the boundaries of the desired cerebellum shape. The final fitted model is shown in Fig.8.6(c). A 3D view of the fitted model is depicted in Fig.8.6(d). In the next example, the shape extraction of a caudate nucleus (another cortical structure in human brain) is presented from 64 MRI slices, each of size (256,256). Fig.8.7(a) depicts a slice from this MRI scan along with the points placed by an expert neuroscientist on the boundary of the shape of interest. Fig.8.7(b) depicts the interactively placed sparse set of data points (placed in some of the slices depicting the boundary of the shape of interest) in 3D along with the initialized model. Note that points had to be interactively placed on the boundary of the caudate nucleus in MR slices lacking image gradients which delineate the caudate from the surrounding tissue 148 in the imago. Continuous imago-based forces as well as spring forces are applied to the model and the model deforms under the influence of those forces until maximum conformation to the boundaries of the desired caudate shape. The final fitted model in 3D is shown in Fig.8.7(e). The initialized dynamic butterfly subdivision surface model has a control mesh comprising of 24 triangular faces and 14 vertices whereas the control mesh of the fitted model has 384 triangular faces and 194 vertices. 8.3 Non-rigid Motion Estimation The dynamic subdivision surface models can be used effectively to estimate the motion of a non-rigid object from a given time sequence of range or volume data. An example is shown in Fig.8.8 where the motion of the left-ventricular chamber of a canine heart is tracked over a complete cardiac cycle using dynamic modified butterfly subdivision surface model. The data set comprised of 16 3D CT images, with each volume image having 118 slices of 128 x 128 pixels. First, the shape is recovered from one data set using image-based (gradient) as well as point-based forces. As before, the initialized model has a control mesh comprising of 24 triangular faces and 14 vertices whereas the control mesh of the fitted model has 384 triangular faces and 194 vertices. Once the shape is recovered from one data set, this fitted model is used as an initialization for the next data set to track the shape of interest. The snapshots from motion tracking are shown in Fig.8.8 for the 16 volume data sets. It may be noted that the control mesh describing the smooth surfaces shown in Fig.8.8 has only 384 triangular faces with a total of 194 vertices as mentioned earlier. This experiment clearly shows that our model can be used to track a shape of interest 149 Figuro 8.8. Snapshots from the animation of canino heart motion over a cardiac cycle using the dynamic butterfly subdivision model. 150 Figuro 8.9. (a) The initialized model along with the data sot; (b) the fitted model with two subdivisions on the initial mesh, along with attached springs for editing. The model after editing (c) at lower resolution, (d) at the same resolution of the fitted model, and (o) at higher resolution. from a sot of time dependent volume data sots in an efficient manner. Note that no other existing purely geometric subdivision surface technique can bo used with (time varying) continuous data sots. 8.4 Multirosolution Editing The proposed dynamic.' subdivision techniques present hierarchical shape recovÂ¬ ery and shape modeling within a common framework, whore the modeler can scan in 3D data points of a prototype model, recover the underlying shape from the point 151 sot. and then edit the recovered shape. The multiresolution representation of the evolving control mesh as presented in Chapter 6 enables the modeler to edit the smooth limit surface at any desired level. Within the proposed multiresolution dyÂ¬ namic framework, the modeler does not need to build a model from scratch (unlike other shape modeling techniques), and there is no need of using computationally inÂ¬ tensive remeshing techniques for multiresolution representation (unlike other shape recovery techniques). The idea is illustrated in Fig.8.9, where the shape of a head is first recovered from a range data set and then edited at various levels using spring forces from two points in 3D. The effect was more global in the lowest level edited, and the effect became increasingly local as the level of editing was increased. 8.5 Natural Terrain Modeling In this section, a novel technique for synthesizing realistic.1 terrain models from elevation data is developed by using the dynamic.1 finite element method-based subdiÂ¬ vision surface model for surface reconstruction, and a variant of the successive random addition method for fractal surface synthesis. Roughness is an essential characteristic of the natural terrains and hence traditional surface reconstruction methods using smoothness constraints do not yield the desired results. Fournier et al. [33] first proÂ¬ posed a random displacement technique for synthesizing fractal surfaces which was later modified by Saupe [84] in his successive random addition scheme of generating fractals. Yokoya et al. [107] improved these schemes by adding data constraints. Szeliski and Terzopoulos [94] proposed constrained fractal surfaces using a Gibbs sampler algorithm which was later improved by Vomuri et al. [102, 103]. Arakawa 152 and Krotkov [1] refined the original Gibbs sampler technique by redefining the temÂ¬ perature (control) parameter to obtain better control of roughness in the fitted (conÂ¬ strained) fractal surface. However, the (CPU) execution times reported in their work are very high, thus making their scheme unattractive for many applications. All the techniques for natural terrain modeling mentioned above usually needs a grid of very large size to model realistic.1 terrains, especially with irregularly spaced data. Riimelin [82] developed an interesting fractal interpolation algorithm whic.ii can generate interpolating fractal surfaces for regularly or irregularly spaced data. However, this scheme is computationally intensive for large problems as pointed out in Voniuri et al. [103]. The subdivision schemes produce a smooth surface in the limit, and hence they are not suitable for synthesizing natural terrains which are rough. A scheme is develÂ¬ oped in this dissertation using a variant of the successive random addition method [84] such that the limit surface looks like â€œnaturalâ€ terrain. In the original successive random addition technique, an equally spaced rectangular grid is refined by interÂ¬ polating the midpoints of each rectangular cell (thereby dividing each rectangular cell into four rectangular cells) and then all grid positions are perturbed by addiÂ¬ tion of a Gaussian noise. This process is carried out recursively to obtain a fractal surface whose roughness is controlled by the variance of the added Gaussian noise at different refinement levels. In this dissertation, the butterfly subdivision scheme has been modified, where vertex positions at various levels of subdivision are perturbed 153 (a) (b) (c) Figuro 8.10. (a) Discreto elevation data sot (4096 points), (b) fitted dynamic butterfly subdivision surface model with 841 vortices (without noise addition), and (e) fitted dynamic subdivision surface model with 841 vortices when Gaussian noise is added. by addition of a Gaussian noise whose va.ria.nee controls the roughness of the resultÂ¬ ing limit surface. This process of Gaussian noise addition is similar to that of the successive random addition method mentioned earlier, the difference being the vorÂ¬ tex positions obtained using butterfly subdivision rules are perturbed instead of grid points obtained through midpoint interpolation. Two natural terrain synthesis results using dynamic.1 modified butterfly subdiviÂ¬ sion surface model are presented in this section. The initialized model is deformed by applying spring forces on its limit surface from the discrete data points. At each time stop, every control vortex position is perturbed by adding a random noise drawn from a Gaussian distribution. The variance of the Gaussian distribution determines the roughness of the synthesized surface. In both the examples, the initialized butÂ¬ terfly subdivision model has an initial (control) mesh with 98 triangular faces and 68 control vortices. The â€œnaturalâ€ looking limit surface of the initialized model is 154 Figuro 8.11. Synthesized natural terrain of different roughness using the dynamic butterfly subdivision surface model with 841 vertices from a data set of 3099 elevation values. deformed by the forces exerted from the discrete elevation data points. When an approximate fit is obtained, the model is subdivided to obtain a closer fit using more degrees of freedom (control vertices) of the now initial mesh. The fitted surface has 1568 triangular faces and 841 control vertices in both the experiments. It may be noted that synthesis of same quality natural terrains using the existing techniques requires a largo number of grid points (of the order of 10Â°) [1. 82, 94, 103] and hence the proposed technique provides a more compact representation of the synthesized terrain. The elevation data values are sealed to fit an unit cube and the variance of added noise is 10-4 for the synthesized fractal surface depicted in Fig.8.10. The corresponding value of noise variance for fractal surfaces depicted in Fig.8.11(a), (b) and (c) aro 10-6, 10-Â° and 10-4 respectively. In the first experiment, 4096 elevation data points are used whereas the second data set comprised of 3099 elevation values. The error in fit is approximately 1% in both the examples. CHAPTER 9 CONCLUSIONS AND FUTURE WORK In this chapter, the contributions of this dissertation are summarized. Future research directions of the deformable subdivision surface model are also discussed. 9.1 Conclusions In this dissertation, a dynamic framework has been developed for subdivision surfaces. This dynamic framework enhances the applicability of subdivision surfaces in geometric modeling applications where the modeler can directly and intuitively manipulate the smooth limit surface using synthesized forces. The proposed frameÂ¬ work is very useful for hierarchical shape recovery from large range and volume data sets, as well as for non-rigid motion tracking from a temporal sequence of data sets. Multiresolution representation of the initial mesh controlling the smooth limit surÂ¬ face enables global and local editing of the shape as desired by the modeler. A novel technique for synthesizing natural terrain models from sparse elevation data using the dynamic framework in conjunction with a variant of the successive random addition technique has also been presented in this dissertation. Several theoretical contributions has also been made in this dissertation. Local parameterization techniques suitable for embedding the geometric subdivision surface model in a physics-based modeling framework has been developed. Specific local 155 156 parameterization techniques have been fully worked out for Catmull-Clark. modified butterfly and Loop subdivision schemes. Techniques for assigning material properties to geometric subdivision surfaces have been derived, motion equation for the dynamic model has been formulated, advantages of deformable models are incorporated into conventional subdivision schemes, dynamic hierarchical control has been introduced, multiresolution representation of the control mesh is derived and an unified approach for deriving subdivision surface-based finite elements has been presented. The proposed dynamic framework has a promising future in computer graphÂ¬ ic's, geometric.1 modeling and scientific.' visualization. Furthermore, the finite element techniques proposed in this dissertation should be of great interest to the engineering design and analysis community as well. 9.2 Future Directions The proposed dynamic.' framework enhances the applicability of the subdivision surfaces in various applications, but still there are lots of research need to be done to meet the growing demands of modeling and other applications. In the rest of this section, several key issues needing attention are discussed. 9.2.1 Automatic Change of Topology In the current framework, the evolving model can not change its topology if needed. Automatic.' change of topology for dynamic.' subdivision surface models is a very challenging and important research topic.'. The topologically adaptable deÂ¬ formable models developed by Malladi et al. [54] and Melnerney and Terzopoulos 157 [63] can provide some insight about how to deal with topology (â€¢hanging in deformable subdivision surface models. 9.2.2 Local Refinement In some applications, especially in shape recovery, it is more meaningful to locally refine the smooth limit surface, i.e., introduction of new degrees of freedom only in the regions where more details need to be recovered. Currently, this refinement is global where new degrees of freedom is introduced throughout the smooth limit surface. Local refinement implies distribution of degrees of freedom at a number of subdivision levels instead of one particular subdivision level. This is a very challenging but important research issue. 9.2.3 Automatic Model Parameter Selection The model parameters like mass, damping, rigidity, bending are selected by the user in the current implementation. The choice of force constants and time step is also manual. Numerical stability of the deforming model is very sensitive to the choice of the parameter values. Research needs to be done on how to select these parameters automatically in different applications. 9.2.4 Constraint Imposition In some applications, there might be a need to impose geometric.1 as well func Â¬ tional constraints on the dynamic.1 subdivision surface models. Position and normal constraints are examples of possible constraints. It is somewhat easier to impose these 158 constraints on interpolatory dynamic.1 subdivision surface models, but considerable reÂ¬ search efforts need to be put for constraint imposition in the (.'ase of approximating dynamic.1 subdivision surface models. 9.2.5 Recovery of Sharp Features Recovery of sharp features using dynamic.1 subdivision surface models is an open research problem. Even though piecewise smooth subdivision surfaces [40] has been developed, incorporating sharp features in a physically meaningful way for an evolving subdivision surface model is a challenging research issue. 9.2.6 Automatic Model Initialization Currently model initialization is interactive. However, automatic.1 model initialÂ¬ ization techniques have been recently proposed by Delingette [24], Similar techniques for deformable subdivision surface initialization need to be developed. 9.2.7 Improved Synthesized Force Fields Recently Xu and Prince [106] have proposed new type of force fields which makes the model insensitive to the initialization. It would be nice to incorporate these force fields in the current system for better performance in the model fitting context. REFERENCES [1] K. Arakawa and E. Krotkov, â€œFractal surface reconstruction for modeling natural terrain,â€ in Proceedings of the Conference on Computer Vision and Pattern Recognition, pp. 314 - 320, 1993. [2] A. Arneodo, E. Baery and J.F. Muzy, â€œSolving the inverse fractal problem from wavelet analysis,â€ Europhysics Letters, vol. 25, no. 7, pp. 479 - 484, March, 1994. [3] A.A. Ball and D.J.T. Stony, â€œConditions for tangent plane continuity over recursively generated B-spline surfaces,â€ ACM Tmnso,ctions on Graphics, vol. 7, no. 2, pp. 83 - 102, 1988. [4] A.A. Ball and D.J.T. Stony, â€œAn investigation of curvature variations over recursively generated B-spline surfaces,â€ ACM Tmnso,ctions on Graphics, vol. 9, no. 4, pp. 424 - 437, 1990. [5] E. Bardinet, L.D. Cohen and X. Ayaehe, â€œSuperquadrics and free-form deforÂ¬ mations : A global model to fit and track 3D medical data,â€ in Lecture Notes in Computer Science. CVRMedâ€™95, X. Ayaehe, Ed., vol. 905, pp. 319 - 326, Springer - Verlag, Berlin, Germany, 1995. [6] D.F. Berman, J.T. Bartell and D.H. Salesin, â€œMultiresolution painting and compositing,â€ in Computer Graphics Proceedings, ACM SIGGRAPH, Annual Conference Series, pp. 85 - 90, July, 1994. [7] G. Beylkin, R. Coifman and V. Rokhlin, â€œFast wavelet transforms and numerical algorithms,â€ Communications on Pure and Applied Mathematics, vol. 44, pp. 141 - 183, 1991. [8] M.I.J. Bloor and M.J. Wilson, â€œRepresenting PDE surfaces in terms of B- splines,â€ Computer Aided Design, vol. 22, no. 6, pp. 324 - 331, 1990. [9] M.I.J. Bloor and M.J. Wilson, â€œUsing partial differential equations to generate free-form surfaces,â€ Computer Aided Design, vol. 22, no. 4, pp. 202 - 212, 1990. [10]E. Catmull and J. Clark, â€œRecursively generated B-spline surfaces on arbitrary topological meshes,â€ Computer Aided Design, vol. 10, no. 6, pp. 350 - 355, 1978. 159 160 [11] G. Celniker and D. Gossard, â€œDeformable curve and surface finite elements for free-form shape design,â€ in Computer Graphics Proceedings, ACM SIGGRAPH, Annual Conference Series, pp. 257 - 266, July, 1991. [12] G. Celniker and W. Welch, â€œLinear constraints for deformable B-spline surfaces,â€ in Proceedings of the Symposium, on Interactive 3D Graphics, pp. 165 - 170. ACM, New York, 1992. [13] A. Certain, J. Popovic, T. DeRose, T. Duchamp, D.H. Salesin and W. Stuetzle, â€œInteractive multiresolution surface viewing,â€ in Computer Graphics ProceedÂ¬ ings, ACM SIGGRAPH, Annual Conference Series, pp. 91 - 98, August, 1996. [14] G.M. Chaikin, â€œAn algorithm for high speed curve generation,â€ Computer- Vision, Graphics and Image Processing, vol. 3, no. 4, pp. 346 - 349, 1974. [15] Y. Chen and G. Medioni, â€œSurface description of complex objects from multiÂ¬ ple range images,â€ in Proceedings of the Conference on Computer Vision and Pattern Recognition, Seattle,WA, pp. 153 - 158, June, 1994. [16] P.H. Christensen, E.J. Stollnitz, D.H. Salesin and T. DeRose, â€œWavelet radiÂ¬ ance,â€ in Proceedings of the Fifth Eurographics Workshop on Rendering, DarmÂ¬ stadt, Germany, pp. 287 - 302, 1994. [17] P.H. Christensen, E.J. Stollnitz, D.H. Salesin and T. DeRose, â€œGlobal illuminaÂ¬ tion of glossy environments using wavelets and importance,â€ ACM Transactions on Graphics, vol. 15, no. 1, pp. 37 - 71, January, 1996. [18] C.K. Chui, Wa,velet analysis and its applications, Academic Press, Boston, 1992. [19] C.K. Chui and E. Quak, â€œWavelets on a bounded interval,â€ in Numerical methods in approximation theory, D. Braess and L.L. Schumaker, Eds., vol. 9, pp. 53 - 75, Birkhauser Verlag, Basel, 1992. [20] A. Cohen, I. Daubechies and J.C. Feauveau, â€œBiorthogonal bases of compactly supported wavelets,â€ Comm,unications on Pure and Applied Mathematics, vol. 45, no. 5, pp. 485 - 560, 1992. [21] L.D. Cohen and I. Cohen, â€œFinite-element methods for active contour models and balloons for 2D and 3D images,â€ IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 15, no. 11, pp. 1131 - 1147, November, 1993. [22] I. Daubechies, â€œOrthonormal bases of compactly supported wavelets,â€ Com,- munications on Pure and Applied Mathematics, vol. 41, no. 7, pp. 909 - 996, 1988. [23] I. Daubechies, Ten lectures on umvelets, SIAM, Philadelphia, 1992. 161 [24] H. Dolingotte, â€œInitialization of deformable models from 3D data,â€ in Proceedings of the International Conference on Computer Vision, Bombay, India, pp. 311 - 316, January, 1998. [25] T. DeRose, M. Kass and T. Truong, â€œSubdivision surfaces in character animaÂ¬ tion,â€ in Computer Graphics Proceedings, ACM SIGGRAPH, Annual Conference Series, pp. 85 - 94, July, 1998. [26] R. DeVore, B. Jawerth and B. Linder, â€œImage compression through wavelet transform coding,â€ IEEE Trans actions on Information Theory, vol. 38, no. 2, pp. 719 - 746, March, 1992. [27] D. Doo, â€œA subdivision algorithm for smoothing down irregularly shaped polyÂ¬ hedrons,â€ in Proceedings on Interactive Techniques in Computer Aided Design, pp. 157 - 165, 1978. [28] D. Doo and M. Sabin, â€œAnalysis of the behavior of recursive division surfaces near extraordinary points,â€ Computer Aided Design, vol. 10, no. 6, pp. 356 - 360, 1978. [29] X. Dyn, S. Hed and D. Levin, â€œSubdivision schemes for surface interpolation,â€ in Workshop in Computational Geom,etry, A. Conte, ot ah, Ed., pp. 97 - 118, 1993. [30] X. Dyn, D. Levin and J.A. Gregory, â€œA butterfly subdivision scheme for surface interpolation with tension control,â€ ACM Transactions on Graphics, vol. 9, no. 2, pp. 160 - 169, April, 1990. [31] A. Finkelstein, C.E. Jacobs and D.H. Salesin, â€œMultiresolution video,â€ in Com,- puter Graphics Proceedings, ACM SIGGRAPH, Annual Conferencie Series, pp. 281 - 290, August, 1996. [32] A. Finkelstein and D.H. Salesin, â€œMultiresolution curves,â€ in Computer Graphics Proceedings, ACM SIGGRAPH, Annual Conference Series, pp. 261 - 268, July, 1994. [33] A. Fournier, D. Fussel, and L. Carpenter, â€œComputer rendering of stochastic models,â€ Communications of the ACM, vol. 25, no. 6, pp. 371-384, 1982. [34] G.H. Golub and V.H. Van Loan, Matrix Computations, The Johns Hopkins University Press, Baltimore, 1989. [35] S.J. Gortler, P. Schroder, M.F. Cohen and P. Hanrahan, â€œWavelet radiosity,â€ in Computer Graphics Proceedings, ACM SIGGRAPH, Annual Conference Series, pp. 221 - 230, August, 1993. [36] B.R. Gossick, Hamiltonâ€™s Principle and Physical Systems, Academic Press, Xew York, 1967. 162 [37] A. Habib and J. Warren, â€œEdge and vertex insertion for a class of C1 subdivision surfaces,â€ Computer Aided Geometric Design, to appear. [38] M. Halstead, M. Kass and T. DeRose, â€œEfficient, fair interpolation using Catmull-Clark surfaces,â€ in Computer Graphics Proceedings, ACM SIGGRAPH, Annual Conference Series, pp. 35 - 44, August, 1993. [39] H. Hoppe, Surfa.ce reconstruction from, unorganized points, Ph.D. thesis, UniÂ¬ versity of Washington, Seattle, 1994. [40] H. Hoppe, T. DeRose, T. Duchamp, M. Halstead, H. Jin, J. McDonald, J. Schweitzer and W. Stuetzle, â€œPiecewise smooth surface reconstruction,â€ in Computer Graphics Proceedings, ACM SIGGRAPH, Annual Conference Series, pp. 295 - 302, July, 1994. [41] W.C. Huang and D. Goldgof, â€œAdaptive-size physically-based models for non- rigid motion analysis,â€ in Proceedings of the Conference on Computer Vision and Pa.tt.ern Recognition, Urbana-Champaign, IL, pp. 833 - 835, June, 1992. [42] H. Kardestuncer, The Finite Element Handbook:, McGraw-Hill, Xew York, 1987. [43] L. Kobbelt, â€œInterpolator^' refinement by variational methods,â€ in ApproxiÂ¬ mation Theory VIII, C. Chui and L. Schumaker, Eds., vol. 2 of Wavelets and Multilevel Approximation, pp. 217 - 224, World Scientific Publishing Co., 1995. [44] L. Kobbelt, â€œA variational approach to subdivision,â€ Computer-Aided Geometric Design, vol. 13, pp. 743 - 761, 1996. [45] L. Kobbelt, S. Campagna, J. Vorsatz and H.P. Seidel, â€œInteractive multiresoluÂ¬ tion modeling on arbitrary meshes,â€ in Computer Graphics Proceedings, ACM SIGGRAPH, Annual Conference Series, pp. 105 - 114, July, 1998. [46] L. Kobbelt and P. Schroder, â€œConstructing variationally optimal curves through subdivision,â€ Tech. Rep. CS-TR-97-05, California Institute of Technology ComÂ¬ puter Science Department Technical Report, 1997. [47] E. Koh, D. Metaxas and X. Badler, â€œHierarchical shape representation using loÂ¬ cally adaptive finite elements,â€ in Lecture Notes in computer Science. Computer- Vision - ECCVâ€™94, J.O. Eklundh, Ed., vol. 800, pp. 441 - 446, Springer-Verlag, Berlin, Germany, 1994. [48] S.H. Lai and B.C. Vemuri, â€œPhysically-based adaptive preconditioning for early vision,â€ IEEE Transa.cti.ons on Pattern Analysis and Machine Intelligence, vol. 19, no. 6, pp. 594 - 607, June, 1997. [49] F. Leitner and P. Cinquin, â€œComplex topology 3D objects segmentation,â€ in Model-based Vision Developm.ent and Tools. SPIE Proceedings, Bellingham, WA, vol. 1609, pp. 16 - 26, SPIE, 1991. 163 [50] Z. Liu. S.J. Gortlor and M.F. Cohen. â€œHierarchical spacetime control,â€ in Computer Graphics Proceedings, ACM SIGGRAPH, Annual Conference Series, pp. 35 - 42, July, 1994. [51] C. Loop, Smooth subdivision surfaces based on triangles, M.S. thesis, University of Utah, Department of Mathematics, 1987. [52] J.M. Lounsbery, Multiresolution analysis for surfaces of arbitrary topological type, Ph.D. thesis, University of Washington, Seattle, 1994. [53] J.M. Lounsbery, T. DeRose and J. Warren, â€œMultiresolution analysis for surfaces of arbitrary topological type,â€ ACM Transactions on Graphics, vol. 16, no. 1, pp. 34 - 73, January, 1997. [54] R. Malladi, J.A. Sethian, and B.C. Vomuri, â€œShape modeling with front propÂ¬ agation : a level set approach,â€ IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 17, no. 2, pp. 158 - 175, February, 1995. [55] S. Mallat, â€œA theory for multiresolution signal decomposition : the wavelet repÂ¬ resentation,â€ IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 11, no. 7, pp. 674 - 693, July, 1989. [56] S. Mallat and W.L. Hwang, â€œSingularity detection and processing with wavelets,â€ IEEE Transactions on Information Theory, vol. 38, no. 2, pp. 617 - 643, March, 1992. [57] C. Mandal, H. Qin and B.C. Vomuri, â€œDynamic smooth subdivision surÂ¬ faces for data visualization,â€ in IEEE Visualizationâ€™97 Conference Proceedings, Phoenix,AZ, pp. 371 - 377, October, 1997. [58] C. Mandal, H. Qin and B.C. Vomuri, â€œDirect manipulation of butterfly subdiviÂ¬ sion surfaces : a physics-based approach,â€ IEEE Transactions on Visualization and Computer Graphics, submitted, available as University of Florida Tech. Rop. CISE-TR-98-009, 1998. [59] C. Mandal, H. Qin and B.C. Vomuri, â€œA novel FEM-basod dynamic frameÂ¬ work for subdivision surfaces,â€ Fifth ACM Symposium, on Solid Modeling and Applications, submitted, 1999. [60] C. Mandal, B.C. Vomuri and H. Qin, â€œShape recovery using dynamic subdivision surfaces,â€ in Proceedings of the International Conference on Computer Vision, Bombay, India, pp. 805 - 810, January, 1998. [61] C. Mandal, B.C. Vomuri and H. Qin, â€œA now dynamic FEM-basod subdivision surface model for shape recovery and tracking in medical images,â€ in Lecture Notes in computer Science. Medical Image Computing and Computer-Assisted Intervention - MICCAP98, W.M. Wells ct ah, Eds., Cambridge, MA, vol. 1496, pp. 753 - 760, Springer, 1998. 164 [62] T. Mclnerney and D. Terzopoulos, â€œA dynamic finite element surface model for segmentation and tracking in multidimensional medical images with application to cardiac 4D image analysis,â€ Computerized Medical Imaging and Graphics. vol. 19, no. 1, pp. 69 - 83, 1995. [63] T. Mclnerney and D. Terzopoulos, â€œTopologically adaptable snakes,â€ in ProÂ¬ ceedings of the International Conference on Computer Vision, Cambridge, MA, pp. 840 - 845, June, 1995. [64] T. Mclnerney and D. Terzopoulos, â€œDeformable models in medical image analÂ¬ ysis : a survey,â€ Medical Image Analysis, vol. 1, no. 2, pp. 91 - 108, 1996. [65] D. Metaxas and D. Terzopoulos, â€œDynamic deformation of solid primitives with constraints,â€ in Computer Graphics Proceedings, ACM SIGGRAPH, Annual Conference Series, pp. 309 - 312, July, 1992. [66] D. Metaxas and D. Terzopoulos, â€œShape and non-rigid motion estimation through physics-based synthesis,â€ IEEE Tra.nsa.cti.ons on Pattern Analysis and Machine Intelligence, vol. 15, no. 6, pp. 580 - 591, June, 1993. [67] D. Meyers, â€œMultiresolution tiling,â€ in Proceedings of Graphics Interface, pp. 25 - 32, May, 1994. [68] D. Meyers, Reconstruction of surfaces from planar contours, Ph.D. thesis, UniÂ¬ versity of Washington, Seattle, 1994. [69] O. Monga and R. Deriche, â€œ3D edge detection using recursive filtering,â€ in Proceedings of IEEE Conference on Computer Vision and Pattern Recognition, pp. 28 - 35, June, 1989. [70] A. Pentland, â€œFast solutions to physical equilibrium and interpolation probÂ¬ lems,â€ Visual Computer, vol. 8, no. 5-6, pp. 303 - 314, June, 1992. [71] A. Pentland and B. Horowitz, â€œRecovery of non-rigid motion and structure,â€ IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 13, no. 7, pp. 730 - 742, July, 1991. [72] A. Pentland and J. Williams, â€œGood vibrations : Modal dynamics for graphics and animation,â€ in Computer Graphics Proceedings, ACM SIGGRAPH, Annual Conference Series, pp. 215 - 222, 1989. [73] J. Peters and U. Reif, â€œThe simplest subdivision scheme for smoothing poly heÂ¬ rirÃ¡,â€ ACM Transactions on Graphics, vol. 16, no. 4, pp. 420 - 431, October, 1997. [74] J. Peters and U. Reif, â€œAnalysis of generalized B-spline subdivision alÂ¬ gorithms,â€ SIAM Journal of Numerical Analysis, to appear, available at ftp://ftp.es.pnrdue.edU/pub/jorg/9697agb.ps.Z. 165 [75] W.H. Press, S.A. Teukolsky, W.T. Vetterling and B.P. Flannery, Numerical, Recipes in C, Cambridge University Press, 1992. [76] H. Qin, C. Mandal and B.C. Vemuri, â€œDynamic Catmull-Clark subdivision surfaces,â€ IEEE Transactions on Visualization and Computer Graphics, vol. 4, no. 3, pp. 215 - 229, July - September, 1998. [77] H. Qin and D. Terzopoulos, â€œDynamic XURBS swung surfaces for physics-based shape design,â€ Computer-Aided Design, vol. 27, no. 2, pp. Ill - 127, 1995. [78] H. Qin and D. Terzopoulos, â€œD-XURBS : A physics-based framework for geoÂ¬ metric design,â€ IEEE Tro,ns actions on Visualization and Computer Graphics, vol. 2, no. 1, pp. 85 - 96, January - March, 1996. [79] E. Quak and X. Weyrieh, â€œDecomposition and reconstruction algorithms for spline wavelets on a bounded interval,â€ CAT report 294, Center for ApproximaÂ¬ tion Theory, Texas A&M University, April, 1993. [80] U. Reif, â€œA unified approach to subdivision algorithms near extraordinary points,â€ Computer Aided Geometric Design, vol. 12 , no. 2, pp. 153 - 174, 1995. [81] O. Rioul and M. Vetterli, â€œWavelets and signal processing,â€ IEEE Signal ProÂ¬ cessing Magazine, vol. 8, no. 4, pp. 14 - 38, October, 1991. [82] W. Riimelin, â€œFractal interpolation of random fields of fractional Brownian motion,â€ in Fractal Geometry and Computer Graphics, J.L. Encarnacao et ah, Eds., pp. 122 - 132, Springer-Verlag, 1992. [83] M. Sabin, The use of piecewise form,s for the numerical representation of shape, Ph.D. thesis, Hungarian Academy of Sciences, Budapest, 1976. [84] D. Saupc, â€œAlgorithms for random fractals,â€ in The Science of Fractal Images, H.O. Peitgen and D. Saupc, Eds., pp. 71 - 136, Springer - Verlag, 1988. [85] P. Schroder, S. J. Gortlor, M.F. Cohen and P. Hanrahan, â€œWavelet projections for radiosity,â€ in Proceedings of the Fourth Eurographics Workshop on Rendering, Paris, France, pp. 105 - 114, 1994. [86] P. Schroder and W. Sweldens, â€œSpherical wavelets : efficiently representing functions on the sphere,â€ in Computer Graphics Proceedings, ACM SIGGRAPH, Annual Conference Series, pp. 161 - 172, August, 1995. [87] J.E. Schweitzer, Analysis and Application of Subdivision Surfaces, Ph.D. thesis, University of Washington, Seattle, 1996. [88] T.W. Sodorborg, J. Zheng, D. Sewell and M. Sabin, â€œXon-uniform recursive subdivision surfaces,â€ in Computer Graphics Proceedings, ACM SIGGRAPH, Annual Conference Series, pp. 387 - 394, July, 1998. 166 [89] L.H. Staib and J.S. Duncan, â€œBoundary finding with parametrically deformable models,â€ IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 14, no. 11, pp. 1061 - 1075, 1992. [90] J. Stain, â€œExact evaluation of Catmull-Clark subdivision surfaces at arbitrary parameter values,â€ in Computer Graphics Proceedings, ACM SIGGRAPH, AnÂ¬ nual Conference Series, pp. 395 - 404, July, 1998. [91] J. Stain, â€œEvaluation of Loop Subdivision Surfaces,â€ in SIGGRAPHâ€™98 CDROM Proceedings, ACM SIGGRAPH, July, 1998. [92] E.J. Stollnitz, T.D. DeRose and D.H. Salesin, Wavelets for computer graphics : theory and applications, Morgan Kaufmann, San Francisco, 1996. [93] W. Sweldens, â€œThe lifting scheme : a custom-design construction of biorthogonal wavelets,â€ Tech. Rep. 1994:7, Industrial Mathematics Initiative, Department of Mathematics, University of South Carolina, 1994. [94] R. Szeliski and D. Terzopoulos, â€œFrom splines to fractals,â€ in Computer Graphics Proceedings, ACM SIGGRAPH, Annual Conference Series, pp. 51 - 60, August, 1989. [95] H. Tanaka and F. Kishino, â€œAdaptive mesh generation for surface reconstruction : Parallel hierarchical triangulation without discontinuities,â€ in Proceedings of the Conference on Computer Vision and Pattern Recognition, Xew York City, XY, pp. 88 - 94, June, 1993. [96] D. Terzopoulos, â€œRegularization of inverse visual problems involving discontiÂ¬ nuities,â€ IEEE Trans actions on Pattern Analysis and Mo,chine Intelligence, vol. 8, no. 4, pp. 413 - 424, 1986. [97] D. Terzopoulos and K. Fleischer, â€œDeformable models,â€ The Visual Computer, vol. 4, no. 6, pp. 306 - 331, 1988. [98] D. Terzopoulos and D. Metaxas, â€œDynamic 3D models with local and global deÂ¬ formations: Deformable superquadrics,â€ IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 13, no. 7, pp. 703 - 714, July, 1991. [99] D. Terzopoulos, J. Platt, A. Barr and K. Fleischer, â€œElastically deformable modÂ¬ els,â€ in Computer Graphics Proceedings, ACM SIGGRAPH, Annual Conference Series, pp. 205 - 214, 1987. [100] D. Terzopoulos and H. Qin, â€œDynamic XURBS with geometric constraints for interactive sculpting,â€ ACM Transactions on Graphics, vol. 13, no. 2, pp. 103 - 136, April, 1994. [101] M. Vasilescu and D. Terzopoulos, â€œAdaptive meshes and shells : Irregular triangulation, discontinuities and hierarchical subdivision,â€ in Proceedings of the 167 Conference on Computer Vision and Pattern Recognition, Urbana-Champaign. IL, pp. 829 - 832, Juno, 1992. [102] B.C. Vomuri and C. Mandal, â€œA fast Gibbs sampler for synthesizing constrained fractals,â€ in IEEE Visualizationâ€™96 Conference Proceedings, Phoenix,AZ, pp. 29 - 35, October, 1996. [103] B.C. Vomuri, C. Mandal and S.H. Lai, â€œA fast Gibbs sampler for synthesizÂ¬ ing constrained fractals,â€ IEEE Trans actions on Visualization and Computer Graphics, vol. 3, no. 4, pp. 337 - 351, October - December, 1997. [104] B.C. Vomuri and A. Radisavljevic, â€œMultiresolution stochastic hybrid shape models with fractal priors,â€ ACM Transactions on Graphics, vol. 13, no. 2, pp. 177 - 207, April, 1994. [105] W. Welch and A. Within, â€œVariational surface modeling,â€ in Computer GraphÂ¬ ics Proceedings, ACM SIGGRAPH, Annual Conference Series, pp. 157 - 166, July, 1992. [106] C. Xu and J.L. Prince, â€œSnakes, Shapes, and Gradient Vector Flow,â€ IEEE Transactions on Image Processing, vol. 7, no. 3, pp. 359 - 369, March, 1998. [107] X. Yokoya, K. Yamamoto, and X. Funakubo, â€œFractal-based analysis and interpolation of 3d natural surfaces and their application to terrain modeling,â€ Computer Vision, Graphics and Image Processing, vol. 46, pp. 284-302, 1989. [108] D. Zorin, â€œSmoothness of stationary subdivision on irregular meshes,â€ ConÂ¬ structive Approximation, submitted, available as Stanford Computer Science Lab Tech. Rep. CSL-TR-98-752, 1998. [109] D. Zorin, P. Schroder and W. Sweldens, â€œInterpolating subdivision for meshes with arbitrary topology,â€ in Computer Graphics Proceedings, ACM SIGGRAPH, Annual Conference Series, pp. 189 - 192, August, 1996. [110] D. Zorin, P. Schroder and W. Sweldens, â€œInteractive multiresolution mesh editÂ¬ ing,â€ in Computer Graphics Proceedings, ACM SIGGRAPH, Annual Conference Series, pp. 259 - 268, August, 1997. BIOGRAPHICAL SKETCH Chhandomay Mandal was born on 16th December. 1972, at Bishnupur, WB. InÂ¬ dia. He received Bachelor of Technology (Honors) degree in electronics and electrical communications engineering from Indian Institute of Technology. Kharagpur, India, in June, 1995, and Master of Science degree in computer and information science and engineering from University of Florida, Gainesville, in May, 1997. He is expected to receive the Doctor of Philosophy degree in computer and information science and engiÂ¬ neering from University of Florida, Gainesville, in December, 1998. He has published several papers in technical conferences and reputable journals, and has served as an auxiliary reviewer for IEEE Transactions on Pattern Recognition and Machine InÂ¬ telligence and for several conferences, including International Conference on Pattern Recognition and IEEE Conference on Computer Vision and Pattern Recognition. His research interests include computer graphic's, computer vision, physics-based modelÂ¬ ing and simulation, computer-aided geometric.1 design, visualization techniques and computer animation. He is a member of ACM SIGGRAPH. 168 PAGE 2 !" # $ ""%&'(% %&'%) PAGE 3 %*& #+, %&' #"* PAGE 4 %( '**) !%#*-.) # ( %'/ + 0 %$% 0 *( . , 1"+* !. '%&*, *&2 .%!*(*& # %&' +.# (%'* #"* ()*# & #" + 1 3 ++ $)*0 #"%&3 " ( " + %%'*( %+ 1 *)) %+ &&2%%'*( %'/ * %&' %++ +#%&* '. &! ( +#.' %# #"* & / *+ # ) '%, %&' " + (*++ / * *4%()* & #*! # %&' %%'*( *+&+ $ ) # 0 1 +"#*4*+++ &**%* %# &#( 2%'/ +,0 &! &, & #'. &!(*##"*1 &'*+-(.#*!%" +,-%# *& #)!. ' &!(*%)) #"* 1 % # ))#"**&', %&'-%++ +# &!(* &/ % .+1 % +0 1 .)'%)+) 3 *##"%&3 0 %#%5 %"& , 0 %.) 0 +" 1 3 %&' 0 .!)%+ 0 *&6* +*/ &! & ( +.*/ + (( ##**%&' %'/ + &!(*& / % .+%+*#+ -#" + ' ++*#%# &0 ' ++*#%# &*+*% " 1 %++.#*' &%#$ #"*!%& #2789: %&' #"* !%& # 28;::0 *( . , %&' $ #"* % 1 %' 2<878= %&' 2<8870 &0 1 +" # % 3& 1)*'!* 0 ( &2 *&* , 0 *! * %)%&'% &, 0 .!"*+ *, 0 % .)) , 0 ( # )'!-, 0 " +# &% *&%' %&' 0 "%&!2&! % "*) &! (* %# / % .+ +#%!*+ -#"* 1 3 $ / ' &!/ % .+'%#%+*#+, +-# 1 %* %&' >!.*+0 1.)' ) 3 * # #"%&3 #"* -%.)# , +#%? %&' +#.'*& #+ #"* (.#* %&' &2 -(%# & + *&* %&' *&! &** &! '*%#(*& #, 1" 1 ** %)1 % + #"** # "*) (*0 / PAGE 5 & ( *%+ 1 #" #"* (.#%# &%) / + &, !%" + %&' (*' %) (%! &! !., "% / * *&5 *' 1 3 &! 1 #" % +*# $ !" # +#.'*& #+, &).' &! %&) & ., %, "*&, %&!, " .%&! &! .%&!, " &% %, *&!# &! "*&, .& & 2 / %+%&, @.&'&! . %&' @.& *0 * %) #"%&3+ !*+ # ( )&! # (* ((%#*+, %5%"%##*5**%&' &!+" .3%5.('%,-"*) &!(* &/ % .+1 % +'. &!( +#% %#% &*+/ ))*0 &%)) ,1 .)') 3 *##"%&3( %*& #+%&'( $#"*-#"* &+#%& # *&2 .%!*(*& #%&'+.#,"** &!(*.'. &!#"*"%''% +%&'/ ' &! %&*/ * &*%+ &! &*& # / *#>& +"( !%'.%#*+#.' 0 1 .)'"%/ *$**&& 1"** &*% ( !%)+1 #".##"*(0 / PAGE 6 / 4 4 0 $)*(#%#*(*& # 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7 07 +*' ).# &0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 00 0 0 0 0 0 0 = 0= & # $.# &+ 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ; 0: .#) &*++*#%# & 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7 70 .$' / + &.-%*+ 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 707 " + +2$%+*' *-(%$)*.-%* '*)+ 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 < 70= "%* '*) &!+ &!" + +2$%+*' .$' / + &2+.-%*'*) 0 0 0 78 70: "%*%&'# &+# (%# &+ &!" + +2$%+*'.$' / + &2+.-%* '*) 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 00 0 0 0 0 0 0 0 77 70; & >*' %(*1 3"%* * / * %&'"%* '*) &! 0 0 0 0 0 7: = 2 7< =0 / */ *1 -#"* %#( .))2)%3.$' / + & "*(* 0 0 0 0 0 0 0 0 0 0 7< =07 ( .)%# & 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 =8 =070 ++ !& &! %#"*+ #*!.)% %*+ 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 = =0707 ++ !& &! %# "*+ #*!.)% %*+ 0 0 0 0 0 0 0 0 0 0 0 0 0 0 == =070= &*(%# + 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 =9 =070: &%( + 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 00 :: =070; .)# )*/ *)&%( + 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 :9 =0= & #*)*(*& # ()*(*& #%# & 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 : =0=0 %#%#.#.*+ 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 : =0=07 (%))*(*& #+ 0 0 0 0 0 0 0 0 0 0 0 0 00 0 0 0 0 0 0 0 0 0 0 0 ; =0=0= * %))*(*& #+ 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ; / PAGE 7 =0=0: * ) %# & 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ;7 =0=0; +*#* &%( A.%# & 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ;: =0=09 '*).$' / + & 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ;; =0: *&*%) 6%# &-#"* % " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 00 0 0 0 ;9 : ;< :0 / */ *1 -#"* B' >*'C.##*D .$' / + & "*(* 0 0 0 0 0 0 0 ;< :07 ( .)%# & 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 9 :070 %) %%(*#* 6%# & 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 00 0 0 97 :0707 &%( + 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 <7 :070= .)# )*/ *)&%( + 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 <: :0= & #*)*(*& # ()*(*& #%# & 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 <9 :0=0 )*(*& #%)%++ %&' %( &!(%# *+ 0 0 0 0 0 00 0 0 0 0 0 0 << :0=07 )*(*& #%)# ?&*++ %# 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 < :0=0= #"* ()*(*& #%# &++.*+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 :0: *&*%) 6%# &-#"* % " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7 ; = ;0 / */ *1 -#"* & >*' %" 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 = ;07 & >*' &%( %(*1 3-%#( .))2)%3.$' / + &.-%*+ 0 ; ;070 %) %%(*#* 6%# & 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ;0707 &%( + 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7 ;070= & #*)*(*& # ()*(*& #%# & 0 0 0 0 0 0 00 0 0 0 0 0 0 0 0 0 7 ;0= & >*' &%( %(*1 3-.$' / + &.-%*+ 0 0 0 0 0 0 ; ;0=0 %) %%(*#* 6%# & 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 < ;0=07 &%( + 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 88 ;0=0= & #*)*(*& # ()*(*& #%# & 0 0 0 0 0 0 0 0 0 0 0 0 0 00 0 0 88 ;0: *&*%) .#) &* #"* %(*1 3 4 (%# &! .$' / + & "*(*+ 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 8 ;0; *&*%) .#) &* #"* %(*1 3 & #*)%# .$' / + & "*(*+ 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 00 0 87 9 8= 90 / */ *1 -.)# *+).# &&%)+ +%&' % / *)*#+ 0 0 0 0 0 0 0 0 0 0 8 907 .)# *+).# &&%)+ +.-%*+ $ #% )! 0 0 0 0 0 : 9070 *+#*' %*+ #".!" .$' / + & 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 9 90707 &&* '.# 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 00 0 0 0 0 0 0 0 0 0 0 9070= #"!&%).-%* % / *)*#+ & $ #%%& -)' 0 0 0 0 0 90= .)# *+).# &**+*& #%# & 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7; 90: &%( + 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7 90; ()*(*& #%# &*#% )+ 0 0 0 0 0 0 0 0 0 0 00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7 / PAGE 8 < == <0 )! %)&-(%# &*++ &! '.)* 0 0 0 0 0 0 0 0 0 0 0 0 0 0 =; <07 .$' / + &'.)* 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 =; <0= & #*)*(*& # &%)+ + '.)* 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 00 0 0 0 0 =; <0: * & #"*+ + '.)*0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 =9 <0; '%#* &! &* 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 =9 <09 +)% '.)* 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 00 0 0 0 =< = 0 *(*# '*) &! 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 = 07 "%* * / * -(%&!*%&' ).(*%#% 0 0 0 0 0 0 0 0 0 0 0 0 0 :7 0= &2 ! '# &+# (%# &0 0 0 0 0 0 00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 : 0: .)# *+).# &' # &! 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ;8 0; %#.%) *% &'*) &! 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ; ;; 0 &).+ &+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ;; 07 .#.* *# &+ 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ;9 070 .#(%# "%&!* )! 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ;9 0707 %) *>&*(*& # 0 0 0 0 0 0 0 00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ;< 070= .#(%# '*) %%(*#* *)*# & 0 0 0 0 0 0 0 0 0 0 0 0 0 ;< 070: &+#% & # (+ # & 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ;< 070; * / * -"% *%#.*+ 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ; 0709 .#(%# '*) & # %) 6%# & 0 0 0 0 0 0 00 0 0 0 0 0 0 0 0 0 ; 070< ( / *' & #"*+ 6*' * *)'+ 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ; ; 9 / PAGE 9 70 *>&*(*& # %& & # %) & #) (*+" # $#% & #"* ) ( # +.-%*0 B.#*+ E 0*C 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7 =0 %#( .))2)%3+.$' / + & E B%C & # %)(*+", B$C (*+" $#% &*' %-#* &* +#* %#( .))2)%3 +.$' / + &, %&' BC (*+" $#% &*' %-#* %&#"* +.$' / + &+#*0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7 =07 *#%&!.)%(*+"%&' #+) ( #+.-%*&+ +# &!-:$ .$ +.-%* %# "*+0 0 00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 =7 =0= (*+" 1 #" %& *4#%' &% & #'*!** =%&' #+) ( #+.-%*0 =: =0: %)+.$' / + &%.&'#"* *4#%' &% & #%&'#"* ) ( #+.-%*0 =; =0; %)+.$' / + &%.&'#"**4#%' &% & #%&'#"**+&'2 &!%# "*+ &#"* ) ( #+.-%* -(' ?**& # )*/ *)+ -+.$' / + &0 0 0 := =09 "*'%#%+#.#.*.+*'-'&%( +.$' / + &+.-%* ()*(*& #%# &0 ;8 =0< '*) +.$' / + & # &*%+* #"* '*!**+ -**'( E B%C */ ).# & #"* & # %) (*+", %&' B$C #"* *+&' &! ) ( #+.-%* */ ).# & ** / *' $ #"* .+*000 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ;; :0 B%C"*& #))!&1 #"# %&!.)%-%*+FB$C(*+"$#% &*'%-#* &* +.$' / + &+#* .+ &!$.##*D +.$' / + &.)*+0 0 0 0 0 0 0 0 0 0 ; :07 B%C"*& # $.# &!/ *# *+ &#"*52#")*/ *)-#"*/ *#*4 &#"*5G2 #")*/ *)*+&' &!##"**'!*$*# 1 **& %&' FB$C#"*1 * !" &! -%#+ -' ?**& # / *# *+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ; :0= B%C "* 1 * !" &! -%#+ & # $.# &!/ *#*4 + # &+ %& *'!* &&*# &! # 1 / *# *+ '*!** 9F B$C #"* *+&' &! %+* 1"*& &* / *#*4 +'*!** %&'#"* #"* +-'*!** 90 0 0 0 0 0 0 0 0 0 98 :0: "*+(#" &!*?*#-#"*+.$' / + &*++&#"*# %&!)*+-#"* & # %)(*+"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 97 4 PAGE 10 :0; % 3 &! % & # #".!" / % .+ )*/ *)+ +.$' / + & E B%C & # %) (*+", B$C #"* +*)*#*' +*# & B*&)+*' $ '##*' ) &*+C #"* (*+" & B%C, %-#* &* +.$' / + &+#*, BC #"* +*)*#*' +*# & #"* (*+" & B$C, %-#*%&#"* +.$' / + &+#*0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 9: :09 ?**& #+*#-& #) & #+%#%+.$' / '*')*/ *)$#% &*'$ %)2 &!' ?**& # +.$' / + &(%# *+ &% ! / *& +*# -& #) & #+ &% %+* (*+"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 9<29 :0< B%C & & # %)(*+", %&' B$C #"* *+&' &! ) ( #+.-%*0 "* '2 (% &+-#"*+"%'*'*)*(*& #+ &#"*) ( #+.-%*%*#"**+&' &! # %&!.)% -%*+ & #"* & # %) (*+"0 "* *& )*' / *# *+ & B%C %* #"* '*!**+ --**'(#"* *+&' &!*)*(*& #0 0 0 0 0 0 0 0 0 0 <; ;0 & #)(*+"1 #"%&*4#%' &%/ *#*4-'*!**;%&'#"**2 +&' &!) ( #+.-%*E B%C.+ &!#"*&*#+'*/ *)*' &"%#*=, 1"** #"* ) ( #+.-%* &+ +#+ A.%' )%#*%) &(%) *)*(*& #+ %&' %*& #%!&%)+* %)*)*(*& #F B$C.+ &!#"* .& >*' &*# '*/ *)*' & #" + "%#*, 1"** #"* ) ( # +.-%* &+ +#+ &* + &!)* # * A.%' )%#*%)>& #* *)*(*� 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 9 ;07 &%#( .))2)%3+.$' / + &,*% "&&2$.&'%A.%' )%#*%)-%* & #"* & #) (*+" "%+ % *+&' &! A.%' )%#*%)%# " & #"* ) ( # +.-%* E B%C& #)(*+", B$C ) ( #+.-%*0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 < ;0= B%C "* (%3 *' 9 & #) / *# *+ '*>&* #"* +"%'*' A.%' )%#*%) %# "%++ %#*'1 #"#"*+"%'*'*!.)%-%* &#"*& #)(*+"FB$C #"* (%3 *' : & #) / *# *+ '*>&* #"* +"%'*' A.%' )%#*%) %# " %++ %#*' 1 #"#"* +"%'*' *!.)%-%* & #"* & #)(*+"000 0 0 0 ;0: B%C"*& #))!&1 #"# %&!.)%-%*+FB$C(*+"$#% &*'%-#* &* +.$' / + &+#* .+ &!H+ +.$' / + &.)*+0 0 0 0 0 0 0 0 0 0 0 9 ;0; & & # %) (*+" %&' #"* *+&' &! ) ( # +.-%* $#% &*' .+ &! H++.$' / + &.)*+0 "*'(% &+-#"*+"%'*'# %&!.)%%# "*+ &#"*) ( #+.-%*%*#"**+&' &!# %&!.)%-%*+ &#"* & # %) (*+"0 "* *& )*' / *# *+ %* #"* & #) / *# *+ #"* *2 +&' &!# %&!.)%%# " &#"* ) ( #+.-%*0 0 0 0 0 0 0 0 0 0 0 0 0 0 ;09 % " # %&!.)% %# " & #"* ) ( # +.-%* %& $* %++ %#*' 1 #" % &&2$.&'%# %&!.)%-%* &#"* & # %)(*+",1" " &#.&%&$* %%(*#* 6*' / * %# %&!)*1 #"/ *# *+ %#B8 8C,B 8C%&' B8 C00 90 "*(%# $) 3' %!%(-#"* ( .)# )*/ *)'&%( +%% "0 0 0 0 0 8: 4 PAGE 11 907 .)# )*/ *)'&%( +/+0 ( .)# *+).# &'&%( +0 0 0 0 0 0 0 0 0 0 0 0 89 90= **+*& #%# & #"* '*!**+ -**'( & ( .)# )*/ *) '&%( + %&' ( .)# *+).# &'&%( + %% "0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 8 90: "* >)#*$%&30 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7 90; .$' / + &*>&*(*& # -%#*#%"*'&0 0 0 0 0 0 0 0 00 0 0 0 0 0 0 0 909 % / *)*# &+#.# &0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7= <0 +#*( % " #*#.*0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 =: 0 B%C,B$C,BC%&'B'CE & # %)+"%*+B$#% &*'%) &!%#( .))2)%3 +.$' / + & .)*+ & & #) (*+"*+CF B*C, B-C, B!C %&' B"C E #"* *2 +&' &!(' >*'+"%*+ %-#* & #*%# / *-* %) %# &0 0 00 0 0 = 07 B%C, B$C,BC %&' B'C E & # %)+"%*+ B$#% &*' %) &!(' >*'$.#2 #*D +.$' / + & .)*+ & & #) (*+"*+CF B*C, B-C, B!C %&' B"C E #"* *+&' &!(' >*'+"%*+%-#* & #*%# / *+.)# &!/ %-*%2 ) %# &00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 : 0= B%C %&!* '%#% % $.)$ %)&! 1 #" #"* & # %) 6*' ('*), B$C %& & #*(*' %#* +#%!* */ ).# &, %&' BC #"* >##*' '&%( %#( .))2 )%3+.$' / + & +.-%* ('*)00 0 0 0 0 0 00 0 0 0 0 0 0 0 0 0 0 0 0 0 := 0: B%C %&!* '%#% %& %& / ) %)&! 1 #" #"* & # %) 6*' ('*), B$C %& & #*(*' %#* +#%!* */ ).# &, %&' BC #"* >##*' '&%( %#( .))2 )%3+.$' / + & +.-%* ('*)00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 :: 0; B%C %&!* '%#% % "*%' %)&! 1 #" #"* & # %) 6*' ('*), B'C #"* >##*' '&%( $.##*D +.$' / + & ('*), %&' BC / +.%) 6%# & #"* +"%* -(%&#"*/ *1 & #0 0 0 0 0 0 00 0 0 0 0 0 0 0 0 0 0 0 0 :: 09 B%C +) * -( % $% & , B$C & # %) 6*' ('*) &+ '* #"* *! & & #**+# +.* (+*' & #"* +) *, BC #"* >##*' ('*) +.* (2 +*' & #"* +) *, %&' B'C % = / *1 #"* '&%( %#( .))2)%3 +.$' / + &+.-%* ('*)>##*' # #"* **$*)).(00 0 0 0 0 0 0 0 0 0 0 :9 0< B%C %#% & #+ '*& # &! #"* $.&'% #"* %.'%#* & .)*.+ & % +) * " .(%& $% &, B$C '%#% & #+ B-( %)) +) *+C & =%)&! 1 #" #"* & # %) 6*'('*), %&' BC #"* >##*' '&%( $.##*D +.$' / + &('*)0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 :9 4 PAGE 12 0 &%+"#+ -( #"* %& (%# & %& &* "*%# (# & / * % %' % )* .+ &! #"* '&%( $.##*D +.$' / + &('*)0 0 0 0 0 0 0 0 0 0 : 0 B%C"* & # %) 6*'('*)%)&!1 #"#"*'%#%+*#FB$C#"*>##*'('*) 1 #"# 1 +.$' / + &+&#"* & # %)(*+",%)&!1 #"%##% "*'+ &!+ -*' # &!0 "*('*)%-#**' # &!BC%#) 1 **+).# &,B'C%##"* +%(* *+).# &-#"* >##*' ('*),%&' B*C %# " !"* *+).# &0 0 0 0 ;8 08 B%C +*#* *)*/ %# & '%#% +*# B:89 & #+C, B$C >##*' '&%( $.#2 #*D +.$' / + & +.-%* ('*) 1 #" : / *# *+ B1 #".# & +* %'2 ' # &C, %&' BC >##*' '&%( +.$' / + & +.-%* ('*) 1 #" : / *# *+ 1"*& %.++ %& & +* +%''*'0 0 0 0 0 0 0 0 0 0 00 0 0 0 0 0 0 ;= 0 & #"*+ 6*' &%#.%) #*% & ' ?**& # .!"&*++ .+ &! #"* '&%( $.##*D +.$' / + & +.-%* ('*) 1 #" : / *# *+ -( % '%#% +*# =8*)*/ %# &/ %).*+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ;: 4 PAGE 13 $+#%# ++*#%# & *+*& #*' ##"* %'.%#* ")-#"* & / *+ # -) '% & %# %) .)>))(*& #-#"* *A. *(*& #+ -#"* *!** -# -" )+" ""%&'(% %&'%) **( $* "% (%&E 0 %$%0 *( . "% (%&E 0 &! & %5 *%#(*& #E (.#* %&' &-(%# & *&* %&'&! &** &! .$' / + & +.-%*+ %* *4#*&+ / *) .+*' # ('*) +(#" +"%*+ %$ #% #)! 0 *.+ / * +.$' / + & & % .+*2'*>&*' & # %) & #) (*+" !*&*%#*+ % / +.%)))*%+ &!+(#"+.-%* &#"* ) ( #0 1 */ *, .+*+ "% / * #%*-.))+*)*# #"* & # %) (*+" %&'I (%& .)%#* #"* &#) / *#*4 + # &+ %# ' ?**& # )*/ *)+ +.$' / + & " *% " # +%# +#"* -.&# &%) %&' %*+#"*# *A. *(*& #+ & #"* +(#") ( #+.-%*0 " +('*) &!'% 1$% 3*+.)#+-(#"*)% 3-' *#(%& 2 .)%# &#)+-#"*) ( #+.-%*0 &#" +' ++*#%# &,#* "& A.*+-(" + +2$%+*' ('*) &! %* & #*!%#*' 1 #" !*(*# +.$' / + & (*#"')! , %&' % '&%( -%(*1 3 +*+*& #*'-' *#(%& .)%# &-#"*+(#") ( #+.-%*!*&*%#*' $ #"* +.$' / + &+ "*(*+ .+ &! " + +2$%+*' J-*K#)+0 4 PAGE 14 & % # %) +.$' / + & + "*(*, #"* .+* +#%#+ 1 #" %& & # %) & #) (*+" 1" " + *>&*' *.+ / *) .+ &! % >4*' +*# +.$' / + & .)*+, %&' % +(#" +.2 -%* +'.*' &#"*) ( #0 +#-#*&#" +) ( #+.-%*'*+&#"% / * %&%&%)# *4*++ &, %&' "*&* +*+ "%))*&! &! $)*(+ & &%# &! (%++ %&' '%(2 &! ' +# $.# & -.&# &+, & #*&%) '*-(%# & *&*! , -*+, %&' #"* " + %) A.%& # # *+ *A. *' # '*/ *) % " + +2$%+*' +.$' / + & +.-%* ('*)0 & #" + ' ++*#%# &,)%)%%(*#* 6%# &#* "& A.*+ +. #%$)*-*( $*'' &!#"*!*(*# +.$' / + & +.-%* ('*) & % " + +2$%+*' ('*) &! -%(*1 3 "% / * $**& '*/ *)2 *'0 * > )%) %%(*#* 6%# &#* "& A.*+ "% / * $**& -.)) '*/ *)*' #"* %#( .))2)%3, (' >*' $.##*D %&' #"* +.$' / + & + "*(*+0 * "& A.*+ %++ !& &! (%#* %) *# *+ # !*(*# +.$' / + & +.-%*+ %* '* / *', %&' % (# & *A.%# & #"* '&%( ('*) "%+ $**& -( .)%#*' .+ &! %!%&! %& '&%( +0 .#"*(*, %'/ %& #%!*+ #"* " + +2$%+*' '*-(%$)* ('*)+ %* &2 %#*' & # #"* & / *& # &%) +.$' / + & + "*(*+, %&' % '&%( " *% " %) & #) #" + ('*) + & #'.*'0 &%)) , % ( .)# *+).# & **+*& #%# & #"* & #) (*+" + '*/*)*' %&' % .& >*' %% " '* / &! +.$' / + & +.-%*2 $%+*' >& #**)*(*& #+ +*+*& #*'0 "*+*' '&%( -%(*1 3*&"%&*+ #"*%) %$ ) # -#"*+.$' / + & +.-%*+ & ('*) &! %) %# &+0 # + %)+ .+*-.) " *% " %) +"%* * / * -()%!*%&!*%&'/ ).(*'%#%+*#+,%+1 *))%+-&&2 ! '(# &#% 3 &!-( % #*(%)+*A.*&* '%#% +*#+0 .)# *+).# &**+*& #%# & #"* & # %)(*+" & #)) &!#"* +(#" ) ( #+.-%* *&%$)*+ !)$%) %&' )%)*' # &! #"* +"%* %+ 4 / PAGE 15 '*+ *'$ #"*('*)*0 " +'&%( -%(*1 3"%+%)+$**&.+*'-+& #"*+ 6 &! &%#.%)#*% &('*)+-(+%+* *)*/ %# &'%#%0 4/ PAGE 16 *&*%# &! +(#" +.-%*+ %$ #% #)! +*+ % !%&' "%))*&!* #"* (.#* !%" +, (.#*2% '*' !*(*# '*+ !& %&' + *& # > / +.%) 6%# & *+*% "*+0 "* *4 +# &! #* "& A.*+ ('*) &! +(#" ()*4 +"%*+ %& $* $%') )%++ >*' & # # 1 ' +# &# %#*! *+ &%(*) , BC *4) # %# " &! .+ &! %%(*# +.-%*+ %&'B7C +.$' / + &+.-%*+0 "* *4) # %# " &! #* "& A.* & / )/ *+ %# # & &! #"* ('*) +.-%* & # % ))*# & &' / '.%) %%(*# +.-%* %# "*+0 '5%*& # +.-%* %# "*+ %* #"*& *4) #) +# # "*' #!*#"* .+ &! & # & . # &+#% & #+0" + *4) #+# # " &! *++ + / * () %#*' ('*) &! +(#" +.-%*+ %$ #% #)! '.* # #"* & # & . # &+#% & #+ 1" " &**' #$* +%# +>*' %)&!#"* %# " $.&'% *+0 .$' / + &+.-%*+%*+ ()**'.%)('*)+1" "?*%&%)#*&%#**2 *+*& #%# & #"* +(#" +.-%*+ %$ #%#)! 0 # %)*.+ / * +.$' 2 / + & + "*(* '.*+ % / +.%)) )*%+ &! +(#" +.-%* & #"* ) ( # $ **%#*' %) %# &% >4*' +*# *>&*(*& # .)*+ & %& .+*2'*>&*' & # %)& #) (*+"0 "* & # %) & #) (*+" + % + ()* )!&%) (*+" #"* +%(* #)! %) # * %+ #"%# #"* +(#" +.-%* # $*('*)*'0 # *% " +#* +.$' / + &, % )!&%)(*+"1 #"(*/ *# *+%&'-%*+ +&+#.#*'-(#"**/ .+&*/ % PAGE 17 7 #"* *>&*(*& # *++, %&' #"* +(#" +.-%* + $#% &*' & #"* ) ( #0 1 */ *, % -*1+.$' / + &+#*+&#"* & # %)(*+"!*&*%))+.Ã†*#% 4 (%#*#"*+(#" +.-%* %)) %# %) .+*+0 % .+ +*#+ .)*+ )*%' # ' ?**& # +.$' / + & + "*(*+1" "(% &)' ?* &#"*+(#"&*++*# -#"**+.)# &!) ( #+.-%* %&'I #"* # * & # %)(*+" B 0*0 # %&!.)%,A.%' )%#*%)*#0C "+*&0 0 $)*(#%#*(*& # ('*)%+(#"+.-%*-%$ #%#)!.+ &!+.$' / + &+.-%*+,>+# % )!&%)(*+" -+%(*#)! &**'+ # $* "+*& %+ #"* & # %)(*+"0 " + & 2 # %)(*+", %)+ 3& 1& %+ #"* & #) (*+", + *>&*' / % *.+ / * +.$' / + & .+ &! % >4*' +*# .)*+, %&' % +(#" +.-%* #"* '*+ *' #)! + $#% &*' & #"* ) ( #0 1 */ *, .+*+ "% / * # %*-.)) +*)*# #"* & # %) (*+" %&'I (%& .)%#* #"* & #) / *#*4 + # &+ %# ' ?**& # )*/ *)+ +.$' / + & " *% " & '* # +%# +#"* -.&# &%) %&' %*+#"*# *A. *(*& #+ & #"* +(#" ) ( # +.-%*0 *4%()*,#$#% &%'*+ *'*?*#&#"*+(#") ( #+.-%*, #( !" #$*&**++% #*+ # & % "%&'-.) / *# *+ & #"* (*+" $#% &*' %-#* &* +.$' / + & +#*, % )%!* & .( $* / *# *+ ( !" # &**' # $* ( / *' & #"* (*+" '.*' %-#* #"** +.$' / + & +#*+L " + *++ + &# & #. # / * %&' %# $*+# )%$ .+0 *+ #* #"* *+*&* % / % *# +.$' / + & + "*(*+ & #"* (.#* !%" + %&' !*2 (*# ('*) &! ) #*%#.*, #"** + & ' *# %&' &%#.%) 1 % (%& .)%# &! #"* ) ( #+.-%*0 "* .*& # +#%#*2-2#"*2%#&) *( #+ #"* ('*)* # & #*%# / *) $#% & #"* '*+ *' *?*#+ & #"*+(#" +.-%* $ 3 &*(%# %)) (%& .)%# &! #"* / *#*4+ # &+%#/ % .+)*/ *)+-#"*+.$' / + &" *% " 0 &#" +' ++*#%# &,#"* PAGE 18 = "%))*&! &! $)*( ' *#) (%& .)%# &! #"* +(#" ) ( # +.-%* %# %$ #% )%# &+I%*%+ +%''*++*'%&'%& / *)+).# & +*+*& #*'1"**#"*('*)*%& &# &) (%& .)%#*#"* +(#") ( #+.-%* ' *#) $.# %)+& #) #"* *4#*& # #"* (%& .)%# &*?*# B 0*0,!)$%) )%)(%& .)%# &C& #"* ) ( #+.-%*0 .$' / + &+.-%*+"% / *%)+$**&.+*'-* / * &!+"%*+-(%! / *&+*#& #+ &=0 1 */ *, (+#-#"**4 +# &!+.$' / + &+.-%*2$%+*'+"%** / * #* "& A.*+ *+# # ()*4 %)! #"(+ # '* / * % (*+" #"* .&'*) &! +"%*, %&' #"*&(*+" # ( 6%# &#* "& A.*+ %*.+*' #$#% &% (%#**+*& #%# & #"* +%(*0 */ *#"*)*++, #" + *++ *)'+ % & #) (*+" #"* +(#" +.$' 2 / + & +.-%* **+*& # &! #"* .&'*) &! +"%* #"%# # %)) .+*+ % )%!*& .( $* '*!**+ -**'( B& #) / *# *+C **+*& #%# &0 & #" + ' ++*#%# &, %& *Ã† *& #" *% " %)(*#"'-* / * &!+"%*+-(%&!*%&'/ ).(*'%#%+*#+ + +*'1"**#"*& #)(*+"-#"*+(#") ( #+.-%*1 )).+*/ *-*1'*!**+ -**'(-**+*& #%# &0 07 +*' ).# & " + +2$%+*' ('*) &! #* "& A.*+ ?* % #*& # %) +).# & # #"* $)*( ' *#) (%& .)%# &! #"* +(#" ) ( # +.-%* !*&*%#*' $ #"* *.+ / * +.$2 ' / + & *'.*0 & #"* " + +2$%+*' ('*) &! %%' !(, % '*-(%$)* ('*) + '* / *' $ %++ !& &! (%++, '%( &!, +# ?&*++ %&' #"* " + %) *# *+ # % +.-%* ('*)0 "* ('*) + '*-(*' $ %) &! +& #"*+ 6*' -*+ %&' #" + '*2 -(%# & + ! / *&*' $ " + %) )% 1+0 1, #"* .*) !*(*# +.$' / + & +.-%* ('*)+ %& $* *( $*''*' & % " + +2$%+*' ('*) &! %%' !(, #"*& #"* PAGE 19 : +(#" ) ( #+.-%* %& $* '*-(*' ' *#) $ .+ &! " + +2$%+*' J-*K #)+0 1 */ *, #" + *'.*2$%+*' +.-%* ('*) $#% &*' #".!" #"* +.$' / + & 2 *++ '*+ &# "% / * % )+*'2-( %&%)# -( .)%# & & !*&*%), %&' "*&* +*+ "%))*&! &!$)*(+# &%#*(%++%&''%( &!' +# $.# &-.&# &+, & #*2 &%) '*-(%# & *&*! , -*+, %&' #"* " + %) A.%& # # *+ *A. *' # '*/ *) % " + +2$%+*' ('*)0 * "& A.*+ )%))%%(*#* 6 &!#"* +(#" ) ( #+.-%* !*&*%#*' $ / % .+ +.$' / + & + "*(*+ %* +*' & #" + ' ++*#%# &0 &* % +. #%$)*)%)%%(*#* 6%# &+ "*(* +'*/ *)*'-%+* >+.$' / + &+ "*(*, % '&%( -%(*1 3 + / '*' #"* *+&' &!+.$' / + & + "*(* 1"** #"* ('*)* %& ' *#) (%& .)%#* #"* +(#" ) ( # +.-%* $ .+ &! +& #"*+ 6*' -*+0 ##"*+%(*# (*,%'&%( -%(*1 3-#"*1 % / *)*#+'* / *'.+ &!+.$' 2 / + &+ "*(*+ 1 ))%++ +# &%'# &!%( .)# *+).# &**+*& #%# & -#"* & #) (*+" '*>& &! #"* +(#" ) ( # +.-%*, %&' #"* ('*)* %& & #) #"* *4#*& # (%& .)%# &*?*#$ "+ &!%'*+ *')*/ *)-*' # &!0 & #"*+ 6*' -*%) %2 # & %# % ) 1 * *+).# & 1 )) *)' % !)$%) *?*# 1"**%+ (%& .)%# &+%# % >&* *+).# &1 ))"% / *)%) 6*'*?*#+&#"*) ( #+.-%*0 "*(# &-#" +" + +2 $%+*''*-(%$)*+.$' / + &+.-%*('*) +! / *&*'$ %+*&'2'*' ?**& # %) *A.%# &,1" " ++)/ *'& .(* %)).+ &!#"*>& #**)*(*& #(*#"'0 *1# *+ >& #* *)*(*& #+ -#"* "+*& +.$' / + &+ "*(* %* %)+*+*&#*' **+*& # &! #"* +(#" ) ( #+.-%*0 "* +*' '&%( -%(*1 3 #"* +.$' / + & +.-%*+ / '*+ %& *Ã†2 *& # +).# & # #"* +"%* * / * $)*( %+ 1 *))0 + ()* +.$' / + & +.-%* PAGE 20 ; ('*)1 #"/ *-*1/ *# *+ &#"*& #)(*+"%&$* & # %) 6*'B+ # &*'C-.)) &+ '*%! / *&+*#& #+ &=0"* & # %) 6*'('*)1 ))$*'*-(*'$ %) &! -*+ +& #"*+ 6*' -(#"* ! / *&'%#% & #+0 "*&%&*A. ) $ .( +$#% &*',#"* & .( $*-/ *# *+ &#"*& #)(*+"%&$* &*%+*'/ %%+.$' / + &+#*&#"* .*& #& #)(*+"#"**$ &*%+ &!#"*'*!**+--**'(-('*)**+*& #%2 # &, %&' % &*1 *A. ) $ .(1 #" % $*##* ># # #"* ! / *& '%#% +*# %& $* $#% &*'0 " +*++%&$***%#*'# ))%*+ $*'* &># +% " */ *'0 ( )%%% " %&$*#%3 *& -+"%** / * -(/ ).(*'%#%+*#+ %+1 *))1"**%' ?**& ## * +& #"*+ 6*' -* &**'+ # $* +* >*'0 "* " *% " %) +"%* * / * *++ *&+.*+ % (%# **+*& #%# & #"* * / **' +(#" ) ( # +.-%* .+ &! / * -*1 '*!**+ --**'(0 0= & # $.# &+ &#" +' ++*#%# &,#* "& A.*+-(" + +2$%+*'('*) &!%* & #*!%#*'1 #" !*(*# +.$' / + & (*#"')! # *+*& # % + "*(* ' *#) (%& .)%# &! #"* +(#" ) ( # +.-%* !*&*%#*' $ #"* +.$' / + & *++0 + % *+.)#, .&) 3 * #"* *4 +# &! !*(*# +).# &+ #"%# &) %)) 1 #"* *%# &+ & & #) / *# *+, #"* +*' (*#"')! %&' %)! #"(+*( # #"* .+* # " + %)) (' #"* +"%*-+.$' / + &+.-%*+%#'*+ *')%# &+/ %%) %# &--*+0 " +! / *+ #"* .+* % J/ #.%)K )% I)% 2'.!" ('*) &! *& / &(*& #0 "* +*' ('*) %& $* *' #*' ' *#) & % " *% " %) -%+" & .+ &! +& #"*+ 6*' -*+0 )+, #" + " + +2$%+*' +.$' / + & +.-%* ('*) *Ã† *& #) * / *+ +"%*+%+ 1 *)) %+ &&2 ! '(# &+-( )%!*%&!* %&' / ).(*# '%#%+*#+0 #* #"%##" + ' ++*#%# & PAGE 21 9 &* #"* +*+ % &*1 +.$' / + & #* "& A.* & / '*+ % ' ?**& # & #**#%# & %& *4 +# &! +.$' / + & #* "& A.*, $.# #"* %'/ %& #%!*+ +.$' / + & +.-%*2$%+*' %&' " + +2$%+*' ('*) &! #* "& A.*+ # +)/ * (#%& # #"**# %) %&' %# %) $)*(+0 )#".!" #"* & )*+ " + +2$%+*' ('*) &! %* 1 *)) .&'*+#' $ #"* !%" + *4*#+ %&' ('*) &! *+*% "*+, #" + ' ++*#%# & 1 )) !*%#) %'/ %&* #"* +#%#* #"* %# & " + +2$%+*' +"%* ('*) &! '.* # #"* & # $.# &+) +#*'$*) 10 %) %%(*#* 6%# & #* "& A.*+ #"* +(#" ) ( # +.-%*!*&*%#*' $ / % .+ +.$' / + &+ "*(*+ %*++#*(%# %))'* / *' &%" *% " %)-%(*2 1 3, %&' +.$+*A.*& #) #"* & # %) & #) )"*'& %& $* / *1 *' %+ #"* %%(*# '(% &-#"* " + +2$%+*' +(#") ( #+.-%*0 "* +(#" '&%( +.$' / + & +.-%* & #"* ) ( # + #*%#*' %+ % J*%)K " + %)$5*#**+*& #*' $ %+*#-& / *)>& #**)*(*& #+0 "*$%+ +B+"%*C -.&# &+-#"*+*&*1/ % *# ->& #**)*(*& #+%*'* / *'.+ &!#"*+.$' / + & + "*(*+0 "*+*'>& #**)*(*& #(*#"'+1 )) / * #$*.+*-.)&#&) &#"*%*%+-(.#*!%" +%&'!*(*# '*+ !&,$.#%)+ &*&! &** &! %&%)+ +%+ 1 *))0 "*+.$' / + &#* "& A.*+%*.+*'#*%#*%+.-%*('*)#"%# &%#*+ (%++ %&' '%( &! ' +# $.# & -.&# &+, & #*&%) '*-(%# & *&*! , -*+, %&' #"* " + %) A.%& # # *+0 "* (# & *A.%# &+ %* %)+ ++#*(%# %)) '* / *'-#" +'&%( +.$' / + &+.-%*('*)1"+*'*!**+--**'(%* #"*))*# && # %).+*2+* >*'& #)/ *# *+0"**-*,#"*%'/ %& #%!*+ PAGE 22 < $#" #"* " + +2$%+*' ('*) &! " )+" %&' #"* !*(*# +.$' / + & + "*(*+ %* &%#*'1 #" &% + &!)*.& >*' -%(*1 30 +*+1 ))$*%$)*#(%& .)%#*#" +" + +2$%+*'('*) &%&%$ #%*! &, %&' #"* ('*) 1 )) *+&' &%#.%)) B5.+# ) 3 * % *%)21 )' $5*# 1 .)'C # #" + -* %) %# &0 " + +"%* '*-(%# & + A.%& # #%# / *) "%%#* 6*' $ #"* # (*2/ % &! ' +)%*(*& # & #) & #+ #"%# .& A.*) '*>&* #"* !*(*# -#"* ) ( #+.-%*0 "* '&%( -%(*1 3 1 % / *)*#+ '* / *' .+ &! +.$' / + & + "*(*+ *&2 %$)*+ %( .)# *+).# &**+*& #%# & -#"* & #) (*+" '*>& &!#"* +(#" ) ( #+.-%*0 " + / '*+%'' # &%)D*4 $ ) # ##"*" + +2$%+*'('*) &!-%(*1 3 + &* #"* ('*)* + -** # "+* #"* '*+ *' *' # &! )*/ *)0 % ) 1 **+).# &*' # &!)*/ *) + "+*&,#"*+& #"*+ 6*'-*%) %# &&#"* +(#" ) ( #+.-%* 1 )) "% / * !)$%) *?*#+, 1"**%+ *' # &! 1 #" -*2$%+*' #)+%#%>&* *+).# & 1 )) *)'%)%) 6*'*?*#0 )! #"(+%&'*'.*+%*'*/ *)*'1" "% 4 (%#*#"*+*'&*1 >& #**)*(*& #+.+ &!%))*# &-) &*%%&'I$ ) &*%>& #**)*(*& #++.$5*# # #"* () # !*(*# &+#% & #+ *&-*' $ #"* +.$' / + & .)*+0 " + " *% " %))2+#.#.*'% 4 (%# &%&+%# +-%& .+*2+* >*'*#)2 *%&*0 "*+*''&%( -%(*1 3*&"%&*+#"*%) %$ ) # -+.$' / + &+.2 -%* ('*)+ & / % .+ %) %# & %*%+0 # / '*+ % ' *# %&' & #. # / * 1 % - PAGE 23 (%& .)%# &! +"%*+ & % " *% " %) -%+" & !*(*# ('*) &! %) %# &+0 # "%+ %)+ $**& +.*++-.)) .+*' *Ã† *& # %&' " *% " %) +"%* * / * -( %&!* %&' / ).(* '%#% +*#+ %+ 1 *)) %+ #% 3 &! % +"%* & #**+# -( % # (* +*A.*&*-%&!*/ ).(*'%#%+*#+0 &%)) ,#"*'&%( -%(*1 3-+.$' / + & +.-%*+ +( $ &*'1 #"%/ % %& #-%-%#%)+.-%*+& #"*+ +#* "& A.*#*+*& # % & / *) &%#.%)#*% &('*) &!(*#"'0 0: .#) &*++*#%# & "* *+# -#"* ' ++*#%# & +!%& 6*'%+-)) 1+E "%#*7& #% &+%& / */ *1-#"*+.$' / + &+.-%*+%)&!1 #"%*/ *1#"* *)%#*') #*%#.*0 "* (# / %# &-*( $*'' &!#"*+.$' / + &+.-%*('*)+ &%" + +2$%+*' ('*) &!-%(*1 3 +' +.++*', %&'#"*+*'('*) +(2 %*'1 #"#"**4 +# &!" + +2$%+*'('*)+0 "*%'/ %& #%!*+-%.& >*'-%(*1 3 +"%* ('*) &!%&'+"%* * / * %* %)+ & #*' .# & #" + "%#*0 "%#* = / '*+ % '&%( -%(*1 3 #"* %#( .))2)%3 +.$' / + & + "*(*,1" " +&*-#"*(+#.)%+.$' / + &#* "& A.*+-('*) &!() 2 %#*'$5*#+ -%$ #%!*& .+0 &%)# -( .)%# &-#"*) ( #+.-%*!*&*%#*' $ #"* %#( .))2)%3 +.$' / + & + "*(* + '* / *' %&' #"* J" + %)K A.%& # # *+ *A. *' # '*/ *) #"* '&%( ('*) %* & #'.*' M;<, 98 , <9 N0 "* ! / *& &! '&%( ' ?**& # %) *A.%# & + '* / *' .+ &! %!%&! %& (* "%& + %&' + ()*2 (*& #*' .+ &!%>& #**)*(*& # #* "& A.*0 PAGE 24 & "%#* :, % '&%( -%(*1 3 + / '*' #"* $.##*D +.$' / + & + "*(*,%&#"*.)%+.$' / + &#* "& A.*-('*) &!+(#"+.-%*+-%$ 2 #%#)! 0 )%)%%(*#* 6%# &+ "*(*-#"*$.##*D+.$' / + &+.-%* + '* / *' & % " *% " %) +# )*0 "* " + +2$%+*' $.##*D +.$' / + & ('*) + -( .)%#*' %+ % +*# & / *) >& #* *)*(*& #+ 1" " %* # (%)) % 4 (%#*' $ % ))*# & +#%&'%' >& #* *)*(*& #+ +.$5*#*' # () # !*(*# &+#% & #+ M;, 9 N0 "%#* ; *+*& #+ %& .& >*' %% " / ' &!% '&%( -%(*1 3 +.$' / + &+.-%*+ &!*&*%)0 &%# .)%, #"%+$**&+" 1&#"%##"*) ( #+.-%* $#% &*'.+ &!%& +.$' / + &+ "*(*%&$*/ *1 *'%+%))*# &-* #"*A.%' 2 )%#*%) # %&!.)% >& #* *)*(*& #+ 1"+*$%+ + B+"%*C -.&# &+ %& $* '* / *' .+ &! #"* "+*& +.$' / + &+ "*(* M;N0 & "%#* 9, % '&%( -%(*1 3 + *+*& #*' #"* +.$' / + & +.-%*2 $%+*'1 % / *)*#+ "*(*+0 " +'&%( -%(*1 3*&%$)*+%( .)# *+).# &**+*&2 #%# & #"* & #) (*+" '*>& &! #"* +(#" ) ( # +.-%* %&' &+*A.*& #) , #"* ('*)* %& & #) #"* *4#*& # #"* *?*# (%& .)%# && #"* ) ( #+.-%* $ "+ &! %* *' # &!)*/ *)0 &"%#*<,%++#*( #"%# & #*!%#*+#"* ()*(*& #%# &-#"*&*#+ 2 +*' & *%) * "%#*+ + *+*& #*'0 */ *%) ('.)*+ ( +* #"* *& # * ++#*(, %&' #"* -.&# &%) # -#"*+* ('.)*+%* ' +.++*' &#" +"%#*0 PAGE 25 8 "* +*' ('*) &!-%(*1 3 + .+*' & / % .+%) %# &%*%+ %&' #"* *+.)#+ %* *+*& #*' & "%#* 0 "* +*' '&%( ('*) "%+ $**& +.*++2 -.)) .+*' & !*(*# ('*) &!, +"%* * / * %&' &&2 ! ' (# & *+# (%# & %) %# &+0 & / *) #* "& A.* &%#.%)#*% &('*) &! + %)+*+*& #*' 1"** #"* '&%( -%(*1 3 + ( $ &*' 1 #" % / % %& # % -%#%) +.-%* +& #"*+ + #* "& A.*0 &%)) ,&).+ &+ %* '% 1& & "%#* 1"** -.#.* ' *# &+ -*+*% " %* %)+ & #*'.#0 PAGE 26 7 &#" + "%#*,%$ */ */ *1-#"*+.$' / + &+.-%*+ +*+*& #*'-)) 1 *' $ % */ *1 #"* */ .+ 1 3 '&* & #"* %*% +.$' / + & +.-%*+0 " + + -)) 1 *' $ %& / */ *1 #"* " + +2$%+*' ('*)+ %)&! 1 #" % */ *1 #"* *2 )%#*') #*%#.*0 "*(# / %# &!-%#+-*( $*'' &!!*(*# +.$' / + &+.-%* ('*)+ &%" + +2$%+*'('*) &!%%' !(%**+*& #*' &#"*&*4#+*# &0 "* %'/ %& #%!*+ #"* +*' '&%( ('*)+ / * #"* *4 +# &! " + +2$%+*' ('*)+ +"%* * / * %* ' +.++*' %&' >&%)) %'/ %& #%!*+ % .& >*' -%(*1 3 +"%* ('*) &!%&' +"%* * / * %*%)+*+*& #*'0 70 .$' / + &.-%*+ "* &.# # %& +.$' / + & + "*(* + %& & # %)(*+" B%)+ 3& 1& %+ & #) (*+"C, O B C, 1" " + % ))*# & / *# *+ %&' % ))*# & -%*+ 0 "* +.$' / + & +.-%* B C %++ %#*' 1 #" #"* & # %) (*+" + '*>&*' %+ #"* ) ( # #"* *.+ / * %) %# & #"* *>&*(*& # %+ +" 1& & !0700 "* *>&*(*& # , 1"*& %) *' & % (*+" O B C, *%#*+ %*>&*' (*+" OB C1"**#"*/ *# *+ & %*(.#*'%+%Ã†&*( $ &%# &+ #"* / *# *+ & %&' #"* -%*+ & %* $#% &*' $ +) ## &!*% " -%* & & #% >4*' & .( $* -+.$2-%*+0 PAGE 27 7 !.*700 *>&*(*& # -%& & # %)& #)(*+"#$#% &#"* ) ( #+.-%*0 B.2 #*+ E 0 *C PAGE 28 = # (% $* &#*' #"%# #"* / *# *+ & #'.*' #".!" #"* +.$' / + & *++ "% / * %>4*' '*!** &!*&*%)B: &%+* -A.%' )%#*%)(*+"*+ %&' 9 &%+* # 2 %&!.)%(*+"*+C0 "*/ *# *+1" "'&#"% / *#" +'*!**%*%))*' / *# *+0 "* & .( $*-*4#%' &%/ *# *+ %*/ * -*1%+#"*+* / *# *+ %*&# & #'.*'/ %+.$' / + &*>&*(*& # &!*&*%)0 *4%()*, &#"*%#( .))2)%3 +.$' / + & + "*(* B'*>&*' & A.%' )%#*%) (*+"*+C #"* & .( $* *4#%' &% / *# *+'*+&# "%&!*%-#*#"*>+#+.$' / + &&#"* & # %)(*+",1"**%+ &#"* (' >*'$.##*D+.$' / + &+ "*(*B'*>&*'&# %&!.)%(*+"*+C#"*+.$' / + & *++ &*/ * & #'.*+ %& *4#%' &% / *#*40 "* ) ( # +.-%* '*>&*' $ #"* +.$' / + &*++ +(+#-#*& B>+#'* / %# / *& # & ..+C B+*&''* / %2# / *& # & ..+C'**&' &!&#"*+.$' / + &.)*+*4*#%#/ *-*1 & #+ *+&' &! # #"* *4#%' &% / *# *+ &#"* (*+"0 * > +.$' / + & + "*(*+ %)&! 1 #" #"* *# *+ #"* ) ( # +.-%*+ 1 )) $* ' +.++*' & )%#* "%#*+0 )#-*+*% ""% / *$**&% *'.#&+.$' / + &+.-%*+,1" "%*(% &) -.+*' * #"* & #"* '*/ *)(*& # % &*1 +.$' / + & #* "& A.* & %&%)6 &! #"* +(#"&*++ *# *+ #"* ) ( # +.-%* !*&*%#*' $ % +.$' / + & + "*(*0 1 */ *, & #" + ' ++*#%# & #"* -.+ + *& # *) ' ?**& #, &%(*) , *( $*'' &! #"* +.$' / + &+.-%*+ &%" + +2$%+*'('*) &!%%' !(#*&"%&*#"*%) %$ )2 # -#"*+*+.-%*('*)+0 &#"**+#-#" ++*# &,#"*+*J#%' # &%)K#* "& A.*+ +.$' / + &+.-%*+ %* */ *1*'0 PAGE 29 : "% 3 &M: N>+# & #'.*'#"*&*#-+.$' / + &##"*(.#*!%" + (( .& # !*&*%# &!%+(#" ./ * -( %! / *& & #) )!&0 . &!#"* )%+## 1 '*%'*+,%1 '*/ % *# -+.$' / + &+ "*(*+-('*) &!+(#"+.-%*+ -%$ #%#)!"% / *$**&'* / *'-)) 1 &!"% 3 &H+ &** &!1 3&./ * !*&*%# &0 &!*&*%),#"*+*+.$' / + &+ "*(*+%&$*%#*! 6*' & ## 1 ' +# &# )%++*+ &%(*) , BC % 4 (%# &!+.$' / + & #* "& A.*+ %&' B7C & #*)%# +.$2 ' / + & #* "& A.*+0 "* ) ( #+.-%* $#% &*' .+ &! %& % 4 (%# &! +.$' / + & #* "& A.* &) % 4 (%#*+ #"* & # %)(*+", 1"**%+ #"* ) ( #+.-%* & #*)%#*+ #"* & # %)(*+" &%+* & #*)%#+.$' / + &#* "& A.*+0 (&! #"* % 4 (%# &! + "*(*+, #"* #* "& A.*+ %&' %$ & M7< , =N !*&*%) 6*#"* '*%-$#% & &!.& -($ A.%'%# %# "*+-(%*#%&!.)%&2 #) (*+"0" + + "*(* + %& *4%()* 1"** % / *#*4 +..&'*' $ -%*+ ++) # & # +.$2/ *# *+, &*-*% "-%*0 %&'%$ &H+ +.$' / + & #* "& A.* %& $* %) *'# %& (*+" %$ #%#)! , %&' #"* *2 +.)# &!+(#") ( #+.-%*1 .)'$*$ A.%'%# 2+) &*+,*4*#%#*4#%' &% & #+ *+&' &!##"* *4#%' &% / *# *+ &#"* & #)(*+"0 %#( .))%&')%3M8N'*/ *)*'%(*#"'-*.+ / *)!*&*%# &!%+(#" +.-%*-(%)"*'%)(*+"-%$ #%#)! 0 "*%#( .))2)%3+.$' / + & +.-%*, '*>&*' $ %& %$ #% & # %) (*+", %& $* *'.*' # % +*# +#%&'%' $ .$ 2+) &*%# "*+*4*#%#%>& #*& .( $*-'*!*&*%#* & #+0 " ++ "*(* + %& *4%()* , 1"** % 2+ '*' -%* + +) # & # +.$2 -%*+0 "* '*#% )+ #" + +.$' / + & + "*(* %* ' +.++*' & *# & =00 %)+#*%' PAGE 30 ; *# %)0 M=N +*' %& %)! #"( # &+#.# % %#( .))2)%3 +.$' / + & +.-%* #"%# & #*)%#*+#"* / *# *+ -% (*+" -%$ #%#)! 0 M;N*+*& #*'%+.$' / + &+ "*(*$%+*'&#"*!*&*%) 6%# &-A.%# # %&!.)%2+) &*+# %&!.)%(*+"*+0 H+ +.$' / + &.)*+ %* *+*& #*' & *# & ;0=0 * *# %)0 M:8 N *4#*&'*' H+ 1 3 # '.* **1 +* +(#" +.-%*+ 1 #" ' +& # & . # *+ & +*)*#*' %*%+ #"* ) ( #+.-%*0 "* & #'.*' &*1+.$' / + &.)*+#"%#%)) 1-+"%-*%#.*++. "%+*%+*+%&'&*+ &#"* ) ( #+.-%*0 *#*+ %&' * -M<=N +*' % + ()*+.$' / + & + "*(* +(#" &!)2 "*'%0 "* *>&*(*& # .)*+ *)' % +.-%* #"%# "%+ % **1 +* A.%'%# %2 %(*#* 6%# & *4*# %# +)%#*' *4#%' &% & #+0+# **& #) , &&2.& -( 2%$ & %&' %#( .))2)%3 +.-%*+ #"%# !*&*%) 6* &&2.& -( #*&+ '.# 2+) &*+.-%*+#%$ #%#)! *+1 ** & #'.*'$ *'*$*!*#%)0 MN0 )) #"*+ "*(*+(*& # &*'%$ / *!*&*%) 6**.+ / *+.$' / + &+ "*(*+-!*&*%# &! ) ( #+.-%*+1 #"%3& 1&%%(*#* 6%# &0 % .+ ++.*+ & / )/ *'1 #" "%%#* %& (%# & .+ &! #"*+* % 4 (%# &! +.$' / + & + "*(*+ 1 ** ' +.++*' %# )*&!#" $ *+* *# %)0 M7;N0 "* (+#1 *))23& 1& & #*)%# &2$%+*'+.$' / + &+ "*(* +#"*J$.##*DK %)! #"(+*'$ &*#%)0 M=8N0 .##*D+.$' / + &(*#"',) 3 *#"*+.$2 ' / + &+ "*(*+,(%3 *+.+*-%+(%))& .( $*-&* !" $ &!/ *# *+-+.$' / + &0 # *A. *+ + ()* '%#% +#.#.*+ %&' + *4#*(*) *%+ # ()*(*& #0 1 */ *, # &**'+ % #)! %))*!.)% +*## &! #"* & # %) B& #)C(*+" & '* # $#% & PAGE 31 9 % +(#" ) ( # +.-%*0 / % %& # #" + + "*(* 1 #" $*##* +(#"&*++ 2 *# *+ %& $* -.&' & & *# %)0 M7N0 P & *# %)0 M8 N '*/ *)*' %& ( / *' & #*)%# +.$' / + &+ "*(* B1" " 1 * %))#"* $.##*D + "*(*C #"%# *#% &+ #"* + () # #"* $.##*D + "*(* %&' *+.)#+ &( . " +(#"* +.-%*+ */ *& -( *!.)% & # %) (*+"*+0 "*+* & #*)%# +.$' / + & + "*(*+ "% / * *4#*&+ / * %) %# &+ & 1 % / *)*#+ & (%& -)'+, ( .)# *+).# & '*(+ # & )"*'%)+.-%*+ %&'(.)# *+).# &*' # &!0 / % %# &%)%% "& #*)%#*>&*(*& #"%+$**&+*'$ $$*)# M:=, :: N %&' $ $$*)# %&' "Q '* M:9N0 & #" + %% ", #"* / *#*4 + # &+ & #"* *>&*' (*+" %# *% " +.$' / + & +#* %* $#% &*' $ +)/ &! %& # ( 6%# & $)*(0 "**-*,#"*+*+ "*(*+%*!)$%), 0*0,*/ *&*1/ *#*4+ # &'**&'+ & %)) #"* / *#*4 + # &+ #"* %+* )*/ *) (*+"0 "* )%) *>&*(*& # *# 1" " (%3 *+#"*+.$' / + &+ "*(*+ %##%# / *()*(*& #%# & &#"* (.#* !%" + %) %# &+ +&# *#% &*' &#"* / % %# &%)%% "0 "* '* / %# & / % .+ (%#"*(%# %) *# *+ #"* +(#" ) ( # +.-%* !*&*%#*' $ #"* +.$' / + & %)! #"(+ + %#"*()*40 %&' %$ & M7N >+# %&%)6*'#"*+(#"&*++$*"% / -#"*) ( #+.-%*.+ &!#"* . *#%&+-(%&' %&* !*&2%&%)+ +-#"*+.$' / + &(%# 40 %))%&'#M=,: N%&'* -M8 N-.#"* *4#*&'*'%&'%$ &H+ 1 3&& # & . # *# *+-+.$' / + &+.-%*+ $ '* / &! / % .+ &**++% %&' +.Ã† *& # &' # &+ & +(#"&*++ ' ?**& # +.$' / + &+ "*(*+0 * > +.$' / + &+ "*(*+ 1 ** %&%)6*' $ " 1 * #6* M PAGE 32 < M8N *+*& #*' % (*#"' *4%# */ %).%# & %#( .))2)%3 +.$' / + & +.-%*+ %# %$ #% %%(*#* / %).*+0 # (% $* &#*' #"%# #"* -.+ #" + ' ++*#%# & + &#&'* / &!%&*1+.$' / + &#* "& A.* %&%)6 &!% +.$' / + &#* "& A.*, $.# & '* / &!% '*-(%$)*+.-%* ('*).+ &! #"*+* +.$' / + & + "*(*+0 707 " + +2$%+*' *-(%$)*.-%* '*)+ "%* ('*)+ %& $* $%') %#*! 6*' & # # 1 # *+ R ).(*' %%(*#* ('*)+ %&' ' +# $.#*' %%(*#* ('*)+0 ).(*' %%(*#* ('*) .+*+ +(%)) & .( $*-%%(*#*+#**+*& #('*)!*(*# ,1"**%+%' +# $.#*'%%(*#* ('*).+*+)%!*& .( $*-'*!**+--**'(-('*)**+*& #%# &0 &*4%()* % ).(*' %%(*#* +.-%* ('*) + % +.*A.%' 0 ) &* +.-%*+ +*/ * %+ % !'*4%()*-' +# $.#*'%%(*#*('*)0 *-(%$)* +.-%*+ %* ' +# $.#*' %%(*#* ('*)+ 1" " .+* )%!* & .( $* -'*!**+--**'(-**+*& # &!#"*('*)!*(*# 0 )%!*/ % *# -+"%*+ %& $* ('*)*'.+ &! #" + # * -('*), $.# "%&') &!% )%!*& .( $* '*!**+ -**'(%& $*.( $*+(*0 1 */ *, #"* )%!*'*!**+ --**'( -% '*-(%$)* ('*)%**( $*''*' &%"+ +2$%+*'-%(*1 3#%)) 1&)%J" + %))(*%&2 &!-.)K('*)$*"% / 0 % .+# *+-*&*! *+%*%++ !&*'##"*('*).+ &!#"* '*!**+ -**'(,%&' #"* ('*)J'*-(+K# >&' %&*A. ) $ .(+#%#* 1 #"( &2 (%)*&*! 0 "* (# &*A.%# & +'* / *' .+ &!%!%&! %&'&%( +M=9N, 1"** / % .+*&*! *+%++ %#*'1 #"('*)! / *+ +*# & #*&%)%&'*4#*&%)-*+0 "* *A. ) $ .( +#%#* #"* ('*) + % ('*) + # & 1"** #"* & #*&%) '*-(%# & -*$*(*+ *A.%)##"* *4#*&%))%) *'-*0 "*+* " + +2$%+*' '*-(%$)* PAGE 33 ('*)+ %* .+*-.) ('*) &!1"** #"* ('*)*%& '*-(% +.-%* $ %) &! +& #"*+ 6*' -*+, %&' '%#% >## &! 1"** *4#*&%) -*+ %* +& #"*+ 6*' -( % ! / *& '%#%+*# +. " #"%##"* ('*)% 4 (%#*+#"* ! / *& '%#%%#*A. ) $ .(0 '*-(%$)* +.-%* ('*) + # %)) %%(*#* 6*' / * #"* '(% & M8 N 0 *# B C$*%'*-(%$)*+.-%*('*),1"**8 %&' +%))*# & -#"*'*!**+ --**'( , O 7 %++ %#*'1 #"#"*('*)B%++.( &!#"* ('*)"%+ '*!**+--**'(C0 "*'*!**+ --**'( B C +%+*#-!*&*%) 6*' ' &%#*+ 1" " %* -.&# &+ # (* %&' %* %++*( $)*' & # #"* / *# 0 *# B C$*#"*!*&*%) 6*'-***+*& #*' $ #"*/ *# %&'%# &!& 0 *# $* #"* 3 &*# *&*! , $*#"*' ++ %# &*&*! %&' $*#"* #*& # %)*&*! #"* '*-(%$)* +.-%* ('*)0 "*&, #"* %!%&! %& *A.%# & (# & #"* ('*) %& $* *4*++*' %+ S G S G O B70C *# B C$*#"*(%++'*&+ # -.&# &-#"*+.-%*0 "*&#"*3 &*# *&*! #"* +.-%* + O 7 S S O 7 S S B707C 1"** + %))*' #"* (%++ (%# 40 ( )%) , )*# B C $* #"* '%( &! '*&+ # -.&# & -#"* +.-%*0 "*& #"* ' ++ %# &*&*! + O 7 S S O 7 S S B70=C PAGE 34 1"** + %))*' #"* '%( &! (%# 40 "* #*& # %) *&*! #"* ('*) %& $* '*>&*' .+ &! #"* *&*! ('*)M9N, %&' +! / *& $ O B G G G G C O 7 B70:C 1"** B C%&' B C%**)%+# # -.&# &+1" "& #)#*&+ &%&' ! ' # *+*# / *)-#"*'*-(%$)*+.-%*('*),%&' +3& 1&%+#"*+# ?&*++(%# 40 "*' +*# 6*'*A.%# &-(# &%&$*'* / *'.+ &!#"**4*++ &+-#"*3 &*# , ' ++ %# &%&' #*& # %)*&*! & A&070, 1" " +! / *& $ Q G S G O B70;C 1"** +#"* !*&*%) 6*' -* / *#0 "*-**2-('*-(%$)*('*)+' +.++*' %$ / *1 ** >+# & #'.*'#(2 .#* !%" + %&' / +.%) 6%# & & *6.)+ *# %)0 M N %&' -.#"* '*/ *)*' $ *6.)+ %&' )* + "* M< N, *& #)%&' %&' )) %(+M<7N, *#%4%+ %&' *6.2 )+ M9;N%&' *( . %&' %' +% /)5*/ M8: N0 *)& 3 * %&' ++%' MN '*/ *)*' % ++#*(& #*%# / *-**2-('*+ !&$%+*'&#"*>& #**)*(*& ## ( 6%# &-*&2 *!-.&# &%)++*' & *6.)+%&')* + "*M PAGE 35 78 #".!"%!%&!*( .)# ) *+*&%)# (*#"'+0 &%&' *6.)+M<< ,<,88 N '*/ *)*' '&%( B2C 1" " %* / * +" +# %#*' ('*)+ +. #2 %$)*-**+*& # &! %1 '*/ % *# -**2-(%+1 *))%+ +#%&'%' %&%)# +"%*+0 "*2"% / *#"*%'/ %& #%!*& #*%# / *%&'' *#(%& .)%# &./ *+ %&' +.-%*+, *+.)# &! & " + %)) (*%& &!-.) "*&* & #. # / *) *' #%$)* (# &%&' +"%* / % %# &0 *-(%$)* ('*)+ %* %)+ 1 '*) .+*' +"%* * / * , +*!(*& #%# &, (2 # &#% 3 &!%&'#"*(.#*/ + &%&'(*' %) (%! &!%) %# &+0 '*#% )*' +./ *-'*-(%$)*('*)+.+*' &#"*+*#* "& A.*+%&$*-.&' &&*&*%&' *6.)+M9:N%&'#"**-**&*+#"** &0 (*+* >*4 +# &!'*-(%$)*('*)+ .+*' -+"%* * / * %&' &&2 ! '(# &*+# (%# &1 ))$**/ *1 *' &*# & 70:0 70= "%* '*) &!+ &! " + +2$%+*' .$' / + &2+.-%*'*) *.+ / * +.$' / + & +.-%*+ %* 1 *-.) **+*& # &! +(#" !*(*# +"%*+ %$ #% #)! 0 1 */ *, #"* &+# #.#* % .*) !*(*# **+*&2 #%# &, %&' -.#"*(*, & / *& # &%) !*(*# ('*) &! 1 #" +.$' / + & +.-%*+ (% $* ' Ã†.)# **+*& # &! " !") () %#*'$5*#+0 *4%()*, ('*)*+ %*-%*'1 #"#"*#*' .(&' *#+"%*(' >%# &%&'*>&*(*& ##".!"# (*2 &+.( &! *%# &+ & % )%!* & .( $* B(+# -#*& *!.)%C & #) / *# *+ 1"*& .+ &! # %) +.$' / + &+.-%*2$%+*' ('*) &!+ "*(*+0 *+ #* #"* %'/ *& # -%'/ %&*'=!%" + & #*%# &#)+,#"*+* &' *#!*(*# *%# &+*(% & &&2 & #. # / * %&' )%$ .+ & !*&*%)0 & %'' # &, # (% &# $* *&.!"# $#% & PAGE 36 7 #"*(+#J-% K+.-%*#"%# & #*)%#*+%+*#-B'**'.&!%& 6*'C'%#% & #+0 *#% & & .( $* )%) -*%#.*+ +. " %+ $.)!*+ &D*# &+ (% $* +#&!) '*2 + *' 1" )* *A. &! !*(*# $5*#+ # +%# +!)$%) +(#"&*++ &+#% & #+ & !*(*# ('*) &! %&' (.#* !%" + %) %# &+0 & & #%+#, " + +2$%+*' ('*) &! / '*+%+.* %% "#+"%*('*) &!#"%#%& / *(*(+##"*) ( #%# &+%++ %#*'1 #"#%' # &%)!*(*# ('*) &!%% "*+0 **2-( '*-(%$)* ('*)+ ! / *&*' $ #"* )% 1+ & # & ..( (* "%& + %* %# .)% & #**+# & #" + & #*4#0 "*+* '&%( ('*)+ *+&' # *4#*&%)) %) *' -*+ & % / * & #. # / * (%&&*0 "* '&%( -( .)%# & (% *+#"* ('*) !*(*# 1 #" # (*, (%++, '%( &! %&' &+#% & #+ / % % -* $%)%&* *A.%# &0 &%( ('*)+'.*+(#",&%#.%)(# &+1" "%**%+#& #)0 &%'' # &,#"* -% ) #%#* & #*%# & R *+* %)) ' *# (%& .)%# & ()*4 !*(*# *+0 .2 #"*(*, #"* *A. ) $ .( +#%#* #"* ('*) + "%%#* 6*' $ % ( & ( .( #"* '*-(%# &*&*!-#"*('*)+.$5*###"* (+*'&+#% & #+0 "*'*-(%# & *&*!-.&# &%)+%&$*-( .)%#*'#+%# +-)%)%&'!)$%)('*) &! #* %,%&' !*(*# &+#% & #+ *)*/ %& # # +"%* '*+ !& %& %)+ $* (+*'0 "* '&%( %% " +.$+.(*+ %)) #"* %-*(*& # &*' ('*) &!%%$ ) # *+ & % -( .)%# & 1" " !.&'+ */ *#" &! & *%)21 )'" + %) $*"% / 0 +*/ ** ) ( #%# &#"* *4 +# &! '*-(%$)* ('*)+, &).' &! 2, + #"%# #"* %* '*>&*' & % *#%&!.)% %%(*# '(% &0 *&*, # %& $* / * ' Ã†.)# # ('*) +.-%*+ %$ #% !*& .+ .+ &! #"*+* ('*)+0 & % **& # 1 3, PAGE 37 77 *+**#%)0 M7; N%++ !&*'(%#* %)*# *+#& #)(*+"*+ %#/ % .++.$' / 2 + &)*/ *)+ &'*#+ ( .)%#*)#"'&%( +.+ &!+.$' / + &+.-%*+0 #*#"%#, #"*%++ !&" + %)*# *+&#"*& #)(*+"*+%#/ % .+)*/ *)+-+.$' / + & %&' &# & #"* ) ( # +.-%* #+*)-, %&' "*&* %& &# +)/ * #"* ('*) &! !%) 1 * %* # &! # % " */ *0 & #" + ' ++*#%# &, % '&%( -%(*1 3 + *+*& #*' +.$' / + &+.-%*+1" "( $ &*+#"*$*&*>#+-+.$' / + &+.-%*+-('*) &! %$ #% #)! %+ 1 *)) %+ #"%# '&%( +) &*+ & #*%# / * +"%* (%& 2 .)%# & $ %) &! +& #"*+ 6*' -*+0 "* +*' '&%( -%(*1 3 *+*& #+ #"* ('*)* %-(%)(* "%& +( -' *# %&' & #. # / *(%& .)%# &-#"* +(#" ) ( # +.-%*, %+ #"* 1 **+*%()*++) +.)# &! % ** *%)21 )' J)% 0K '&%( -%(*1 3-+.$' / + &+.-%*2$%+*'1 % / *)*#+%''+D*4 $ ) # &#"*2 +*'('*) &!%%' !(0 #*&%$)*+%( .)# *+).# &**+*& #%# &-#"**/ )/ &! & #) (*+" '*>& &! #"* +(#" ) ( # +.-%*, %&' #"* ('*)* %& & #) #"* *4#*& # (%& .)%# & *?*# $ "+ &! % * *' # &! )*/ *)0 "* -( .)%# & %&' ()*(*& #%# &'*#% )+-#"*+*'&%( -%(*1 3+%*' +.++*' &+.$+*A.*& # "%#*+0 70: "%* %&' # &+# (%# &+ &!" + +2$%+*' .$' / + &2+.-%*'*) "* '&%( +.$' / + &+.-%* ('*)"%+ $**& '*/ *)*' (% )-('2 *) &! %$ #% B3& 1&C #)! 1"** ('*)*+ %& ' *#) (%& .)%#* #"* ) ( # +.-%* $ %) &!+& #"*+ 6*' -*+ &%& & #. # / *-%+" &0 1 */ *, %&#"* (2 #%& # %) %# & #"* '&%( +.$' / + & +.-%*+ + & &&2 ! ' +"%* %&' PAGE 38 7= (# & *&+#.# &I* / * 0 .%#* +"%* * / * *A. *+ ' +# $.#*' %2 %(*#* ('*)+ 1" " # %)) ++*++ % )%!* & .( $* '*!**+ -**'(0 & #"* #"* "%&', *Ã† *& # +"%* **+*& #%# & (+*+ #"* *A. *(*& # !*(*# (*++ &, 0*0, ('*)+ 1 #" -*1 * '*!**+ -**'(0 "*+* *A. *(*& #+ %* &D # &! %&' & .(*.+ *+*% "*+ "% / * $**& +**3 &! # +# 3 * % $%)%&* $*# 1 **& #"*+* & #%' # &!*A. *(*& #+M;,7,:< ,:,97 ,,88 ,8: N0 &#"* (#%& # #* & & #"* '*+ !& +"%* ('*)+ + #"%# #"* & # %) 6%# &#"* ('*)'. &! #"* +"%** / * *++ +".)' &# $* *+# #*' # !)$%))%%(*#* 6*' &.# (*+"*+ + &* #(% $* &-*%+ $)*#!)$%))%%(*#* 6*+"%*+ -%$ #%#)2 ! 0 " + +2$%+*' ('*) $*+# +%# +&! #"* %$ / * (*& # &*' #* % + %& '*%) %&' '%#* -%+).# &# #"* +"%* * / * $)*($ / .+ *%+&+0 *-(%$)*('*)+ 1" " (* & (%& / % *# *+, "% / * $**& .+*' # +)/ * #" + $)*( & #"* " + +2$%+*' ('*) &! %%' !(0 "*+* ('*)+ & / )/ * #"* .+* * #"* >4*' + 6* M7 , 99 , <, , 8:N %'%# / * + 6* M; , : , :<, 97 ,;, 8 N ! '+0 "* ('*)+ 1 #" >4*' ! ' + 6* !*&*%)) .+* )*++ & .( $* '*!**+ -**'( **+*& #%# & %# #"* +# %.% #"* * / **' +"%*0 & #"* #"* "%&', ('*)+ .+ &! %'%# / * ! '+ !*&*%)) &**' )%!* & .( $* '*!**+ -**'( # * / * #"* +"%*+ %.%#*) 0 #* #"%# #"* +"%*+ $* &! * / **' -(#"* (%!* '%#% %* +(#" & (+# #"* (*' %) %) %# &+, 0*0 #"* %&%#( %)+#.#.*+ */ *& 1 #" &+ '*%$)* %(.& # '*#% )+ "% / * (* )*++ % +.-%*0&'* #"*+* .(+#%&*+, #"* >& #* *)*(*& # %% "*+ %+ & "*& %&' "*& M7 N %&' &*&*%&' *6.)+M97N&**'% & .( $*-'*!**+--**'(-'* / &! PAGE 39 7: % +(#" %&' %.%#* **+*& #%# &0 & %'' # &, #"* %& &# **+*& # +"%*+ 1 #" 3& 1& %$ #% #)! 0 * / *, %)(+# %)) #"*+* + "*(*+ *A. * % !)$%))%%(*#* 6*'(*+" %+ #"* &.#1" " (% $* &-*%+ $)*%# # (*+0 "* +*' ('*) +)/ *+ #"* +"%* * / * $)*( / * *?*# / *) %+ # %& * / * +"%*+ -( )%!* %&!* %&' / ).(* '%#% +*#+ .+ &! / * -*1 '*!**+ -**'( B& #) / *# *+C #+ **+*& #%# & %&' %& * 1 #" %& %$ #% &.# (*+",&# &**++% ) %%(*#* 6*'0 "* & # %) 6*'('*)'*-(+.&'* #"* &D.*&* -+&#"*+ 6*' -*+#>##"*'%#%+*#$ ( & ( 6 &! #+*&*! 0 &* #"* % 4 (%#*+"%* +* / **',#"*('*) +-.#"*+.$' / '*'%.#(%# %))%&'% $*##*% 4 (%# &##"* &.#'%#%+*# +% " */ *'.+ &!(*'*!**+--**'(0 "* *++ -+.$' / + &%-#*% " */ &!%& % 4 (%#*># +& # & .*' # ))% *2 + $*' * #* % >## &! #"* '%#% & #+ + % " */ *'0 "* +*' '&%( +.$' / + & +.-%* ('*)+ "% / * %)+ $**& +.*++-.)) .+*' & (# & #% 3 &! %&' / +.%) 6%# & % '&%( %)) '*-( &! +"%* -( % # (* +*A.*&* / ).(*# '%#% +*#+0 70; & >*' %(*1 3-"%* * / * %&' "%* '*) &! .*& #) ,+"%** / *%&'+"%*('*) &!%*/ *1 *'%+# 1 ' +# &#%*%+ & (.#* !%" + %&' !*(*# ('*) &! ) #*%#.*0 1 */ *, #"** %* #*& # %) $*&*>#+ #"*+* # 1 %& $* ( $ &*' & %& .& >*' -%(*1 30 *4%()*, #"* ('*)*+#%#+-(+%# "#$. )'%+* >('*) &%# %)!*(*# ('*) &! +*&% 0 +#, % .!" +"%* + ('*)*' %&' #"*& # + >&*2#.&*' $ (%& .)%# &! & #) / *#*4 + # &+ # $#% & #"* '*+ *' *?*#+0 " + #.&+ .# % .( $*+(* PAGE 40 7; *++ &!*&*%)0 &#"*#"*"%&',+"%** / *.+ &!+#%#*2-2#"*2%#(*#"'+ *)' )%!* )!&%) (*+"*+ 1" " %* / * ' Ã†.)# # (%& .)%#*, *+* %)) !)$%) "%&!*+ & +"%*0 +# -#*& #"* *+.)# &! (*+"*+ -( % +"%* * / * %) %# & %* &# ' *#) %(*&%$)* # ( .)# *+).# & %&%)+ +0 (.#%# &%)) *4*&+ / * *2(*+" &! #* "& A.*+ %* &**'*' # & / *# #"*+* (*+"*+ & # % +* > # *-(*+"*+&1" "( .)# *+).# &%&%)+ +%&$**-(*'0 " ++* ># * (*+" + 3& 1& %+ (*+" 1 #"J+.$' / + &2&&*# / # K, () &! % #)! %)) *A. / %)*& #(*+"1 #"#"*+%(*&&*# / # %+-#"*! / *&(*+"%&$*$#% &*'$ *.+ / * +.$' / + &-%/ * + ()*3& 1& & # %)(*+"0 "*+*''&%( -%(*1 3( $ &*++"%** / *%&'+"%*('*) &! & %& .& >*'-%(*1 3 1"** #"* ('*)* %& +%& & = & #+ % ## * ('*),* / *#"*+"%*.+ &!#"*+*''&%( +.$' / + &+.-%*('*),%&' *' #%#%& '*+ *'*+).# &.+ &!" + +2$%+*'-*#)+0 " .+,#"*('*)* +*2 ) */ *'-#"*$.'*&-$#"$. )' &!%& & # %)('*)%&'*' # &!%.( $*+(*" .!* )!&%)(*+"0 "*+"%** / **+++#%#+1 #"%+(#"+.$' / + &+.-%* ('*) 1" " "%+ % + ()* & # %) (*+"0 " + ('*) + '*-(*' .+ &! +& #"*+ 6*' -*+-(#"*! / *&'%#% & #+%&' +%.#(%# %))*>&*'.+ &!+(**2'*>&*' * &># #* %0 "* & # %)(*+"-#"*>&%)* / **'+(#"+"%*"%++.$' / 2 + & &&*# / # &2$. )#, %+ # + $#% &*' $ +.$' / + & *>&*(*& #, %&' #"**-* & *2(*+" &! + &**'*' ( .)# *+).# & %&%)+ +0 "* '&%( -%(*1 3 +.$' / + &+.-%*2$%+*'1 % / *)*#+(%3 *+( .)# *+).# &*' # &!.+ &!" + +2$%+*' PAGE 41 79 -*#)+*%+#*-(0 "*+*%'/ %& #%!*+-+"%*('*) &!%&'+"%** / * &% .& >*'-%(*1 3 1 ))$* -.#"* )).+#%#*' &)%#* "%#*+0 PAGE 42 = 2 .$' / + & +.-%*+, %+ (*& # &*' *%) *, %& $* $%') )%++ >*' & # # 1 %#*! *+ R % 4 (%# &! %&' & #*)%# +.$' / + & + "*(*+0 "* % 4 2 (%# &! +.$' / + & + "*(*+ # %)) !*&*%) 6* *.+ / * +.$' / + & #* "& A.*+ !*&*%# &! ) ( #+.-%*+ 1 #" 3& 1& %%(*#* 6%# &+0 & #" + "%#*, % '&%( -%(*1 31 ))$**+*& #*'-%#( .))2)%3+.$' / + &+ "*(*,%.)%% 42 (%# &!+.$' / + &#* "& A.*0 "*%#( .))2)%3+.$' / + &+ "*(*!*&*%) 6*+#"* '*% $#% & &! % $ .$ 2+) &* +.-%* $ *.+ / * +.$' / + & % *#%&!.2 )% & # %) (*+"0 *-* ' +.++ &! #"* '&%( -%(*1 3, >+# #"* %#(.))2)%3 +.$' / + &+ "*(* +$ *D */ *1 *'0 =0 / */ *1 #"* %#( .))2)%3.$' / + & "*(* %#( .))2)%3 +.$' / + & + "*(*, ) 3 * %& #"* +.$' / + & + "*(*, +#%#+ 1 #" % .+*2'*>&*' (*+" -%$ #%#)! 0 # *>&*+ #"* & # %)(*+" $ %'' &! &*1 / *# *+, *'!*+ %&' -%*+ 1 #" *% " +#* +.$' / + & -)) 1 &! % >4*' +*# +.$' / + &.)*+0 &#"*) ( #,%*.+ / *)*>&*')"*'%)(*+"1 ))& / *!*# % +(#"+.-%*0 "* +.$' / + & .)*+%* %+ -)) 1+E 7< PAGE 43 7 !.*=00 %#( .))2)%3+.$' / + &E B%C & # %)(*+",B$C(*+"$#% &*'%-#*&* +#* %#( .))2)%3 +.$' / + &, %&' BC (*+" $#% &*' %-#* %&#"* +.$' / + & +#*0 *% " -%*, % &*1 -%* / *#*4 + & #'.*' 1" " + #"* % / *%!* %)) #"* )' / *# *+ '*>& &!#"* -%*0 *% " B&&2$.&'%C *'!*, % &*1 *'!* / *#*4 + & #'.*' 1" " + #"* % / *%!*-#"*-)) 1 &!-. & #+E # 1 )'/ *# *+'*>& &!#"**'!*%&'# 1 &*1 -%* / *# *+ #"* -%*+ %'5%*& # ##"* *'!*0 *% " B&&2$.&'%C / *#*4 , % &*1 /*#*4 + & #'.*' 1"+* + # & + G G , 1"** + #"* % / *%!* #"* &*1 -%* / *# *+ -%))-%*+ %'5%*& ###"*)'/ *#*4 , +#"*% / *%!*-#"*( ' & #+-%))#"**'!*+ & '*& # & #"* )' / *#*4 %&' + #"* & .( $* #"* *'!*+ & '*& # & #"* / *#*40 *1 *'!*+ %* -(*' $ &&*# &! *% " &*1 -%* / *#*4 # #"* &*1 *'!* / *# *+ #"* *'!*+ '*>& &! #"* )' -%* %&' $ &&*# &! *% " &*1 / *#*4 PAGE 44 7 *+&' &!#%&)'/ *#*4##"*&*1*'!*/ *# *+-%)))'*'!*+ & '*& # & #"* )'/ *#*40 *1 -%*+ %* '*>&*' %+-%*+ *&)+*' $ &*1 *'!*+0 &*4%()*-%#( .))2)%3+.$' / + &&%& & # %)(*+" ++" 1& & !0=00 "* (+# (#%& # *# #"* %#( .))2)%3 +.$' / + & +.-%*+ + #"%# % +(#"+.-%*%&$*!*&*%#*'-(%& & #)(*+"-%$ #%#)! 0 "**2 -*,#" ++.$' / + &+ "*(* +*4#*(*)/ %).%$)*-('*) &!/ % .+() %#*' !*(*# $5*#+ %$ #% #)! 0 %#( .))2)%3 +.$' / + & +.-%*+ &).'* +#%&'%' $ .$ 2+) &* +.-%*+ %+ #"* +* %) %+* B 0*0, #"* ) ( # +.-%* + % $ .$ 2+) &* +.-%* % *#%&!.)% (*+" 1 #" %)) &&2$.&'% / *# *+ '*!** :C0 & %'' # &, #"* %-*(*& # &*' +.$' / + & .)*+ !*&*%) 6* #"* *.2 + / * $ .$ 2+) &* %# " +.$' / + & %)! #"(0 &&2*#%&!.)% (*+"*+, #"* ) ( #+.-%* & / *!*+ #%$ .$ 2+) &*+.-%* *4*# %#%>& #*& .( $* -*42 #%' &% & #+0 "*+* *4#%' &% & #+*+&' #*4#%' &% / *# *+ B/ *# *+ 1"+* '*!** + &# *A.%) # :C & #"* (*+"0 #* #"%#, %-#* #"* >+# +.$2 ' / + &,%))-%*+ %* A.%' )%#*%)+,"*&* %))#"* &*1 / *# *+ *%#*' +.$+*A.*& #) 1 )) "% / * -. & '*& # *'!*+0 "* & .( $* *4#%' &% & #+ & #"* ) ( #+.2 -%* +%&+#%& #,%&' +*A.%)##"*& .( $*-*4#%' &%/ *# *+ &#"**>&*' (*+"$#% &*'%-#*%) &!&*+#*-#"*%#( .))2)%3+.$' / + &&#"* & # %) (*+"0 "* ) ( #+.-%* + ./ %#.*2& # & ..+ */ *1"** *4*# %# *4#%' &% / *# *+, 1"** &) #%&!*&# )%&* & # & . # + % " */ *'0 & + #* #"* .)% # %#( .))2)%3 +.$' / + & +.-%*+ **+*& # &! ()*4 !*(*# +"%*+ - PAGE 45 =8 %$ #%#)! ,#"*+*+.$' / + &+.-%*+(% &#$**%+ )%%(*#* 6%$)*%&' '* / &!%)+*'2-(%&%)# -( .)%# &-#"* ) ( #+.-%* %& $*/ * ' Ã†.)#0 "*+* '*> *& *+ *).'* #"* ((*' %#* & # 1 +* (%& .)%# & %&' "*&* (% *+#% & #"* %) %$ ) # #"*+* + "*(*+0 & #"* *+# #"* "%#*, % '&%( -%(*1 3 + '*/ *)*' #"* %#( .))2)%3 +.$' / + & +.-%*+ 1" " ?*+ % )+*'2-( %&%)# -( .)%# & %&' %)) 1+ .+*+ # (%& .)%#* #"* ('*) ' *#) %&' & #. # / *) 0 # (% $* &#*' #"%# **& #) % + "*(* 1 %+ +*' $ #%( M8N -' *#)*/ %).%# &!#"*%#( .))2)%3+.$' / + &+.-%*+%#%$ #%%%(*#* / %).*+, $.# #"* 1 3*+*& #*' "** & '&%( %#( .))2)%3+.$' / + & +.-%*+ M;<, 98 , <9 N 1 %+ .$) +"*' ##"* .$) %# &-#"* %$ / *2(*& # &*' 1 30 =07 ( .)%# & & #" + +*# &, % ++#*(%# -( .)%# & #"* &*1 '&%( ('*) $%+*' & %#( .))2)%3 +.$' / + & +.-%*+ + *+*& #*'0 " + '&%( ('*) #*%#+ #"* +(#") ( #+.-%*%+%-.&# &#+ & # %)(*+"0 1 */ *,#"*& #)/ *#*42 + # &+&**'#$*.'%#*'& # & .%))%#*/ *)*/ *)-+.$' / + & &'*#'*/ *) #"* '&%( -%(*1 30 #* #"%#, %)) #"* / *# *+ & #'.*' #".!" +.$' / + & %* $#% &*'%+ %&%Ã†&* ( $ &%# &-& #)/ *#*4 + # &+ &#"* & # %)(*+"0 "**-*, #"* '&%( $*"% / #"* ) ( #+.-%* %& $* & #))*' $ -( .)%#2 &! #"* '&%( ('*) & #"* & # %)(*+" #+*)-, #"* &) *4*# & $* &! #"* %+* 1"*& #"* & # %)(*+" "%+ &&2*#%&!.)%-%*+0 " + $)*(%& $* .(/ *& #*' $ #%3 &! #"* (*+" $#% &*' #".!" &* +#* +.$' / + & %+ #"* & # %) (*+"0 # (% $* &#*' #"%# %& %'' # &%) +.$' / + & +#* (% $* &**'*' & +(* %+*+ PAGE 46 = # +)%#* #"* *4#%' &% & #+, %&' #"* *+.)# &! (*+" + #*%#*' %+ #"* & # %) (*+"0 # %)*4%()*-#"*%$ / *(*& # &*'+*&% +1"*&#"* & # %)(*+" + % #*#%"*'& 1"** # 1 +.$' / + & +#*+ %* &**'*', %&' #"* '&%( -%(*1 3 %& $* '*/ *)*' $ #*%# &! #"* (*+" $#% &*' %-#* # 1 +.$' / + & +#*+ %+ #"* & # %) (*+"0 '*>&* #"* ) ( # +.-%* .+ &! #"* / *# *+ #"* & # %) (*+", #"* *& .(*%# &-#"* $ .$ %# "*+ &#"*) ( #+.-%* +&**++% 0 &#"* &*4# # 1 +*# &+, / % .+ + "*(*+ %* *+*& #*' %++ !& &! #"* $ .$ %# "*+ # / % .+-%*+ -#"* & # %)(*+"0 =070 ++ !& &! %# "*+ #*!.)% %*+ & !0=07,% *#%&!.)%& #)(*+" ++" 1& %)&!1 #"#"* $ .$ 2+) &* +.-%* B: %# "*+C & #"* ) ( # %-#* %& &>& #* & .( $* +.$' / + & +#*+0 #* #"%#,*% " -#"* $ .$ %# "*+ &#"* ) ( #+.-%* +'*>&*' $ %*#%&!.)%-%* 1 #" *% " / *#*4 '*!** -., #"**$ %.& # &! 9 & #) & #+ B-( #+ &&*#*' &* !" $"'C &**'*' # '*>&* % $ .$ +.-%* %# " & #"* ) ( #0 "**-*, *% " *#%&!.)% -%* & #"* & # %) (*+" 1 #" % '*!** : %# *% " / *#*4, #"* *+&' &! $ .$ +.-%* %# " %& $* %++ !&*' # # & % +#% !" # -1 %' 1 % 0 & !0=07, #"* +.-%* %# "*+ %&' %* %++ !&*' # -%* %&' *+*# / *) 0 "*9& #) & #+-#"*%# " ,*+&' &! #-%* ,%*" !") !" #*' & !0=070 #*#"%#,#"* & # %)& #)(*+"%&$*/ *1 *' %+ #"* %%(*# '(% & #"* ) ( #+.-%*0 "**-*, -%* %& $* #".!" # %+ #"*# &-#"* %%(*# '(% & / * 1" " #"*%# " +'*>&*', 0*0, "%+ &&26* / %).*+0 */ *#"*)*++, *% " *#%&!.)% -%* B*0!0 C %&$* %%(*# %)) PAGE 47 =7 F F F FS S S S 1 2 3 41 2 3 4 !.* =070 *#%&!.)% (*+" %&' #+ ) ( #+.-%* &+ +# &! : $ .$ +.-%* %# "*+0 PAGE 48 == '*>&*' / * M8 N , %&' "*&*, %)) $ .$ 2+) &* %# "*+ '*>&*' $ 9 & #) & #+ %*)%))%%(*#* 6*' / * M8 N 0 =0707 ++ !& &! %# "*+ #*!.)% %*+ & !0=0=,%(*+"& #% & &!%&*4#%' &% & #-'*!**=%&' #+) ( #+.2 -%*%*+" 1&0 "*-%*+ %*%++ !&*'#$ .$ %# "*+ *+*# / *) B%+ #"* %)) "% / * / *# *+ '*!** :C -)) 1 &! #"* %-*(*& # &*' + "*(*0 1 */ *, #"* *& #%) +(#" +.-%* *&)+*' $ #"* %# "*+ &+ +#+&>& #*& .( $*-$ .$ %# "*+& / *! &!#% & # &#"*) ( #0 *2 .+ / *1 % -*& .(*%# &!#"*+*$ .$ %# "*+%&'%++ !& &!#"*(#/ % .+-%*+ %#' ?**& #)*/ *)+&**'#$*'*/ *)*' &'*#-( .)%#*#"*'&%( -%(*1 3 %#( .))2)%3+.$' / + &+.-%* ('*)0 "* '*% *& .(*%# &! #"* $ .$ %# "*+ *+&' &! # -%*+ "% / &! %&*4#%' &% / *#*4 + +" 1& & !0=0: 1"** % )%) +.$' / + & #"* (*+" &2 + +# &!-%*+ B%&' &# #"* #"* $.&'% -%*+C !0=0= + % *' .#0 )! %)) , #"* *+.)# &! )%) +.$' / + & (*+" B+" 1& %+ '##*' (*+"C +*4%#)#"*+%(*%+#"*(*+" & !0=0=%&'"*&**4%#)#"*+%(*& .( $* $ .$ %# "*+ %& $* %++ !&*' # #+-%*+ 1 #" / *# *+ -'*!** : %+ +*/ '*& # -( !0=0: B#"* &*1 -%*+ %&' #"* *+&' &! %# "*+ %* (%3 *' $ JK %&' J&K*+*# / *)C0 " +*++-)%)+.$' / + &%&'%++ !&(*& #-$ .$ %# "*+ %.&' %& *4#%' &% & # %& $*% *' .# *.+ / *) %&' & #"* ) ( #, #"* *&)+*' %# " *+&' &! # -%*+ +"% &! #"* *4#%' &% & # 1 ))& / *!* # % & #0 1 */ *, #"** + & &**' # % .# %& &>& #*& .( $* +.$' / + & PAGE 49 =: P P P F F F F F F F F F S S S S S S S S S0 1 2 0 1 2 3 4 5 6 7 8 0 1 2 3 4 5 6 7 8 !.*=0=0 (*+" 1 #" %& *4#%' &% & #'*!** =%&' #+ ) ( #+.-%*0 PAGE 50 =; p p p p p p p p p n n n n n n n n n selected mesh for local subdivision !.*=0:0 %)+.$' / + &%.&' #"* *4#%' &% & #%&' #"* ) ( #+.-%*0 PAGE 51 =9 +#*+0 " +'*+ # & +--( .)%# &.+*+&)%&'#"**4%# ()*(*& #%# & 1 ))$* '*#% )*' &%)%#* +*# &0 =070= &*(%# + &#" ++*# &,#"*(%#"*(%# +-#"*3 &*(%# +-#"*) ( #+.-%* +'*/ *)2 *' / % )).+#%# / * *4%()*+ %&' #"*& #"* !*&*%) 6*' -( .)%+ %* *+*& #*'0 # (% $*&#*'#"%#%+ &!)*$ .$ 2+) &*%# " +$#% &*'%+#"*) ( # &!*++ #"* %#( .))2)%3 +.$' / + & %)! #"( %) *' # %& & # %) : $ : *#%&!.)% & #) (*+"0 *# B C, 1"** B C M8 N , '*&#* #" + $ .$ 2+) &* %# " 1" " %&$* *4*++*' %&%)# %))%+ B COB B C B C B CC O B C B C B=0C 1"** **+*& #+ % =2' (*&+ &%) + # & / *# %# #"* B C#" & #) & # )%# &%&' B C%&' B C%*#"*.$ 2+) &*$%+ +-.&# &+0 "*+.$+ # & '*&#*+ #"* %# " .&'* &+ '*%# &0 *++ &! A&0=0 & % !*&*%) 6*' ' &%#*++#*( 1 * "% / * O B=07C 1"** +%#%&+-(%# &(%# 4+# &!#"*$%+ +-.&# &+-%$ .$ 2+) &* %# ", %&' + + 6* B= :C0 *# + #"* &%#*&%# & %)) & #) & #+ '*>& &!%2+) &*%# " &=0#*#"%# &#"*&%#*&%# &-#"*& #) & #+, *% "&#) & #"%+%&B C(&*& #0 *4%()*,#"*B C(&*& #+ #"* & #) & # B C *+&' # + # &+ = = G = G7 2 1"**, O PAGE 52 =< : G 2 *+*# / *) & #"* / *# 0 * %& *4*++ #"* *& # *+ *4) #) & #"* -)) 1 &! 1 % E B8 C O B GC O B7 G7C O B C B C %&' B8 GCO B8 G7CO B CO B G7CO B7 CO B7 GCO80 ( #+.-%* 1 #"(%& $ .$ %# "*+ -(%*#%&!.)% & # %)(*+" 1 % ) ( # +.-%* &+ +# &! (%& $ .$ +.-%* %# "*+ $#% &*' %-#* %) &! %& &>& #* & .( $* +.$' / + & +#*+ # % *#%&!.)% & # %) (*+" + &+ '**'0 *4%()*, )*##"* ) ( #+.-%* !0=07$* 1" " %& $* 1 ##*& %+ B CO B7 7 CG B7B 7 C 7 CG B7B 7 C 7B 7 CCG B7 7B 7 CC B=0=C 1"** B7 7 C O B C 8 , %&' 8 #"*1 +*0 ( )%) , %&' %* %)+ *A.%) # B C %& % %#* %&!* / %).*+ %&' 8 .#+ '*0 # (% $* &#*' #"%# *+&' # %# "*+ *+*# / *) & !0=070 A&0=0= &!*&*%) 6*'' &%#*+$*(*+ O G G G O B=0:C 1"** +%*#"*#%&+-(%# &(%# *+-+ 6*B= :C%&' +%*#"*B4, ,6C(2 &*& # &%#*&%# & % +.$+*# #"* & #) & #+ '*>& &! , O 7 = PAGE 53 = %&' :0 (*!*&*%)*4*++ & + O G G G O O B=0;C "**, +#"* <;2(&*& #/ *#-=+ # &+-#"*7;/ *#*4 & #)(*+" '*>& &! #"* ) ( # +.-%* 0 %# *+ : %* + 6* B: <;C , *% " 1 &+ +# &! % + &!)* &&6* *&# BO C %&' #"* B= <;C2+ 6*' (%# 4 O 0 ( #+.-%* 1 #"(%& $ .$ %# "*+ -(%& %$ #% & # %)(*+" "* +#%!* + & 1 +*# # '*>&* #"* ) ( # +.-%* .+ &! #"* / *# *+ & # %) (*+" -%& %$ #%#)! ,%++.( &!%))-%*+ %*A.%' )%#*%)%&'&-%* & #% &+ (* #"%& &* *4#%' &% & # %+ #+ / *#*4 B 0*0, *4#%' &% & #+ %* +)%#*'C0 +(*& # &*'*%) *, -#"*+*%++.(# &+%*&#+%# +>*',&*# 1 +#*+ !)$%) +.$' / + & (% $* *A. *' %&' #"* *+.)# &! (*+" %& $* #*%#*' %+ #"* & # %)(*+"0 *# #"* & .( $* / *# *+ & #"* & # %) (*+" $* ! , %&' )*# " #"*+* $* #"* *4#%' &% / *# *+0 "* & .( $* -%*+ &#"* & # %)(*+" %* %++.(*'#$* #,%&' -#"*+*-%*+"% / */ *# *+1 #"'*!**:B"*&*-#"#*(*'% J&(%)-%*KC%&'*% "-#"**(% & &!B # C-%*+"% / *&*-#"* " *4#%' &% / *# *+B"*&*-#"#*(*'%J+* %)-%*KC0 *# $*#"*= ! O $ ' (*&+ &%)/ *# & #% & &!#"*& #)/ *#*4+ # &+ &=0+ &!#"*-( .)%# &+ &*# &=070 PAGE 54 = %&' *# & =0707,#"* +(#") ( #+.-%* %& $**4*++*' %+ O G B=09C 1"** + % + &!)* $ .$ %# " %++ !&*' # *% " #"* &(%) -%*+ %&' + % ))*# &&>& #*& .( $*-$ .$ %# "*+*+&' &!#*% "-#"**4#%2 ' &% & #+0 + +%+.-%*'*>&*' / *#"*-%*+-#"* & # %)& #)(*+",*% " %&$*/ *1 *'%+%$ .$ %# "'*>&*' / *#"**+&' &!*!.)%-%* &#"* & # %)& #)(*+"0 ( )%) ,*% " %&$*'*>&*' / *#"* *+&' &! *!.2 )%-%*+ &#"* & # %)(*+"B*-* # !0=07R !0=0:-#"*'*#% )*''*+ # && %%(*# '(% &+-+.$' / + &+.-%*+C0 #"*+ () # -#"*-)) 1 &!(%#"2 *(%# %)'* / %# &+&#"*'&%( ('*),-(& 1&#"*%%(*# '(% &1 )) &# $* *4) #) / '*' & #"* -( .)%# &0() &! #"* +%(* %% " #%3 *& $*-* #'* / * A&0=0;, #%&$* +" 1& #"%# O B CB COB B CB CC OB C B=0 PAGE 55 :8 + .+*' # **+*& # % ))*# & $ .$ %# "*+ %.&' %& *4#%' &% / *#*4, #"* +.$+ # +.+*' # &' %#*#"* 2#"*4#%' &% & #,#"* +#2+.*+ # **+*& #+ #"* *4&*& # % (%#"*(%# %) A.%& # # %&' #"* )*/ *) &' %# B# *2 *+*& #/ % .+)*/ *)+-+.$' / + & &#"*)%)& #)(*+"%.&'%&*4#%' &% / *#*4C + '* #*' / %%+.$+ # &#"* .) $%*+0 "* *4*++ & + '* / *' .+ &! #"* *.+ / * &%#.* )%) +.$' / + & %.&'%&*4#%' &%/ *#*4 %++" 1& &*# &=07070 +#, %&$**4*++*' %+ O G B=0C 1"** #"* >+# #*( A&0=0 + #"* !*&*%) 6*' ' &%#* **+*& #%# & #"* $ .$ 2+) &*%# "*+ *+&' &!##"* &(%)-%*+ -#"*&*1 )%)+.$' / 2 + & (*+" $#% &*' %-#* &* +.$' / + & +#* & #"* )%) & #) (*+" B+ ( )% # #"+* %# "*+ (%3 *' & !0=0:C0 **+*& #+ #"* *+# #"* &>& #* $ .$ 2+) &* %# "*+ +..&' &! #"* *4#%' &% & # B+ ( )% # #"* *& #%) %# " *&)+*' $ %# "*+ (%3 *' & !0=0:C0 "* / *# *+ & #"* &*1) $#% &*' )2 %) +.$' / + & (*+" %& $* *4*++*' %+ % ) &*% ( $ &%# & % +.$+*# #"* / *# *+ #"* & # %) (*+" B1" " 1 )) & # $.#* # #"* )%) +.$' / 2 + &C -)) 1 &! #"* +.$' / + & .)*+0 * %& &%(* #" + +.$+*# & # %) & #) / *# *+ 0 .#"*(*, #"***4 +#+ %(%# 4 -+ 6*B= % = C,+. " #"%# O 1"** %&' %* / *#+ ' (*&+ &= % %&' = *+*# / *) 0 ) &! #"* '*% *.+ / * )%) +.$' / + & %!% & & , %& PAGE 56 : $* -.#"* *4%&'*' %+ O G G B=0C & #"* %$ / * '* / %# &, + % / *# ' (*&+ & = , ( + &! % +.$+*# #"* / *# *+ '*>& &! #"* = % ' (*&+ &%) / *# 0 #* #"%#, "%+ #"* +%(* +#.#.* %+ , #"**-*, #"** *4 +#+ % B= = C (%# 4 +. " #"%# O 0 % " +.$' / + & % )%) (*+" 1 #" / *# *+ *%#*+ %&*1 )%)(*+"1 #" % / *# *+1" "& # $.#*+%>4*' & .( $*-$ .$ 2+) &*%# "*+0 **' &! &* +#* -.#"*, # %&$* +" 1& #"%# O G G G B=08C *%.+* #"* & # &+ *# #"* )%) *.+ / * +.$' / + & %.&' #"* *42 #%' &% & #, 1 * "% / * O O O O O 0 & %'' # &, #"* +.$' / + & .)*+ *(% & #"* +%(* #".!".# #"* *>&*(*& # *++, 1 * %)+ "% / * O O O O O 0 , #"* %$ / * *A.%# &+ %& $* -.#"* + () >*')*%' &!# O G G G O B C B=0C PAGE 57 :7 *# %& $* 1 ##*&%+ OB CB C B=07C 1"** O B C%&' O 0 "* '*%-)%)*.+ / * +.$' / + & %.&' %& *4#%' &% & # + )).+#%#*' & !0=0;0 #* #"%#, *% " / *#*4 + # & &#"*+.$' / '*'(*+" +$#% &*'$ %&%Ã†&*( $ &%# &-+(* / *# *+ & #"* */ .+ )*/ *) %&' "*&* %& 1 +.(+ # 0 "* )%!*+# * !*& / %).* +. " % (%# 4 + %&' # %& $* +" 1& #"%# #"* *+&' &! &>& #* +* *+ + & / *!*& # -)) 1 &!% + ( )%%% " %+ & %)+#*%' *# %)0 M=N0 "* *+# #"* '* / %# & )*%' &! # %& *4*++ & + *)%# / *) +#% !" # -1 %'0 + &! #"* +%(* %% " .+*' # '* / * #"* A&0=0<, #%& $* +" 1& #"%# O B CB COB B CB CC OB C B=0=C (A&0=09, A&0=0< %&'A&0=0=, OB C GB C B=0:C *# OB CGB C, %&' "*&* O B=0;C PAGE 58 := spj}0{spj}0{spj}0{1 jC}s{1 jC}s { {jBs 1} {jBs 2} 2{jBs 3} !.*=0;0 %)+.$' / + &%.&'#"**4#%' &% & #%&'#"**+&' &! %# "*+ &#"* ) ( #+.-%* -(' ?**& # )*/ *)+ -+.$' / + &0 PAGE 59 :: =070: &%( + & #"* */ .+ +*# &, %& *4*++ & + '* / *' #"* +(#" ) ( # +.-%* $#% &*'/ % &>& #*+.$' / + &+#*+0 " +*4*++ &#*%#+#"*+(#") ( #+.-%* %+ % -.&# & #"* & #) / *#*4 + # &+ & #"* & # %) (*+"0 1 #"* / *#*4 + # &+ & #"* & # %) (*+" '*>& &! #"* +(#" ) ( # +.-%* %* #*%#*' %+ % -.&# &-# (* &'*#*( $*'#"*%#( .))2)%3+.$' / + &('*) &%'&%( -%(*1 30 "* / *) # -#" ++.-%* ('*)%&$* *4*++*' %+ S B CO S B=09C 1"** %& / *+#. 3 '# '*&#*+ % # (* '* / %# / *0 "* " + + #"* '&%( +.$' / + &+.-%*('*) +$%+*'&#"*1 32*&*!/ *+ &-%!%&! %&'&%( + M=9N %&' + -( .)%#*' &%& %&%)!.+ 1 % # #"* '&%( -%(*1 3 *+*& #*' & *# & 7070 *# B C$*#"*(%++'*&+ # -.&# &-#"*+.-%*0 "*&#"*3 &*# *&*! #"* +.-%* + O 7 S S O 7 S S B=0 PAGE 60 :; + #"* (%++ (%# 4 + 6* B $$ C0 ( )%) , )*# B C $* #"* '%( &! '*&+ # -.&# & -#"* +.-%*0 "*& #"* ' ++ %# &*&*! + O 7 S S O 7 S S B=0C 1"** O B=078C + #"* '%( &!(%# 4-+ 6* B $$ C0 "* #*& # %)*&*! -#"* +(#") ( #+.-%* %& $* *4*++*' %+ O 7 B=07C 1"** + #"* +# ?&*++ (%# 4 + 6* B $$ C0 *&*! ('*)M9 N +.+*'#(.#*#"**)%+# #*& # %)*&*!-#"*'&%( +.$' / + & +.-%*0 "* *+&' &! *4*++ & -#"* +# ?&*++ (%# 4 + O B G G G G C B=077C 1"** #"* +.$+ #+ & '*&#* #"* %%(*# %# %) '* / %# / *+0 "* B C %&' B C+%**)%+# # -.&# &+& #)) &!)%)#*&+ &%&' ! ' # &#"*# 1 %%(*# ' &%#* ' *# &+0 #* #"%# #"* #" &2)%#* *&*! *4*++ & ( !" # ' / *!* %# *4#%' &% & #+ & #"* ) ( # +.-%* %#( .))2)%3 +.$' / + & + "*(* %+ +" 1& & %)+#*%' *# %)0 M=N0 */ *%) (*#"'+ "% / * $**& +.!!*+#*' & PAGE 61 :9 %)+#*%'*#%)0 M= N# / *(*#"*$)*(-#"*' / *!*& #+* *+0 1 */ *, &#" + ' ++*#%# &,#"* $)*( + .( / *& #*' $ +*## &!#"* *+&' &! ! ' # *-2 > *& #+ # $*6* %##"*+* & #+0 "**-*, #"* #" &2)%#**&*! %# *4#%' &% & #+ + 6*0 "* *?*# + &*!) ! $)* # #"* / *%)) #" &2)%#* *&*! %+ *4#%' &% & #+%* *+*& # & #"* +(#") ( #+.-%*0 + &!#"**4*++ &+-#"*3 &*# ,' ++ %# &%&'#*& # %)*&*! &A&070, #"*+%(*(# &*A.%# &%+ &A&070;%&$*$#% &*'0 "*!*&*%) 6*'-*/ *# , 1" " %& $* $#% &*'#".!"#"* & )*-/ #.%)1 3 M=9N, +*4*++*' %+ O B C B=07=C ?**& # # *+ -*+ %& $* %) *' & #"*+(#" ) ( # +.-%*, %&' #"* ) ( # +.-%*1 .)'*/ )/ * / *# (*%' &!#A&070;#$#% &%&*A. ) $ .(+ # & "%%#* 6*' $ % ( & ( .(-#"* ##%)('*)*&*! 0 =070; .)# )*/ *)&%( + # #" + & #, % '&%( -%(*1 3 + '*/ *)*' #"* %#( .))2)%3 +.$' 2 / + & + "*(* 1"** #"* +(#" ) ( # +.-%* */ )/ *+ / * # (* & *+&+* # #"* %) *'-*+0 "**& # **++%&$*'*+ $*'%+-)) 1+0 / *&%& & # %)(*+", %+(#"+.-%* +$#% &*' &#"*) ( #0 +*+%&' *#)%)+& #"*+ 6*'-*+ # #" + +(#" ) ( # +.-%* # *&-* / % .+ -.&# &%) %&' %*+#"*# &+#% & #+0 " +' *#(%& .)%# & +#"*&#%&+-**'$% 3%+/ #.%)-*+%# &!&#"* & # %) (*+" #".!" % #%&+-(%# & (%# 4 BA&0=07=C, %&' #"* & # %) (*+" B%+ 1 *)) %+ PAGE 62 :< #"*.&'*) &!+(#") ( #+.-%*C'*-(+& # & ..+) / *# (*.& # )%&*A. ) $2 .(+ # & +$#% &*'0 "* '*-(%# &-#"* +.-%* &*+&+* ##"*%) *' -*+ +! / *&*'$ #"*(# &*A.%# &BA&070;C0 #" &#"*" + +2$%+*'('2 *) &! -%(*1 3, #"* ) ( # +.-%* */ )/ *+ %+ % &+*A.*&* #"* */ ).# & #"* & # %) (*+"0 &* %& %) / % .+ # *+ -*+ & #"* ) ( # +.-%* # $#% & % '*+ *' *?*#, $.# #"* ++ $)* )*/ *) '*#% )+ %*% &! & % +"%* #"%# %& $* $#% &*' #".!" */ ).# & + &+#% &*' $ #"* & .( $* & #) / *# *+ & #"* & # %)(*+"0 # ( !" # $* &**++% # &*%+* #"* & .( $*& #) / *# *+ & #"* & # %)(*+" &'* #$#% &% '*#% )*'+"%* #".!" #" + */ ).# &*++0 "* & .( $* & #) / *# *+ '*>& &! #"* +%(* +(#" ) ( # +.-%* %& $* &*%+*'$ + ()*)% &!#"* & # %)(*+"1 #"%(*+"$#% &*'%-#*&*+.$' 2 / + & +#* %) *' # #"* & # %)(*+"0 " + &*1 (*+" "%+ (* & .( $* / *# *+ $.# '*>&*+ #"* +%(* ) ( # +.-%*0 "**-*, #"* '&%( %#( .))2)%3 +.-%* ('*)%&$*+.$' / '*'!)$%))# &*%+*#"*& .( $*-/ *# *+ B& #) & #+C -#"*('*)0 *4%()*,%-#*&*+#*-!)$%)+.$' / + &,#"* & # %)'*!**+-**'( B*-* # A&0=0; %&' A&0=09C & #"* '&%( ++#*( 1 ))$* *)%*' $ % )%!* & .( $* '*!**+ -**'( , 1"** O 0 + % !)$%) +.$' / 2 + & (%# 4 + 6* B $ C 1"+* *& # *+ %* .& A.*) '*#*( &*' $ %#( .))2)%3 +.$' / + &.)*+B+***# &=0-#"*'*#% )+%$.##"*.)*+C0 " .+, ,*4*++*' %+ % -.&# & ,%& $* 1 ##*& %+ OB C O B=07:C PAGE 63 : 1"** OB C 0 "**-*, A&0=0; %&' A&0=09 %& $* *1 ##*&%+ OB C B=07;C %&' S B COB C S B=079C *+*# / *) 0 1#"**A.%# &-(# &&**'+#$*'* / *'-#" +&*1+.$' / '*' ('*) & / )/ &! % )%!* & .( $* & #) / *# *+ &%(*) 0 "* (%++, '%( &! %&' +# ?&*++ (%# *+ &**' # $* *(.#*' -#" + J>&*K )*/ *)0 "* +#.#.* #"*(# &*A.%# &%+! / *&$ A&070;*(% &+.& "%&!*', $.##"*' (*&+ &%) # %&' #"* *& # *+ %&' "%&!* *+&' &!) & #" + &*1) $#% &*' +.$' / '*')*/ *)0 &%# .)%#"*(# &*A.%# &,*4) #)*4*++*'%+%-.&# & ,%& $* 1 ##*&%+ Q G S G O B=07 PAGE 64 : =0= & #*)*(*& # ()*(*& #%# & "**/ ).# &-#"*!*&*%) 6*'' &%#*+-.&*1'&%( +.-%*('*) %&$*'*#*( &*'$ #"*+*&'2'*' ?**& # %)*A.%# &%+! / *&$ A&070;0 & %&%)# %)+).# &-#"*! / *& &!' ?**& # %)*A.%# &%&&#$*'* / *' &!*&*%)0 1 */ *, %&*Ã† *& # & .(* %) ()*(*& #%# &%&$* $#% &*'.+ &!#"* >& #**)*2 (*& #(*#"'M:7 N0 "*) ( #+.-%*-#"*'&%( %#( .))2)%3+.$' / + &('*) +%))*# &-$ .$ %# "*)*(*& #+0 *.+*# 1 # *+ ->& #**)*(*& #+-#" + .+*2&(%)*)*(*& #+B$ .$ %# "*+%++ !&*'##"*&(%)-%*+-#"* & # %) (*+"C%&'+* %)*)*(*& #+B))*# &&>& #*& .( $*-$ .$ %# "*+%++ !&*' # *% " *4#%' &% / *#*4 #"* & # %) (*+"C0 "* +"%* -.&# &+ #"* &2 (%) *)*(*& # %* #"* $%+ + -.&# &+ #"* $ .$ +.-%* %# ", 1"**%+ #"* +"%* -.&# &+ #"* +* %) *)*(*& # %* #"* ))*# & $%+ + -.&# &+ *+&' &! # #"* $ .$ %# "*+ & #"* +* %) *)*(*� & #"* .*& # ()*(*& #%# &, #"* , %&' (%# *+-*% " &' / '.%)&(%)%&'+* %)*)*(*& #+%*%).)%#*' %&'#"* %&$*%++*( $)*' & ##"*!)$%) , %&' (%# *+#"%#%*% &#"* *+&' &!' +*#**A.%# &-(# &0 &%# *,1 *&*/ *%++*( $)*#"*!)$%) (%# *+*4) #) &#"* & #**+#-# (**-(%&*0 "*'*#% )*' ()*(*& #%# & + *4)% &*' &#"* -)) 1 &!+*# &+0 =0=0 %#%#.#.*+ "*) ( #+.-%*-#"*'&%( %#( .))2)%3+.$' / + &('*) +%))*# & -$ .$ %# "*+,%&'"*&**A. *+.+#3 **#% 3-#"*& #))!&+'*>& &! +. " %# "*+0 * %& !*# #"* & #) )!&+ #"* &(%) *)*(*& #+ & #"* ) ( # PAGE 65 ;8 list of faces list of edges list of normal elements list of vertices list of faces list of edges list of normal elements list of vertices list of faces list of edges list of normal elements list of vertices Subdiv object Subdiv object local subdivision around extraordinary vertices Subdiv objectNULL !.*=090 "*'%#%+#.#.*.+*'-'&%( +.$' / + &+.-%* ()*(*& #%# &0 +.-%*-(#"* & # %)& #)(*+" #+*)-0 1 */ *,1 *&**'#)%))+.$' / '*#"* & # %)& #)(*+"%.&'#"**4#%' &%/ *# *+#$#% &#"*& #))!&+ #"* $ .$ %# "*+ &#"* +* %) *)*(*& #+ &#"* ) ( #+.-%*0 +.$' / + & +.-%* '*>&*' $ % & #) (*+" %# %& )*/ *) + '*+ !&*' %+ % )%++1" ""%+ % & #*# #+%*& #(*+",%+*# & #*+# #+?+ &!(*+"*+ B% + &!.#-)%)+.$' / + &%.&'#"**4#%' &%/ *# *+%##"%#)*/ *)C,%) +# --%*+,*'!*+,/ *# *+%&'&(%)*)*(*& #+0 %*,*'!*,/ *#*4%&'&(%)*)*(*& #+ %*, &#.&,)%++*+1" "+#*%))#"*&&*# / # %&'#"* &-(%# &&**'*'# * #"**& .(*%#*%))#"*%# "*+)%))+.$' / '*%.&'%&*4#%' &%/ *#*4 & #"%# )*/ *)0 "* ()*(*& #%# & #%3 *+ #"* & # %) (*+" %+ #"* $%+* +.$' / + & +.-%*$5*#B1 #" #+%*& # & #*+*##C%&')%))+.$' / '*+#"* & # %) (*+".#%.+*2'*>&*'(%4 ( .()*/ *)%.&'*% "*4#%' &%/ *#*4#*%#* PAGE 66 ; ?+ &!$5*#+%#' ?**& #)*/ *)+B !0=09C0 ##" + & #,)*#H+#%3 *%)+*)3%# #"*&(%)%&'+* %)*)*(*& #'%#%+#.#.*+%&'(.#%# &-#"**+&' &! )%) %&' (%# *+0 =0=07 (%))*(*& #+ % " &(%) *)*(*& # + % $ .$ +.-%* %# " %&' "*&* + '*>&*' $ 9 / *# *+B-(#"*2&&*#*'&* !" $"'-#"**+&' &!&(%)-%*C &#"* & # %) & #) (*+"0 % " &(%) *)*(*& # 3 **+ % +*# & #*+ # #"+* / *# *+ #"* & # %) (*+" 1" " %# %+ & #) & #+ #"* ! / *& *)*(*& #0 % &(%) *)*(*& #, #"* (%++, '%( &! %&' +# ?&*++ (%# *+ %* + 6* B9 9C %&' %& $* (.#*'*4%#)$ % &!.##"*&**++% & #*!%# &+%&%)# %)) 0 "*(%# 4 &A&0=0,=078%&'=077&**'+#$**)%*'$ B-A&0=07C-(.#%# & -#"*)%) %&' (%# *+*+*# / *) -#"**+&' &! &(%)*)*(*� =0=0= * %))*(*& #+ % " +* %) *)*(*& # &+ +#+ %& &>& #* & .( $* $ .$ %# "*+ & #"* ) ( #0 * "% / * %)*%' '*+ $*' % *.+ / * *& .(*%# & #"* $ .$ %# "*+ %+* %)*)*(*& # &*# &=07070 *#.+& 1&+ '*%&%$ #%$ .$ %# "#"*+* %)*)*(*& # &+(*)*/ *) 0 "*(%++(%# 4 -#" +%# "%&$*1 ##*& %+ O B=07C 1"** + #"* &(%) *)*(*& # (%++ (%# 4 B+%)*' $ % -%# # #%3 * & # %.& # #"* %*% +" &3 %!* & $ .$ %# "*+ %# " !"* )*/ *) +.$' / + &C %&' PAGE 67 ;7 +#"*#%&+-(%# &(%# 4-#"*& #) & #+-#"%#%$ #%%# "-(#"* *+&' &!& #) & #+ &#"* & # %)(*+"0 "*'%( &!%&'+# ?&*++(%# *+ -#"*! / *&$ .$ %# "%&$*'* / *' &%+ ( )%-%+" &0 "*+*(%++,'%( &! %&'+# ?&*++(%# *+-(/ % .+)*/ *)+-B)%)C+.$' / + &%&#"*&$*%++*( $)*' # -( #"* (%++, '%( &! %&' +# ?&*++ (%# *+ #"* +* %) *)*(*& #0 # (% $* &#*'#"%##"*+# ?&*++*&*!'.*#)%#*#*(+' / *!*+%##"**4#%' &% & #+ & #"* ) ( # +.-%*0 * +)/ * #"* $)*( .+ &! % +) !" #) ' ?**& # %% " #"%& #"*&*.+*' &%)+#*%'*#%)0 M= N0 "*&#"*%*%-#"*$ .$ %# "$#% &*'/ % )%)+.$' / + &-#"* & # %)(*+"%.&'%&*4#%' &%/ *#*4$*(*++(%))* #"%& #"* ' +)% *+).# &,#"*& # $.# &-(+. " %$ .$ %# " + !&*' & (.# &! #"* " + %) (%# *+ #"* *+&' &! +* %) *)*(*& #0 "* & .( $* *4#%' &% & #+ & #"* ) ( # +.-%* + , %&' #"* %$ / * (*& # &*' % 4 (%# & +-.&' # 1 3 1 *)) &%# *0 =0=0: *) %# & "*-* B C &A&0=07=**+*& #+ #"*&*#*?*#-%))*4#*&%))%) *' -*+0 "*.*& # ()*(*& #%# &+.#++ &!, &D%# &%+1 *))%+ (%!*2$%+*' -*+0 1 */ *, #"* # *+ -*+ ) 3 * *.)+ & -*+, !% / #%# &%) -*+ *#0 %& *%+ )$* ()*(*& #*'0 %)+ &!-*+, %+ &!-+# ?&*++ %& $*&&*#*' -(% & # #% & # &#"*) ( #+.-%*B,##"* 2#")*/ *)% 4 (%# &(*+"C,#"*&*# PAGE 68 ;= %) *'+ &! -* $* &! B CO B B CC Ã† B C B=07C 1"** Ã† +#"*.& # (.)+*-.&# & () &! B CO B C %&'/ %& +"*+ *)+*1"** & #"* +.-%*0 1 */ *, #"* Ã† -.&# & %& $* *)%*' 1 #" % +(#" 3 *&*)#+*%'#"*-* / *%!*%#*# &&#"*+.-%*0 "*+ &!-*+%& $* %) *' & #*%# / *) .+ &! #"* (.#* (.+* #"* & #+ -( 1" " -*+ &**' #$* %) *' %&$**%' &-(%>)*0 * / *+"%*+-(= (%!*'%#%,1 *+& #"*+ 6* (%!*2$%+*'-*+0 = *'!* '*#*# & +*-(*'&%/ ).(*'%#%+*# .+ &!#"*=&!%2* "*BC *%# M9N # '.* % =#*& # %) >*)' B C, 1" " 1 * .+* %+ %& *4#*&%) #*& # %)-#"* ('*)0 "* -* ' +# $.# & +#"*& (.#*' %+ B CO & B C B C B=0=8C 1"** & & #)+#"*+#*&!#"-#"*-*0 "*%) *'-*&*% "/ *#*4%##"* 2 #"% 4 (%# &)*/ *) +(.#*'$ # ) &*% & #*)%# &-*/ %).%# &!A&0=07= & %#*+ %& ' &%#*+0 * +" +# %#*' (%!*2$%+*' -*+ 1" " &%#* *! &2$%+*' &-(%# &+. "%+!%' *& #+-%#"*+")'*'-.66/ 4*))%++ >%# & %& %)+$* .+*' # *)'$*##* %&' (* %.%#* +"%* * / * 0 # (% $* &#*' #"%# 1 * %& %) + &! -*+ & %'' # & 1 #" #"* (%!*2$%+*' -*+ $ )% &! PAGE 69 ;: & #+&#"*$.&'%-#"**! && #**+# &*% "+) *+-#"*=/ ).(*B, *#0C (%!*'%#%0 =0=0; +*#*&%( A.%# & "* ' ?**& # %) *A.%# & ! / *& $ A&070; + & #*!%#*' #".!" # (* $ ' +2 *# 6 &! #"* # (* '* / %# / * / * # (* +#*+ T 0 "* +#%#* #"* '&%( +.$' / + & +.-%* %# # (* GT + & #*!%#*' .+ &! +#%#*+ %# # (* %&' T 0 & () # # (* & #*!%# & (*#"' + .+*' & #"* .*& # ()*(*& #%# & 1"** ' +*#* '* / %# / *+%* %).)%#*'.+ &! Q B GT CO B GT C 7 B CG B T C T B=0=C %&' S B GT CO B GT C B T C 7T B=0=7C "* *)*(*& #%) (%++, '%( &! %&' +# ?&*++ (%# *+ %& $* %++*( $)*' # !*# #"* !)$%)(%++,'%( &!%&'+# ?&*++(%# 4-#"*+(#"+.$' / + &+.-%*('*)0 1 */ *, 1 * ' &# %++*( $)* #"*+* !)$%) +%+* (%# *+ *4) #) *Ã† *& *%+&+0 #"* # (* / % &! +# ?&*++ (%# 4, 1 * *(.#* %# *% " # (* +#*0 + &!A&070;,A&0=0=%&'A&0=0=7,#"*' +*#**A.%# &-(# & +$#% &*'%+ B7 G T G7T C B GT CO7T B GT CGB T 7 C B T CG: B C B=0==C PAGE 70 ;; with more patches same limit surface evolution(a) (b)evolution evolution subdivision at equilibrium evolution !.* =0<0 '*) +.$' / + & # &*%+* #"* '*!**+ -**'( E B%C */ ).# & #"* & # %)(*+", %&' B$C #"* *+&' &! ) ( #+.-%* */ ).# & ** / *' $ #"* .+*0 " +) &*%++#*(-*A.%# &+ ++)/ *' #*%# / *)$*# 1 **&*% "# (*+#*.+ &!#"* &5.!%#* !%' *& #(*#"'M=:,<;N0 =0=09 '*) .$' / + & "* & # %) 6*' ('*) ! 1+ '&%( %)) %' &! # #"* *A.%# & (# & BA&070;C0 "* '*!**+ -**'( #"* & # %) 6*' ('*) + *A.%) # #"* & .( $* & #) / *# *+ & #"* & # %)(*+" %+ (*& # &*' *%) *0 "*& %& *A. ) $ .( + % " */ *' -#"*('*),#"* & .( $*-& #)/ *# *+ %&$* &*%+*' $ *)% &! #"* ! &%) & # %)(*+"$ %&*1 & # %)(*+"$#% &*'#".!"&*+#*-%#( .))2 )%3 +.$' / + &0 " + &*%+*+ #"* & .( $* '*!**+ --**'( # **+*& # #"* +%(* B'*-(*'C+(#") ( #+.-%* %&' %&*1 *A. ) $ .(+ # &-#"* ('*) %&$*$#% &*'0 " +*++ +'* #*'+ "*(%# %)) & !0=0<0 '*)+.$' / + & ( !" # $* &**'*' # $#% & % / * )%) 6*' *?*# & % +(#" ) ( # +.-%*0 % PAGE 71 ;9 +"%** / *%) %# &,&*(% +#%#1 #"%/ *+ ()* & # %)('*),%&'1"*& %&% 4 (%#*+"%* +* / **',#"*'*!**+--**'(%&$* &*%+*'#$#% & %&*1*A. ) $ .(+ # &-#"*('*)1 #"%$*##*>###"*! / *&'%#%+*#0 "* *-># #* %-#"*' +*#*'%#% +$%+*'&' +#%&*$*# 1 **& #"*'%#% & #+ %&' #"* & #+ & #"* ) ( # +.-%* 1"** #"* *+&' &! + &!+ %* %##% "*'0 & #"* & #*4# (%!*2$%+*' -*+, #"* ('*) *&*! '*+ &# "%&!* $*# 1 **& +.*++ / * #*%# &+ &' %# &!%&*A. ) $ .(-#"*! / *&*+).# &,#"*'*!**+-**'(-#"*('*)%&$* &*%+*'$ #"*%$ / *2(*& # &*'*)%*(*& #+ "*(* .& # )#"* ('*)*&*! + +.Ã† *& #) +(%))%&' #"* "%&!* & ('*)*&*! $*# 1 **& +.*++ / * #*%# &+$*(*+ )*++ #"%& %*2+* >*' #)*%&*0 =0: *&*%) 6%# &-#"* % " "*+*' %% "%&$*!*&*%) 6*'-#"*% 4 (%# &!+.$' / + & + "*(*+0 1 */ *,%(*!*&*%)%% " +*+*& #*' &"%#*;-'* / &!#"* '&%( -%(*1 30 &%( %#( .))2)%3 +.$' / + & +.-%* ('*) + *-( .2 )%#*' & *# & ;07 .+ &! #" + !*&*%) %% "0 '&%( -%(*1 3 %&#"* .)%% 4 (%# &!+.$' / + &+ "*(*&%(*) ,H++.$' / + &+ "*(*, +%)+ ' +.++*' &"%#* ;0 PAGE 72 : &#"**/ .+ "%#*,%'&%( -%(*1 3"%+$**&*+*& #*'-%&% 42 (%# &!+.$' / + &+ "*(*&%(*) ,%#( .))2)%3+.$' / + &+ "*(*0 &#" + "%2 #*, % '&%( -%(*1 3 + '*/ *)*' B(' >*'C $.##*D +.$' / + & + "*(*, 1" " +%& & #*)%#+.$' / + &#* "& A.*0 +#,%$ */ */ *1 -#"*B('2 >*'C$.##*D+.$' / + &+ "*(* +*+*& #*'0 *4#, %)%)%%(*#* 6%# &#* "2 & A.*-#"*) ( #+.-%*$#% &*'/ %B(' >*'C$.##*D+.$' / + & +' +.++*'0 " +%%(*#* 6%# &+ "*(* +#"*&.+*'#'* / *#"*'&%( ('*)0 "* ()*2 (*& #%# &'*#% )+%* %)+' +.++*'0 :0 / */ *1 #"* B' >*'C .##*D .$' / + & "*(* "*$.##*D+.$' / + &+ "*(*M=8N,) 3 *(%& #"*+.$' / + &+ "*(*+.+*' & !*(*# '*+ !& ) #*%#.*I%) %# &+, +#%#+ 1 #" %& & # %) # %&!.)% (*+" 1" " +%)+3& 1&%+#"*& #)(*+"0 "*/ *# *+-#"*& #)(*+"%*3& 1& %+#"*& #) & #+0 &*% "+#*-+.$' / + &,#"* & # %)B& #)C(*+" +*>&*' #".!" #"* #%&+-(%# & *% " # %&!.)% -%* & # % %# " 1 #" -. # %&!.)%-%*+0 -#*&*+#*-*>&*(*& #, #"*&*1(*+" &#"* )*/ *)*#% &+ #"* / *# *+ *% " # %&!.)% -%* & #"* */ .+ )*/ *) %&' "*&*, & #*)%#*+ #"* (*+" & #"* */ .+ )*/ *)0 & %'' # &, */ * *'!* & *% " # %&!.)% -%* ;< PAGE 73 ; !.* :00 B%C "* & #) )!& 1 #" # %&!.)% -%*+F B$C (*+" $#% &*' %-#* &* +.$' / + & +#* .+ &! $.##*D +.$' / + & .)*+0 12 2 3 4 8 7 6 5 -w 0.5 0.5 2w 2w (a) (b) -w -w -w j+1 v jvjvjvjejvjvjvjv1 !.* :070 B%C "* & # $.# &! / *# *+ & #"* 52#" )*/ *) #"* / *#*4 & #"* 5G2 #" )*/ *) *+&' &! # #"* *'!* $*# 1 **& %&' F B$C #"* 1 * !" &! -%#+ ' ?**& # / *# *+0 PAGE 74 ; + + )# $ %'' &! % &*1 / *#*4 1"+* + # & + $#% &*' $ %& %Ã†&* ( $ &%# & #"* &* !" $ &! / *#*4 + # &+ & #"* %+* )*/ *)0 &+#%&*, #"* (*+" & !0:0B$C + $#% &*' $ +.$' / ' &! #"* & # %) (*+" +" 1& & !0:0B%C &*0 # (% $*&#*'#"%#%))#"*&*1) & #'.*'/ *# *+*+&' &!##"**'!*+ &#"* ! &%)(*+" "% / * '*!** 9,1"**%+ #"*+ # &%&' '*!** -#"* ! &%)/ *# *+ ' &# "%&!* &#"* +.$' / '*'(*+"0 &#"* ! &%)$.##*D + "*(*, #"*&*1 / *# *+*+&' &!##"**'!*+ & #"**/ .+)*/ *)%*$#% &*'.+ &!%&* !" #2 & #+#*& )%++" 1& & !0:07B%C0 +" 1" 1#" ++#*& ) +.+*',%/ *#*4#$* & #'.*'%&'#"*& # $.# &!/ *# *+ -( #"* +#*& ) %* " !") !" #*' & !0:0B%C0 "* &%(* #"* + "*(* ! &%#*' -( #"* J$.##*DK2) 3 * &>!.%# & #"* & # $.# &! / *# *+0 "* 1 * !" &! -%#+-' ?**& #& # $.# &!/ *#*4+ # &+%*+" 1& & !0:07B$C0 "*/ *#*4 &#"* G2#")*/ *)-+.$' / + &,*+&' &!##"**'!*&&*# &!/ *# *+ %&' %# )*/ *) , + $#% &*' $ O8 ;B G CG7 ' B G C ' B G G G C B:0C 1"** 8 ' , %&' '*&#*+ #"* + # &-#"* 2#" / *#*4 %# #"* 2#")*/ *)0 "* $.##*D +.$' / + & + "*(* '.*+ % +(#" +.-%* & #"* ) ( # *4*# %# #"* & #+ *+&' &! # #"* / *# *+ B/ *2 # *+1 #"'*!**&#*A.%)#9C &#"* & # %)(*+"M8N0 ))#"*/ *# *+ & #'.*' #".!"+.$' / + &"% / *'*!**9,%&'#"**-*,#"*& .( $*-*4#%' &% & #+ &#"*+(#") ( #+.-%**A.%)+#"*& .( $*-*4#%' &%/ *# *+ &#"* & # %) PAGE 75 98 w w 0.125+2w 0.125+2w -0.0625-w (a) (b) q-0.0625-w -0.0625-w -0.0625-w 0.5-w 0.5-w n-1s n-2s1s0s2s4s3s !.* :0=0 B%C "* 1 * !" &! -%#+ & # $.# &! / *#*4 + # &+ %& *'!* &&*# &!# 1 / *# *+-'*!**9FB$C#"**+&' &!%+*1"*&&*/ *#*4 +'*!** %&' #"* #"* +-'*!** 90 PAGE 76 9 (*+"0 **& #) ,#" ++ "*(*"%+$**&(' >*'$ P &*#%)0 M8N#$#% &$*##* +(#"&*++ *# *+ %# #"* *4#%' &% & #+0 " + (' >*' + "*(* + 3& 1& %+ $.##*D +.$' / + & #* "& A.*0 & P & *# %)0 M8 N, %)) #"* *'!*+ "% / * $**& %#*! 6*' & # #"** )%++*+ E B C *'!*+ &&*# &! # 1 / *# *+ '*!** 9 B% 8 & # +#*& ), %+ +" 1& & !0:0=B%C, + .+*' # $#% & #"* &*1 / *#*4 + # &+ *+&' &!##"*+**'!*+C,B C*'!*+&&*# &!%/ *#*4-'*!**9%&'%/ *#*4 '*!** O9 B#"**+&' &! +#*& ) #$#% &&*1 / *#*4 + # & ++" 1& & !0:0=B$C, 1"** ( O <; +#"* 1 * !" # %++ %#*' 1 #" #"* / *#*4 '*!** O 9, %&' OB8 7;G %) B7 *+ CG8 ; %) B: *+ CC + , O8 , %* #"* 1 * !" #+ %++ %#*' 1 #" #"* / *# *+ '*!** 9C, %&' B C *'!*+ &&*# &! # 1 / *# *+ '*!** O 90 "* )%+# %+* %& &# . *4*# & #"* & # %) (*+" %+ #"* &*1) & #'.*' / *# *+ %* '*!** 9, %&' #"* &*1 / *#*4 + # & & #" + )%+# %+* + $#% &*' $ % / *%! &! #"* + # &+ $#% &*' #".!" #"* .+* +#*& ) +" 1& & !0:0=B$C%# *% " -#"+* # 1 *4#%' &%/ *# *+0 :07 ( .)%# & &#" ++*# &,%++#*(%# -( .)%# &-#"*'&%( -%(*1 3-#"*(' 2 >*'$.##*D+.$' / + &+ "*(* +*+*& #*'0 &) 3 *#"*% 4 (%# &!+ "*(*+,#"* ) ( #+.-%* $#% &*' / % (' >*'$.##*D +.$' / + &'*+ &# "% / * %& %&%)# *4*++ &*/ *& &%*!.)%+*## &!0 "**-*,'* / %# &-%)%)%%(*#* 6%# & +. #%$)* '*/ *) &! #"* '&%( -%(*1 3 #"* ) ( #+.-%* + #"* 3 * ++.* "** 1" " +' +.++*' &*4#0 PAGE 77 97 x x x. . . !.* :0:0 "* +(#" &! *?*# #"* +.$' / + & *++ & #"* # %&!)*+ #"* & # %)(*+"0 :070 %) %%(*#* 6%# & "*+(#") ( #+.-%*'*>&*'$ #"*(' >*'$.##*D+.$' / + &#* "& A.* + -%$ #%#)!1"** %!)$%)%%(*#* 6%# & + (++ $)*0 */ *#"*)*++, #"* ) ( #+.-%* %&$*)%))%%(*#* 6*' / * #"*'(% &'*>&*' $ #"* & # %) (*+" -)) 1 &! % + ( )% %% " '*+ $*' & .&+$* *# %)0 M;=N0 "* '*% + # #% 3 %& %$ #% & # & #"* & # %) (*+" %++ #"* (*+"*+ $#% &*' / % #"* +.$' / + & *++ B+** !0:0: %&' !0:0;C, + #"%# % *+&'*&* %& $* *+#%$) +"*'$*# 1 **& #"* & #$* &!#% 3 *' &#"* & # %)(*+"%&' #+ (%!*& #"* ) ( #+.-%*0 "*(' >*'$.##*D+.$' / + &+ "*(*+#%#+1 #"%& & # %)(*+"&+ +# &! -%+*#-# %&!.)%-%*+0 "**.+ / *%) %# &-#"*+.$' / + &.)*++(#"*+ .#*% "# %&!.)%-%*,%&' &#"*) ( #,%+(#"+.-%* +$#% &*'1" "%&%)+ $* &+ '**' %+ % ))*# & +(#" # %&!.)%%# "*+0 "* +.$' / + & *++ %&' #"* # %&!.)% '*(+ # & #"* ) ( #+.-%* + '* #*' & !0:0:0 #* #"%#, #"* ) ( #+.-%* %& $* **+*& #*' $ #"* +%(* & .( $* +(#"# %&!.)% %# "*+%+#"%#-#"*# %&!.)%-%*+ &#"* & # %)(*+"0 "**-*,#"*) ( #+.-%* PAGE 78 9= %& $* *4*++*' %+ O B:07C 1"** + #"* & .( $* # %&!.)% -%*+ & #"* & # %) (*+" %&' + #"* +(#" # %&!.)%%# " &#"*) ( #+.-%* *+&' &!##"* 2#"# %&!.)%-%* & #"* & # %)(*+"0 "*+#%!* +& 1+*#-'*+ $ &!#"*%%(*#* 6%# &-#"*) ( #+.-%* / * #"* & # %) (*+"0 "* *++ + $*+# *4)% &*' #".!" #"* -)) 1 &! *4%()*0 + ()* )%&% (*+" +" 1& & !0:0;B%C + "+*& %+ #"* & # %) (*+"0 & %$ #% & # &+ '* #"* # %&!.)% -%* !#% + #% 3 *' / * #"* (*+"*+ $#% &*' #".!" +.$' / + &0 "* / *# *+ & #"* & # %) (*+" %* '%3) +"%'*' & !0:0;0 -#* &* +#* +.$' / + &,#"* & # %)(*+" +*>&*' $ %'' # &&*1 / *# *+ 1" " %* ) !" #) +"%'*'0 &#"* +.$' / + & +#* & #" + *>&*' (*+" )*%'+ # % >&* (*+" 1 #" & #'.# & &*1 / *# *+ 1" " %* .&+"%'*'0 # (% $* &#*' #"%# !#% 0 *4%()*,#"* / *#*4 , & #'.*' %-#* >+# +.$' / + & +#*, %& $* $#% &*' .+ &! #"* 8 & # +#*& ) +" 1& & !0:0=B%C& #"* *'!* !# 0 ))#"*& # $.# &!/ *# *+ &#"* & # %)(*+"%*1 #" &#"*2&* !" $"'-#"* / *# *+ %&' 0 8 & # +#*& ) %& $* .+*' %!% & & #"* &*4# +.$' / + & +#* &#"**'!* # #$#% &#"*/ *#*4 0 (*-#"*& # $.# &!/ *# *+%##" +)*/ *) +.$' / + &,-*4%()*, #"* B) !" #)+"%'*'C 2&* !" $+ -#"* / *#*4 B*4*# PAGE 79 9: a b c x d e f a b c x f e c a h ixd g b !.* :0;0 % 3 &! % & # #".!" / % .+ )*/ *)+ +.$' / + & E B%C & # %) (*+",B$C#"*+*)*#*'+*# &B*&)+*'$ '##*') &*+C-#"*(*+" &B%C,%-#*&* +.$' / + &+#*,BC#"*+*)*#*'+*# &-#"*(*+" &B$C,%-#*%&#"*+.$' / + & +#*0 PAGE 80 9; %&' C & !0:0;B$C,'**&' &+(*/ *# *+ &#"* & # %)(*+"1" "%*1 #" & #"* 72&* !" $"'-#"* / *# *+ %&' &#"* & # %)(*+"0 & #"* *+# -#"* -( .)%# &,+.*+ #+ %* .+*' # &' %#*#"* +.$' / + & )*/ *)0 *4%()*, '*&#*+ #"* ))*# & / *# *+ %# )*/ *) 1" " & #) #"* +(#" %# " & #"* ) ( # +.-%* *+&' &! # #"* # %&!.)% -%* ' %# #"* 2#")*/ *)-+.$' / + &0 *# $*#"*))*# &-/ *# *+ &#"* & # %)(*+" 1" " %* 1 #" & #"* 72&* !" $"' #"* / *# *+ %&' B(%3 *' $)% 3 & !0:0;B%CC0 *##"*& .( $*-+. "/ *# *+$* , 0 "*&,#"*/ *# ,1" " +#"* &%#*&%# &-#"*B C+ # &+-%))#"* , / *# *+, +-' (*&+ &= , 0 "*+* , / *# *+ & #) #"* +(#" # %&!.)% %# " & #"* ) ( #+.-%* *+&' &! # #"*# %&!.)%-%* !#% &#"* & # %)(*+"0 1,#"***4 +#+-.+.$' / + &(%# *+ B C , B C ,B C %&'B C -' (*&+ &B= , = , C+. " #"%# O B C O B C O B C O B C B:0=C 1"**#"*+.$+ #+ , " , , %&' '*&#*#,)*-#, !" #%&'( '')*# %&!)*+ # &+ *+*# / *) B &' %# &!#"* *)%# / * + # & #"* # %&!)* 1 #" *+*# # #"* # %&!)*C, %&' %&' %* #"* &%#*&%# & #"* B C + # &+ #"* / *# *+ & #"* 72&* !" $"'#"* *+&' &! # %&!)* & #"* PAGE 81 99 &*1) $#% &*' +.$' / '*' (*+"0 "* &*1 / *# *+ & #" + )*/ *) +.$' / + & %* ) !" #)+"%'*' & !0:0;B$C0 "*72&* !" $"'&>!.%# &-#"*/ *# *+ &#"* &*1) $#% &*' # %&!)*+ + *4%#) #"* +%(* %+ #"%# #"* ! &%) # %&!)*, "*&* )%) +.$' / + & (%# *+ %* +A.%* %&' #"* / *# ' (*&+ &+ & $#" + '*+ A&0:0= %*#"* +%(*0 " +&*# +-.#"* )).+#%#*' & !0:090 % &! .# &* (* )*/ *) +.$' / + &, % &*1 +*# / *# *+ 1" " %* .&+"%'*' & !0:0;BC %* $#% &*' %)&! 1 #" #"* )' / *# *+0 '# &! % + ( )% %% " %+ &#"* '* / %# &-A&0:0=, #%& $* +" 1& #"%# OB C O B C O B C O B C B:0:C "**)%# / *+ # &-#"*# %&!.)%-%* . & !0:0;BC1 #"*+*# ##"* # %&!.)%-%* #/ +#)! %))#"*+%(*%+-#"*# %&!.)%-%* ! & !0:0;B$C 1 #" *+*# # #"* # %&!.)% -%* !#% 0 "**-*, &* %& 1 #* B C O B C 0 + &! + ( )%*%+& &!,A&0:0: %& $* *1 ##*& %+ O B C OB C O B C OB C O B C OB C PAGE 82 9 PAGE 83 9vadf 1v0 abcAabc( )t a b c a b c e f dAabc( )mv0 abc a b c a b c e f dvdef 1 !.*:090 ?**& #+*#-& #) & #+%#%+.$' / '*')*/ *)$#% &*'$ %) &! ' ?**& # +.$' / + & (%# *+& %! / *& +*# -& #) & #+ &% %+* (*+"0 PAGE 84 9 O B C OB C B:0;C ( $ & &!A&0:0= %&' A&0:0;, #%& $*+" 1& #"%# O B C B C O B C B C O B C B C O B C B C B:09C *# $* % & # 1 #" $%*& # ' &%#*+ B C &+ '* #"* # %&2 !.)% -%* !#% 0 "*& #"* & # %) (*+" + +.$' / '*', $*(*+ % & # &+ '* #"* # %&!.)% -%* #/ 1 #" $%*& # ' &%#*+ B C0 &#"* )*/ *) +.$' / + &%.+*+ #$* &).'*' &#"*# %&!.)%-%* . 1 #"$%*& # 2 ' &%#*+ B C0 *# '*&#* #"* 52#" )*/ *) % 4 (%# & #"* +(#" # %&!.)% %#" & #"* ) ( #+.-%* *+&' &! # #"* # %&!.)%-%* !#% & #"* & # %)(*+"0 1 %& $* 1 ##*&%+ OM ! # % ! # % ! # % N 1"**#"*+.$+ #+ , %&' &' %#*#"*4,%&'6' &%#*+*+*# / *)-#"* *+&' &! / *#*4 + # &0 "* *4*++ &+ %&' %& %)+$* 1 ##*& PAGE 85 <8 &% + ( )%(%&&*0 *4#, #"* (%# 4 %& $* &+#.#*' %+ -)) 1+E B C O 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 "*(%# *+ %&' %&%)+$*&+#.#*' &%+ ( )%-%+" &0 1 B C, B C, %&' B C %& $* 1 ##*& %+ B C O B C , B C O B C O B CB C , B C O B C O B CB C O B CB C B C 0 B:0 PAGE 86 < #"**/ .+)*/ *)C,B COB C B C B C %&' B CO B CB C0 # (% $* &#*' #"%# #"* +*A.*&* %) &!B C , B C , B C %&' B C '**&'+ & #"* # %&!)* &+ '* 1" " #"* #% 3 *' & # -%))+%-#**% " +.$' / + & +#*0 &%)) ,#"* )%)%%(*#* 6%# &*++ %& $* ()*#*' $ 1 # &! B COB) ( B CC O B C B:0C & #"* %$ / * *A.%# &, + #"* ))*# & $%+ + -.&# &+ %# #"* / *# *+ 0 # (% %)+ $* &#*' #"%# #"* (' >*' $.##*D +.$' / + & + "*(* + % +#%2 # &% +.$' / + & *++, %&' "*&* &*1 / *#*4 + # &+ %* $#% &*' $ %Ã†&* ( $ &%# &+ &*%$ / *# *+0 " + !.%%& #**+ #"%# *% " 1 #"* (%# *+ B C B C B C %&'B C +.(+#&*0 "*)%!*+#* !*& / %).*-+. "(%2 # *+ + %&' #"**-* #"* ) ( # & A&0:0 *4 +#+0 1, %++.( &! #"* # %&!.)% -%* !#% + #"* 2#"-%* &#"* & # %)(*+", A&0:0 %& $* *1 ##*& %+ B CO B C O B C B:08C 1"** + #"* &%#*&%# & #"* B4, ,6C + # &+ %)) #"* / *# *+ & #"* & # %) (*+"%&'#"*(%# 4 ,1"*&+#2( .)# ) *'$ ,+*)*#+#"*/ *# *+ & #)) &! #"* 32#" +(#" # %&!.)% %# " & #"* ) ( # +.-%*0 #"** %* / *# *+ & #"* & # %)(*+"%&' , -#"*(& #)#"* 2#"%# ",#"*& +%/ *#-' (*&+ &= , +% (%# 4-' (*&+ &B= , = C,%&' B C +%(%# 4-' (*&+ &B= = , C0 PAGE 87 <7 ( $ & &!A&0:07 %&' A&0:08, #%&$* +" 1& #"%# B COB B C C O B C B:0C 1"** , % (%# 4 ' (*&+ & B= = C, + #"* ))*# & $%+ + -.&# &+ #"* *+&' &!/ *# *+ &#"* & # %)(*+"0 "*/ *# +%)+3& 1&%+#"*'*!**+ -**'(/ *# #"* +(#") ( #+.-%* 0 :0707 &%( + & *4*++ & #"* ) ( # +.-%* $#% &*' / % (' >*' $.##*D +.$' / + & *++ +'* / *' &#"*)%+#+*# &0 1%'&%( -%(*1 3-#"*) ( #+.-%* %&$*'* / *'.+ &!#" +*4*++ &0 "*'* / %# &-#"*'&%( ('*)-(#" + & # + *4%#) + ( )% & + # %+ #"%# #"* '&%( %#( .))2)%3 +.$' / + & ('*) *+*& #*' & *# & =070:0 "* / *#*4 + # &+ & #"* & # %) (*+" '*>& &! #"* +(#" ) ( # +.-%* %* #*%#*' %+ % -.&# & # (* & '* # *( $*' #"* (' >*' $.##*D +.$' / + & ('*) & % '&%( -%(*1 30 "* / *) # #" + +.-%* ('*)%& $**4*++*' %+ S B CO B C S B:07C 1"** %& / *+#. 3 '# '*&#*+ %# (*'* / %# / *%&' , $* &! #"* '(% & '*>&*'$ #"* & # %)(*+"0 + &#"*%+*-#"*'&%( %#( .))2)%3+.$' / + & +.-%*+, #"*%!%&! %&*A.%# &-(# &BA&070C +.+*' #'* / *#"*'&%( (' >*'$.##*D +.$' / + &+.-%* ('*)0 PAGE 88 <= *# $* #"* (%++ '*&+ # -.&# & #"* +.-%*0 "*& #"* 3 &*# *&*! #"* +.-%* + O 7 B C S B C S B C O 7 S S B:0=C 1"** B.+ &! A&0:07C O B C B C B C + #"* (%++ (%# 4 ' (*&2 + & B= = C0 ( )%) , )*# $* #"* '%( &! '*&+ # -.&# & #"* +.-%*0 "* ' ++ %# &*&*! + O 7 B C S B C S B C O 7 S S B:0:C 1"** O B C B C B C +#"* '%( &!(%# 4-' (*&+ &B= = C0 "* #*& # %)*&*! -#"* +(#" ) ( #+.-%* %& $* *4*++*' %+ O 7 B:0;C 1"** + #"* +# ?&*++ (%# 4 ' (*&+ & B= = C $#% &*' $ %++ !& &! / % .+ & #*&%) *&*! *+ # % ' +*# 6*' % 4 (%# & #"* ) ( # +.-%* %&' + '*#% )*' &*# & :0=0 + &!#"**4*++ &+-#"*3 &*# ,' ++ %# &%&'#*& # %)*&*! &A&070, #"*+%(*(# &*A.%# &%+ &A&070;%&$*$#% &*'0 "*!*&*%) 6*'-*/ *# PAGE 89 <: %& $* $#% &*' +%+ ( )%-%+" & '*+ $*' &*# & =070:%&' + ! / *&$ O B C B C B:09C :070= .)# )*/ *)&%( + "* & # %) (*+" #"* '&%( (' >*' $.##*D +.$' / + & +.-%* ('*) %& $* +.$' / '*' # &*%+* #"* '*!**+ -**'( ('*) **+*& #%# &0 "* + #.%# & +*4%#)+ ( )%##"%#-#"*'&%( %#( .))2)%3+.$' / + &+.-%* ('*) %+ '*+ $*' & *# & =070; %&' % + ( )% *4%()* + .+*' )).+#%# &0 -#*&*+#*-(' >*'$.##*D+.$' / + &,#"* & # %)'*!**+--**'( B*-* # A&0:0 %&' A&0:07C & #"* '&%( ++#*( + *)%*' $ % )%!* & .( $* '*!**+--**'( ,1"** O 0 +%!)$%)+.$' / + &(%# 4-+ 6*B= = C 1"+* *& # *+%*.& A.*) '*#*( &*' $ #"*1 * !" #+ .+*' &#"* (' >*'$.##*D +.$' / + &+ "*(*B+***# &:0-#"*1 * !" #+C0 " .+, ,*4*++*'%+%-.&# & ,%& $* 1 ##*&%+ OB C O B:0 PAGE 90 <; (a) (b) !.*:0<0 B%C& & # %)(*+",%&'B$C#"**+&' &!) ( #+.-%*0 "*'(% &+ #"* +"%'*' *)*(*& #+ & #"* ) ( #+.-%* %* #"* *+&' &! # %&!.)%-%*+ & #"* & # %) (*+"0 "* *& )*' / *# *+ & B%C %* #"* '*!**+ -**'( #"* *+&' &! *)*(*& #0 *+*# / *) 0 "* (# & *A.%# &, *4) #) *4*++*' %+ % -.&# & , %& $* 1 ##*& %+ Q G S G O B:078C 1"** O B CB C B C B C , $* &! #"* '(% & '*>&*' $ #"* &*1) $#% &*'+.$' / '*'(*+"0 "* '* / %# &+, %&' %* + ( )%0 PAGE 91 <9 :0= & #*)*(*& # ()*(*& #%# & &#"**/ .++*# &,#"*+(#") ( #+.-%*$#% &*'/ %(' >*'$.##*D +.$' / + & *++ + *4*++*' %+ % -.&# & #"* & #) / *#*4 + # &+ & #+ & # %)(*+"F (%++%&''%( &!' +# $.# &, & #*&%)'*-(%# &*&*! %&'-*+ %*%++ !&*'##"*) ( #+.-%* &'*#'*/ *)#"**+&' &!" + %)('*)0 &#" ++*# &,#"* ()*(*& #%# &-#" +" + %)('*) +'*#% )*'0 #(% $*&#*' #"%# */ *& #".!" #"* -( .)%# & #"* '&%( -%(*1 3 (' >*' $.##*D +.$' / + & + "*(* + + ( )%# #"%# %#( .))2)%3 +.$' / + & + "*(* &* #"* )%)%%(*#* 6%# & +'* / *',#"*>& #**)*(*& # ()*(*& #%# & +##%))' ?**& # %+ #"* ) ( # +.-%* '*+ &# "% / * %& %&%)# *4*++ & & %+* #"* (' >*' $.##*D +.$' / + & + "*(*0 &*# &:07 #1 %+ & #*'.##"%##"*+(#") ( #+.-%*$#% &*'$ #"* *.+ / *%) %# &-#"*(' >*'$.##*D+.$' / + &.)*+%&$***+*& #*'$ % +*# +(#" # %&!.)%%# "*+,*% " 1" " + **+*& #*' $ % >& #* *)*(*& #0 "* +"%* B$%+ +C -.&# & #" + >& #* *)*(*& # + $#% &*' $ +(#" &! % "%# -.&# & #".!" **%#*' %) %# & #"* (' >*' $.##*D +.$' / + & .)*+0 "* & .( $* >& #* *)*(*& #+ & #"* +(#" ) ( # +.-%* + *A.%) # #"* & .( $* # %&!.)% -%*+ & #"* & # %) (*+" %+ (*& # &*' *%) * B*-* !0:0: %&' :0 PAGE 92 << .+ &! >& #* *)*(*& # %&%)+ + #* "& A.*+ M:7 N0 "* +%(* *4%()* %+ & *# & :07 B*-* !0:0;C +.+*'#'*/ *)#"**)%#*'&*#+0 "*&*#-*)*(*& #+%)&! 1 #" #"* & #) / *# *+ %&' #"* *+&' &! '(% &+ + -.#"* )).+#%#*' & !0:0<0 1 # 1 )) $* +" 1& " 1 # '* / * #"* (%++, '%( &! %&' +# ?&*++ (%# *+ #"* *)*(*& # *+&' &! # #"* # %&!.)%-%* !#% & !0:0;0 "* '* / %# &+ ")'%& *)*(*& # &!*&*%)0 :0=0 )*(*& #%)%++ %&' %( &!(%# *+ "* (%++ (%# 4-#"* *)*(*& #! / *& $ BA&0:0C %& $* 1 ##*&%+ O B C B C B C B:07C 1 */ *, -( A&0:0 # + 3& 1& #"%# #"* $%+ + -.&# &+ *+&' &! # #"* / *# *+ & 1" "%*+#*'%+*& # *+ & %*$#% &*'%+%) ( # &!*++0 "*+* $%+ + -.&# &+ ' &# "% / * %& %&%)# -(, "*&* (.# &! #"* &&* '.# +. " $%+ + -.&# &+ %+ &**'*' & A&0:07 + % "%))*&! &! $)*(0 & .&+$* *# %)0 M;= N, %& .#) &* + / '*' & #"* (.#%# & #"*+* &&* '.#+ 1 #".# *-( &! %& & #*!%# &0 & #" + ' ++*#%# &, % ' ?**& # *# + ()*%% " +'*/ *)*'#+)/ *#" +$)*(0 "*+(#"# %&!.)%%# " & #"*) ( #+.-%**+&' &!##"*-%* !#% &#"* & # %)(*+" +% 4 (%#*'$ % # %&!.)% (*+" 1 #" : -%*+ $#% &*' %-#* )*/ *)+ +.$' / + & #"* ! &%) # %&!.)%-%* !#% B*% " +.$' / + &+#* +) #+&* # %&!.)%-%* & #:# %&!.)% PAGE 93 < -%*+C0 "*& #"* (%++ (%# 4%& $* *4*++*' %+ O B C B C B C B:077C "* 2#" )*/ *) % 4 (%# & #"* *+&' &! $%+ + -.&# &+ %& $* *4) #) */ %).%#*' B*-* A&0:0 %& *4*++ & C0 & (#%& # & # # &#* + #"%#A&0:0 & / )/ *++*/ *%)(%# 4( .)# ) %# &+%&'"*&*%&$*/ **4*&+ / * # */ %).%#*0 1 */ *, #"* (%# 4 B CBO B C B C B C C & A&0:0 *&'*+ " 1 / *# *+ &#"* 72&* !" $"'#"* # %&!.)%-%* ' %# )*/ *) %* *)%#*' # #"* / *# *+ & #"* 72&* !" $"'#"* # %&!.)%-%* !#% & #"* & # %) (*+"0 & #"* ()*(*& #%# &, " 1 % &*1 / *#*4 + $#% &*' -( #"* & # $.# &! / *# *+ & #+ ((*' %#**'**++)*/ *) +#% 3 *'0 "* &-(%# &+#*' &B C %&$*$#% &*'$ #% 3 &!#"*& # $.# &+-()*/ *) #)*/ *)8*.+ / *) 0 " .+ #"**& # *+-B C%&$*'*#*( &*'1 #".#-( &!%& )%)+.$' / + &(%# *+ %&' #"**$ % / ' &!+.$+*A.*& # (%# 4( .)# ) %# &+0 "+ &! % +.Ã† *& #) " !" / %).* , % *%+&%$) !' % 4 (%# & #"* *)*(*& #%) (%++ (%# *+ + % " */ *'0 "* (.#%# &+ & / )/ *' & */ %).%# &! #"* & #*!%)+ &A&0:077%**) ( &%#*'$ .+ &!' +*#*(%++'*&+ # -.&# &1" " "%+ &&26* / %).*+ &) %# #"* / *#*4 + # &+ #"* 2#" +.$' / + & )*/ *) (*+"0 "**-*, #"* % 4 (%# &-#"* (%++(%# 4-#"* *)*(*& # %& $*1 ##*& %+ O B C B C B C B:07=C PAGE 94 < 1"** +#"*& .( $*-/ *# *+ &#"*# %&!.)%(*+"1 #": -%*+0 " +% 4 2 (%# &"%+$**&-.&'#$*/ **?*# / *%&'*Ã† *& #()*(*& #%# &.+*+0 "* *)*(*& #%)'%( &!(%# 4%& $* $#% &*' &%+ ( )%-%+" &0 :0=07 )*(*& #%)# ?&*++ %# 4 "* & #*&%) *&*! + %++ !&*' # *% " *)*(*& # & #"* ) ( # +.-%*, #"**$ '*>& &! #"* & #*&%) *&*! #"* +(#" +.$' / + & +.-%* ('*)0 + ( )% %% " %+ & #"* '* / %# & #"* *)*(*& #%) (%++ %&' '%( &! (%# 4 + #%3 *& %&' #"* & #*&%)*&*! + %++ !&*' #% 2#")*/ *) % 4 (%# &-#"* *)*(*& #0 "** # *+ & #*&%) *&*! %* .+*' R #*&+ &, +# ?&*++ %&' + &! *&*! 0 #"**4%()*+.+*'#".!".##"*%*,#" +*&*!%##"* 2#")*/ *)-% 42 (%# &%& $* 1 ##*&%+ OB C GB C GB C B:07:C 1"** #"* +.$+ #+ , %&' '*&#* #*&+ &, +# ?&*++ %&' + &!*+*# / *) 0 "**4*++ &-#"*#*&+ &*&*! ,1" " +*++*& # %))*A. / %)*& ###"*>+# '* +#% & B(*( $%&*C*&*! M9 N, + B C O 7 O 7 B C B:07;C 1"** + % &+#%& #, %&' , #"* " 2#" %&' 2#" / *#*4 & #"* 2#" )*/ *) (*+", %* & #"* 2&* !" $"' *% " #"*, U + #"* '(% & '*>&*' $ %))+. " / *#*4 PAGE 95 8 % +, %&' + #"* &%#*&%# & #"* B4, ,6C + # &+ %)) #"* / *# *+ & #"* 2#" +.$' / + &)*/ *)#"* # %&!.)%-%* !#% &#"* & # %)(*+"0 ( )%) , #"* *4*++ & +# ?&*++ *&*! , 1" " + *A. / %)*& # # #"* +*&' '* +#% & B#" &)%#*C*&*! M9N, %& $*1 ##*& %+ B C O 7 7 G O 7 B C B:079C 1"** , %&' %* #"* #"** / *# *+ % # %&!.)%-%*0 "* +.((%# & &2 / )/ *+#"**#*(+*+&' &!#*% "# %&!.)%-%*,%&' + / *%))#"*# %&!.)% -%*+ &#"* (*+" %# #"* 2#")*/ *)-+.$' / + &0 &%)) ,%+ &!*&*! #*( + %''*' 1" " +! / *& $ B C O 7 B C B 0 C B C O 7 B C B:07 PAGE 96 ( $ & &! #"* *4*++ &+ #*&+ &, +# ?&*++ %&' + &! *&*! , # %& $* +" 1& #"%# O 7 B C G B C GB C O 7 B C O 7 B C B CB C O 7 B C B CB C B:07C 1"** B C %&' %* +%(* %+ & A&0:00 "**-*, #"* *4*++ & #"* *)*(*& #%)+# ?&*++ (%# 4 +! / *& $ OB C B CB C B:07C #(% $*&#*'#"%##"*(%# 4( .)# ) %# &+-&+#.# &! %*% / '*' & #"* ()*(*& #%# &$ -)) 1 &!#"* +%(* #* "& A.* '*+ $*' & *# &:0=00 :0=0= #"*()*(*& #%# &++.*+ "* #* "& A.*+ %) &! +& #"*+ 6*' -*+ & #"* +(#" ) ( # +.-%* $2 #% &*' / % (' >*' $.##*D +.$' / + & *++ %* + ( )% # #"+* '*+ $*' & *# & =0=0: & #"* & #*4# '&%( %#( .))2)%3 +.$' / + & +.-%* ('*)0 "* #* "& A.*+ ('*) +.$' / + & %&' ' +*#* '&%( *A.%# & '* / %# & %* %)+#"* +%(*0 PAGE 97 7 :0: *&*%) 6%# &-#"* % " "*+*'%% "-'* / &!#"*'&%( -%(*1 3-(' >*'$.##*2 D +.$' / + & + "*(* + !*&*%) 6*' #"* & #*)%# +.$' / + & + "*(*+ & #"* &*4# "%#*, "%#* ;0 PAGE 98 ; &%( -%(*1 3 +* > +.$' / + & + "*(*+ 1 %+ *+*& #*' & #"* )%+# # 1 "%#*+0 & "%#* =, %#( .))2)%3 +.$' / + & + "*(*, % **+*& #%# / * #"*% 4 (%# &!+.$' / + &+ "*(*+, +*( $*''*' &%" + +2$%+*'('*) &!*&2 / &(*& #0 &"%#*:,%'&%( -%(*1 3 + / '*'-#"*(' >*'$.##*D +.$' / + & + "*(*, % .)% & #*)%# +.$' / + & #* "& A.*0 & #" + "%#*, % .& >*' %% " + *+*& #*' *( $*'' &!%& +.$' / + & + "*(* &% '&%( -%(*1 30 ;0 / */ *1 #"* & >*'% " "* 3 * &*# #"* .& >*' %% " + #"* %$ ) # # *4*++ #"* +(#" ) ( # +.-%* !*&*%#*' $ % +.$' / + & + "*(* %+ % ))*# & % + &!)* # * >& #* *)*(*& #+0 "* # * #" + >& #* *)*(*& # '**&'+ & #"* +.$' / + & + "*(* & / )/ *'0 *4%()*,#"*) ( #+.-%*!*&*%#*'$ #"*%#( .))2)%3+.$' / + & + "*(* %& $* *4*++*' %+ % ))*# & % A.%' )%#*%)>& #* *)*(*& # %# "*+0 " + %% " ' ?*+ -( #"* &* #%3 *& & "%#* = 1"** #"* ) ( # +.-%* 1 %+ % ))*# & &(%) *)*(*& #+ B*+&' &! # #"*A.%' )%#*%) $ .$ 2+) &* %# "*+ % 1 % -(#"**4#%' &% & #+C%&'+* %)*)*(*& #+ B*+&' &!# = PAGE 99 : #"* &2+ '*' %# "*+ &*% *4#%' &% / *# *+ '*!** &C0 " + &*# 1 )) $* -.#"* *)%$%#*' & #"* &*4# -*1 +*# &+0 "* .& >*' %% " %'#+ # 1 ' ?**& # +#%#*! *+'**&' &! & #"* +.$' / 2 + & + "*(* & / )/ *'0 &* +#%#*! + #"* % 4 (%# &! + "*(*+, 1"+* ) ( # +.-%* + +(* # * 2+) &* +.-%* % 1 % -( #"* *4#%' &% & #+, %&' #"* #"* + #"* & #*)%# +.$' / + & + "*(*+, 1"** #"* ) ( # +.-%* '*+ &# "% / * %& %&%)# %) *4*++ &0 # (% $* *%))*' #"%#*.+ / * +.$' / + & + % (*#"' +(#" &! )"*'%, %&' "*&* *+&' &! # *% " 2+ '*' -%* & #"* & #) (*+", #"** 1 .)' $* % +(#" 2+ '*' %# " & #"* ) ( # +.-%* & !*&*%)0 *4%()*, #"* & #) (*+" B%-#* %# (+# &* +.$' / + & +#*C #"* %#( .))2)%3 +.$' / + & + "*(* &+ +#+ A.%' )%#*%) -%*+, 1" " 1"*& +(#"*' #".!" +.$' / + & )*%'# A.%' )%#*%)%# "*+ & #"* ) ( #+.-%* B+** !0;0B$CC0 & #"* %+* % 4 (%# &! +.$' / + & + "*(*+, #"* -%*+ 1" " ' &#& #% &%& *4#%' &%/ *#*4)*%'#+) &*%# "*+1 #"%&%)# *4*++ &+0 &#"*#"*"%&',-%*+1" ""% / *&**4#%' &%/ *#*4,)*%'#%#"*+1"+* %&%)# *4*++ &+ %* ' Ã†.)# # '*#*( &*0 & # & . &! #"* *4%()* 1 #" #"* %#( .))2)%3 +.$' / + & + "*(*, #"* -%*+ 1 #".# *4#%' &% / *# *+ )*%' # A.%' )%#*%)$ .$ 2+) &*%# "*+ &#"*) ( #,1"**%+#"*-%*+1 #"&**4#%2 ' &% / *#*4 )*%' # A.%' )%#*%) %# "*+ 1"+* %&%)# *4*++ &+ %* ' Ã†.)# # $#% &0 & "%#* =, +. " %'5%*& # %# "*+ *+&' &! #%& *4#%' &% / *#*4-'*!** %**?*# / *)( $ &*'#!*#"*#$#% &%&*4*++ &-#"**2 +.)# &! 2+ '*'%# "B+** !0;0B%CC0 **& #) ,#%(M8,N"%+ & #'.*'+ "*(*+ PAGE 100 ; *4%#) */ %).%# &! #"* ) ( # +.-%*, */ *& &*% #"* *4#%' &% & #+, %2 4 (%# &!+.$' / + &+ "*(*+0 &%)# *4*++ &+-#"*%# "*+*+.)# &!-( +(#" &! -%*+ 1 #" %& *4#%' &% / *#*4 %& $* $#% &*' .+ &! #"*+* + "*(*+0 "**-*, #"* ) ( # +.-%* %& $* *4*++*' %+ % ))*# & % + &!)* %# " # *, %&' &+*A.*& #) % + &!)*# * ->& #**)*(*& #%& $* .+*' # / '* #"* '&%( -%(*1 3 #"* % 4 (%# &! +.$' / + & + "*(*+0 " + .& >*' -%(*1 3 % 4 (%# &! +.$' / + & + "*(*+ + -.)) 1 3 *' .# & #" + "%#* %#( .))2 )%3 %&' +.$' / + & + "*(*+ %&' % !*&*%) .#) &* + %)+ *+*& #*' & " 1 # % .##"* +%(* +#%#*! -#"*% 4 (%# &!+.$' / + &+ "*(*+0 "* ) ( # +.-%* *+.)# &! -( %& & #*)%# +.$' / + & + "*(* '*+ &# "% / *%&%&%)# *4*++ & &!*&*%),%&'"*&*%+#%#*!+ ( )%##"*&*%'#*' &"%#*:&**'+#$*.+*'0 &.#) &*-#"*+#%#*!#$*.+*'& #*)%# +.$' / + &+ "*(*+ +%)+*+*& #*' & #" + "%#*0 ;07 & >*' &%( %(*1 3-%#( .))2)%3.$' / + &.-%*+ ++#*(%# -( .)%# & %)&! 1 #" #"* ()*(*& #%# & '*#% )+ #"* .& >*' '&%( -%(*1 3 %#( .))2)%3 +.$' / + & +.-%*+ + *+*& #*' & #" + +*2 # &0 "*3 * ' ?**&*$*# 1 **& #"*-%(*1 3'*/ *)*' &"%#* =%&'#"*&* *+*& #*'"** +#"***+*& #%# &-#"*) ( #+.-%*,1" ")*%'+#' ?**& ## *+ ->& #**)*(*& #+.+*'-'*/ *) &!#"*'&%( -%(*1 30 " + + )).+#%#*'1 #" % + "*(%# ' %!%( & !0;00 PAGE 101 9 n n n nn n n n n n n n n n n n n n n n n n n n n n n n n n s s s s s s n n n n n n n n n n n n n n n s s s s s e e e e e e e ee e e e e e e e e e e e !.* ;00 & #) (*+" 1 #" %& *4#%' &% / *#*4 '*!** ; %&' #"* *2 +&' &! ) ( # +.-%* E B%C .+ &! #"* &*#+ '*/ *)*' & "%#* =, 1"** #"* ) ( #+.-%* &+ +#+ A.%' )%#*%)&(%)*)*(*& #+ %&' % *& #%!&%) +* %) *)*2 (*& #FB$C.+ &!#"*.& >*'&*#'*/ *)*' &#" + "%#*,1"**#"*) ( #+.-%* &+ +#+ -&* + &!)*# * -A.%' )%#*%)>& #**)*(*& #0 PAGE 102 < (a) (b) !.* ;070 & %#( .))2)%3 +.$' / + &, *% " &&2$.&'% A.%' )%#*%) -%* & #"* & #) (*+" "%+ % *+&' &! A.%' )%#*%) %# " & #"* ) ( # +.-%* E B%C & #)(*+", B$C ) ( #+.-%*0 )) 1 &!#"* &*#+ '*/ *)*' & "%#* =, #"* ) ( #+.-%* #"* & #) (*+"+" 1& & !0;0,&+ +#+-A.%' )%#*%)$ .$ 2+) &*%# "*+*+&'2 &! # #"* -%*+ (%3 *' H&H B-%*+ 1 #" & *4#%' &% & #+C, %&' % *& #%!&%) %# " *+&' &! # #"* -%*+ (%3 *' H+H B-%*+ "% / &! &* *4#%' &% / *#*4 '*!** ;C B !0;0B%CC0 1 */ *, & #" + +*# &, # 1 )) $* +" 1& #"%# #"**& # * ) ( #+.-%*%&$**4*++*'%+%))*# &-A.%' )%#*%)%# "*+%+ )).+#%#*' & !0;0B$C.+ &!#"*+ "*(*++*'$ #%(M8N0 *4#,#"*)%)%%(*#* 6%# & #"* ) ( #+.-%* +'*+ $*' &'* #'*/ *) #"* .& >*''&%( -%(*1 30 PAGE 103 ;070 %) %%(*#* 6%# & + (*& # &*' *%) *, #"* & #)(*+" B%-#* %# (+#&* +.$' / + &+#*C #"* %#( .))2)%3 +.$' / + & + "*(* &+ +#+ A.%' )%#*%) -%*+ 1" " )*%' # A.%' )%#*%) %# "*+ & #"* ) ( # +.-%*0 #"* +%3 * + () # , # + %++.(*' #"%# *% " -%* "%+ %# (+# &* *4#%' &% / *#*40 #" + %++.(# & + / )%#*', #"*& &* (* +.$' / + & +#* &**'+ # $* *-(*' & #"* .*& # & #) (*+" &'*#$#% &%&*1& #)(*+"&1" "#"*-)) 1 &!%&%)+ +%&$*% *' .#0 "*& .( $*-A.%' )%#*%)%# "*+ &#"*) ( #+.-%* +*A.%)##"*& .( $* &&2$.&'% A.%' )%#*%) -%*+ & #"* & #) (*+" B !0;07C0 "**-*, #"*+(#") ( #+.-%* %& $* *4*++*' %+ O B;0C 1"** +#"*& .( $*-&&2$.&'%-%*+ &#"*& #)(*+"%&' +#"*+(#" A.%' )%#*%)%# "*+&' &!##"* " 2#"&&2$.&'%A.%' )%#*%)-%* &#"* & #) (*+"0 % " #"*+* A.%' )%#*%) %# "*+ %& $* %%(*#* 6*' / * #"* *+&' &!&&2$.&'%A.%' )%#*%)-%* &#"*& #)(*+"0 1 */ *,+ &*% A.%' )%#*%)-%*%&*%+ )$*%%(*#* 6*' / *%M8 N '(% &,*% "A.%' )%#*%) %# " +)%))%%(*#* 6*' / * #"* '(% &M8 N 0 "* &&2$.&'% A.%' )%#*%) -%*+ %* # 1 # *+ E B%C -%*+ "% / &! & *4#%' &% / *# *+ B'.$$*' %+ J*!.)%K -%*+ & *# & =070, (%3 *'%+ 1 & !0;07B%CC%&'B$C -%*+ 1 #"&* *4#%' &%/ *#*4 B'.$$*' %+J *!.)%K-%*+ &*# &=0707,(%3 *'%+ 2 & !0;07B%CC0 -#"**%* *!.)%%&' *!.)% PAGE 104 -%*+, #"*& A&0;0 %& $* *1 ##*& %+ O G B;07C 1"** + #"* A.%' )%#*%) %# " *+&' &! # #"* 2#" *!.)% -%* %&' + #"* A.%' )%#*%)%# " *+&' &!# #"* 2#" *!.)%-%*0 "* A.%' )%#*%) %# " & #"* ) ( #+.-%* *+&' &! # *% " *!.)% -%* + % $ .$ 2+) &* %# ", 1" " + '*>&*' / * M8 N 0 "* +*# & #) / *# *+ '*>& &!#" +$ .$ 2+) &*%# "%&$*$#% &*'.+ &!#"*%'5%*& #-%* &-(%2 # & B*-* # *# & =070 %&' !0=0 & "%#* =C0 "**-*, #"* A.%' )%#*%) %# "*+ & #"* +(#" ) ( # +.-%* *+&' &! # #"* *!.)% -%*+ & #"* &2 #) (*+"%& $* *%+ ) *4*++*' %&%)# %)) ,1" " %**++*& # %)) $ .$ 2+) &* %# "*+ '*>&*' $ 9& #)/ *# *+ / * %M8 N '(% &0 "* %&%)# *4*++ & #"* A.%' )%#*%)%# " *+&' &!# #"* *!.)%-%* + ! / *& $ O B C O B B C C O B C B;0=C 1"** 8 , B C + #"* ))*# & #"* $ .$ 2+) &* $%+ + -.&# &+, +#"*&%#*&%# &-#"*9& #)/ *#*4+ # &+'*>& &!#"*$ .$ 2+) &* %# ", + % +*)*# & (%# 4 1" " 1"*& ( .)# ) *' 1 #" , #"* &%#*&%# & - PAGE 105 8 %)) #"* & #) / *#*4 + # &+ '*>& &! #"* +(#" ) ( # +.-%*, +*)*#+ #"* *2 +&' &! +*# -& #)/ *# *+, %&' B CO B C 0 "* %&%)# *4*++ & #"* A.%' )%#*%) %# "*+ *+&' &! # #"* 2 *!.)% -%*+ & #"* & #) (*+" 1 %+ ' Ã†.)# # '* / *, %&' "*&* %& %)#*&%# / * %% "1 %+#%3 *& &%&'%)*#%)0 M;< ,98N%&' &*#%)0 M<9N%+1 *))%+ &"%#* =0 1 */ *, / * **& #) %& *Ã† *& # + "*(* */ %).%# &! %#( .))2)%3+.$' / 2 + &+.-%*+%#%$ #%%%(*#*/ %).*+1 %++*'$ #%(M8N0 "*+*' %% ", & / )/ &!* !*&2%&%)+ +-#"*+.$' / + &(%# 4,)*%'+#%&%&%)# *42*++ & -%A.%' )%#*%)%# "%%(*#* 6*' / * %& *!.)%-%*0 )) 1 &!#"* + "*(*'*/ *)*'$ #%(M8N,#"*A.%' )%#*%)%# "*+&' &!##"* *!.)% -%* +! / *& $ O B C O B B C C O B C B;0:C 1"** 8 %+ $*-*0 B C + #"* ))*# & $%+ + -.&# &+ #"* *+&' &! A.%' )%#*%) %# " & #"* +(#" ) ( # +.-%*0 "* +.$+ # + .+*' #'*&#* #"* -%##"%# #"* *!.)%-%* "%+%& *4#%' &%/ *#*4 -'*!** 0 "* '*#% )*''* / %# & %&' #"* %&%)# *4*++ &+ #"*+* $%+ + -.&# &+ & / )/ &!#"* * !*& / %).*+%&'* !*& / *#+ -#"*+.$' / + &(%# 4%&$*-.&' & #%( M8N0 "* *+# #"* &#%# &+ .+*' & A&0;0: "% / * #"* .+.%) (*%& &!E + #"*&%#*&%# &-#"*7 G& #)/ *# *+'*>& &!#"*A.%' )%#*%)%# " &#"* PAGE 106 (a) (b) !.*;0=0 B%C"*(%3 *'9& #)/ *# *+'*>&*#"*+"%'*'A.%' )%#*%)%# " %++ %#*'1 #"#"*+"%'*'*!.)%-%* &#"*& #)(*+"FB$C#"*(%3 *':& #) / *# *+ '*>&* #"* +"%'*' A.%' )%#*%) %# " %++ %#*' 1 #" #"* +"%'*' *!.)% -%* &#"* & #)(*+"0 ) ( # +.-%*, + #"* &%#*&%# & %)) #"* & #) / *#*4 + # &+ '*>& &! #"* +(#" ) ( #+.-%*, + % +*)*# & (%# 4 1" " 1"*& ( .)# ) *'1 #" +*)*#+ #"* *+&' &! +*# -& #)/ *# *+, %&' B CO B C 0 #(% $*&#*'#"%##"*& .( $*-& #)/ *# *+ &#"* & # %)(*+"'*>& &! % A.%' )%#*%) %# " & #"* +(#" ) ( # +.-%* + 7 G, 1"** O : & %+* #"* %++ %#*' A.%' )%#*%)-%* & #"* & #)(*+" +*!.)%, O'*!** #"* *4#%' &%/ *#*4 -#"*%++ %#*'A.%' )%#*%)-%* + *!.)%0 *4%()*,#"* +"%'*' A.%' )%#*%) %# " + %++ %#*' 1 #" #"* +"%'*' *!.)% -%* & !0;0=B%C, %&' #"* 9 & #) / *# *+ '*>& &! #" + %# " B1" " + %#.%)) % $ .$ 2+) &* %# "C %* (%3 *'0 ( )%) , #"* +"%'*' A.%' )%#*%) %# " + %++ %#*' 1 #" #"* PAGE 107 7 +"%'*' *!.)%-%* & !0;0=B$C,%&'#"*:& #)/ *# *+'*>& &!#" +%# "%* " !") !" #*'0 1%&*4*++ &-#"*+(#") ( #+.-%*%&$**%+ )-( .)%#*'0 + &! A&0;07, ;0=%&' ;0:, #%& $*+" 1& #"%# O G O B G C O B;0;C 1"** OB G C0 #*#"%#*/ *&#".!"#"* & # %)(*+"+*/ *+%+#"* %%(*# '(% &#"* +(#" ) ( #+.-%*, *% " A.%' )%#*%)-%* &#"* & # %) (*+"%&'&+*A.*& #)#"*+(#") ( #+.-%*%&$*'*>&*' / *%M8 N '(% &0 ;0707 &%( + "**4*++ &-#"*) ( #+.-%*%+! / *&$ A&0;0; ++%(*%+#"*&*'* / *' &"%#*=BA&0=0;C0 1 */ *,#"*& #*& #+-#"*(%# 4 +##%))' ?**& # & # 1 %+*+0 */ *#"*)*++, #"* '&%( + #"* ) ( # +.-%* %& $* -( .)%#*' .+ &! #"* +%(*+( $) *4*++ &+ B1" ", 1"*& %#.%))*/ %).%#*' 1 )))*%'#' ?**& # *4*++ &+ '**&' &! & #"* & #*& #+ #"* (%# 4 C0 "**-*, #"* +( $) *4*++ & #"* (# & *A.%# & *(% &+ #"* +%(* %+ & #"* *%) * -( .)%# &#"* '&%( %#( .))2)%3+.$' / + &+.-%* ('*)0 ;070= & #*)*(*& # ()*(*& #%# & &#"*.& >*''&%( -%(*1 3,#"*+(#") ( #+.-%*$#% &*'/ %%#( .))2 )%3 +.$' / + &*++ + *4*++*' %+ % ))*# &A.%' )%#*%)%# "*+0 % " PAGE 108 = A.%' )%#*%) %# " & #"* ) ( #+.-%* + &+ '**' %+ % >& #* *)*(*& #0 "**-*, #"* ) ( # +.-%* .&'* #"* .& >*' -%(*1 3 &+ +#+ % + &!)* # * >& #* *)2 *(*& #+ &+#*%' # 1 ' ?**& # # *+ *)*(*& #+ %+ & %&'%) *# %)0 M;< , 98N %&' & *# %)0 M<9N0 "* (%++, '%( &! %&' +# ?&*++ (%# *+ #"*+* *)*(*& #+ %)&! 1 #" #"* !*&*%) 6*' -* / *# %& $* */ %).%#*' %&%)# %)) , / '*' #"* (%#*2 %)*# *+B) 3 *(%++,'%( &!, ! ' # %&'$*&' &!' +# $.# &+C"% / *%&%)# *4*++ &+0 "*+* ' +# $.# & -.&# &+ %* %++.(*' # $* &+#%& # &(+# %+*+0 1, #"**4*++ &+ -#"* (%++,'%( &!%&'+# ?&*++ (%# *+-%A.%' )%#*%) *)*(*& # 1" " +% $ .$ 2+) &*%& $* 1 ##*&%+ O B;09C O B;0 PAGE 109 : %* -+ 6* B9 9C0 "* *4*++ & #"* *+&' &!!*&*%) 6*'-* / *# + O B C B;0C "* (%++, '%( &!%&' +# ?&*++ (%# *+ #"* A.%' )%#*%)*)*(*& #+ 1" " %* &# $ .$ 2+) &*+ B*+&' &! # #"* *!.)% -%*+C %& $* *4*++*' %&%)# %)) %+ 1 *)) + () $ *)% &! #"* (%# 4 & A&0;09, ;0< %&' ;0 $ #"* (%# 4 B*-* # A&0;0:C, 1"** '*&#*+ #"* '*!** #"* *4#%' &% / *#*4 %++ %#*' 1 #" #"* *+&' &! *!.)% -%*0 "*+* *)*(*& #%)(%# *+ %* + 6* B7 G 7 GC0 "* !*&*%) 6*' -* / *# #"*+* *)*(*& #+ %& %)+ $* '*#*( &*' & % + ( )% -%+" &0 # (% $* &#*' #"%# #"* ) ( #+ & #*!%# & &**' # $* "+*& %*-.)) *)*(*& #%) +# ?&*++ (%# *+ %+ #"* +*&' '* / %# / * ' / *!*+ &*% #"* *4#%' &% & #+ %#( .))2)%3 +.$' / + & +.-%*+0 "* *)*(*& #%) (%# *+ ( $ &*' #!*#"*, * #"* *4) #) () #) ,! / * #"* !)$%) (%# *+0 ( )%) ,*)*(*& #%)!*&*%) 6*'-* / *#+ %& $* ( $ &*'#!*#"*# $#% & #"* !)$%) !*&*%) 6*' -* / *#0 "*(# & *A.%# & + ' +*# 6*' %&' +)/ *' -)) 1 &!+ ( )%#* "& A.*+ '*+ $*' &"%#* =0 # (% $* &#*' #"%# */ *& #".!" %& %&%)# %) *4*++ & % A.%' )%#*%) *)*(*& # & #"* ) ( #+.-%* 1" " + &# % $ .$ 2+) &* *4 +#+, # + .( $*+(* # %#.%)) */ %).%#* #"* *)*(*& #%) (%# 4 *4*++ &+0 .(* %) & #*!%# & .+ &! %.++ %& A.%'%#.* (% $* .+*' # $#% & % 4 (%# &+ #"*+* *)*(*& #%) (%2 # *+0 1 */ *, & #" + ' ++*#%# &, %& %% " + ( )% # #"* '&%( (' >*' PAGE 110 ; $.##*D +.$' / + &('*)*+*& #*' &"%#*: +#%3 *&()*(*& #%# &.2 +*+0 & % 4 (%# & #"* +(#" ) ( # +.-%* + $#% &*' $ +.$' / ' &! #"* & # %)& #) (*+" # (*+, %&' % + &!2(%++ ++#*( + '*/ *)*' & #" + 2#" % 4 (%# & )*/ *) & % + ( )% -%+" & %+ & *# & :0=0 "* " + %) (%# *+ #" + ++#*( %* .+*' %+ % 4 (%# &+ # #"* %#.%) " + %) (%# *+0 "*+* % 4 (%# &+"% / * $**& -.&'#$* / * *Ã† *& # ()*(*& #%# &.+*+0 ;0= & >*' &%( %(*1 3 -.$' / + &.-%*+ H++.$' / + &+ "*(*+#%#+1 #"%# %&!.)%& #)(*+"%&'!*&*%#*+% +(#"+.-%* 1 #" # %&!.)%%# "*+ & #"* ) ( #0 # +%& % 4 (%# &!+.$' / 2 + &+ "*(*1" "!*&*%) 6*+*.+ / *+.$' / + &+ "*(*+-$#% & &! A.%# # %&!.)%2+) &*%# "*+ &%*!.)%+*## &!0 &*% "+#*-+.$' / + &,*% " B&&2$.&'%C # %&!.)% -%* + *>&*' & # : # %&!.)% -%*+ .+ &! #"* -)) 1 &! .)*+ E *% "B&&2$.&'%C/ *#*4 -'*!** ,%&*1/ *#*4 & # + & #'.*'0 "* + # & #" + &*1) & #'.*' / *#*4 & # + ! / *& $ !!! , 1"** + #"* + # & / *# / *#*4 , %* #"* / *#*4 + # &+ #"* / *# *+ &&*#*' # / *#*4 , B C O " " %&' B C O # $% 0 *% "B&&2$.&'%C*'!* ,%&*1*'!* & # + & #'.*'0 *# $*#"* &&*# &! *'!* $*# 1 **& / *# *+ %&' , %&' ++"%*' $ -%*+ %&' 0 %&' "% / */ *# *+ %&' *+*# / *)B%%#-( %&' C,#"*& #"* + # & #"* &*1) & #'.*' *'!* & # + ! / *& $ , PAGE 111 9 !.* ;0:0 B%C "* & #) )!& 1 #" # %&!.)% -%*+F B$C (*+" $#% &*' %-#* &* +.$' / + & +#* .+ &! H++.$' / + &.)*+0 1"** , , %&' %*#"*+ # &/ *#-#"*/ *#*4 , , %&' *+*# / *) 0 *1 *'!*+ %* -(*' $ &&*# &! *% " &*1 / *#*4 & # # #"* &*1 *'!* & #+*+&' &!##"**'!*+ & '*& #&#"*)'/ *#*4,%&'$ &&*# &! *% "&*1 *'!* & ###"*&*1 *'!* & #+-#"*#"**'!*+ &#"*# 1 -%*+ 1" " +"%*' #"* ! &%)*'!*0 *1 -%*+ %* '*>&*' %+-%*+ *&)+*' $ #"* &*1*'!*+0 %()*+ *>& &! %& & # %) (*+" .+ &! H+ +.$' / + & .)*+ %* +" 1& & !0;0: %&' ;0;0 "*+* +.$' / + & .)*+ *&+.* #%&!*& # )%&* & # & . # #"* ) ( # +.-%* */ *& & % *!.)% +*## &!, 0*0, 1"*& #"* # %&!.)% & #) (*+" "%+ PAGE 112 < *4#%' &% / *# *+ 1"+* '*!** + &# *A.%) # 90 "* ) ( # +.-%* +" 1& & !070B'C + %#.%)) $#% &*' $ +.$' / ' &! #"* & #) (*+" +" 1& & !070B%C .+ &! +.$' / + & .)*+0 '*#% )*' ' +.++ & & " 1 # $#% & + # &+ %&' &(%)+ & #"* +(#" ) ( # +.-%* !*&*%#*' $ #"* +.$' / + & + "*(* %& $* -.&' &*# &:07-*H+ #"*+ + M=N0 ;0=0 %) %%(*#* 6%# & "* ) ( # +.-%* $#% &*' / % H+ +.$' / + & + "*(* %& $* )%)) %2 %(*#* 6*' *%+ ) 0 " + )%) %%(*#* 6%# & + "*(* + / * + ( )% & &%#.* # #"*&*'*+ $*'-%#( .))2)%3+.$' / + &+ "*(* &*# &;0700 H+ + "*(*, #"* +(#" ) ( # +.-%* &+ +#+ # %&!.)% %# "*+ %&' #"* & .( $* #"*+* # %&!.)% %# "*+ + +%(* %+ #"* & .( $* &&2$.&'% # %&!.)% -%*+ & #"* & #)(*+"0 "**-*, *% " #"* # %&!.)%%# " & #"* ) ( #%& $* )%)) %%(*#* 6*' / * #"* *+&' &! # %&!.)% -%* & #"* & #) (*+"0 & (% $* &#*' #"%#*% " # %&!.)% -%* & #"* & #) (*+" %& $* %%(*#* 6*' / * % # %&!.)% '(% & 1"+* / *# *+ %* )%#*' %# B8 8C, B8 C %&' B 8C, %&' "*&* *% "# %&!.)%%# "%&'&+*A.*& #) #"*+(#") ( #+.-%*%&$*'*>&*' / * #" + '(% &B*-* !0;09C0 "*# %&!.)%%# "*+ &#"*+(#") ( #+.-%*%*-# 1 # *+0 %&&2 $.&'%# %&!.)%-%* &#"*& #)(*+"1 #"&*4#%' &%/ *# *+B 0*0,1 #" #"** / *# *+ -'*!** 9C,#"* *+&' &!# %&!.)%%# " &#"* ) ( #+.-%* + %%# .)%# *-# %&!.)%2+) &*B#"*#"**2' *# &A.%# $ 4+) &*C1"+* %&%)# *4*++ & +*%+ #$#% &0 " +# %&!.)%2+) &*%# " +& #))*'$ PAGE 113 control mesh limit surface !.*;0;0 & & # %)(*+"%&'#"**+&' &!) ( #+.-%*$#% &*'.+ &!H+ +.$' / + &.)*+0 "* '(% &+-#"*+"%'*' # %&!.)%%# "*+ &#"* ) ( #+.-%* %* #"**+&' &! # %&!.)%-%*+ &#"* & # %)(*+"0 "* *& )*'/ *# *+ %* #"* & #)/ *# *+ -#"* *+&' &! # %&!.)%%# " &#"* ) ( #+.-%*0 PAGE 114 limit surface initial mesh(1,0) (0,1) (0,0) !.*;090 % " # %&!.)%%# " & #"* ) ( #+.-%* %& $* %++ %#*' 1 #" %&&2 $.&'%# %&!.)%-%* &#"* & # %)(*+",1" " &#.&%&$*%%(*#* 6*' / * % # %&!)*1 #" / *# *+ %# B8 8C,B 8C%&' B8 C0 PAGE 115 88 7/ *# *+%++" 1& & !0;0;B#"*+*#-*&)+*'/ *# *+ &#"*)*-#"%&'+ '*C0 "* # %&!.)%%# " &#"*) ( #+.-%**+&' &!#%&&2$.&'%# %&!.)%-%* &#"*& #)(*+"1 #"&**4#%' &%/ *#*4 %&%)+$**4*++*' %&%)# %)) .+ &!#"*+ "*(*++*'$ #%(MN0 " +# %&!.)%%# " +& #))*'$ G9 / *# *+ & #"* & #) (*+" 1"** + #"* '*!** #"* *4#%' &% / *#*40 "* +*# & #) / *# *+ % # %&!.)% %# " #"* )%#* # * + +" 1& & #"* !" # "%&' + '* !0;0;0 "**-*, *% " # %&!.)% %# " & #"* ) ( # +.-%* %& $* *4*++*' %&%)# %)) ,%&' %& *4*++ & #"* ) ( # +.-%* + ( )%# A&0;0; %& $* $#% &*'0 ;0=07 &%( + &* %& *4*++ & #"* ) ( #+.-%* $#% &*' / % H+ +.$' / + & + $2 #% &*', #"* '&%( ('*) %& $* '*/ *)*' -)) 1 &! %& *4%#) + ( )%*'.* '*+ $*' %#( .))2)%3+.$' / + & + "*(* & *# & ;07070 "* (# & *A.%2 # &-#"*'&%( +.$' / + &('*)%&%)+$*'* / *' &%+ ( )%-%+" &0 ;0=0= & #*)*(*& # ()*(*& #%# & "* ()*(*& #%# &-#"*'&%( -%(*1 3-+.$' / + &+ "*(*.+2 &! #"* .& >*' %% " #*%#+ *% " # %&!.)% %# " & #"* ) ( #+.-%* %+ % >& #* *)*(*& #0 % " # %&!.)%%# " "%+ %& %&%)# *4*++ &, %&' "*&* #"* *)*(*& #%) " + %) (%# *+ %&' #"* !*&*%) 6*' -* / *# %& $* '* / *' %&%)# %)) 0 "* '* / %# & %& *4%# *4*++ & *)*(*& #%) (%# *+ + .( $*+(* #"* # 2 %&!.)% %# "*+ *+&' &! # #"* # %&!.)% -%*+ 1 #" %& *4#%' &% / *#*4, %&' & .(* %) & #*!%# & .+ &! %.++ %& A.%'%#.* (% $* .+*' '* / &! %& PAGE 116 8 % 4 (%# &0 1 */ *, % %# %) %)#*&%# / * ()*(*& #%# & + # +.$' / '* #"* & #) (*+" # (*+ .+ &! H+ +.$' / + & .)*+, %&' # $. )' % + &!2(%++ ++#*( & #" + 2#" )*/ *) % 4 (%# & %+ "%+ $**& '&* #"* '&%( (' >*' $.##*D+.$' / + &('*) &*# &:0=0 "*" + %)(%# *+-#" ++ &!2(%++ ++#*( / '*%&% 4 (%# &-#"* ! &%)" + %)(%# *+,%&' #1 3+1 *)) &%# *0 ;0: *&*%).#) &*-#"* %(*1 34 (%# &!.$' / + & "*(*+ "* .& >*' %% " *+*& #*' # / '* % '&%( -%(*1 3 %#( .))2 )%3%&'+.$' / + &+ "*(*+%&$*!*&*%) 6*'*%+ ) 0 " +%% " & / )/ *+ #"** +#*+ 1" " %*%+ -)) 1+E 0 "* ) ( # +.-%* $#% &*' / % %& % 4 (%# &! +.$' / + & + "*(* %& $* *4*++*' %+%))*# &-+(#"%# "*+1" "%&$*)%))%%(*#* 6*' / * % *+&' &! -%* & #"* & #) (*+"0 % " %# " + 2+ '*' # + )%)) %%(*#* 6*' / * % 2+ '*' -%*0 &%)# *4*++ &+ *% " #"*+* %# "*+ %& $* '* / *' */ *& & #"* *+*&* *4#%' &% / *# *+ & #"*& #)(*+",%&'"*&*%&*4*++ &-#"*) ( #+.-%*%&$*$#% &*'0 70 &*%&*4*++ &-#"*) ( #+.-%* +$#% &*',#"*'&%( -%(*1 3%& $* '*/ *)*' $ #*%# &! & #) / *#*4 + # &+ %+ % -.&# & # (*0 "* *+&' &! (# &*A.%# & %& $*'* / *'0 PAGE 117 87 =0 % "%# " &#"*) ( #+.-%* +#*%#*'%+%>& #**)*(*& # & ()*(*& #%# &0 "* *)*(*& #%) (%++, '%( &! %&' +# ?&*++ (%# *+ %)&! 1 #" #"* !*&*%)2 6*' -* / *# %& $* $#% &*' $ * #"* %&%)# & .(* %) & #*!%# &0 )#*&%# / *) ,#"*& #)(*+"%&$*+.$' / '*' # (*+#$#% &%&% 4 2 (%# &-#"*+(#") ( #+.-%*,%&'%+ &!2(%++++#*(%&$*'*/ *)*' & #" + % 4 (%# & (*+"0 "* " + %) (%# *+ #" + ++#*( / '* %& % 4 (%# &##"* ! &%)" + %) (%# *+%&' 1 3+ 1 *)) &%# *0 ;0; *&*%).#) &*-#"* %(*1 3 & #*)%#.$' / + & "*(*+ +# #"* & #*)%# +.$' / + & + "*(*+ %* $#% &*' $ (' &! #"* $.##*D+.$' / + &+ "*(*M=8N0 "**-*, #"*-%(*1 3'*/ *)*' -#"*(' 2 >*' $.##*D +.$' / + & + "*(* & "%#* : +*## !*&*%) %&' %& $* .+*' #"* & #*)%#+.$' / + &+ "*(*+%+1 *))0 "*&)' ?**&* +#"%##"*$%+ + -.&# &+%+1 *))%+#"*+*#-& #)/ *# *+-%%# " &#"*) ( #+.-%*'**&' & #"* "+*& & #*)%# +.$' / + & .)*+0 # (% %)+ $* &#*' #"%# .&) 3 * #"* % 4 (%# &! + "*(*+, #"* " + %) (%# *+ %& &# $* $#% &*' %&%)# %)) %+ #"* $%+ + -.&# &+ *+&' &! # & #*)%# +.$' / + & + "*(*+ ' &# "% / * %& %&%)# *4*++ &+ &!*&*%)0 / *&#".!"#"*+*(%# *+%&$*$#% &*'/ % & .(* %) & #*!%# &, #"* + &!2(%++ ++#*( '*/ *)*' & "%#* : + *-**' ()*(*& #%# &.+*+ '.* #*Ã† *& *%+&+0 PAGE 118 9 "* '&%( -%(*1 3 '*/ *)*' +.$' / + & +.-%*+ %)) 1+ #"* .+*+ # ' *#) (%& .)%#*#"* +(#") ( #+.-%* $ %) &! +& #"*+ 6*' -*+0 & %& +.$' / + & + "*(*, %& & # %) B& #)C (*+" + *>&*' .+ &! +* > +.$' / + & .)*+ # $#% & % +(#" +.-%* & #"* ) ( #0 '*/ *) #"* '&%( -%(*1 3, #" ++(#") ( #+.-%* +%%(*#* 6*' / *#"*'(% &'*>&*'$ #"* & # %)(*+" %&' "*&*, #"* ) ( #+.-%* %& $* *4*++*' %+ % -.&# & #"* & # %)(*+"0 "* .+*+ %) +& #"*+ 6*' -*+ & #"* +(#") ( #+.-%* 1" " + #%&+-**' $% 3 &#"* & # %)(*+"/ %%#%&+-(%# &(%# 40 "* & # %)(*+"*/ )/ *+ / *# (* & *+&+*##"*%) *'-*+,%&'&+*A.*&#)#"*+(#") ( #+.-%*'*-(+# $#% & %& *A. ) $ .(+ # & 1"** %)) -*+ %* $%)%&*'0 + &#*' *%) *, */ *& #".!"/ % .+# *+ --*+%&$*%) *'&#"*) ( #+.-%*#$#% &%'*+ *' *?*#, #"* ++ $)* +"%*+ #"%# %& $* $#% &*' / % */ ).# & + ' *#) *)%#*' # #"* & .( $* & #)/ *# *+ *+*& # &#"* & # %)(*+"0 "*&*#-( .)# )*/ *)'&%( +1 %+ & #'.*'*%) * &'*#"% / */ %2 &! & .( $* & #) / *# *+ & #"* & # %)(*+", %&' % 1 '* %&!* +"%*+ 1 #" %$ #% #)! %& $* ('*)*' 1 #" & #"* '&%( -%(*1 30 "* *%'* + 8= PAGE 119 8: synthesized by the user force applied on the smooth limit surface force is applied back to the transferred initial (control) meshposition equilibrium to obtain evolves mesh the initial equilibrium surface at limit smooth deformed shape detailed a more to model user needs previous initial mesh is replaced by a new initial mesh with more degrees of freedom obtained via subdivision on the previous initial meshblack box to the user !.*900 "*(%# $) 3 ' %!%(-#"* ( .)# )*/ *)'&%( + %% "0 PAGE 120 8; *-**'#*# &=070;%&'*# &=0=09-#" +' ++*#%# &-#"*'*#% )+-( .)# 2 )*/ *)'&%( + &#"*& #*4#-'&%( %#( .))2)%3+.-%*+,%&'#*# &:070= -#"*'&%( (' >*'$.##*D+.$' / + &+ "*(*0 "*&*#-( .)# )*/ *)'2 &%( + + )).+#%#*' 1 #" $) 3 ' %!%(+ & !0900 " + ( .)# )*/ *) '&%( + %& $* &+ '**' %+ % +.$' / + & +.-%*2$%+*' %+*2#2>&* ('*) &!-%(*1 3 %&' %&$*+.((% 6*'%+-)) 1+0 "*.+*+#%#+1 #"%+(#") ( #+.-%*1" ""%+ %/ *+ ()* & # %)(*+"1 #"-*1& #)/ *# *+0 " ++(#"+.-%* +'*-(*' $ %) &! +& #"*+ 6*' -*+ + #"%# #"* ) ( # +.-%* %# *A. ) $ .( 1 .)' )3 ) 3 *#"*>&%)'*+ *'+"%*$.#1 #".##"*'*#% )+ & #0 "*&,#"*& .( $*-& #) / *# *+ & #"* & # %)(*+" + &*%+*' $ *)% &! #"* & # %)(*+" %# *A. ) $ .( $ %&#"* &* $#% &*' / % &* +.$' / + & +#* & #"* )' & # %) (*+", %&' #"* )' & # %) (*+" + ' +%'*'0 #" #"*+* )' %&' &*1 & # %) (*+" **+*& # #"* +%(* ) ( # +.-%*, $.# #"* )%##* "%+ (* & #) / *# *+0 1, #" + &*1 & # %) (*+",%&'&+*A.*& #)#"*+(#") ( #+.-%*,%&$*'*-(*'#$#% &%+"%* %# *A. ) $ .( 1" " "%+ (* '*#% )+0 " + *++ + **%#*' # )) #"* '*-(*' +(#"+.-%* "%+ %))#"* '*+ *' '*#% )+0 "*) ( #%# &-#"*( .)# )*/ *)'&%( +%% " +#"%#&*%>&**+).# & + "+*&,#"*('*)*%&&##-%) 1 **+).# &%+#"*'&%( + +'*>&*'& #"*.*& # & # %)(*+"0 "** +&1 % -"% / &!#"*'&%( +'*>&*'&%+ ()* & # %) (*+", %# #"* +%(* # (* *+*/ &! #"* %)*%' $#% &*' '*#% )+ & #"* ('*) 1 #" &#"*( .)# )*/ *)'&%( +%% "0 " + +#*& # %))%+*/ ***+# # &0 *4%()*,)*#.+ (%! &*#"* +*&% '* #*' & !09070 "* ('*)*"%+ * / **' PAGE 121 89] [] [(static) (static) initial shape recovered global shape recovered detailed shape with few degrees of with large degrees of freedom freedom formulate dynamics on a coarser level of the control mesh with few degrees of shape, and then add back the details. freedom, bend the global (a) Shape recovery Multilevel dynamics approach :(time consuming, difficult)Multiresolution dynamics approach :(fast, easy)(b) Editing the recovered shape : Global bending + details + details formulate dynamics on the bend the entire detailed shape. current control mesh which has large degrees of freedom, !.*9070 .)# )*/ *)'&%( +/+0 ( .)# *+).# &'&%( +0 PAGE 122 8< % )&! +#% !" # *2) 3 * +"%* 1 #" )#+ '*#% ) $ +& #"*+ 6*' -* %) %# & & % +(#" ) ( # +.-%*0 " + +(#" ) ( # +.-%* & # %)) "%' % + ()* & # %) (*+" 1 #" -*1 / *# *+, $.# #"* .*& # & # %) (*+" %-#* (%& ('*) +.$' / + & +#*+ "%+ )%!* & .( $* & #) / *# *+0 1, #"* ('*)* 1 %& #+ # $*&' #" + +#% !" # *2) 3 * +"%*, #"* +& #"*+ 6*' -*+ %) *' & #"* +(#" ) ( # +.-%* &**'#'*-(%& & # %)(*+"1 #"%)%!*& .( $*-& #)/ *# *+0 #1 .)'"% / * $**& ( . " *%+ * %&' -%+#* % ) 1 * *+).# & / *+ & #"* .*& # & # %)(*+" .)' $* '*-(*' 1 #" #"* '*#% )+ $* &! %''*' $% 3 1"*& #"* +"%* "%+ $*& # # #"* '*+ *' *4#*& # & *+&+* # #"* %) *' +& #"*+ 6*' -*+0 )+, # "%+ $**& & #*'.# &*# &70;#"%##"*'&%( -%(*1 3%& & #*!%#*+"%** / * %&' +"%* ('*) &! &% .& >*' -%(*1 3 1"** #"* * / **' +"%* %& *%+ )$* *' #*'%+1 *))0 1 */ *, -#"*('*)*1 %& #+%!)$%) "%&!* &#"** / **'+"%*, % ) 1 * *+).# & & #) (*+" B#"%& #"* &* $#% &*' / % +"%* * / * *++C (% $* *A. *', %&'#"* '*#% )+&**' #$* *+*/ *' %##"* +%(*# (*0 ( .)# *+).# &**+*& #%# & -#"* & # %)(*+" ++*' & #" + "%#* #+)/ *#"*%$ / *2(*& # &*'$)*(0 #*A. ) $ .(,%& & # %)(*+" ++.$' / '*' # $#% & %& & # %) (*+" 1 #" (* & #) / *# *+ B'*!**+ -**'(C0 &+#*%' '*/ *) &! #"* '&%( + & #" + &*1) $#% &*' & # %) (*+" %+ & #"* ( .)# )*/ *) '&%( + %% ", #"* '&%( + + '*/ *)*' & % **+*& #%# & 1" " / *1+ #"* &*1) $#% &*' & # %) (*+" %+ #"* */ .+ & # %) (*+" ).+ '*#% ) B1 % / *)*#C 2 *Ã† *& #+ &**'*' # !*# #"* .*& # & # %) (*+" B+** !090=C0 " + + *++*& # %)) '*/ *) &! #"* '&%( + & % ( .)# *+).# & **+*& #%# & #"* */ )/ &! & # %) PAGE 123 8 ( 6 control vertices) ( 3 control vertices) degrees of freedom = 3 ( 3 control vertices, 3 detail coefficients) ( 3 control vertices) degrees of freedom = 3degrees of freedom = 6 degrees of freedom = 6(b) Multiresolution approach (a) Multilevel approach !.* 90=0 **+*& #%# & #"* '*!**+ -**'( & ( .)# )*/ *) '&%( + %&' ( .)# *+).# &'&%( +%% "0 PAGE 124 8 (*+" 1" " "%+ .&'*!&* ('*)+.$' / + &+#*B+C # &*%+*#"* '*!**+ --**2 '(0 # (% $* &#*' #"%# $#" #"* ( .)# )*/ *) %&' #"* ( .)# *+).# & %% " "% / * +%(* '*!**+ -**'( # **+*& # #"* & # %) (*+" $#% &*' %-#* % ('*) +.$' / + &+#*,$.##"*'*!**+--**'(-#"*( .)# )*/ *)'&%( +%% "%* #"*& #)/ *#*4+ # &+ &#"*&*1)$#% &*'(*+"1"**%+,#"*'*!**+--**2 '( #"* .*& # %% " %* #"* & #) / *#*4 + # &+ & #"* */ .+ & # %) (*+" %&' #"* '*#% )*' *Ã† *& #+ &**++% # $#% & #"* .*& # & # %)(*+" -( #"**/ .+&*0 "*( .)# *+).# &%% ""%+#"*$*&*>##"%##"*('*)*%& # % ) 1 * *+).# & & # %)(*+" )%#*, & 1" " #"* '&%( +%& $* '*>&*', %##"*+%(*# (**+*/ &!#"*'*#% )*'*Ã† *& #+-#"* & # %)(*+"&1" " #"* '&%( + +.*& #)'*>&*'0 " +&*#1 ))$*'*#% )*'-.#"* &)%#*+*# &+, $.# >+# %& / */ *1 #"* ( .)# *+).# & %&%)+ + + / '*' + #"%# #"* *%'* %& *%+ )-)) 1#"* *+# -#"* (%#* %)*+*& #*' & #" + "%#*0 90 / */ *1 -.)# *+).# &&%)+ + %&' % / *)*#+ "*$%+ '*%-( .)# *+).# &%&%)+ + +#'*(+*%() %#*'-.&# & & # % ) 1 * *+).# & / *+ & %)&! 1 #" % +*# '*#% )*' *Ã† *& #+ B%)+ 3& 1& %+ 1 % / *)*# *Ã† *& #+C &**++% # * / * #"* ! &%) -.&# &0 .)# *+).# & %&%)+ +%&'1 % / *)*#+"% / *1 '*+*%'%) %# &+ &' / *+*%*%+) 3 *+ !&%)%&%)+ + M;;,N, (%!**++ &!M79 ,;9 N," + +M7N,& .(* %)%&%)+ +M PAGE 125 8 ./ *,(*+"%&' (%!**' # &!M9,=7,8N,/ '**++ &!M=N,+.-%*/ *1 &!M=N, +.-%* & #*)%# &M<8N,*%# &!+.-%*+-(& #.+M9<,9 N,%& (%# && #) M;8N, )"*'%) (*++ & M;=N, ('*) &! M:;, 8: N %&' **+*& # &! -.&# &+ & % +"** M9 N0 % .+ %) %# &+ 1 % / *)*#+ & (.#* !%" + %* '*#% )*' & #))& #6 *# %)0 M7N0 "* '*% ( .)# *+).# & %&%)+ + + *4)% &*' &*4# 1 #" % + ()**4%()*0 *# $* % / *# & #% & &!-.&# &%)/ %).*+ +(* %$ #%-.&# & %# ' +*#* & #+0 ) 1 * *+).# & **+*& #%# & #"* -.&# & .+ &! B 3 C -.&# &%)/ %).*+%& $*$#% &*' -( $ ' &!*#% & 1 * !"#*' % / *%!*+ #"* -.&# &%) / %).*+ +#*' & 0 " + + *++*& # %)) % ) 1 %++ >)#* &! -)) 1 *' $ ' 1&2+%() &!,%&' #"* *& # * *%# &%& $* *4*++*' %+ O B90C 1"** + #"* 2/ %).*' / *# **+*& # &! % ) 1 * *+).# & / *+ & %&' #"* (%# 4 + + 6* B C %&' ()*(*& #+ #"* ) 1 %++ >)#* %)&! 1 #" #"* ' 1&2 +%()*0 "* ) 1 * *+).# & "%+ -*1 * -.&# &%) / %).*+ #"%& , %&' "*&* +(* %(.& #-'*#% )*+*& # & +)+#'.*##"*) 1%++ >)#* &!*++0 -#"*) 1 %++>)#* + "+*& % %#*) , # +++ $)*#%#.*#"*)+#'*#% )$ " !" %++ >)#* &!-)) 1 *'$ %' 1&2+%() &!-#"* ! &%)-.&# &%)/ %).*++#*' & PAGE 126 0 " +*%# &%& $**4*++*' %+ O B907C 1"** + %B C2/ %).*' / *# **+*& # &! '*#% )*'*Ã† *& #+ &**++% # * / * -( 0 "* (%# 4 + + 6* B C %&' ()*(*& #+ #"* " !" %++>)#*%)&!1 #"#"*' 1&2+%()*0 "*" !"%++>)#* +*)%#*'##"*) 1 %++ >)#* 0 "*+* # 1 >)#*+, %&' , %* 3& 1& %+ %&' #"* *++ +) ## &!%" !" *+).# &/*# & #%) 1 *+).# &/ *# %&' % / *# +# &!'*#% )*Ã† *& #+ +3& 1& %+ 0 "* ! &%) / *# %& $* *&+#.#*' -( #"* / *#+ %&' #"* +& #"*+ + >)#*+ %* "+*& *#) 0 " + + %))*' #"* *++, 1" " %&$* *4*++*' %+ O G B90=C 1"** + % *>&*(*& #(%# 4 + 6* B C %&' + % *#.$%# & (%# 4 + 6* B C0 "* *>&*(*& # (%# 4 *&'*+ #"* .)*+ $#% & &! % / *# )%!* + 6* -( % ! / *& / *# %&' #"* *#.$%# & (%# 4 *&'*+ " 1 # $#% &%*#.$%# &-B C-(#"*! / *&'*#% )*'*Ã† *& #/ *# 0 "* (%# *+ %&' %* ))*# / *) %))*' , %&' %* *)%#*' # #"* %&%)+ + >)#*+0 PAGE 127 7 q q q A pp pp A Aj-2 1Bj-1BjBj-1 1 j j-1 j j-1j-2 0 0 !.*90:0 "* >)#* $%&30 "* *++ '*(+ # & %& $* & # & .*' *.+ / *) 0 *4%()*, + '*(+*' & # % ) 1 * *+).# & %# %&' % '*#% ) %# 0 "*&, %& $* *4*++*' %+ % ) 1 * *+).# &%# %&' %&#"* '*#% ) %# 0 " + *.+ / **++ +'* #*' & !090:%&' +3& 1&%+ 0 "* ! &%)/ *# +'*(+*' & #%" *% " -) 1 **+).# &%#+ %&''*#% ) %#+ 0 "* ! &%) / *# %& $* * / **' -( #"* +*A.*&* 0 " + +*A.*&* "%+ #"* +%(* + 6* %+ #"%# #"* ! &%) / *# %&' +3& 1& %+ #"* -#"* ! &%)/ *#0 "* %&%)+ + %&' +& #"*+ + >)#*+ %* '*+ !&*' & +. " % -%+" & #"%# #"* ) 1 *+).# &/ *+ &+%*!'% 4 (%# &+-#"* ! &%)-.&# & &%)*%+#+A.%* +*&+*0 "*'*(+ # &%&'*&+#.# &*++*+ +".)'"% / *# (*()*4 # 4 B C, 1"** + #"* + 6* #"* / *# $* &! '*(+*' *&+#.#*'0 '*2 #% ) B1 % / *)*#C *Ã† *& # / %).* +".)' %)+ $* *)%#*' # #"* * & #'.*' & #"* % 4 (%# &1"*& #"%#%# .)%*Ã† *& # + +*# # 6*0 PAGE 128 = .)# *+).# & %&%)+ + + % -%(*1 3 '*/ *) &! #"*+* %&%)+ + %&' +&2 #"*+ + >)#*+0 # & / )/ *+ '* / %# &% +*A.*&* &*+#*' ) &*% +%*+ +. " #"%# #"* *+).# & #"* -.&# &+ & #% &*' & +(* +%* &2 *%+*+ 1 #" &*%+ &! 0 )+, #"** *4 +#+ %& #"!&%) ()*(*& # +%* 5 *% " , O 7 +. " #"%# 5 O , 0*0, #"* ) &*% +%* %&' #+ #"!&%) ()*(*& # +%* 5 #!*#"* +%& #"* ) &*% +%* 0 "* &&* '.# $*# 1 **& %& # 1 -.&# &+ %# +(* )*/ *) , O8 7 &**'+ # $* '*>&*' &'* #'* / * #"* #"!&%)()*(*& #+%*0 *# 6 , 6 , , 6 $* % +*# $%+ + -.&# &+ +%&& &! #"* ) &*% +%* 0 "*+* $%+ + -.&# &+ %* %)+ %))*' )*/ *) 0 1, %&' "*&* #"* $%+ + -.&# &+ 6 , 6 , , 6 , +%&& &! #"* ) &*% +%* , %& $* *4*++*' %+ % ) &*%( $ &%# &#"* $%+ + -.&# &+ #"%& +%& #"* ) &*% +%* 0 " + *>&%$ ) # +%) &! -.&# &+ + .+*' # &+#.# #"* *>&*(*& # (%# 4 ,1" " +".)' +%# +#"* *4*++ & O B90:C 1"** OM 6 6 6 N, O M 6 6 6 N, %&' + #"* B C *2 >&*(*& # (%# 4 & #'.*'*%) *BA&090=C0 ( )%) ,)*# 7 , 7 , , 7 $* % +*# -$%+ + -.&# &+ #"%# +%& #"* ) &*%+%* 5 0 "*+* $%+ + -.&# &+, %)+ 3& 1& %+ %# )*/ *) , #!*#"* 1 #" #"* $%+ + -.&# &+ -) &*% +%* -(%$%+ + #"* ) &*%+%* 0 *4#, #"* *#.$%# &(%# 4 %& $* PAGE 129 : &+#.#*' +. " #"%# #+%# +>*+ #"* *4*++ & O B90;C 1"** O M 7 7 7 N, %&' + #"* B C *#.$%# & (%# 4 & #'.*' & A&090=0 (* (%# *4*++ & (% $* $#% &*' $ ( $ & &! A&090: %&'90;, 1" " %& $*1 ##*& %+ M N O M N B909C "* %&%)+ +>)#*+ %&' +".)' +%# +#"* & / *+* *)%# & M N O B90 PAGE 130 ; &+#% &+ "% / * %)+ $**& '* / *' M, < N0 "* '*% !*&*%) 6 &! ( .)# *+).# & %&%)+ +&%$ #%(%& -)'+1 %+>+# & #'.*'$ .&+$**#%)0 M;7 ,;= N,%&' 1 %+-.#"* ( / *'$ #))& #6*#%)0 M7N.+ &!#"*&*#+M=N0 & #" + ' ++*#%# &, #"* ( .)# *+).# & + "*(*+ '* / *' $ #))& #6 *# %)0 M7N +.-%*+-%$ #%#)!1 ))$*%'#*'#'*/ *)#"*( .)# *+).# &'&%( -%(*1 3 -+.$' / + & +.-%*+0 .)# *+).# & %&%)+ + .+ &! 1 % / *)*#+ %& $* %#*! 6*' & # #"** # *+ 2 #"!&%)M77,;;N,+*( #"!&%)MN%&'$ #"!&%)M78,=N0 ( .)# *+).# & + "*(* "%+ #"!&%) 1 % / *)*#+ #"* 1 % / *)*#+ %* #"!&%) # &* %&#"*, %&' */ * 1 % /*)*# + #"!&%) # */ * %+* +%) &! -.&# &0 # + ' Ã†.)# # &2 +#.##"!&%)1 % / *)*#+#"%#"% / *)%)+.#B 0*0,&&26* / *%+(%))+*# & #"* '(% &C0 %)) +.#*' 1 % / *)*#+ %* (#%& # %+ #"* )*%' # +%+* +& #"*+ + %&' %&%)+ + >)#*+ 1" " & #.& )*%' # ) &*% # (* ()*4 # & / *# + 6*0 % / *)*#+ 1 #" )%) +.# %& $* &+#.#*' $ *)%4 &! #"* #"!&%) # &+#% & #0 #"* 1 % / *)*#+ %* #"!&%) # *% " #"* 1 #" & &* *+).# & $.# &# %++ ' ?**& # *+).# &+, #"*& #"* %* %))*'+*( #"!&%) 1 % / *)*#+0 & % $ #"!&%)+*## &!, #"* #"!&%) # &+#% & # + '*' 1"** 5 + +(* B%&'&##"!&%)C()*(*& #& 0 "*1 % / *)*#+&%$ #%(%& -)'+ '*/ *)*' $ #))& #6*#%)0 M7 N%&' .+*' &#" +' ++*#%# &%*$ #"!&%)0 "* ( .)# *+).# &%&%)+ + & %$ #% (%& -)'+ & / )/ * BC '*/ *) &! &*+#*' +%*+ .+ &! +.$' / + &+ "*(*+, B7C+*)*# &! %& &&* '.# & %$ #% (%& -)'%&' B=C&+#.# &!$ #"!&%)1 % / *)*#+,1" "%*' +.++*' &#"**+#-#" ++*# &0 PAGE 131 9 # (% $* &#*' #"%# #"** + % +) !" # '*/ %# & -( #"* +#%&'%' &#%# &%) & / *& # &-1 # &!/ *#+ &$)'-%*) 1 *%+*%&'(%# *+ &$)'-%*.* %+* )*##*+ & % %# .)% + #.%# & & #"* *+# #" + "%#*0 "* ))*# & & #) & # + # &+ %* %++.(*' # $* % #"**2).(& (%# 4 B&* *% " #"* 4, %&' 6 (&*& #+C &+#*%' % / *# 1"+* + 6* + #" * #"* & .( $* & #) & #+0 &+*A.*& #) , #"* #"**2 1 (%# 4 **+*& # &! #"* ))*# & $%+ + -.&# &+ $*(*+ % 1 /*#0 " + %% " + (* &%#.%)'*/ *) &! #"* 1 % / *)*# *4*++ &+, 1"**%+ #"* + #* 1 %+ #.* #"* #"* '*/ *)*' & *%) * "%#*+0 1 */ *,$)'-%*) 1 *%+*)*##*+%*.+*'#**+*& ##"*#"**2 ).(&(%# 4-& #)/ *#*4+ # &+%&'$)'-%*.*%+*)*##*+%*.+*'# **+*& # #"*/ *#-$%+ +-.&# &+,+#"%##"**%'*'*+&#!*#&-.+*'1 #" %&*1 &#%# &-**+*& # &!#"*+%(*#" &! &%' ?**& #-(%#0 "*&#%# &%) . # +! / *&% 1 % #%+(%))*4#*& #-#"*+%3 *-)% # 0 ))#"**4*++ &+%&$* *-( .)%#*'$ (*! &!#"*).(&+-#"*#"**2).(&(%# 4 & #%+ &!)*/ *#, $.# #"* *+.)# &! *4*++ &+ 1 )) .&&**++% ) $+.* #"* & #. # / *&*++ & #% &*' &#"* .*& # +*# -*4*++ &+0 9070 *+#*' %*+ #".!" .$' / + & &*/ .+ "%#*+, #"%+$**&+" 1&#"%##"*+(#") ( #+.-%*!*&*%#*' $ %*.+ / * +.$' / + & + "*(* &!*&*%)%& $* 1 ##*& %+ B CO B C B90C PAGE 132 < 1"** + #"* +(#" ) ( # +.-%*, + % ))*# & $%+ + -.&# &+ +%&& &! #"* +%* '*>&*' $ #"* & #) (*+" , + #"* / *#*4 + # &+ & #"* & #) (*+" %&' 0 !*&*%) .#) &*& " 1 # $#% &#" + *4*++ & -%& # * +.$' / + &+ "*(* "%+$**& / '*' &*# &;0:%&' ;0;-#" +' ++*#%# &%&' +* >*4%()*+%&$*-.&' &A&0=0;%&'A&0;0;-%#( .))2)%3+.$' / + & + "*(* %&' &A&0:0 -#"* (' >*'$.##*D + "*(*0 *# #"* & #) (*+" '*>& &! #"* +(#" ) ( # +.-%* $* 0 *&%( &! #"* & #)/ *#*4/ *# # %&'#"*$%+ +B+%) &!C-.&# &(%# 4 # ,A&090 %& $* *1 ##*& %+ B CO B C B908C 1"** 0 *# $* % (*+" $#% &*' $ +.$' / ' &! &* .+ &! #"* +.$2 ' / + & .)*+0 #"* & #) / *# *+ #"* (*+" %* ))*#*' & % / *# , #"*& O B90C 1"** + #"* +.$' / + & B*>&*(*& #C (%# 40 1 */ *, #"* & #) (*+" "%+ #"*+%(*) ( #+.-%*B%+ # +$#% &*'/ %&*+.$' / + &+#*&#"*& #)(*+" C %&' "*&* #"*+%(*) ( #+.-%* %& $*1 ##*& %+ B C O B C O B C B907C PAGE 133 1"** 8 +%))*# &-$%+ +B+%) &!C-.&# &++%&& &!#"*+%*'*>&*'$ 0 ( A&0908 %&'A&0907, # +$ / .+ #"%# B CO B C B90=C 1" " *++*& # %)) (*%&+ #"%# #"* +%) &! -.&# &+ %# +.$' / + & )*/ *) 8 %& $* *42 *++*' %+ % ) &*% ( $ &%# & #"* +%) &! -.&# &+ %# +.$' / + & )*/ *) , 0*0, B C B C0 " + %& $* !*&*%) 6*' #"* +.$' / + & )*/ *)+ %+ 1 *)), %&' "*&* +.$' / + & &%#.%)) )*%'+ # % &*+#*' +%* +*A.*&* B C B C B C 1" " 1 )) $* .# ) 6*' ( .)# *+).# & %&%)+ + & %$ #% (%& 2 -)'+0 90707 &&* '.# "* &&* '.# +*' & #))& #6 *# %)0 M7N + .+*' & #" + ' ++*#%# &0 %&' %* # 1 -.&# &+ '*>&*' & #"* '(% & , #"*& #"* &&* '.# 3 9 +! / *& $ 3 9 O & ! B C & B C B C B90:C 1"** B C + #"* +*# B# %&!.)% A.%' )%#*%), '**&' &! & #"* +.$' / + & + "*(*C-%*+ &#"*& #)(*+" , +%-%* &#"*+*# B C, ! B C +#"*%*%#"* -%* %&' +#"* .+.%)' ?**& # %)%*% & 0 PAGE 134 S1 S S0 p p p4 2p3 1 !.* 90;0 .$' / + &*>&*(*& # -% #*#%"*'&0 9070= #"!&%).-%* % / *)*#+ & $ #%%& -)' "* $ #"!&%)1 % / *)*#+ ' +.++*' "** %& $* '*/ *)*' -%& +.$' / + & + "*(* &!*&*%)0 1 */ *,+(*( &(' >%# &+%*&**'*' &+(*+ #.%# &+0 "* &+#.# & + $%+*' & #"* ) -# &! + "*(* M=N 1"** >+# J)%6K 1 % / *)*#+ %# )*/ *) %* &+#.#*' .+ &! +(* +%) &! -.&# &+ %# )*/ *) , %&' #"*& #"*+* 1 % / *)*#+ %* J) -#*'K + #"%# #"* $*(* %+ #"!&%) %+ '*+ *' # #"* +%) &! -.&# &+%#)*/ *) 0 "*+*&*#+ %*'*+ $*'$*) 1.+ &!%+ ()**4%()*0 (*'*#% )*'' +.++ & & #" + &+#.# & %& $* -.&' &#))& #6*# %)0 M7N0 *# ,%++" 1& & !090;,$*%B#*#%"*'%)C& #)(*+"1" "1"*&*>&*' .+ &!+(*+.$' / + &.)*+)*%'+#%+(#"+.-%* &#"*) ( #0 "* +.$' / + & .)*+*>&**% "# %&!.)%-%* & #-.# %&!.)%-%*+$ & #'. &!&*1/ *# *+ *+&' &!#*% " *'!* &#"* (*+" %++" 1& & !090;0 *# #"*+(#"+.-%* &#"*) ( #$* B'*&#*'$ & !090;C0 *# $*#"*))*# &--.& #) / *#*4 + # &+ '*>& &! #"* & #) (*+" 0 1, #"** *4 +#+ +%) &! -.&# &+ 6 B C, , %++ %#*' 1 #" *% " / *#*4 , O :, +. " #"%# #"* +%& #"* PAGE 135 78 +%* B C0 "*+* +%) &! -.&# &+ '**&' & #"* +.$' / + & + "*(* & / )/ *' %&'(% (% &#"% / *%&%)# *4*++ &+0 "*+* +%) &!-.&# &+%*))*#*' & B C O M 6 B C 6 B C 6 B C 6 B CN0 "* +(#" ) ( #+.-%* %& $* 1 ##*& %+ O B C B90;C 1"** 0 "* & #) (*+" + $#% &*' $ +.$' / ' &! #"* & #) (*+" &*0 "* #*& & #) / *# *+ #"* (*+" %& $* %#*! 6*' & # # 1 )%++*+ E BC -. & #) / *# *+ *+&' &! # #"* -. & #) / *# *+ & ! &%) (*+" B#"* >))*' '#+ & !090;C %&' B7C + 4 & #) / *# *+ *+&' &! # #"* + 4 *'!*+ & ! &%)(*+" B#"*.&>))*''#+ & !090;C0 -#"*& #)/ *#*4+ # &+ #"* (*+" %* ))*#*' & +. " #"%# #"* J)'K/ *# *+ *+&' &! # #"* / *# *+ & #"* ! &%) (*+" **'* #"* J&*1K / *# *+ *+&' &! # #"* *'!*+ &#"* ! &%)(*+",#"*& O O # B909C 1"** +#"*+.$' / + &(%# 4,%&' # %&' %*# &+-#"*+.$' / + & (%# 4 #"%# *&'* .)*+ # $#% & #"* J)'K %&' J&*1K / *# *+ *+*# / *) 0 %+ + -.&# &+*+&' &!##"*/ *# *+ & %&$*))*#*' & B C O M # B C B CN O M 6 B C 6 B C 6 B C 6 B CN, 1"** #"* >+# -. $%+ + -.&2 # &+ %* %++ %#*' 1 #" )' / *# *+ %&' #"* )%+# + 4 $%+ + -.&# &+ %* %++ %#*' PAGE 136 7 1 #" &*1 / *# *+0 "* +%(* +(#" ) ( #+.-%* %& $*1 ##*& %+ O B C B90 PAGE 137 77 %&' %* ! / *&$ O # ! O B # C B # C ! B90C "* )%61 % / *)*# &+#.# &'*/ *)*'"**%&$*!*&*%) 6*'-%& +.$' / + & )*/ *) & %+#% !" #2-1 %'(%&&*0 "* +& #"*+ + %&' %&%)+ +>)#*+ %# )*/ *) % +.$' / + &+ "*(* %& $* 1 ##*& %+ M N O # ! B9078C %&' O # ! O B # C B # C ! B907C *+*# / *) , 1"** # *&'*+ +.$' / + & .)*+ $#% & &! J)'K / *# *+ %# 2 #" )*/ *) *+&' &! # #"* / *# *+ & #"* B C2#" )*/ *) & #) (*+" %&' *&'*+ .)*+ -$#% & &!#"* #"*J&*1K /*# *+ & #"* 2#")*/ *) & #)(*+"0 # (% $* &#*' #"%# #"* )%6 1 % / *)*# &+#.# & )*%'+ # +%+* +& #"*+ + (%# *+0 1 */ *,#"**+&' &!%&%)+ +>)#*+(% &#$*+%+* &!*&*%)%+ & / *+* # +&# &**++% )+%+*0 " + () *+#"%#*/ *& #".!"#"*+& #"*+ + %& $* '&* & ) &*%# (*1 #" *+*# ##"* & .( $* -/ *# *+, #"* ()*4 # #"*%&%)+ +'**&'+&" 1-%+##"* & / *+*%&$*(.#*'0 "*+& #"*+ +%&&# $* '&* & ) &*%# (* & %+* % 4 (%# &!+.$' / + & + "*(*+0 1 */ *, # PAGE 138 7= a bWavelet associated with the edge connecting aandbLazy : the scaling function associated with the introduced vertex at higher level Lifted : the scaling function associated with the introduced vertex at higher level ( weighted combination of the scaling functions associated with the solid vertices ) !.*9090 % / *)*# &+#.# &0 +%& '*& # # (%# 4& #*)%#+.$' / + &+ "*(*+,%&'"*&*$#"+& #"*+ + %&' %&%)+ + %& $* '&* & ) &*% # (* & #*)%# +.$' / + & + "*(*+0 "* + () >*' *4*++ &+ #"* +& #"*+ + %&' %&%)+ + >)#*+ & %+* & #*)%# +.$' / + &+ "*(* %*! / *& $ M N O ! ! B9077C %&' O ! ! B907=C *+*# / *) 0 PAGE 139 7: "* )%6 1 % / *)*#+ %* *%+ # &+#.#0 1 */ *, % ) 1 * *+).# & (*+" $#% &*' .+ &! #"* %&%)+ + >)#*+ #"* )%6 1 % / *)*# &+#.# & + -% -( #"* )*%+#2+A.%*+2$*+#% 4 (%# &0 %61 % / *)*#+%#+(*)*/ *)B C%*& 1"**2 #"!&%)# 0 "*) -# &!+ "*(*M=N ( / *+#"*)%61 % / *)*#+%#)*/ *)B C$ +.$#%# &!%) &*( $ &%# &-#"*%+*)*/ *)+%) &!-.&# &+1" " / *)%# %! / *& 1 % / *)*#0 "* *+.)# &!1 % / *)*# -.&# &$*(*++(*1"%#(*#"!&%) ##"*%+*)*/ *)+%) &!-.&# &+#"%&#"* ! &%))%61 % / *)*#0 %#"*(%# %)) , % J) -#*'K1 % / *)*# %# )*/ *) B C%& $* *4*++*' %+ 7 B C O 7 B C 6 B C O 6 B C 6 B C B907:C 1"** 2#" )%6 1 % / *)*# -.&# & %# )*/ *) B C + #"* +%) &! -.&# & %++ %#*' 1 #" #"* 2#" J&*1K / *#*4 %# )*/ *) , %&' " + *+# #*' # % -*1 /*# *+ %# )*/ *) B C &#"*&* !" $"'-#"* 2#"&*1/ *#*4%#)*/ *) B !0909C0 &'*#!*# #"* / %).*+ #"* ) -#*' 1 % / *)*# , % ) &*% ++#*( *A.%# &+ + '* / *' %&' +)/ *' & % )*%+# +A.%*+ +*&+* $ (+ &!#"* &+#% & #+ 37 B C 6 B C 9 O 8 %)) , +. " #"%# #"* +.#+ 7 B C %&' 6 B C /*)%0 "* & .( $* &&26* *& # *+ + & &**'+ # $* & #))*'0 )%!* & .( $* &&26* *& # *+ 1 )) )*%' # % ) -#*' 1 % / *)*# -.&# & #"%# + &*%) #"!&%) # #"* %+* )*/ *) +%) &! -.&# &+, %# #"* +%(* # (* #"* ( .)# *+).# & %&%)+ + 1 )) $*(* (* # (* &+.( &!, %&' "*&* % #%'*? &**'+ # $* '* '*' %+ -% %+ #"!&%) # %&' # (* (.#%# & + &*&*'0 & #))& #6*# %)0 M7N, J32' +3 1 % / *)*#+K %* PAGE 140 7; &+#.#*'-# %&!.)%(*+"2$%+*'+.$' / + &+ "*(*+1"**#"*&&26**& # *+ %**+# #*'##"*/ *# *+%#)*/ *)B C1" "%*1 #" &#"* 2&* !" $"' #"* 2#" J&*1K / *#*4 %# )*/ *) 0 "* *%'* + *-**' # #))& #6*# %)0 M7N #"* '*#% )+ #"* &+#.# &0 &* #"* &&26* / %).*+ %* (.#*', #"* %&$*%++*( $)*'#%(%# 4 " 0 "*&,#"**4*++ &+-#"*+& #"*+ +%&'%&%)+ + >)#*+ -#"* ) -#*'1 % / *)*# + "*(* %& $*1 ##*& %+ M N O M " N B907;C%&' O G " B9079C *+*# / *) 0 90= .)# *+).# &**+*& #%# & "*( .)# *+).# &%&%)+ +&%$ #%(%& -)'1 %+'*/ *)*'#$#% &!' ) 1 *+).# & % 4 (%# &+() %#*'(*+"*+0 " + + % #2' 1& #* "& A.* 1"** &* +#%#+ 1 #" % () %#*' %$ #% #)! (*+" %&' !*+ & $#% &2 &! ) 1 * *+).# & (*+"*+ .+ &! %&%)+ + >)#*+0 "* () %#*' (*+" & 1" " ( .)# *+).# & %&%)+ + + %) *' %& $* *&+#.#*' .+ &! #"* +& #"*+ + >)#*+0 & #" + ' ++*#%# &, #"* ( .)# *+).# & #* "& A.* + .+*' & % & / *) $##(2. %2 % "1"**%&*/ )/ &!& #)(*+"-%'&%( +.$' / + &+.-%* ++.$' / '*' %#*A. ) $ .(#$#% &(*'*!**+--**'(,%&'#"*&,#"**+.)# &!& #)(*+" +#*%#*'%+#"**/ .+& #)(*+"%&'%))*# &-'*#% )B1 % / *)*#C*Ã† *& #+0 PAGE 141 79 -.+*,#"*'*#% )*Ã† *& #+%*6*1"*&%&& #)(*+" +*)%*'$ %&#"* & #)(*+"$#% &*'$ %.*+.$' / + &+#*&#"**/ .+(*+",$.#$*(*+ &&26*%+#"*&*1 & #)(*+"B**+*& #*' %+*/ .+& #)(*+"%&'1 % / *)*# *Ã† *& #+C*/ )/ *+ / *# (* &*+&+*1 #"#"*+& #"*+ 6*'-*%) %# &0 " + '*% + -.#"* )).+#%#*' &#"* *+# -#" ++*# &0 *# $* % +(#" ) ( # +.-%* $#% &*' / % &>& #* & .( $* +.$' / + & +#*+&%& & # %)(*+" ,1"+*/ *#*4+ # &+%*))*#*' & 0 +(*& # &*' *%) *,#"* ) ( #+.-%* %& $* 1 ##*&%+ O B907 PAGE 142 7< .+ &!#"*+%(*$%+ +-.&# &+%+#"%#,#"*'*!**+--**'(*(% &+#"*+%(* %+#"%#0 A&0907%&$*(' >*' &#"*-)) 1 &!(%&&*+#"%# #.+*++%(* $%+ + -.&# &+ %&'+%(* & .( $* -'*!**+ --**'(%+ #"%#0 O M N B90=8C 1"** + #"* ))*# & 1 % / *)*# *Ã† *& #+ 1"+* / %).*+ %* 6*, %&' %* #"* +& #"*+ + (%# *+ %&' *+*# / *) 0 "* %$ / * -( .)%# & *)'+ %( .)# *+).# &**+*& #%# &-#"*& #)(*+" $#% &*'/ %&*+.$' / + & +#*&#"**/ .+&#)(*+" 0 "*(*+" +**+*& #*' %+%(*+"%#)*/ *) 8 %)&! 1 #" #"* '*#% ) B1 % / *)*#C *Ã† *& #+ %# )*/ *) 80 + (*& # &*' *%) *, #"*+* *Ã† *& #+1 .)'$*(*&&26*1"*&#"*+(#") ( #+.-%*'*-(+ / *# (* '.* # +& #"*+ 6*' -* %) %# &0 ( )%)%-#* &* (* +.$' / + & +#*, #"* &*1 & #) (*+" %& $* / *1 *' %+ & #) / *#*4 + # &+ %# )*/ *) 8, 1 % / *)*# *Ã† *& #+ %#)*/ *) 8%&' 1 % / *)*# *Ã† *& #+ %#)*/ *) , %&' %& $* 1 ##*& %+ O O M N O M N ! B90=C PAGE 143 7 1"** + #"* ))*# &$%+ + -.&# &+ %# )*/ *)7, , %&' %* #"* & #) / *#*4+ # &+%#)*/ *)7,%&'8*+*# / *) , %&' %*#"*1 % / *)*#*Ã† *& #+ %# )*/ *) %&' 8 *+*# / *) , ! + #"* '*& # # (%# 4 %&' + #"* 6* (%# 40 " + '*%%&$*!*&*%) 6*'-%& #)(*+" $#% &*'%-#* 2#"+.$' / + &%&'#"* *+&' &! *4*++ & %& $*1 ##*& %+ O B90=7C 1"** B C OM N, %&' O M N ! ! ! ! ! 0 "* ( .)# *+).# & '&%( + + '*/ *)*' .+ &! #" + -( .)%# & & #"* &*4# +*# &0 90: &%( + "*+(#") ( #+.-%* %&$*(%'*'&%( -#"*& #)/ *#*4+ # &+ %# )*/ *) 8 %&' 1 % / *)*# *Ã† *& #+ %# )*/ *) 7 B C %* -.&# &+ # (*0 "* / *) # #"* +(#" +.-%*, & #))*' $ #"* (*+" $#% &*' #".!" +#*+ ('*)+.$' / + &, +! / *& $ S B C O B C S B90==C PAGE 144 7 1"** #"* / *+#. 3 '# '*&#*+ #"* # (* '* / %# / * %&' 0 "* %!%&! %& (# & *A.%# & B*-* # A&070;C %& $* '* / *' & % + ( )%-%+" & %+ (*& # &*' &*%) * "%#*+, %&' + ! / *& $ Q G S G O B90=:C 1"** , %&' %*#"* 2#")*/ *)(%++,'%( &!%&'+# ?&*++(%# *+*+*2 # / *) %&' + #"* !*&*%) 6*' -* / *# %# )*/ *) 0 B C + #"* (%++ '*&+ # #"* +.$' / + &+.-%* ('*),#"*& #"* (%++(%# 4%# 2#" )*/ *) +! / *& $ O B CB C B B CC B C "* '%( &! (%# 4 %& $* '* / *' & % + ( )%-%+" &, 1" )* #"* +# ?&*++ (%2 # 4 %& $* $#% &*' -)) 1 &! #"* #* "& A.*+ '*+ $*' & *# & :0=070 "* !*&*%) 6*'-* / *# %#)*/ *) %& $*1 ##*& %+ O B C B B CC B C 90; ()*(*& #%# &*#% )+ .)# *+).# & **+*& #%# & #"* */ )/ &! & #) (*+" % " */ *+ %+*2#2 >&* %+ 1 *))%+>&*2#2%+* (%& .)%# &-#"* +(#") ( #+.-%*0 *4%()*, #"* .+* +#%#+ 1 #" % '*-(%$)* +(#" +.-%* 1 #" % + ()* & #) (*+" %&' ' *#) (%& .)%#*+ #"* ) ( #+.-%* $ %) &! +& #"*+ 6*' -*+0 "*& %& PAGE 145 =8 *A. ) $ .( +$#% &*',#"*.+*%& &*%+*#"*'*!**+--**'($ +1 # " &!# % & #) (*+" 1" " + #"**# %)) $#% &*' $ %) &! &* +.$' / + & +#* & , $.# **+*& #*' %+ % ))*# & / *#*4 + # &+ & %)&! 1 #" 1 % / *)*# *Ã† *& #+ %# )*/ *) 8 &**'*' # *&+#.# 0 "* 1 % / *)*# *Ã† *& #+ %* 6* %# #"* & # +1 # " &!, $.# $*(*+ &&26* %+ #"* & #) (*+" , **+*& #*' %+ (*& # &*' %$ / *, */ )/ *+ / * # (*0 "* .+*%& -.#"* &*%+* #"* '*!**+ -**'( # $#% & (* )%) 6*' *?*# $ & #'. &! & #) (*+" 1" " + **+*& #*' %+ & #) / *#*4 + # &+ (*+" , %)&! 1 #" 1 % / *)*# *Ã† *& #+ %# )*/ *) 8 %&' 0 " .+ #"* .+* %& "% / * %+*2#2>&* (%& .)%# & #"* +(#" ) ( # +.-%*0 " + -% ) # + %)+ *+*& # & #"* ( .)# )*/ *) '&%( + %% " %+ (*& # &*'*%) *0 1 */ *,#"*( .)# )*/ *)'&%( +%% "'*+&#+.#>&*2 #2%+* (%& .)%# & R # -% )+ #"* .+* 1 %&#+ # %) +& #"*+ 6*' -*+ & % %+* & #)(*+" %# )*/ *) %-#* ( / &!. # )*/ *) G 0 " + %& $* % " */ *' &( .)# *+).# &%% "$ + ().+ &!#"*'&%( *A.%# &-(# &%#)*/ *) , %&' %) &! +& #"*+ 6*' -*+ & % +(#" ) ( # +.-%* 1" " + $#% &*' $ ( .)# *+).# & +& #"*+ + .+ &! J# (* / % &!K & #) / *#*4 + # &+ %# )*/ *) 8 %&' 1 % / *)*# *Ã† *& #+ %# )*/ *) 8 B C %&' J+#%# K 1 % / *)*# *Ã† *& #+ %# )*/ *) B GC B G C0 #"* .+* +1 # "*+ $% 3 # )*/ *) B G C, #"*& #"* & #) / *#*4 + # &+ %# )*/ *) 8 %+ 1 *)) %+ %)) #"* 1 % / *)*# *Ã† *& #+ %# )*/ *) 8 B C B GC B G C $*(* -.&# & # (*, %&' #"* ++#*( +1 # "*+ $% 3 ##"* (# &*A.%# &-)*/ *) B G C0 PAGE 146 = "* %#.%) ()*(*& #%# &' ?*+ +) !" #)-( #"* -( .)%# &# % " */ * *Ã†2 *& &%+*2#2>&*%&'>&*2#2%+*(%& .)%# &0 &#"* ()*(*& #*'++#*(, #"*.+*+#%#+.#1 #"%+(#") ( #+.-%*1" ""%+%+ ()*& #)(*+"1 #" / *-*1'*!**+--**'(0 "*('*)! 1+%&'1"*&#"**A. ) $ .( +% " */ *', &* +#* +.$' / + & *)'+ )%!* '*!**+ -**'(0 " + )%!* '*!**+ -**2 '( %* #"* & #) / *#*4 + # &+ & #" + >&* *+).# & %&' &# & #) / *#*4 + # &+ &) 1 * *+).# &%)&!1 #" 1 % / *)*# *Ã† *& #+ &#"%# ) 1 * *+).# &0 "* ('*) %& ! 1 -.#"*, %&' (* +.$' / + & +#* + &**'*' # &*%+* #"* '*!**+ --**'(, # +"%&')*' &%+ ( )%-%+" &0 -%# %& *#% & & #-# (* #"* .+* &**'+ #! $% 3 # % %+* )*/ *) & #) (*+", 1 % / *)*# '*(+ # & + '&*&#"*" !"**+).# &$%+*(*+"0 " +'*(+ # & *)'+/ *#*4+ # &+ & #"* %+* )*/ *) (*+" B1" " $*(*+ #"* &*1 $%+* (*+"C %&' &&26* 1 % / *)*# *Ã† *& #+0 "*) 1 **+).# &(*+"*/ )/ *+ 1 #"# (*'.*##"*-*%) *'& #"*) ( #+.-%*0 #(% $*&#*'#"%##"*) ( #+.-%* &#" ++*&% +$#% &*'$ ' &! 1 % / *)*# *&+#.# & 1 #" &&26* 1 % / *)*# *Ã† *& #+ %# +(* )*/ *)+0 "* .+* %& "+* -.#"* %+* )*/ *)& #)(*+" $ **%# &!#"* +%(**++0 & #"* ()*(*& #*' ++#*(, #"* .+* %& % " */ * !)$%) '*-(%# & & % '*2 #% )*' (*+"$ ! &! ' 1& .)* )*/ *)+ .+ &! 1 % / *)*# '*(+ # &, *#% & &! #"* 1 % / *)*# *Ã† *& #+, %&' %) &! -* & #"* ) ( # +.-%* B$#% &*' #".!" 1 % / *)*# *&+#.# & *++C %&' )*## &!#"* %+* )*/ *) (*+" */ )/ *0 ( )%) , #% " */ *)%)'*-(%# &&%%+*(*+",#"*.+*%&( / *..)*-+#*+ PAGE 147 =7 $ ' &! +.$' / + & B%&' %'' &! &&26* 1 % / *)*# *Ã† *& #+ %# " !"* )*/ *)+, *+*& #C %&'%) &!+& #"*+ 6*' -*+ &#"* *! && #**+#0 "* -( .)%# & .+ &! 1 % / *)*# **+*& #%# & "%+ (%#"*(%# %) & *# *+, $.# &*Ã† *& #()*(*& #%# &.+*+0 "*+& #"*+ 6*'-* +%) *'&#"*) ( # +.-%*0 */ %).%#*#"*) ( #+.-%*,1 % / *)*#*&+#.# &&**'+#$*'&*%#*% " # (*+#* +#%# &! -(#"* ! &%)& #) (*+" .# %+* >*' )*/ *) -%&*4) # 1 % / *)*# **+*& #%# & #"* */ )/ &! & #) (*+" + (% & #% &*' %+ (*& # &*' & #"* -( .)%# &0 & #"* #"* "%&', -#"* */ )/ &! (*+" + & #)/ *#*4+ # &+ %# #"%# *+).# &, #"*& #"* 1 % / *)*# *&+#.# & +#%#+ -( #"%# *+).# & */ %).%# &! #"* ) ( # +.-%*0 % / *)*# '*(+ # & &**'+ # $* '&* 1" )* ! &! ' 1&-(>&*#%+**+).# &,$.##" +"%*&+&)&* &%1" )*,%&'&# %#*% "# (*+#*0 "**-*,#"* ()*(*& #*'/ *+ & +( . "(**Ã† *& #0 #(% $* &#*' #"%# #"* (# & *A.%# & %# %& )*/ *) + ()*(*& #*' .+ &! >& #* *)*(*& # #* "& A.*+ ' +.++*' &*%) * "%#*+ / % .++.$' / + & + "*(*+0 PAGE 148 < "*% " #*#.*-#"*## *++#*( +'*+ $*' &#" + "%#*0 "*$%+ $. )' &! $) 3+ #"* ++#*( %* ' ?**& # ('.)*+ *-( &! ' ?**& # #%+3+0 "* / *%))% " #*#.* -#"* ++#*( ++" 1& & !0<00 "*.+*>+# / '*+#"* &.#%$.##"*!*(*#%&'#)!-#"* & # %) (*+"0 %)) #"*+* &-(%# & &+ +# +(* # * &&*# / # &-(%# & %&' & #) / *#*4 + # &+ & =0 "* #)! %) &-(%# & *++ &! ('.)* '* / *+#"*&**++%#)! %) &-(%# &-(#"*! / *& &.#'%#%,%&'%++*+ %))#"* &-(%# &##"*+.$' / + &('.)*0 "*+.$' / + &('.)**-(+*2 +* >*'& .( $*-+.$' / + &+#*+&#"* & # %)(*+",%&'#"*&#"*>& #**)*(*& # %&%)+ +('.)*(.#*+' ?**& #*)*(*& #%)(%# *+&**'*' $ #"*.'%#**&! &*0 "* .+* %& %) ' ?**& # # *+ +& #"*+ 6*' -*+ & #"* ) ( # +.-%*, %&' #"* ('*) + &+#%& #) .'%#*' #$#% & %& *A. ) $ .( + # &0 "* .'%#*' &-(%# & + %++*' # #"* ' +)% ('.)* 1" " *&'*+ #"* '*-( &! +(#" +.-%* & #"* +**&0 "* .+* + %)+ %)) 1 *' # "+* ' ?**& # ('*) %%(*#* / %).*+) 3 *(%++'*&+ # ,'%( &!'*&+ # ,+ &!&+#%& #+*#0 *#% )+-#"*+* > ('.)*+%* / '*' &#"* *+# -#" + "%#*0 == PAGE 149 =:Input : Geometry & Topology Information Input : Data for Force Field Synthesis Force Synthesis Module Multilevel Analyzer Multiresolution Analyzer Numerical Analysis Toolkits Update Engine Module Display Finite Element Analysis Module Subdivision Module Topological Information Processing Module !.*<00 +#*( % " #*#.*0 PAGE 150 =; <0 )! %)&-(%# &*++ &! '.)* & #"* ()*(*& #*' ++#*(, #"* .+* &**'+ # / '* #"* &&*# / # #"* & # %) (*+" $ ) +# &! #"* / *# *+ */ * -%*0 "* / *#*4 &-(%# & % -%* ( .+# $* / '*' & %& '*) -%+" & B* #"* ) 31 +* %& # 2) 31 +*C0 "* #)! %) &-(%# & *++ &! ('.)* '* / *+ #"* &**++% &-(%# & ) 3 * / *#*4 &&*# / # &-(%# & #"* *'!*+, *'!* &&*# / # &-(%# & #"* -%*+ *#0 -(#"* &.# / '*' $ #"* .+*0 <07 .$' / + &'.)* " + ('.)*%) *+' ?**& # +.$' / + &.)*+#*>&* %& &.#& #)(*+"0 .*& #) , %#( .))2)%3%&' (' >*' $.##*D +.$' / + & + "*(*+ %* +.#*' & #"* ++#*(0 #"* +.$' / + & + "*(*+ %& %)+ $* *%+ ) &%#*'0 "* +.$' / + & + "*(* % +* > %) %# & + "+*& $ #"* .+*0 1 */ *, #"** %* *#% & &"**& # *+# # &+ '**&' &! & #"* "+*& +.$' / + & + "*(*0 *4%()*, $.##*D +.$' / + & + "*(* %& $* "+*& &) #"* & # %) B& #)C (*+" "%+ # %&!.)% -%*+0 &* #"* .+* / '*+ &.# %$.# #"* & # %) (*+" %&' #"* "+*& +.$' / + & + "*(*,#" + ('.)* #"*& +.$' / '*+ #"* & # %) (*+" % *2+* >*' & .( $* # (*+ # $#% & % " !" *+).# & (*+" 1" " *?*# / *) % 4 (%#*+ #"* +(#") ( #+.-%*0 <0= & #*)*(*& #&%)+ +'.)* "* >& #* *)*(*& # %&%)+ + ('.)* '*#*( &*+ #"* # * >& #* *)*(*& # # $* .+*' %&' #"* ##%) & .( $* *)*(*& #+ '*+ $ &! #"* +(#" ) ( # +.-%*0 # (.#*+ %)) *)*(*& #%) (%# *+ +. " %+ (%++, '%( &! %&' +# ?&*++ (%# *+, %+ PAGE 151 =9 1 *)) %+ '*#*( &*+ #"* +*# / *# *+ & #"* & # %) (*+" & #)) &! *% " &' / '.%) *)*(*& #0 " +('.)*%)+ / '*+#"* &-(%# &%$.##"*!)$%)(%++,'%( &! %&' +# ?&*++ (%# *+ 1 #".# %#.%)) %++*( $) &! #"*( -( &' / '.%) *)*(*& #%) (%# *+0 <0: *& #"*+ + '.)* "*.+*%&%)/ % .+# *+--*+&#"*+(#") ( #+.-%*0 .*& #) + &! -*+, $%))& -*+, %&' (%!* !%' *& #2$%+*' -*+ %* $* &! +.#*'0 #"* # *+ -*+ %& %)+$* *%+ ) &%#*'0 "* .+* %) *+ + &!-*+ & #"* ) ( # +.-%* $ / ' &! & #+ & = -( 1" " #"* + &!+ &**' # $* %##% "*'0 "*= & #+* >%# & +'&** #"* & #*%# / *)-((.+* &.# -(>)*+0 %)$%))&-*+, #"* .+* &**'+ # +* 1"*#"* #"* $%))& &! -* + # &D%#* #"* ('*) # '*D%#* #"* ('*)0 ).(* (%!*+ %* / '*' %+ &.# # %) (%!* !%' *& #2$%+*' -*+0 '*#% )*' ' +.++ & & #"*+* -* %) %# &(*#"'+ 1 %+ / '*' &*# & =0=0:0 <0; '%#* &! &* -#* #"* .+* / '*+ %)) #"* &**++% &-(%# &%$.# #"* ('*) %&' #"* -* %) %# & (*#"', #"* .'%#* *&! &* &+#%& #) .'%#*+ #"* '&%( +.$2 ' / + & +.-%* ('*) # % " */ * %& *A. ) $ .( + # &0 "* ' +*# 6*' +*&' '* ' ?**& # %) *A.%# & (# & )*%'+ # +)/ &! % )%!* +%+* ) &*% ++#*( *A.%# &+0 &5.!%#* !%' *& # M=:, <;N, %& #*%# / * ) &*% ++#*( +)/ *, + .+*' #" + .+*0 "* .+* %& "+* * #"* ( .)# )*/ *) '&%( + ( .)# *+).# & PAGE 152 =< '&%( +%% ",%&'#"*.'%#**&! &*%' &!) "+*+ %)! #"(+1"*& #"* '*!**+ -**'(-#"* */ )/ &!+.-%* ('*) + "%&!*'0 <09 +)% '.)* "* .'%#* *&! &* &+#%& #) .'%#*+ #"* '&%( ('*), %&' #"* *)*/ %& # !*(*# %&' #)! %) &-(%# & +%++*' # #"* ' +)% ('.)**&'* &! #"* */ )/ &! +(#" +.-%*0 "* ' +)% ('.)* .+*+ *& !%" + ) $% *+ *&'* &! .+*+0 # %)+ +*/ *+ %+ #"* &.# ('.)* (.+*2$%+*' .+* & #*%# &+0 PAGE 153 "* +*' '&%( -%(*1 3 *4#*&'+ #"* %) %# &%*%+ +.$' / + & +.-%*+$* &'#"*#%' # &%)('*) &!'(% &0 "*-%(*1 3*&"%&*+#"*+. #2 %$ ) # -+.$' / + &+.-%*+-!*(*# ('*) &!0 ##"*+%(*# (*,#"*+*' '&%( ('*)+%&$*.+*'-* / *-+"%*+-(%&!*%&'/ ).(*'%#%,&&2 ! ' (# & *+# (%# &, ( .)# *+).# & *' # &! %&' &%#.%) #*% & ('*) &!0 "* %) %$ ) # #"* '&%( ('*) & #"*+* %*%+ +-.#"* )).+#%#*' & #"* *+# #" + "%#*0 0 *(*# '*) &! "* +*' '&%( -%(*1 3 +.$' / + & +.-%*+ %& $* .+*' # *2 *+*& # % 1 '* / % *# %$ #% #)! %) +"%*+ 1 #" *(%3 %$)* *%+*0 & % # %) !*(*# ('*) &!%) %# &.+ &! '&%( +.$' / + &+.-%*+, #"* .+* %&+* -%& (*+"%+#"* & # %)B& #)C(*+",%&'#"**+&' &!) ( #+.-%* %& $* +.)#*' & #*%# / *) $ %) &! +& #"*+ 6*' -*+0 & '&%( +.$' / 2 + & +.-%* ('*) %& $* .+*' #"* ('*) &! .+*0 "* *4%()*+ +" 1& & #" + +*# & .+* '&%( %#( .))2)%3%&' '&%( (' >*'$.##*D +.$' / + & +.-%* ('*)+0 = PAGE 154 = !.* 00 B%C, B$C, BC %&' B'C E & # %) +"%*+ B$#% &*' %) &! %#( .))2)%3 +.$' / + &.)*+&& #)(*+"*+CFB*C,B-C,B!C%&'B"CE #"**+&' &!(' >*' +"%*+ %-#* & #*%# / *-* %) %# &0 PAGE 155 :8 +#,'&%( %#( .))2)%3+.-%*('*)+%+*+*& #*' &"%#*=%*.+*' -+"%* ('*) &!0 "* +* %)*)*(*& #+ &#"* ) ( #+.-%* %*'%3)+"%'*' %&' #"* &(%) *)*(*& #+ %* ) !" #) +"%'*' & %)) #"* ('*) &! *4%()*+0 # (% $* &#*' #"%# #"* -( .)%# & *+*& #*' & "%#* ;, 1" " 1 )) "% / * &) &* # * >& #* *)*(*& # & #"* ) ( # +.-%*, %& $* .+*' %+ 1 *))0 & !00, +*/ *%) & # %) +.-%*+$#% &*'-(' ?**& #& #)(*+"*+.+ &!%#( .))2)%3+.$' / + &.)*+ %&'#"**+&' &!(' >*'+.-%*+%-#* & #*%# / *+ &!-*%) %# &%* +" 1&0 "%&!* #"*+"%*-%& & # %)+.-%*, + &!+%*%##% "*'-(' ?**& # & #+ & = # #"* &*%*+# & #+ & #"* ) ( # +.-%* +. " #"%##"* ) ( # +.-%* '*-(+ # 1 %'+ #"*+* & #+ !*&*%# &! #"* '*+ *' +"%*0 & !00B%C, %& *& +.-%* '*>&*' $ %& & # %) (*+" 9 / *# *+ %&' :; -%*+ + +" 1&0 "* (*+" "%+ &* *4#%' &% / *#*4 '*!** ;0 " + ) ( #+.-%* + (' >*'$ %) &! + &! -*+ & #*%# / *) , %&' #"* (' >*' +.-%* + '* #*' & !00B*C0 #.+,'*>&*'$ %& & # %)(*+"-=7/ *# *+%&'=7-%*+,%&' #+(' >*'+"%* + +" 1& & !00B$C%&'B-C*+*# / *) 0 "* & # %)(*+"-#"*+(#") ( #+.-%* +" 1& & !00BC "%+ ;:: -%*+ %&' ;:7 / *# *+, #"*( %* *4#%' &% / *# *+ '*!** ;0 "* ) ( # +.-%* + (' >*' &#*%# / *) $ %) &! + &! -*+ -( / % .+ & #+ & = %&' #"* (' >*' +"%* + '* #*' & !00B!C0 #*#"%##"**4#*& # -'*-(%# &"%+$**& & #*%# / *)& #))*'$ / % &!#"* +# ?&*++ #"* %##% "*' + &!+0 "* .* # & #"* ) ( # +.-%* "%+ $**& '*-(*' $ %) &! + &! -*+ " !"* (%!& #.'*, 1"**%+ #"* ) 1 * # & "%+ $**& (' >*' $ %) &! + &! -*+ ) 1 * (%!& #.'*0 "* +*%' #"* PAGE 156 : !.*070 B%C,B$C,BC%&'B'CE & # %)+"%*+B$#% &*'%) &!(' >*'$.##*D +.$' / + &.)*+&& #)(*+"*+CFB*C,B-C,B!C%&'B"CE #"**+&' &!(' >*' +"%*+ %-#* & #*%# / *+.)# &!/ %-* %) %# &0 '*-(%# & *?*# + )*%) )%!* & #"* )%##* %+* $ / .+ *%+&+0 &%)) , % D%#+"**# '*>&*' $ %& & # %)(*+"-9:-%*+ %&' / *# *+, +" 1& & !00B'C, + '*-(*' & #*%# / *)#$#% &#"* "%#2) 3 *+"%* +" 1& & !00B"C0 *4#, +"%* ('*) &! *4%()*+ .+ &! #"* '&%( (' >*' $.##*D +.$' / 2 + & +.-%* ('*) %* +" 1&0 "* ) ( # +.-%* "** &+ +#+ % + &!)* # * +(#"# %&!.)%>& #**)*(*& #%# "*+, *+*# / *-#"*& .( $*-*4#%' &% / *# *+ &#"*& #)(*+"0 & !007,+*/ *%) & # %)+.-%*+$#% &*'-(' ?**& # PAGE 157 :7 & #) (*+"*+ .+ &! #"* (' >*' $.##*D +.$' / + &.)*+ %&' #"* *+&' &! (' >*'+.-%*+%-#* & #*%# / *+.)# &!%*+" 1&0 +1 #"#"*'&%( %#( .))2 )%3+.$' / + &+.-%*+,#"*.+*%&%##% "+ &!+-(' ?**& # & #+ &=# #"* &*%*+# & #+ & #"* ) ( # +.-%* %&' #"* ) ( # +.-%* '*-(+ # 1 %'+ #"*+* & #+ # !*&*%#* #"* '*+ *' +"%*0 "* & # %)(*+" #"* +(#" +.-%* +" 1& & !007B%C "%+ 7; -%*+ %&' <9 / *# *+ B'*!**+ -**'(C, 1" " + '*-(*' ##"*+(#"+"%*+" 1& & !007B*C$ & #*%# / *+ &!-*%) %# &0 "* & # %)(*+" #"* )+*' .$*2) 3 * +"%* & !007B$C "%+ 7: -%*+ %&' : / *# *+0 " +.$*2) 3 *+"%* +'*-(*'##"*+"%*+" 1& & !007B-C0 "*&*")*#.+ & !007BC%&' #"* *+&' &! (' >*'+"%* & !007B!C"% / * & # %)(*+"*+ 1 #" 9: -%*+ %&' =7 / *# *+0 # 1 ")* #.+ 1 #" % & #) (*+" 7<7 -%*+ %&'=:/ *# *+,+" 1& & !007B'C, +'&%( %))+.)#*'##"*+"%* +" 1& & !007B"C0 07 "%* * / * -(%&!*%&' ).(*%#% "* '&%( +.$' / + & +.-%* ('*)+ %& * / * #"* .&'*) &! +"%* % ! / *& %&!* / ).(* '%#% +*# & % " *% " %) -%+" &0 "* & # %) 6*' ('*) '*-(+.&'*#"* &D.*&*-#"*+& #"*+ 6*'-*+-(#"*%&!*/ ).(*'%#%0 "*& %& % 4 (%#* +"%* + * / **', % &*1 & #) (*+" %& $* $#% &*' $ ' &! &* +#* +.$' / + & & #"* & # %) (*+" #"**$ &*%+ &! #"* '*!**+ -**'(#**+*& # #"* +%(*) ( #+.-%*, %&'%$*##* >###"*! / *&%&!*'%#% +*# %& $* % " */ *'0 # (% $* &#*' #"%# #"* ('*) & # %) 6%# & + & #*%# / *, %&' #"* & # %) 6*'('*) %& "% / * %& & #) (*+" #"* '*+ *' !*& .+0 1 */ *, PAGE 158 := !.* 0=0 B%C %&!* '%#% % $.)$ %)&! 1 #" #"* & # %) 6*' ('*), B$C %& &2 #*(*' %#*+#%!* */ ).# &,%&' BC #"* >##*' '&%( %#( .))2)%3+.$' / + & +.-%* ('*)0 %& & # %)(*+" 1 #" -*1 '*!**+ -**'( .+.%)) *-(+ $*##* & #*(+ #"* (%# **+*& #%# & -#"* .&'*) &!+"%*0 & '&%( +.$' / + & +.-%* ('*) %& $* .+*' +"%* * / * 0 *4#, #"** *4%()*+ +"%* * / * -( %&!* '%#% +*#+ %* +" 1&0 "* >+# # 1 *4%()*+ .+* '&%( %#( .))2)%3 +.$' / + & +.-%* ('*) %&' #"* #" ' &* .+*+ '&%( (' >*' $.##*D +.$' / + & +.-%* ('*)0"* * & >#, 1" " + '*>&*' %+ #"* (%4 ( .( ' +#%&* $*# 1 **& % '%#% & # %&' #"* &*%*+# & # & #"*) ( #+.-%*%+%**& #%!*-#"*' %(*#*-#"*+(%))*+#+"***&)+ &!#"* $5*#, + % 4 (%#*) =V & %)) #"* *4* (*& #+ 1 #" %&!* '%#%0 "* # (* '&%( */ ).# &->## &!#"*%&!*'%#%+*#+ .+*' &#"**4* (*& #+ +% 4 2 (%#*)= ( & .#*+ &% 1 3+#%# &0 PAGE 159 :: !.* 0:0 B%C %&!* '%#% %& %& / ) %)&! 1 #" #"* & # %) 6*' ('*), B$C %& & #*(*' %#*+#%!*-*/ ).# &,%&'BC#"*>##*''&%( %#( .))2)%3+.$' / + & +.-%* ('*)0 !.*0;0 B%C %&!*'%#% -% "*%' %)&!1 #" #"* & # %) 6*'('*),B'C #"* >##*' '&%( $.##*D+.$' / + &('*),%&'BC/ +.%) 6%# &-#"*+"%*-(%&#"* / *1 & #0 PAGE 160 :; "**4%()*++" 1& & !00=%&' !00: & / )/ *'&%( %#( .))2)%3+.$2 ' / + & +.-%*0 "* +%(* +"%' &! & / *& # & &(%) %&' +* %) *)*(*& #+ %+ (*& # &*' *%) * + .+*'0 & $#" #"*+* *4%()*+, #"* & # %) 6*' ('*) "%' 9 -%*+ %&' / *# *+, #"*( $* &! *4#%' &% / *# *+ '*!** =0 "* >&%) >##*' ('*),$#% &*' #".!"&* +#* -+.$' / + &,"%+ %& #))!&-=: -%*+ 1 #" =9 / *# *+0 & !00=, #"* '&%( %#( .))2)%3 +.$' / + & +.-%* ('*) +>##*'#)%+*%&!*'%#%%A. *'-(( .)# )*/ *1+-%) !" #$.)$0 #%) &!#"*('*)>## &!%)! #"(,#"*'%#%1 **#%&+-(*' & #%+ &!)**-*2 *&*' &%#*++#*(0 "*('*)1 %+ & # %) 6*' &+ '*#"*888%&!*'%#% & #+ & #"*+.-%*-#"*$.)$0 &#"*&*4#*4* (*& #,#"*'&%( %#( .))2)%3+.$2 ' / + &+.-%* ('*) + >##*' # %& %& / )'%#%+*# B !00:C0 "* '%#%+*#"%+ 78= '%#% & #+0 # (% $* &#*' #"%# #"* >&%)+"%* 1 #" =V * #)*%&* .+*+ / * -*1 & #) & #+ **+*& #%# & & (% +& 1 #" #"* & .( $* '%#% & #+ *+*& # &#"* ! &%)%&!*'%#% +*#0 &#"*)%+#*4%()*1 #"%&!*'%#%+*#,#"*+"%*-%" .(%&"*%' +* / **' -( % %&!* '%#% +*# .+ &! '&%( (' >*' $.##*D +.$' / + & +.-%* ('*) B !00;C0 "* & # %) 6*'('*)"%+%& #)(*+"( + &!-7:# %&!.)%-%*+ %&' : / *# *+ 1"**%+ #"* & #) (*+" #"* >##*' ('*) "%+ =: # %&!.)% -%*+ %&' : / *# *+0 "* %&!* '%#% +*# "%+ << & #+ & =, %&' % (%# **+*& #%# & #"** / **' +"%* .+ &! -*1 '*!**+ -**'( & (% +& 1 #" ! &%)'%#%+*# + $#% &*' &#" + *4%()*%+1 *))0 PAGE 161 :9 !.* 090 B%C +) * -( % $% & , B$C & # %) 6*' ('*) &+ '* #"* *! & & #**+# +.* (+*' & #"* +) *, BC #"* >##*' ('*) +.* (+*' & #"* +) *, %&'B'C%=/ *1-#"*'&%( %#( .))2)%3+.$' / + &+.-%*('*)>##*'# #"* **$*)).(0 !.*0<0 B%C%#% & #+ '*& # &!#"*$.&'%-#"*%.'%#*& .)*.+&% +) *-" .(%&$% &,B$C'%#% & #+B-(%))+) *+C &=%)&!1 #"#"* & # %) 6*' ('*),%&' BC #"* >##*' '&%( $.##*D +.$' / + &('*)0 PAGE 162 :< "*%) %# &-#"*'&%( +.$' / + &+.-%*('*)+#%&%#( %)+"%* * / * -( = / ).(*# '%#% + +" 1& & #"* &*4# # 1 *4%()*+0 "* >+#&*.+*+'&%( %#( .))2)%3('*)%&'#"*&*4#&*.+*+'&%( (' >*' $.##*D +.$' / + & +.-%* ('*)0 '&%( %#( .))2)%3 +.$' / + & +.-%* ('*) + >##*' # % **$*)).( B% # %) +#.#.* & $% &C ! / *& %& &.# =8 +%! ##%) +) *+ -( % $% & +%&0 + &#"* *4%()*+1 #" %&!* '%#%,#"* & # %) 6*'('*)"%' 9-%*+ %&' / *# *+, #"*( $* &! *4#%' &% / *# *+ '*!** =0 "* >&%) >##*' ('*), $#% &*'#".!"&*+#*-+.$' / + &,"%+%& #))!&-=:-%*+1 #"=9 / *# *+0 !009B%C '* #+ % +) * -( #" + +%& %&' #"* ('*) & # %) 6%# & + +" 1& & !009B$C0& # & ..+ (%!*$%+*' -*+ %* %) *' ##"* ('*)%&' #"* ('*) '*-(+ .&'* #"* &D.*&* #"*+* -*+ .& # ) (%4 ( .( &-(%# & # #"* $.&'% *+ #"* '*+ *' **$*)).( +"%*0 "* >&%) >##*' ('*) + +" 1& & !009BC0 =/ *1 -#"* >##*' ('*) +'* #*' & !009B'C0 &#"*&*4#*4%()*,#"*+"%**4#%# &-%%.'%#*& .)*.+B%&#"*# %) +#.#.* & " .(%& $% &C + *+*& #*' -( 9: +) *+, *% " + 6* B7;9 7;9C0 !00
PAGE 163 : & #"* (%!*0 & # & ..+ (%!*2$%+*' -*+ %+ 1 *)) %+ + &! -*+ %* %) *' # #"*('*)%&'#"*('*)'*-(+.&'*#"* &D.*&*-#"*+*-*+.& # )(%4 ( .( &-(%# &##"*$.&'% *+-#"*'*+ *'%.'%#*+"%*0 "* >&%)>##*' ('*) & = + +" 1& & !00 PAGE 164 : !.*00 &%+"#+-(#"*%& (%# &-%& &*"*%#(# & / *%%' %)* .+ &! #"* '&%( $.##*D +.$' / + &('*)0 PAGE 165 ;8 !.* 00 B%C "* & # %) 6*' ('*) %)&! 1 #" #"* '%#% +*#F B$C #"* >##*' ('*) 1 #" # 1 +.$' / + &+ & #"* & # %) (*+", %)&! 1 #" %##% "*' + &!+ *' # &!0 "* ('*) %-#* *' # &! BC %# ) 1 * *+).# &, B'C %# #"* +%(* *+).# & #"* >##*' ('*),%&'B*C %#" !"**+).# &0 -( % +*# # (*'**&'*& # / ).(* '%#% +*#+ & %& *Ã† *& # (%&&*0 #* #"%# & #"**4 +# &!.*)!*(*# +.$' / + &+.-%*#* "& A.*%&$*.+*'1 #"B# (* / % &!C & # & ..+ '%#%+*#+0 0: .)# *+).# &' # &! "*+*''&%( +.$' / + &#* "& A.*+ *+*& #" *% " %)+"%** /2 * %&' +"%* ('*) &! 1 #" & % ((& -%(*1 3, 1"** #"* ('*)* %& +%& &='%#% & #+-%## *('*),* / *#"*.&'*) &!+"%*-(#"* & # PAGE 166 ; +*#, %&' #"*& *' # #"* * / **' +"%*0 "* ( .)# *+).# & **+*& #%# & #"* */ )/ &! & #) (*+" %+ *+*& #*' & "%#* 9 *&%$)*+ #"* ('*)* # *' # #"* +(#" ) ( # +.-%* %# %& '*+ *' )*/ *)0 #" & #"* +*' ( .)# *+).# & '2 &%( -%(*1 3, #"* ('*)* '*+ &# &**' # $. )' % ('*) -( +%# " B.&) 3 * #"* +"%* ('*) &!#* "& A.*+C, %&' #"** +&&**' -.+ &!(.#%# &%)) &2 #*&+ / * *(*+" &! #* "& A.*+ ( .)# *+).# & **+*& #%# & B.&) 3 * #"* +"%* * / * #* "& A.*+C0 "* '*% + )).+#%#*' & !00,1"** #"* +"%* -%"*%' + >+# * /**' -( % %&!* '%#% +*# %&' #"*& *' #*' %# / % .+ )*/ *)+ .+ &! + &! -*+ -( # 1 & #+ & =0 "* *?*# 1 %+ (* !)$%) & #"* ) 1 *+# )*/ *) *' #*', %&' #"* *?*# $*%(* &*%+ &!))%)%+ #"* )*/ *) -*' # &!1 %+ &*%+*'0 0; %#.%) *% & '*) &! & #" + +*# &, % & / *) #* "& A.* +& #"*+ 6 &! *%) +# #*% & ('*)+ -( *)*/ %# &'%#% +'*/ *)*'$ .+ &!#"*'&%( >& #**)*(*& #(*#"'2$%+*'+.$' 2 / + &+.-%*('*)-+.-%**&+#.# &,%&'%/ % %& #-#"*+.*++ / *%&'( %'' # &(*#"'--%#%)+.-%*+& #"*+ +0 .!"&*++ +%&*++*& # %) "%%#* +# #"* &%#.%) #*% &+ %&' "*&* #%' # &%) +.-%* *&+#.# & (*#"'+ .+ &! +(#"&*++&+#% & #+'&# *)'#"*'*+ *'*+.)#+0 .& **#%)0 M== N>+#2 +*' % %&'( ' +)%*(*& # #* "& A.* +& #"*+ 6 &! -%#%) +.-%*+ 1" " 1 %+ )%#*(' >*'$ %.* M:N &" ++.*++ / * %&'(%'' # &+ "*(* !*&*%# &! -%#%)+0 3 % *# %)0 M8< N ( / *' #"*+* + "*(*+ $ %'' &! '%#% &+#% & #+0 6*) +3 %&' *6.)+ M:N +*'&+#% &*' -%#%) +.-%*+ .+ &! % $$+ +%()* %)! #"( 1" " 1 %+ )%#* ( / *' $ *( . *# %)0 M87 , 8= N0 %3 % 1 % PAGE 167 ;7 %&' #3 / MN *>&*' #"* ! &%) $$+ +%()*#* "& A.* $ *'*>& &! #"* #*(2 *%#.*B& #)C%%(*#*#$#% &$*##*& #)-.!"&*++ &#"*>##*'B&2 +#% &*'C-%#%)+.-%*0 1 */ *,#"*BC*4*.# &# (*+*#*' &#"* 1 3 %* / * " !",#" .+ (%3 &!#"* + "*(* .&%##%# / *-(%& %) %# &+0 )) #"* #* "& A.*+ &%#.%) #*% & ('*) &!(*& # &*' %$ / * .+.%)) &**'+ %! '-/ *)%!*+ 6*#('*)*%) +# #*% &+,*+* %))1 #" *!.)%)+%*' '%#%0 Q .(*) & M7N '*/ *)*' %& & #**+# &! -%#%) & #*)%# & %)! #"( 1" " %& !*&*%#* & #*)%# &! -%#%) +.-%*+ *!.)%) *!.)%) +%*' '%#%0 1 */ *, #" + + "*(* +(.#%# &%)) & #*&+ / * -)%!*$)*(+%+ & #*'.# & *( . *# %)0 M8=N0 "*+.$' / + &+ "*(*+'.*%+(#"+.-%* &#"*) ( #,%&'"*&*#"* %*&#+. #%$)*-+& #"*+ 6 &!&%#.%)#*% &+1" "%*.!"0 + "*(* +'*/ *)2 *' & #" + ' ++*#%# & .+ &! % / % %& # #"* +.*++ / * %&'( %'' # & (*#"' M:N+. "#"%##"*) ( #+.-%*)3+) 3 *J&%#.%)K#*% &0 &#"* ! &%)+.*++ / * %&'( %'' # & #* "& A.*, %& *A.%)) +%*' *#%&!.)% ! ' + *>&*' $ & #*2 )%# &! #"* ( ' & #+ *% " *#%&!.)% *)) B#"**$ ' / ' &! *% " *#%&!.)% *)) & # -. *#%&!.)% *))+C %&' #"*& %)) ! ' + # &+ %* *#.$*' $ %'' 2 # & % %.++ %& & +*0 " + *++ + % *' .# *.+ / *) # $#% & % -%#%) +.-%* 1"+* .!"&*++ + & #))*' $ #"* / % %&* #"* %''*'%.++ %& & +* %# ' ?**& # *>&*(*& # )*/ *)+0 & #" + ' ++*#%# &, PAGE 168 ;= !.*080 B%C +*#**)*/ %# &'%#%+*#B:89 & #+C,B$C>##*''&%( $.##*D +.$' / + & +.-%* ('*) 1 #" : / *# *+ B1 #".# & +* %'' # &C, %&' BC >##*' '&%( +.$' / + &+.-%* ('*)1 #":/ *# *+ 1"*& %.++ %&& +* +%''*'0 " + *++ %.++ %& & +* %'' # & + + ( )% # #"%# #"* +.*++ / * %&'( %'' # & (*#"' (*& # &*' *%) *, #"* ' ?**&* $* &! #"* / *2 #*4+ # &+$#% &*'.+ &!$.##*D+.$' / + &.)*+%**#.$*' &+#*%'-! ' & #+ $#% &*'#".!"( ' & # & #*)%# &0 1 &%#.%)#*% &+& #"*+ +*+.)#+.+ &!'&%( (' >*'$.##*D+.$' / 2 + & +.-%* ('*) %* *+*& #*' & #" + +*# &0 "* & # %) 6*' ('*) + '*-(*' $ %) &!+ &! -*+ & #+) ( #+.-%* -(#"* ' +*#* '%#% & #+0 # *% " # (*+#*,*/ *& #)/ *#*4+ # & +*#.$*'$ %'' &!%%&'(& +*'% 1& -( % %.++ %& ' +# $.# &0 "* / % %&* #"* %.++ %& ' +# $.# &'*#*( &*+ #"* .!"&*++ #"* +& #"*+ 6*' +.-%*0 & $#" #"* *4%()*+, #"* & # %) 6*'$.#2 #*D +.$' / + & ('*) "%+ %& & # %) B& #)C (*+" 1 #" # %&!.)% -%*+ %&' 9 & #) / *# *+0 "* J&%#.%)K )3 &! ) ( # +.-%* #"* & # %) 6*' ('*) + PAGE 169 ;: !.* 00 & #"*+ 6*' &%#.%) #*% & ' ?**& # .!"&*++ .+ &! #"* '&%( $.##*D+.$' / + &+.-%*('*)1 #":/ *# *+-(%'%#%+*#-=8*)*/ %# & / %).*+0 '*-(*' $ #"* -*+ *4*#*' -( #"* ' +*#* *)*/ %# & '%#% & #+0 "*& %& % 4 (%#*># +$#% &*',#"*('*) ++.$' / '*'#$#% &%)+*>#.+ &!(* '*!**+ -**'( B& #) / *# *+C #"* &*1 & # %)(*+"0 "* >##*' +.-%* "%+ ;9 # %&!.)% -%*+ %&' : & #) / *# *+ & $#" #"* *4* (*& #+0 # (% $* &#*' #"%# +& #"*+ + +%(* A.%) # &%#.%) #*% &+ .+ &! #"* *4 +# &! #* "& A.*+ *A. *+%)%!*& .( $*-! ' & #+B-#"*'*-8 CM,7 ,: ,8= N%&'"*&* #"* +*' #* "& A.* / '*+ %(* (%# **+*& #%# & #"* +& #"*+ 6*' #*% &0 "* *)*/ %# & '%#% / %).*+ %* +%)*' # ># %& .& # .$* %&' #"* / % %&* %''*' & +* + 8 #"* +& #"*+ 6*' -%#%) +.-%* '* #*' & !0080 "* *+&' &!/ %).*-& +*/ % %&*--%#%)+.-%*+ '* #*' & !00B%C,B$C %&' BC %* 8 , 8 %&' 8 *+*# / *) 0 & #"* >+# *4* (*& #, :89*)*/ %# & '%#% & #+%*.+*' 1"**%+#"*+*&''%#%+*#( +*'-=8*)*/ %# &/ %).*+0 "* * &># +% 4 (%#*)V &$#"#"* *4%()*+0 PAGE 170 & #" + "%#*, #"* & # $.# &+ #" + ' ++*#%# & %* +.((% 6*'0 .#.* *+*% " ' *# &+-#"* '*-(%$)*+.$' / + &+.-%* ('*)%*%)+' +.++*'0 0 &).+ &+ & #" + ' ++*#%# &, % '&%( -%(*1 3 "%+ $**& '*/ *)*' +.$' / + & +.-%*+0 " +'&%( -%(*1 3*&"%&*+ #"*%) %$ ) # -+.$' / + &+.-%*+ & !*(*# ('*) &! %) %# &+ 1"** #"* ('*)* %& ' *#) %&' & #. # / *) (%& .)%#* #"* +(#" ) ( #+.-%* .+ &! +& #"*+ 6*' -*+0 "* +*' -%(*2 1 3 +/ *.+*-.)-" *% " %)+"%** / * -()%!*%&!*%&'/ ).(*'%#% +*#+, %+ 1 *))%+ &&2 ! '(# &#% 3 &!-(% #*(%)+*A.*&* -'%#% +*#+0 .)# *+).# & **+*& #%# & #"* & # %) (*+" & #)) &! #"* +(#" ) ( # +.2 -%**&%$)*+!)$%)%&')%)*' # &!-#"*+"%*%+'*+ *'$ #"*('*)*0 & / *) #* "& A.*-+& #"*+ 6 &!&%#.%)#*% &('*)+-(+%+**)*/ %# &'%#%.+ &!#"* '&%( -%(*1 3 &&5.&# &1 #"%/ % %& #-#"* +.*++ / * %&'(%'' # & #* "& A.* "%+ %)+$**& *+*& #*' &#" +' ++*#%# &0 */ *%) #"**# %)& # $.# &+"%+%)+$**& (%'* &#" +' ++*#%# &0 %) %%(*#* 6%# &#* "& A.*++. #%$)*-*( $*'' &!#"*!*(*# +.$' / + &+.-%* ('*) & % " + +2$%+*' ('*) &! -%(*1 3 "%+ $**& '*/ *)*'0 * > )%) ;; PAGE 171 ;9 %%(*#* 6%# &#* "& A.*+ "% / *$**&-.))1 3 *' .#-%#( .))2)%3,(' >*' $.##*D%&'+.$' / + &+ "*(*+0 * "& A.*+-%++ !& &!(%#* %)*# *+ #!*(*# +.$' / + &+.-%*+"% / *$**&'* / *',(# &*A.%# &-#"*'&%( ('*) "%+ $**& -( .)%#*', %'/ %& #%!*+ '*-(%$)* ('*)+ %* &%#*' & # & / *& # &%)+.$' / + &+ "*(*+, '&%( " *% " %)& #)"%+$**& & #'.*', ( .)# *+).# &**+*& #%# &-#"*& #)(*+" +'* / *'%&'%&.& >*'%% " '* / &!+.$' / + &+.-%*2$%+*' >& #**)*(*& #+ "%+ $**& *+*& #*'0 "* +*' '&%( -%(*1 3 "%+ % ( + &! -.#.* & (.#* !%"2 +, !*(*# ('*) &!%&' + *& # > / +.%) 6%# &0 .#"*(*, #"* >& #* *)*(*& # #* "& A.*++*' &#" +' ++*#%# &+".)'$*-!*%# & #**+###"**&! &** &! '*+ !& %&' %&%)+ +(( .& # %+ 1 *))0 07 .#.* *# &+ "*+*' '&%( -%(*1 3*&"%&*+ #"*%) %$ ) # -#"*+.$' / + & +.-%*+ & / % .+ %) %# &+, $.# +# )) #"** %* )#+ *+*% " &**' # $* '&* #(**##"*! 1 &!'*(%&'+-('*) &!%&' #"*%) %# &+0 &#"**+#-#" + +*# &, +*/ *%) 3 * ++.*+ &**' &! %##*& # &%* ' +.++*'0 070 .#(%# "%&!* )! & #"* .*& # -%(*1 3, #"* */ )/ &! ('*) %& &# "%&!* #+ #)! &**'*'0 .#(%# "%&!* #)! '&%( +.$' / + & +.-%* ('*)+ + % / * "%))*&! &! %&' (#%& # *+*% " # 0 "* #)! %)) %'%#%$)* '*2 -(%$)* ('*)+ '*/ *)*' $ %))%' *# %)0 M;:N %&' &*&* %&' *6.)+ PAGE 172 ;< M9=N%& / '*+(* &+ !" #%$.#" 1#'*%)1 #"#)! "%&! &! &'*-(%$)* +.$' / + &+.-%* ('*)+0 0707 %)*>&*(*& # & +(* %) %# &+, *+* %)) & +"%* * / * , # + (* (*%& &!-.) # )%)) *>&* #"* +(#" ) ( # +.-%*, 0*0, & #'.# & &*1 '*!**+ -**'( &) &#"**! &+1"**(*'*#% )+&**'#$** / **'0 .*& #) ,#" +*>&*(*& # + !)$%) 1"** &*1 '*!**+ -**'( + & #'.*' #".!".# #"* +(#" ) ( # +.-%*0 %) *>&*(*& # () *+ ' +# $.# & '*!**+ -**'( %# % & .( $* +.$' / + &)*/ *)+ &+#*%'-&*%# .)%+.$' / + &)*/ *)0 " + +%/ * "%))*&! &! $.# (#%& #*+*% " ++.*0 070= .#(%# '*) %%(*#* *)*# & "*('*)%%(*#*+) 3 *(%++,'%( &!, ! ' # ,$*&' &!%*+*)*#*'$ #"* .+* & #"* .*& # ()*(*& #%# &0 "* " * -* &+#%& #+ %&' # (* +#* + %)+ (%& .%)0 .(* %) +#%$ ) # #"* '*-( &! ('*) + / * +*&+ # / * # #"* " * #"* %%(*#* / %).*+0 *+*% " &**'+ # $* '&* & " 1 # +*)*# #"*+* %%(*#*+ %.#(%# %)) &' ?**& # %) %# &+0 070: &+#% & # (+ # & & +(* %) %# &+, #"** ( !" # $* % &**' # (+* !*(*# %+ 1 *)) -.&2 # &%) &+#% & #+ & #"* '&%( +.$' / + & +.-%* ('*)+0 + # & %&' &(%) &+#% & #+%**4%()*+-++ $)*&+#% & #+0 # ++(*1"%#*%+ *# (+*#"*+* PAGE 173 ; &+#% & #+& & #*)%#'&%( +.$' / + &+.-%*('*)+,$.#&+ '*%$)**2 +*% " *?#+ &**' # $* .# &+#% & # (+ # & & #"* %+* % 4 (%# &! '&%( +.$' / + &+.-%* ('*)+0 070; * / * -"% *%#.*+ * / *-+"%-*%#.*+.+ &!'&%( +.$' / + &+.-%*('*)+ +%&*& *+*% " $)*(0 / *& #".!" **1 +* +(#" +.$' / + &+.-%*+ M:8 N "%+ $**& '*/ *)*', &%# &!+"%-*%#.*+ &%" + %))(*%& &!-.)1 % -%&*/ )/ &! +.$' / + &+.-%* ('*) +% "%))*&! &!*+*% " ++.*0 0709 .#(%# '*)& # %) 6%# & .*& #) ('*) & # %) 6%# & + & #*%# / *0 1 */ *, %.#(%# ('*) & # %)2 6%# &#* "& A.*+"% / *$**&**& #)+*'$ *) &!*##*M7:N0 ( )%#* "& A.*+ '*-(%$)*+.$' / + &+.-%* & # %) 6%# &&**' # $*'*/ *)*'0 070< ( / *' & #"*+ 6*' * *)'+ **& #)W.%&' &*M89 N"% / *+*'&*1# *--*>*)'+1" "(%3 *+ #"*('*) &+*&+ # / *##"* & # %) 6%# &0 #1 .)'$*& *# &%#*#"*+*-* >*)'+ &#"* .*& # ++#*( -$*##* *-(%&* &#"* ('*)>## &! & #*4#0 PAGE 174 MN %3 % 1 %%&'#3 /,J %#%)+.-%**&+#.# &-('*) &!&%#.%) #*% &,K & ! ,0 =:R =78,=0 M7N 0&*',0%%&'@00.6 , J)/ &!#"* & / *+*-%#%)$)*(-( 1 % / *)*# %&%)+ +,K " # , / )0 7;, &0 <, 0 :< R ::, % ", :0 M=N 00 %)) %&' 0@00 # , J&' # &+ #%&!*& # )%&* & # & . # / * *.+ / *) !*&*%#*' 2+) &* +.-%*+,K $ % & , / )0 <,&0 7,0 =R87,0 M:N 00 %)) %&' 0@00 # , J& & / *+# !%# & ./ %#.* / % %# &+ / * *.+ / *) !*&*%#*' 2+) &* +.-%*+,K $ % & , / )0 ,&0 :,0 :7:R:=<, 80 M;N %' &*#, 00 "*& %&' 0 % "*, J.*A.%' + %&' -**2-( '*-2 (%# &+ E !)$%) ('*) # ># %&' #% 3 = (*' %) '%#%,K & # ' ( ) !% *+, , 0 % "*, '0, / )0 8;, 0 = R =79, &!* 2 *)%!,*) &,*(%& , ;0 M9N 00 *(%&,@00 %#*)) %&' 00 %)*+ &, J.)# *+).# & % & # &! %&' (+ # &!,K & , , && .%) &-**&* * *+, 0 ;R 8,@.) , :0 M PAGE 175 98 MN 0 *)& 3 * %&' 0 ++%', J*-(%$)*./ * %&' +.-%* >& #* *)*(*& #+ -**2-(+"%*'*+ !&,K & , , && .%)&-**&* * *+, 0 7; PAGE 176 9 M7:N 0*) &!*##*,J& # %) 6%# &-'*-(%$)*('*)+-(='%#%,K & . , ( $% , &' %, 0 =R =9, @%& .% , 0 M7;N 0 *+*, 0 %++ %&' 0 .&!, J.$' / + & +.-%*+ & "%%#* %& (%2 # &,K & , ,&& .%)&-**&* * *+, 0 ;R:, @.) ,0 M79N 0 * *, 0 @% 1 *#" %&' 0 . *, J(%!* (*++ & #".!" 1 % / *)*# #%&+-( ' &!,K .""" & . & , / )0 =, &0 7, 0 PAGE 177 97 M= PAGE 178 9= M;8N P0 ., 0@0 #)* %&' 00 "*&, J *% " %) +%*# (* & #),K & , , && .%) &-**&* * *+, 0 =;R:7, @.) , :0 M;N 0, ( , 00#"*+ +,& / *+ # -#%", *%#(*& #-%#"*(%# +,<0 M;7N @00 .&+$* , % , "00 #"*+ +, & / *+ # %+" &!#&,*%##)*,:0 M;=N @00.&+$* ,0*+*%&'@0 %*&,J.)# *+).# &%&%)+ +-+.-%*+ %$ #% #)! %) # *,K $ % & , / )0 9, &0, 0 =:R<=, @%& .% , <0 M;:N 0 %))%' , @00 *#" %&, %&' 00 *( . , J"%* ('*) &! 1 #" -& # 2 %!%# & E % )*/ *) +*# %% ",K .""" & $ % . ,/ )0<, &07, 0 ;R <;, *$.% , ;0 M;;N 0%))%#, J#"*-( .)# *+).# &+ !&%)'*(+ # &E #"*1 % / *)*#*2 *+*& #%# &,K ."""& $ %. , / )0 ,&0 <,0 9<: R 9=,@.) , 0 M;9N 0 %))%# %&' 00 1 %&!, J &!.)% # '*#*# & %&' *++ &! 1 #" 1 % / *)*#+,K .""" & . & , / )0 =, &0 7, 0 9< R 9:=, % ", 70 M; PAGE 179 9: M97N 0&*&* %&'0 *6.)+, J'&%( >& #**)*(*& #+.-%*('*)+*!(*& #%# &%&'#% 3 &! &( .)# ' (*&+ &%)(*' %) (%!*+1 #"%) %# & # %' % : (%!* %&%)+ +,K 4 % . , / )0 ,&0 ,0 9R =,;0 M9=N 0 &*&* %&' 0 *6.)+, J )! %)) %'%#%$)* +&%3 *+,K & . ,%( $ '!*,, 0 :8R:;,@.&*, ;0 M9:N 0 &*&* %&' 0 *6.)+, J*-(%$)*('*)+ &(*' %) (%!*%&%)2 + + E %+./ * ,K % . $ , / )0, &0 7, 0 R8,90 M9;N 0*#%4%+%&'0 *6.)+, J&%( '*-(%# &-+) ' ( # / *+1 #" &+#% & #+,K & , , && .%) &-**&* * *+, 0 =8R=7, @.) , 70 M99N 0 *#%4%+ %&' 0 *6.)+, J"%* %&' &&2 ! ' (# & *+# (%# & #".!" " + +2$%+*' +& #"*+ +,K .""" & $ % . ,/ )0;, &09, 0 ;8R ;,@.&*, =0 M9 PAGE 180 9; M<;N 00 *++, 00 *.3 )+3 , 00 *##*) &! %&' 0 0 )%&&* , ' ! , %( $ '!*& / *+ # *++, 70 M<9N 0 &, 0 %&'%) %&' 00 *( . , J&%( %#( .))2)%3 +.$' / + & +.-%*+,K .""" & 4 , / )0 :, &0 =,0 7; R77,@.) 2*#*( $*, 0 M< PAGE 181 99 MN 00#% $%&'@00.&%&, J.&'%>&' &!1 #"%%(*# %))'*-(%$)* ('*)+,K ."""& $ %. ,/ )0 :,&0 , 0 89R8<;, 70 M8N @0 #%(, J%# */ %).%# & %#( .))2)%3 +.$' / + & +.-%*+ %# %$ #% %%(*#* / %).*+,K & , , &2 & .%)&-**&* * *+, 0 =;R :8:,@.) , 0 MN @0#%(,J/ %).%# &-.$' / + &.-%*+,K & (.!$3*+7-! 9% , , @.) ,0 M7N @0#))& #6,00*+*%&' 00%)*+ &, 1 : , !%& %.-(%&&,%& %& +, 90 M=N 01 *)'*&+,J"*) -# &!+ "*(*E %.+#(2'*+ !&&+#.# &-$ #"!&%) 1 % /*)*#+,K * "0 *0 :E<,&'.+# %)%#"*(%# +& # %# / *,*%#(*& #%#"*(%# +,& / *+ # .#" %) &%,:0 M:N 06*) +3 %&'0 *6.)+,J (+) &*+#-%#%)+,K & , ,&& .%)&-**&** *+,0;R98,.!.+#, 0 M;N 0 %&%3 %%&'0 +" &,J'%# / *(*+"!*&*%# &-+.-%**&+#.# & E %%))*) " *% " %) # %&!.)%# & 1 #".# ' +& # & . # *+,K & ! , *1 3 # , , 0 R:,@.&*, =0 M9N 0 *6.)+, J*!.)% 6%# & & / *+* / +.%) $)*(+ & / )/ &! ' +& # 2 & . # *+,K ."""& $ %. ,/ )0 ,&0 :,0 :=R:7:, 90 M PAGE 182 9< ! , $%&%2"%(% !&, , 0 7R=7,@.&*, 70 M87N 00 *( . %&'0%&'%),J-%+# $$++%()*-+& #"*+ 6 &!&+#% &*' -%#%)+,K & .""" 4 *+; ,"*& 4,P,07 R=;,#$*, 90 M8=N 00 *( . , 0 %&'%) %&' 00 % , J -%+# $$+ +%()* +& #"*+ 62 &! &+#% &*' -%#%)+,K .""" & 4 ,/ )0=, &0:, 0 == PAGE 183 ""%&'(% %&'%)1 %+$&&9#"**( $*,<7,%# +"& ..,,&2 ' %0 *** / *'% "*)* "&)!B&+C'*!** &*)*#& +%&'*)*# %) (( .& %# &+*&! &** &! -(&' %& &+# #.#* * "&)! , "%%!., &' %, &@.&*,;,%&'%+#**&*'*!** &(.#*%&' &-(%# &+ *&*%&' *&! &** &! -( & / *+ # ) '%,% &*+/ ))*, & % , <0 * + *4*#*' # ** / *#"*#-" )+" '*!** &(.#*%&' &-(%# &+ *&*%&'*&! 2 &** &!-(& / *+ # -) '%,% &*+/ ))*, &**( $*,0 *"%+.$) +"*' +*/ *%) %*+ & #* "& %) &-**&*+ %&' *.#%$)* 5.&%)+, %&' "%+ +*/ *' %+ %& %.4 ) % */ *1 * %&+%# &+ & %##*& *!& # & %&' % " &* &2 #*)) !*&*%&'-+*/ *%) &-**&*+, &).' &!& #*&%# &%)&-**&* & %##*& *!& # &%&'&-**&*&(.#* + &%&' %##*&*!& # &0 + *+*% " & #**+#+ &).'*(.#* !%" +,(.#* / + &," + +2$%+*' ('*)2 &! %&' + (.)%# &, (.#*2% '*' !*(*# '*+ !&, / +.%) 6%# & #* "& A.*+ %&' (.#* %& (%# &0 * +%(*( $*0 9 |