Wednesday, November 12, 2008

3D Solid Modeling Terms & Definitions

(according to me)

It’s amazing how many different terms are used to describe the same thing, especially as it relates to 3D modeling and the related technologies. So here is my take at a few of these. Please add your own, or suggest corrections to mine.

History Based Modeling: This is the typical technology used for most of today’s 3D CAD systems. Modeling operations are stored as features and organized sequentially in a tree, maintaining a parent/child relationship. As you are creating the model a recipe, or program, is being created that will record everything about the development of the model including 2D sketches, 2D parameters on the sketch, 3D operations and the parameters, or variables, related to the 3D operation. Edits are done by accessing one of the previous operations and adjusting a sketch or a parameter. After adjustments are made, the “program” can be replayed to get a different or edited model.

Other terms for history-based modeling:

  • Parametric Modeling: This term is used as parameters are critical to the ability to make edits to a history-based model.
  • Variation Modeling: This is an old term that used to be used to describe history-based modeling, but in this case the sketches and 3D operations did not need to be fully constrained. You don’t hear this term used much anymore.
  • Others: ?

Other related terms:

  • Direct Editing: This term is usually used to describe direct geometry edits that are being done within a history-based environment. Each edit is usually captured in the history tree, similar to a feature. There are some exceptions to this.
  • Others: ?

History-Free Modeling: This term describes a method of creating and editing 3D geometry by directly interacting with the geometry. Modeling steps, or operations, are not stored and there are no parent child relationships. Edits are not done through interaction with previously defined features or sketches. Edits are performed directly to the geometry. These CAD systems must be very intelligent to properly and intuitively manage geometry and topology of a solid model. If editing of any geometry attempts to create a hole or gap in the solid, the solid can be corrupted and the operation will fail. If topology (connectivity) must change to support a desired edit, the system must make intelligent choices and properly reconnect the solid.
Other terms for history-free modeling:

  • Explicit Modeling: PTC. This term takes me back many years. In reality, before there was history-based modeling there was only Explicit Modeling or CSG Modeling. Those were your choices. Today’s history-free modeling is a long ways from what it was back then.
  • Dynamic Modeling: CoCreate (before PTC)
  • Direct Modeling: Not sure where this came from
  • Natural Modeling: I’ve seen SpaceClaim use this term
  • Synchronous Technology: Siemens uses this term
  • Geometry-Based: Kubotek uses this term occassionally
  • Others: ?

Here is another way to describe the two.

History-Based Modeling: A dumb CAD system interacting with an intelligent model (Sounds a little harsh, but in reality you are just writing a program graphically and defining variables, changing variables and replaying the program. The history-tree is the program, the CAD system is the compiler and the model is the output.)

History-Free Modeling: An intelligent CAD system interacting with a dumb model (although the model can be made intelligent, it is not required)


Anonymous said...

a couple of notes to your great post:

(1) I believe that the right term is not "Variation Modeling" but "Variational Modeling". (variational geometry was promoted in the scientific community mostly by prof. Gossard of MIT back in the '80).

(2) While "History-Based" is the most common denomination I believe is a misleading one. History suggest a linear sequence of operation. A parametric model is rather a direct graph (a direct hyper-graph to be specific) of operations. In fact, smart evaluation algorithms can evaluate only a sub-graph rather than all the operations following the modified operation.

The separation between parametric and variational is not always as easy as it seems. Many CAD systems use some sort of variational engine to solve constraints in a 2D profile while they using history-based algorithms to solve the 3D model.

Lindsey said...

As soon as I saw this title I thought - I wonder if this is Paul. Ok here are my additions:

Hybrid Modeling - basically to describe Synchronous I think

Best 3D modeling ever - to describe CoCreate of course

Solid DNA said...

Hi Paul

I Publish this lexis a few days/weeks...

Solid DNA

Paul Hamilton said...

Thanks for correcting my typo. I did mean Variational, but it didn't come out that way :<(
Was it SDRC that first used "Variational" when describing Master Series?

I also really apperciate your comment #2 - well done.

Thanks Lindsey,
Your last comment is right on. I actually avoided bringing up the hybrid term :<) - since it is just all over the map. Your definition is as good as any.
I think it should just be used for cars from now on.
Actually the first time I heard the term "hybrid" used in the context of CAD waa when a startup company merged B-rep modeling technology with CSG modeling technology. The product was called Pro/Engineer.