Sculpting CAD Models Using Deformable Surfaces

In this interview, Dr. George Celniker of Advanced Geometry Concepts (Austin, TX) explains an intuitive approach to building freeform curves and surfaces called deformable modeling. Deformable modeling offers a way of shaping curves and surfaces that differs dramatically from traditional control point manipulation. Instead of moving control points to increase the amount of curvature in a rectangular surface, for example, imaging blowing on the surface and seeing it "puff out."

The heart of the deformable modeling approach enables users to create shapes by applying forces to them which, as Celniker explains, is much more natural than moving a myriad of points. It is also simpler and faster. Celniker has been contracted by Spatial Technology to develop a deformable modeling capability for ACIS.

Q Dr. Celniker, what is deformable modeling?

Celniker: It is an easy to use, intuitive method for building complicated freeform curve and surface shapes. This method allows designers to sculpt in much the same way as one can imagine blowing up balloons and stretching rubber sheets. Deformable modeling simplifies the process of editing freeform shapes by adding an alternative to direct control-point manipulation.

Q Why do we need an alternative to control points?

Celniker: Control-point manipulation has the advantage of offering powerful local control over a shape, but its disadvantage, especially with large surfaces, is that local control makes it difficult to preserve global surface features, such as convexity or fairness, while editing the surface shape. For example, expanding the shape of a convex surface, as if blowing up a balloon, requires manipulating all the control points on that surface. Not only is this time-consuming, but as one control point after another is manipulated, the global convexity of the surface is lost in a series of golf ball-like divots. Modifying the shape becomes a tedious and difficult iterative process.

Q How did you get interested in deformable modeling?

Celniker: When I went back for my Ph. D. in the late 1980s, I became interested in ways to help people design complicated objects quickly. I felt there should be a better way of describing and manipulating geometry than what was currently available. Some papers I read by people like Demetri Terzopoulos and Andrew Witkin (then at the Schlumberger Palo Alto Research Center) looked at deformable modeling for purposes of visualizing large data sets. Terzopoulos hoped that one could make a deformable object that would automatically extract shapes from data sets.

I was already familiar with the mathematical modeling of deformable objects. My background is in mechanics, in which similar, but more detailed computer models are built to simulate the motions and deformations of physical objects as accurately as possible. What was new for me in Demetri's paper was the idea that such models could be used as tools for purposes other than simulating the behavior of physical objects.

My thought was that I could use deformable modeling as a tool to help simplify the process of designing freeform shapes. People develop an intuition about physical behavior based on their everyday experiences. When we push on something we expect it to move in a certain way. I knew I wouldn't have to simulate the behavior of a particular material like cloth or clay with great accuracy. I just needed to define some kind of deformable model that would mimic physical behavior closely enough to enable designers to use their natural intuitions about surface deformations to design surface shapes.

Q Will you expand on the technology behind the deformable modeler?

Celniker: At the heart of the deformable modeling algorithm is a shape optimizer that changes control point locations of a freeform shape to minimize shape stretch and bending. This optimization produces shapes that are naturally smooth and fair. The optimizer is subject to a set of point and curve constraints. These constraints make it possible for a shape designer to force any point location or any curve on the surface to a specified location in space. Additionally, a shape designer can apply any of a variety of loads, including "pressures," "springs," and "attractors," to manipulate the unconstrained portions of a freeform shape in an intuitive manner. Each load type can be adjusted by a change in a single scalar gain factor. Loads and constraints can be added, edited, and removed from a deformable surface in any order, allowing the shape designer to "parameterize" and then to sculpt the shape on the fly.

Q What would this sort of functionality look like to the end user?

Celniker: For example, I envision a slider bar popping up on the window that represents the magnitude of a pressure load being applied to a surface. As the user slides the bar back and forth, the amount of pressure varies and the shape of the surface changes. The user can look at a whole family of surfaces that always enforce the applied constraints to quickly select the preferred shape. In this way, deformable modeling changes surface shape design into parametric modeling.

Modifying a surface by varying a single parameter is a simple example of what can be done. A designer can apply any number of loads to different parts of a surface and have a slider bar for each load. By specifying the number, kind, and locations of the loads applied to the surface at run-time, the user builds an object-specific parameterization of the surface to be used to define the surface's shape. The number of these load parameters is independent of the number of control points in the surface.

One thing that is important to keep in mind is that the deformable modeling tool is just one additional entry in the grab bag of surface editing tools. Users continue to have the option of editing surface shape by any other existing surface shape editing tools, including direct control point manipulation.

Q How will this technology appear to the application developer?

Celniker: It will be a separate API. There will be a small set of calls to set up the model and solve it, to apply and vary loads, and to apply constraints and vary constraints. There are only about six principle calls so it should be a very small API.

