Click or drag to resize

AGI.Foundation.Graphics Namespace

Provides commonly used and instantiated graphics types related to 3D scene management, terrain and imagery, and more.
Classes
  ClassDescription
Public classAltitudeDisplayCondition
Defines an inclusive altitude interval, in meters, that determines when an object is rendered based on the camera's altitude relative to a CentralBody.
Public classAxesPrimitive
Renders an axes in the 3D scene.
Public classBalloon
Each 3D scene has a balloon view which can display HTML content directly. The balloon is associated with a Cartographic or screen space coordinate, and an indicator attached to the the balloon will stay fixed to that coordinate. The balloon content will resize and position itself such that it is clear what the indicator is pointing to. The balloon is useful for displaying rich content that is associated with a particular Cartographic or screen space coordinate.
Public classBalloonNavigatingEventArgs
The EventArgs passed to the Balloon Navigating event.
Public classBatchPrimitiveIndex
Represents an individual item index that is associated with a batch primitive. Provides the Index of the individual item and the Primitive that contains that index. When the PerItemPickingEnabled property is set to for a batch primitive, the PickResults returned from Scene.Pick will contain BatchPrimitiveIndex types referencing particular indices within that batch.
Public classBingMapsForEnterpriseImageGlobeOverlay
A CustomImageGlobeOverlay that uses data from a Bing Maps For Enterprise server.
Public classCamera
Implemented by the scene camera. Contains operations to manipulate the camera position, view direction and orientation in the scene.
Public classCentralBodyGraphics
The graphical properties associated with a particular CentralBody. Changing the CentralBodyGraphics will affect how the associated CentralBody is rendered in a Scene. For instance, to show or hide the CentralBody, use the Show property. CentralBodyGraphics also contains the Terrain and Imagery for the associated CentralBody.
Public classClouds
Load, show and hide clouds in the scene.
Public classCompositeDisplayCondition
A composite of display conditions combined using a BinaryLogicOperation. For example, several TimeIntervalDisplayCondition objects can be added to a composite. The composite can then be assigned to an object so the object is only rendered when the current animation time is within one of the time intervals.
Public classCompositePrimitive

A primitive that is composed of multiple other primitives. Since composites can contain other composites, they are commonly used to build hierarchies of primitives to efficiently evaluate display conditions.

Primitives in a composite must have the same ReferenceFrame.

Public classConstantDisplayCondition
A display condition that evaluates to a user-defined value. This is commonly used to hide primitives by assigning to a primitive a display condition that always returns false.
Public classCouldNotCreateVideoCardResourceException
The exception that is thrown when a video card resource cannot be created.
Public classDisplayCondition
When assigned to objects, such as primitives or globe overlays, display conditions are evaluated to determine if the object should be rendered.
Public classDistanceDisplayCondition
Defines an inclusive distance interval, in meters, that determines when an object, such as a primitive, is rendered based on the distance, in meters, from the camera to the object.
Public classDistanceToGlobeOverlayDisplayCondition
Defines an inclusive distance interval, in meters, that determines when an object, such as a primitive, is rendered based on the distance, in meters, from the camera to the GlobeOverlay. This is different from DistanceDisplayCondition because it is based on the camera's distance to a specified GlobeOverlay, rather than the camera's distance to the object that uses this display condition.
Public classDistanceToPositionDisplayCondition
Defines an inclusive distance interval, in meters, that determines when an object, such as a primitive, is rendered based on the distance, in meters, from the camera to a position defined in the given ReferenceFrame.
Public classDistanceToPrimitiveDisplayCondition
Defines an inclusive distance interval, in meters, that determines when an object, such as a screen overlay, is rendered based on the distance, in meters, from the camera to the Primitive. This is different from DistanceDisplayCondition because it is based on the camera's distance to a specified Primitive, rather than the camera's distance to the object that uses this display condition.
Public classDurationPathPrimitiveUpdatePolicy
PathPrimitive update policy that removes points from RemoveLocation after a given Duration.
Public classFrameRate
Keeps track of how many times the Scenes are rendered per second.
Public classGeospatialInformationIsMissingException
The exception that is thrown when a object is missing geospatial information.
Public classGlobeImageOverlay
A GlobeOverlay that shows an image.
Public classGlobeImageOverlayAddCompleteEventArgs
The EventArgs passed to the AddComplete event.
Public classGraphicsFont
A font that is suitable for use with the TextBatchPrimitive. For best performance, avoid creating duplicate font objects. Instead assign the same font object to several text batch primitives.
Public classGreatArcInterpolator
The great arc interpolator computes interpolated positions along a great arc. A great arc is the shortest path between two positions on an ellipsoid.
Public classImageCollection
A collection of GlobeImageOverlay objects.
Public classInsight3D
A .NET UserControl that holds and renders an Insight3D scene, which is available from the Scene property. To render the Scene, call the Scene.Render method. The static SceneManager class provides functionality that affects all scenes. The control also provides MouseOptions for automatic handling of mouse input for controlling the scene's Camera, and DragDropOptions for automatic handling of files that are dropped onto the Insight3D control.
Public classInsufficientVideoCardException
The exception that is thrown when the video card or driver does not support a particular feature.
Public classKmlContainer
A KmlContainer contains a collection of children KmlFeatures.
Public classKmlDocument
A KML document.
Public classKmlDocumentLoadedEventArgs
The EventArgs passed to the DocumentLoaded event.
Public classKmlFeature
A KML feature.
Public classKmlFolder
A KML folder.
Public classKmlGraphics
Provides loading and unloading of KmlDocuments for a particular CentralBody.
Public classKmlNetworkLink
A KML network link.
Public classMarkerBatchPrimitive

