以下经验内容为代码实操内容,大家需要仔细看哦~
第一步
1、被块定义参照的图层,如a层含有一个图块,块内某条线属于b层;
第二步
1、名字为 DEFPOINTS 的特殊图层(为某个标注样式所用)。程序清单如下:
2、(defun c:de(/ et ln lay_name ss li)(princ "删除指定图层内的实体")(setq li (entsel"请选择指定图层内的任何一个实体<回车直接输入层名>:"))
3、(if li (progn;选择一个实体 (setq et (entget(nth 0 li))) (setq lay_name (cdr (assoc 8 et)))
4、 (progn;直接输入层名,理想的办法是采用列表框选择,大家可以自己试试。 (princ"输入层名:") (while (= ln nil) (setq lay忧溲枷茫_name (getstring)) (setq ln (cdr (assoc 2 (tblnext "layer" t)))) (while (and ln (/= ln "%") ) (if (/= ln lay_name) (setq ln (cdr (assoc 2 (tblnext "layer")))) (setq ln "%")
5、 ;如指定的图层名已存在,则设“%”标志 ) ) (if (/= ln "%");错误处理 (princ"指定的图层不存在,请重新输入:") ) ) ))
6、(setq ss (ssget "X"(list(cons 8 lay_name))));构造选择集(COMMAND "-layer媪青怍牙" "u" lay_name "") ;图层解锁(COMMAND "ERASE" ss "") ;清除所有实体(princ "清除完毕!")(princ));程序结束