com.esri.arcgis.trackinganalyst
Class EnhancedInfoRenderer

java.lang.Object
  extended by com.esri.arcgis.trackinganalyst.EnhancedInfoRenderer
All Implemented Interfaces:
IFeatureRenderer, ILegendInfo, com.esri.arcgis.interop.RemoteObjRef, IDocumentVersionSupportGEN, IPersist, IPersistStream, ISupportErrorInfo, IEnhancedInfoRenderer, IEventRenderer, IEventRenderer2, ITxRendererSetup, Externalizable, Serializable

public class EnhancedInfoRenderer
extends Object
implements com.esri.arcgis.interop.RemoteObjRef, IEnhancedInfoRenderer, IEventRenderer, IEventRenderer2, IFeatureRenderer, ILegendInfo, ITxRendererSetup, IPersist, IPersistStream, ISupportErrorInfo, IDocumentVersionSupportGEN, Externalizable

Symbolizes temporal based features with attribute and spatial information; this renderer is in addition to using the standard event and track renderers.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server. Requires Tracking Analyst Extension.

See Also:
Serialized Form

Constructor Summary
EnhancedInfoRenderer()
          Constructs a EnhancedInfoRenderer using ArcGIS Engine.
EnhancedInfoRenderer(Object obj)
          Deprecated. As of ArcGIS 9.2, replaced by normal Java casts.
EnhancedInfoRenderer theEnhancedInfoRenderer = (EnhancedInfoRenderer) obj;
 
Method Summary
 void addToPreviousList(IFeature piFeature)
          Adds feature information the 'previous point' set to support the directional vector rendering.
 boolean canRender(IFeatureClass featClass, IDisplay display)
          Indicates if the specified feature class can be rendered on the given display.
 Object convertToSupportedObject(int docVersion)
          Convert the object to another object that is supported.
 void draw(IFeatureCursor cursor, int drawPhase, IDisplay display, ITrackCancel trackCancel)
          Draws features from the specified cursor on the given display.
 void drawFeature(IFeature piFeature, IColor piColor, int enumDrawPhase, IDisplay piDisplay, ITrackCancel piTrackCancel)
          Draws a feature on the map.
 boolean equals(Object o)
          Compare this object with another
 void getClassID(GUID[] pClassID)
          getClassID
static String getClsid()
          getClsid.
 IDirectionalVectorRendererProperties getDirectionalVectorProperties()
          Properties associated with the directional vector renderer portion of the Enhanced Info renderer.
 IEventAttributeProperties getEventAttributeProperties()
          Properties associated with the event attribute renderer characteristics of the enhanced information rendering.
 String getEventIDFieldName()
          Provides the field name that holds the Event ID; this should be consistent with that available from the temporal layer or the temporal feature class.
 IStringArray getEventIDsToRender()
          Provides the set of Event IDs that will be rendered in coordination with the StepTool.
 IFeatureClass getFeatureClass()
          The feature class holding data information used by the renderer.
 IFIDSet getFIDsToRender()
          Provides the set of FeatureIDs that will be rendered in coordination with the StepTool.
 ILegendGroup getLegendGroup(int index)
          Legend group at the specified index.
 int getLegendGroupCount()
          Number of legend groups contained by the object.
 ILegendItem getLegendItem()
          Optional.
 void getSizeMax(_ULARGE_INTEGER[] pcbSize)
          getSizeMax
 ISymbol getSymbolByFeature(IFeature feature)
          Symbol used to draw the specified feature.
 String getTemporalFieldName()
          Provides the field name that holds the layer's temporal field; this should be consistent with that available from the temporal layer or the temporal feature class.
 int hashCode()
          the hashcode for this object
 void interfaceSupportsErrorInfo(GUID riid)
          interfaceSupportsErrorInfo
 void isDirty()
          isDirty
 boolean isRenderAllControl()
          Indicates if the render all control should be visible.
 boolean isRenderAllEvents()
          Indicates if all relevant events should be rendered by this Enhanced Info renderer (e.g., all MC events for the advanced MC enhanced info renderer).
 boolean isRenderDirectionalVectors()
          Indicates if the directional vectors, the visual prediction of where events might be after a time interval, should be rendered.
 boolean isRenderEventAttributes()
          Indicates if the specified set of event attributes should be rendered.
 boolean isRenderPhase(int drawPhase)
          Indicates if renderer uses the specified draw phase.
 boolean isSupportedAtVersion(int docVersion)
          Is this object valid at the given document version.
 boolean isSymbolsAreGraduated()
          Indicates if symbols are graduated.
 void load(IStream pstm)
          load
 void prepareFilter(IFeatureClass fc, IQueryFilter queryFilter)
          Prepares the query filter for the rendering process.
 void prepareRenderer(ILayer layer)
          Prepares the renderer with layer information.
 void readExternal(ObjectInput in)
           
 void save(IStream pstm, int fClearDirty)
          save
 void setDirectionalVectorPropertiesByRef(IDirectionalVectorRendererProperties ppiProperties)
          Properties associated with the directional vector renderer portion of the Enhanced Info renderer.
 void setEventAttributePropertiesByRef(IEventAttributeProperties ppiProperties)
          Properties associated with the event attribute renderer characteristics of the enhanced information rendering.
 void setEventIDFieldName(String pbstrEventIDField)
          Provides the field name that holds the Event ID; this should be consistent with that available from the temporal layer or the temporal feature class.
 void setEventIDsToRenderByRef(IStringArray ppiEventIDs)
          Provides the set of Event IDs that will be rendered in coordination with the StepTool.
 void setExclusionSetByRef(IFeatureIDSet rhs1)
          An object reference to a temporary drawing exclusion set.
 void setFeatureClassByRef(IFeatureClass featureClass)
          The feature class holding data information used by the renderer.
 void setFIDsToRenderByRef(IFIDSet ppiFIDs)
          Provides the set of FeatureIDs that will be rendered in coordination with the StepTool.
 void setRenderAllControl(boolean pbvarShow)
          Indicates if the render all control should be visible.
 void setRenderAllEvents(boolean pbvarRenderAll)
          Indicates if all relevant events should be rendered by this Enhanced Info renderer (e.g., all MC events for the advanced MC enhanced info renderer).
 void setRenderDirectionalVectors(boolean pbvarRender)
          Indicates if the directional vectors, the visual prediction of where events might be after a time interval, should be rendered.
 void setRenderEventAttributes(boolean pbvarRender)
          Indicates if the specified set of event attributes should be rendered.
 void setSymbolsAreGraduated(boolean symbolsAreGraduated)
          Indicates if symbols are graduated.
 void setTemporalFieldName(String pbstrTemporalField)
          Provides the field name that holds the layer's temporal field; this should be consistent with that available from the temporal layer or the temporal feature class.
 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

