skip navigation Logo of TU Dortmund Logo of TU Dortmund
Logo of CS Department Logo of CS Department
© Nikolas Golsch​/​TU Dortmund
Graphics & Geometry Group Graphics & Geometry

Interactive Shape Deformation

Interactive deformation is an important aspect of geometry processing, used for instance in CAGD and the movie industry. In our work, shape manipulation is driven by a variational optimization, which guarantees high quality deformations by minimizing physically-inspired energies subject to user-controlled constraints (Figures 1,2). We distinguish between linear and nonlinear approaches, depending on whether the energy minimization leads to the solution of a linear or nonlinear problem.

Figure 1: Physically-plausible deformations are achieved by a constrained minimization of stretching (center) or bending (right) energies.
Figure 2: Stretching the car's hood using multiple handle regions allows the wheel houses to be kept circular.

Minimizing quadratic approximations of deformation energies leads to a linear system to be solved for the deformed surface each time the user changes the constraints or drags some surface points. These so-called multiple right-hand side problems can be solved efficiently using sparse Cholesky factorization (Botsch et al., 2005). Precomputing deformation response functions, which can then be evaluated instead of solving the linear system, even allows for real-time mesh editing (Botsch & Kobbelt, 2004).

Space deformations warp the whole embedding space of an object, instead of computing the deformation on the surface mesh only. As a consequence, the complexity and stability of the deformation is decoupled from the object’s mesh representation, such that on the one hand very complex models, and on the other hand also point clouds or irregular triangle soups can be processed. In (Botsch & Kobbelt, 2005) we represent the space deformation by triharmonic radial basis functions, which provides smoothness guarantees similar to surface-based deformations. Since each mesh vertex is now transformed individually, the involved computations can be delegated to the programmable shaders of recent graphics hardware, which enables real-time shape editing of complex models at a rate of 30M vertices/sec (Figure 3).

Figure 3: Our variational space deformation allows for local fine-scale edit (center) as well as global deformations (right) of the complex head model (left, 660k triangles) in real-time.

While linear deformation approaches are extremely efficient, the involved linearizations can lead to artifacts under large deformations, in particular for large rotations (Figure 4), as we analyzed in our survey (Botsch & Sorkine, 2008). In such cases, nonlinear deformation techniques have to be employed. However, since then a nonlinear constrained minimization problem is to be solved for each step of an interactive deformation, particular attention has to be paid to computational efficiency and numerical robustness.

Figure 4: A detailed analysis and comparison of several linear deformation approaches reveals their respective advantages and drawbacks, and also demonstrates the general limitations of linear methods in case of large deformations.

In (Botsch et al., 2006) we developed a new nonlinear method for 3D surface deformation that achieves intuitive and robust deformations by emulating physically plausible surface behavior inspired by thin shells. The surface mesh is embedded in a layer of volumetric rigid cells, which are coupled through non-linear, elastic forces (Figure 5). To deform the mesh, cells are rigidly transformed to satisfy user constraints while minimizing the nonlinear elastic energy. The nonlinearity allows for intuitive results even under large scale deformations. The rigidity of the prisms prevents degeneration even under extreme deformations, making the method numerically stable. Our modeling framework allows for the specification of various geometrically intuitive parameters that provide control over the physical surface behavior (Figure 6).

Figure 5: The nonlinear energy, which glues the rigid cells together, measures the amount of deformation, such as stretching and bending, as indicated in red.
Figure 6: A user-defined force tries to lift the car's front. The center and right image show results for the same force on a rather stiff and a more flexible surface material, respectively.

Interactive performance is achieved by a hierarchical multi-grid solver (Botsch et al., 2006) or by an adaptive space deformation approach (Botsch et al., 2007). For the latter, the object is embedded into an adaptively refined octree-like voxelization (Figure 7), which can even be dynamically refinement during object deformation (Figure 8).

Figure 7: Deformations on a very large model. The user deforms the shape using a reduced model during interaction shown on the left. When satisfied with the results, thefinal space deformation is applied offline to the high-resolution model on the right consisting of more than seven million triangles.
Figure 8: The cut-away views show how the initial adaptive discretization is dynamically refined in regions of strong deformation, i.e., stretching and bending.