To me, one of the most important, if not the most important aspect of good modeling, is properly drawn sketches. PTC put the ability to create sketcher constraints into a sketch; USE THEM! (I am not refering to sketchers assumptions here, that is an entirely different debate)
Some people feel that the lower number of features the better. Some feel it doesn't matter. I feel that if the features in the model are in a logical order and are used appropriatly (such as all radii with the same value being in one feature) then it doesn't really matter how many features are in the model.
Regeneration times of a model should also be considered. A large number of features does not neccesarily mean long regen times. Poorly constructed features will slow down a regen more than a long list of good features.
These are just a few ideas. In the long run, I agree that the true test of a modelers ability is can a model created by one user be easily modified by another user.
Fewer features might make the model user friendly, but not necessarily.
The whole point of an associative parametric model is to make it as robust as possible when future design changes happen. In other words, changing a feature isn't going to send me into Resolve Mode by making other features fail.
For example, to reduce the number of features, some designers will make overly complicated sketches. A good rule of thumb is no more than a dozen entities in a sketch (when you can help it). Sometimes, to reduce the number of features, designers will put fillets in a sketch rather than create a separate Round feature later on. Putting the fillets in a sketch is an example of making fewer features that is a bad design practice.
Some good part modelling practices off the top of my head:
1. Do not save a model with suppressed features.
2. Simple sketches.
3. Put Rounds as late in the design as possible. Good rule of thumb: when possible, Rounds should not appear in the first half of the model tree.
4. Use Relations to build interdependencies among features. (In assemblies, use Layouts to build interdependencies between features in different parts. Assembly level relations are best for controlling offsets in assembly constraints.)
5. Rename features and dimensions to make them more intuitive. Use Local Groups to group related features.
6. To reduce parent-child relationships in sketched features, only use a reference plane that you intend to use as a sketch reference later on.
7. Avoid using edges as references; use a surface if possible. Default datum planes make the best parents.
8. Let manufacturing guide whether you choose to create a Hole or a Cut with a circular sketch.
9. Delete features instead of filling them in with a protrusion. I see this a lot with patterned holes, using with designers used to Boolean operator CAD systems. If necessary, redefine a pattern from dimension pattern to pattern table.
10. (2001) Use Make Datums rather than external datum planes if no other features will ever use that datum.
11. Transform surface features instead of Copy-Mirror or Copy-Move. Transformed features regenerate faster and decrease file size.
It's better to create the fillets as a separate Round feature so that design changes later on are easier to implement. Also, it allows you to place the Rounds later in the model tree to reduce the chance that someone would dimension another feature to the edges or tangent edges of a round.
Rather than wanting a model to fail (e.g., if someone modifies a round dimension), a much better proactive solution is to create Constraint type Relations, i.e. d13 < 4.
Rajeev initially asked if there was a defined rule for modeling. I would say the answer to that is no. But...
Whenever you're modeling, all your choices should be guided by your design intent. This is not just what you want your part or assembly to do or be, but how you want your model to react to changes. Choose your features, dimensioning schemes, order of features, parent-child relationships, relations, etc. in such a way to make your model as parametric, adaptable, and robust as possible, especially with regard to anticipated changes.
I'd add a corollary as well: the more thinking you do up front, the fewer headaches you'll have later on.
Making fillets as a separate feature makes design changes later on easier because:
1. Suppose you decide you no longer want the fillets. It's easier to delete a round feature than to redefine the sketch of a protrusion.
2. Rounds can be placed on layers and subsequently suppressed when doing structural analysis.
3. It's easier to find the owner feature to make changes if it's a round and not part of a protrusion.
I never said save rounds for last. If you read my initial post, I said place them as late as possible. If they need to be feature #15 out of 200, do so, if that's as late as you can place them.
Use of local groups in this case is purely cosmetic, to make a model user-friendly. If you ever have to choose between something to make a model parametric and robust (e.g. making rounds as separate features) and user-friendly (e.g., local groups), go with the choice that makes the model more parametric and robust.
Note that the list of good modelling practices are not set in stone. They are guidelines, good rules of thumb, but in no way absolute. Inevitably, you may find one guideline that conflicts with another. At that point, a designer needs to use their judgment to make a choice.
Regarding using Constraint type Relations and not having a dimension to use in the constraint... well, again, this goes back to design intent and thinking ahead. If you know that you want a feature to be constrained within certain limits, design that feature such that you have parameters to control. (For example, create an entity by sketching a line, arc, circle, etc. instead of using Use Edge in the sketch, so that you can get a dimension for that entity.) Let your design intent be your guide.
1. To delete a round, all one has to do is select the round, right mouse click, and select Delete. If the fillets are in the sketch, one has to select the feature, right click, Redefine, Section, Sketch, delete the sketched entities, and extend the lines the lines to one another. One might also have to use Edit > Replace in the Intent Manager in order to transfer parent-child relationships. I maintain that the first method is easier.
2. Meshers have been able to handle rounds for years. But a good designer does one's own analysis in the process of design. Assuming one is not doing a full-blown final analysis, it is common practice to eliminate features that are not of consequence (e.g., rounds, certain holes, tabs, etc.) in order to simplify the mesh and reduce solution time. If one has corners with stress concentrations, a person with analysis experience knows that he can ignore those results for now-- they're usually not the area of interest.
3. If the fillets are in the sketch, then the protrusion is the owner by definition.
Your last statement brings up another bad design practice: choosing a dimensioning scheme for the part based on what one wants to show in a drawing instead of choosing a dimensioning scheme that reflects your design intent. In general, if one is using the full power of Pro Engineer, 95% of the dimensions that appear in the drawing should be feature dimensions that are shown. A dimensioning scheme should reflect how one wants to control a model, not how one wants to detail it. Do not define or redefine a feature based on getting certain dimensions to show in a drawing. Define your model so that it reflects your design intent. Your design intent should reflect in general how you want the part to be manufactured and inspected, but the primary guidance in choosing a dimensioning scheme should reflect how you want to control the model and how you want it to react to design changes. If necessary, one can always create dimensions in the drawing-- but in general, this should be less than 5% of the dimension details of the drawing, when possible.
Who wants to delete rounds, I used to but don't bother any more because software and hardware nowadays are plenty fast without having to do this. It's a better representation of the part anyway to leave them in..
If the fillets are in the sketch, then the protrusion is the owner by definition.
Sketches always come before features so how can a protrusion own a sketch ??
what one wants to show in a drawing instead of choosing a dimensioning scheme that reflects your design intent.
You don't think drawings should reflect design intent ??????
ASME Y14.5 is a function based approach to dimensioning and tolerancing so it's not a question of what one wants to show in a drawing - it's what is required for part functionality or in your lexicon design intent.
Now with ASME Y14.41 this will have to be done in models too....
There are many reasons to delete a round... for example, your part no longer requires the round. That's the main reason I was thinking of to delete a round.
In a protrusion or a cut, if one creates a sketch in the process of creating the feature, the sketch is part of the feature. (It sounds like you create protrusions and cuts based off .sec files and sketched datum curves; Pro Engineer still copies that sketch into the protrusion or cut.) It is an element in the model dialog box. Therefore the sketch is owned by the feature.
The part should reflect design intent. The drawing reflects how you want someone to build and inspect your model. The two are not necessarily the same. In most cases there will be a large amount of overlap. And not everyone is on ASME standards... for example, our British friends.
I think you are speaking to generally, jabbadeus and dougr, on the issue of rounds. In designing parts that are to be injection molded, rounds can be a real issue. It sounds like dougr may not use rounds in a very complex scenario. In the parts we deal with, you wind up with round ref'ing rounds, ref'ing round to the nth degree sometimes. Molding practices sometimes dictate where you will have a round and where you won't, and most part designers aren't real familiar with molding practices, and even were they, differently molders build tools differently. Sometime you need to take a round out for mold manufacturability, but if the designer put it in eraly on, it will have references, and cause failures if you try to suppress it. I know, I see designers build webs around simple rounds as though they were a functional component of the part when ususally they're not, and then you try to suppress and the hole model starts falling in on your head, because you wanted to eliminate a simple round!
Then there is the issue of draft. I have seen designers build complete models with plenty of pretty rounds, but no draft. You can't draft a wall if it has a round at the top of it. Now what? Well, you hope you can go into insert mode before all those pretty rounds and add the draft that wasn't included.
It is really frustrating how most designers don't give much consideration to the manufacturing process. That's one more reason why a lot of manufacturers don't care about maintaining associativity into their design system.