This Client Server article is republished in its entirety from 2006 for reference purposes.
By Dan Abney, Bentley Support Analyst 14 August 2006 Modified: 25 October 2006
Feature modeling, or 3D modeling in general, can be a very powerful tool in design. However, as with most CAD practices, there are multiple ways to accomplish the same thing. You can develop a more efficient model if you are familiar with the implications of the various approaches. More efficient models can yield faster processing times when rendering, processing hidden line files, view shading, and translating to other formats.
The basic rule of efficiency for modeling in MicroStation's feature modeling system is: limit the number of features whenever possible. Features add words to the element. The more words there are, the larger the model is. (A word is equal to 2 bytes.) So if the same results can be achieved using fewer features, the model will be more efficient.
When approaching a modeling task, first ask yourself, "What is the basic shape of the object?"
You need to be thinking a few steps ahead of your current modeling task.
Then ask yourself:* What is the best way to achieve that basic shape?* Should I use a primitive feature?* Should I create a profile to extrude?* Should I create surfaces to be stitched together into a solid?
Once I have settled on the method to use for starting the solid, I start modeling. However, as I am placing features on the solid, I also consider how to start each feature. I treat each feature added as a separate model, which is not too far from the truth. Just as each element inside a cell contains the complete data on the primitive element, the feature in a solid contains the complete data that was used to build the feature. As the model gets more detailed, the size of the model will increase. Efficient modeling will help keep the size of the model to a minimum without sacrificing the design.
Keeping the model small requires taking a detailed look at the size of features in comparison to others, as well as the possible methods for creating the needed features.
In this example, a hole needs to be placed in the model. Of the many ways to achieve this simple geometry, three methods immediately spring to mind: hole feature, cut feature, and difference feature. To choose between these methods, I need to know more about the purpose of the hole and compare these tools. For a simple through bore hole, all three tools will work fine, but in terms of size, the results will not be the same. The hole feature will produce a feature of 216 words. The cut feature (using an ellipse as a profile) will be 240 words, and the difference feature (subtracting a cone primitive) will be 156 words. The difference feature seems more efficient, but there is more to consider. We only viewed the single feature used to create the hole geometry. Let's look at the whole picture now:
Total steps to complete
Feature Manager showing hole, cut, and difference features.
As you can see, the hole feature in this case is more efficient (has fewer words) and requires fewer steps to complete. Also, if you want to add a counterbore or threads, the intelligence is available for a quick change.
You can also improve efficiency when there is duplicate geometry. Holes or windows of the same size that can be copied from an original can also sometimes be arrayed. However, a single copy is more efficient then arraying a feature to make a single copy. So only array a feature when it is possible to make multiple copies with the same spacing or angle.
Sometimes the way to achieve the best model without compromising the design is not to start with a solid at all, but with surfaces. If the model is far beyond any primitive shape or any shape that can be extruded from a profile, use surface elements to build the model. I will build, in some cases, each face that makes the model using surfaces and/or closed shapes, then stitch them together using the Stitch Surfaces tool. If all the adjacent surfaces form a completely sealed, enclosed body, the result will be a solid element. Then you can add features as normal. An indication that a solid was formed is an entry in the feature tree with the label "nonparametric solid."
Example of a model that was started as a surface, then stitched to a solid.
One last thing I keep in mind when modeling is to try to wait until the model is done before adding fillets (blends) or chamfers, for two reasons. First, if you add a feature to an area that currently has a blend or chamfer (or any other feature, for that matter), and place a new feature in that area, the blend or chamfer can become invalid if the new feature alters the geometry that the blend or chamfer was originally applied to. Invalid features are displayed in red in the feature tree. While this is not a problem, it is not very efficient. Blends and chamfers are the usual suspects of this occurrence because the modeler decided to add them before the rest of the model was complete. I suggest keeping the feature manager open when modeling and check the feature tree often to see when a feature becomes invalid. Otherwise you may not notice that you have red features until later on in the modeling.
An invalid feature might result from opening an older model when new geometry needs to be added. If I run into this situation, I normally check the blend/chamfer dimensions, delete those features, add what is needed, and then reapply the blend/chamfer using the original dimensions.
The second, and more important, reason to wait until the model's geometry is complete is that any blends/chamfers that are the same size can be completed in the same feature. Holding the key down while selecting edges to chamfer or fillet lets you select multiple edges. Once the chamfers/blends are accepted they will be applied and placed under a single feature in the feature tree. This is much more efficient than adding the blends/chamfers one at a time.
Remember, however, that all the selected edges will use the same blend/chamfer feature, which can be very helpful when you want to change the dimensions of the blend/chamfer across multiple edges of the model. On the other hand, if you need to make a single edge use a different dimension, the entire feature must be deleted and replaced to separate that edge from the rest.
In closing, I'm not suggesting that you inspect all of your modeling processes to find the method that produces the smallest model. Nor am I implying that these are established standards. These examples are to just to help show that, while there are multiple ways to accomplish a modeling task, some methods are better suited than others, depending on your needs. Feel free to use my tips as a basis to start to develop your own set of modeling rules, based on your experience.
Client Server Archive
MicroStation Desktop TechNotes and FAQs
Bentley's Technical Support Group requests that you please confine any comments you have on this Wiki entry to this "Comments or Corrections?" section. THANK YOU!