Symbology change based on scale

6178
4
07-17-2013 07:24 AM
AngelynSnyder
New Contributor III
Is there a way to have a feature's symbol change based on the scale of the map?

For example, at 1:250,000 I would prefer for my sewer main layer to be symbolized on main-type only, but when the user adjusts the scale to say 1:10,000, it would be great if the direction of flow would be added to the symbol (but not before).

The only work around I have found to adjusting symbol detail is to add the layer in more than one time and adjust the symbol with scale ranges. This gets the job done, but is a bit messy in the TOC. Can Symbol Level drawing be used to control this?
Tags (2)
4 Replies
RichardFairhurst
MVP Honored Contributor
Is there a way to have a feature's symbol change based on the scale of the map?

For example, at 1:250,000 I would prefer for my sewer main layer to be symbolized on main-type only, but when the user adjusts the scale to say 1:10,000, it would be great if the direction of flow would be added to the symbol (but not before).

The only work around I have found to adjusting symbol detail is to add the layer in more than one time and adjust the symbol with scale ranges. This gets the job done, but is a bit messy in the TOC. Can Symbol Level drawing be used to control this?


Unlike Label classes, the symbology dialog does not provide any way to define several standard layer symbology classes within a single layer that are scale dependent.  I believe that Representations can have rules set up to do behaviors that may resemble the behavior you want, but I have not used representations enough to be absolutely certain.  Representations have to be built with a particular target scale in mind, so they do not have the same level of flexibility that standard symbols have.  I have always created multiple copies of the same layer to make different scale dependent standard symbol sets and typically included them all in the same group layer to simplify their TOC presentation.
0 Kudos
AngelynSnyder
New Contributor III
The multiple layer approach certainly gets the job done well enough. I was just hoping to simplify the map product for other end users. Maybe this will be an improvement in the future!

Thanks for the reply rfairhur24.
0 Kudos
RobertBorchert
Frequent Contributor III
I have been wanting this for YEARS.  The best method I have found so far is to use the multiple layers.

What I also want to see (and I have put it in the suggestion box multiple times) is to have a way to query the current scale and return it as a value.  Such that I can have a scale field in the feature class table and have individual features turn on or off and various scales. 

i.e. I have feature  A and B.  I want feature a to be visible all scales and B only visible when zoomed in to 1:24,000 or less.  so the definition query would be something like.  scale <=  MapScale.

Now I know there has to be a way to return current map scale.  after all it is constantly visible in an ArcMAP session.

The multiple layer approach certainly gets the job done well enough. I was just hoping to simplify the map product for other end users. Maybe this will be an improvement in the future!

Thanks for the reply rfairhur24.
Nicholas_ISeigal
New Contributor III

I have submitted this as a feature request as have many others.

The multiple-layers approach really doesn't work well for some of my use cases. I want, for example, a polygon layer that turns to points as the scale gets small (zoomed out). The hitch is, I want the user to be able to select polygons and have the selection switch to the points as they zoom out. This would be for a Esri JS API web app, so manually synchronizing the selections between two layers and toggling visibility based on scale is possible, but tedious.

Any better ideas folks?

0 Kudos