선을 여러개든 한개든 선택하고 lt 명령어를 입력하면
선택한 선 길이의 합을 캐드에 이미 적혀있는 텍스트를 클릭하여
해당 텍스트를 선길이로 변환해주는 기능입니다.
그런데 2016에서는 제대로 작동이 안됩니다….
어디서 문제인지 잘 몰라서 2016에서도 가능하도록 수정 부탁드립니다.
토적표에 수량 찍을 때 용이한 리습이라 자주 사용하는 거거든요ㅠ
아래 리습은 선택한 선 길이 구하는 리습(LTS, LT).lsp 파일에 있는 것이구요
혹시 선택한 선 길이 구하는 리습(LTX).fas 이 리습도 하나 더 올렸는데
이건 각각의 선길이를 합계를 구하는게 아니라 각각의 길이를 선 끝에 뿌려주는 리습인데
이게 fas다 보니 폰트크기나 소숫점자리수를 변경을 못해서
이걸 리습으로 변환해주실 능력자분이 계시면 변환 부탁드립니다ㅠ
(defun c:lt (/ ent n dis ent_l #a #ad #as th)
혹시 선택한 선 길이 구하는 리습(LTX).fas 이 리습도 하나 더 올렸는데
이건 각각의 선길이를 합계를 구하는게 아니라 각각의 길이를 선 끝에 뿌려주는 리습인데
이게 fas다 보니 폰트크기나 소숫점자리수를 변경을 못해서
이걸 리습으로 변환해주실 능력자분이 계시면 변환 부탁드립니다ㅠ
(defun c:lt (/ ent n dis ent_l #a #ad #as th)
(vl-load-com)
(setvar “cmdecho” 0)
(setq ent (ssget ‘((0 . “LINE,CIRCLE,ARC,POLYLINE,LWPOLYLINE,ELLIPSE,SPLINE”))))
(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 4)))
(prompt (strcat “n” #a))
(and
(setq sel (car (entsel “n텍스트 선택:”)))
(setq ent (entget sel))
(entmod (subst (cons 1 #a) (assoc 1 ent) ent))
)
(command “CHANGE” “P” “” “P” “C” “2” “”) ;노랑
(princ)
(setvar “cmdecho” 1)
)
감사합니다.