FastFiber

Viewports locken & unlocken

Gestart door Markske, vr 19 05 2006, 10:49:17

Vorige topic - Volgende topic

Markske

Hoi,

ik vroeg me af of er misschien een knopje zou bestaan om viewports te locken en te unlocken? Of moet je telkens naar het Properties-menu gaan?

Alvast bedankt!!!
Markske

Joop

Een gelovig volger van
"de Sacrale Kunst van Luiheid",
zijn leider "Lisp" en acoliet "Script".

Markske

Citaat van: Joop op vr 19 05 2006, 10:59:38
Zelf Maken?  :shock:

is inderdaad een mogelijkheid  :D
alleen vind ik nergens het commando terug om viewports te locken en te unlocken  :(
(of moet het misschien via Lisp gebeuren?)

Markske

#3
Sorry, te snel gereageerd  :oops:

-VPORTS
[ON/OFF/Fit/Shadeplot/Lock/Object/Polygonal/Restore/2/3/4]

ik kan verder  :wink:

Thanks anyway!!!

Greetz,
Markske

ps: hier voor de volledigheid:

^C^C-vports;lock;on;
^C^C-vports;lock;off;

Gene

Wanneer de tekening in paperspace staat klik ik op de Vport zodat er grips opstaan. dan klik je met de rechermuisknop, er verschijnt een screenmenu waar je de optie "Display Locked" vindt, je kiest hier voor "yes of no"

Zo doe ik het

j-o-s

met een button is het veel makelijker en sneller zeker als je er een groot aantal moet hebt

j-o-s

Reimer

Ik heb onderstaande regels in een lisp gezet. Nu heb ik een commando VL om alle aanwezige viewports te LOCKEN en VU om ze te UNLOCKEN. Dit werkt lekker snel.

; -vports -> lock -> all
(defun C:vl ()
    (command "-vports" "lock" "on" "all" "")
    (prompt "        Alle viewports zijn LOCKED")
  (princ)
)

; -vports -> unlock -> all
(defun C:vu ()
    (command "-vports" "lock" "off" "all" "")
    (prompt "        allee viewports zijn UNlocked")
  (princ)
)

j-o-s


Markske

Prachtig!!!  :D

Many thanks Reimer  :wink:

Greetz,
Markske

VDZS

Na meer dan 10 jaar nog een vraagje... :wink:

Kan men lisp ook laten uitbreiden naar meerdere layouts (tabs)?

Grts

J.

cadtools@gmail.com

#10
Hmmm..
Ik gebruik ook een 'lock / unlock all' macro onder een knop
Maar dit werkt volgens mij alleen in een (1!) actieve layout.

Hans
Niet achter pc zittende..

roy_043

Citaat van: VDZS op do 01 09 2016, 15:45:11
... uitbreiden naar meerdere layouts (tabs)?
(defun VportsLockAll (lockP / doc)
  (vl-load-com)
  (setq doc (vla-get-activedocument (vlax-get-acad-object)))
  (vla-endundomark doc) ; Just in case.
  (vla-startundomark doc)
  (vlax-for lyt (vla-get-layouts doc)
    (vlax-for obj (vla-get-block lyt)
      (if (vlax-property-available-p obj 'displaylocked)
        (vla-put-displaylocked obj (if lockP :vlax-true :vlax-false))
      )
    )
  )
  (vla-endundomark doc)
)

(defun c:VPLO ()
  (VportsLockAll T)
  (princ)
)

(defun c:VPUN ()
  (VportsLockAll nil)
  (princ)
)

VDZS

THX roy_043!  :vreegoe:
Werkt perfect! :)

roy_043

Verbeterde versie (de 'Model' tab wordt niet meer geanalyseerd):
(defun VportsLockAll (lockP / doc)
  (vl-load-com)
  (setq doc (vla-get-activedocument (vlax-get-acad-object)))
  (vla-endundomark doc)
  (vla-startundomark doc)
  (vlax-for lyt (vla-get-layouts doc)
    (if (= :vlax-false (vla-get-modeltype lyt))
      (vlax-for obj (vla-get-block lyt)
        (if (vlax-property-available-p obj 'displaylocked)
          (vla-put-displaylocked obj (if lockP :vlax-true :vlax-false))
        )
      )
    )
  )
  (vla-endundomark doc)
)

(defun c:VPLO ()
  (VportsLockAll T)
  (princ)
)

(defun c:VPUN ()
  (VportsLockAll nil)
  (princ)
)

VDZS

Thx Roy_043!  :vreegoe:

Werkt perfect! :)