FastFiber

zoom lisp

Gestart door j-o-s, di 21 03 2006, 16:50:11

Vorige topic - Volgende topic

j-o-s

heeft er nog iemand een lisp liggen om alle layouts te zoomen
Nu moet ik bij elke layout zoom all ingeven
ik heb zelf zitten te prutsen maar ik kom er niet uit

alvast bedankt j-o-s

WebRacer

Na wat brainstormen kom ik tot deze lisp,
al lijkt mij de mogelijkheid tussen All en extents niet overbodig,
mocht het u storen verwijder dan de eerste 2 lijnen en
van (command "zoom" zmtype) maakt u (command "zoom" "all")...

(defun C:ZLay  (/ object doc layout nameolist)
  (initget "All Extents")
  (setq zmtype (getkword "\nGeef een zoomtype (All/Extents)"))
  (vl-load-com)
  (setq olist nil)
  (setq   object (vlax-get-acad-object))
  (setq doc (vla-get-activedocument object))
  (setq layouts (vla-get-layouts doc))
  (vlax-for each layouts
    (setq name (list (vla-get-name each))
     olist (cons name olist)))
  (setq aantal (length olist)
   teller 0)
  (repeat aantal
    (setq lay (car (nth teller olist)))
    (if (/= lay "Model")
      (progn
   (setvar "Ctab" lay)
   (command "zoom" zmtype)))
    (setq teller (1+ teller)))
  (setvar "Ctab" "Model")
  (command "zoom" zmtype)
  (vlax-release-object layouts)
  (vlax-release-object doc)
  (vlax-release-object object)
)


hopelijk kan ook deze lisp velen van dienst zijn...
?

j-o-s

Mijn dank is groot :lol: :lol:

gr j-o-s

FastFiber