ssget "x" 如果把点选中的层中所有圆选中
ssget "x" 如果把点选中的层中所有圆选中如当前层是0层 那么将0层所有圆选中.其它层的不能选中,谢谢
(ssget "X" (list '(0 . "CIRCLE") (cons 8 (getvar "CLayer")))) (defun MAKE_LIST (/ SS N R_LIST TMP)
(if (setq SS(ssget "X" (list '(0 . "CIRCLE") (cons 8 (getvar "CLayer" )))))
(progn
(setq N 0)
(repeat (sslength SS)
(if (not (member
(setq TMP (cdr (assoc 40 (entget (ssname SS N)))))
R_LIST
)
)
(setq R_LIST (append R_LIST (list TMP)))
)
(setq N (1+ N))
)
)
)
(setq N 0)
(repeat (length R_LIST)
(setq
TMP (ssget "X"
(list (cons 0 "CIRCLE") (cons 40 (nth N R_LIST)))
)
)
(setq
R1_LIST (append R1_LIST
(list (list (nth N R_LIST) (sslength TMP)))
)
)
(setq N (1+ N))
)
)
(defun dcb (/ ss1 CS1 count en p F p3)
(setq F 1)
(while (/= zjj NIL)
(setq p3 (car zjj))
(setq ss1 (ssget "X"
(list
(cons 0 "circle")
(cons 40 p3)
)
)
)
(command "undo" "BE")
(setq count 0)
(setq cs1 (strcat "xh" (rtos F) ".DWG"))
(while (< count (sslength ss1))
(setq en (ssname ss1 count))
(setq p (cdr (assoc 10 (entget en))))
(entdel en)
(command "-insert" cs1 p "" "" "")
(setq count (1+ count))
)
(setq F (1+ F))
(setq zjj (cdr zjj))
)
)
不行
页:
[1]