com.esri.arcgis.analyst3d
Class Scene

java.lang.Object
  extended by com.esri.arcgis.analyst3d.Scene
All Implemented Interfaces:
IAnimationTracks, IBasicScene, IBasicScene2, IScene, ISceneBookmarks, IAGAnimationTracks, IActiveView, IBasicMap, IMapLayers, IRelationshipClassCollection, ISelectionEvents, IStandaloneTableCollection, ITableCollection, IConnectionPointContainer, com.esri.arcgis.interop.RemoteObjRef, IPersist, IPersistStream, ISupportErrorInfo, Externalizable, Serializable, EventListener

public class Scene
extends Object
implements com.esri.arcgis.interop.RemoteObjRef, IScene, IBasicScene2, IActiveView, IBasicMap, IMapLayers, ISelectionEvents, ITableCollection, IStandaloneTableCollection, IRelationshipClassCollection, ISceneBookmarks, IAnimationTracks, IAGAnimationTracks, ISupportErrorInfo, IConnectionPointContainer, IPersistStream, Externalizable

A container for the display and manipulation of data.

Remarks

Scene is to ArcScene what Map is to ArcMap. There's only one scene object in each ArcScene session. It's the collection of various layers. Similar to that in ArcScene, there's also a scene object in a scene viewer control or a later version, scene control.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

See Also:
Serialized Form

Constructor Summary
Scene()
          Constructs a Scene using ArcGIS Engine.
Scene(Object obj)
          Deprecated. As of ArcGIS 9.2, replaced by normal Java casts.
Scene theScene = (Scene) obj;
 
Method Summary
 void activate(int hWnd)
          Gives this view control of the specified window.
 void addBookmark(IBookmark3D pBookmark)
          Adds a bookmark to the collection.
 void addIActiveViewEventsListener(IActiveViewEvents theListener)
          addIActiveViewEventsListener.
 void addLayer(ILayer pLayer)
          Adds a layer to the map.
 void addLayer(ILayer pLayer, boolean autoArrange)
          Adds a layer to the scene.
 void addLayers(IEnumLayer layers, boolean autoArrange)
          Adds multiple layers to the scene, optionally arranging them automatically.
 void addStandaloneTable(IStandaloneTable table)
          Adds a standalone table to the collection.
 void addTable(ITable table)
          Adds a table to the collection.
 void addTrack(IAGAnimationTrack pTrack)
          Adds a track to the collection.
 void addTrack(IAnimationTrack pTrack)
          Adds a track to the collection.
 boolean applies(Object object)
          Indicates if the given object is supported by the scene.
 void applyTracks(boolean bApplyToAllViewers, double time)
          Uses the enabled animation tracks for the given time.
 void applyTracks(ISceneViewer pViewer, double time, double duration)
          Plays the enabled animation tracks in the given viewer (in all if null).
 void changePriority(IAGAnimationTrack pTrack, boolean bAbsolute, boolean bInSameType, int changeInIndex)
          Changes the priority (index) of the track.
 void changePriority(IAnimationTrack pTrack, boolean bAbsolute, boolean bInSameType, int changeInIndex)
          Changes the priority (index) of the track.
 void clear()
          Empties the view contents.
 void clearLayers()
          Removes all layers from the scene.
 void clearSelection()
          Clears the scene's selection.
 void contentsChanged()
          Called by clients when view objects are modified.
 IAGAnimationTrack createTrack(IAGAnimationType pType)
          Creates a new track and adds it to the collection.
 void deactivate()
          Another view takes over the associated window.
 void delayEvents(boolean delay)
          Used to batch operations together in order to minimize system notifications.
 void deleteLayer(ILayer layer)
          Deletes a layer from the scene.
 void detachObject(Object pObject)
          Detach an object from all tracks it is attached to.
 void draw(int hDC, ITrackCancel trackCancel)
          Draws the view to the specified device context.
 void enumConnectionPoints(IEnumConnectionPoints[] ppEnum)
          enumConnectionPoints
 boolean equals(Object o)
          Compare this object with another
 void findBookmark(String name, IBookmark3D[] ppBookmark)
          Finds a bookmark by name.
 void findConnectionPoint(GUID riid, IConnectionPoint[] ppCP)
          findConnectionPoint
 IEnumRelationshipClass findRelationshipClasses(IObjectClass objectClass, int role)
          Finds all relationship classes in the collection that reference the given object class in the specified role.
 void findTrack(String name, IAGAnimationTrack[] ppTrack)
          Finds a track by name.
 void findTrack(String name, IAnimationTrack[] ppTrack)
          Finds a track by name.
 ILayer getActiveGraphicsLayer()
          The active graphics layer.
 IArray getAGTracks()
          The animation tracks.
 IAnimationExtension getAnimationExtension()
          The animation extension containing tracks and environment settings.
 IAGAnimationContainer getAnimationObjectContainer()
          The container of the animation objects attached to the tracks.
 IArray getAnimationTypes()
          The objects that describe the registered types of animation.
 IEnvelope getAreaOfInterest()
          The area of interest for the scene.
 IViewers3D getBasicDisplay()
          The basic 3D display used by the scene.
 IGraphicsLayer getBasicGraphicsLayer()
          The basic graphics layer.
 int getBookmarkCount()
          The number of bookmarks.
 IArray getBookmarks()
          The bookmarks.
 void getClassID(GUID[] pClassID)
          getClassID
