AGI Components with Insight3D Alpha 2008 r8
AGI.Graphics.Primitives Namespace
Library ReferenceAGI.Graphics.Primitives
Primitives form the building blocks of a 3D scene. Insight3D provides a wide array of primitives, such as simple primitives to draw points and polylines to more advanced primitives for drawing entire models or polygons that conform to terrain. Primitives are optimized for both static and dynamic data, as primitives are commonly positioned and oriented based on computations performed with DGL that change over time. Primitives can be turned on/off based on the viewer's altitude, distance to viewer, or current animation time. Composite primitives group primitives together to create hierarchies of primitives for efficient rendering, layering and aggreation/deaggregation.
Declaration Syntax
C# Visual Basic Visual C++
namespace 
AGI.Graphics.Primitives
Namespace 
AGI.Graphics.Primitives
namespace 
AGI.Graphics.Primitives
Types
All Types Classes Interfaces Enumerations
Icon Type Description
AgGxDirtyList
Keeps track of primitives in the Primitive Manager that have changed position. The Primitive Manager uses the dirty list to batch up its spatial data structures. This is required for a primitive to render correctly.

AgGxDirtyListBoundingVolumeHierarchy
Manages updates to a primitive in a bounding volume hierarchy. This object is created and handled internally. The user will never have to create this.

AgGxDirtyListBoundingVolumeHierarchyClass
Manages updates to a primitive in a bounding volume hierarchy. This object is created and handled internally. The user will never have to create this.

AgGxDirtyListClass
Keeps track of primitives in the Primitive Manager that have changed position. The Primitive Manager uses the dirty list to batch up its spatial data structures. This is required for a primitive to render correctly.

AgGxFont
One or more textures that contain the characters in a font. This is used as input to the text batch primitive to render text using a given font.

AgGxFontClass
One or more textures that contain the characters in a font. This is used as input to the text batch primitive to render text using a given font.

AgGxIndicesOrder
Indicates the order of indices. This is provided to primitive's SetPartial() methods to ensure indices are not unnecessarily sorted.

AgGxMassiveModelRenderStrategy
Rendering algorithms used by the massive model primitive. Some algorithms provide better performance than others depending on the type of model rendered.

AgGxPolylineType
Describes how the vertices in a line should be interpreted.

AgGxPrimitiveComposite
A composite of primitives. This is used to build a hierarchy of primitives and efficiently evaluate their display conditions. It can also be used to construct a scene graph, with culling based on the logical organization, not necessarily spatial.

AgGxPrimitiveCompositeClass
A composite of primitives. This is used to build a hierarchy of primitives and efficiently evaluate their display conditions. It can also be used to construct a scene graph, with culling based on the logical organization, not necessarily spatial.

AgGxPrimitiveManager
Used to add and remove primitives to the scene(s). Primitives must be added to the manager before they will be rendered.

AgGxPrimitiveManagerClass
Used to add and remove primitives to the scene(s). Primitives must be added to the manager before they will be rendered.

AgGxPrimitiveModel
Load and renders Collada (.dae) and MDL (.mdl) models.

AgGxPrimitiveModelClass
Load and renders Collada (.dae) and MDL (.mdl) models.

AgGxPrimitivePointBatch
Renders a set of points with the same pixel size.

AgGxPrimitivePointBatchClass
Renders a set of points with the same pixel size.

AgGxPrimitivePolyline
Render a line of constant width. Commonly used to visualize vector data on the globe and satellite orbits.

AgGxPrimitivePolylineClass
Render a line of constant width. Commonly used to visualize vector data on the globe and satellite orbits.

AgGxPrimitiveRendererMarkerBatch
Renderer for the MarkerBatch Primitive. You do not need to create this object directly. An instance of this class is created implicitly if one or more MarkerBatch primitive are created.

AgGxPrimitiveRendererMarkerBatchClass
Renderer for the MarkerBatch Primitive. You do not need to create this object directly. An instance of this class is created implicitly if one or more MarkerBatch primitive are created.

AgGxPrimitiveRendererShadowVolume
Renderer for the Surface Mesh Primitive. You do not need to create this object directly. An instance of this class is created implicitly if one or more surface mesh primitives are created.

AgGxPrimitiveRendererShadowVolumeClass
Renderer for the Surface Mesh Primitive. You do not need to create this object directly. An instance of this class is created implicitly if one or more surface mesh primitives are created.

