Share

AcGi Classes

Classes

Class Description
AcGiColorRGB Color class for storing the color with a red, green, and blue component in double-precision format.
AcGiColorRGBA Color class for storing the color with a red, green, and blue components, with alpha shading, in double-precision format.
AcGiCommonDrawAcGiCommonDraw abstracts out the commonality between AcGiViewportDraw and AcGiWorldDraw. This allows graphics routines to be coded in terms of AcGiCommonDraw that will work in either case. To maintain their original signatures, AcGiWorldDraw and AcGiViewportDraw now derive from AcGiCommonDraw.
AcGiContext The context can be thought of as the root object of the regeneration. A single instance of an AcGiContext-derived class serves as a point of reference during a given regen. It is accessible via both AcGiWorldDraw and AcGiViewportDraw and hence is always available to the client.It is guaranteed that the AcGiViewportDraw passed in to viewportDraw() will return the same instance of AcGiContext as that returned by the instance of AcGiWorldDraw passed into the preceding call to worldDraw().
AcGiContext2 The context can be thought of as the root object of the regeneration. A single instance of an AcGiContext-derived class serves as a point of reference during a given regen. It is accessible via both AcGiWorldDraw and AcGiViewportDraw and hence is always available to the client.It is guaranteed that the AcGiViewportDraw passed in to viewportDraw() will return the same instance of AcGiContext as that returned by the instance of AcGiWorldDraw passed into the preceding call to worldDraw().
AcGiContextualColors This class returns color information for objects that can have different colors in different display contexts.
AcGiContextualColors2 Extended contextual color interface allowing for web mesh color traits.
AcGiDistantLightTraits This class represents a distant light source, whose light is emitted in parallel rays, with an infinite distance between the light source and the model. A light passing it's properties to this class should not rely on any default values.
AcGiDrawable
AcGiDrawableEvent AcGiDrawableEvent manages a set of AcGiDrawableReactors and sends notifications to them when certain events occur. Access is through a singleton instance of this class, acgiDrawableEvent. Clients of AcGiDrawableEvent fall into three categories:
  1. Any client interested in making use of AcGiDrawableReactor must add and remove their reactor through addReactor() and removeReactor().
  2. AcGiDrawable-derived clients may use this class to notify graphics systems of modifications and erasures of their graphics.
  3. Graphics systems may use this class to notify interested listeners (e.g. AcGiDrawStream) of regen begin/end events.
