안녕하세요?
고캐드에서 찾아보니 블럭 레이어 일괄변경 리습으로 있던 글을 봤는데요.
(defun c:r2 ( / s n ss l :Adoc :Blocks :Layers)
고캐드에서 찾아보니 블럭 레이어 일괄변경 리습으로 있던 글을 봤는데요.
(defun c:r2 ( / s n ss l :Adoc :Blocks :Layers)
(vl-load-com)
(while (not (setq s (entsel “n레이어를 참조할 객체 선택: “))))
(and
s
(setq n (cdr (assoc 8 (entget (car s)))))
(progn
(princ “n레이어를 바꿀 블럭을 선택: “)
(or
(setq ss (ssget ‘((0 . “insert”))))
(alert “선택한 블럭이 없습니다! “)
)
)
(progn
(setq l
(mapcar
‘(lambda (e) (cdr (assoc 2 (entget e))))
(vl-remove-if ‘listp (mapcar ‘cadr (ssnamex ss)))
)
:Adoc (vla-get-activedocument (vlax-get-acad-object))
:Blocks (vlax-get :Adoc ‘Blocks)
:Layers (vlax-get :Adoc ‘Layers)
)
(and (eq 8 (logand 8 (getvar ‘undoctl))) (vla-endundomark :Adoc))
(vla-startundomark :Adoc)
(vlax-for block :Blocks
(if (vl-position (vla-get-name block) l)
(vlax-for o block
(if (= (vlax-get o ‘color) 256)
(vlax-put o ‘Color (vlax-get (vla-item :Layers (vlax-get o ‘Layer)) ‘Color))
)
(vlax-put o ‘Layer n)
)
)
)
(and (eq 8 (logand 8 (getvar ‘undoctl))) (vla-endundomark :Adoc))
(vla-regen :Adoc 1)
(mapcar ‘vlax-release-object (list :Adoc :Blocks :Layers))
)
)
(princ)
)
이렇게 리습이 적혀있어서 캐드에서 리습을 불러오기 했습니다.
근데 명령어가 뭔지 모르겠어요..;;
명령어 뭔지 알 수 있을까요?
이렇게 리습이 적혀있어서 캐드에서 리습을 불러오기 했습니다.
근데 명령어가 뭔지 모르겠어요..;;
명령어 뭔지 알 수 있을까요?
r2
감사합니다~^^