0 Members and 1 Guest are viewing this topic.
;; CAB 07/16/2008 TheSwamp.org;; Return a list of Tab names & viewport object names;; If on? is true return only viewports that are ON;; else return ALL viewports;; Ignore Model Space(defun view (on? / doc layout obj vp-list first-vp result) (setq doc (vla-get-activedocument (vlax-get-acad-object))) (vlax-for layout (vla-get-layouts doc) (setq vp-list nil) (if (/= (vla-get-name layout) "Model") (progn (setq first-vp t) ; ignore the layout vp (vlax-for obj (vla-get-block layout) (if (and (eq (vla-get-objectname obj) "AcDbViewport") (or (not on?) (eq (vla-get-ViewportOn obj) :vlax-true)) ) (if first-vp (setq first-vp nil) (setq vp-list (cons obj vp-list)) ) ) ) (and vp-list (setq result (cons (list (vla-get-name layout) vp-list) result)) ) ) ) ) result)
(defun c:test(/ lst) (setq lst (view t)) (mapcar 'print lst) (princ))
;; CAB 07/16/2008 TheSwamp.org;; Return a list of Tab names & viewport object names;; If on? is true return only viewports that are ON;; else return ALL viewports;; Ignore Model Space(defun view (on? / doc layout obj vp-list first-vp result) (setq doc (vla-get-activedocument (vlax-get-acad-object))) (vlax-for layout (vla-get-layouts doc) (setq vp-list nil) (if (/= (vla-get-name layout) "Model") (progn (setq first-vp t) ; ignore the layout vp (vlax-for obj (vla-get-block layout) (if (and (eq (vla-get-objectname obj) "AcDbViewport") (or (not on?) (vla-put-activelayout doc layOUT) (eq (vla-get-ViewportOn obj) :vlax-true)) ) (if first-vp (setq first-vp nil) (setq vp-list (cons obj vp-list)) ) ) ) (and vp-list (setq result (cons (list (vla-get-name layout) vp-list) result)) ) ) ) ) result)
;; CAB 07/16/2008 TheSwamp.org;; Modified by Patrick_35 07/17/2008;; Return a list of Tab names & viewport object names;; Ignore Model Space(defun view (/ doc layout obj vp-list first-vp result) (setq doc (vla-get-activedocument (vlax-get-acad-object))) (vlax-for layout (vla-get-layouts doc) (setq vp-list nil) (if (/= (vla-get-name layout) "Model") (progn (setq first-vp nil) ; ignore the layout vp (vlax-for obj (vla-get-block layout) (if (and (eq (vla-get-objectname obj) "AcDbViewport") first-vp (zerop (logand (cdr (assoc 90 (entget (vlax-vla-object->ename obj)))) 131072)) ) (setq vp-list (cons obj vp-list)) (setq first-vp T) ) ) (and vp-list (setq result (cons (list (vla-get-name layout) vp-list) result)) ) ) ) ) result)