Renders one or more markers in the 3D scene. Markers are 2D images that always face the viewer which can be sized in pixels or meters. Markers are also referred to as sprites or billboards.

For best performance, avoid creating lots of batches with only a few markers each. See the Batching Performance topic.

Public classMarkerBatchPrimitiveOptionalParameters
Optional per-marker parameters for MarkerBatchPrimitive that overrides the marker batch's per-batch parameters. Define per-marker parameters by creating an instance of MarkerBatchPrimitiveOptionalParameters, then calling the desired methods to define per-marker parameters, and finally passing the object to the marker batch's Set or SetPartial method.
Public classMaximumCountPathPrimitiveUpdatePolicy
PathPrimitive update policy that removes points from RemoveLocation when the number of points in the path exceeds MaximumCount.
Public classModelArticulation
A ModelArticulation identifies geometry on the model and is a collection of transformations that can be applied to that geometry.
Public classModelArticulationCollection
A collection containing a ModelPrimitive's available articulations. A ModelArticulation identifies geometry on the model and is a collection of transformations that can be applied to that geometry.
Public classModelPrimitive
The model primitive loads and renders glTF 2.0 (.gltf, .glb), COLLADA (DAE) and AGI MDL (MDL) models.
Public classModelTransformation
A ModelTransformation defines a transformation that is applied to geometry on a ModelPrimitive. That geometry is identified by the ModelArticulation which contains the transformation. Changing the CurrentValue property of the transformation will also change the geometry associated with its articulation. The type of transformation that will be applied is indicated by the Type property.
Public classNetworkContext
Allows a custom delegate to be installed which will be called with every network request made by Insight3D. This delegate can inspect the request and selectively configure the request before it is made. For instance, you can set a proxy, set credentials, or configure certificate policies.
Public classOpenStreetMapImageGlobeOverlay
A CustomImageGlobeOverlay that uses data from an OpenStreetMap server.
Public classOrderedCompositePrimitive

A primitive composed of other primitives with a well defined render order. The ordered composite is intended to contain overlapping primitives rendered on the globe's surface. Which primitives are on top of which primitives is defined by the position of the primitive in the composite, which can be controlled with Add(Primitive), BringToFront(Primitive), BringForward(Primitive), SendBackward(Primitive), and SendToBack(Primitive).

The ordered composite is compatible with the following primitives:

It is not intended for use with: ModelPrimitive, SolidPrimitive, or CompositePrimitive.

Primitives in a composite must have the same ReferenceFrame.

Public classOverlay
A visible element drawn in screen space. Overlays are useful for floating logos, heads up displays, and integrating user interfaces into the 3D window.
Public classPathPoint
An immutable point defined by a position and a date. Also contains display properties such as color and translucency.
Public classPathPointBuilder
A mutable point used to build immutable PathPoint objects.
Public classPathPrimitive
Renders a line to the 3D scene. Similar to the PolylinePrimitive; however, the PathPrimitive was designed for the efficient addition/removal of points to/from the front or back of the line.
Public classPickResult
A single result from Scene.Pick.
Public classPixelSizeDisplayCondition
Defines an inclusive interval, in pixels, that determines when an object, such as a primitive, is rendered based on the number of pixels the object's bounding sphere (or in the case of screen overlays, bounding rectangle) covers on the screen. This is commonly used to implement level of detail algorithms that take into account the field of view.
Public classPointBatchPrimitive

