;;;Create script to draw Plines of plan viewport boundaries. ;;;Appends to existing script file so delete ALLBND.SCR and ;;;run ALLBND again in all sheets to update. ;;;*** ALLBND has been superceded by SHTBND.LSP *** ;;; ;;;> Author: Henry C. Francis ;;;> 425 N. Ashe St. ;;;> Southern Pines, NC 28387 ;;;> http://paracadd.com ;;;> All rights reserved. ;;; ;;;> COPYRIGHT: 2-4-92 ;;;> EDITED: 07-11-2005 ;;; (defun c:allbnd () (if (and (= (getvar "cvport") 1) (eq (getvar "tilemode") 0)) (command ".mspace") ) ;_ end of if (setq vportss (ssget "x" '((0 . "VIEWPORT")))) (setq vpsslen (sslength vportss)) (setq cnt 0) (setq vpdatlst nil bnd_lst nil ) ;_ end of setq (while (< cnt vpsslen) (setq vpdat (entget (ssname vportss cnt))) (if (and (/= (cdr (assoc 8 vpdat)) "0") (not (wcmatch (cdr (assoc 8 vpdat)) "*vi00*")) ) ;_ end of and (setq vpdatlst (append (list (cons (read (substr (cdr (assoc 8 vpdat)) 5 2)) (cdr (assoc 69 vpdat)) ) ;_ end of cons ) ;_ end of list vpdatlst ) ;_ end of append ) ;_ end of setq ) ;_ end of if (setq cnt (1+ cnt)) ) ;_ end of while (if (< (length vpdatlst) 7) (foreach n vpdatlst (setvar "cvport" (cdr n)) (setq cvputw (- (* pi 2) (getvar "viewtwist"))) ;;; (regapp "ACAD") (setq cvpss (ssget "X" (list (cons 69 (cdr n))))) (setq cvpent (entget (ssname cvpss 0) (list "ACAD"))) (setq cvpvno (atoi (substr (cdr (assoc 8 cvpent)) 5 2))) (setq cvphgt (getvar "viewsize")) (setq cvpctr (getvar "viewctr")) (setq cvpa40 (cdr (assoc 40 cvpent))) (setq cvpa41 (cdr (assoc 41 cvpent))) (setq cvpwid (* (/ cvpa40 cvpa41) cvphgt)) ; (setq xvdata (cadr(assoc -3 cvpent))) (setq pt1 (polar (polar cvpctr cvputw (/ cvpwid 2)) (- cvputw (/ pi 2)) (/ cvphgt 2) ) ;_ end of polar pt2 (polar pt1 (+ cvputw (/ pi 2)) cvphgt) pt3 (polar pt2 (+ cvputw pi) cvpwid) pt4 (polar pt3 (- cvputw (/ pi 2)) cvphgt) ) ;_ end of setq (if bnd_lst (setq bnd_lst (strcat bnd_lst (chr 40) (chr 40) (rtos (car pt1) 2 0) " " (rtos (cadr pt1) 2 0) (chr 41) (chr 40) (rtos (car pt2) 2 0) " " (rtos (cadr pt2) 2 0) (chr 41) (chr 40) (rtos (car pt3) 2 0) " " (rtos (cadr pt3) 2 0) (chr 41) (chr 40) (rtos (car pt4) 2 0) " " (rtos (cadr pt4) 2 0) (chr 41) (chr 41) ) ;_ end of strcat ) ;_ end of setq (setq bnd_lst (strcat (chr 40) (chr 40) (rtos (car pt1) 2 0) " " (rtos (cadr pt1) 2 0) (chr 41) (chr 40) (rtos (car pt2) 2 0) " " (rtos (cadr pt2) 2 0) (chr 41) (chr 40) (rtos (car pt3) 2 0) " " (rtos (cadr pt3) 2 0) (chr 41) (chr 40) (rtos (car pt4) 2 0) " " (rtos (cadr pt4) 2 0) (chr 41) (chr 41) ) ;_ end of strcat ) ;_ end of setq ) ;_ end of if ) ;_ end of foreach ) ;_ end of if (if bnd_lst (setq bnd_lst (strcat (chr 40) bnd_lst (chr 41))) ) ;_ end of if (command ".pspace") ) ;_ end of defun ;|«Visual LISP© Format Options» (72 2 40 2 T "end of " 60 9 0 0 0 T T nil T) ***Don't add text below the comment!***|;