Q How do you expect this technology to be applied?

Celniker: I expect the deformable modeling algorithm to be applicable in many situations but, in particular, for enabling the ShapeWright (c) paradigm for designing objects with freeform shapes. The ShapeWright paradigm consists of three steps. First, the shape designer creates a set of character lines. A character line is any edge location on the object where the surface becomes creased. The character lines form a wireframe model of the object. The second step stretches a deformable surface over every face of the object as if the wireframe model were slowly dipped into a bucket of soap bubbles so that a thin soap film filled every face of the object. The character lines become constraints for the deformable surfaces. In the third step, the designer applies and edits a sequence of loads to the object's deformable surfaces to sculpt the final shape.

Q Are there other pioneering technologies besides deformable modeling that will simplify the process of creating complex shapes?

Celniker: There is a lot of work being done on interpolating sets of curves. You see this showing up in the work on blending. People don't do control-point manipulation on blends. They say, "I have this blend curve here and this blend curve there," and perhaps specify a parameter or two describing the blend behavior. From that information, a surface is generated. Blending is another way to let people build complex surfaces without having to get in and manipulate control points.

Q Is deformable modeling being implemented in other CAD systems?

Celniker: My work in this area was published in 1990, and it generated a lot of interest. There are different groups of people working on this and different flavors of deformable models out there, but nothing that I know of in a commercial application.

Implementing this technology in a real-world application is more difficult than you might imagine. One of the key aspects to making deformable modeling work inside a geometric modeling system is the ability to mix a freeform component, which I do with loads, with a controlled component, which I do with constraints.

Mechanical objects have a mix of functional and non-functional surfaces. The 80/20 rule usually holds-that 80% of the surfaces on an object really don't have a function other than connecting the functional surfaces together. However, the small percentage of surfaces actually performing certain functions have to hold a particular shape. So even if you're going to have a freeform editor, you are going to have to preserve shape constraints. The other work I've seen has not done this well.

With our first release, we'll be supporting arbitrary point and curve constraints, so a user will be able to take any points on the surface and fix them anywhere in space. In addition, the user can draw an arbitrary curve on a surface and freeze it so that subsequent surface deformations don't violate that constraint. This will enable users to design a large object, like a car door panel, and then isolate and sculpt a small section of the surface for making detailed features, like door handles, while preserving the overall surface shape.

Q How does your work in deformable modeling tie in with Spatial Technology and ACIS?

Celniker: What we're doing is embedding a surface shape editor within the ACIS solid without changing the way the ACIS solid modeler works. This capability will give shape designers two distinct options for building solid models with complicated freeform shapes. They can sculpt surfaces to be combined into valid solid models, and they can sculpt the faces of existing solid models to get a result that is another valid solid model. Our goal is to build the deformable modeling tool so that the designer can mix and match the two building techniques as needed. This is an important requirement for the deformable modeling technology. Designers need to be able to both build and then modify solids models with freeform surfaces in an easy manner.

Q What effect will this ability to manipulate solid models have in the real world?

Celniker: The traditional mainstream users of CAD/CAM who make parts with freeform components should be excited about this technology. We are providing a technology that will simplify the sculpting of aesthetically pleasing surfaces subject to geometric constraints. This technology should greatly improve the mold design process.

This technology will also be a great benefit to what has so far been a fringe of the CAD/CAM market, the industrial designers. Traditional CAD/CAM shape editing functions have really been optimized for the machined metal solids marketplace and tend to under support the industrial designers. The deformable modeling tool is ideal for enabling industrial designers to design part shapes in new and simpler ways. For example, deformable modeling can be used to solve the two-liter Coke bottle problem. A freeform surface can be constrained to always enclose a two-liter volume. As the designer sculpts the bottle shape with loads, the bottle always deforms to maintain its two-liter volume. Once the problem is set up, the designer can interactively propose and examine any number of bottle shapes all with the two-liter volume property. Our first release of deformable modeling won't support advanced constraints, such as volume preservation, but these constraints are a possibility with this technology.

Deformable modeling also impacts industries that aren't current users of solid models, such as animation and data analysis. Solid modeling is good for animators because the animator can change a viewing angle without redraw. The scene being animated. The difficulty of building models that are life-like and move in natural ways has prevented animators from really exploiting solid modeling. Deformable modeling will greatly help the animators to create the kinds of models that they want. In the medical and oil field industries, CAT scan and seismic imaging technologies produce voxel models (3D equivalents to pixel models) of human body parts and sub-surface structures. Interpreting this data requires the identification and marking of the model features in the voxel data. Finding volumetric features in voxel data is done by seed methods, which work marginally well in CAT scans and less so in seismic data. In the future, deformable modeling may help automate the extraction of surface features within voxel models.

Home Page Next Page Previous Page Contents