static String getClsid()
          getClsid.
 void getContextMenu(double x, double y, IUID[] clsidMenu)
          Called when a context menu should be displayed at the given xy location.
 void getDefaultBackgroundColor(float[] red, float[] green, float[] blue)
          Returns the default background color.
 String getDescription()
          The description of the scene.
 double getExaggerationFactor()
          The vertical exaggeration of the scene.
 tagRECT getExportFrame()
          The device rectangle to export.
 IEnvelope getExtent()
          The extent of the scene.
 IExtentStack getExtentStack()
          The extent stack.
 ISelection getFeatureSelection()
          The scene's feature selection.
 IMap getFocusMap()
          The map that tools and controls act on.
 IEnvelope getFullExtent()
          The full extent rectangle.
 IGraphicsContainer getGraphicsContainer()
          The active graphics container.
 ILayer getLayer(int index)
          The layer corresponding to a given index.
 int getLayerCount()
          The number of layers in the scene.
 IEnumLayer getLayers(IUID uid, boolean recursive)
          The layers in the scene of the type specified in the UID.
 String getName()
          The name of the scene.
 IEnumRelationshipClass getRelationshipClasses()
          The memory relationship classes.
 ISceneGraph getSceneGraph()
          The scene's scenegraph.
 short getScreenCacheID(int phase, Object data)
          The screen cache ID that is used to draw the specified phase.
 IScreenDisplay getScreenDisplay()
          The screen display used by the view.
 ISelection getSelection()
          The selection.
 int getSelectionCount()
          The number of selected features.
 void getSizeMax(_ULARGE_INTEGER[] pcbSize)
          getSizeMax
 ISpatialReference getSpatialReference()
          The spatial reference of the scene.
 IStandaloneTable getStandaloneTable(int index)
          The standalone table at the given index.
 int getStandaloneTableCount()
          Number of standalone tables.
 ITable getTable(int index)
          The table at the given index.
 int getTableCount()
          Number of tables.
 String getTipText(double x, double y)
          The tip text to display at the given location.
 int getTrackCount()
          The number of tracks.
 IArray getTracks()
          The animation tracks.
 IArray getTracksOfType(IAGAnimationType pType)
          The animation tracks of a given type.
 IArray getTracksOfType(IAnimationType pType)
          The animation tracks of a given type.
 int hashCode()
          the hashcode for this object
 IMap hitTestMap(IPoint location)
          Returns any maps present in the view at the given location.
 void insertLayer(ILayer pLayer, boolean autoArrange, int position)
          Inserts a layer at the given position.
 void insertLayerInGroup(IGroupLayer pGroup, ILayer pLayer, boolean autoArrange, int position)
          Inserts a layer at a given index of the map's group layer.
 void insertLayers(IEnumLayer pLayers, boolean autoArrange, int position)
          Inserts layers at the given position.
 void insertLayersInGroup(IGroupLayer pGroup, IEnumLayer pLayer, boolean autoArrange, int position)
          Inserts layers at a given index of the map's group layer.
 void interfaceSupportsErrorInfo(GUID riid)
          interfaceSupportsErrorInfo
 boolean isActive()
          Indicates if view is active or not.
 void isDirty()
          isDirty
 boolean isLayerVisible(ILayer layer)
          Check if layer is visible.
 boolean isMapActivated()
          Indicates if the focus map is activated.
 boolean isShowRulers()
          Indicates if rulers are visible.
 boolean isShowScrollBars()
          Indicates if scrollbars are visible.
 boolean isShowSelection()
          Indicates if selection is visible.
 void load(IStream pstm)
          load
 void loadAnimation(String pFilename)
          Load the animation from a file.
 void loadBookmarks(IStream pStm)
          Load the bookmarks from a stream.
 void loadTracks(IStream pStm)
          Load the animation tracks from a stream.
 void moveLayer(ILayer layer, int toIndex)
          Moves a layer to another position within the Table Of Contents.
 void moveLayerEx(IGroupLayer pFromGroup, IGroupLayer pToGroup, ILayer pLayer, int newPosition)
          Moves the layer with in the map.
 void onMessage(int msg, int wParam, int lParam)
          Call from your application's message loop to enable automatic resizing and keyboard accelerators.
 void output(int hDC, int dpi, tagRECT pixelBounds, IEnvelope visibleBounds, ITrackCancel trackCancel)
          Renders the view to the specified DC.
 void partialRefresh(int phase, Object data, IEnvelope envelope)
          Draws the specified view phase.
 void printerChanged(IPrinter printer)
          Called by application when printer changes.
 void proposeSpatialReference(ISpatialReference pProposedSR, boolean[] pbChanged)
          Proposes a spatial reference for the scene.
 void readExternal(ObjectInput in)
           
 void recalculateExtent()
          Forces the scene's extent to be recalculated.
 void refresh()
          Causes the entire view to draw.
 void refreshAttachedObjects()
          Detaches from the tracks those objects that no longer exist.
 void removeAllBookmarks()
          Removes all bookmarks.
 void removeAllStandaloneTables()
          Removes all standalone tables from the collection.
 void removeAllTables()
          Removes all tables from the collection.
 void removeAllTracks()
          Removes all tracks.
 void removeBookmark(IBookmark3D bookmark)
          Removes a bookmark from the collection.
 void removeIActiveViewEventsListener(IActiveViewEvents theListener)
          removeIActiveViewEventsListener.
 void removeStandaloneTable(IStandaloneTable table)
          Removes the standalone table from the collection.
 void removeTable(ITable table)
          Removes a table from the collection.
 void removeTrack(IAGAnimationTrack pTrack)
          Removes a track from the collection.
 void removeTrack(IAnimationTrack pTrack)
          Removes a track from the collection.
 void save(IStream pstm, int fClearDirty)
          save
 void saveAnimation(String pFilename)
          Save the animation to a file.
 void saveBookmarks(IStream pStm)
          Save the bookmarks to a stream.
 void saveTracks(IStream pStm)
          Save the animation tracks to a stream.
 void selectByShape(IGeometry shape, ISelectionEnvironment env, boolean justOne)
          Selects features in the scene given a shape and an optional selection environment.
 void selectFeature(ILayer layer, IFeature pFeature)
          Selects a feature.
 void selectionChanged(ISelectionEventsSelectionChangedEvent theEvent)
          Call this function to fire the selection changed event.
 void setActiveGraphicsLayerByRef(ILayer ppLayer)
          The active graphics layer.
 void setAnimationObjectContainerByRef(IAGAnimationContainer ppContainer)
          The container of the animation objects attached to the tracks.
 void setAreaOfInterest(IEnvelope aoi)
          The area of interest for the scene.
 void setDefaultBackgroundColor(float red, float green, float blue)
          Sets the default background color.
 void setDescription(String descr)
          The description of the scene.
 void setExaggerationFactor(double exaggerationFactor)
          The vertical exaggeration of the scene.
 void setExtent(IEnvelope extent)
          The visible extent rectangle.
 void setFeatureSelectionByRef(ISelection selection)
          The scene's feature selection.
 void setFocusMapByRef(IMap activeMap)
          The map that tools and controls act on.
 void setFullExtent(IEnvelope extent)
          The full extent rectangle.
 void setIsMapActivated(boolean isMapActivated)
          Indicates if the focus map is activated.
 void setName(String name)
          The name of the scene.
 void setSelectionByRef(ISelection selection)
          The selection.
 void setShowRulers(boolean showRulers)
          Indicates if rulers are visible.
 void setShowScrollBars(boolean showScrollBars)
          Indicates if scrollbars are visible.
 void setShowSelection(boolean showRulers)
          Indicates if selection is visible.
 void setSpatialReferenceByRef(ISpatialReference spatialRef)
          The spatial reference of the scene.
 void suggestExaggerationFactor(double aspectRatio, double[] exaggerationFactor)
          Returns the vertical exaggeration factor that achieves the aspect ratio for the scene's extent.
 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

Scene

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

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

Scene

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

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

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

addIActiveViewEventsListener

public void addIActiveViewEventsListener(IActiveViewEvents theListener)
                                  throws IOException
addIActiveViewEventsListener. Listen to events generated by this class.

Parameters:
theListener - An object that implements the com.esri.arcgis.carto.IActiveViewEvents interface.
Throws:
IOException - If there are communications problems.

removeIActiveViewEventsListener

public void removeIActiveViewEventsListener(IActiveViewEvents theListener)
                                     throws IOException
removeIActiveViewEventsListener. Stop listening to events generated by this class.

Parameters:
theListener - An object that implements the com.esri.arcgis.carto.IActiveViewEvents interface.
Throws:
IOException - If there are communications problems.

getExtent

public IEnvelope getExtent()
                    throws IOException,
                           AutomationException
The extent of the scene.

Remarks

The returned envelope represents the extent of the scene in X, Y, and Z.

The ZMin and ZMax of the envelope take into consideration the 3D properties of the scene's layers (base heights, extrusion, etc.).

The ZMin and ZMax of the envelope do not take into consideration the scene's vertical exaggeration.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getExtent in interface IScene
Specified by:
getExtent in interface IActiveView
Returns:
A reference to a com.esri.arcgis.geometry.IEnvelope
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
IDisplayTransformation.getVisibleBounds(), ITin.getExtent(), IActiveView.getExtent(), IFeatureClassManage.updateExtent(), IFeatureClassManage, IDisplayTransformation.getFittedBounds()

suggestExaggerationFactor

public void suggestExaggerationFactor(double aspectRatio,
                                      double[] exaggerationFactor)
                               throws IOException,
                                      AutomationException
