;©2007 Daniel Altamura ;OFF - Turns off (hides) the display of selected objects ;ON - Turns on (unhides) the display of selected or all objects ;TOGGLE - Turns off (hides) the display of objects that are on, and turns on (unhides) the display of objects that are off ;ISOLATE - Turns off (hides) the display of all objects, except for selected objects (defun OFF (OL / OBJNUM SSOBJ OBJECT OBJLIST) (setq OBJNUM 0) (repeat (sslength OL) (setq SSOBJ (entget (ssname OL OBJNUM)) OBJNUM (+ OBJNUM 1) OBJECT (append SSOBJ (list (cons 60 1))) ) (if (= (cdr (assoc 0 SSOBJ)) "VIEWPORT") (princ "\nViewports cannot be turned off.") (entmod OBJECT) ) ) ) (defun ON (OL / OBJNUM SSOBJ OBJECT) (setq OBJNUM 0) (repeat (sslength OL) (setq SSOBJ (entget (ssname OL OBJNUM)) OBJNUM (+ OBJNUM 1) OBJECT (subst (cons 60 0) (assoc 60 SSOBJ) SSOBJ) ) (entmod OBJECT) ) ) (defun C:OFF (/ OBJLIST) (if (setq OBJLIST (ssget)) (OFF OBJLIST) (princ "\nNo objects selected to turn off.") ) ) (defun C:ON (/ OBJLIST OBJON OBJLISTLEN) (if (setq OBJLIST (ssget "x" (list (cons 60 1)))) (progn (ON OBJLIST) (progn (princ "\nSelect objects to turn on, or for all on.") (setq OBJON (ssget)) (OFF OBJLIST) (if OBJON (ON OBJON) (ON OBJLIST) ) ) ) (princ "\nNo objects found to turn on.") ) ) (defun C:TOGGLE (/ OBJLISTOFF OBJLISTON) (setq OBJLISTOFF (ssget "x" (list (cons 60 1))) OBJLISTON (ssget "x" (list (cons 60 0))) ) (if OBJLISTOFF (ON OBJLISTOFF) (princ "\nNo objects found to toggle on.") ) (if OBJLISTON (OFF OBJLISTON) (princ "\nNo objects found to toggle off.") ) ) (defun C:ISOLATE (/ OBJLISTISO) (if (setq OBJLISTISO (ssget)) (progn (OFF (ssget "x")) (ON OBJLISTISO) ) (princ "\nNo objects selected to isolate.") ) )