com.esri.arcgis.carto
Class SimpleRenderer

java.lang.Object
  extended by com.esri.arcgis.carto.SimpleRenderer
All Implemented Interfaces:
IExportSupport, IFeatureRenderer, ILegendInfo, ILevelRenderer, ILookupSymbol, IRotationRenderer, IRotationRenderer2, ISimpleRenderer, ISizeRenderer, ITransparencyRenderer, IDisplayAdmin, com.esri.arcgis.interop.RemoteObjRef, IPersist, IPersistStream, IPropertySupport, IXMLSerialize, IXMLVersionSupport, Externalizable, Serializable

public class SimpleRenderer
extends Object
implements com.esri.arcgis.interop.RemoteObjRef, ISimpleRenderer, IFeatureRenderer, ILevelRenderer, IPropertySupport, ILegendInfo, IPersistStream, IPersist, IRotationRenderer, IRotationRenderer2, ISizeRenderer, ITransparencyRenderer, IDisplayAdmin, ILookupSymbol, IXMLSerialize, IXMLVersionSupport, IExportSupport, Externalizable

A simple renderer where the same symbol is drawn for each feature.

Description

SimpleRenderer draws each feature using the same symbol.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

See Also:
Serialized Form

Constructor Summary
SimpleRenderer()
          Constructs a SimpleRenderer using ArcGIS Engine.
SimpleRenderer(Object obj)
          Deprecated. As of ArcGIS 9.2, replaced by normal Java casts.
SimpleRenderer theSimpleRenderer = (SimpleRenderer) obj;
 
Method Summary
 boolean applies(Object pUnk)
          Indicates if the receiver can apply the given object at any given time.
 Object apply(Object newObject)
          Applies the given property to the receiver and returns the old object.
 boolean canApply(Object pUnk)
          Indicates if the receiver can apply the given object at that particular moment.
 boolean canRender(IFeatureClass featClass, IDisplay display)
          Indicates if the specified feature class can be rendered on the given display.
 void deserialize(IXMLSerializeData data)
          Deserializes an object from XML.
 void draw(IFeatureCursor cursor, int drawPhase, IDisplay display, ITrackCancel trackCancel)
          Draws features from the specified cursor on the given display.
 boolean equals(Object o)
          Compare this object with another
 void getClassID(GUID[] pClassID)
          getClassID
