I am wanting a soultion to a problem I am having when trying to have a combination of linetypes I either want psltscaled or not in a view port.
I.e. I want services linetypes to use psltscale = 1 and I want my linemarking linetypes to use a psltscale = 0, as I need the linemarking linetypes to show in the viewport at the original size they were created at but not the services linetypes as they look horrible.
OR, is this a case for using overrules?
Linetypes are annotative to begin with, and setting PSLTSCALE to 1 is what allows the same linetype to look the same scale across several viewports of differing scales. You are looking for some linetypes to actually appear larger in some viewports yet smaller in others? You can't mix results but you can have multiple copies of a line, each on a different layer, and override the linetype scale of each...
Thanks For your reply Bob,
Yes what I require is a property for certain objects or layers to be able to tell them that I dont want them to be annotative. Surely if they are set by default to being annotative then I can also tell them not to be annotative?
When including linemarking for roads projects in a drawing, you need the linespacing to be displayed in the viewport as it displays in the model (i.e. no scaling of the spaces and dashes)
This wouldnt be so much of a problem if you could only set psltscale per viewport as then i would simply turn it off in the linemarking drawings.
Surely a simply object property would be better, simpler and quicker than creating a whole bunch layers with scaled line types? My way above would make it automated instead of having to put linetypes on different layers in different viewports?
If anyone from autodesk or anyone else has a work around or a hardcode for this please let me know. Even if theres some way of setting it in the .lin file that you dont want it to be annotative, that would be great.
Perhaps add more linetype definitions scaled according to your viewport scales, and assign them by viewport to counter-act PSLTSCALEing.
For example, if you created a new linetype called "Dashed_10X" and made it so the pen up/pen down distances were 10 times as large as the standard "DASHED" linetype, it would display the same in a 1:10 viewport as "DASHED" does at 1:1
Thanks for your comments,
Yeah, that is what is currently happening at the moment(as above comment), having different scaled linetypes for different views. It becomes a real pain when you have plans and detail at a few different scales throughout your whole drawing set. It would be easier to just be able to tell the string that you either do or do not want it scaled. Either in the layer manager or by the objects properties.
Can anyone tell me how I apply ObjectARX Referencing? Specifically the SetForceAnnoAllVisable routine?
Im assuming this will let me force the linetype scale to be 1:1 for this object (polylines that have linemarking linetypes associated with them) regardless of the psltscaling?
SetForceAnnoAllVisable() function in ObjectARX effect only annotative objects
linetypes are not annotative objects
try google and find a lisp that can explode linetypes
here some links:-
That seems like a OK work around.
I am curious though, almost all searches on google come up with annotative linetypes? Therefore the ObjectARX should work?
By chance would setting individual object linetype scale settings be what you seek (as an alternate to your current solution)?
Select an object, open PROPERTIES, and set the LINETYPE SCALE (third from the top) to something other than 1.
Also explore CELTSCALE variable.