Returns the vertical exaggeration factor that achieves the aspect ratio for the scene's extent.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
suggestExaggerationFactor in interface IScene
Parameters:
aspectRatio - The aspectRatio (in)
exaggerationFactor - The exaggerationFactor (out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getExaggerationFactor

public double getExaggerationFactor()
                             throws IOException,
                                    AutomationException
The vertical exaggeration of the scene.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getExaggerationFactor in interface IScene
Returns:
The exaggerationFactor
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setExaggerationFactor

public void setExaggerationFactor(double exaggerationFactor)
                           throws IOException,
                                  AutomationException
The vertical exaggeration of the scene.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

applies

public boolean applies(Object object)
                throws IOException,
                       AutomationException
Indicates if the given object is supported by the scene.

Remarks

The Applies member is used to determine whether the passed Layer, DatasetName, or GxLayer is supported.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
applies in interface IScene
Parameters:
object - 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.

getName

public String getName()
               throws IOException,
                      AutomationException
The name of the scene.

Remarks

The Name is in reference to the string displayed at the top of the Scene's table of contents (TOC). When setting a new name call ISxDocument.UpdateContents to refresh the TOC display so the new name becomes visible.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getName in interface IScene
Specified by:
getName in interface IBasicMap
Returns:
The name
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setName

public void setName(String name)
             throws IOException,
                    AutomationException
The name of the scene.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
setName in interface IScene
Specified by:
setName in interface IBasicMap
Parameters:
name - The name (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getDescription

public String getDescription()
                      throws IOException,
                             AutomationException
The description of the scene.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

setDescription

public void setDescription(String descr)
                    throws IOException,
                           AutomationException
The description of the scene.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

getAreaOfInterest

public IEnvelope getAreaOfInterest()
                            throws IOException,
                                   AutomationException
The area of interest for the scene.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getAreaOfInterest in interface IScene
Returns:
A reference to a com.esri.arcgis.geometry.IEnvelope
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setAreaOfInterest

public void setAreaOfInterest(IEnvelope aoi)
                       throws IOException,
                              AutomationException
The area of interest for the scene.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
setAreaOfInterest in interface IScene
Specified by:
setAreaOfInterest in interface IBasicMap
Parameters:
aoi - A reference to a com.esri.arcgis.geometry.IEnvelope (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getLayerCount

public int getLayerCount()
                  throws IOException,
                         AutomationException
The number of layers in the scene.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getLayerCount in interface IScene
Specified by:
getLayerCount in interface IBasicMap
Specified by:
getLayerCount in interface IMapLayers
Returns:
The pcLayers
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getLayer

public ILayer getLayer(int index)
                throws IOException,
                       AutomationException
The layer corresponding to a given index.

Product Availability

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

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

getLayers

public IEnumLayer getLayers(IUID uid,
                            boolean recursive)
                     throws IOException,
                            AutomationException
The layers in the scene of the type specified in the UID. If 'recursive' is true, includes layers in group layers.

Product Availability

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

Specified by:
getLayers in interface IScene
Specified by:
getLayers in interface IBasicMap
Specified by:
getLayers in interface IMapLayers
Parameters:
uid - A reference to a com.esri.arcgis.system.IUID (in, optional, pass null if not required)
recursive - The recursive (in, optional, pass false if not required)
Returns:
A reference to a com.esri.arcgis.carto.IEnumLayer
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

addLayer

public void addLayer(ILayer pLayer,
                     boolean autoArrange)
              throws IOException,
                     AutomationException
Adds a layer to the scene.

Remarks

The autoArrange parameter controls the ordering of the layers. If autoArrange is set to TRUE, the layer is added in the proper position as by its weight specified via ILayerPosition::LayerWeight. By default, this means that the layers are sorted by layer type - Annotation layers on top, followed by Point geometry layers, Polyline geometry layers, and at the bottom Polygon geometry layers.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
addLayer in interface IScene
Parameters:
pLayer - A reference to a com.esri.arcgis.carto.ILayer (in)
autoArrange - The autoArrange (in, optional, pass false if not required)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

addLayers

public void addLayers(IEnumLayer layers,
                      boolean autoArrange)
               throws IOException,
                      AutomationException
Adds multiple layers to the scene, optionally arranging them automatically.

Remarks

The autoArrange parameter controls the ordering of the layers. If autoArrange is set to TRUE, the layers are added in the proper position as by their weight specified via ILayerPosition::LayerWeight . By default, this means that the layers are sorted by layer type - Annotation layers on top, followed by Point geometry layers, Polyline geometry layers, and at the bottom Polygon geometry layers.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
addLayers in interface IScene
Specified by:
addLayers in interface IBasicMap
Specified by:
addLayers in interface IMapLayers
Parameters:
layers - A reference to a com.esri.arcgis.carto.IEnumLayer (in)
autoArrange - The autoArrange (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

deleteLayer

public void deleteLayer(ILayer layer)
                 throws IOException,
                        AutomationException
Deletes a layer from the scene.

Remarks


Example:

public void deleteLayer(ILayer layer) {
IScene pScene;      
ILayer pLayer;     
// get IScene ...    
if (pScene.LayerCount > 0) {
   pLayer = pScene.getLayer(0);        
   pScene.deleteLayer(pLayer);    
  }  
}

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

<PRE>

public void deleteLayer(ILayer layer) {

IScene pScene;

ILayer pLayer;

// get IScene ......

if (pScene.LayerCount > 0) {

pLayer = pScene.getLayer(0);

pScene.deleteLayer(pLayer);

}

}

</PRE>

Specified by:
deleteLayer in interface IScene
Specified by:
deleteLayer in interface IBasicMap
Specified by:
deleteLayer in interface IMapLayers
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.

moveLayer

public void moveLayer(ILayer layer,
                      int toIndex)
               throws IOException,
                      AutomationException
Moves a layer to another position within the Table Of Contents.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

clearLayers

public void clearLayers()
                 throws IOException,
                        AutomationException
Removes all layers from the scene.

Example:

public void clearLayers(ILayer layer) throws IOException, AutomationException
{
IScene pScene;
ILayer pLayer;

//get IScene ......

pScene.clearLayers();
}

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

The following example shows how to remove all layers from the scene:

<PRE>

public void clearLayers(ILayer layer) throws IOException, AutomationException

{

IScene pScene;

ILayer pLayer;

//get IScene ......

pScene.clearLayers();

}

</PRE>

Specified by:
clearLayers in interface IScene
Specified by:
clearLayers in interface IBasicMap
Specified by:
clearLayers in interface IMapLayers
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getSpatialReference

public ISpatialReference getSpatialReference()
                                      throws IOException,
                                             AutomationException
The spatial reference of the scene.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getSpatialReference in interface IScene
Specified by:
getSpatialReference in interface IBasicMap
Returns:
A reference to a com.esri.arcgis.geometry.ISpatialReference
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setSpatialReferenceByRef

public void setSpatialReferenceByRef(ISpatialReference spatialRef)
                              throws IOException,
                                     AutomationException
The spatial reference of the scene.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
setSpatialReferenceByRef in interface IScene
Specified by:
setSpatialReferenceByRef in interface IBasicMap
Parameters:
spatialRef - A reference to a com.esri.arcgis.geometry.ISpatialReference (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

proposeSpatialReference

public void proposeSpatialReference(ISpatialReference pProposedSR,
                                    boolean[] pbChanged)
                             throws IOException,
                                    AutomationException
Proposes a spatial reference for the scene.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
proposeSpatialReference in interface IScene
Parameters:
pProposedSR - A reference to a com.esri.arcgis.geometry.ISpatialReference (in)
pbChanged - The pbChanged (out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getBasicGraphicsLayer

public IGraphicsLayer getBasicGraphicsLayer()
                                     throws IOException,
                                            AutomationException
The basic graphics layer.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

getActiveGraphicsLayer

public ILayer getActiveGraphicsLayer()
                              throws IOException,
                                     AutomationException
The active graphics layer. If no graphic layers exist, a basic memory graphics layer will be created.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

setActiveGraphicsLayerByRef

public void setActiveGraphicsLayerByRef(ILayer ppLayer)
                                 throws IOException,
                                        AutomationException
The active graphics layer. If no graphic layers exist, a basic memory graphics layer will be created.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
setActiveGraphicsLayerByRef in interface IScene
Specified by:
setActiveGraphicsLayerByRef in interface IBasicMap
Parameters:
ppLayer - 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.

delayEvents

public void delayEvents(boolean delay)
                 throws IOException,
                        AutomationException
Used to batch operations together in order to minimize system notifications.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

getSelectionCount

public int getSelectionCount()
                      throws IOException,
                             AutomationException
The number of selected features.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

selectFeature

public void selectFeature(ILayer layer,
                          IFeature pFeature)
                   throws IOException,
                          AutomationException
Selects a feature.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
selectFeature in interface IScene
Parameters:
layer - A reference to a com.esri.arcgis.carto.ILayer (in)
pFeature - 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.

clearSelection

public void clearSelection()
                    throws IOException,
                           AutomationException
Clears the scene's selection.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

getFeatureSelection

public ISelection getFeatureSelection()
                               throws IOException,
                                      AutomationException
The scene's feature selection.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

setFeatureSelectionByRef

public void setFeatureSelectionByRef(ISelection selection)
                              throws IOException,
                                     AutomationException
The scene's feature selection.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
setFeatureSelectionByRef in interface IScene
Specified by:
setFeatureSelectionByRef in interface IBasicMap
Parameters:
selection - A reference to a com.esri.arcgis.carto.ISelection (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

selectByShape

public void selectByShape(IGeometry shape,
                          ISelectionEnvironment env,
                          boolean justOne)
                   throws IOException,
                          AutomationException
Selects features in the scene given a shape and an optional selection environment.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
selectByShape in interface IScene
Specified by:
selectByShape in interface IBasicMap
Parameters:
shape - A reference to a com.esri.arcgis.geometry.IGeometry (in)
env - A reference to a com.esri.arcgis.carto.ISelectionEnvironment (in)
justOne - The justOne (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

recalculateExtent

public void recalculateExtent()
                       throws IOException,
                              AutomationException
Forces the scene's extent to be recalculated.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

getSceneGraph

public ISceneGraph getSceneGraph()
                          throws IOException,
                                 AutomationException
The scene's scenegraph.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getSceneGraph in interface IScene
Returns:
A reference to a com.esri.arcgis.analyst3d.ISceneGraph
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setDefaultBackgroundColor

public void setDefaultBackgroundColor(float red,
                                      float green,
                                      float blue)
                               throws IOException,
                                      AutomationException
Sets the default background color.

Remarks

The values for the red, green, and blue components should fall between 0 and 1 inclusive. A value of 1 represents 100% saturation of that component.

The DefaultBackgroundColor is that used by new scenes. Only when a new scene is created will the color set here be used.

If you want to set the background color of the existing scene use ISceneGraph.SetBackgroundColor.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
setDefaultBackgroundColor in interface IScene
Parameters:
red - The red (in)
green - The green (in)
blue - The blue (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getDefaultBackgroundColor

public void getDefaultBackgroundColor(float[] red,
                                      float[] green,
                                      float[] blue)
                               throws IOException,
                                      AutomationException
Returns the default background color.

Remarks

The values for the red, green, and blue components will fall between 0 and 1 inclusive. A value of 1 represents 100% saturation of that component.

The DefaultBackgroundColor is that used by new scenes. It does not necessarilly indicate the background color of the current scene.

If you want to know the background color of the current scene use ISceneGraph.GetBackgroundColor.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getDefaultBackgroundColor in interface IScene
Parameters:
red - The red (out: use single element array)
green - The green (out: use single element array)
blue - The blue (out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getAnimationExtension

public IAnimationExtension getAnimationExtension()
                                          throws IOException,
                                                 AutomationException
The animation extension containing tracks and environment settings.

Product Availability

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

Specified by:
getAnimationExtension in interface IBasicScene2
Returns:
A reference to a com.esri.arcgis.animation.IAnimationExtension
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getBasicDisplay

public IViewers3D getBasicDisplay()
                           throws IOException,
                                  AutomationException
The basic 3D display used by the scene.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getBasicDisplay in interface IBasicScene
Returns:
A reference to a com.esri.arcgis.analyst3d.IViewers3D
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

saveAnimation

public void saveAnimation(String pFilename)
                   throws IOException,
                          AutomationException
Save the animation to a file.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

loadAnimation

public void loadAnimation(String pFilename)
                   throws IOException,
                          AutomationException
Load the animation from a file.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

getFullExtent

public IEnvelope getFullExtent()
                        throws IOException,
                               AutomationException
The full extent rectangle.

Remarks

The full extent of the view. In ArcMap's data view, the full extent is the full extent of all layers and it is automatically calculated whenever the spatial reference changes and when layers are added or removed with AddLayer, AddLayers, or DeleteLayer. In layout view, the full extent is the page size expanded some and it is automatically set whenever the page size changes.

This property is a shortcut to the bounds of the ActiveView's ScreenDisplay (accessed via IDisplayTransformation::Bounds) .

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getFullExtent in interface IActiveView
Returns:
A reference to a com.esri.arcgis.geometry.IEnvelope
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
IDisplayTransformation.getBounds(), IDisplayTransformation, IActiveView.getFullExtent()

setFullExtent

public void setFullExtent(IEnvelope extent)
                   throws IOException,
                          AutomationException
The full extent rectangle.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
setFullExtent in interface IActiveView
Parameters:
extent - A reference to a com.esri.arcgis.geometry.IEnvelope (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setExtent

public void setExtent(IEnvelope extent)
               throws IOException,
                      AutomationException
The visible extent rectangle.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
setExtent in interface IActiveView
Parameters:
extent - A reference to a com.esri.arcgis.geometry.IEnvelope (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getScreenDisplay

public IScreenDisplay getScreenDisplay()
                                throws IOException,
                                       AutomationException
The screen display used by the view.

Remarks

Each view has a ScreenDisplay object which controls drawing in the application's window. Use this property to get a reference to the ScreenDisplay object associated with the view you are currently working with. For example, to draw a polygon in data view, you must get an IActiveView reference on the focus Map object and then get a reference to its ScreenDisplay object via this property. If you are in data view and you mistakenly get an IActiveView reference on the PageLayout object, you will not see the polygon as you are drawing in the wrong view.

Each ScreenDisplay object has a DisplayTransformation object which is accessible via IDisplay::DisplayTransformation (ScreenDisplay inherits from Display ). Each DisplayTransformation related to a Map, holds onto the map's spatial reference (IDisplayTransformation::SpatialReference ) and has useful methods for converting between device units and map units. The PageLayout's DisplayTransformation does not have a spatial reference, the property returns nothing, and in this case its members map between device units and page units.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

getGraphicsContainer

public IGraphicsContainer getGraphicsContainer()
                                        throws IOException,
                                               AutomationException
The active graphics container.

Remarks

Both the Map and PageLayout objects are graphics containers - both implement the IGraphicsContainer interface.

The Map has a Basics Graphics Layer and this property returns a reference to that object (see CompositeGraphicsLayer and IMap::BasicGraphicsLayer). When working with a Map object, you can also perform a query interface from any of the interfaces the Map implements, IMap for example, to IGraphicsContainer. The QI also takes you to the CompositeGraphicsLayer object. These are both possible because the Map aggregates the Basic Graphics Layer.

The PageLayout object works differently. The PageLayout does not have a Basics Graphics Layer; instead, the PageLayout object is its own graphics container having its own implementation of IGraphicsContainer. A QI from IPageLayout to IGraphicsContainer connects you with the graphics container associated strictly with the PageLayout. However, this property, IActiveView::GraphicsContainer, on the PageLayout object has two possible outcomes. If a Map is activated (IActiveView::IsMapActivated), the property will return a reference to the focus Map's active graphics layer (IMap::ActiveGraphicsLayer ). If no Map is activated, the property will return a reference to the PageLayout's graphics container - the same as the QI case.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

getFocusMap

public IMap getFocusMap()
                 throws IOException,
                        AutomationException
The map that tools and controls act on.

Remarks

A user's map may comprise one or more Map objects. Each Map object typically holds layers of data as well as several MapSurround objects such as a Legend. This property returns an IMap reference to the Map object that currently has focus. In ArcMap, the focus map is the one visible in data view and the one selected in layout view.

Changing the focus map fires the IActiveViewEvents::FocusMapChanged event. In ArcMap, the focus map is automatically set to any new Map added.

IMxDocument::FocusMap is a read-only short cut to this property.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getFocusMap in interface IActiveView
Returns:
A reference to a com.esri.arcgis.carto.IMap
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
com.esri.arcgis.carto.IMxDocument

setFocusMapByRef

public void setFocusMapByRef(IMap activeMap)
                      throws IOException,
                             AutomationException
The map that tools and controls act on.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

isMapActivated

public boolean isMapActivated()
                       throws IOException,
                              AutomationException
Indicates if the focus map is activated.

Remarks

In ArcMap's layout view, when the focus map is activated by double-clicking on it, new graphic elements are added to the Map's active graphics layer. When the focus map is not activated, the default, graphic elements are added to the PageLayout object. Both the Map and PageLayout objects are graphics containers, setting this property to TRUE diverts graphics from the PageLayout to the focus Map.

A Map can be activated in both layout and data views.

When this property is set to TRUE, IActiveView::PartialRefresh is called for the esriViewGraphicSelection draw phase.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
isMapActivated in interface IActiveView
Returns:
The isMapActivated
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
com.esri.arcgis.carto.IMxDocument

setIsMapActivated

public void setIsMapActivated(boolean isMapActivated)
                       throws IOException,
                              AutomationException
Indicates if the focus map is activated.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

getSelection

public ISelection getSelection()
                        throws IOException,
                               AutomationException
The selection.

Remarks

ArcMap has two different selection types, a feature selection and an element selection. Two different objects represent these selections and both implement the ISelection interface. The feature selection object additionally implements IEnumFeature and the element selection object IEnumElement. The ISelection interface is used for clipboard type operations and the IEnum interfaces are used to loop through the items in the collection.

Each active view object, the PageLayout and all Maps, have their own selection objects. Actually, the PageLayout only has an element selection but each Map has a unique feature and element selection. When working with selections make sure you have the correct active view object.

For a Map, only one of the selections can be active at a time. As mentioned above, this interface provides an ISelection reference to either an element or feature selection depending on which one is currently active. To simplify the matter, IMap has a FeatureSelection property which always returns an ISelection on the feature selection, from which you can obtain an IEnumFeature reference. Just make sure you have the correct Map, usually the FocusMap. To get a Map's element selection, use IViewManager::ElementSelection.

Note: The features returned as part of IEnumFeature are in the spatial reference of the map, so they have the coordinate system and the resolution (1/precision) of the map.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getSelection in interface IActiveView
Returns:
A reference to a com.esri.arcgis.carto.ISelection
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
IActiveView.getSelection(), IGraphicsContainerSelect, IMap.getFeatureSelection(), IEnumElement

setSelectionByRef

public void setSelectionByRef(ISelection selection)
                       throws IOException,
                              AutomationException
The selection.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

getTipText

public String getTipText(double x,
                         double y)
                  throws IOException,
                         AutomationException
The tip text to display at the given location.

Product Availability

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

Specified by:
getTipText in interface IActiveView
Parameters:
x - The x (in)
y - The y (in)
Returns:
The tipText
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getExportFrame

public tagRECT getExportFrame()
                       throws IOException,
                              AutomationException
The device rectangle to export.

Remarks

Returns the area of the view to be exported.

For Maps, this is always the area corresponding to the constrained bounds (IDisplayTransformation::ContstrainedBounds), i.e., the visible bounds intersected with the full bounds. The coordinates are automatically converted, using IDisplayTransformation::TransformRect, from world units to device units.

For PageLayout, this is always the height and width of the page in device units (pixels) when the layout is zoomed to 100%. Because these values are independent of the layout's current zoom level and always correspond to the page instead of the full client area of the application, they are ideal for use when exporting a map to a graphics file. Assign the values of the ExportFrame property to the Export object's PixelBounds property.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getExportFrame in interface IActiveView
Returns:
A Structure: com.esri.arcgis.display.tagRECT
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isShowScrollBars

public boolean isShowScrollBars()
                         throws IOException,
                                AutomationException
Indicates if scrollbars are visible.

Remarks

IActiveView::ShowScrollBars is a short cut to IScreenDisplay::UseScrollBars. Changes to this property are not reflected until the active view changes. For example, when in layout view in ArcMap, programmatically changing the PageLayout to not show its scrollbar will have no effect until the next time the active view is set to the PageLayout - calling IActiveView::Refresh has no effect.

ArcMap uses this property to hide Map's scroll bars when in layout view. Programmatically trying to display a Map's scroll bar in layout view will have no effect, for Maps this setting is only honored in data view and again it requires an active view change before the setting is reflected in the applications window.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
isShowScrollBars in interface IActiveView
Returns:
The showScrollBars
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setShowScrollBars

public void setShowScrollBars(boolean showScrollBars)
                       throws IOException,
                              AutomationException
Indicates if scrollbars are visible.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

isShowRulers

public boolean isShowRulers()
                     throws IOException,
                            AutomationException
Indicates if rulers are visible.

Remarks

This property is a boolean flag that applications use to determine whether or not to draw rulers.

This property cannot be set for Maps, they always have rulers turned off.

The PageLayout is the only active view with rulers; an active view change is required before the setting is reflected in the applications window.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
isShowRulers in interface IActiveView
Returns:
The showRulers
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setShowRulers

public void setShowRulers(boolean showRulers)
                   throws IOException,
                          AutomationException
Indicates if rulers are visible.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

isShowSelection

public boolean isShowSelection()
                        throws IOException,
                               AutomationException
Indicates if selection is visible.

Description

This property is primarily used to hide a Map's element selection in layout view unless a Map has been activated.

When in layout view, the PageLayout always has its ShowSelection set to true, setting it to false has no effect. Similarly, when in data view, the focus Map always has its ShowSelection set to true and this cannot be overridden.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
isShowSelection in interface IActiveView
Returns:
The showRulers
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setShowSelection

public void setShowSelection(boolean showRulers)
                      throws IOException,
                             AutomationException
Indicates if selection is visible.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

getExtentStack

public IExtentStack getExtentStack()
                            throws IOException,
                                   AutomationException
The extent stack.

Remarks

Returns a reference to the active view's extent stack. Each active view has an extent stack which remembers previous extents so that users can 'go back' and then 'go forward' to previous extents.

Example:


Map map = new Map();
IExtentStack pExtentStack = map.getActiveView().getExtentStack();
if(pExtentStack.canUndo()){
pExtentStack.undo();
}            

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

getScreenCacheID

public short getScreenCacheID(int phase,
                              Object data)
                       throws IOException,
                              AutomationException
The screen cache ID that is used to draw the specified phase.

Product Availability

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

Specified by:
getScreenCacheID in interface IActiveView
Parameters:
phase - A com.esri.arcgis.carto.esriViewDrawPhase constant (in)
data - A reference to another Object (IUnknown) (in)
Returns:
The cacheID
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

hitTestMap

public IMap hitTestMap(IPoint location)
                throws IOException,
                       AutomationException
Returns any maps present in the view at the given location. Return value may be zero if there are no maps or the coordinate is not over a map.

Remarks

Use this method on a PageLayout to find the nearest Map based on a point location. For example, when ArcMap's identify tool is used in Layout view, the tool first finds the Map clicked on before it searches for features in the Map.

When using this method on a PageLayout, for the Location parameter, set up the Point in page coordinates. To convert from device coordinates to page coordinates:

  1. Get the ScreenDisplay from the PageLayout using IActiveView::ScreenDisplay.
  2. Get the DisplayTransformation from the ScreenDisplay using IScreenDisplay::DisplayTransformation.
  3. Convert device coordinates (for example from a mouse move) to page coordinates using IDisplayTransformation::ToMapPoint.

Use this method on a Map to obtain a reference to it through IMap.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
hitTestMap in interface IActiveView
Parameters:
location - A reference to a com.esri.arcgis.geometry.IPoint (in)
Returns:
A reference to a com.esri.arcgis.carto.IMap
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isActive

public boolean isActive()
                 throws IOException,
                        AutomationException
Indicates if view is active or not.

Remarks

In layout view, all of the Maps and the PageLayout are active. In data view, only the focus map is active.

The PageLayout object uses this property when adding Elements; if the PageLayout is active, new elements are activated (IElement::Activate).

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

activate

public void activate(int hWnd)
              throws IOException,
                     AutomationException
Gives this view control of the specified window.

Remarks

Called to establish the current object as the active view. For example, view commands deactivate (IActiveView::Deactivate) the current view (IMxDocument::ActiveView) before calling Activate on their own associated view.

When working with the IActiveView interface on a MapDocument object, you should always first call IActiveView::Activate() in order to properly initialize the display of the PageLayout or Map object. The MxDocument and MapServer objects and the MapControl and PageLayoutControl all initialize display objects automatically after opening an MXD, but MapDocument does not do this, so you should call Activate() before working with any other members of IActiveView. If your application has a user interface, you should call Activate() with the hWnd of the application's client area. If your application runs in the background and has no windows, you can always get a valid hWnd from the GDI GetDesktopWindow() function, part of the Win32 API.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
activate in interface IActiveView
Parameters:
hWnd - The hWnd (A COM typedef) (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

deactivate

public void deactivate()
                throws IOException,
                       AutomationException
Another view takes over the associated window.

Remarks

Called to deactivate the current active view. For example, view commands deactivate (IActiveView::Deactivate) the current view (IMxDocument::ActiveView) before calling Activate on their own associated view.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

draw

public void draw(int hDC,
                 ITrackCancel trackCancel)
          throws IOException,
                 AutomationException
Draws the view to the specified device context.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
draw in interface IActiveView
Parameters:
hDC - The hDC (A COM typedef) (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.

output

public void output(int hDC,
                   int dpi,
                   tagRECT pixelBounds,
                   IEnvelope visibleBounds,
                   ITrackCancel trackCancel)
            throws IOException,
                   AutomationException
Renders the view to the specified DC.

Description

This method is used to draw to a non-app window hDC (see Windows GDI for more info). The ArcMap printing and exporting commands use this method. When drawing to an hWnd, normally IActiveView::Draw is used instead of this method because it handles caching and scrollbars.

Remarks

Parameter use is as follows:

hDC - Output device.
dpi - Dots per inch (resolution). If Null is passed then this defaults to the resolution of the hDC. If that cannot be sampled, then this defaults to the window resolution.
pixelBounds - Device rectangle specified in pixels.
VisibleBounds - Zoom extent. If Null is passed then this defaults to the current visible extent.

All other display attributes are copied from the ActiveView.

If you want to draw the data frame to a 640x480 bitmap for example, specify the following parameter values:

dpi - 0
pixel bounds - { 0, 0, 640, 480 }
visible bounds - 0

If you want to create a bitmap that will print 8.5 x 11 on a 300 DPI printer, specify the following parameter values:

dpi - 300
pixel bounds - { 0, 0, 8.5 * dpi, 11 * dpi }
visible bounds - 0

If you want to zoom to a certain location and draw it on a 300x300 bitmap, specify the following parameter values:

dpi - 0
pixel bounds - { 0, 0, 300, 300 }
visible bounds - { -45.0, 44.0, -44.0, 45.0 }

The value of IDisplayTransformation::Resolution does not affect the results of this method.

The value of IOutputRasterSettings::ResampleRatio does affect the results of the this method. When rasters are drawn, they get resampled as specified in this attribute.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
output in interface IActiveView
Parameters:
hDC - The hDC (A COM typedef) (in)
dpi - The dpi (in)
pixelBounds - A Structure: com.esri.arcgis.display.tagRECT (in)
visibleBounds - A reference to a com.esri.arcgis.geometry.IEnvelope (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.

refresh

public void refresh()
             throws IOException,
                    AutomationException
Causes the entire view to draw.

Remarks

IActiveView::Refresh invalidates all of the caches. This is a very inefficient operation; typically data from just one source has to be reread from the database and the rest can be drawn from cache. IActiveView::PartialRefresh uses it's knowledge of the cache layout to invalidate as little as possible and should be used whenever possible.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
refresh in interface IActiveView
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
esriViewDrawPhase, IGlobeLayerProperties2, IActiveView.partialRefresh(int, java.lang.Object, com.esri.arcgis.geometry.IEnvelope), IScreenDisplay.invalidate(com.esri.arcgis.geometry.IEnvelope, boolean, short), IActiveView.getScreenCacheID(int, java.lang.Object), IActiveView.refresh()

partialRefresh

public void partialRefresh(int phase,
                           Object data,
                           IEnvelope envelope)
                    throws IOException,
                           AutomationException
Draws the specified view phase. Use an envelope of zero to draw the entire phase.

Remarks

The main application window is controlled by a view (IActiveView). ArcMap currently has two view objects: Map (data view) and PageLayout (layout view). Each view has a ScreenDisplay object which performs drawing operations. The ScreenDisplay object also makes it possible for clients to create any number of caches. A cache is an off screen bitmap representing the application's window. Instead of drawing directly to the screen, graphics are drawn into caches, then the caches are drawn on the screen. When the application's window is obscured and requires redrawing, it is done so from the caches instead of from a database. In this way, caches improve drawing performance - bitmap rendering is faster than reading and displaying data from a database.

In general, the Map creates three caches: one for all the layers, another if there are annotation or graphics, and a third cache if there is a feature selection. A layer can create its own private cache if it sets ILayer::Cached equal to TRUE. In this case, the Map will create a separate cache for the layer and groups the layers above and below it into different caches.

IActiveView::PartialRefresh uses its knowledge of the cache layout to invalidate as little as possible. IActiveView::Refresh , on the other hand, invalidates all the caches which is very inefficient. Use PartialRefresh whenever possible.

Both PartialRefresh and Refresh call IScreenDisplay::Invalidate which sets a flag clients watch for. Clients draw a cache from scratch (the database) if its flag is set to true, and from cache if the flag is set to false.

The following table shows the phases each view supports and what they map to:

phase Map Layout
esriViewBackground Map grids Page/snap grid
esriViewGeography Layers Unused
*esriViewGeoSelection Feature selection Unused
esriViewGraphics Labels/graphics Graphics
esriViewGraphicSelection Graphic selection Element selection
esriViewForeground Unused Snap guides

To specify multiple draw phases, combine individual phases together using a bitwise OR. This is equivalent to adding together the integer enumeration values. For example, pass 6 to invalidate both the esriViewGeography (2) and esriViewGeoSelection (4) phases.

Use the data parameter to invalidate just a specific piece of data. For example, if a layer is loaded and its cache property is set to TRUE, this layer alone can be invalidated. A tracking layer is a good example of this.

The envelope parameter specifies a region to invalidate. For example, if a graphic element is added, it is usually only necessary to invalidate the immediate area surrounding the new graphic.

Both the data and envelope parameters are optional.

*When selecting features, you must call PartialRefresh twice, once before and once after the selection operation.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
partialRefresh in interface IActiveView
Parameters:
phase - A com.esri.arcgis.carto.esriViewDrawPhase constant (in)
data - A reference to another Object (IUnknown) (in)
envelope - A reference to a com.esri.arcgis.geometry.IEnvelope (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
esriViewDrawPhase, IGlobeLayerProperties2, IActiveView.partialRefresh(int, java.lang.Object, com.esri.arcgis.geometry.IEnvelope), IScreenDisplay.invalidate(com.esri.arcgis.geometry.IEnvelope, boolean, short), IActiveView.getScreenCacheID(int, java.lang.Object), IActiveView.refresh()

clear

public void clear()
           throws IOException,
                  AutomationException
Empties the view contents.

Remarks

The Map object's implementation of Clear deletes all of the Layers in the Map (IMap::ClearLayers ), removes all MapSurrounds (IMap::ClearSurrounds ), removes all bookmarks (IMapBookMarks::RemoveAllBookMarks), and resets the extent stack. Clear does not refresh the active view however.

Clear on PageLayout deletes all Elements, including MapFrames which hold a Map, resets the extent stack, and a new Map is created - there must always be a focus map.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

printerChanged

public void printerChanged(IPrinter printer)
                    throws IOException,
                           AutomationException
Called by application when printer changes.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
printerChanged in interface IActiveView
Parameters:
printer - A reference to a com.esri.arcgis.output.IPrinter (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

contentsChanged

public void contentsChanged()
                     throws IOException,
                            AutomationException
Called by clients when view objects are modified.

Remarks

After modifying the contents view (table of contents), use this method to fire the IActiveViewEvents::ContentsChanged event so that clients listening for this event can respond accordingly.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
contentsChanged in interface IActiveView
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
IActiveViewEvents.contentsChanged(com.esri.arcgis.carto.IActiveViewEventsContentsChangedEvent)

onMessage

public void onMessage(int msg,
                      int wParam,
                      int lParam)
               throws IOException,
                      AutomationException
Call from your application's message loop to enable automatic resizing and keyboard accelerators.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
onMessage in interface IActiveView
Parameters:
msg - The msg (in)
wParam - The wParam (A COM typedef) (in)
lParam - The lParam (A COM typedef) (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getContextMenu

public void getContextMenu(double x,
                           double y,
                           IUID[] clsidMenu)
                    throws IOException,
                           AutomationException
Called when a context menu should be displayed at the given xy location. Return menu that should be displayed.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getContextMenu in interface IActiveView
Parameters:
x - The x (in)
y - The y (in)
clsidMenu - A reference to a com.esri.arcgis.system.IUID (out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

addLayer

public void addLayer(ILayer pLayer)
              throws IOException,
                     AutomationException
Adds a layer to the map.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
addLayer in interface IBasicMap
Specified by:
addLayer in interface IMapLayers
Parameters:
pLayer - 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.

isLayerVisible

public boolean isLayerVisible(ILayer layer)
                       throws IOException,
                              AutomationException
Check if layer is visible.

Remarks

This method determines if a layer is actually visible in a map. It does this by checking to see if the layer is not drawn due to scale ranges and also by validating whether or not the layer is in a composite layer or group layer that is not visible.

Product Availability

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

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

insertLayer

public void insertLayer(ILayer pLayer,
                        boolean autoArrange,
                        int position)
                 throws IOException,
                        AutomationException
Inserts a layer at the given position.

Remarks

The autoArrange parameter controls the ordering of the layers. If autoArrange is set to TRUE, the layer is added in the proper position as by its weight specified via ILayerPosition::LayerWeight. By default, this means that the layers are sorted by layer type - Annotation layers on top, followed by Point geometry layers, Polyline geometry layers, and at the bottom Polygon geometry layers. If autoArrange is true for this method, the position passed in is ignored as the position is determined by the auto arrange logic.

Product Availability

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

Specified by:
insertLayer in interface IMapLayers
Parameters:
pLayer - A reference to a com.esri.arcgis.carto.ILayer (in)
autoArrange - The autoArrange (in)
position - The position (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

insertLayers

public void insertLayers(IEnumLayer pLayers,
                         boolean autoArrange,
                         int position)
                  throws IOException,
                         AutomationException
Inserts layers at the given position.

Remarks

The autoArrange parameter controls the ordering of the layers. If autoArrange is set to TRUE, the layers are added in the proper position as by their weight specified via ILayerPosition::LayerWeight. By default, this means that the layers are sorted by layer type - Annotation layers on top, followed by Point geometry layers, Polyline geometry layers, and at the bottom Polygon geometry layers. If autoArrange is true for this method, the position passed in is ignored as the position is determined by the auto arrange logic.

Product Availability

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

Specified by:
insertLayers in interface IMapLayers
Parameters:
pLayers - A reference to a com.esri.arcgis.carto.IEnumLayer (in)
autoArrange - The autoArrange (in)
position - The position (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

insertLayerInGroup

public void insertLayerInGroup(IGroupLayer pGroup,
                               ILayer pLayer,
                               boolean autoArrange,
                               int position)
                        throws IOException,
                               AutomationException
Inserts a layer at a given index of the map's group layer.

Remarks

The autoArrange parameter controls the ordering of the layers. If autoArrange is set to TRUE, the sequence of layers is by their weight specified via ILayerPosition::LayerWeight. By default, this means that the layers are sorted by layer type - Annotation layers on top, followed by Point geometry layers, Polyline geometry layers, and at the bottom Polygon geometry layers.

Product Availability

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

Specified by:
insertLayerInGroup in interface IMapLayers
Parameters:
pGroup - A reference to a com.esri.arcgis.carto.IGroupLayer (in)
pLayer - A reference to a com.esri.arcgis.carto.ILayer (in)
autoArrange - The autoArrange (in)
position - The position (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

insertLayersInGroup

public void insertLayersInGroup(IGroupLayer pGroup,
                                IEnumLayer pLayer,
                                boolean autoArrange,
                                int position)
                         throws IOException,
                                AutomationException
Inserts layers at a given index of the map's group layer.

Remarks

The autoArrange parameter controls the ordering of the layers. If autoArrange is set to TRUE, the sequence of layers is by their weight specified via ILayerPosition::LayerWeight. By default, this means that the layers are sorted by layer type - Annotation layers on top, followed by Point geometry layers, Polyline geometry layers, and at the bottom Polygon geometry layers.

Product Availability

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

Specified by:
insertLayersInGroup in interface IMapLayers
Parameters:
pGroup - A reference to a com.esri.arcgis.carto.IGroupLayer (in)
pLayer - A reference to a com.esri.arcgis.carto.IEnumLayer (in)
autoArrange - The autoArrange (in)
position - The position (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

moveLayerEx

public void moveLayerEx(IGroupLayer pFromGroup,
                        IGroupLayer pToGroup,
                        ILayer pLayer,
                        int newPosition)
                 throws IOException,
                        AutomationException
Moves the layer with in the map.

Product Availability

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

Specified by:
moveLayerEx in interface IMapLayers
Parameters:
pFromGroup - A reference to a com.esri.arcgis.carto.IGroupLayer (in)
pToGroup - A reference to a com.esri.arcgis.carto.IGroupLayer (in)
pLayer - A reference to a com.esri.arcgis.carto.ILayer (in)
newPosition - The newPosition (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

selectionChanged

public void selectionChanged(ISelectionEventsSelectionChangedEvent theEvent)
                      throws IOException,
                             AutomationException
Call this function to fire the selection changed event.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
selectionChanged in interface ISelectionEvents
Parameters:
theEvent - The event
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getTableCount

public int getTableCount()
                  throws IOException,
                         AutomationException
Number of tables.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

getTable

public ITable getTable(int index)
                throws IOException,
                       AutomationException
The table at the given index.

Product Availability

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

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

addTable

public void addTable(ITable table)
              throws IOException,
                     AutomationException
Adds a table to the collection.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

removeTable

public void removeTable(ITable table)
                 throws IOException,
                        AutomationException
Removes a table from the collection.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

removeAllTables

public void removeAllTables()
                     throws IOException,
                            AutomationException
Removes all tables from the collection.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

getStandaloneTableCount

public int getStandaloneTableCount()
                            throws IOException,
                                   AutomationException
Number of standalone tables.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

getStandaloneTable

public IStandaloneTable getStandaloneTable(int index)
                                    throws IOException,
                                           AutomationException
The standalone table at the given index.

Product Availability

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

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

addStandaloneTable

public void addStandaloneTable(IStandaloneTable table)
                        throws IOException,
                               AutomationException
Adds a standalone table to the collection.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

removeStandaloneTable

public void removeStandaloneTable(IStandaloneTable table)
                           throws IOException,
                                  AutomationException
Removes the standalone table from the collection.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

removeAllStandaloneTables

public void removeAllStandaloneTables()
                               throws IOException,
                                      AutomationException
Removes all standalone tables from the collection.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

getRelationshipClasses

public IEnumRelationshipClass getRelationshipClasses()
                                              throws IOException,
                                                     AutomationException
The memory relationship classes.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

findRelationshipClasses

public IEnumRelationshipClass findRelationshipClasses(IObjectClass objectClass,
                                                      int role)
                                               throws IOException,
                                                      AutomationException
Finds all relationship classes in the collection that reference the given object class in the specified role.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
findRelationshipClasses in interface IRelationshipClassCollection
Parameters:
objectClass - A reference to a com.esri.arcgis.geodatabase.IObjectClass (in)
role - A com.esri.arcgis.geodatabase.esriRelRole constant (in)
Returns:
A reference to a com.esri.arcgis.geodatabase.IEnumRelationshipClass
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getBookmarks

public IArray getBookmarks()
                    throws IOException,
                           AutomationException
The bookmarks.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

addBookmark

public void addBookmark(IBookmark3D pBookmark)
                 throws IOException,
                        AutomationException
Adds a bookmark to the collection.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
addBookmark in interface ISceneBookmarks
Parameters:
pBookmark - A reference to a com.esri.arcgis.analyst3d.IBookmark3D (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

findBookmark

public void findBookmark(String name,
                         IBookmark3D[] ppBookmark)
                  throws IOException,
                         AutomationException
Finds a bookmark by name.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
findBookmark in interface ISceneBookmarks
Parameters:
name - The name (in)
ppBookmark - A reference to a com.esri.arcgis.analyst3d.IBookmark3D (out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

removeBookmark

public void removeBookmark(IBookmark3D bookmark)
                    throws IOException,
                           AutomationException
Removes a bookmark from the collection.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
removeBookmark in interface ISceneBookmarks
Parameters:
bookmark - A reference to a com.esri.arcgis.analyst3d.IBookmark3D (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

removeAllBookmarks

public void removeAllBookmarks()
                        throws IOException,
                               AutomationException
Removes all bookmarks.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

getBookmarkCount

public int getBookmarkCount()
                     throws IOException,
                            AutomationException
The number of bookmarks.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getBookmarkCount in interface ISceneBookmarks
Returns:
The pBookmarkCount
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

saveBookmarks

public void saveBookmarks(IStream pStm)
                   throws IOException,
                          AutomationException
Save the bookmarks to a stream.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
saveBookmarks in interface ISceneBookmarks
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.

loadBookmarks

public void loadBookmarks(IStream pStm)
                   throws IOException,
                          AutomationException
Load the bookmarks from a stream.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
loadBookmarks in interface ISceneBookmarks
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.

getAnimationTypes

public IArray getAnimationTypes()
                         throws IOException,
                                AutomationException
The objects that describe the registered types of animation.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

getTrackCount

public int getTrackCount()
                  throws IOException,
                         AutomationException
The number of tracks.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getTrackCount in interface IAnimationTracks
Specified by:
getTrackCount in interface IAGAnimationTracks
Returns:
The pCount
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getTracks

public IArray getTracks()
                 throws IOException,
                        AutomationException
The animation tracks.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

getTracksOfType

public IArray getTracksOfType(IAnimationType pType)
                       throws IOException,
                              AutomationException
The animation tracks of a given type.

Product Availability

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

Specified by:
getTracksOfType in interface IAnimationTracks
Parameters:
pType - A reference to a com.esri.arcgis.analyst3d.IAnimationType (in)
Returns:
A reference to a com.esri.arcgis.system.IArray
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

addTrack

public void addTrack(IAnimationTrack pTrack)
              throws IOException,
                     AutomationException
Adds a track to the collection.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
addTrack in interface IAnimationTracks
Parameters:
pTrack - A reference to a com.esri.arcgis.analyst3d.IAnimationTrack (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

findTrack

public void findTrack(String name,
                      IAnimationTrack[] ppTrack)
               throws IOException,
                      AutomationException
Finds a track by name.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
findTrack in interface IAnimationTracks
Parameters:
name - The name (in)
ppTrack - A reference to a com.esri.arcgis.analyst3d.IAnimationTrack (out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

removeTrack

public void removeTrack(IAnimationTrack pTrack)
                 throws IOException,
                        AutomationException
Removes a track from the collection.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
removeTrack in interface IAnimationTracks
Parameters:
pTrack - A reference to a com.esri.arcgis.analyst3d.IAnimationTrack (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

removeAllTracks

public void removeAllTracks()
                     throws IOException,
                            AutomationException
Removes all tracks.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

saveTracks

public void saveTracks(IStream pStm)
                throws IOException,
                       AutomationException
Save the animation tracks to a stream.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
saveTracks in interface IAnimationTracks
Specified by:
saveTracks in interface IAGAnimationTracks
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.

loadTracks

public void loadTracks(IStream pStm)
                throws IOException,
                       AutomationException
Load the animation tracks from a stream.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
loadTracks in interface IAnimationTracks
Specified by:
loadTracks in interface IAGAnimationTracks
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.

detachObject

public void detachObject(Object pObject)
                  throws IOException,
                         AutomationException
Detach an object from all tracks it is attached to.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
detachObject in interface IAnimationTracks
Specified by:
detachObject in interface IAGAnimationTracks
Parameters:
pObject - A reference to another Object (IUnknown) (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

refreshAttachedObjects

public void refreshAttachedObjects()
                            throws IOException,
                                   AutomationException
Detaches from the tracks those objects that no longer exist.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

applyTracks

public void applyTracks(ISceneViewer pViewer,
                        double time,
                        double duration)
                 throws IOException,
                        AutomationException
Plays the enabled animation tracks in the given viewer (in all if null).

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
applyTracks in interface IAnimationTracks
Parameters:
pViewer - A reference to a com.esri.arcgis.analyst3d.ISceneViewer (in)
time - The time (in)
duration - The duration (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

changePriority

public void changePriority(IAnimationTrack pTrack,
                           boolean bAbsolute,
                           boolean bInSameType,
                           int changeInIndex)
                    throws IOException,
                           AutomationException
Changes the priority (index) of the track.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
changePriority in interface IAnimationTracks
Parameters:
pTrack - A reference to a com.esri.arcgis.analyst3d.IAnimationTrack (in)
bAbsolute - The bAbsolute (in)
bInSameType - The bInSameType (in)
changeInIndex - The changeInIndex (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getAnimationObjectContainer

public IAGAnimationContainer getAnimationObjectContainer()
                                                  throws IOException,
                                                         AutomationException
The container of the animation objects attached to the tracks.

Product Availability

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

Specified by:
getAnimationObjectContainer in interface IAGAnimationTracks
Returns:
A reference to a com.esri.arcgis.animation.IAGAnimationContainer
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setAnimationObjectContainerByRef

public void setAnimationObjectContainerByRef(IAGAnimationContainer ppContainer)
                                      throws IOException,
                                             AutomationException
The container of the animation objects attached to the tracks.

Product Availability

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

Specified by:
setAnimationObjectContainerByRef in interface IAGAnimationTracks
Parameters:
ppContainer - A reference to a com.esri.arcgis.animation.IAGAnimationContainer (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getAGTracks

public IArray getAGTracks()
                   throws IOException,
                          AutomationException
The animation tracks.

Remarks

This property returns the animation tracks in the animation track container, which is an IArray object.

Product Availability

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

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

getTracksOfType

public IArray getTracksOfType(IAGAnimationType pType)
                       throws IOException,
                              AutomationException
The animation tracks of a given type.

Product Availability

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

Specified by:
getTracksOfType in interface IAGAnimationTracks
Parameters:
pType - A reference to a com.esri.arcgis.animation.IAGAnimationType (in)
Returns:
A reference to a com.esri.arcgis.system.IArray
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

createTrack

public IAGAnimationTrack createTrack(IAGAnimationType pType)
                              throws IOException,
                                     AutomationException
Creates a new track and adds it to the collection.

Product Availability

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

Specified by:
createTrack in interface IAGAnimationTracks
Parameters:
pType - A reference to a com.esri.arcgis.animation.IAGAnimationType (in)
Returns:
A reference to a com.esri.arcgis.animation.IAGAnimationTrack
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

addTrack

public void addTrack(IAGAnimationTrack pTrack)
              throws IOException,
                     AutomationException
Adds a track to the collection.

Product Availability

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

Specified by:
addTrack in interface IAGAnimationTracks
Parameters:
pTrack - A reference to a com.esri.arcgis.animation.IAGAnimationTrack (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

findTrack

public void findTrack(String name,
                      IAGAnimationTrack[] ppTrack)
               throws IOException,
                      AutomationException
Finds a track by name.

Product Availability

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

Specified by:
findTrack in interface IAGAnimationTracks
Parameters:
name - The name (in)
ppTrack - A reference to a com.esri.arcgis.animation.IAGAnimationTrack (out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

removeTrack

public void removeTrack(IAGAnimationTrack pTrack)
                 throws IOException,
                        AutomationException
Removes a track from the collection.

Product Availability

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

Specified by:
removeTrack in interface IAGAnimationTracks
Parameters:
pTrack - A reference to a com.esri.arcgis.animation.IAGAnimationTrack (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

applyTracks

public void applyTracks(boolean bApplyToAllViewers,
                        double time)
                 throws IOException,
                        AutomationException
Uses the enabled animation tracks for the given time.

Product Availability

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

Specified by:
applyTracks in interface IAGAnimationTracks
Parameters:
bApplyToAllViewers - The bApplyToAllViewers (in)
time - The time (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

changePriority

public void changePriority(IAGAnimationTrack pTrack,
                           boolean bAbsolute,
                           boolean bInSameType,
                           int changeInIndex)
                    throws IOException,
                           AutomationException
Changes the priority (index) of the track.

Product Availability

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

Specified by:
changePriority in interface IAGAnimationTracks
Parameters:
pTrack - A reference to a com.esri.arcgis.animation.IAGAnimationTrack (in)
bAbsolute - The bAbsolute (in)
bInSameType - The bInSameType (in)
changeInIndex - The changeInIndex (in)
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.

enumConnectionPoints

public void enumConnectionPoints(IEnumConnectionPoints[] ppEnum)
                          throws IOException,
                                 AutomationException
enumConnectionPoints

Description

IConnectionPointContainer 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:
enumConnectionPoints in interface IConnectionPointContainer
Parameters:
ppEnum - A reference to a com.esri.arcgis.display.IEnumConnectionPoints (out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

findConnectionPoint

public void findConnectionPoint(GUID riid,
                                IConnectionPoint[] ppCP)
                         throws IOException,
                                AutomationException
findConnectionPoint

Description

IConnectionPointContainer 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:
findConnectionPoint in interface IConnectionPointContainer
Parameters:
riid - A Structure: com.esri.arcgis.support.ms.stdole.GUID (in)
ppCP - A reference to a com.esri.arcgis.display.IConnectionPoint (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.

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.

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