COMPUTATIONAL METHODS IN ENGINEERING AND SCIENCE EPMESC X, Aug. 21-23, 2006, Sanya, Hainan, China ©2006 Tsinghua University Press & Springer Uniformed NURBS Surface Deformation Subject to Boundary Conditions Kin Man Lo, Zhixin Yang Department of Electromechanical Engineering, Faculty of Science and Technology University of Macau, Taipa, Macau, China Email: [email protected] Abstract To allow mass custermization in competitive industries, it is important to conduct new product design and development with concentration on few key features while reusing the existed portion of design in terms of geometric shape and boundary condition. Product model could be partitioned into a base shape and working feature. Customized design will be implemented by replacing the working feature with a new pattern, which shall be deformed such that the boundary is matched and the finallized feature is closed to the original one. This paper presents a new surface deforming method with an attempt to solve mentioned design problem. The control net of a surface is treated as a space truss so that the control points are considered as the nodes of the structure. When any of the nodes is moved, the entire structure is deformed accordingly. The techniques on the construction of the control net, determination of displacement of boundary node and unconstrainted node, and surface morphing will discussed in detail. Due to the localization property of NURBS surface, the number of control points could be adjusted is often restricted in traditional method. The proposed deforming method enables the control net being deformed gloabally and in a uniformed manner, which result a ‘similar’ deformed surface to the original pattern the designer intended to apply in the new product. It is believed the proposed method could be applied in related industries including shoe and car design. Keywords: NURBS, free-form deformation (FFD), shape modification, solid mechancs, continuity constraints INTRODUCTION Free form surface is one of the most popular parametric modeling methods in CAGD because of its capability of producing surface of high degree of smoothness. Bezier, B-Spline, and NURBS surfaces are commonly used parametric surfaces due to their strong geometric properties and have a uniform mathematics representation. Among them, NURBS can describe not only free form surface but also conic sections [1–6]. The three types of surfaces have a common mathematical form: n m S(u , v) = ∑∑ f (u , v)Pi,j (1) i =0 j =0 where f(u,v) is basis function and Pi,j is control point. Surface deformation is very important because development time of a new surface can be shortened by properly deforming an existing one. Reuses of existing surfaces are common in many industries where new design is similar in shapes to an old one. For example, the shoe-making industry may keep use one type design pattern in a series of shoes, from small size to large one. Considering the shapes of human-beings’ feet do not change greatly, the modification is also strictly subject to ergonomics constraints. So the shape deformation in different shoes shall be changed uniformly. To allow mass custermization in competitive industries, it is important to conduct new product design and development with concentration on few key features while reusing the existed portion of design in terms of geometric shape and boundary condition. Product model could be partitioned into a base shape and working feature. Customized design will be implemented by replacing the working feature with a new pattern, which shall be deformed such that the boundary is matched and the finallized feature is closed to the original one. Designers usually deform a surface through ⎯ 933 ⎯ manipulating the control points, which have a strong influence on the shape and have inherent geometric meaning. However, it is often quite tedious to fine tune the control points of a surface because of the limited capability of both CAD systems and input methods. An automatic deforming method is proposed in this paper, which aims to reducing the tedious work in surface modification. Moreover, the proposed method manages to produce an uniform deformation over the entire surface. The method can either operate independently or is used together with, if applicable, other methods where shape modification is achieved by adjusting control points. This paper is organized that related works is reviewed in the next section, and in the succeeded sections, solid mechanics model for space truss analysis is discussed, deformation methodology is presented, some illustrative examples are discussed, respectively, finally conclusions are made. RELATED WORKS Many research works on surface deformation have been proposed. Among them, NURBS have been extensively studied due to it degree of freedom in shape modification. Generally speaking, deforming methods can be classified into two approaches: (1) Geometric approach and (2) Physics-based approach. In geometric approach, the knot vectors, control points, and weights of the deformed surface are derived algebraically according to the constraints. The main advantage of this approach is its efficiency in computation. This approach is commonly used in most commercial CAD system due to it efficiency in computation. Sánchez-Reyes [7] presented a radial deforming technique about arbitrary center. Fowler et al. [8] proposed a curve deforming technique by imposing geometric constraint up to curvature. Juhász et al. [9] proposed knot-based curve deformation techniques. For surface manipulation, the deformation process is much more complicated and tedious due to the 2D nature of the display system and pointing device. Georgiades et al. [10] studied the deformation of surface based on differential geometry and hence it can be applied to all type of surfaces (parametric, implicit, algebraic, etc). Hu et al. [11] suggested explicit deformation equations for point, points-and-normal, and iso-curve constraint. As for the physics-based approach, theory or concept of solid mechanics is applied to obtain the deformation. Deformation by this approach can generally give more natural results than those determined by geometric approach under the same constraints. Virtual forces may be applied to the surface in order to give better control over deformation. Furthermore, this approach is useful in surgery simulation. However, the main drawback is the high computational cost. As a result, this approach is less popular in almost all CAD systems than geometric approach. Pourazady et al. [12] proposed manipulating a B-Spline or NURBS curve based on deformation energy and finite element method to determine the deformed curve under specified positional constraints. Hu et al. [11] proposed a method based on thin plate energy minimization to deform a surface and a comparison of geometric approach hand physics-based approach were also discussed. F. Dachille IX et al [13] and Liu et al [14] used a haptic systems as a special tool as input to deform surface. SOLID MECHANICS MODEL FOR SPACE TRUSS ANALYSIS 1. Introduction of truss element and fundamental equations To assemble the global stiffness matrix of a structure [15], truss element shall be constructed by satisfying the following characteristics: (1) Each element is straight and slender; (2) Elements are joined to each other by pins at their ends so that each member is subjected to axial force only. (3) The element is mechanically equivalent to a spring, since it has no stiffness against applied loads except those acting along the axis of the member. (4) Elements are connected in such a way to form triangles. (Fig. 1) (5) External forces should be applied on the pins. For those applied on an element must be replaced by an equivalent system of forces applied on the two ends of the element. (6) Pins are regarded as the nodes of the elements. (7) The primary unknowns are nodal displacements of the structure. For a truss element, the stress and strain are defined as follows: Stress σ: σ= F A (2) where F is the axial force and A is the cross-section area. ⎯ 934 ⎯ Figure 1: A planar truss --- Elements are joined by pins (black dots) Figure 2: Elongation of an element Strain ε: ε= δL (3) L where L is the original length and δL is the elongation (change in length), see Fig. 2. The stress and strain are correlated by Hooke’s law: σ = Eε (4) where, E = young’s modulus or modulus of elasticity. By Eqs. (2-4), the external (axial) force and elongation of an element is given F= EA ⋅δ L L (5) The ration EA/L is called the stiffness of an element. Eq. (5) will be used to derive the finite element method for space truss in the following section. 2. Stiffness matrix of an element In finite element method, each element possesses its own local coordinate system. When local analysis on an element is finished, the result must be converted to the global coordinate system for calculation. In order to distinguish between local and global quantities, a horizontal bar is placed at the top of a variable if it is described in an element’s local coordinate system. For example, F is a force vector described in the global coordinate system, and F ij is the same vector as F but is described in element ij’s local coordinate system. Both ones refer to the same quantity but in different systems. Figure 3: Local and global coordinate systems The element ij in Fig. 3 is assigned i as the starting node and j as the end node. The X axis of the element local coordinate system is always parallel to the element while the orientations of Y and Z axis are arbitrary as long as the three axes satisfy the right-hand rule. The displacements δ i of node i in terms of local coordinate system are δ ix , δ iy and δ iz , and in terms of local coordinate system are ui, vi and wi. Similar annotation applies to node j. The global and local displacements have the following relation, ⎯ 935 ⎯ ⎛ δ ix ⎞ ⎛ l x ⎜ ⎟ ⎜ ⎜ δ iy ⎟ ⎜ l y ⎜ ⎟ ⎜ ⎜ δ iz ⎟ = ⎜ l z ⎜ δ jx ⎟ ⎜ 0 ⎜ ⎟ ⎜ ⎜ δ jy ⎟ ⎜ 0 ⎜ δ ⎟ ⎜⎝ 0 ⎝ jz ⎠ mx my mz 0 0 0 nx ny nz 0 0 0 0 0 0 0 0 0 lx ly lz mx my mz ⎞⎛ ui ⎞ ⎟⎜ ⎟ ⎟⎜ vi ⎟ ⎟⎜ w ⎟ ⎟⎜ i ⎟ n x ⎟⎜ u j ⎟ ⎜ ⎟ n y ⎟⎟⎜ v j ⎟ n z ⎟⎠⎜⎝ w j ⎟⎠ 0 0 0 (6) where lx = cos( x ', x) , l y = cos( y ', x) , l z = cos( z ', x ) mx = cos( x ', y ) , m y = cos( y ', y ) , mz = cos( z ', y ) (7) nx = cos( x ', z ) , n y = cos( y ', z ) , nz = cos( z ', z ) x’, y’, and z’ are the axis of the local coordinate system; x, y, and z are the axis of the global coordinate system; cos(x’,x) is the cosine of the angle made by x’ and x, and so on. Or in short form, δ ij = Tu ij (8) where T is called Transformation matrix and has a useful property: T−1 = TT (9) Similarly the forces acting on the element have the same relation: ⎛ Fixij ⎞ ⎛ l ⎜ ⎟ ⎜ x ⎜ Fiyij ⎟ ⎜ l y ⎜ ij ⎟ ⎜ ⎜ Fiz ⎟ ⎜ l z ⎜ F ij ⎟ = ⎜ 0 ⎜ jx ⎟ ⎜ ⎜ F jyij ⎟ ⎜ 0 ⎜⎜ ij ⎟⎟ ⎜ 0 ⎝ F jz ⎠ ⎝ mx my nx ny 0 0 0 0 mz 0 0 0 nz 0 0 0 0 lx ly lz 0 mx my mz 0 ⎞⎛ Fixij ⎞ ⎟⎜ ⎟ 0 ⎟⎜ Fiyij ⎟ 0 ⎟⎜⎜ Fizij ⎟⎟ ⎟ n x ⎟⎜ F jxij ⎟ ⎜ ⎟ n y ⎟⎟⎜ F jyij ⎟ nz ⎟⎠⎜⎝ F jzij ⎟⎠ (10) Or in short form, Fij = TFij (11) The force and the nodal displacement in local coordinate is related by Eq. (5): Fij = k ij δij (12) where k is the element stiffness matrix: ⎛1 ⎜ ⎜0 EA ⎜ 0 k ij = ⎜ l ⎜ −1 ⎜0 ⎜⎜ ⎝0 0 0 0 0 0 0 0 −1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0⎞ ⎟ 0⎟ 0⎟ ⎟ 0⎟ 0⎟ ⎟ 0 ⎟⎠ (13) Once the force and nodal displacement relationship is found, it can be immediately transformed into the global ⎯ 936 ⎯ coordinate system by Eqs. (8) and (12): Τ ijFij = k ij (Τ ij U ij ) ( ) Fij = TijT k ijΤ ij U ij Fij = K ij U ij (14) where ⎛ k ii K ij = TijT k ijTij = ⎜ ⎝ k ji ⎛ lx2 EA ⎜ k ii = k jj = lx mx l ⎜⎜ ⎝ l x nx k ij ⎞ ⎟ k jj ⎠ lx mx mx2 mx nx (15) ⎛ −lx2 l x nx ⎞ EA ⎜ ⎟ mx nx ⎟ , k ij = k ji = −l x mx l ⎜⎜ 2 ⎟ nx ⎠ ⎝ −l x n x −lx mx − mx2 − mx nx −l x n x ⎞ ⎟ − mx nx ⎟ − nx2 ⎟⎠ (16) is called as element stiffness matrix in global coordinate. The stiffness matrix above is divided into 4 portions. kii and kij will multiply with (ui, vi, wi)T and (uj, vj, wj)T respectively to obtain Fiij . Similarly, kji and kjj will multiply with (ui, vi, wi)T and (uj, vj, wj)T respectively to obtain Fjij . This annotation is useful in the process of global stiffness matrix assembly in the following section. 3. Global Stiffness Matrix Eq. (14) is a force and displacement relationship of the element ij expressed in global coordinate system. We would like to solve for the displacement of each node by such a relation. ⎛ F1x ⎞ ⎜ y⎟ ⎜ F1 ⎟ ⎜ F1z ⎟ ⎜ ⎟ k 1i ⎜ ⎟ ⎛ k 11 ⎜ x ⎜F ⎟ ⎜ iy ⎟ ⎜ ⎜ Fi ⎟ = ⎜ k i1 … k ii ⎜ z⎟ ⎜ ⎜ Fi ⎟ ⎜ ⎜ ⎟ ⎜⎝ k n1 k ni ⎜ x⎟ ⎜ Fn ⎟ ⎜Fy ⎟ ⎜⎜ nz ⎟⎟ ⎝ Fn ⎠ ⎛ u1 ⎞ ⎜ ⎟ ⎜ v1 ⎟ ⎜ w1 ⎟ ⎜ ⎟ k 1n ⎞ ⎜ ⎟ ⎟⎜ ⎟ ⎟ ⎜ ui ⎟ … k in ⎟ ⎜ vi ⎟ ⎟⎜ ⎟ ⎟ ⎜ wi ⎟ k nn ⎟⎠ ⎜ ⎟ ⎜ ⎟ ⎜ un ⎟ ⎜ vn ⎟ ⎜⎜ ⎟⎟ ⎝ wn ⎠ (17) where Fi x , Fi y and Fi z are the three components of nodal force Fi at pin i, kii is submatrix of dimension (3×3) like those appear in Eq. (17); It could also be represented in a compact form, Eq. (18): F=KU (18) The nodal force Fi is equal to summation of those forces acting on the elements joining at node i because the node is in equilibrium. Actually, by Eq. (17) ⎛ Fi x ⎞ ⎛ uj ⎞ ⎛ u1 ⎞ ⎛ u2 ⎞ ⎛ un ⎞ ⎜ y⎟ ⎜ ⎟ ⎜ ⎟ ⎜ ⎟ ⎜ ⎟ Fi = ⎜ Fi ⎟ = ki1 ⎜ v1 ⎟ + ki 2 ⎜ v2 ⎟ + K + kij ⎜ v j ⎟ + K + kin ⎜ vn ⎟ ⎜Fz ⎟ ⎜w ⎟ ⎜w ⎟ ⎜w ⎟ ⎜w ⎟ ⎝ 1⎠ ⎝ 2⎠ ⎝ n⎠ ⎝ j⎠ ⎝ i ⎠ (19) There may be some zero sub-matrices because node i may not be connected to other nodes. For example, node i is connected to nodes j and k. The non-zero sub-matrices would be kii, kij, and kik. Furthermore, for the sub-matrices kii is a special one because it is the only one that is given by superposition, i.e. k ii = k ijii + k ikii ⎯ 937 ⎯ where the superscript ij indicates ‘of element ij’ 4. Steps of FEM solution (1) Assigning an index to each node. It is a crucial step because it will affect the band distribution of the global stiffness matrix; (2) Calculating the stiffness matrix of each element; (3) Summing all element’s stiffness matrix with the same displacement term ; (4) Solving the linear system with constraint conditions. SURFACE DEFORMATION METHODOLOGY 1. “Triangulating” the control net Since the control net is a topologically rectangular grids. There is not a stable shape for a spatially pinned four-member frame, meaning that the structure cannot resist external loading. In order to achieve a solid structure, the control net is modified in such a way that it is “triangulated” (see Fig. 4), i.e., making the structure rigid and hence the shape of the deformed structure can be uniquely determined. The control points are then regarded as nodes of the truss. Figs. 5(a) and 5(b) illustrate a “triangulated” control net. (a) The degree of freedom is one (b) The degree of freedom is zero Figure 4: Degree of freedom of two planar structure (a) original control net (b) triangulated control net (The two sides pointed by arrows are adjusted) (c) deformed triangulated control net (e) deformed surface with control net in (c) (d) original surface with control net in (a) Figure 5: Deformation process ⎯ 938 ⎯ 2. Specifying constraints (1) The designer can either define virtual nodal forces or displacement vectors on some selected nodes; or one can either directly specify the displacement of each node or determine the displacement given by other deforming method. (2) The stiffness of each element must be specified in order to be processed with further solid mechanics calculation. (3) Building FEM model to compute the displacement field of the space truss. ILLUSTRATIVE EXAMPLES 1. Example 1 — Size of control net along u and v directions are 6 × 6 In this example, a boundary curve is deformed (or a boundary curve constraint is specified). The resulted deformed surface is deformed uniformly from unchanged portion to the deformed boundary curve, and is visually similar to the original one. (a) Original control net (b) Deformed control net (c) Original surface (d) Deformed surface Figure 6: The control points on the pointed boundary were given arbitrary displacement while holding the other three fixed 2. Example 2 — Matching of surface patches In this example, the proposed method is combined with another deforming method. Two surface patches are joined together with G1 and G2 continuity requirement. For G1 connection of two surfaces, only the two rows of control points of a surface are adjusted to meet the requirement and three rows for G2 connection. The system determines the displacement of individual control point to reflect the deformation. A commercial CAD system is used for control net matching and displaying. By comparing the surfaces in Figs. 7(b) and 7(c), the differences is not so significant. However, the differences are obvious in Figs. 7(d) and 7(e), the control net is deformed by the proposed method in a uniform manner. The effect is much more pronounced in Figs. 7(h) and 7(i). CONCLUSION To fit the requirement of customized design which changes a few portions of an existing design model, the new pattern which is represented in a surface patch will have to be joined with the remaining portion of original surface model. To reach smooth merging, the surface patch shall be deformed such that the boundaries of two surfaces are matched while the joined surface patch remains to be close to its original design pattern. With this proposed method, designers can gain better uniform deformation of the control net. This method applies solid mechanism model to represent surface control net, and compute the solution by a set of linear banded equations. The computational cost is lower than those physics-based methods. The method could provide a foundation to support design re-usage and mass customization. ⎯ 939 ⎯ (a) Two surface patches to be joined (The red one is deformed to join the blue one ) (b) G1 matching by a commercial CAD system (c) G1 matching by the proposed method (d) The control net of the red surface in (b) (e) The control net of the red surface in (c) (f) G2 matching by a commercial CAD system (g) G2 matching by the proposed method (h) The control net of the red surface in (f) (i) The control net of the red surface in (g) Figure 7: Example of Joining of Surface Patches REFERENCES 1. Piegl L, Tiller W. The NURBS Book, Springer-Verlag, Berlin-Heidelberg, Germany, 1995. 2. Farin Gerald. Curves and Surfaces for CAGD: A Practical Guide. Morgan Kaufmann, 1995. ⎯ 940 ⎯ 3. Demengel Gilbert, Pouget Jean-Pierre, Mathématiques des Courbes et des Surfaces, Modèl de Bézier, des B-Splines et des Nurbs, Ellipses / édition marketing S.A., 1998 (Chinese version, ISBN 7-100-02894-9/TP.2). 4. Farin Gerald. From conics to NURBS a tutorial and survey. Computer Graphics and Applications, IEEE, 1992; 12(5): 78-86. 5. Piegl Les. On NURBS: A survey. Computer Graphics and Applications, IEEE, 1991; 11(1): 55-71. 6. Hughes TJR, Cottrell JA, Bazilevs Y. Isogeometric analysis CAD, finite elements, NURBS, exact geometry and mesh refinement. Computer Methods in Applied Mechanics and Engineering, 2005; 194(39-41): 4135- 4195. 7. Sanchez-Reyes J. A simple technique for NURBS shape modification. Computer Graphics and Applications, IEEE, 1997; 17: 52-59. 8. Fowler B, Bartels R. Constraint-based curve manipulation. Computer Graphics and Applications, IEEE, 1993; 13: 43-49. 9. Juhász I, Hoffmann M. Constrained shape modification of cubic B-spline curves by means of knots. ComputerAided Design, 2004; 36: 437-445. 10. Georgiades PN, Greenberg DP. Locally manipulating the geometry of curved surfaces. Computer Graphics and Applications, IEEE, 1992; 12: 54-64. 11. Hu SM, Li YF, Ju T, Zhu X. Modifying the shape of NURBS surfaces with geometric constraints. ComputerAided Design, 2001; 33: 903-912. 12. Pourazady M, Xu X. Direct manipulations of B-spline and NURBS curves. Advances in Engineering Software, 2000; 31: 107-118. 13. Dachille IXF, Qin H, Kaufman A. A novel haptics-based interface and sculpting system for physics-based geometric design. Computer-Aided Design, 2001; 33: 403-420. 14. Liu X, Dodds G, McCartney J, Hinds BK. Virtual design works—designing 3D CAD models via haptic interaction. Computer-Aided Design, 2004; 36(12): 1129-1140. 15. Bickford WB. A First Course in the Finite Element Method. ISBN 0-256-14472-9, 1993. ⎯ 941 ⎯
© Copyright 2025 Paperzz