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)

Tuesday, November 4, 2008

A Day in the Life of a Frustrated CAD User

This letter is about 8 years old. I just found it as I was going through some old files. Not sure why I kept it around other than for a few good laughs. Not sure why I'm even posting it. I did take the name of the CAD system out of the letter as he doesn't speak to highly of it. (I also tried to clean up the expletives)


>> So how is everything going at your new company? How is the CAD system?

I spent 12 hours today changing 1 note on 4 drawings, making .igs and .pkg files. Every time I turn around, something updated and created massive data management nightmares. Another thing I can't stand is that your model file automatically saves every time you check something out, check something in, move to the drafting setup, move out of the drafting setup. I ---- you not, if you have a decent size model file, you can easily blow 10 minutes per hour waiting for ---- while it is saving. And anytime you have to ---- around with the history tree, you have to update the part. Well, nobody gives a ---- (and I don't blame them) about how gigantic a history tree is. So guess what, if you are trying to change a feature and it ----s up something downstream, you spend 80% of your day trying to get the part to update. Don't forget the automatic save, so no going back. If you ---- up a tree, you get to either blow the whole day, sometimes more just trying to get it back to where it will update. Modeling in solids is almost impossible. So instead of actually designing, you spend 90% of your time in the history tree, hunting down bad nodes, then when you find them, it's a complete mystery how they happened, and how to fix them. Nobody constrains anything (again I don't blame them) so there goes the POWER OF this CAD System right down the ol porcelain hopper. The only people enamored with this CAD System are the CAD Admin guys, and the managers who don't have to use it. It is such a bogus tool.

Get this: A set of 4 bezels. Basically a hollow injection-molded shell with 4 bosses. Rates a 2 on a scale of 1 to 10 in difficulty. Since this program was rolling before I got here, the job was outsourced. This firm had 3D imported models that were of pressure-formed design. All they had to do was convert the design from CAD SystemA pressure-formed parts to this CAD System injection-molded parts. If I were using SolidDesigner, this job would have not taken more than 1 month at the most, including 2D CPK drawing. I think the parts could have been modeled in maybe 6 days tops. Took these guys 3 MONTHS and $25,000 dollars. We have 3 guys who are CAD System experts, and you would not believe how many times they have told me, "It's going to be easier if you just recreate the model". ARE YOU ------- KIDDING ME? These outsource 'experts' have actually asked me, "How important is it for THAT change to happen? It's really going to take some effort”. This was the response to my request of, "Can you make the boss .10" taller?". EXPERTS! How ------- embarrassing. One bezel would not update because of a blend that was ----ing up an edge. Took 2 guys, 6 hours working on it, and they finally said, "eh, we couldn't get it to work, you'll just have to live with the messed up history tree." A---------MAZING.

My "mentor" just keeps laughing, because he's a SolidDesigner user, so he knows the nightmare we are living. And PCB assemblies? We get a 2d .dxf file we can overlay, and model up the components ourselves. We have to track down the data sheets, model capacitors, asics, ---- like that. Modeling electronic components! What the ----! It would be a cakewalk for 3 SolidDesigner guys to blow 6 CAD System guys out of the ------- water. I'm getting really close to modeling my parts in SolidDesigner and then exporting them to CAD System as an .igs file. So what if the history tree is non-existent? Can't use it if it's there. I personally don't even think anyone would know what the hell I was using! This one poor bastard, he goes, "I like the history tree, you can go back and see how somebody modeled the part, and put in a feature before another feature, yada yada yada..." I said who gives a fat flying ---- about how somebody else modeled the part. I just want to punch a hole, delete a blend and be done with it. I'm here to design, not to do autopsies on parts that take longer than it took to design the entire product. Get this: I've only designed 1 part in the 3 months I have been here. And this company is ok with that. Freaky!

I talked to my buddy that is running SolidDesigner2000 on NT about how much CAD admin it requires. They don't even have a CAD admin guy. Freaky! We got CAD admin guys that used to work at CAD System that tell me, "oh, no... you can't do that." "It’ll be easier to recreate the part." "Do you really need to add a radius in that corner?" And they are all excited about the new version! oooohhhh....The new Yugo is out! The new Yugo is out!

Actually, this CAD System is like having an Italian sports car: REALLY powerful, but you have to crawl in traffic all day long. Goes really fast....when it works, you're actually fixing it 90% of the time. Want to change something, like valve caps on your tires? That would mean you have to change your valve stems, then change your rims, then your tires, then your braking system, then your engine. You know what? It would just be easier if you go get another car. It would be a lot easier. So give me a call sometime, and be happy with your CAD system.... I miss those days...."


Well, fortunately CAD systems have improved a lot since then. I don't think this happens anymore.

- - - does it?