×
INTELLIGENT WORK FORUMS
FOR ENGINEERING PROFESSIONALS

Are you an
Engineering professional?
Join Eng-Tips Forums!
• Talk With Other Members
• Be Notified Of Responses
• Keyword Search
Favorite Forums
• Automated Signatures
• Best Of All, It's Free!

*Eng-Tips's functionality depends on members receiving e-mail. By joining you are opting in to receive e-mail.

Posting Guidelines

Promoting, selling, recruiting, coursework and thesis posting is forbidden.

Dimensioning an arc length.3

Dimensioning an arc length.

(OP)
Is it possible to dimension an arc in AutoCAD? I mean, like you can normally do with striaght line. I'd like to be able to pick an arc or pick the endpoints of the arc and have AutoCAD give me extension lines and dimension lines and of course the length of the arc (not the straight length or straight height of it). I'd like to have the dimension line follow the arc too.
Right now I have to do a property check on the arc and then just right it into the drawing. Or, if it's a 3D object with a curved surface, I have to explode it until I get to the line arc that I want and then do a property check for the arc line.
Thanks.

RE: Dimensioning an arc length.

That is a good question.  One that I have also been looking for.  It dosen't seem like to much to ask for.

RE: Dimensioning an arc length.

I've never been able to dimension an arc but I tend to list it then draw a line from one end to the centre point and then to the other end (forming a cheese wedge).  Then dimension the angle between the two lines and edit the Mtext manually.  It's not an answer but it looks okay when plotted.

RE: Dimensioning an arc length.

I'm all aboard on the Mtext option, not a great solution, but what is, really.
S = R * Theta

Like I said not a great solution, but it works.

RE: Dimensioning an arc length.

Here is what I do in AutoCAD LT97:
1) Go to DIMENSION/ANGULAR
2) Now pick the arc to create the dim line
3) Now go to MODIFY/LENGTHEN
4) Click on the arc, look at Command Line to see length
5) Go to MODIFY/PROPERTIES
6) Click on Arc Dimension, and manually type in length

Alt way of manually typing in dims:
a) find a dim with a fraction, copy it to the side
b) now explode the dim, click on it, MODIFY/PROP
c) highlight contents, and EDIT/COPY
d) now the contents are saved on the WINDOWS CLIPBOARD, and
as long as you don't "EDIT/COPY" anything else, you'll have those contents saved
e) now erase exploded dimension
f) go back up to #6, and now instead of "manually" typing
everything, highlight contents box, and EDIT/PASTE
g) now just change the numbers to what you want them to be

Hope this helps!

Andy Daugherty
Castone Corporation

RE: Dimensioning an arc length.

Here is what I do in AutoCAD LT97:
1) Go to DIMENSION/ANGULAR
2) Now pick the arc to create the dim line
3) Now go to MODIFY/LENGTHEN
4) Click on the arc, look at Command Line to see length
5) Go to MODIFY/PROPERTIES
6) Click on Arc Dimension, and manually type in length

Hope this helps!

Andy Daugherty
Castone Corporation

RE: Dimensioning an arc length.

Try going to Autodesk.com web site. Find Knowledge Base, Search using Keyword'(s): TS67876  /  Document #.
Or "Arc Length" - all the words. They have a macro that you can assign to a button to dimension an arc.

RE: Dimensioning an arc length.

Someone recently gave me this LISP.
MicroStation users always ask me if we can do this in ACAD.
I finally got someone to give the LISP.
Here it is ....

