프로그램
캐드 분류

cad 고수님들 리습 좀 도와주세요~

컨텐츠 정보

본문

블럭안의 색상을 하나로 변경시키는 리습인데요~
vl-load  명령어를 command 명령어로 변경 시켜주실분 계신가요~

lt버전에 icomtools를 사용해서 vl-load 명령어가 안되는거 같습니다.

고수님들의 도움을 요청드려요~


(defun c:bQ ( / oDocument BlockNameList )
  (vl-load-com)
  (setq oDocument (vla-get-activedocument (vlax-get-acad-object)))
  (setq BlockNameList nil)


 (and
  (setq Sset (ssget (list (cons 0 "INSERT"))))
  (setq col (strcase (getstring "n>> 색상 번호를 입력하세요 ? : ")))


  (foreach item (mapcar '(lambda(x) (cdr (assoc 2 (entget x)))) (vl-remove-if 'listp (mapcar 'cadr (ssnamex Sset))))
  (if (not (member item BlockNameList)) (setq BlockNameList (cons item BlockNameList)))
  )
 ) ;and
 
  (foreach BlockName BlockNameList (change:colorinblock oDocument BlockName col)) ;col 색
  (vla-regen oDocument acallviewports)
  (princ)
) ; defun


;==============================================


(defun change:colorinblock ( Document BlockName Color )
  (vl-load-com)
  (vlax-for item (vla-item (vla-get-blocks Document) BlockName)
  (vla-put-color item Color)
  (if (eq (vla-get-objectname item) "AcDbBlockReference")
  (change:colorinblock Document (vla-get-name item) Color)
  ) ;if
  )
) ; defun


 

관련자료

댓글 0
등록된 댓글이 없습니다.
여분필드1 여분필드2 여분필드3
전체 79 / 1 페이지
번호
제목
이름
알림 0