EnhancedInfoRenderer

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

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

EnhancedInfoRenderer

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

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

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

isRenderDirectionalVectors

public boolean isRenderDirectionalVectors()
                                   throws IOException,
                                          AutomationException
Indicates if the directional vectors, the visual prediction of where events might be after a time interval, should be rendered.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server. Requires Tracking Analyst Extension.

Specified by:
isRenderDirectionalVectors in interface IEnhancedInfoRenderer
Returns:
The pbvarRender
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setRenderDirectionalVectors

public void setRenderDirectionalVectors(boolean pbvarRender)
                                 throws IOException,
                                        AutomationException
Indicates if the directional vectors, the visual prediction of where events might be after a time interval, should be rendered.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server. Requires Tracking Analyst Extension.

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

isRenderEventAttributes

public boolean isRenderEventAttributes()
                                throws IOException,
                                       AutomationException
Indicates if the specified set of event attributes should be rendered.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server. Requires Tracking Analyst Extension.

Specified by:
isRenderEventAttributes in interface IEnhancedInfoRenderer
Returns:
The pbvarRender
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setRenderEventAttributes

public void setRenderEventAttributes(boolean pbvarRender)
                              throws IOException,
                                     AutomationException
Indicates if the specified set of event attributes should be rendered.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server. Requires Tracking Analyst Extension.

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

isRenderAllEvents

public boolean isRenderAllEvents()
                          throws IOException,
                                 AutomationException
Indicates if all relevant events should be rendered by this Enhanced Info renderer (e.g., all MC events for the advanced MC enhanced info renderer).

Description

This property indicates if the directional vectors, the visual prediction of where events might be after a time interval, should be rendered.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server. Requires Tracking Analyst Extension.

Specified by:
isRenderAllEvents in interface IEnhancedInfoRenderer
Returns:
The pbvarRenderAll
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setRenderAllEvents

public void setRenderAllEvents(boolean pbvarRenderAll)
                        throws IOException,
                               AutomationException
Indicates if all relevant events should be rendered by this Enhanced Info renderer (e.g., all MC events for the advanced MC enhanced info renderer).

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server. Requires Tracking Analyst Extension.

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

isRenderAllControl

public boolean isRenderAllControl()
                           throws IOException,
                                  AutomationException
Indicates if the render all control should be visible.

Description

This property indicates if the “render all” control on property page should be visible.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server. Requires Tracking Analyst Extension.

Specified by:
isRenderAllControl in interface IEnhancedInfoRenderer
Returns:
The pbvarShow
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setRenderAllControl

