- (defun c:tt (/ DXF-10 ENT GET LA LEN N NN SEL)
- (vl-load-com)
- (defun TABLE (S / D R)
- (while (setq D (tblnext S (null D)))
- (setq R (cons (cdr (assoc 2 D)) R))
- )
- )
- (princ "\n功能 [选择封闭给里的所有对象]")
- (setq La (TABLE "LAYER"))
- (and
- (setq sel (car (entsel "\n选择封闭多线段:")))
- (setq ent (entget sel))
- (setq dxf-10 (vl-remove-if '(lambda (x) (/= (car x) 10)) ent))
- )
- (if (and dxf-10 (setq get (ssget "_wP" (mapcar 'cdr dxf-10) '((0 . "LWPOLYLINE")))))
- (progn
- (setq n 0
- len (sslength get)
- )
- (repeat len
- (setq
- nn (vlax-ename->vla-object (ssname get (setq len (1- len))))
- )
- (vla-put-Layer nn (nth n la))
- (setq n (1+ n))
- )
- )
- )
- (princ)
- )
|