Renders one or more points in the 3D scene. Each point in the batch has a unique position and an optional color. All points in the batch share the same pixel size. For best performance, avoid creating lots of batches with only a few points each. See the Batching Performance topic.

Public classPolylinePrimitive
Renders a polyline in the 3D scene. Each line segment may have a different color. A polyline can be constructed with a PositionInterpolator to render great arcs or rhumb lines.
Public classPolylinePrimitiveOptionalParameters
Optional per-point or per-segment parameters for PolylinePrimitive that overrides the polyline primitive's global parameters. Define per-segment parameters by creating an instance of PolylinePrimitiveOptionalParameters, then calling the desired methods to define per-segment parameters, and finally passing the object to the polyline's Set or SetPartial method.
Public classPositionInterpolator
Position interpolators compute positions based on a collection of input positions. Position interpolators are used in conjunction with the PolylinePrimitive to render things such as great arcs and rhumb lines.
Public classPrimitive
Primitives represent objects rendered in the 3D scene.
Public classPrimitiveFactory
Factory methods for creating PolylinePrimitives and TriangleMesh objects.
Public classPrimitiveManager
The primitive manager contains spatial data structures used to efficiently render primitives. Once a primitive is constructed, it must be added to the primitive manager before it will be rendered.
Public classProjectedRaster
A Primitive which projects a Raster onto the terrain or surface of the CentralBody. The ProjectedRaster can also be used with RasterStream and ProjectionStream to stream video and other raster data to a projection that moves with time.
Public classRealTimeAnimation
Allows the user to animate in wall clock time. The time of the frame that is currently rendering is the same as the wall clock time. A TimeOffset can be applied to the time.
Public classRealTimeSimulationAnimation
Allows the user to animate at any time: past, present, or future. The time between each animation frame is based on wall clock time. If the last frame rendered one second ago in wall clock time, the current frame will render at a time equal to the previous frame's time plus one second. A TimeMultiplier can be adjusted to make the simulation time progress faster or slower than real time.
Public classRenderingEventArgs
The EventArgs passed to the rendering event.
Public classRhumbLineInterpolator
The rhumb line interpolator computes interpolated positions along a rhumb line. Rhumb lines are lines of constant bearing. They appear as straight lines on a Mercator 2D map projection and are well suited to navigation.
Public classScene
A Scene provides properties and functionality that are reflected in the rendering of the Insight3D control that it is associated with. An Insight3D control's Scene is available from the Insight3D.Scene property. Any changes that are made to a Scene will only affect the rendering of the particular Insight3D control it is associated with. The static SceneManager class provides global properties and functionality that apply to all Scenes and thus affect the rendering of every Insight3D control. A Scene has a Camera, and various properties for changing the visual state of the scene and its CentralBodies, including changes to Lighting. To render a particular Scene, use the Render method. To render all Scenes, use use the SceneManager.Render method.
Public classSceneDisplayCondition
A display condition used to control what scene or scenes an object, such as a primitive, is rendered in. This is used to show an object in some scenes and hide it in others.
Public classSceneManager
The static SceneManager class provides global properties and functionality that apply to all Scenes and thus affect the rendering of every Insight3D control. It also provides a Textures property for creating new textures, and controls the Time of all Scenes within an application. The Animation property and SetTime(JulianDate) method can be used to control Time. The Primitives and ScreenOverlays properties allow you to add Primitives and ScreenOverlays to all Scenes. To render these objects in specific scenes, see the SceneDisplayCondition class. To render all Scenes within an application, call the Render method.
Public classScreenOverlay
A visible element drawn in screen space. Overlays are useful for floating logos, heads up displays, and integrating user interfaces into the 3D window.
Public classScreenOverlayCollection
A collection of screen overlays.
Public classScreenOverlayManager
The top-level container for screen overlays. All child ScreenOverlays that are added to this container are specified relative to the overall Insight3D control.
Public classScreenOverlayPickResult
Describes a picked screen overlay as a result of a call to Scene.PickScreenOverlays.
Public classSimulationAnimation
Allows the user to animate at any time: past, present, or future. The time between each animation frame is defined by TimeStep.
Public classSolidPrimitive
Renders filled solid objects and their outlines. Example solids include boxes and ellipsoids. Various effects are supported, such as displaying the solid's silhouette, and hiding the outline of the backside of the solid. In cases where you just want to visualize a solid's fill or outline, a TriangleMeshPrimitive or PolylinePrimitive can be used for reduced overhead.
Public classStereoscopic
Gets the stereoscopic options for all Scenes. To use a particular stereoscopic display mode, ensure that your system supports the feature and that it is enabled.
Public classSurfaceMeshPrimitive
A triangle mesh primitive for meshes on the surface that need to conform to terrain.
Public classTerrainCollection
A collection of TerrainOverlay objects.
Public classTerrainOverlay
A GlobeOverlay which shows terrain.
Public classTerrainOverlayAddCompleteEventArgs
The EventArgs passed to the AddComplete event.
Public classTextBatchPrimitive

