Direct or History-Based Modeling?
by Leslie Gordon
Questions about the merits of direct over
history-based modelers, and vice versa, still persist in numerous
blogs and social networking sites. The heart of the debate is neatly
summed in an excerpt from a recently published whitepaper called
Variational Direct Modeling: How to Keep Design Intent in
History-Free CAD by Dmitry Ushakov of Ledas Ltd. in Russia:
"CAD-systems based on direct, or explicit, or dynamic modeling
have not replaced history-based design. The reason is that by
simplifying model editing operations such models leave too may
degrees of freedom to the users. As a result, practically any
editing operation unrecognizably changes the original model,
“alienating” it from the design intent. A table is no more a table;
a bearing is no more a bearing, etc."
Partially at issue is that the concept of “design intent” seems
to be defined differently in the two approaches. A history-based
modeler seems to define the “design intent” with the constraints and
relationships imposed on the design. So, for example, a hole will
always remain a certain distance from an edge, no matter how
parameters are changed. In contrast, explicit modelers seem to
define “design intent” as “what the designer envisioned.” The first
approach seems more “rigorous” and the second more “fluid.” Thus,
for example, if you model a large assembly in a direct modeler, and
then “pull” one of the components, say, for whatever design
consideration, does that not affect how all the other components in
the assembly interact with the changed one and perhaps with each
other? If constraints don’t work well in direct modelers, what’s to
keep a downstream designer from changing a model so much, it no
longer makes sense (for example, can’t be manufactured)?
So it would seem that direct modelers might be great to generate
design concepts, act as a “translator” between CAD systems, and
de-feature models for FEA or CFD. A history-based modeler, on the
other hand, might be good for “families” of mechanical designs, all
of which are similar, except for, say, size.
In response to some of these questions, Blake Courter co-founder
Corp. in Concord, Mass., says, “The term “design intent” means
many different things to different people. Clearly there is a
spectrum of rigor to design intent, but I don’t see a relationship
between a modeler’s ability to capture design intent and to whether
it is direct or not. For example, let’s say you have a simple
assembly where a shaft goes through a hole. In most feature
modelers, there are five different high-level strategies designers
might use to manage that relationship:
- There is no relationship between the shaft and the hole.
- The shaft feature follows the hole.
- The hole feature follows the shaft.
- The shaft and hole are made concentric using a simultaneous
- A third “skeleton” or “layout” describes the boundary
between the hole and the shaft and drives both parts.
Also, there are many different techniques that can be used to
capture the relationship:
- Sketch constraints
- Boolean features
- Multi-body modeling
- Inter-component parent-child relationships
- Validation criteria
There are other important decisions that affect design intent.
Should the designs live in separate files or do they belong in the
same file? Where do they fit into the assembly structure?
In this simple case, 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-offs 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 find 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. History-based modeling
techniques span the full rigor spectrum.
It is true that rule-solving direct modelers offer users some
rigor via constraints, but it is difficult to argue that the
constraint-based approach makes more reliable models. On the
contrary, one can argue that constraints cause hidden, unexpected
changes. That’s one of the reasons we left constraints out of
SpaceClaim. Our philosophy is simple: If 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. That
said, very detailed modeling intent is great for users wanting to
build families of models or highly-configurable models. Feature
modelers are currently best in these situations. However, the
modeling intent used is the best modeling intent to build the
models, and it is typically far-removed from the actual underlying
Article edited by Leslie Gordon,
Sr Editor, Machine Design
||Article reprinted by permission of Penton Media,
publisher of Machine Design