com.esri.arcgis.analyst3d
Class ISceneGraphEventsProxy

java.lang.Object
  extended by com.esri.arcgis.interop.Dispatch
      extended by com.esri.arcgis.analyst3d.ISceneGraphEventsProxy
All Implemented Interfaces:
ISceneGraphEvents, Externalizable, Serializable, EventListener

public class ISceneGraphEventsProxy
extends com.esri.arcgis.interop.Dispatch
implements ISceneGraphEvents, Serializable

Provides access to events that occur when the state of the scene graph changes.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

See Also:
Serialized Form

Field Summary
 
Fields inherited from class com.esri.arcgis.interop.Dispatch
DISPATCH_METHOD, DISPATCH_PROPERTYGET, DISPATCH_PROPERTYPUT, DISPATCH_PROPERTYPUTREF, E
 
Constructor Summary
  ISceneGraphEventsProxy()
           
  ISceneGraphEventsProxy(Object obj)
           
protected ISceneGraphEventsProxy(Object obj, String iid)
           
 
Method Summary
 void activeViewerChanged(ISceneGraphEventsActiveViewerChangedEvent theEvent)
          Fired when the active viewer changes.
 void addListener(String iidStr, Object theListener, Object theSource)
           
 void afterDraw(ISceneGraphEventsAfterDrawEvent theEvent)
          Fired when drawing finishes.
 boolean beforeDraw(ISceneGraphEventsBeforeDrawEvent theEvent)
          Fired when drawing starts.
 void interactionStopped(ISceneGraphEventsInteractionStoppedEvent theEvent)
          Fired when interaction stops.
 void readExternal(ObjectInput in)
           
 void recordingStarted(ISceneGraphEventsRecordingStartedEvent theEvent)
          Fired when node recording starts.
 void recordingStopped(ISceneGraphEventsRecordingStoppedEvent theEvent)
          Fired when node recording stops.
 void removeListener(String iidStr, Object theListener)
           
 void viewerAdded(ISceneGraphEventsViewerAddedEvent theEvent)
          Fired when a new viewer is added.
 void viewerRemoved(ISceneGraphEventsViewerRemovedEvent theEvent)
          Fired when a viewer is removed.
 void writeExternal(ObjectOutput out)
           
 
Methods inherited from class com.esri.arcgis.interop.Dispatch
bindUsingMoniker, constructVtblPosTable, convertToNative, cookieForListener, createDispatch, createObjrefMonikerDisplayName, equals, getActiveObject, getActiveObject, getDefaultProperty, getDispatchIdOfName, getLastErrorCode, getMtsObjectContext, getObjRef, getPropertyByName, getPropertyByName, getVtblPos, hashCode, initDispatch, invoke, invokeMethodByName, invokeMethodByName, invokeMethodByName, invokePropertyGetByName, invokePropertyPutByName, invokePropertyPutByRefByName, isNativeMode, isObjRef, queryInterface, release, setNativeMode, setPropertyByName, toString, vtblInvoke
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

ISceneGraphEventsProxy

public ISceneGraphEventsProxy()

ISceneGraphEventsProxy

public ISceneGraphEventsProxy(Object obj)
                       throws IOException
Throws:
IOException

ISceneGraphEventsProxy

protected ISceneGraphEventsProxy(Object obj,
                                 String iid)
                          throws IOException
Throws:
IOException
Method Detail

addListener

public void addListener(String iidStr,
                        Object theListener,
                        Object theSource)
                 throws IOException
Overrides:
addListener in class com.esri.arcgis.interop.Dispatch
Throws:
IOException

removeListener

public void removeListener(String iidStr,
                           Object theListener)
                    throws IOException
Overrides:
removeListener in class com.esri.arcgis.interop.Dispatch
Throws:
IOException

activeViewerChanged

public void activeViewerChanged(ISceneGraphEventsActiveViewerChangedEvent theEvent)
                         throws IOException,
                                AutomationException
Fired when the active viewer changes.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

viewerAdded

public void viewerAdded(ISceneGraphEventsViewerAddedEvent theEvent)
                 throws IOException,
                        AutomationException
Fired when a new viewer is added.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

viewerRemoved

public void viewerRemoved(ISceneGraphEventsViewerRemovedEvent theEvent)
                   throws IOException,
                          AutomationException
Fired when a viewer is removed.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

interactionStopped

public void interactionStopped(ISceneGraphEventsInteractionStoppedEvent theEvent)
                        throws IOException,
                               AutomationException
Fired when interaction stops.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

recordingStarted

public void recordingStarted(ISceneGraphEventsRecordingStartedEvent theEvent)
                      throws IOException,
                             AutomationException
Fired when node recording starts.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

recordingStopped

public void recordingStopped(ISceneGraphEventsRecordingStoppedEvent theEvent)
                      throws IOException,
                             AutomationException
Fired when node recording stops.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

beforeDraw

public boolean beforeDraw(ISceneGraphEventsBeforeDrawEvent theEvent)
                   throws IOException,
                          AutomationException
Fired when drawing starts.

Remarks

This event method is often used by an OpenGL routine that renders something before the main features in the scene are drawn. A good example is the scene background, such as sky/sun/moon etc. Just like the art of painting, one normally needs to draw the background first and then the main feature. So this method is generally for the background rendering. It can also be used for executing some routines other than drawing.

The BeforeDraw method returns a boolean value. When it's set to true, the SceneGraph's drawing is disabled, and you as a developer take control of the drawing (e.g. via OpenGL). Otherwise, the SceneGraph takes care of drawing as usual.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

afterDraw

public void afterDraw(ISceneGraphEventsAfterDrawEvent theEvent)
               throws IOException,
                      AutomationException
Fired when drawing finishes.

Remarks

This event method is often used by an OpenGL routine that renders something after the main features in the scene are drawn. Just like the art of painting, one normally needs to draw the background first and then the main feature, followed by foreground features or other miscellaneous features. So this method is generally used for drawing of graphics after the background and the main features are drawn. It can also be used for executing some routines other than drawing.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
afterDraw in interface ISceneGraphEvents
Parameters:
theEvent - The event
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
Overrides:
writeExternal in class com.esri.arcgis.interop.Dispatch
Throws:
IOException

readExternal

public void readExternal(ObjectInput in)
                  throws IOException,
                         ClassNotFoundException
Specified by:
readExternal in interface Externalizable
Overrides:
readExternal in class com.esri.arcgis.interop.Dispatch
Throws:
IOException
ClassNotFoundException