public void setRenderAllControl(boolean pbvarShow)
                         throws IOException,
                                AutomationException
Indicates if the render all control should be visible.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server. Requires Tracking Analyst Extension.

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

getDirectionalVectorProperties

public IDirectionalVectorRendererProperties getDirectionalVectorProperties()
                                                                    throws IOException,
                                                                           AutomationException
Properties associated with the directional vector renderer portion of the Enhanced Info renderer.

Description

This property indicates properties associated with the directional vector portion of the Enhanced Info renderer, which indicates where a feature will be in a configured period of time.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server. Requires Tracking Analyst Extension.

Specified by:
getDirectionalVectorProperties in interface IEnhancedInfoRenderer
Returns:
A reference to a com.esri.arcgis.trackinganalyst.IDirectionalVectorRendererProperties
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setDirectionalVectorPropertiesByRef

public void setDirectionalVectorPropertiesByRef(IDirectionalVectorRendererProperties ppiProperties)
                                         throws IOException,
                                                AutomationException
Properties associated with the directional vector renderer portion of the Enhanced Info renderer.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server. Requires Tracking Analyst Extension.

Specified by:
setDirectionalVectorPropertiesByRef in interface IEnhancedInfoRenderer
Parameters:
ppiProperties - A reference to a com.esri.arcgis.trackinganalyst.IDirectionalVectorRendererProperties (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

addToPreviousList

public void addToPreviousList(IFeature piFeature)
                       throws IOException,
                              AutomationException
Adds feature information the 'previous point' set to support the directional vector rendering.

Description

This method adds a feature to the ‘previous point’ set to support the directional vector rendering.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server. Requires Tracking Analyst Extension.

Specified by:
addToPreviousList in interface IEnhancedInfoRenderer
Parameters:
piFeature - A reference to a com.esri.arcgis.geodatabase.IFeature (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getEventAttributeProperties

public IEventAttributeProperties getEventAttributeProperties()
                                                      throws IOException,
                                                             AutomationException
Properties associated with the event attribute renderer characteristics of the enhanced information rendering.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server. Requires Tracking Analyst Extension.

Specified by:
getEventAttributeProperties in interface IEnhancedInfoRenderer
Returns:
A reference to a com.esri.arcgis.trackinganalyst.IEventAttributeProperties
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setEventAttributePropertiesByRef

public void setEventAttributePropertiesByRef(IEventAttributeProperties ppiProperties)
                                      throws IOException,
                                             AutomationException
Properties associated with the event attribute renderer characteristics of the enhanced information rendering.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server. Requires Tracking Analyst Extension.

Specified by:
setEventAttributePropertiesByRef in interface IEnhancedInfoRenderer
Parameters:
ppiProperties - A reference to a com.esri.arcgis.trackinganalyst.IEventAttributeProperties (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

drawFeature

public void drawFeature(IFeature piFeature,
                        IColor piColor,
                        int enumDrawPhase,
                        IDisplay piDisplay,
                        ITrackCancel piTrackCancel)
                 throws IOException,
                        AutomationException
Draws a feature on the map.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server. Requires Tracking Analyst Extension.

Specified by:
drawFeature in interface IEventRenderer
Parameters:
piFeature - A reference to a com.esri.arcgis.geodatabase.IFeature (in)
piColor - A reference to a com.esri.arcgis.display.IColor (in)
enumDrawPhase - A com.esri.arcgis.system.esriDrawPhase constant (in)
piDisplay - A reference to a com.esri.arcgis.display.IDisplay (in)
piTrackCancel - 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.

getFIDsToRender

public IFIDSet getFIDsToRender()
                        throws IOException,
                               AutomationException
Provides the set of FeatureIDs that will be rendered in coordination with the StepTool.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server. Requires Tracking Analyst Extension.

Specified by:
getFIDsToRender in interface IEventRenderer2
Returns:
A reference to a com.esri.arcgis.geodatabase.IFIDSet
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setFIDsToRenderByRef

public void setFIDsToRenderByRef(IFIDSet ppiFIDs)
                          throws IOException,
                                 AutomationException
Provides the set of FeatureIDs that will be rendered in coordination with the StepTool.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server. Requires Tracking Analyst Extension.

Specified by:
setFIDsToRenderByRef in interface IEventRenderer2
Parameters:
ppiFIDs - A reference to a com.esri.arcgis.geodatabase.IFIDSet (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getEventIDsToRender

public IStringArray getEventIDsToRender()
                                 throws IOException,
                                        AutomationException
Provides the set of Event IDs that will be rendered in coordination with the StepTool.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server. Requires Tracking Analyst Extension.

Specified by:
getEventIDsToRender in interface IEventRenderer2
Returns:
A reference to a com.esri.arcgis.system.IStringArray
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setEventIDsToRenderByRef

public void setEventIDsToRenderByRef(IStringArray ppiEventIDs)
                              throws IOException,
                                     AutomationException
Provides the set of Event IDs that will be rendered in coordination with the StepTool.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server. Requires Tracking Analyst Extension.

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

getEventIDFieldName

public String getEventIDFieldName()
                           throws IOException,
                                  AutomationException
Provides the field name that holds the Event ID; this should be consistent with that available from the temporal layer or the temporal feature class.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server. Requires Tracking Analyst Extension.

Specified by:
getEventIDFieldName in interface IEventRenderer2
Returns:
The pbstrEventIDField
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setEventIDFieldName

public void setEventIDFieldName(String pbstrEventIDField)
                         throws IOException,
                                AutomationException
Provides the field name that holds the Event ID; this should be consistent with that available from the temporal layer or the temporal feature class.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server. Requires Tracking Analyst Extension.

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

getTemporalFieldName

public String getTemporalFieldName()
                            throws IOException,
                                   AutomationException
Provides the field name that holds the layer's temporal field; this should be consistent with that available from the temporal layer or the temporal feature class.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server. Requires Tracking Analyst Extension.

Specified by:
getTemporalFieldName in interface IEventRenderer2
Returns:
The pbstrTemporalField
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setTemporalFieldName

public void setTemporalFieldName(String pbstrTemporalField)
                          throws IOException,
                                 AutomationException
Provides the field name that holds the layer's temporal field; this should be consistent with that available from the temporal layer or the temporal feature class.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server. Requires Tracking Analyst Extension.

Specified by:
setTemporalFieldName in interface IEventRenderer2
Parameters:
pbstrTemporalField - The pbstrTemporalField (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.

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.

prepareRenderer

public void prepareRenderer(ILayer layer)
                     throws IOException,
                            AutomationException
Prepares the renderer with layer information.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server. Requires Tracking Analyst Extension.

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

getFeatureClass

public IFeatureClass getFeatureClass()
                              throws IOException,
                                     AutomationException
The feature class holding data information used by the renderer.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server. Requires Tracking Analyst Extension.

Specified by:
getFeatureClass in interface ITxRendererSetup
Returns:
A reference to a com.esri.arcgis.geodatabase.IFeatureClass
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setFeatureClassByRef

public void setFeatureClassByRef(IFeatureClass featureClass)
                          throws IOException,
                                 AutomationException
The feature class holding data information used by the renderer.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server. Requires Tracking Analyst Extension.

Specified by:
setFeatureClassByRef in interface ITxRendererSetup
Parameters:
featureClass - A reference to a com.esri.arcgis.geodatabase.IFeatureClass (in)
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.

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.

interfaceSupportsErrorInfo

public void interfaceSupportsErrorInfo(GUID riid)
                                throws IOException,
                                       AutomationException
interfaceSupportsErrorInfo

Description

Indicates whether the interface supports IErrorInfo.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
interfaceSupportsErrorInfo in interface ISupportErrorInfo
Parameters:
riid - A Structure: com.esri.arcgis.support.ms.stdole.GUID (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isSupportedAtVersion

public boolean isSupportedAtVersion(int docVersion)
                             throws IOException,
                                    AutomationException
Is this object valid at the given document version.

Remarks

Use IsSupportedAtVersion to identify if a particular object should be saved to the ObjectStream. This result is based on the esriArcGISVersion enumeration. In some instances, if the object is not supported at a particular ArcGIS version, the object may support conversion to another similar object; use IDocumentVersionSupportGEN::ConvertToSupportedObject to accomplish this.

Product Availability

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

Specified by:
isSupportedAtVersion in interface IDocumentVersionSupportGEN
Parameters:
docVersion - A com.esri.arcgis.system.esriArcGISVersion constant (in)
Returns:
The supported
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

convertToSupportedObject

public Object convertToSupportedObject(int docVersion)
                                throws IOException,
                                       AutomationException
Convert the object to another object that is supported.

Remarks

This method should be used when IDocumentVersionSupportGEN::IsSupportedAtVersion returns FALSE. Calling ConvertToSupportedObject will return an IUnknown pointer to a relevant object supported at the particular ArcGIS version. Not all objects will return a supported object; in these cases a null pointer will be returned.

Product Availability

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

Specified by:
convertToSupportedObject in interface IDocumentVersionSupportGEN
Parameters:
docVersion - A com.esri.arcgis.system.esriArcGISVersion constant (in)
Returns:
A Variant
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