Edited by Leslie Gordon
An emerging technology called “direct modeling” provides a new way to interact with solid models. As the approach becomes increasingly diverse, it can contain several different technologies that depart from traditional history-based modeling to give users a hands-on modeling experience.
Traditional history-based solid modelers, including Pro/Engineer, SolidWorks, and Catia v5, create solid models by storing a recipe of instructions, or features, that generate the model. Most history-based modelers cache the generated solid in their files, but the underlying instructions contain all of the information required to reconstruct the model.
That recipe is a highly interdependent sequence of instructions, which, like software code, must be executed to produce a result. Thus, changes to early instructions can cause later instructions to fail, which is known as rebuild or regeneration failure. For this reason, designers using history-based software must put significant thought into the intent they use to program modeling operations.
Direct modelers, on the other hand, forgo instructions and instead simply store the solid model itself. To edit models, designers work with what they have, regardless of model history. Although the direct approach was developed before history-based modeling, recent advances in solid-modeling technology and increases in computing power have fostered a new generation of direct-modeling tools.
Direct modeling doesn’t describe a new technology as much as a new hands-on way to create and edit 3D solid models. Although some direct modeling is now included in most CAD systems, it is also available in stand-alone tools that may be useful to engineers who haven’t previously used CAD. These tools help companies finally deploy 3D to augment monolithic CAD systems for detailed design and drafting. For different tasks, different tools are appropriate, and direct modeling has created a new class of tools.
As shown in “The flavors of solid modelers,” solid modelers can be classified according to how the user interacts with the model, and how the solid model is stored.
The constraint-driven approach — employed by both history and direct modelers — uses underlying constraint solvers to manage a model’s varying degrees of freedom and make edits that conform to those constraints. Constraints can be contained in the model sketches, between different components, and on the solids themselves. Constraints form a set of governing rules that dictate how a model may and may not be changed. They bind the model together so a change to one part, for example, can move many other parts and features. To change a model in a way that’s inconsistent with a given constraint setup, a designer must first reconfigure the system of constraints.
Tool-driven modelers, on the other hand, provide hands-on tools for making changes. For example, one tool might reposition geometry while another offsets it. Typically, on-screen “hints” help users preserve high-level design intent such as offset and mirror relationships. Users merely select the geometrical element that needs editing and make the edit using the appropriate tool. Design intent is captured by the use of dimensions and annotations. Dimensions in advanced tool-driven modelers can even precisely drive tools.
The traditional approach
History-based software was developed in the 1980s as a way to run solid-modeling software on the hardware then available. At the time, history-based programs provided distinct advantages over previous 3D approaches. For example, designers could actually make changes to solid models. Companies such as PTC and SolidWorks developed the so-called “feature-based,” “parametric,” and “associative” concepts that continue to work in all solid modelers today — and in the new direct modelers.
Design intent or modeling intent?
Also, there are many different techniques that can be used to capture the relationship including sketch constraints, annotations, Boolean features, multibody modeling, and validation criteria.
There are other important decisions that affect design intent. Should designs live in separate files or do they belong in the same le? Where do they fit into the assembly structure?
In the simple case above, the design intent seems pretty clear: The shaft and the hole need to coexist. One part doesn’t necessarily “deserve” to drive the other. However, there are a myriad of different implementations of modeling intent, all of which have their own trade-o s and none of which perfectly capture the actual design intent. Different users and different companies will chose different approaches, and there is no clear right and wrong.
Some companies have a policy that parts cannot have relationships to each other, because an innocuous edit to one part can destroy an assembly that uses the part. In this case, the only way to nd out is to open every assembly that uses the part and regenerate it. Other companies have CAD architects that do nothing but think about the right way to build relationships into their models. Constraint based modeling techniques span the full rigor spectrum.
While constraint-driven direct modelers provide some discipline via constraints, it is diffcult to argue that this approach makes more reliable models. On the contrary, one can argue that constraints cause hidden, unexpected changes. Tool driven modelers have a simpler philosophy: When you want to move the shaft and the hole, just select them and move them. If you move one and didn’t notice the other right away, that’s okay. Move it later.
It is therefore more accurate to describe older systems as being “history based” instead of “feature based,” and “constraint driven” instead of “parametric.” Modern direct modelers, for example, further the concept of a feature by letting users save both selection groups and editing modes. Tool-driven modelers also permit precise dimensiondriven, parametric editing.
Traditional history-based systems are powerful tools in the hands of experts. Their sequential nature suits design problems that are already well understood and documented by concept models or 2D drawings. History-based modelers make an excellent choice for knowledge-based engineering and for generating families of parts. Manufacturers that create highly configured designs can benefit from the use of a history-based modeler because it lets companies program business and engineering logic into the model recipe.
However, there are drawbacks to the history-based approach. First, designers must have a well-thought-out game plan before they start modeling. Otherwise models can become a nightmare to work with and different users cannot edit each others’ designs. In addition, users must be well trained to be successful. A week or two of training is mandatory for most designers, and once trained, designers must plan on joining user communities to continue their education.
Also, in the past, the user experience in history-based modelers was relatively noninteractive. Edits mainly involved typing in dimension values, reprogramming placement constraints, and seeing if the model regenerated. Some CAD developers have since created rejuvenated user interfaces that allow direct manipulation using interactive tools to modify underlying histories.
These interactive history-based modelers, such as SolidWorks Instant3D, make model creation and editing more hands-on than traditional systems. For example, previously, editing the position of a hole entailed rolling back the design history to the point where the sketch existed but the extrusion didn’t. The trouble was that users couldn’t see ramifications of edits until the model regenerated. Interactive history-based modelers let designers modify sketches by directly moving the faces of the features, helping designers better visualize what they are doing.
Also, interactive history-based modelers let users make changes through special “tweak” or “local-operation” capabilities, so designers can edit solids regardless of their history. This capability smooths CAD interoperability problems but, if used inappropriately, can ruin models.
Consider the task of moving a hole created early in the model history. In a traditional system, such a move could cause regeneration failure and be tedious to fix. An interactive history-based modeler would let designers move the hole by adding further history. However, this “hackand- stack” approach is typically derided by experts as a recipe for disaster because modeling intent becomes muddied and the models become unnecessarily complicated.
Living with no history
Some CAD developers use an explicit or pure solid geometry with overlaid constraints to indicate modeling intent and to restrict edits. With no history, constraint-driven direct modelers let users edit models regardless of how they were created or from what CAD system they originated. However, the software only permits edits that are valid within the existing set of constraints.
The constraint engine in this type of modeler uses both constraints specified by users and those inferred from surrounding geometry. Users can restrict model edits similarly to how they can lock-down traditional history-based models. Constraints perform two duties simultaneously. They guide tools for short-term edits and they document long-term modeling intent. However, designers must constantly remove and recreate constraints to make simple edits.
Developers such as Siemens support this form of direct modeling. Other developers contend that constraints interfere with the freedom of direct modeling. Given that a constraint-driven direct modeler was only recently available, it’s too soon to tell. Also, current constraint-driven direct modelers are built on top of venerable CAD systems, so only users of those systems are likely to enjoy this alternative modeling environment.
In contrast, pure 3D direct modelers provide highly interactive, flexible tools that let users work on models without worrying about history or constraints. Instead of storing design intelligence in the model, these modelers provide intelligent tools that recognize underlying features, such as rounds and ribs, on-the-fly, and let designers edit them as they best see fit. These tools work in conjunction with annotations on the model to permit precise dimensional editing without the complexity of constraints.
The lack of an underlying model history and constraints eliminates the need to debate modeling practices. One approach to creating a design is just as valid as any other. Without the conceptual overhead of constraints and history, designers using pure 3D direct modelers can create and edit models extremely rapidly. This kind of modeler suits conceptual engineering and industrial design, as well as applications such as analysis and manufacturing engineering that involve extensively revising and editing existing designs.
Some pure direct modelers such as CoCreate and Key- Creator were developed before history-based modelers. More recently, software such as SpaceClaim provides a direct solid modeler without the legacy of a traditional CAD application.
Previously, many engineers who investigated history based modelers found them too complex and expensive. Now, however, there is a range of options. Pure direct modelers provide the simplest and often the least-expensive approach to 3D. Designers who don’t want history but like the idea of constraint-based editing might prefer a more-complex direct modeler. Satisfied history-based users won’t be left out, because CAD developers are rushing to add a history-based form of direct modeling that makes sense within the traditional environment.
Perhaps the most compelling benefit of direct modeling is that it offers a solution to industry interoperability woes. Without requiring history, solid modeling tools can work with each others’ data, letting engineers, designers, and suppliers deploy the right tools for each job rather than being forced to an arbitrary company standard. The result will be more innovation and a more pervasive use of 3D worldwide.
Comparing a history-based and a direct modeler
Two plates, each with a hole, are properly dimensioned. The design goal is to make the upper hole concentric and coaxial with the lower one.
In a history-based modeler, the first step would be to roll back the model to edit the hole’s defining sketch. Notice that you can’t see the hole, only the sketch that created it.
The next step is to delete the constraints positioning the hole. To create new constraints to the lower hole, it is typically necessary to project the face of the hole to the sketching plane.
…and equal size constraints followed by regeneration finish the job.
Then a resizing tool would make the holes the same diameter.
The finished model from a direct modeler has the original annotations still attached.