(defun c:er ()
(prompt “n Select Text to Erase: “)
(setq e 0.0) ;x좌표가 0.0인 text
(setq a (ssget))
(setq b (sslength a))
(setq c 0)
(while (<= 1 b)
(setq d (ssname a c))
(if (eq (cadr (assoc 11 (entget d))) e)
(command “erase” a)
);
(setq b (- b 1))
(setq c (+ c 1))
);
);
드래그한 문자들 중에서 중심점의 x좌표값이 0.0인 문자들만 골라서 지우려고 합니다… 허접하게 만들어 봤지만 드래그한 문자중 x좌표값이 0.0인 문자가 하나라도 포함되어 있으면 나머지 문자들도 다 지워져 버립니다. 물론 드래그한 문자중 x좌표가 0.0인 문자가 하나도 없으면 괜찮습니다만… if구문안에 특정 조건을 만족하는 문자들만 따로 지정해서 erase명령을 실행해야 제대로된 리습이 될거 같은데…
많은 도움 부탁드립니다! 궁극적으로는 기준 좌표에서 x,y좌표값이 각각 +20 또는 +40 등등…의 문자들을 한꺼번에 지우는 것입니다. 첨부된 캐드파일에서 흰색 텍스트를 지우는 것입니다. x축으로 한번, y축으로 한번…또는 x,y축 한꺼번에…^^