Renders one or more strings in the 3D scene.

For best performance, avoid creating lots of batches with only a few strings each. See the Batching Performance topic.

Public classTextBatchPrimitiveOptionalParameters
Optional per-string and per-batch parameters for TextBatchPrimitive. To use optional parameters, create an instance of TextBatchPrimitiveOptionalParameters, then call the desired methods or properties to define per-string and per-batch parameters, and finally pass the object to the text batch's Set or SetPartial method.
Public classTextureMatrix
A 4 by 4 matrix applied to a texture coordinate.
Public classTextureScreenOverlay
A rectangular overlay that can be assigned a texture.
Public classTimeChangedEventArgs
The EventArgs passed to the time changed event.
Public classTimeIntervalDisplayCondition
Defines an inclusive time interval that determines when an object, such as a primitive, is rendered based on the current animation time , SceneManager.Time .
Public classTriangleMeshPrimitive
Renders a triangle mesh in the 3D scene. Examples of triangle meshes include polygons on the globe (e.g. states or countries), terrain and imagery extents, ellipses, and extrusions.
Public classTriangleMeshPrimitiveOptionalParameters
Optional parameters for TriangleMeshPrimitive. To use optional parameters, create an instance of TriangleMeshPrimitiveOptionalParameters, then call the desired methods or properties to define the parameters, and finally pass the object to the triangle mesh's Set method.
Public classVectorPrimitive
Renders a vector in the 3D scene. A vector is defined by a source (given by an ISystem) and a direction (given by an IVector or IPoint). Length is auto-calculated or can be set separately.
Delegates
  DelegateDescription
Public delegateNetworkContextConfigureRequest
A delegate which will be called with a request immediately before it is sent, allowing the request to be modified.
Enumerations
  EnumerationDescription
Public enumerationAntiAliasing
The multisample anti-aliasing (MSAA) options for Scenes. As the level of anti-aliasing increases, performance will generally decrease, but the quality of the anti-aliasing will improve.
Public enumerationBinaryLogicOperation
Binary logic operations that can be used by CompositeDisplayCondition.
Public enumerationBingMapsStyle
A map style for use by Microsoft Bing Maps For Enterprise.
Public enumerationKmlNetworkLinkRefreshMode
Defines the options available for a KmlNetworkLink's RefreshMode property.
Public enumerationKmlNetworkLinkViewRefreshMode
Defines the options available for a KmlNetworkLink's ViewRefreshMode property.
Public enumerationModelUpAxis
When setting the Camera'sAxes, this defines which axis of the axes is up in screen space, where up is from the bottom to the top of the screen.
Public enumerationOutlineAppearance
Possible appearances of an outline. Front lines are lines on front facing geometry and back lines are lines on back facing geometry.
Public enumerationPolylineType
Describes how to interpret positions defining a polyline.
Public enumerationSetHint
An optimization hint optionally provided to primitives to enhance performance for static or dynamic primitives. See the Set Hint topic for selecting an appropriate value.
Public enumerationStereoProjectionMode
The stereoscopic projection mode used for the left and right eye scenes.
Public enumerationStereoscopicDisplayMode
The stereoscopic display mode. To use a particular stereoscopic display mode, ensure that your system supports the feature and that it is enabled.