Visual LISP, AutoLISP and General Customization

Visual LISP, AutoLISP and General Customization

Valued Contributor
Posts: 68
Registered: ‎07-25-2012
Message 1 of 2 (313 Views)

LISP Code to Arrange Model Space In Viewports

313 Views, 1 Replies
09-05-2012 01:09 PM

Over the last few months I've been developing LISP code to automate some assembly drawings. The process is carried out completely without user intervention. And that is the key as we now want to roll it out to some sales people who have little if any training in the use of AutoCAD.


Once the drawing is completed in model space we have four different layout tabs, each with a different paper size (A-D) and a different viewport scale. It works really great except that most of the time the users are requesting 11 x 17 size drawings and when the assembly get large, the way it fits in the paper space has to be adjusted.


My goal is to find some method of using the center of the three orthograohic views of the assembly (front, top and side views). I pretty sure I can calculate the point of the center of a rectangle that just enclose these three views and then zoom from there, but the trick would be to get the viewport scale set to something that wouldn't be whacko like 1-7/64" = 1'-0". The goal is to stay with 1:8, 1:12, 1:16, 1:20, etc...


Any pointers or suggestions would be appreciated.

Posts: 172
Registered: ‎11-19-2012
Message 2 of 2 (55 Views)

Re: LISP Code to Arrange Model Space In Viewports

09-19-2014 05:08 PM in reply to: btillman

Well, you can go inside the mspace vport and do a zoom extent.

Then grab the viewsize:

(setq vwz (getvar"viewsize"))

Goto Pspace and grab the pspace vport object and save it to variable " en " and then grab the following info:

(setq ed(entget en))

(setq vwh(cdr(assoc 40 ed))) ; vw height
(setq vww(cdr(assoc 41 ed))); vw width
Next, calculate the current value of the vport scale:

(setq vps(/ (/ vwh vwz) (/ vwh vww)))

Finally find the closes zoom scale factor that's greater than the current vps and use that.


Area Object Link | Dwg Setup | Feet-Inch Calculator | List on Steroids
Exchange App Store

Paul Li
Senior Associate
Los Angeles • Amsterdam • Shanghai
617 West 7th Street • Suite 400 • Los Angeles • California • 90017-3889
D +1 213 225 1944 • T +1 213 225 1900 •
Post to the Community

Have questions about Autodesk products? Ask the community.

New Post
Do you have 60 seconds to spare? The Autodesk Community Team is revamping our site ranking system and we want your feedback! Please click here to launch the 5 question survey. As always your input is greatly appreciated.