com.esri.arcgis.carto
Interface ISymbolLevels

All Superinterfaces:
Serializable
All Known Implementing Classes:
CadastralFabricSubLayer, CadFeatureLayer, FeatureLayer, GdbRasterCatalogLayer, GroupLayer, NALayer, ProcessLayer, SchematicLayer

public interface ISymbolLevels
extends Serializable

Provides access to members that control symbol level drawing.

Description

Use this interface to enable/disable Symbol Level Drawing for a layer.

When To Use

Symbol Level Drawing is useful when creating large scale maps with intersecting and overlapping line features. For example, on a large scale reference map with intersecting highways and streets, Symbol Level Drawing helps you create high-quality representations of the street and highway street intersections.

To set up Symbol Level Drawing:

  1. Turn on Symbol Level Drawing using either for your layer using ISymbolLevels::UseSymbolLevels, or for your entire map using IMap::UseSymbolLevels.
  2. For each layer that you want to set up symbol levels for, access that layer's renderer using IGeoFeatureLayer::Renderer.
  3. Access your layer's symbol(s) through the renderer.
  4. Using IMapLevel, set symbol levels on your layer's symbols. Symbols with MapLevel = 0 draw first, then symbols with MapLevel = 1, continuing until the highest MapLevel is reached. If two symbols have the same MapLevel, then the features drawn with these symbols are drawn in the normal layer order. A MapLevel of -1 for a multilayer symbol (MultiLayerMarkerSymbol, MultiLayerLineSymbol, MultiLayerFillSymbol) indicates that each of the symbol's individual layers are drawn with their individual MapLevel.

Product Availability

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


Method Summary
 boolean isUseSymbolLevels()
          Indicates if symbol levels are used for drawing.
 void setUseSymbolLevels(boolean useSymbolLevels)
          Indicates if symbol levels are used for drawing.
 

Method Detail

isUseSymbolLevels

boolean isUseSymbolLevels()
                          throws IOException,
                                 AutomationException
Indicates if symbol levels are used for drawing.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Returns:
The useSymbolLevels
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setUseSymbolLevels

void setUseSymbolLevels(boolean useSymbolLevels)
                        throws IOException,
                               AutomationException
Indicates if symbol levels are used for drawing.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Parameters:
useSymbolLevels - The useSymbolLevels (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.