특정 단어가 들어가는 레이어 한번에 동결 및 동결해제 리습
페이지 정보
작성자 zwcad사용자 댓글 3건 조회 2,251회 작성일 23-05-26 15:53본문
캐드 프로그램 종류, 버전: zwcad 2023에서 테스트 완료
챗봇으로 만들어본 리습입니다
예시로 작성된 코드는 "BACK"이 들어가는 레이어를 전부 동결(단축키 B4) 및 동결해제(단축키 B5)하는 리습입니다
BACK 부분을 다른 특정 단어로 변경하여 사용하시면 됩니다
vla-put-Freeze 부분을 vla-put layeron으로 변경하면 레이어 on,off
vla-put-lock으로 변경하면 레이어 lock,unlock도 가능합니다
(defun C:B4 ()
(setq layers (vla-get-layers (vla-get-activedocument (vlax-get-acad-object))))
(vlax-for layer layers
(setq name (strcase (vla-get-name layer)))
(if (/= (vl-string-search "BACK" name) nil)
(vla-put-Freeze layer :vlax-true)))
(princ "\nBACK 레이어 동결 완료.")
(princ)
)
(defun C:B5 ()
(setq layers (vla-get-layers (vla-get-activedocument (vlax-get-acad-object))))
(vlax-for layer layers
(setq name (strcase (vla-get-name layer)))
(if (/= (vl-string-search "BACK" name) nil)
(vla-put-Freeze layer :vlax-false)))
(princ "\nBACK 레이어 동결해제 완료.")
(princ)
)
챗봇으로 만들어본 리습입니다
예시로 작성된 코드는 "BACK"이 들어가는 레이어를 전부 동결(단축키 B4) 및 동결해제(단축키 B5)하는 리습입니다
BACK 부분을 다른 특정 단어로 변경하여 사용하시면 됩니다
vla-put-Freeze 부분을 vla-put layeron으로 변경하면 레이어 on,off
vla-put-lock으로 변경하면 레이어 lock,unlock도 가능합니다
(defun C:B4 ()
(setq layers (vla-get-layers (vla-get-activedocument (vlax-get-acad-object))))
(vlax-for layer layers
(setq name (strcase (vla-get-name layer)))
(if (/= (vl-string-search "BACK" name) nil)
(vla-put-Freeze layer :vlax-true)))
(princ "\nBACK 레이어 동결 완료.")
(princ)
)
(defun C:B5 ()
(setq layers (vla-get-layers (vla-get-activedocument (vlax-get-acad-object))))
(vlax-for layer layers
(setq name (strcase (vla-get-name layer)))
(if (/= (vl-string-search "BACK" name) nil)
(vla-put-Freeze layer :vlax-false)))
(princ "\nBACK 레이어 동결해제 완료.")
(princ)
)
댓글목록
썸원님의 댓글
썸원 작성일우와!! 파일 원볼파일 레이서 설정 바꾸면 파일 하나하나 켜서 레이어하나하나 동결 시키느라 허비하는 시간이 많았는데, 정말 유용합니다!!
썸원님의 댓글
썸원 작성일
혹시 어떤 챗봇 이용해서 만들었는지 알려 주실수 있을까요?
GPT 나 GEMINI를 이용해서 명령어 리습을 만들어 볼려고 했는데, 제대로 먹히지가 않네요.
알려주신다면, 응용해서 사용할수 있는 리습들을 만들어 올려 보겠습니다.
이자더님의 댓글
이자더 작성일
GPT 를 이용하시되, 최소한의 리습을 만들 수 있을 정도의 지식은 있으셔야 합니다.
저도 호기심에 몇번 해 보았는데, 그 자체로는 구동되지 않는 리습을 만들더라고요.