머리가 안따라서인지 잔머리를 굴려도 안되내요
리습에기초가 부족한가봐요
소문자 대문자 음 역시 번거롭군요.
미처 거기까지는…….
어떻게 해야 하는지 알려 주세요.
잘 안되네요!
그리고 숫자로는 왜 안되는건지도 조언을 좀 부탁드립니다.
하는 방법이 있다고는 들은것 같아서요
매번 고맙습니다.
나는 언제나 ………
^^ 쩝
멀군요.
빌린인생님이 답변하시것에 덧붙입니다.
마지막 ssget구문을 조금 수정해주시면 간단히 해결될 것입니다.
(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)
윗줄도 이렇게 수정해주세요 (if (eq ip "a")
(setq ip "abc"))
(if (eq ip b)
윗줄도 이렇게 수정해주세요 (if (eq ip "b")
(setq ip "def"))………….이런식으로 나열…
(setq ent (ssget (list (cons 8 ip))))
윗줄을 (setq ent (ssget "X" (list (cons 8 ip))))
이렇게 고쳐주세요~
그럼 좋은 하루 되시길…
(command "ERASE" ent "")
(princ)
);defun
(if (eq ip "A")(setq ip "a"))
.
.
("A" 입력값을 받으면 "a"로 인식..)
=> 이런식으로 똑같은 원리를 이용하면 되는거죠
(if (eq ip "a")
(setq ip "l-die"))
.
.
한번 노력해 보세여…더이상 제가 해드릴것은…^^
수고하세여 꾸벅