;;--------------------------------------------------------------
;; Ploetzl, Mieling - Vienna compuserve id 100115,3172
;;--------------------------------------------------------------
;; DIMARC.LSP
;;
;; dim length of an arc
;; uses the autocad command dim angle and replaces the angle measure
;; with the length of the arc segment
;;
;; CALL: dima
;;
;; 0992pf ver11c2/0.1
;; 0494pf ver12c1/0.2
;;--------------------------------------------------------------
;
; error, save and restore variables
;
(defun be:er (s)
(if (/= s "Function cancelled" )(prompt (strcat "\nError: " s)))
(setq *error* be_or)
(setvar "osmode" oosm)
(setvar "cmdecho" ocmd)
(princ)
)
;
; up info
;
(defun be:inf ()
(prompt (strcat "\nLayer: " (getvar "clayer")
"\tTextheight: " (rtos (getvar "dimtxt"))
"\tDimStyle: " (getvar "dimstyle")
)
)
)
(princ ".")
;;
;; dima
;;
(defun c:dima (/ e d piu sel elem selnam rad ang lae antw ptr pt1 pt2 rad1 rad2)

;error, save var
(setq be_or *error* *error* be:er
oosm (getvar "osmode")
ocmd (getvar "cmdecho")
piu (/ 180.0 pi)
e (getvar "lunits")
d (getvar "luprec")
)
(setvar "cmdecho" 0)
(setvar "dimse1" 0)
(setvar "dimse2" 0)

(prompt "\nDim ArcLength ver12c1/0.2pf0494")
(be:inf)
(if (setq sel (entsel "\nSelect ARC / RETURN to select points: "))
(progn
(setq elem (entget (car sel)))
(prompt (setq selnam (cdr (assoc 0 elem))))
(if (= selnam "ARC")
(progn
(setq rad (cdr (assoc 40 elem)))
(setq ang (- (cdr (assoc 51 elem))(cdr (assoc 50 elem)) ) )
(if (< ang 0)(setq ang (+ ang (* 2 pi) ) ) )
(setq ang (* ang piu))
(setq lae (/ (* pi ang rad) 180.0) )
"\tAngle = " (rtos ang)
"\tLength = " (rtos lae)
)
);prompt
(prompt (strcat "\nLength arc: <" (rtos lae) "> "))
(setq antw (getdist))
(if (/= antw nil)(setq lae antw))
(setvar "cmdecho" 1)
(command "_.dim1" "_ang" sel pause (rtos lae) pause)
);progn arc
(prompt "\nNo arc.")
);if elem
);progn
(progn
(setq ptr (getpoint "\nMidpoint: "))
(setq pt1 (getpoint "\nFirst arc point: "))
(setq pt2 (getpoint "\nSecend arc point: "))
(setq ang1 (angle ptr pt1)
ang2 (angle ptr pt2)
)
(progn
(if (> ang2 ang1)
(setq ang (/ (* (- ang2 ang1) 180.0) pi))
(setq ang (/ (* (- ang1 ang2) 180.0) pi))
)
(setq lae (/ (* ang pi rad1) 180.0))
(command "_.arc" "_c" ptr pt1 pt2)
(setq sel (list (ssname (ssget "_L") 0) pt1))
(setvar "cmdecho" 1)
(command "_.dim1" "_ang" sel pause (rtos lae) pause)
(command "_.erase" sel "")
);progn
);if
);progn
);if
;error restore
(setq *error* be_or)
(setvar "cmdecho" ocmd)
(setvar "osmode" oosm)
(princ)

) ;bemw
;;
(princ ".")
(prompt "\nDimarc.lsp loaded. Call command with DIMA. pf0494")
(princ)
;;end dimarc.lsp pf

Copy the above to a text file and rename it to "DIMARC.LSP"
Load this lisp and type "dimarc"
Hope this helps!
RICH@LG (ARCHITECT)

RE: Dimensioning an arc length.

You gotta type "dima" for RICHatLG lisp to work

Sorry!
:(

He's right!
Rich@LG

RE: Dimensioning an arc length.

I use several lisp routines to arc dimensions that convert the angle to an arc length.  Mine do not have any error checking etc but they are functional.  Here is an easy one:

(DEFUN C:DV3 (/ p1 p2 p3 p4 x1 x2 x3 y1 y2 y3 adj dx dy opp om ang rad arc ark) ; Dimension INT to INT along any circle
(SetVar "CMDECHO" 0)
(Setq om (GetVar "OSMODE"))
(COMMAND "Osnap" "Int")
(setq p1 (getpoint "\nSnap to first INT: ")
p2 (getpoint "\nSnap to second INT: ")
)
(COMMAND "Osnap" "CEN")
(setq p4 (getpoint "\nPick a point on the arc: "))
(COMMAND "Osnap" "NON")
(setq p3 (getpoint "\nPoint to dimension location: ")
x1 (- (car p1) (car p4))
x2 (- (car p2) (car p4))
x3 ( / ( + x2 x1 ) 2.0000 )
y3 ( / ( + y2 y1 ) 2.0000 )
adj ( sqrt ( + ( * x3 x3 ) ( * y3 y3 )))
dx ( - x3 x2 )
dy ( - y3 y2 )
opp ( sqrt ( + ( * dx dx ) ( * dy dy )))
ang ( atan ( / opp adj ))
arc ( * rad ang 2.0000 )
ark (rtos arc)
)
(COMMAND "DIM1" "ANG" "" P4 P1 P2 P3 ARK P3)
(COMMAND "DIM1" "HOM" "L" "")
(COMMAND "DIM1" "TE" "L" PAUSE)
(SetVar "OSMODE" om)
(SetVar "CMDECHO" 0)
(princ)
)

Red Flag This Post

Please let us know here why this post is inappropriate. Reasons such as off-topic, duplicates, flames, illegal, vulgar, or students posting their homework.

Red Flag Submitted

Thank you for helping keep Eng-Tips Forums free from inappropriate posts.
The Eng-Tips staff will check this out and take appropriate action.

Close Box

Join Eng-Tips® Today!

Join your peers on the Internet's largest technical engineering professional community.
It's easy to join and it's free.

Here's Why Members Love Eng-Tips Forums:

• Talk To Other Members
• Notification Of Responses To Questions
• Favorite Forums One Click Access
• Keyword Search Of All Posts, And More...

Register now while it's still free!