The debate that seems to never end
I’ve decided to write about this because of a hair pulling discussion I heard the other day about two people debating whether to use parametric modeling techniques or edit the solid model at the parasolid level. The debate/argument went like all the others have. It went something like this: (person 1) I can make, create, edit faster using a parametric model. (person b) I can do it faster then anyone by editing the face. (person 1) without all those quick shortcuts and scripts? (person b) without anything, It is faster then using parametrics…. It seemed like it went on like this for ever.
Here is my stand point. There may be some people out there that can edit the faces of the solid and do it faster then someone editing parametrics. I doubt it but to shut them up for the moment we will agree. But the time they save, sacrifices down stream users. Some history about NX, All faces have an internal ID, when you create a mating condition, analysis, drawing, assembly, anything, NX uses this ID to keep track of what is going on. When you edit the faces, offset, remove and add blends, etc. That ID changes. So you saved 3 minutes on this solid but you cost more work for everyone else. Because now those face ID’s are different and the dimensions need to be reassociated, new mating conditions, edit the mesh on the analysis. So the big picture you caused more un-needed work. I hear the debate for mating conditions from someone already… What if we don’t use mating conditions, or if we do use mating conditions they complain that NX should update based on some black magic voodoo. Well the best thing that could happen is if there was an issue the part used in every assembly moved drastically for everyone to know. But most likely is that it could have moved ever so slightly that no-one will know exactly what moved, how much it moved, or why. Causing even more work.
Lets forget about the downstream users for a minute (like most people do). The debate about speed in the current model is still on. The way we look at it is, every part should be setup in a way that makes it easy, quick, and precise way to edit it. Give the part of the unparametric solid to someone else and they will be so frustrated, hacking it up, and waisting time. The cocky person that made this crap solid is probably saying, “It’s easy, why don’t you know how to edit it, you are dumb” well something like that. This is a classic result of job preservation attitude. No matter how stupid that is, people feel that if I make it so easy to edit it, i’ll be out of work. Again, they are looking at the big picture. The company your working at is probably turning away work or sending it elsewhere because they need it done and everyone is busy. You hardly ever see this directly because this is a management decision and all you see is the work in front of you.
Parametric models are your friends. Keep it Simple and easy for everyone to edit it. Add in engineering rules to determine the offsets, sizes, of your model. Refactor the solid as you go to extract difficult logic with simplier ones. Build an easy to use interface with clear names, why try to brag that you know more acronyms they someone else. side note: I knew of a company where the people actually made up acronyms in their own group that the rest of the company didn’t use, talk about dense). My last statement is, If we let the person take the prize on the quickest way to edit a solid is unparametric, how would they stack up on the second edit, third, forth. With parametric models this would be very easy to edit a second time, and so on. They would be able to make variants of the same model very quickly, updating the drawing, update the assembly, update the anaylsis, before the first person ever got done with the second model change.
If your thinking about flexible assembly components, parameters are the only way.
If you do have to import a solid from a supplier, or someone trying to preserve their intelectual property or reverse engineering a part. There is a great set of tools available, that allows you to take an unparametric solid and make it into an editable feature. That is called “Direct Modeling”.
Last statement, I have been hired to go to a company and automate building the companies parts. I’ve gone from extremes of full part automation (the users that felt they had to preserve their idea of job security repelled it like oil and water), even though the company was turning away work because they couldn’t get it done fast enough. The other side to fully automation, was to automate pieces of the work. Then combining them into larger and larger projects. The result was the company had more work, they need to hire more people to keep up with the work, and no one lost their jobs. Unfortunately the company that had the job security people making unparametric solids hasn’t laid off them yet. But it will happen, unless they change.