View Single Post
  #9  
Old 05-03-2007, 12:27 PM
Marten Marten is offline
Registered User
 
Join Date: Feb 2006
Location: Tilburg, The Netherlands
Posts: 139
Re: OneSpace vs. SolidWorks

Hi Steve,

In my opinion, the trade off is simple too. Why take the time to always think about the design-rules and add them, when you most likely don't need them?
With history based modeling you have to think hard all the time, when you are creating a model. You have to think: how would this model be changed in the future, because if you don't build the model in an appropriate way, it will be harder to modify. This won't be a big problem for easy parts, but it will be a big problem with complex machines.

When you are designing a machine, you have to add design-rules on every part, even when there aren't any. For example: you model a flat metal part of 500 mm long. Then you add 5 holes evenly divided, in a linear direction. Which design rules do you add here? Is the line of holes always centered to the model, or is it always on the same distance to one side? How many holes are needed? When I make the part 1000 mm long, do I still need 5 holes, or do I need more? When you are creating the part, you can't answer these questions, because you don't know how the part will change in the future.
How these holes are positioned, and how many you need depend on how you are going to modify it. So when you need to modify this model, you still need to think about how these holes need to be positioned. Where is your 'advantage' of the history in the model? It did take more time to add the rules, and now you even have to dig into the models history to find out how you can modify to get what you want. Again, this takes extra time. But you aren't finished yet. After you have modified the model, you have to check if other parts didn't modify in an unexpected way. The part that is bolted to this model, did it stretch when you stretched the model, or did it move, or didn't it get changed in any way while it should?

All this burden is even more restricting when you are designing completely new machines, where you don't exactly know how it will look and function. You will likely change a lot during the design process, and you constantly need to think about the design-rules, even if you don't know (yet) what they are. And because it is a history based modeler, you have to invest the time.

Now another example. You created an assembly a while ago, and now need to create something similar, but nonetheless different. If you use this model in a history based system, you also 'inherit' the design-rules a.k.a. history. For this new assembly, these design-rules probably don't apply, but you still have to study them and modify them in order to modify to model the way you like.

I don't think this is the smart way. Keep it simple! That is the smart way.

In your post, you have the example of the cylinder where a taper is applied to. In order to modify the diameter in the history-based system, you have to know how the model was created, or you have to study the history to find out. Is the conical face created by a taper, or is it created by revolving a cross-section? This stipulates the way the model needs to be changed. In OneSpaceDesigner you need a few commands to do this. The offset-command can be enhanced in order to make this easier, but you definitely don't need to do trigonometry accomplish it. (You can un-taper, change diameter, re-taper or you can draw the new diameter on a workplane and offset the face while using measure to determine the distance.) It's not as hard as you pretend.
There are examples where a change can be implemented faster in a history based system, but generally speaking, I don't think this is the case. The change has to be 'in line with' the history in order to stand a chance to be faster.

In your post, you say: "when the model fails to regenerate (...) you have no idea what is causing the failure. When a history based model fails, the system tells you precisely what features are failing and to some extent guides you in what you need to do to fix the problem.
I don't think this is a good comparison. A history-based system tells you precisely what feature is failing down the history-path. The versions of SolidWorks I used didn't tell you why that particular feature failed either. A dynamic modeler doesn't tell you what feature, because there is no history-path to a feature that fails because of the modification you made. The only feature which will fail is the 'feature' (=face(s)) you are working on. Why it fails isn't always obvious, but the same goes for history-based systems. The fact that the software has got a history isn't the reason why the software can or cannot tell the user why a feature creation/modification fails.
The only thing a dynamic modeler doesn't have to do is point to a feature that fails, because you just modified another feature up in the history-path.

I learned 3D CAD with history based modelers (I-Deas and Pro-engineer). I though it was great, but I quickly encountered 'problems' with it. If you want to change a design rigorously, the system needs to re-calculate the complete history. It probably encounters many problems, which you all need to 'debug'. With a history-based modeler, you are more of a programmer than an engineer. It is a completely different way of thinking, which not every engineer masters. I don't have a problem with that, because I am a programmer, and I 'understand' the software and quickly find out what is wrong. But not everybody can do that. Even if you 'understand' the software, it is a lot of extra work which I don't like to do.
With history based modelers, a simple change (from an engineering point of view) can have dramatic consequences for the time you need to implement the change. Especially if you didn't create the model. With dynamic modeling, you can better estimate how much time it takes to make a change to a model you didn't create yourselves.

So, in my opinion, dynamic modeling is the smarter option, most of the time. OneSpaceDesigner has added parametric functionality to some instances where history makes sense, like creating an array of taped holes, which you can modify later by changing the parameters.
If you like the option of always having both technologies available, you can use HiCAD. We didn't choose it, because it lacks good programming possibilities and a flexible PDM system, but it is a nice solution. Because we hardly ever need history, we had no problem choosing OneSpaceDesigner.

With kind regards,

Marten Verhoeven
Reply With Quote