• 沒有找到結果。

CHAPTER 4 Algorithm

4.5 Pop-up Simulation

To simulate pop-up animation, the positions of every piece could be computed in arbitrary fold angle 𝜃 between 0° to 180°. Four unit vectors W, X, Y, and Z were utilized as the axes to represent the folding lines of an element, as illustrated in figure 4.13. Since the points of pop-up pieces can be spanned by Y, Z or X, Z respectively, the positions of the points in the pop-up could be calculated from the current axes. In practice, the left page was fixed and the right page rotated toward it. In other words, Y and W are unchanged, and then X and Z rotate toward the left page. Finally, all vectors lie on the same plane at 𝜃 = 0.

Figure 4.13: The axes and angles in an element of a simple pop-up.

α β

26

Additionally, a complex pop-up consists of more than one element. According to mentioned concept above, each element has four axes to express its structure, as illustrated in figure 4.14. Note that Y and W are not always unchanged now. The algorithm for computing the axes of the elements at fold angle = 𝜃 is as follows:

Rotate the right page around center hinge by angle 180° −𝜃; For each element in the pop-up list

1. Obtain the new axes W, X, Y, Z ;

2. Compute the new positions of the pieces in the element;

3. Update the positions of the pieces in the element;

End for;

The pop-up list consists of elements in level order. Hence, the positions of pieces were updated from low level to high level. The positions of level 0 pages (the two exterior pages) could be updated by rotating the right page. For level 1 element, the supporting planes are left page and right page. The axis W is unchanged since it always lies on the center hinge. For the element which is level 2 or higher level, the axis W was obtained from the normal of supporting planes:

𝑊 = 𝑛⃑⃑𝑠𝑢𝑝1× 𝑛⃑⃑𝑠𝑢𝑝2. (4.2) Furthermore, W could be rotated around the normal of supporting planes to get X and Y. The

Right Page

Figure 4.14: The axes in a complex pop-up.

W

27

negative angle means the rotation is counterclockwise:

𝑋 = 𝑅𝑜𝑡𝑎𝑡𝑒(𝑊 , 𝑛⃑⃑𝑠𝑢𝑝1 , −𝛿). (4.3) 𝑌 = 𝑅𝑜𝑡𝑎𝑡𝑒(𝑊 , 𝑛⃑⃑𝑠𝑢𝑝2 , 𝛾). (4.4) Moreover, Z could be calculated by X, Y, α, and β, as shown in figure 4.15. The arguments 𝑎 to 𝑓 are lengths of line segments. The vector P on the XY plane is the projection of Z and we normalize P to unit length. The angle between X and Y is φ and the angle between X and P is ω. The vector P was obtained by rotating X with angle ω, where ω = φ ∙ α (α + β)⁄ .

28

triangle formed by 𝑎, 𝑒, 𝑓 is a right triangle. After 𝑒 is known, we can get 𝑏 and 𝑑. The argument 𝑐 can be obtained by Pythagorean Theorem. Finally, the angle σ can be computed by law of cosines.

After computing the four axes, the pieces of the element can be updated from its spanning axes. Then the updated elements that have lower level become an input to higher level elements. Finally, all elements in the pop-up list are updated to correct position at specified fold angle. Figure 4.16 explains the animation key frames during a pop-up card opening or closing.

Figure 4.16: A v-fold pop-up in deferent fold angles.

.

29

CHAPTER 5

Experimental Results

All 3D animal models are from a segmentation benchmark [2] that each model is roughly axis aligned, centered to origin, normalized to unit box, and creates manual segmentations by people. The pop-up generation starts with a segmented model. After labeling by users, the system generates a pop-up prototype that conforms to a defined scaffold, and then users can move the piece on its belonging plane until it looks good. Finally, the system cut the redundant region of pieces to complete the pop-up. Users can check the pop-up animation and then make the actual pop-up card manually.