static String getClsid()
          getClsid.
 Object getCurrent(Object pUnk)
          The object currently being used.
 String getDescription()
          Renderer description.
 String getLabel()
          Renderer label.
 ILegendGroup getLegendGroup(int index)
          Legend group at the specified index.
 int getLegendGroupCount()
          Number of legend groups contained by the object.
 ILegendItem getLegendItem()
          Optional.
 Object getLevelArray()
          Array that contains all levels used by the symbols, (symbols without a level get a level of 0).
 String getMinNamespaceSupported()
          The minimum namespace the class can serialize to (eg the 90 namespace).
 String getRotationField()
          Rotation field.
 int getRotationType()
          Rotation type.
 void getSizeMax(_ULARGE_INTEGER[] pcbSize)
          getSizeMax
 String getSizeRendererExpression()
          Gets size expression.
 int getSizeRendererFlags()
          Gets sizing flags composed of enum esriSizeRendererFlags.
 void getSizeRendererRandomRange(double[] pMinSize, double[] pMaxSize)
          Gets size range for random sizing.
 ISymbol getSymbol()
          Symbol used to draw each feature.
 ISymbol getSymbolByFeature(IFeature feature)
          Symbol used to draw the specified feature.
 void getSymbolRotation3DExpressions(String[] pExpressionX, String[] pExpressionY, String[] pExpressionZ)
          Gets expressions for rotation about each axis.
 int getSymbolRotation3DFlags()
          Gets rotation flags composed of enum esriSymbolRotation3DFlags.
 void getSymbolRotation3DFlags2(int[] pFlagX, int[] pFlagY, int[] pFlagZ)
          Gets one flag for each axis.
 void getSymbolRotation3DRandomRanges(double[] pMinRotationX, double[] pMinRotationY, double[] pMinRotationZ, double[] pMaxRotationX, double[] pMaxRotationY, double[] pMaxRotationZ)
          Gets rotation range for each axis (for random rotation).
 int getSymbolRotation3DRotationTypeZ()
          Gets rotation type (geographic or arithmetic) about the Z axis (hardcoded arithmetic about other axes).
 String getTransparencyField()
          Transparency field.
 int hashCode()
          the hashcode for this object
 void isDirty()
          isDirty
 boolean isRenderPhase(int drawPhase)
          Indicates if renderer uses the specified draw phase.
 boolean isSymbolsAreGraduated()
          Indicates if symbols are graduated.
 boolean isUsesFilter()
          Indicates if the current object draws using a filter.
 void load(IStream pstm)
          load
 ISymbol lookupSymbol(boolean firstPass, IFeature feature)
          Returns a reference to the renderer's symbol for the input feature.
 void prepareFilter(IFeatureClass fc, IQueryFilter queryFilter)
          Prepares the query filter for the rendering process.
 void readExternal(ObjectInput in)
           
 void resetLookupSymbol(ISymbol symbol)
          Resets temporary options on the symbol (e.g.
 void save(IStream pstm, int fClearDirty)
          save
 void serialize(IXMLSerializeData data)
          Serializes an object to XML.
 void setCurrentDrawLevel(int rhs1)
          The current draw level, (set to -1 to draw all levels).
 void setDescription(String text)
          Renderer description.
 void setExclusionSetByRef(IFeatureIDSet rhs1)
          An object reference to a temporary drawing exclusion set.
 void setExportInfoByRef(IFeatureExportInfoGenerator rhs1)
          The helper oject to generate export information.
 void setLabel(String label)
          Renderer label.
 void setRotationField(String fieldName)
          Rotation field.
 void setRotationType(int type)
          Rotation type.
 void setSizeRendererExpression(String pExpression)
          Gets size expression.
 void setSizeRendererFlags(int pFlags)
          Gets sizing flags composed of enum esriSizeRendererFlags.
 void setSizeRendererRandomRange(double minSize, double maxSize)
          Sets size range for random sizing.
 void setSymbolByRef(ISymbol symbol)
          Symbol used to draw each feature.
 void setSymbolRotation3DExpressions(String expressionX, String expressionY, String expressionZ)
          Sets expressions for rotation about each axis.
 void setSymbolRotation3DFlags(int pFlags)
          Gets rotation flags composed of enum esriSymbolRotation3DFlags.
 void setSymbolRotation3DFlags2(int flagX, int flagY, int flagZ)
          Sets one flag for each axis.
 void setSymbolRotation3DRandomRanges(double minRotationX, double minRotationY, double minRotationZ, double maxRotationX, double maxRotationY, double maxRotationZ)
          Sets rotation range for each axis (for random rotation).
 void setSymbolRotation3DRotationTypeZ(int pType)
          Gets rotation type (geographic or arithmetic) about the Z axis (hardcoded arithmetic about other axes).
 void setSymbolsAreGraduated(boolean symbolsAreGraduated)
          Indicates if symbols are graduated.
 void setTransparencyField(String fieldName)
          Transparency field.
 void writeExternal(ObjectOutput out)
           
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface com.esri.arcgis.interop.RemoteObjRef
getJintegraDispatch, release
 

Constructor Detail

SimpleRenderer

public SimpleRenderer()
               throws IOException,
                      UnknownHostException
Constructs a SimpleRenderer using ArcGIS Engine.

Throws:
IOException - if there are interop problems
UnknownHostException - if there are interop problems

SimpleRenderer

public SimpleRenderer(Object obj)
               throws IOException
Deprecated. As of ArcGIS 9.2, replaced by normal Java casts.
SimpleRenderer theSimpleRenderer = (SimpleRenderer) obj;

Construct a SimpleRenderer using a reference to such an object returned from ArcGIS Engine or Server. This is semantically equivalent to casting obj to SimpleRenderer.

Parameters:
obj - an object returned from ArcGIS Engine or Server
Throws:
IOException - if there are interop problems
Method Detail

getClsid

public static String getClsid()
getClsid.


equals

public boolean equals(Object o)
Compare this object with another

Overrides:
equals in class Object

hashCode

public int hashCode()
the hashcode for this object

Overrides:
hashCode in class Object

getSymbol

public ISymbol getSymbol()
                  throws IOException,
                         AutomationException
Symbol used to draw each feature.

Description

Symbol is the symbol that all features will be drawn with.

Remarks

This property provides access to the symbol used to draw all features in a layer.

The symbol type matches the geometry of the layer being rendered, so marker symbols are used to draw point layers, line symbols are used to draw line features, and fill symbols are used to draw polygon features.

Marker symbols can be rotated on a feature by feature basis via IRotationRenderer. Fill symbols can be made partially transparent, again on a feature by feature basis, via ITransparencyRenderer. The amount of rotation or transparency is specified by attribute values associated with each feature.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getSymbol in interface ISimpleRenderer
Returns:
A reference to a com.esri.arcgis.display.ISymbol
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setSymbolByRef

public void setSymbolByRef(ISymbol symbol)
                    throws IOException,
                           AutomationException
Symbol used to draw each feature.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
setSymbolByRef in interface ISimpleRenderer
Parameters:
symbol - A reference to a com.esri.arcgis.display.ISymbol (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getLabel

public String getLabel()
                throws IOException,
                       AutomationException
Renderer label.

Description

For a layer symbolized with a renderer that supports ISimpleRenderer, the descriptive text string that is displayed in the table of contents and may also appear in the legend.

Remarks

This property describes the meaning of the symbol. For example, a black, circular marker symbol might represents "Cities".

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getLabel in interface ISimpleRenderer
Returns:
The label
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setLabel

public void setLabel(String label)
              throws IOException,
                     AutomationException
Renderer label.

Description

Label is the label that will be displayed in the TOC and LegendItems with the symbol for a layer rendered using an ISimpleRenderer .

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
setLabel in interface ISimpleRenderer
Parameters:
label - The label (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getDescription

public String getDescription()
                      throws IOException,
                             AutomationException
Renderer description.

Description

For a layer symbolized with a renderer that supports ISimpleRenderer, the descriptive text string that does not appear in the table of contents but may appear in the legend.

Remarks

This property provides further explanatory text about the symbolization.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getDescription in interface ISimpleRenderer
Returns:
The text
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setDescription

public void setDescription(String text)
                    throws IOException,
                           AutomationException
Renderer description.

Description

Description is the text that will be displayed in the LegendItem with the symbol for a layer rendered using an ISimpleRenderer .

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
setDescription in interface ISimpleRenderer
Parameters:
text - The text (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

canRender

public boolean canRender(IFeatureClass featClass,
                         IDisplay display)
                  throws IOException,
                         AutomationException
Indicates if the specified feature class can be rendered on the given display.

Remarks

If the renderer is not applicable to a feature layer, then it can return False in response to a CanRender method. For example, the dot-density renderer is only applicable to polygon feature layers and returns False in response to other feature layers.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
canRender in interface IFeatureRenderer
Parameters:
featClass - A reference to a com.esri.arcgis.geodatabase.IFeatureClass (in)
display - A reference to a com.esri.arcgis.display.IDisplay (in)
Returns:
The result
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

prepareFilter

public void prepareFilter(IFeatureClass fc,
                          IQueryFilter queryFilter)
                   throws IOException,
                          AutomationException
Prepares the query filter for the rendering process.

Remarks

This method is called prior to the Draw method and gives the renderer a chance to adjust the query filter to incorporate extra constraints. For example, if a particular field is required for the renderer, it would add this field to the filter to ensure it is accessible during the Draw method.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
prepareFilter in interface IFeatureRenderer
Parameters:
fc - A reference to a com.esri.arcgis.geodatabase.IFeatureClass (in)
queryFilter - A reference to a com.esri.arcgis.geodatabase.IQueryFilter (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

draw

public void draw(IFeatureCursor cursor,
                 int drawPhase,
                 IDisplay display,
                 ITrackCancel trackCancel)
          throws IOException,
                 AutomationException
Draws features from the specified cursor on the given display.

Remarks

This method is typically called by the framework to renderer features to a display. This could be in response to a refresh on the map. This method typically iterates through all the features and renders each feature with an appropriate symbol.

An individual feature is typically drawn by calling the Draw method on the feature's IFeatureDraw with the symbol created by the renderer. However, when writing a custom feature renderer you can draw anything you want using a number of different methods. To learn more see the section on writing a custom feature renderer in Extending ArcObjects.

To allow complex rendering to be canceled halfway through a draw, the renderer typically checks the TrackCancel object after each feature or set of features. If a cancel action has occurred, the renderer will exit.

There are three drawing phases: selection, annotation, and geography, and this method can be called by the framework up to three times. With the exception of the selection phase, this method will only be called for a particular draw phase if the call by the framework to RenderPhase returns true for that phase.

Feature renderers typically only draw features during the geography phase, though in some cases features are drawn in the annotation phase. Take for example a case where proportional symbols are drawn for polygon features. The ProportionalSymbolRenderer draws the background fill symbol during the geography phase and the proportionally sized marker symbol during the annotation phase.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
draw in interface IFeatureRenderer
Parameters:
cursor - A reference to a com.esri.arcgis.geodatabase.IFeatureCursor (in)
drawPhase - A com.esri.arcgis.system.esriDrawPhase constant (in)
display - A reference to a com.esri.arcgis.display.IDisplay (in)
trackCancel - A reference to a com.esri.arcgis.system.ITrackCancel (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getSymbolByFeature

public ISymbol getSymbolByFeature(IFeature feature)
                           throws IOException,
                                  AutomationException
Symbol used to draw the specified feature.

Product Availability

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

Specified by:
getSymbolByFeature in interface IFeatureRenderer
Parameters:
feature - A reference to a com.esri.arcgis.geodatabase.IFeature (in)
Returns:
A reference to a com.esri.arcgis.display.ISymbol
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isRenderPhase

public boolean isRenderPhase(int drawPhase)
                      throws IOException,
                             AutomationException
Indicates if renderer uses the specified draw phase.

Product Availability

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

Specified by:
isRenderPhase in interface IFeatureRenderer
Parameters:
drawPhase - A com.esri.arcgis.system.esriDrawPhase constant (in)
Returns:
The result
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setExclusionSetByRef

public void setExclusionSetByRef(IFeatureIDSet rhs1)
                          throws IOException,
                                 AutomationException
An object reference to a temporary drawing exclusion set.

Description

The list of feature IDs to be excluded from drawing.

Remarks

Some feature renderers support IDataExclusion which allows you to build a where clause to exclude features.

Exclusion prevents features from drawing. To prevent features from drawing as well as from appearing in tables and in query results, set a layer definition query using IFeatureLayerDefinition.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
setExclusionSetByRef in interface IFeatureRenderer
Parameters:
rhs1 - A reference to a com.esri.arcgis.carto.IFeatureIDSet (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setCurrentDrawLevel

public void setCurrentDrawLevel(int rhs1)
                         throws IOException,
                                AutomationException
The current draw level, (set to -1 to draw all levels).

Remarks

This property is set by the framework at draw time to specify which symbol level the renderer is to draw. If implementing a custom renderer that implements ILevelRenderer, you can check this property in your implementation of IFeatureRenderer::Draw to know which symbol level to draw.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
setCurrentDrawLevel in interface ILevelRenderer
Parameters:
rhs1 - The rhs1 (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getLevelArray

public Object getLevelArray()
                     throws IOException,
                            AutomationException
Array that contains all levels used by the symbols, (symbols without a level get a level of 0).

Remarks

This property returns an array of long integers representing all the the symbol levels of the symbols used by the renderer.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getLevelArray in interface ILevelRenderer
Returns:
A Variant
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

applies

public boolean applies(Object pUnk)
                throws IOException,
                       AutomationException
Indicates if the receiver can apply the given object at any given time.

Remarks

Applies indicates whether the specified object can be applied to the current object. For instance, we might want to ask our CircleElement whether a Color object applies to it. If it does, then we can use the Apply method to update our CircleElement with the new Color object.

CanApply differs from Applies in that it is a check for the editability of the object at any given time. Applies indicates whether an object can be applied at all, while CanApply indicates whether an object can be applied at that particular moment.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
applies in interface IPropertySupport
Parameters:
pUnk - A reference to another Object (IUnknown) (in)
Returns:
The applies
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

canApply

public boolean canApply(Object pUnk)
                 throws IOException,
                        AutomationException
Indicates if the receiver can apply the given object at that particular moment.

Remarks

CanApply indicates whether the specified object can be applied to the current object. For instance, we might want to ask our CircleElement whether a Color object applies to it. If it does, then we can use the Apply method to update our CircleElement with the new Color object.

CanApply differs from Applies in that it is a check for the editability of the object at any given time. Applies indicates whether an object can be applied at all, while CanApply indicates whether an object can be applied at that particular moment.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
canApply in interface IPropertySupport
Parameters:
pUnk - A reference to another Object (IUnknown) (in)
Returns:
The canApply
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getCurrent

public Object getCurrent(Object pUnk)
                  throws IOException,
                         AutomationException
The object currently being used.

Product Availability

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

Specified by:
getCurrent in interface IPropertySupport
Parameters:
pUnk - A reference to another Object (IUnknown) (in)
Returns:
A reference to another Object (IUnknown)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

apply

public Object apply(Object newObject)
             throws IOException,
                    AutomationException
Applies the given property to the receiver and returns the old object.

Remarks

Apply will apply the specified object to the current object. For instance, I might apply a Color object to my RectangleElement. When I execute Apply, the object I replace (the old object) is returned.

Use the Applies and CanApply methods to determine if an Apply can be used on an object.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
apply in interface IPropertySupport
Parameters:
newObject - A reference to another Object (IUnknown) (in)
Returns:
A reference to another Object (IUnknown)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getLegendGroupCount

public int getLegendGroupCount()
                        throws IOException,
                               AutomationException
Number of legend groups contained by the object.

Remarks

The number of legend groups is determined by the implementation of the renderer, consequently this property is read only. For example, SimpleRenderer has one group, while a BiUniqueValueRenderer has any number of groups.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getLegendGroupCount in interface ILegendInfo
Returns:
The count
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getLegendGroup

public ILegendGroup getLegendGroup(int index)
                            throws IOException,
                                   AutomationException
Legend group at the specified index.

Product Availability

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

Specified by:
getLegendGroup in interface ILegendInfo
Parameters:
index - The index (in)
Returns:
A reference to a com.esri.arcgis.carto.ILegendGroup
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getLegendItem

public ILegendItem getLegendItem()
                          throws IOException,
                                 AutomationException
Optional. Defines legend formatting for layer rendered with this object.

Remarks

Layer or renderer legend information is further formatted for display in ArcMap legends. A renderer can override this formatting by returning a LegendItem for this property. ESRI renderers typically do not return anything for this property. With this configuration, legend formatting becomes a user or developer choice on the legend object.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getLegendItem in interface ILegendInfo
Returns:
A reference to a com.esri.arcgis.carto.ILegendItem
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isSymbolsAreGraduated

public boolean isSymbolsAreGraduated()
                              throws IOException,
                                     AutomationException
Indicates if symbols are graduated.

Description

Indicates whether the symbols used for a layer or renderer's legend vary by size.

Remarks

For example the proportional symbol renderer returns True for this property.

You can use this property to distinguish between a layer symbolized with graduated color or graduated symbol type layer symbology. Both of these symbolizations use a ClassBreaksRenderer, but only a graduated symbol symbolization will return True for this property.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
isSymbolsAreGraduated in interface ILegendInfo
Returns:
The symbolsAreGraduated
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setSymbolsAreGraduated

public void setSymbolsAreGraduated(boolean symbolsAreGraduated)
                            throws IOException,
                                   AutomationException
Indicates if symbols are graduated.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
setSymbolsAreGraduated in interface ILegendInfo
Parameters:
symbolsAreGraduated - The symbolsAreGraduated (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isDirty

public void isDirty()
             throws IOException,
                    AutomationException
isDirty

Description

IPersistStream is a Microsoft interface. Please refer to MSDN for information about this interface.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
isDirty in interface IPersistStream
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

load

public void load(IStream pstm)
          throws IOException,
                 AutomationException
load

Description

IPersistStream is a Microsoft interface. Please refer to MSDN for information about this interface.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
load in interface IPersistStream
Parameters:
pstm - A reference to a com.esri.arcgis.system.IStream (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

save

public void save(IStream pstm,
                 int fClearDirty)
          throws IOException,
                 AutomationException
save

Description

IPersistStream is a Microsoft interface. Please refer to MSDN for information about this interface.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
save in interface IPersistStream
Parameters:
pstm - A reference to a com.esri.arcgis.system.IStream (in)
fClearDirty - The fClearDirty (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getSizeMax

public void getSizeMax(_ULARGE_INTEGER[] pcbSize)
                throws IOException,
                       AutomationException
getSizeMax

Description

IPersistStream is a Microsoft interface. Please refer to MSDN for information about this interface.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getSizeMax in interface IPersistStream
Parameters:
pcbSize - A Structure: com.esri.arcgis.system._ULARGE_INTEGER (out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getClassID

public void getClassID(GUID[] pClassID)
                throws IOException,
                       AutomationException
getClassID

Description

IPersist is a Microsoft interface. Please refer to MSDN for information about this interface.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getClassID in interface IPersist
Parameters:
pClassID - A Structure: com.esri.arcgis.support.ms.stdole.GUID (out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getRotationField

public String getRotationField()
                        throws IOException,
                               AutomationException
Rotation field.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getRotationField in interface IRotationRenderer
Returns:
The fieldName
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setRotationField

public void setRotationField(String fieldName)
                      throws IOException,
                             AutomationException
Rotation field.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
setRotationField in interface IRotationRenderer
Parameters:
fieldName - The fieldName (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getRotationType

public int getRotationType()
                    throws IOException,
                           AutomationException
Rotation type.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getRotationType in interface IRotationRenderer
Returns:
A com.esri.arcgis.carto.esriSymbolRotationType constant
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setRotationType

public void setRotationType(int type)
                     throws IOException,
                            AutomationException
Rotation type.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
setRotationType in interface IRotationRenderer
Parameters:
type - A com.esri.arcgis.carto.esriSymbolRotationType constant (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getSymbolRotation3DFlags

public int getSymbolRotation3DFlags()
                             throws IOException,
                                    AutomationException
Gets rotation flags composed of enum esriSymbolRotation3DFlags. Not just for 3D rotation.

Product Availability

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

Specified by:
getSymbolRotation3DFlags in interface IRotationRenderer2
Returns:
The pFlags
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setSymbolRotation3DFlags

public void setSymbolRotation3DFlags(int pFlags)
                              throws IOException,
                                     AutomationException
Gets rotation flags composed of enum esriSymbolRotation3DFlags. Not just for 3D rotation.

Product Availability

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

Specified by:
setSymbolRotation3DFlags in interface IRotationRenderer2
Parameters:
pFlags - The pFlags (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getSymbolRotation3DFlags2

public void getSymbolRotation3DFlags2(int[] pFlagX,
                                      int[] pFlagY,
                                      int[] pFlagZ)
                               throws IOException,
                                      AutomationException
Gets one flag for each axis. Serves same purpose as SymbolRotation3DFlags (get_, put_).

Product Availability

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

Specified by:
getSymbolRotation3DFlags2 in interface IRotationRenderer2
Parameters:
pFlagX - A com.esri.arcgis.carto.esriSymbolRotation3DFlags constant (out: use single element array)
pFlagY - A com.esri.arcgis.carto.esriSymbolRotation3DFlags constant (out: use single element array)
pFlagZ - A com.esri.arcgis.carto.esriSymbolRotation3DFlags constant (out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setSymbolRotation3DFlags2

public void setSymbolRotation3DFlags2(int flagX,
                                      int flagY,
                                      int flagZ)
                               throws IOException,
                                      AutomationException
Sets one flag for each axis. For axis which is not to be rotated, set to esriSymbolRotation3DNone. Serves same purpose as SymbolRotation3DFlags (get_, put_).

Product Availability

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

Specified by:
setSymbolRotation3DFlags2 in interface IRotationRenderer2
Parameters:
flagX - A com.esri.arcgis.carto.esriSymbolRotation3DFlags constant (in)
flagY - A com.esri.arcgis.carto.esriSymbolRotation3DFlags constant (in)
flagZ - A com.esri.arcgis.carto.esriSymbolRotation3DFlags constant (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getSymbolRotation3DRotationTypeZ

public int getSymbolRotation3DRotationTypeZ()
                                     throws IOException,
                                            AutomationException
Gets rotation type (geographic or arithmetic) about the Z axis (hardcoded arithmetic about other axes).

Product Availability

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

Specified by:
getSymbolRotation3DRotationTypeZ in interface IRotationRenderer2
Returns:
A com.esri.arcgis.carto.esriSymbolRotationType constant
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setSymbolRotation3DRotationTypeZ

public void setSymbolRotation3DRotationTypeZ(int pType)
                                      throws IOException,
                                             AutomationException
Gets rotation type (geographic or arithmetic) about the Z axis (hardcoded arithmetic about other axes).

Product Availability

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

Specified by:
setSymbolRotation3DRotationTypeZ in interface IRotationRenderer2
Parameters:
pType - A com.esri.arcgis.carto.esriSymbolRotationType constant (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getSymbolRotation3DExpressions

public void getSymbolRotation3DExpressions(String[] pExpressionX,
                                           String[] pExpressionY,
                                           String[] pExpressionZ)
                                    throws IOException,
                                           AutomationException
Gets expressions for rotation about each axis. In case of non-3D rotation, Z axis is used.

Product Availability

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

Specified by:
getSymbolRotation3DExpressions in interface IRotationRenderer2
Parameters:
pExpressionX - The pExpressionX (out: use single element array)
pExpressionY - The pExpressionY (out: use single element array)
pExpressionZ - The pExpressionZ (out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setSymbolRotation3DExpressions

public void setSymbolRotation3DExpressions(String expressionX,
                                           String expressionY,
                                           String expressionZ)
                                    throws IOException,
                                           AutomationException
Sets expressions for rotation about each axis. In case of non-3D rotation, Z axis is used.

Product Availability

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

Specified by:
setSymbolRotation3DExpressions in interface IRotationRenderer2
Parameters:
expressionX - The expressionX (in)
expressionY - The expressionY (in)
expressionZ - The expressionZ (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getSymbolRotation3DRandomRanges

public void getSymbolRotation3DRandomRanges(double[] pMinRotationX,
                                            double[] pMinRotationY,
                                            double[] pMinRotationZ,
                                            double[] pMaxRotationX,
                                            double[] pMaxRotationY,
                                            double[] pMaxRotationZ)
                                     throws IOException,
                                            AutomationException
Gets rotation range for each axis (for random rotation).

Product Availability

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

Specified by:
getSymbolRotation3DRandomRanges in interface IRotationRenderer2
Parameters:
pMinRotationX - The pMinRotationX (out: use single element array)
pMinRotationY - The pMinRotationY (out: use single element array)
pMinRotationZ - The pMinRotationZ (out: use single element array)
pMaxRotationX - The pMaxRotationX (out: use single element array)
pMaxRotationY - The pMaxRotationY (out: use single element array)
pMaxRotationZ - The pMaxRotationZ (out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setSymbolRotation3DRandomRanges

public void setSymbolRotation3DRandomRanges(double minRotationX,
                                            double minRotationY,
                                            double minRotationZ,
                                            double maxRotationX,
                                            double maxRotationY,
                                            double maxRotationZ)
                                     throws IOException,
                                            AutomationException
Sets rotation range for each axis (for random rotation).

Product Availability

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

Specified by:
setSymbolRotation3DRandomRanges in interface IRotationRenderer2
Parameters:
minRotationX - The minRotationX (in)
minRotationY - The minRotationY (in)
minRotationZ - The minRotationZ (in)
maxRotationX - The maxRotationX (in)
maxRotationY - The maxRotationY (in)
maxRotationZ - The maxRotationZ (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getSizeRendererFlags

public int getSizeRendererFlags()
                         throws IOException,
                                AutomationException
Gets sizing flags composed of enum esriSizeRendererFlags.

Product Availability

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

Specified by:
getSizeRendererFlags in interface ISizeRenderer
Returns:
The pFlags
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setSizeRendererFlags

public void setSizeRendererFlags(int pFlags)
                          throws IOException,
                                 AutomationException
Gets sizing flags composed of enum esriSizeRendererFlags.

Product Availability

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

Specified by:
setSizeRendererFlags in interface ISizeRenderer
Parameters:
pFlags - The pFlags (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getSizeRendererExpression

public String getSizeRendererExpression()
                                 throws IOException,
                                        AutomationException
Gets size expression.

Product Availability

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

Specified by:
getSizeRendererExpression in interface ISizeRenderer
Returns:
The pExpression
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setSizeRendererExpression

public void setSizeRendererExpression(String pExpression)
                               throws IOException,
                                      AutomationException
Gets size expression.

Product Availability

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

Specified by:
setSizeRendererExpression in interface ISizeRenderer
Parameters:
pExpression - The pExpression (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getSizeRendererRandomRange

public void getSizeRendererRandomRange(double[] pMinSize,
                                       double[] pMaxSize)
                                throws IOException,
                                       AutomationException
Gets size range for random sizing.

Product Availability

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

Specified by:
getSizeRendererRandomRange in interface ISizeRenderer
Parameters:
pMinSize - The pMinSize (out: use single element array)
pMaxSize - The pMaxSize (out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setSizeRendererRandomRange

public void setSizeRendererRandomRange(double minSize,
                                       double maxSize)
                                throws IOException,
                                       AutomationException
Sets size range for random sizing.

Product Availability

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

Specified by:
setSizeRendererRandomRange in interface ISizeRenderer
Parameters:
minSize - The minSize (in)
maxSize - The maxSize (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getTransparencyField

public String getTransparencyField()
                            throws IOException,
                                   AutomationException
Transparency field.

Description

TransparencyField is the name of the field that contains values to be used to set the transparency of the renderer symbol(s).

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getTransparencyField in interface ITransparencyRenderer
Returns:
The fieldName
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setTransparencyField

public void setTransparencyField(String fieldName)
                          throws IOException,
                                 AutomationException
Transparency field.

Description

TransparencyField is the name of the field that contains values to be used to set the transparency of the symbols.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
setTransparencyField in interface ITransparencyRenderer
Parameters:
fieldName - The fieldName (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isUsesFilter

public boolean isUsesFilter()
                     throws IOException,
                            AutomationException
Indicates if the current object draws using a filter.

Remarks

The UsesFilter property returns true when the object in question will draw with a filter. Drawing with a filter means means that an object that would normally draw as vector graphics will instead draw as raster. The UsesFilter property is particularly useful for detecting vector map layers that will be rasterized at time of print or export.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
isUsesFilter in interface IDisplayAdmin
Returns:
The usesFilter
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

lookupSymbol

public ISymbol lookupSymbol(boolean firstPass,
                            IFeature feature)
                     throws IOException,
                            AutomationException
Returns a reference to the renderer's symbol for the input feature.

Remarks

This method hands out a reference to the symbol for a specific feature. The firstPass parameter is passed in as True on the first call of this method. This allows the renderer to internally cache the symbols for succesive calls.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
lookupSymbol in interface ILookupSymbol
Parameters:
firstPass - The firstPass (in)
feature - A reference to a com.esri.arcgis.geodatabase.IFeature (in)
Returns:
A reference to a com.esri.arcgis.display.ISymbol
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

resetLookupSymbol

public void resetLookupSymbol(ISymbol symbol)
                       throws IOException,
                              AutomationException
Resets temporary options on the symbol (e.g. Rotation).

Remarks

This method resets modifications to marker symbol angles that may be set on the symbol reference handed to the label engine. When implementing this interface it is important to reset any marker symbol rotation changes in this method.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
resetLookupSymbol in interface ILookupSymbol
Parameters:
symbol - A reference to a com.esri.arcgis.display.ISymbol (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

serialize

public void serialize(IXMLSerializeData data)
               throws IOException,
                      AutomationException
Serializes an object to XML.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
serialize in interface IXMLSerialize
Parameters:
data - A reference to a com.esri.arcgis.system.IXMLSerializeData (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

deserialize

public void deserialize(IXMLSerializeData data)
                 throws IOException,
                        AutomationException
Deserializes an object from XML.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
deserialize in interface IXMLSerialize
Parameters:
data - A reference to a com.esri.arcgis.system.IXMLSerializeData (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getMinNamespaceSupported

public String getMinNamespaceSupported()
                                throws IOException,
                                       AutomationException
The minimum namespace the class can serialize to (eg the 90 namespace).

Product Availability

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

Specified by:
getMinNamespaceSupported in interface IXMLVersionSupport
Returns:
The namespaceURI
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setExportInfoByRef

public void setExportInfoByRef(IFeatureExportInfoGenerator rhs1)
                        throws IOException,
                               AutomationException
The helper oject to generate export information.

Product Availability

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

Specified by:
setExportInfoByRef in interface IExportSupport
Parameters:
rhs1 - A reference to a com.esri.arcgis.carto.IFeatureExportInfoGenerator (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

writeExternal

public void writeExternal(ObjectOutput out)
                   throws IOException
Specified by:
writeExternal in interface Externalizable
Throws:
IOException

readExternal

public void readExternal(ObjectInput in)
                  throws IOException,
                         ClassNotFoundException
Specified by:
readExternal in interface Externalizable
Throws:
IOException
ClassNotFoundException