Jump to content

Realtime zoom and pan on multiple drawings


harilalmn

Recommended Posts

Hi All,

I know I am getting too greedy...!!:wink:Still a try....

I have five drawings. Say, floor plans of different levels.

Active drawing is Ground Floor Plan. Is it possible to update the views of other drawings to the same area, as I view the GF Plan by zooming and panning?

Link to comment
Share on other sites

Easy really, as long as the drawing foot print is the same and in the same coordinates (as it should be I hope :))

 

Run this on the GF Plan

(defun c:passpoints (/ pt1 pt2)
     (setq pt1 (getpoint "\nPick Lower Left corner:"))
     (setq pt2 (getcorner pt1 "\nPick Upper Right corner:"))
     (command "_zoom" "_W" "non" pt1 pt2)
     (vl-propagate 'pt1)
     (vl-propagate 'pt2)
     )

 

then run this on the drawing file where the 2nd/3rd.... floor is drawn

(defun c:Catchpoints nil
     (command "_zoom" "_W" "non" pt1 pt2)
     )

 

Vl-propagate will send the values of pt1 pt2 to other opened and yet to be opened drawings. and use those as arguments for the two points.

Link to comment
Share on other sites

Well pBe... that was a nice thought on it.. That will work for sure.

But what I tried to achieve was a 'real time synchronization at zooming and panning' on all opened drawings controlled from the active one.

To be more clear;

Suppose I have the GF plan, FF, SF and Third Floor plans opened.

My active drawing is GF plan.

Suppose I have zoomed at grids A-1; FF, SF and TF should simultaneously zoom to the same area.

If I pan my drawing area to grid J-8; FF, SF and TF should simultaneously pan to the same area.

The whole idea is to crosscheck on different levels for discrepancies...

Link to comment
Share on other sites

Pbe no cad at moment but I think theres a variable viewcentre or you can work it out and can work out a visibility scale factor. You would do the same for the pan command maybe ZZ & PP mouse reactor ?

 

We have a 3rd party addon with multiple windows [for add on only] you choose how many and they update real time 64bit only.

 

Found used _.sysvdlg, Viewctr & Viewsize you would only need a reactor that constantly uses these two variables to update other dwgs as per your method.

Edited by BIGAL
variables
Link to comment
Share on other sites

  • 4 years later...
Easy really, as long as the drawing foot print is the same and in the same coordinates (as it should be I hope :))

 

Run this on the GF Plan

(defun c:passpoints (/ pt1 pt2)
     (setq pt1 (getpoint "\nPick Lower Left corner:"))
     (setq pt2 (getcorner pt1 "\nPick Upper Right corner:"))
     (command "_zoom" "_W" "non" pt1 pt2)
     (vl-propagate 'pt1)
     (vl-propagate 'pt2)
     )

 

then run this on the drawing file where the 2nd/3rd.... floor is drawn

(defun c:Catchpoints nil
     (command "_zoom" "_W" "non" pt1 pt2)
     )

 

Vl-propagate will send the values of pt1 pt2 to other opened and yet to be opened drawings. and use those as arguments for the two points.

 

@pBe

 

Stumbled onto this & tried it out & it worked. But it works if all drawings are open within the same autocad window. So if I open a 2nd autocad window it will not work.

 

Able to have the lisp to run the command "passpoints" on the first autocad window & zoom to the same location on another drawing on the second autocad window by running command "Catchpoints" ?

Link to comment
Share on other sites

Worked for me sounds like your talking about multiple instances of Autocad running rather than one session and multi dwgs in that session. You could save the pt1 pt2 to the registery and it would work then as the values are stored outside of Autocad.

Link to comment
Share on other sites

Worked for me sounds like your talking about multiple instances of Autocad running rather than one session and multi dwgs in that session. You could save the pt1 pt2 to the registery and it would work then as the values are stored outside of Autocad.

 

Yes. For multiple instances of autocad. How to have pt1 pt2 saved to registry?

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...