Figure 5.1 shows a head type result of pig model and its intermediate states at various fold angles. The model has 10 segments and the system utilizes head, ears, and nose to generate pop-up. Figure 5.2 demonstrates a bust type of dairy cattle model. This type has more pieces than head type. The model has 10 segments and the head, horns, ears, body, and forward legs are employed. This type needs a small patch to support the horns that ensure the horns connect with the base pages. Figure 5.3 displays a bird type of goose model that has 8 segments. The head, body, wings, and tail are used to generate pop-up. The folding lines of wings are almost parallel that converge at a very far but finite point. The intermediate states of the pop-up viewed form bottom are also shown in figure 5.3. The actual pop-up cards are also shown in figure 5.1, 5.2 and 5.3. These pop-up cards could be made easily and their behavior similar to our simulation.

30

Figure 5.1: Top: The input model and segmentation. Middle: Result of pop-up with head type. Bottom:

Pop-up simulation.

31

Figure 5.2: Top: The input model and segmentation. Middle: Result of pop-up with bust type. Bottom:

Pop-up simulation.

32

Figure 5.3: Top: The input model and segmentation. Middle: Result of pop-up with bird type. Bottom:

Pop-up simulation.

33

The more experimental results are shown in figure 5.4 and figure 5.5. The mostly computation time of pop-up generation is finding the contour points within seconds that depends on the triangle number of the model. The pieces are adjusted by users within few minutes and the system executes the cutting process within one second.

Figure 5.4: Donkey in head type and bust type, wolf in bust type and pig in bust type.

34

Figure 5.5: Lamb in bust type and swallow in bird type.

There are some limitations of this proposed scheme. The animal scaffold cannot apply to every type of animals, such as fishes, insects, or reptiles. Some models that use the proposed algorithm are not performing well because we only use partial segments of the model. The characteristics of animals are various that need different scaffold to express it, such as camel's hump, kangaroo’s pouch, and so forth. The possible solution is allowing designers to build suitable scaffolds or finding representative planes of the model then make them “pop-upable”.

35

CHAPTER 6

Conclusion and Future Work

This thesis proposed a method to generate an animal pop-up card from a 3D model.

Additionally, this thesis provided a v-fold diagraph to express the v-fold pop-up scaffold. The properties of v-fold graph ensure the pop-up structure can be opened and closed successfully.

We generalize three types of animal scaffolds from the pop-up cards made by artist. The scaffolds could apply to birds and four-leg animals. The input mesh is segmented and labeled and then our system extracts the representative shapes of animal parts. These feature shapes are attached to the corresponding elements of the defined scaffold. Finally the system cut the redundant regions of the pieces to complete the pop-up card. Users can design an animal pop-up card in minutes with our system. The proposed algorithm also simulates the pop-up during it opened and closed. The pop-up animations can assist designers to understand how it works before make the pop-up manually.

There are few studies about generate 180° pop-ups from 3D models. We believe that this paper will inspires more research on pop-ups in the future. Currently, our system label the segments manually, combine our system with segmentation and shape recognition method such as Kalogerakis [10] can make this process automatic. Another improvement is considering more factors such as curvature and symmetry to find better planes for express the model. To transform other types of 3D models into pop-ups is also an interesting direction. A bigger challenge is explore more complex pop-up mechanism other than v-fold pop-up. For

36

example, add more than two pieces at a time. Considering the physical properties of paper such as thickness, weight, and warping is another practical extension that is closer to reality.

37

References

[1] CARTER, D. 1999. The Elements of Pop-up. Little Simon, New York.

[2] CHEN, X., GOLOVINSKIY, A., AND FUNKHOUSER, T. 2009. A Benchmark for 3D Mesh Segmentation. ACM Trans. Graphics 28, 3.

[3] DÉ CORET, X., DURAND, F., SILLION, F. X., AND DORSEY, J. 2003. Billboard clouds for extreme model simplification. In In Proc. SIGGRAPH, 689–696.

[4] DEMAINE, E., AND O’ROURKE, J. 2007. Geometric Folding Algorithms: Linkages, Origami, Polyhedra. Cambridge University Press, Cambridge.

[5] GLASSNER, A. 2002. Interactive pop-up card design, part 1. In Computer Graphics and Applications, IEEE. 22, 1, 79–86.

[6] GLASSNER, A. 2002. Interactive pop-up card design, part 2. In Computer Graphics and Applications, IEEE. 22, 2, 74–85.

