Apr 25, 2012
I've successfully written a lisp routine to insert a scale bar dynamic block with attributes, gather the object id of a user selected viewport, and write fields to attributes for each of the numbers across the top of the typical scale bar as well as the scale name, for both architectural and civil units. I'm trying to come up with a similar dynamic blocklisp routine combination to do the same with view titles, and the associated scale callout. The catch in this case is that I'd like to display the scale as "NTS" if it isn't a proper scale. The "standardscale" object property option in the field dialog box gives me almost exactly what I want, except that non-standard scales are displayed as "CUSTOM" as opposed to "NTS". Moreover, I’d like this to update on the fly, if the viewport scale changes, the scale callout needs to change also, back and forth from “NTS” to a standard scale if need be.
is there a way to change that (CUSTOM NTS)? My research online seems to indicate that the nuts and bolts of fields are deeply rooted in ObjectARX, which is something I know very little about?
The natural followup to that question is, if I can't change "CUSTOM" to read "NTS", is there a way to wrangle this whole thing with reactors? I'm envisioning object reactors, created as a part of the insertion routine, for each individual instance of the block (there could very well be several in a layout, and multiple layouts in detail drawings), that would call another routine to evaluate the viewport scale, and if it didn’t match a list of standard scales, write NTS to the attribute. My issue is that reactors seem to only associate with one object, in this case that’d be the viewport, the reaction would cause the reactor to call the routine, but how does the routine know which block to update? Is there something from the viewport properties that I can add to the block name (or some other property) which will allow the routine to figure out which block to edit?
I’ve attached my scale bar code, and block, as reference context for how I plan to set the view title up.
View 3 Replies
View Related
Sep 13, 2013
I am trying to create a custom complex linestyle for a stream. It's a line with 3 circles/dots. For the dots I want to actually create the circles. I know how to create shapes, compile and load linestyles. For some reason it does not work.
*STREAM-UCS, WATER BODIES -----ooo-----ooo-----ooo-----ooo-----
A,.6,-.15,[STREAM,ucs-ltype.shx,x=0,s=1],-.15
*1,1927,STREAM 4,250,4,4,3,167,3,13,3,176,002,9,(-51,0),(0,0),001,9,(0,3),(-3,3),(-1,0),(-1,1),(-2,0),(-1,-1),(-1,0),(-1,-1),(-1,0),(-1,-1) (0,-1),(-1,-1),(0,-4),(1,-1),(0,-1),(2,-2),(2,0),(1,-1),(2,0),(1,1),(1,0),(1,1),(1,0),(0,1),(1,1),(0,3),(0,0),002,9,(-3,-6) (0,0),001,9,(2,2),(0,0),002,9,(-2,-2),(0,0),001,9,(2,3),(0,0),002,9,(-2,-3),(0,0),001,9,(3,3),(0,0),002,9,(-4,-3),(0,0) 001,9,(4,3),(0,0),002,9,(-4,-3),(0,0),001,9,(4,4),(0,0),002,9,(-4,-4),(0,0),001,9,(4,4),(0,0),002,9,(-4,-4),(0,0),001 9,(4,4),(0,0),002,9,(-5,-4),(0,0),001,9,(5,4),(0,0),002,9,(-5,-5),(0,0),001,9,(5,6),(0,0),002,9,(-5,-6),(0,0),001,9,(5,6) (0,0),002,9,(-5,-6),(0,0),001,9,(5,6),(0,0),002,9,(-6,-6),(0,0),001,9,(6,6),
[code]....
View 9 Replies
View Related