아래 리습은 cadori님이 만드신 리습인데요 치수보조선만 모두 끌 수 있게 수정이 가능할까요?
고수님들 수정좀 부탁드립니다.
; 치수선 및 치수보조선 가시성 제어
(defun c:ddc ( / doc index objlist ss k )
(prompt “n___ cadori created ___”)
(setq doc (vla-get-activedocument (vlax-get-acad-object)))
(setq index 0 objlist nil)
(prompt “n치수를 선택하세요 …”)
(if (setq ss (ssget (list (cons 0 “DIMENSION”))))
(repeat (sslength ss)
(setq objlist (cons (vlax-ename->vla-object (ssname ss index)) objlist))
(setq index (1+ index))
)
)
(if objlist
(progn
(initget “1 2 3”)
(setq k (getkword “n몇번째를 끄기할까요 … 첫번째<1>/두번째<2>/[모두<3>]: “))
(if (= k nil) (setq k “3”))
)
)
(vla-startundomark doc)
(foreach obj objlist
(cond
((= k “1”)
(vla-put-dimline1suppress obj :vlax-true)
(vla-put-extline1suppress obj :vlax-true)
)
((= k “2”)
(vla-put-dimline2suppress obj :vlax-true)
(vla-put-extline2suppress obj :vlax-true)
)
((= k “3”)
(vla-put-dimline1suppress obj :vlax-true)
(vla-put-dimline2suppress obj :vlax-true)
(vla-put-extline1suppress obj :vlax-true)
(vla-put-extline2suppress obj :vlax-true)
)
)
)
(vla-endundomark doc)
(princ)
)
(vl-load-com)
(prompt “n[ DDC ]”)
(princ)
(defun c:ddc ( / doc index ss objlist)
(vl-load-com)
(setq
doc (vla-get-activedocument (vlax-get-acad-object))
index 0
)
(prompt “n치수를 선택하세요 …”)
(if (setq ss (ssget (list (cons 0 “DIMENSION”))))
(progn
(vla-startundomark doc)
(repeat (sslength ss)
(setq
obj (vlax-ename->vla-object (ssname ss index))
index (1+ index)
)
(vla-put-extline1suppress obj :vlax-true)
(vla-put-extline2suppress obj :vlax-true)
)
(vla-endundomark doc)
(vlax-release-object doc)
)
)
(princ)
)
선택한 치수보조선을 켜져 있으면 끄고 꺼져 있으면 껴지는 LISP으로 변경가능한지요
치수보조선이 양쪽에 있는데 선택한 쪽만 토글이 가능하도록 되면 좋겠습니다.