What’s New in SOLIDWORKS MBD 2018: Define Semantic Default Tolerances

Oboe Wu | Comments | October 27, 2017

In model-based definition (MBD) implementations, a common challenge is that 3D annotations can take a lot of time to call out explicitly and, as a result, can quickly crowd the graphics display. Figure 1 shows an example of busy 3D annotations. It’s difficult not only for the data authors to create, but also for the recipients to interpret.

Figure 1. A crowded display of a 3D annotated model.

Annotating a 3D model can take anywhere from several minutes to dozens of hours, depending on the model complexity, the required level of details and a user’s skills. Because most engineers are more familiar with 2D detailing tools than with 3D annotating techniques, a frequent objection is that “I can detail it much faster in 2D drawings. Why should I bother with 3D annotations?” This objection may become more pressing since 2D drawing tools have been perfected for the past 20 or 30 years, while MBD software applications are relatively new and less developed. After the annotations are added, the busy display can make it hard, or even overwhelming, for downstream data consumptions as shown in Figure 1.

To be fair, the crowded annotation display happens to both 2D and 3D, but just occurs more often in 3D than in 2D. The reason is that the 2D nature of drawings has to rely on multiple perspectives to present the information separately,such as front, top and right views. So each view is less likely to become too busy. While in 3D, technically speaking, you can fully define an entire model in one viewport and rotate the model to present the data.

Then how can MBD implementers answer these challenges? One recommendation to ease the MBD data consumption is to organize and present the 3D annotations clearly. Besides well-organized presentations, you may also combine multiple annotations together as illustrated in a previous article, “Call out Multiple Features Together with a Single Annotation.”

In the same light, the latest SOLIDWORKS MBD 2018 release provides two more new enhancements to simplify annotating 3D models and alleviate the busy displays. One is to define a general profile tolerance in a note or a table in compliance with the ASME Y14.5:2009 standard on Geometric Dimensioning and Tolerancing (GD&T). The other is to customize and insert a tolerance lookup table per the dimension sizes and tolerance classes in a similar fashion to the ISO 2768-1:1989 standard.

The guiding philosophy is to define the default tolerances at a centralized location, either a note or a table, so that you can call out only exceptional requirements in the explicit feature context, and leave the remaining untoleranced features to the default tolerances. You may notice that these techniques are inherited from 2D drawing conventions. That’s right, but they have been added with new values by leveraging the advantages of 3D digital representations. Now let’s take a closer look.

First up is to insert a default general profile tolerance. Figure 2 shows a quick animation of the steps.

Figure 2. Insert a default general profile tolerance to fully tolerance a model.

Please notice that initially, despite the existing 3D callouts, this model is not fully toleranced as indicated by the SOLIDWORKS MBD “Show Tolerance Status” tool. The original model color, blue in this case, means these features are not toleranced at all. Yellow faces mean they are partially toleranced and green ones mean they are fully toleranced. If the design requirements are to focus on the existing explicit callouts and leave the rest of the features to a default tolerance, then you can insert a general profile tolerance in a note, similar to a 2D drawing convention in compliance with the ASME Y14.5:2009 standard.

Furthermore, it goes beyond a simple note for human reading. The added general profile tolerance is actually semantically controlling all the untoleranced features. If you check the tolerance status again, you will find the entire model is green now. And this general profile tolerance is consumable through the SOLIDWORKS API for software applications such as computer-aided manufacturing or coordinate measuring machine. This way, the software can act upon the default tolerance and automate the numeric code programming accordingly.

By the way, some engineers may have concerns about using profile tolerances and call it a “lazy” engineering practice. This usage is actually gaining momentum thanks to the manufacturing technological progress these days.For example, more and more manufacturers are using laser scanning for inspection. Then the scanned point cloud is overlaid and aligned with the nominal 3D model to compare the deviations automatically. In this case, profile tolerances are nicely supported by the technology. Some manufacturers even define an entire part with only one all-over profile tolerance because their organically shaped designs are inaccurate to define feature by feature anyway. Profile tolerances and laser scanning inspections provide a perfect model-based solution here.

Besides the GD&T general profile tolerances, your organization may still apply general linear and angular tolerances according to feature sizes and tolerance classes per the ISO 2768-1:1989 standard. Table 1 shows one example of linear dimensions.

Table 1. General tolerances for linear dimensions per ISO 2768-1:1989.

Permissible deviations
in mm for ranges in
nominal lengths
f (fine) Tolerance class
designation (description)
v (very coarse)
m (medium) c (coarse)
0.5 up to 3 ±0.05 ±0.1 ±0.2
Over 3 up to 6 ±0.05 ±0.1 ±0.3 ±0.5
Over 6 up to 30 ±0.1 ±0.2 ±0.5 ±1.0
Over 30 up to 120 ±0.15 ±0.3 ±0.8 ±1.5
Over 120 up to 400 ±0.2 ±0.5 ±1.2 ±2.5
Over 400 up to 1000 ±0.3 ±0.8 ±2.0 ±4.0
Over 1000 up to 2000 ±0.5 ±1.2 ±3.0 ±6.0
Over 2000 up to 4000 ±2.0 ±4.0 ±8.0

In SOLIDWORKS MBD 2018, in order to specify manufacturing processes not fully supported by the standard, you can now customize and display this type of tolerance table. Figure 3 shows a workflow animation.

Figure 3. Customize and display a general tolerance table.

Please note that you must set the dimension tolerance type to “General” in order to apply the default tolerances from the table. The actual tolerances are not displayed one by one locally at each dimension, so you need to look up a value in the table per a dimension and tolerance class, similar to the usage of a 2D drawing general tolerance table. However, beyond the visual lookups, the general tolerances defined by the table are consumable behind the scene through API for software automations. To save the manual lookup effort, it’ll be great if SOLIDWORKS can display the tolerance values locally at each dimension in the future.

Let’s conclude this article with some food for thought. The numeric controlled machining center capabilities have evolved significantly in the past 10 years. Most of them can reach the tolerance of 0.005 in by default. So if you have tolerances looser than 0.005 in, you may not have to call them out because the machine centers can do better than that by default.

If you have any comments or questions, please feel free to leave them in the comments area below. To learn more about how SOLIDWORKS MBD can help implement your model-based enterprises, please visit its product page.


About the Author

Oboe Wu is a SOLIDWORKS product manager with 20 years of experience in engineering and software. He is an advocate of model-based enterprise and smart manufacturing.

Recommended News