See other templatesSee other templates

In previous articles, we had explored the application of basic true position using Zeiss Calypso software. We’ve covered basic setup of the characteristic and applying material condition modifiers. In this article, we shall discuss evaluating multiple features at once using true position.

Boss brings you a part, “We need to verify this hole pattern before we produce the batch and ship to the customer.” The part is pretty straight forward, a 4 hole pattern centered on a datum. Not a problem, here is our callout.

4 holes, with a .005” wide tolerance zone to datum features A and B. We also are allowed Maximum Material Condition (MMC) on datum feature B, the center bore, which allows more mobility of the coordinate system to translate and shift the coordinate system fitting the features within tolerance. Based on this datum reference frame (DRF) there is no rotational degrees of freedom either, piece of cake! We get to work programming our part.

4 True position callouts for each hole? check. Tolerance and datum reference frame setup per print? check. MMC condition applied to datum feature B? check. Here’s our printout boss, good to run the parts!!

We even turned on the additional position results so you can adjust the process, but you’re well within tolerance; run the parts! Production commences, all parts are made, verified to drawing, and proudly shipped to the customer. Everyone is happy, until the dreaded call from the customer several days later.

Angrily the customer informs you all the parts will not assemble and their hard position gaging method is rejecting the parts. How can this be?

We just violated the critical rule of simultaneous requirements! Per the ASME Y14.5 standard “All features referenced to the same datum reference frame must meet their requirements simultaneously”. What? The drawing must indicate a separate requirement if the features can move and rotate separately from each other.

Because there were no rotational constraints, Calypso had rotated the coordinate system until the feature fit within tolerance. However, we only told Calypso to look at the holes individually, ignoring that each hole was part of a pattern that “functionally” needs to be related together to work!

Below is what the part really looked like.



Because of the 4 separate true positions, we had 4 separate coordinate systems fitting features into 4 separate tolerance zones. What is the best way to evaluate patterns?  Drop in a true position characteristic and open it up.


Fill in your tolerance and Datum Reference Frame First. Once those are complete, click BORE PATTERN.



Choose the features within the pattern and click OK.

Edit all the nominals and tolerance for each feature.

Under your best fit methods, you have four evaluations to choose from.

LSQ-2D-Best Fit = Calculates the average best fit pattern, good for dialing in manufacturing process, but not for functional evaluation.

L1 – Best Fit = Similar to LSQ-2D, but less influenced by outliers and better for dialing in a manufacturing process.

Minimum-2D-Best Fit = Calculates a pattern such that the smallest maximum deviation occurs between a features ideal location and actual location. Simulates a Go / No-go gage. Outliers have a large impact on result.

Tolerance-2D-Best Fit = Applies the minimum 2D best fit and additional Zeiss calculations to closely simulate the Go / No-go gage. Will iterate and attempt to fit the features within the tolerance zones. This evaluation is considered the best fit for functional evaluation(Carl Zeiss, Best Fit of Patterns Presentation, 2003).  In more current versions of Calypso, this is refered to as View Tolerance (without MMC / LMC of references)


Next to the best fitting methods is the option of selecting Rotation and Translation.

Selecting these options allows the coordinate system to move and attempt to fit ALL the features into their tolerance zones at the same time. Just as one would wiggle and move a functional position gage until all the features fit, selecting these will allow coordinate system mobility. Depending on your drawing callouts, these options may or may not be applicable. Because MMC applies to the datum feature and there are no rotational constraints we can check both conditions. The bore pattern function does look at the MMC of datum features and applies any mobility the material modifier allows.

It is important to note, regardless of the MMC condition of the datum features, clicking translation and rotation will allow the pattern to shift and fit the features into tolerance zones.

Once you select the applicable mobility, click execute. You will notice values enter into your rotation angle and translations. Depending on the best fit method and the selection of rotation and translation, this is the amount your coordinate system shifted while attempting to fit all the features in to the tolerance zones. Click OK out of that box and click CALCULATE NOW on the characteristic window. Ok out of that. Any time you make a change to your Best Fit Bore Pattern characteristic, it is a good practice to click EXECUTE and CALCULATE NOW each time.

Run the new printout and compare the best fit bore pattern results to the previous results.

Three out of the four holes are out of tolerance! In order to aide manufacturing, Best Fit Bore Pattern can generate a graphics plot to better represent the pattern location.


No matter what amount of coordinate mobility or rotation attempted, Calypso cannot fit all the features into the pattern! The parts are bad! With some swallowed pride and an apology to the customer, the parts can be remade and inspected correctly!
Although the software allowed us to generate a “good” report, it is up to the programmer to understand the true design requirements and apply the correct tools within the software.

Many thanks to Ryan Stauffer who provided much of this information on using the Best Fit Bore Pattern tool, without whom, my hole patterns would still look like the original report!

Nathan Corliss

All screen shots Zeiss Calypso 4.2

JSN Megazine template designed by