프로그램
캐드 분류

옵셋리습인데 지정레이로 되게끔해주실수 없을까여?

컨텐츠 정보

본문

고수님 옵셋리습인데 지정레이로 되게끔해주실수 없을까여 가령 1번레이어로 되게끔요 고수님들 부탁합니다


(defun C:O9 (/ cmd d  lyr obj ename elist)(vl-load-com)
     (setq cmd (getvar "cmdecho"))
     (setvar "cmdecho" 0)
     (if (null #oldist)
         (setq #oldist 1)
     )
     (setq d (getreal (strcat "nSpectfy of distance <" (vl-princ-to-string #oldist) ">: ")))
     (if (null d)
         (setq d #oldist)(setq #oldist d)
     )
     (if (null #olnlayer)
         (setq #olnlayer "0″)
     )
     (setq lyr (strcase (getstring (strcat "nEnter Layer name <" #olnlayer ">: "))))
     (if (null (read lyr))
         (setq lyr #olnlayer)(setq #olnlayer lyr)
     )
     (while (null (tblsearch "LAYER" lyr))
            (prompt (strcat "n Layer " lyr " does not exist."))
            (setq lyr (strcase (getstring "nEnter layer name again: ")))
     )
     (setq obj (entsel "nChoose object: "))
     (while (null obj)
            (setq obj (entsel "nChoose object again: "))
     )
     (while (not (null obj))
            (command "offset" d obj pause "")
            (setq ename (entlast))
            (while (not (null obj))
                   (setq elist (entget ename))
                   (setq elist (subst (cons 8 lyr) (assoc 8 elist) elist))
                   (entmod elist)
                   (setq obj (entsel "nChoose object: "))
                   (if (not (null obj))
                       (progn (command "offset" "" obj pause "")
                              (setq ename (entnext ename))
                       )
                   )
            )
     )
     (prompt "nTo cancel command, press the ESC key. ")
     (setvar "cmdecho" cmd)
   (princ)
)


(defun lineerr(err)
  (prompt "n*error*:")
  (prin1 err)
  (command "redraw")
  (setq *error* olderr)
);** defun end **

관련자료

댓글 2

rnsdlsajfl님의 댓글

아 그렇군요  레이어 지정구문없애고 바로 1번으로 바꾸어 주시면 안될까요

여분필드1 여분필드2 여분필드3
전체 64 / 3 페이지
번호
제목
이름
알림 0