PDA

View Full Version : Various LT scales variables?



cadman_meg
2008-10-24, 04:02 PM
So we are wanting ltscale, msltscale, and psltscale all set to "1". Our company nml file loads this by default on everyones machine everytime a session of '08 is opened. What I am finding now though is that different layouts can have the psltscale set differently. I hadn't thought this was possible. Is this a new thing? If someone overrides this and sets it to "0", shouldn't my mnl file revise that? Here is a sample of how the setvar works for this:

(setvar "Psltscale" 1) ; Set LT scale for PS

Any input, ideas, etc... on this?

Thanks much.

cadman_meg
2008-10-24, 09:09 PM
Anyone please?

irneb
2008-10-27, 06:17 AM
It sounds as if you need a reactor to check if the CTAB sysvar has changed. Then check if the PSLTSCLAE=0, and if so change it to 1. Try this:
;;; Reactor call back function
(defun R:PSLTS_Check (ro ci /)
(if (and (= (getvar "TIMLEMODE") 0) ;Only for Paper Space
(= (getvar "PSLTSCALE") 0) ;And only if set to 0
) ;_ end of and
(setvar "PSLTSCALE" 1) ;Change to 1
) ;_ end of if
) ;_ end of defun

;;; Clean up reactors to circumvent multiple loading
(progn
(setq rlst (vlr-reactors :VLR-SysVar-Reactor))
(foreach ro (cdr (car rlst))
(if (= (vlr-data ro) "CheckPSLTSCALE")
(vlr-remove ro)
) ;_ end of if
) ;_ end of foreach
(setq rlst nil ro nil)
) ;_ end of progn

;;; Set the reactor to fire the callback on a SYSVAR change
(vlr-sysvar-reactor "CheckPSLTSCALE" '((:vlr-sysVarChanged . R:PSLTS_Check)))

cadman_meg
2008-10-27, 03:40 PM
But my question was if this was possible and why? I thought once it was set that the only way it would change was manually or via LISP. No LISP that I have or use messes with this.

lpseifert
2008-10-27, 06:05 PM
Psltscale has to be set per viewport, putting (setvar "psltscale" 1) in your .mnl file will not set all viewports to 1.

cadman_meg
2008-10-27, 10:40 PM
I had always thought that it was global. Or was it at one point and then changed with 2008? Now you say the psltscale is per viewport rather than per drawing or layout? So then in one layout, I could have 2 viewports with one viewport of a psltscale of '0' and then another on the same layout with a psltscale of '1'? I cannot get it to operate that way, but I can achieve different psltscale's per layout.

irneb
2008-10-28, 04:57 AM
Psltscale has to be set per viewport, putting (setvar "psltscale" 1) in your .mnl file will not set all viewports to 1.PSLTSCALE is saved per Layout Tab, LTSCALE per DWG file, MSLTSCALE per Model Tab (in effect DWG file since only 1 Model). PSLTSCLAE was similarly global for R14 when you only had one "Layout Tab" - you were either in Model Space / Paper Space.

It may be "stupid" to have PSLTSCALE per Tab, since LTS is set accoding to PSLTS on / off for the entire DWG. But that's how AutoDesk made it.