I'm trying to print a bunch of drawings as seperate PDFs and I want to change the plot style/printer of each layout to match. I don't want to go into the page setup manager to change each one seperately as that would take some time so I wanted to know; is there a way to change a setting across all layouts in a drawing?
Solved! Go to Solution.
Solved by imadHabash. Go to Solution.
try from Publish command to add your drawings layouts then :
be patient and try it .
Imad Habash
Attached is a LISP routine that will do what you are looking for
Unless you're on LT, you can use this LISP. If you don't know how read THIS
(vl-load-com)
(defun c:VPAllCustomscale ( / c s i) (if (and (setq c (getreal "\nCustom scale for all VPs: ")) (setq s (ssget "_X" '((0 . "VIEWPORT")(-4 . ">")(69 . 1))))) (repeat (setq i (sslength s)) (vl-catch-all-apply 'setpropertyvalue (list (ssname s (setq i (1- i))) "CustomScale" c)))) (princ) )
@ВeekeeCZ wrote:
Unless you're on LT, you can use this LISP. If you don't know how read THIS
(vl-load-com)
(defun c:VPAllCustomscale ( / c s i) (if (and (setq c (getreal "\nCustom scale for all VPs: ")) (setq s (ssget "_X" '((0 . "VIEWPORT"))))) (repeat (setq i (sslength s)) (vl-catch-all-apply 'setpropertyvalue (list (ssname s (setq i (1- i))) "CustomScale" c)))) (princ) )
I am pretty sure "each viewport" from user view doesn't mean "all viewports" technically
and I recommend to edit the user defined viewports only.
(setq s (ssget "_X" '((0 . "VIEWPORT")(-4 . ">")(69 . 1))))
{edited}
@kilama1331 for other properties than the scale you can go this way:
Command: (sssetfirst nil (ssget "_X" '((0 . "VIEWPORT")(-4 . ">")(69 . 1))))
and you can edit properties by PropertiesPalette [CTRL+1]
Sebastian
@cadffm wrote:
{edited}@kilama1331 for other properties than the scale you can go this way:
Command: (sssetfirst nil (ssget "_X" '((0 . "VIEWPORT")(-4 . ">")(69 . 1))))
and you can edit properties by PropertiesPalette [CTRL+1]
That's a neat trick. So we have no built-in tool available to select all entities across the entire drawing (even the QSelets' "Entire drawing" means just the current space...) but the Properties Palette can handle it.
BTW not sure what you mean by your edit... the scale seems to be working this way.
@ВeekeeCZ wrote:
>>"That's a neat trick. So we have no built-in tool available to select all entities across the entire drawing"
You (and LT users) have a built in tool: The AutoCAD object selection! 😊
SSGET is the Lisp-equivalent to the AutoCAD object selection.
ssget selection method "_X" is for "entire database", what means "all"
and exactly this is the AutoCAD object selection method called: selection method ALL !
The problem is: There is only one command what accept all objects,
all other commands are filtering the selection to the objects of the current space.
For non LT-USers with less Lisp knowledge, the GUI ssget version is SSX from Expresstool,
but the original ssx is very very limited.
The command what accepts all objects is FILTER (so LT Users are happy too with this)
Try it: Use FILTER and [apply] it to....ALL<enter><enter> 😉
>>"BTW not sure what you mean by your edit... the scale seems to be working this way."
For usual: YES! So long I can remember, For me it worked 100% but..
But sometimes (newer version, depend on how the layouts created ?) it is possible that it fails.
A simple test to check if it worked or not:
Change the scales and after this, select all again, check the scales.
I have a Install of ACAD2020.1.6 where it doesn't work as it should.
Someone here with 2020.x.x to run a test? PM welcome.
Sebastian
Ok, I see. The old obsolete but powerful FILTER command can do that. Unfortunately, I am among those 95 percent of users who do not actively use this command.
The QSELECT is the tool I would expect to be able to do this. I wish one day someone would refine and redesign it so that it would be a complex but intuitive tool, comfortable to use and not the nightmare, as it is today. (just wishful thinking. Being realistic - not going to happen anytime soon.)
I have just the outdated C3D 2020 on ACAD 2020.1.4 here. I've just made a quick test on one complex drawing that I have here... the layouts have to be loaded to the memory first, then it works. This is unnecessary when using that LISP.
Hi,
>>"I am among those 95 percent of users who do not actively use this command. "
If you would have to work with LT, you would from now 😁
I am pretty sure you are using often Lisp to select <whatever> and for Users with no programming skills or with LT
complicated selection filters -> Filter.
>>"2020.x.x to the memory first, then it works"
Also if I rund 3x thrue each Layout, it fails in my sample (install/file) here.
Perhaps we check this soon, but not today.
Filter has the power of ssget, but can not all of these things you can do with Qselect,
the other direction the same: Qselect can some things what are not possible with ssget/filter,
but it is very limited and can do just a small part of what is possible by ssget/Filter.
🙃
Sebastian
Start PLOT dialog and save your setup by a name (upper/left side of this dialog)
or start command Pagesetup to create a named page setup.
Sebastian
Can't find what you're looking for? Ask the community or share your knowledge.