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 of SpaceClaim 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 assembly relationship.
-- 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 design intent.
Stay tuned for Blake’s article on “Trends in Direct Modeling,” to publish in the June 18 issue of Machine Design.