ArcObjects Library Reference  (3DAnalyst)    

SceneGraph CoClass

A container for recording data and events that occur in a scene.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Extended Error Information

Use the ISupportErrorInfo method InterfaceSupportsErrorInfo to determine if the object supports extended error information. If the object supports extended error info, VC++ developers should use the OLE/COM IErrorInfo interface to access the ErrorInfo object. Visual Basic developers should use the global error object Err to retrieve this extended error information.

Interfaces

Interfaces Description
IActiveViewEvents (esriCarto) Provides access to events that occur when the state of the active view changes.
IConnectionPointContainer Supports connection points for connectable objects.
IDisplay (esriDisplay) Provides access to members that control the Display.
IDisplay3D (esriDisplay) Provides access to members that control drawing methods specific to 3D displays.
ISceneGraph Provides access to members that control and manipulate the scene graph.
ISceneRendererEvents Provides access to events that occur when a scene is rendered.
IScreenDisplay (esriDisplay) Provides access to members that control Screen Display.
IScreenDisplay2 (esriDisplay) Provides access to additional members that control the Screen Display.
ISupportErrorInfo Indicates whether a specific interface can return Automation error objects.
IViewers3D Provides access to members that control 3D displays.

Event Interfaces

Interfaces Description
ISceneGraphEventsDisp (default) Provides access to events that occur when state of scene graph changes.
ISceneGraphEvents Provides access to events that occur when the state of the scene graph changes.

Remarks

SceneGraph is to Scene what MapDisplay is to Map.  It's associated with a Scene object, either in ArcScene or in a scene viewer control (or a later version scene control).  It handles most of the 3D rendering operations and makes the drawing more efficient.

[Visual Basic 6.0]

'A common way to get the handle of the SceneGraph from with ArcScene's VBA IDE:

  dim pDoc as ISxDocument: set pDoc = ThisDocument

  dim pScene as IScene: set pScene = pDoc.Scene

  dim pSG as ISceneGraph: set pSG = pScene.SceneGraph

  'Further actions...

Working with Events

[Visual Basic 6.0]

When working with SceneGraph's default outbound interface in Visual Basic 6 declare variables as follows:

Private WithEvents pSceneGraph as SceneGraph

When implementing ISceneGraphEvents declare variables as follows:

Private WithEvents pSceneGraphEvents as SceneGraphEvents