우선 lisp에 대해서 질문을 드립니다.
(defun c:EL(/ ip ent)
(graphscr)
(setvar "cmdecho" 0)
(setq ip (getstring " 1,2,3,4,5 @ Eress하고픈 LAYER 이름이 뭐여 ?:"))
(setq ent (ssget (list (cons 8 ip))))
(command "ERASE" ent "")
(princ)
);defun
예제문에서처럼 원layer이름은 긴이름(abcdefg)으로하고 선택을 할경우에는
숫자로 할려고 합니다. (ex : 1번을 선택하면 원layer이름 abcdefg 가 선택되라)
1 = abcdefg
어떻게 해야 하는지좀 알려주시고……..
두번째로 dim text를 single line text로만 쓸려면 어떻게 해야 합니까?
edit에서 multline text와 창이 틀리기에 single로하고 십습니다.
그럼 감사합니다.
(defun c:EL(/ ip ent)
(graphscr)
(setvar "cmdecho" 0)
(setq ip (getstring " 1,2,3,4,5 @ Eress하고픈 LAYER 이름이 뭐여 ?:"))
(setq ent (ssget (list (cons 8 ip))))
(command "ERASE" ent "")
(princ)
);defun
고정적인 레이어를 입력받아서 그 레이어에 속한 객체들을 지우는 프로그렘이네여
님이 하고싶으신게 ip 란 함수에 1,2,3,4,5 머 이런것으로 받아들인다음
예를들어 1=abc 2=def …. 이런식으로 레이어 이름을 받아들이신다는 말씀이신가여?
… 근데 제생각에서는 1,2,3,4,5 보다는 a1,a2,a3,a4,a5로 하던지 아님 a,b,c,d,e,f로 입력
을 받는것이…나을듯
만약에 그렇다면…
(defun c:EL(/ ip ent)
(graphscr)
(setvar "cmdecho" 0)
(setq a "abc"
b "def"
c "ghi"
.
.
……지정하고 싶은 레이어 계속)
(setq ip (getstring " a,b,c,d,e,f, @ Eress하고픈 LAYER 이름이 뭐여 ?:"))
그리고 이곳에
(if (eq ip a)
(setq ip "abc"))
(if (eq ip b)
(setq ip "def"))………….이런식으로 나열…
(setq ent (ssget (list (cons 8 ip))))
(command "ERASE" ent "")
(princ)
);defun
이런식으로 하면 됩니다…근데 님이 원하시는게 이런거였는지?….
글고 지금 제가 겜방에서 답글을 쓰고 있어서 검증은 안된상태임다..
실행안될지도 모르지만…이런식으로 하는것은 맞습니다..그럼 존 일요일.
회사가서 한번 시험해 볼께여…! 이런식으로 리습을 짠지 쫌 오래되서리^^