You are on page 1of 2

(vl-load-com)

(defun c:dimarclong (/ arclong rad cen ep ep1 arco narco ref)


(setvar "cmdecho" 0)
(setq ref (getvar "osmode"))
(setvar "osmode" 0)
(while (not
(setq arco (entsel "\nSeleccione el arco a dimensionar: "))
)
)
(setq narco (car arco))
(while (/= "ARC" (cdr (assoc 0 (entget narco))))
(prompt "\nLa entidad seleccionada no es un ARCO\n")
(while
(not
(setq arco (entsel "\nSeleccione el arco a dimensionar: "))
)
)
(setq narco (car arco))
)
(setq ep
(vlax-curve-getStartPoint (vlax-ename->vla-object narco))
)
(setq ep1
(vlax-curve-getEndPoint (vlax-ename->vla-object narco))
)
(setq cen
(vlax-safearray->list
(vlax-variant-value
(vlax-get-property (vlax-ename->vla-object narco) "center")
)
)
)
(setq arclong (vlax-curve-getDistAtPoint
(vlax-ename->vla-object narco)
(vlax-curve-getendPoint
(vlax-ename->vla-object narco)
)
)
)
(command "dimangular"
""
cen
ep
ep1
"t"
(rtos arclong)
pause
)
(setvar "clayer" "0")
(setvar "osmode" ref)
(setvar "cmdecho" 1)
(princ)
)

(defun c:dimarc ()
(c:dimarclong)
)

(princ
"\n*** nuevo comando DIMARCLONG (DIMARC) definido ***"
)

You might also like