Automaticly Calculate Tolerances

Automaticly Calculate Tolerances

Anonymous
Not applicable
1,305 Views
6 Replies
Message 1 of 7

Automaticly Calculate Tolerances

Anonymous
Not applicable

I'm using vanilla AutoCAD 2017, and I'm struggling to find an easy way to tolerance dimensions.  Is there a way to setup the tolerances so that every time I create a linear dimension, AutoCAD automatically references a table to determine which tolerance should be applied?

 

 

Ex

For dimensions 0-1"  apply a .01" tolerance

For dimensions 1-2" apply a .02" tolerance

so on and so forth.

 

Thank you in advance for your help.

0 Likes
1,306 Views
6 Replies
Replies (6)
Message 2 of 7

dmfrazier
Advisor
Advisor

I don't know of a way to do this in AutoCAD without some specialized customization.

Is this not something that could be (more easily and perhaps better) handled with notes or a table on the drawing?

0 Likes
Message 3 of 7

Anonymous
Not applicable

Thank you for the reply.  Unfortunately due to the amount of information in the tolerance table, it is impractical to include it on the individual drawings.

In the past the tolerances were individually added by the drafters to the QC drawings, but it takes a significant amount of time to manually add tolerances to every dimension.

 

I am exploring using a .NET script to add the tolerances, but i was hoping that there was built in functionality.

 

0 Likes
Message 4 of 7

john.vellek
Alumni
Alumni

Hi @Anonymous,

 

Tolerances are designed to work with Leaders and not dimensions.  Perhaps you could place your dimension on a non-plot layer and then link a Field with formulas to the dimension.  I think something like this MIGHT work. Would you like me to move this thread to the customization forum for more suggestions?

 

 

Please select the Accept as Solution button if my post solves your issue or answers your question.


John Vellek


Join the Autodesk Customer Council - Interact with developers, provide feedback on current and future software releases, and beta test the latest software!

Autodesk Knowledge Network | Autodesk Account | Product Feedback
Message 5 of 7

Anonymous
Not applicable

Hello John,

If you believe that this thread belongs in the customization forum, please feel free to move it. 

 

Using a field linked to the dimension may work well, my only concerns with that method would be getting the dimension spacing lined up properly, and applying a field to each dimension may be tedious.

 

Correct me if im wrong here, but the AutoCAD dimension object  appears to contain tolerance properties that can be used to set  tolerance information natively inside the dimension.  I was hoping for a method to automatically generate a meaningful tolerance in this property based on the dimension value.

 

 

I am actually unfamiliar with using a leader to apply tolerances, and will look into it further.

 

 

Message 6 of 7

john.vellek
Alumni
Alumni

Hi @Anonymous,

 

I apologize but I was a bit confused on your intent.  I was thinking about the tolerances that can be defined in the Geometric Tolerance window.

 

Capture.PNG

 

You are correct that a linear dimension can include tolerances as well but I am not aware of a way to link them to a formula or table other than what I suggested in my previous post.  I hope that other Community members can offer a bit of experience to this question and hopefully provide you with a means or customization to accomplish this task.

 

Capture2.PNG

 

 


John Vellek


Join the Autodesk Customer Council - Interact with developers, provide feedback on current and future software releases, and beta test the latest software!

Autodesk Knowledge Network | Autodesk Account | Product Feedback
0 Likes
Message 7 of 7

DannyNL
Advisor
Advisor

Something like this in LISP?

 

(defun c:Test (/ T_Selection T_Object T_Measurement T_Tolerance)
   (if
      (setq T_Selection (ssget '((0 . "DIMENSION"))))
      (progn
         (vla-StartUndoMark (vla-get-ActiveDocument (vlax-get-acad-object)))
         (foreach T_Entity (vl-remove-if '(lambda (T_Item) (listp (cadr T_Item))) (ssnamex T_Selection))
            (setq T_Measurement (vla-get-Measurement (setq T_Object (vlax-ename->vla-object (cadr T_Entity)))))
            (setq T_Tolerance (/ (1+ (fix T_Measurement)) 10.0))
            (vla-put-ToleranceDisplay    T_Object 1)
            (vla-put-ToleranceLowerLimit T_Object T_Tolerance)
            (vla-put-ToleranceUpperLimit T_Object T_Tolerance)            
         )
         (vla-EndUndoMark (vla-get-ActiveDocument (vlax-get-acad-object)))
      )
   )
   (princ)
)