AgGxPrimitiveRendererTextBatch
Renderer for the TextBatch Primitive. You do not need to create this object directly. An instance of this class is created implicitly if one or more TextBatch primitive are created.

AgGxPrimitiveRendererTextBatchClass
Renderer for the TextBatch Primitive. You do not need to create this object directly. An instance of this class is created implicitly if one or more TextBatch primitive are created.

AgGxPrimitiveSurfaceMesh
A triangle mesh primitive that conforms to terrain. Its input must always be vertices/positions on the surface.

AgGxPrimitiveSurfaceMeshClass
A triangle mesh primitive that conforms to terrain. Its input must always be vertices/positions on the surface.

AgGxPrimitiveTextBatch
Renders a set of text strings with the same font.

AgGxPrimitiveTextBatchClass
Renders a set of text strings with the same font.

AgGxPrimitiveTextBatchOptionalParameters
Optional initialization parameters for the text batch primitive. To pass an optional parameter to a text batch initialization method, create an instance of this class, set the desired properties, and pass the object to the text batch initialization method.

AgGxPrimitiveTextBatchOptionalParametersClass
Optional initialization parameters for the text batch primitive. To pass an optional parameter to a text batch initialization method, create an instance of this class, set the desired properties, and pass the object to the text batch initialization method.

AgGxPrimitiveTriangleMesh
Renders an indexed triangle list in a solid or translucent color. Used to render things such as countries on the globe.

AgGxPrimitiveTriangleMeshClass
Renders an indexed triangle list in a solid or translucent color. Used to render things such as countries on the globe.

AgGxRenderPass
Describes when a primitive will be rendered during the rendering loop. Some primitives need to be rendered during a certain part of the rendering loop. For example translucent primitives need to be rendered after opaque objects and ideally in a back to front???

AgGxRenderPassHint
When a polyline or point batch primitive is provided per-vertex colors, for example using InitializeWithColors, this hint tells the primitive if all colors are opaque, translucent, or unknown. For best performance, only use unknown when you are unsure if the ???

IAgGxDirtyList
Keeps track of primitives in the Primitive Manager that have changed position. The Primitive Manager uses the dirty list to batch up its spatial data structures. This is required for a primitive to render correctly.

IAgGxFont
One or more textures that contain the characters in a font. This is used as input to the text batch primitive to render text using a given font.

IAgGxPrimitive
Primitives are objects rendered in the 3D scene.

IAgGxPrimitiveAllScenesRenderer
Primitives can implement this interface in the same object as they implement IAgGxPrimitiveRenderer in order to receive pre/post render events that occur once per frame regardless of how many scenes are rendered.

IAgGxPrimitiveComposite
A composite of primitives. This is used to build a hierarchy of primitives and efficiently evaluate their display conditions. It can also be used to construct a scene graph, with culling based on the logical organization, not necessarily spatial.

IAgGxPrimitiveManager
Used add and remove primitives to the scene(s). Primitives must be added to the manager before they will be rendered.

IAgGxPrimitiveModel
Loads and renders Collada (.dae) and MDL (.mdl) models.

IAgGxPrimitivePointBatch
Renders a set of points with the same pixel size.

IAgGxPrimitivePolyline
Renders a line of constant width. Commonly used to visualize vector data on the globe and satellite orbits.

IAgGxPrimitiveRenderer
Primitives can implement this interface in addition to IAgGxPrimitive in order to receive pre/post render events. Primitives are grouped by their renderer. A large number of instances of these will degrade performance.

IAgGxPrimitiveSceneRenderer
Primitives can implement this interface in the same object as they implement IAgGxPrimitiveRenderer in order to receive pre/post render events that occur once per scene.

IAgGxPrimitiveSurfaceMesh
A triangle mesh primitive that conforms to terrain. Its input must always be vertices/positions on the surface.

IAgGxPrimitiveTextBatch
Renders a set of text strings with the same font.

IAgGxPrimitiveTextBatchOptionalParameters
Optional initialization parameters for the text batch primitive. To pass an optional parameter to a text batch initialization method, create an instance of this class, set the desired properties, and pass the object to the text batch initialization method.

IAgGxPrimitiveTriangleMesh
Renders an indexed triangle list in a solid or translucent color. Used to render things such as countries on the globe.

IAgGxPrimitiveWithColor
A primitive with a color and translucency. Most primitives implement this interface, in addition to IAgGxPrimitive. This allows you to create heterogeneous groups of primitives that implement IAgGxPrimitiveWithColor so you can change their color without dyna???