매일 자료만 얻다가 처음 질문올립니다
라인이나 스플라인 치수를 뽑아주는 LISP인데요
도면상 스케일이 다르다보니 어떤도면에서는 눈에 보이지도 않을정도로 작게나오다보니 조금 힘들더군요
텍스트크기를 바꿀수있게 변경할수는 없을까요?
고수님들 부탁드립니다 ㅠㅠ
(defun c:els (/ ss sslist i index linelist linenumlist ent old10 old11 dist lnum count temp total subtotal txt pt)
(princ “n Eltity Length Sum”)
(setvar “cmdecho” 0)
(setq sslist nil)
(setq ss (ssget (list (cons 0 “LINE,CIRCLE,ARC,POLYLINE,LWPOLYLINE,ELLIPSE,SPLINE”))))
(if ss
(progn
(setq index 0)
(setq linelist nil)
(setq linenumlist nil)
(repeat (sslength ss)
(setq ent (ssname ss index))
(command “lengthen” ent “”)
(setq dist (GETVAR “PERIMETER”))
(if (apply ‘or (mapcar ‘(lambda (x) (equal dist x 0.0001)) linelist))
(progn
(setq temp 0)
(setq lnum nil)
(foreach x linelist
(if (equal dist x 0.0001)
(setq lnum temp)
)
(setq temp (1+ temp))
)
(setq count 0)
(setq temp nil)
(foreach x linenumlist
(if (= count lnum)
(setq temp (append temp (list (+ x 1))))
(setq temp (append temp (list x)))
)
(setq count (1+ count))
)
(setq linenumlist temp)
)
(progn
(setq linelist (append linelist (list dist)))
(setq linenumlist (append linenumlist (list 1)))
)
)
(setq index (1+ index))
)
(setq txt “”)
(setq count 0)
(setq total 0)
(setq subtotal 0)
(repeat (length linelist)
(if (= count 0)
(if (> (nth count linenumlist) 1)
(setq txt (strcat “nL=” (rtos (/ (nth count linelist) 1000.0) 2 2) “x” (rtos (nth count linenumlist) 2 0) “ea”))
(setq txt (strcat “nL=” (rtos (/ (nth count linelist) 1000.0) 2 2)))
)
(if (> (nth count linenumlist) 1)
(setq txt (strcat txt “+” (rtos (/ (nth count linelist) 1000.0) 2 2) “x” (rtos (nth count linenumlist) 2 0) “ea”))
(setq txt (strcat txt “+” (rtos (/ (nth count linelist) 1000.0) 2 2)))
)
)
(setq subtotal (* (/ (nth count linelist) 1000.0) (nth count linenumlist)))
(setq total (+ subtotal total))
(setq count (1+ count))
)
(setq txt (strcat txt “=” (rtos total 2 2) “m”))
(setq txt (strcat txt “, 객체수” (rtos (length linelist) 2 0) “개”))
(princ txt)
(setq pt (getpoint “n 텍스트 삽입점 : “))
(if pt (command “text” pt “” “” txt))
)
)
(princ)
)