This document is archived and information here might be outdated.  Recommended version.

ScaleDependentRenderer Class (ArcObjects .NET 10.8 SDK)
ArcObjects Help for .NET developers > ArcObjects Help for .NET developers > ArcObjects namespaces > Carto > ESRI.ArcGIS.Carto > Classes > S > ScaleDependentRenderer Class
ArcGIS Developer Help

ScaleDependentRendererClass Class

A scale dependent renderer that is composed of multiple renderers, each operating within a particular scale range.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.


This renderer contains other renderers, and it allows you to specify different renderers for different scale ranges. For example, when a user views a layer at its full extent, features can be drawn with one symbology, and when the user zooms in far enough, the symbology can change to another. You can specify as many renderers and scale ranges as you need.

Supported Platforms

Windows, Solaris, Linux


Interfaces Description
IExportSupport Provides access to export support members.
IFeatureRenderer Provides access to members that control functionality common to all feature renderers.
ILegendInfo Provides access to members that control legend information provided by a renderer.
IPersist (esriSystem)
IPersistStream (esriSystem)
IScaleDependentRenderer Provides access to members that control a renderer which is composed of mulitple renderers, of which only one is enabled within a particular scale range.


For example, you could use the ScaleDependentRenderer when symbolizing a road network. Specify two different sub renderers and scale ranges. When zoomed out to the full extent, all of the roads could be drawn with the same line symbol -- using a SimpleRenderer. When zoomed in, the roads could be drawn based on road class by using a UniqueValueRenderer. With this renderer type, more important roads can be drawn with thicker, cased-line symbols.

The ScaleDependentRenderer is not available using the ArcGIS interface. To use this renderer you must use code to build and assign the renderer to a layer.

You can create scale dependent symbology using multiple layers, instead of multiple renderer assigned to a single layer through a ScaleDependentRenderer. For example, you can set up multiple feature layers and specify valid min and max display scales for each using IFeatureLayer::MinimumScale and IFeatureLayer::MaximumScale. This functionality is available using out of the box ArcGIS. To learn more, see the ArcGIS for Desktop Help.