현재 쓰고 있는 리습 길이합을 구하는 LLE 리습입니다. 이 리습으로 포인트를 찍어서 텍스트로 출력하는 형식인데 기존의 텍스트를 클릭해서 값을 바꿀 수 있을까요? 수정 가능하신분은 좀 도와주십시오^^
(defun c:lle (/ ent n dis ent_l #a #ad #as th)
(setvar “cmdecho” 0)
(setq ent (ssget ‘((0 . “LINE,CIRCLE,ARC,POLYLINE,LWPOLYLINE,ELLIPSE,SPLINE”))))
(setq th (getreal (strcat “n텍스트 높이 입력 <” (rtos (getvar “textsize”)) “>:”)))
(if th (setvar “textsize” th))
(setq n 0 dis 0)
(repeat (sslength ent)
(setq ent_l (ssname ent n))
(command “lengthen” ent_l “”)
(setq dis (+ dis (GETVAR “PERIMETER”)))
(setq n (1+ n))
)
(setq #a(strcat (rtos dis 2 2)))
(prompt (strcat “n” #a))
(vl-load-com)
(setq #ad(vla-get-activedocument(vlax-get-acad-object)))
(setq #as
(if (> (vla-get-activespace #ad) 0)
(vla-get-modelspace #ad)
(vla-get-paperspace #ad)
);;if
);;setq
(vla-addtext #as #a (vlax-3d-point(getpoint “n≫≫≫Pick text point:”)) (getvar “textsize”))
(mapcar ‘vlax-release-object (list #as #ad))
(princ)
(setvar “cmdecho” 1)
)
공유