AcGiDrawableOverrule AcGiDrawableOverrule overrules a subset of draw related operations that the AcGiDrawable class specifies. It is intended as a base class for clients who want to alter some or all behavior of a given AcGiDrawable-derived class. At the base level, each default implementation simply calls the corresponding method in the target class.
AcGiDrawableReactor AcGiDrawableReactor provides notifications of key AcGiDrawable-related events including begin/end regen, modification, and erasure. Clients who derive from this class will receive these events after registering their reactor with AcGiDrawableEvent.
AcGiDrawableTraits This class allows a drawable to express its graphical traits to the graphics system. AcGiDrawableTraits exposes additional traits that are intended to be consistent for the whole drawable. This is a super set of those traits exposed in AcGiSubEntityTraits, which can be changed during the elaboration of the object. To express this relationship, AcGiDrawableTraits derives from AcGiSubEntityTraits.The AcGiDrawableTraits interface is only available to an object during the setAttributes call made before worldDraw(). Only very specialized drawables will make use of this extension to AcGiSubEntityTraits.
AcGiDrawStream This class extends AcGi to support stream draw functionality, which is derived from AcGiDrawable.
AcGiEdgeData This class is a container for the optional data that can be specified for a set of edges in a mesh or shell graphics primitive. An object of this class is meant to be passed as an argument to the mesh or shell methods of the AcGiWorldGeometry and AcGiViewportGeometry classes.
AcGiFaceData This class is a container for the optional data that can be specified for a set of faces in a mesh or shell graphics primitive. An object of this class is passed as an argument to the mesh and shell methods of the AcGiGeometry classes.
AcGiFill The base class of fill definition classes. This class also represents a solid fill.
AcGiGdiDrawObject Derive from this abstract class to implement behavior related to the ownerDraw() API.
AcGiGenericTexture A generic collection of parameters that represents a procedural texture. Derives from AcGiProceduralTexture.
AcGiGeometryAcGiGeometry abstracts out the commonality between AcGiViewportGeometry and AcGiWorldGeometry. To maintain their original signatures, AcGiWorldGeometry and AcGiViewportGeometry now derive from AcGiGeometry.
AcGiGlyph This class is used to provide the graphics primitives for drawing a glyph during snap operations.
AcGiGradientBackgroundTraits Represents a gradient background to the underlying display system. An instance of this class is populated by AcDbGradientBackground through its SetAttributes method.
AcGiGradientFill Defines a gradient fill.
AcGiGraphicsKernel The Graphics Kernel is an encapulation of the underlying graphics system. Each kernel has its own set of capabilities, and AutoCAD will pick the appropriate kernel to use based on the requested capabilities.
AcGiGroundPlaneBackgroundTraits Represents a ground plane background to the underlying display system.
AcGiHatchPattern Defines the hatch pattern to be filled into the edge loops.
AcGiHatchPatternDefinition Defines a line of the hatch pattern.
AcGiIBLBackgroundTraits This class enables IBL background definitions to be elaborated to AcGi implementations.
AcGiImageBackgroundTraits Represents an image background to the underlying display system. An instance of this class is populated by AcDbImageBackground through its SetAttributes method.
AcGiImageBGRA32 Image class for storing the color with a red, green, and blue components, with alpha shading, in int-precision format.
AcGiImageFileTexture An AcGiImageTexture derived class representing a file based image texture.
AcGiImageTexture An AcGiMaterialTexture derived class representing an image based texture. This class is abstract.
AcGiKernelDescriptor The kernel descriptor contains a set of capabilities that describe a graphics kernel. This class can be used to request a particular kernel, or to report the capabilities of a kernel.
AcGiLightAttenuation Container class for light attenuation properties.
AcGiLightTraits Parent class for interfaces passed to AcDbLight objects in the implementation of setAttributes().The light first down-casts the traits class to the specific type, specified earlier in the addLight() call. It then sets specific light properties. This class derives from AcGiDrawableTraits, as that is what is passed into AcGiDrawable::setAttributes().Lights on frozen layers will not be processed; their light will not illuminate the model.
AcGiLineAttributesAcGiLineAttributes is used to define line attribute overrides for DB entities, for viewports, and for plot style sheets.
AcGiLineAttrUtils Utility functions to convert between different line attributes tables.
AcGiLinetypeEngine This class elaborates a polyline with a linetype applied to it. The elaboration is performed through the AutoCAD graphics interface (AcGi).
AcGiMapper The AcGiMapper class defines mappers. Mappers determine how an AcGiMaterialMap is positioned, sized, and rotated when it is mapped to an object surface. Mappers are described by type, tiling, automatic transform, and transform properties.
AcGiMarbleTexture An AcGiProceduralTexture derived class representing a "marble" procedural texture.
AcGiMaterialColor This class defines material component colors by color method and color value.
AcGiMaterialMap The AcGiMaterialMap class defines material component maps. Maps are described by dimension, source, format, and mapping properties.
AcGiMaterialTexture Base class for all material textures. This class is abstract.
AcGiMaterialTraits The AcGiMaterialTraits class allows material definitions to be expanded to AcGi implementations.
AcGiMentalRayRenderSettingsTraits Represents mental ray specific render settings to the underlying display system.
AcGiNonEntityTraits The AcGiNonEntityTraits class implements empty AcGiDrawableTraits and AcGiSubEntityTraits interfaces to allow non-entity drawables, such as materials, to elaborate their unique properties through AcGiDrawableTraits. This class is not intended for direct use. Instead, it should be used as a base class for non-entity drawable traits.
AcGiParameter This class will be base class of all AcGi parameter classes, it provides the copy-on-write functionality with API/IMP mode.
AcGiPhotographicExposureParameters Container class for all photographic exposure parameters.
AcGiPixelBGRA32 This is a color class for storing the color with a red, green, and blue components, with alpha shading, in an int-precision format.
AcGiPointLightTraits This class represents a point light source, whose light is emitted in all directions.
AcGiPolyline Helper class for storing the parameters used in AcGiGeometry::polyline().
AcGiProceduralTexture This is an abstract class, serving as the base for various procedural material textures.
AcGiRapidRTRenderSettingsTraits Abstract interface class that controls all the rendering settings.
AcGiRenderEnvironmentTraits Represents render environment (fog and environment map) to the underlying display system.
AcGiRenderSettingsTraits Represents render settings to the underlying display system.
AcGiShadowParameters This is a container class for all shadow related light properties.
AcGiSkyBackgroundTraits This class enables sky background definitions to be elaborated to AcGi implementations.
AcGiSkyParameters Container class for all sky-related sun properties.
AcGiSolidBackgroundTraits Represents a solid background to the underlying display system. An instance of class is populated by AcDbSolidBackground through its SetAttributes method.
AcGiSpotLightTraits This class represents a spotlight source. Spotlights emit lights in a specific direction, and have an associated "light cone."
AcGiStandardLightTraits This intermediate class represents a standard, or non-photometric light. It defines properties common to all such lights. A light passing it's properties to this class should not rely on any default values.
AcGiStyleAttributes This class acts as an interface to AcGiStyleAttributes.
AcGiSubEntityTraits This class is used to control the current values of the color, layer, linetype, fill type, and graphics system marker attributes for graphics primitives.Attribute settings are used for all graphics primitives drawn until the setting changed via one of the "set" functions in this class or the end of the current worldDraw() or viewportDraw() execution.For instance, you can set the color attribute to blue and all of the subsequent geometry drawn during the current worldDraw() or viewportDraw() execution appears blue until you set the current color to something else.
AcGiTextEngine This class handles measurement and tessellation of AutoCAD Graphics Interface (AcGi) text entities. AcGi provides the graphics interface for both view-independent and view-dependent elaborations of AcDb entities.
AcGiTextStyle This class is used to set the display attributes of text. It is passed as an argument to one of the AcGiGeometry::text() member functions.
AcGiToneOperatorParameters Container class for all tone parameters.
AcGiTransientManager Abstract base of transient manager. Developers can manage transients through this interface, including addition, deletion, and updating operations.
AcGiVariant This class is used as the basis for the generic data storage used for procedural material definitions.
AcGiVertexData This class is a container for the optional data that can be specified for a set of vertices for meshes and shells. An object of this class is meant to be passed in as an argument to AcGiGeometry::mesh() and AcGiGeometry::shell().
AcGiViewport This class is used to pass back information to the user about the viewing characteristics of the current viewport. These characteristics are useful for generating an optimal graphics representation of the user's object, given the specific viewing configuration of the viewport.For an explanation of coordinate systems, see the ObjectARX Developer’s Guide.
AcGiViewportDraw The AcGiViewportDraw class is a container class that provides the ability to generate different geometry for different viewports. During entity regeneration, an entity's viewportDraw() method is only called if the entity's worldDraw() method returns Adesk::kFalse.The default constructor creates new AcGiViewportGeometry, AcGiSubEntityTraits, and AcGiViewport objects, all of which are accessible via functions in the AcGiViewportDraw object.An object of class AcGiViewportDraw is passed into the AcDbEntity::viewportDraw() function.The AcGiViewportDraw class provides functions that return references to objects of other key AcGi classes. From AcGiViewportDraw, you can obtain objects of the following classes:
AcGiViewportGeometry This class is responsible for inserting geometry into the graphics cache for later display. An object of this class is part of every AcGiViewportDraw object which is passed into an entity's viewportDraw() method. Geometry generated with the methods of this class is displayed only in the viewport the viewportDraw method was called for. If non-viewport-specific graphics are desired, then worldDraw() should be used instead of viewportDraw().This class also exposes the current net block insert transform of the entity.Unless otherwise specified, model coordinates are applied to all geometry in this class. For an explanation of coordinate systems, see... more
AcGiViewportTraits Viewports, on both Model and Layout tabs, now recieve a call to their AcDbViewport::setAttributes() method before AcDbViewport::worldDraw(), similar to entities. This gives viewports the opportunity to pass per-viewport properties to the display and rendering systems. A concrete instance of this interface class is passed to both AcDbViewport::setAttributes() and AcDbViewportTableRecord::setAttributes(). Set calls on this interface should then be made by the viewport object.This class derives from AcGiDrawableTraits.
AcGiVisualStyle This class defines a Visual Style - a collection of visual properties that can be applied to graphical entities.
AcGiVisualStyleTraits This class defines the visual style traits. Derived from AcGiDrawableTraits, this class provides the interfaces to implement for setting and returning the visual style via drawable traits.
AcGiWebLightTraits Extended point light interface allowing for photometric web traits.
AcGiWoodTexture An AcGiProceduralTexture derived class representing a "wood" procedural texture.
AcGiWorldDraw The AcGiWorldDraw class provides functionality that has the ability to generate geometry that doesn't change for different viewports. The geometry may look different in different viewports (due to different zoom factors, viewpoints, etc.), but only one set of geometry is generated, which is then adjusted by AutoCAD for all the different viewports. For generating different geometry in different viewports, see AcGiViewportDraw.The default constructor creates new AcGiWorldGeometry and AcGiSubEntityTraits objects, both of which are accessible via methods in the AcGiWorldDraw object.An object of AcGiWorldDraw is passed into the AcDbEntity::worldDraw() function.The AcGiWorldDraw class provides functions that return references... more
AcGiWorldGeometry This class is responsible for inserting geometry into the graphics cache for later display. An object of this class is part of every AcGiWorldDraw object which is passed into an entity's worldDraw() method when graphics generation is required for the entity. Geometry generated with the methods of this class is used in all viewports. If viewport-specific graphics are desired, then viewportDraw() must be used instead of worldDraw().This class also exposes the current net block insert transform of the entity and allows the user to set the object's extents to some value.Model coordinates are applied to all geometry... more

Was this information helpful?