[7] HARA, T., AND SUGIHARA, K. 2009. Computer aided design of pop-up books with two-dimensional v-fold structures. In 7th Japan Conference on Computational Geometry and Graphs.

[8] HILDEBRAND, K., BICKEL, B., AND ALEXA, M. 2012. crdbrd: Shape Fabrication by Sliding Planar Slices. Computer Graphics Forum, 31, 2, 583-592.

[9] HULL, T. 2006. Project Origami: Activities for Exploring Mathematics. A.K. Peters.

[10] KALOGERAKIS, E., HERTZMANN, A., AND SINGH, K. 2010. Learning 3d mesh segmentation and labeling. In ACM SIGGRAPH, 102:1–102:12.

[11] KAVAN, L., DOBBYN, S., COLLINS, S., ZA RA, J., AND O’SULLIVAN, C. 2008.

Polypostors: 2d polygonal impostors for 3d crowds. In In Proc. I3D, 149–155.

[12] KILIAN, M., FLÖRY, S., CHEN, Z., MITRA, N. J., SHEFFER, A., AND POTTMANN, H. 2008. Curved folding. ACM SIGGRAPH 27, 3, 75:1–9.

[13] LEE, Y. T., TOR, S. B., AND SOO, E. L. 1996. Mathematical modelling and simulation

38

of pop-up books. Computers & Graphics 20, 1, 21–31.

[14] LI, X.-Y., SHEN, C.-H., HUANG, S.-S., JU, T., AND HU, S.-M. 2010. Popup:

automatic paper architectures from 3d models. ACM Transactions on Graphics 29, 4, 111:1–9.

[15] Li, X.-Y., Ju, T., Gu, Y., Hu, S.-M. 2011. A Geometric Study of V-style Pop-ups:

Theories and Algorithms. ACM Transactions on Graphics 30, 4.

[16] MASSARWI F., GOTSMAN C., ELBER G. 2007. Papercraft models using generalized cylinders. In Proc. Pacific Graphics 2007, pp. 148–157.

[17] MCCRAE J., SINGH K., MITRA N. J. 2011. Slices: A shape-proxy based on planar sections. ACM Trans. Graph. 30, 6.

[18] MITANI, J., AND SUZUKI, H. 2003. Computer aided design for 180-degree flat fold origamic architecture with lattice-type cross sections. Journal of graphic science of Japan 37, 3, 3–8.

[19] MITANI, J., AND SUZUKI, H. 2004. Computer aided design for origamic architecture models with polygonal representation. In CGI ’04: Proceedings of the Computer Graphics International, IEEE Computer Society, Washington, DC. USA, 93–99.

[20] MITANI J., SUZUKI H. 2004. Making papercraft toys from meshes using strip-based approximate unfolding. ACM Trans. Graphics 11. 3, 259-263.

[21] MITANI, J., SUZUKI, H., AND UNO, H. 2003. Computer aided design for origamic architecture models with voxel data structure. Transactions of Information Processing Society of Japan 44, 5, 1372–1379.

[22] OKAMURA, S., AND IGARASHI, T. 2009. An interface for assisting the design and production of pop-up card. Lecture Notes in Computer Science 5531, 2, 68–78.

[23] O’ROURKE, J. 2011. How to Fold It: The Mathematics of Linkages, Origami, and Polyhedra. Cambridge University Press, UK.

[24] SHATZ I., TAL A., LEIFMAN G. 2006. Paper craft models from meshes. The Visual

39

Computer 22, 9, 825–834.

[25] TACHI, T. 2009. Origamizing polyhedral surfaces. IEEE Transactions on Visualization and Computer Graphics 16, 2, 298–311.

[26] TAKAHASHI, S., WU, H. Y., SAW, S. H., LIN, C. C., AND YEN H.C. 2011.

Optimized Topological Surgery for Unfolding 3D Meshes. Computer Graphics Forum, 30, 7, 2077-2086.

[27] UEHARA, R., AND TERAMOTO, S. 2006. The complexity of a pop-up book. In 18th Canadian Conference on Computational Geometry.

相關文件