我对您的代码做了一些更正:
- (defun c:TEST ( / ent layername layerinf linetype lay index )
- ;; FUNCTION FILTER SELECTION OF OBJECT ON SPECIFIC LAYER BY LINE TYPE
- (if (setq ent (car (entsel "\nSelect object to get its layer name : ")))
- (progn
- (setq layername (cdr (assoc 8 (entget ent))))
- (setq layerinf (tblsearch "LAYER" layername))
- (setq linetype (cdr (assoc 6 layerinf)))
- ;; MAKE THE SELECTION SELECTION THEN ENTER AND OBJEST HIGHLIGHTED
- (if (setq lay (ssget "_X" (list '(0 . "*LINE") (cons 8 layername) (cons 6 linetype))))
- (progn
- (setq index 0)
- (repeat (sslength lay)
- (redraw (cdr (assoc -1 (entget (ssname lay index)))) 3)
- (setq index (1+ index))
- )
- )
- )
- )
- )
- (princ)
- )
|