PDA

View Full Version : Linetype Scale and Paperspace



asptamer
18th May 2007, 05:53 pm
Hi.

I like my lines (dash, dashdot, etc) to appear in the same scale in both Model and Paper space so I click on the Linetype drop down box of the Properties toolbar, select Other, push "Show Details" button and then with the linetype selected uncheck the "use paper space units for scaling".

Now, the problem comes along when I make a new layout. The above procedure has to be repeated for each new layout I make. And it is a problem, because dashed lines will appear sold when the new layout is plotted if I forget to change that option.

Question 1: Is there a way to apply the "DO NOT use paper space units for scaling" option to all linetypes by default?

Also, a linetype is defined for each layer and I would hope that the property is retained in the layer whenever I copy it to a new drawing, but that is not the case either.

Question 2: Are there any linetype / linetypescale controls in Autocad other than the linetype property manager and LTSCALE command? I'm getting the feeling that I'm missing some very important tools.


I hope my problem is clear...

Alan Cullen
18th May 2007, 06:09 pm
asptamer.....

To the best of my knowledge (and I have been proven wrong many times before).......set your ltscale in modelspace at 1 to 1.....then in paperspace set your ltscale to suit your viewport scale (using the properties box). That way....when you view your paperspace viewport......everything will be as it should be. You can keep working in modelspace through your viewport in paperspace if you want. It's just that everything will look like how it should be plotted.....:)

asptamer
18th May 2007, 06:23 pm
I guess it wasn't clear.

Unless the "use paper space units for scaling" option is unchecked, if I have a line that has it's linetype scale set to 1, it will be different in the viewports. A line that consists of 10 dashes, may have only 2 long dashes in a viewport with one scale, and be completely solid in a different viewport. I want to achieve consistency, and that is accomplished with that little check box in linetype manager. But as I said in my first post, that option keeps resetting. I'd like to achieve more control. Also, I don't like working in paper space.

Cad64
18th May 2007, 06:34 pm
I assume that your viewports are all set at different scales which is why your dashed linetypes don't appear the same in each one? Set your PSLTSCALE value to 1 and then RegenAll. The dashed lines should now read the same in all viewports.

lpseifert
18th May 2007, 06:41 pm
This is what works for me...
Ltscale=1, Psltscale=1 (must be set in each viewport). Then I make a layout tab with a viewport for the sole purpose of doing my modeling. Although the linetypes don't appear properly in the Model tab, they do in each of viewports. This allows for different plot scales for each viewport, with the linetypes plotting properly. Another bonus for the working tab/viewport is that you can freeze/thaw layers without affecting the other viewports.
Question 2- there is the Celtscale (current entity ltscale)

asptamer
18th May 2007, 07:21 pm
Interesting: PSLTSCALE is actually that very check box that I was talking about.
PSLTSCALE <0> unchecks it
PSLTSCALE <1> checks it.

I like what <1> does in the sense that line scale is the same in each viewport, but paper space scale is way different from model space, and when I work in model space - I cant see which line has what linetype as they all look continuous.

It seems like there has to be a compromise, so I'll choose PSLTSCALE=0 (it works fine as long as I don't have viewports magnifying parts with dashed lines).

Now, back to Question 1: Is there a way to set the default value of PSLTSCALE to be 0 for all new drawings (template?), layouts and linetypes?

lpseifert
18th May 2007, 08:11 pm
If you want the PSLTSCALE=0 in new drawings, set it in your template(s) for each viewport. If you want to change the ltscale/psltscale in existing drawings this will work


;sets ltscale & psltscale=0 for all layouts

(defun c:layoutltscale ( / lt lay ct)
(setq ct (getvar "ctab")) ;store ctab
(setq lt (getreal "Enter LTSCALE: ")); get ltscale
(setvar "LTSCALE" lt); set ltscale
(foreach lay (layoutlist)(command "_LAYOUT" "_Set" lay "PSLTSCALE" 0)); psltscale=0 for each layout
(setvar "ctab" ct);restore ctab
);defun

asptamer
18th May 2007, 09:31 pm
I like that lisp, I think I'll use it.
Now another problem... I want to load it at start up. How do I do it?

I remember reading about autoloading lisps but can't find the thread now. This (http://www.cadtutor.net/forum/showthread.php?t=13064) thread talks about "acaddoc.lsp" file but I guess I have to create it first because I did a search on my C: drive and there's no such file. Neither do I have any .mnu or .mnl files in autocad or documents&settings folders...

How do I go about loading lisps and changing system variables on startup?

Thanks for replies everyone.

lpseifert
18th May 2007, 11:22 pm
Assuming you've saved the above code as layoutltscale.lsp in a folder somewhere in acad's support files search path, put this line in your acaddoc.lsp file.

(load "layoutltscale")or you could put it in your Startup suite using Appload
note: these methods will only load the lisp application, you must invoke the command by typing Layoutltscale at the command line.
To set a variable at startup, you can put something similar to this in your acaddoc.lsp file:
(setvar "blipmode" 0) You can make the acaddoc.lsp file using a text editor such as Notepad (or use the Visual Lisp Editor, type vlide at the command line); saveas acaddoc.lsp, again being sure it is in acad's support files search path.
You don't have any mnu or mnl files because autocad replaced them with .cui files in 2006.

asptamer
21st May 2007, 05:45 pm
That works nicely. Thanks a lot, lpseifert.