GL Studio C++ Runtime API
Group Class Reference

#include <group.h>

Inheritance diagram for Group:
DisplayObject AttributeChangedNotifier WeakReferenceableMixin WeakReferenceable ComponentBase Gls3DCable GlsClippingGroup GlsKnob GlsLodGroup GlsMimicGroup GlsMultiView GlsMutexGroup GlsOdometer GlsPushButton GlsSortedDrawGroup GlsSwitch GlsThumbWheel Statistics

Classes

class  CompatabilityListItem
 

Public Types

typedef DisplayObject _BaseClass
 Deprecated typedef for the base class.
 
typedef DisplayObject BaseClass
 Typedef for the base class.
 
- Public Types inherited from DisplayObject
enum  AvailableAttributesEnum {
  GLS_ATTRIBUTES_BASIC = 1 , GLS_ATTRIBUTES_DYNAMIC = 2 , GLS_ATTRIBUTES_APPEARANCE = 4 , GLS_ATTRIBUTES_GEOMETRY = 8 ,
  GLS_ATTRIBUTES_SPECIALIZED = 16 , GLS_ATTRIBUTES_ALL = ~0 , GLS_ATTRIBUTES_NONE = 0
}
 

Public Member Functions

virtual InterfaceListTypeGetCppInterfaceDescription (InterfaceListType *addToThisList=NULL) override
 
virtual void GetCppInterfaceDescriptionFree (InterfaceListType *array) override
 
DisplayObjectFindByName (const char *name)
 
virtual DisplayObjectFindByNameSameFrame (const char *name)
 
DisplayObjectFindByName (DisplayObject *obj)
 
DisplayObjectFindByQualifiedName (const char *name)
 
DisplayObjectFindNonRecursive (DisplayObject *obj)
 
DisplayObjectArrayObjects ()
 
const DisplayObjectArrayObjects () const
 
DisplayObjectItem (unsigned int index)
 
bool PerformGroupCullCheck () const
 
void PerformGroupCullCheck (bool mode)
 
bool CullTestChildren () const
 
void CullTestChildren (bool mode)
 
unsigned int Count () const
 
DisplayObjectPtr operator[] (unsigned int index)
 
const DisplayObjectoperator[] (unsigned int index) const
 
DisplayObjectFirstObject ()
 
DisplayObjectLastObject ()
 
bool IsEmpty () const
 
int Position (const DisplayObject *obj) const
 
 Group (int generateInstance=0)
 
 Group (const Group &group, bool generateNames)
 
void InitialGroupCount (unsigned int cnt)
 
virtual ~Group ()
 
virtual void DeleteAllChildren ()
 
virtual void SetAvailableAttributes (unsigned int value) override
 
virtual DisplayObjectCloneObject (bool generateNames=false) override
 
virtual void CopyGeometry (DisplayObject *src) override
 
virtual void CopyProperties (DisplayObject *src) override
 
virtual void Draw () override
 
virtual void PreDraw (const OpenGLMatrices &current, Culler &culler) override
 
virtual bool Hit (float x, float y, float z, float scale, const Vector &directionVector, Vector *collisionPoint) override
 
virtual DisplayObjectPick3D (const Vector &winLoc, const Vector &logicalCoords, float scale, const Vector &directionVector, Vector &collisionWinLoc, const OpenGLMatrices &drawnMatrices) override
 
virtual void Parent (DisplayFrame *par) override
 
void SetPainter (GlsPainter *painter) override
 
virtual void CalculateBoundingBox ()
 
virtual void Location (const Vertex &v) override
 
virtual void Location (float x, float y, float z) override
 
virtual void Translate (float x, float y, float z) override
 
virtual void Translate (float transAmount[]) override
 
virtual void TranslateVertices (float x, float y, float z) override
 
virtual void TranslateVertices (float transAmount[])
 
virtual void GetExtents (float &x, float &y, float &z, float &x1, float &y1, float &z1) override
 
virtual void GetTransformedExtents (Vector &min, Vector &max, const GlsMatrixType &matrix, bool resetMinMax=true) override
 
virtual void Rotate (const Vector &orig, float angle, const Vector &axis) override
 
virtual void Scale (float scale_x, float scale_y)
 
void Scale (float scale_x, float scale_y, float scale_z, Vertex *anchor=NULL, int handle=0) override
 
virtual void InsertObject (DisplayObject *obj, bool reparent=true, bool recalculateBoundingbox=true, int loc=-1)
 
virtual bool DeleteObject (DisplayObject *obj, bool recalculateBoundingbox=true)
 
virtual void ReorderObject (unsigned int oldIndex, unsigned int newIndex)
 
virtual void PushObject (DisplayObject *obj)
 
void DeleteVertexAt (unsigned) override
 
void InsertVertexAt (unsigned) override
 
virtual void SetGroupLocation (const Vertex &v)
 
virtual void GetResources (std::ostream &outstr, GlsResourceFilter *filter=NULL) override
 
virtual void CalculateTextureCoordinates () override
 
virtual void LineWidth (float width) override
 
virtual float LineWidth () override
 
virtual void LineStipplePattern (int pattern) override
 
virtual int LineStipplePattern () override
 
virtual void LineStippleMultiplier (int mult) override
 
virtual int LineStippleMultiplier () override
 
virtual int PolygonMode () override
 
virtual void PolygonMode (int mode) override
 
virtual void PolygonEnd (const int mode) override
 
virtual int PolygonEnd () override
 
virtual void Shading (const int mode) override
 
virtual int Shading () override
 
virtual void DepthTest (unsigned char mode) override
 
virtual int DepthTest () override
 
virtual void AntiAlias (bool mode) override
 
virtual bool AntiAlias () override
 
virtual void AlphaMode (int mode) override
 
virtual int AlphaMode () override
 
virtual void CullBackFace (const bool mode) override
 
virtual bool CullBackFace () override
 
virtual bool LightingEnabled () override
 
virtual void LightingEnabled (bool lighting) override
 
virtual void SetBlendColor (const GlsColor &color) override
 
virtual GlsColor GetBlendColor () override
 
virtual void SetColor (const GlsColor &color) override
 
virtual GlsColor GetColor () override
 
virtual void SetFillColor (const GlsColor &color) override
 
virtual GlsColor GetFillColor () override
 
virtual void TextureRepeat (const int rep) override
 
virtual void TextureMappingTechnique (const int map) override
 
virtual int TextureMappingTechnique () override
 
virtual void TextureMinificationFilter (const int filter) override
 
virtual int TextureMinificationFilter () override
 
virtual void TextureMagnificationFilter (const int filter) override
 
virtual int TextureMagnificationFilter () override
 
virtual void Calculate (double time) override
 
CompatabilityListItemFirst ()
 
CompatabilityListItemLast ()
 
virtual void Parent (DisplayFrame *par)
 
DisplayFrameParent () const
 
virtual const VertexLocation () const
 
virtual void Location (const Vertex &v)
 
virtual void Location (float x, float y, float z)
 
virtual void Rotate (float angle, int axis=Z_AXIS)
 
virtual void Rotate (const Vector &origin, float angle, int axis=Z_AXIS)
 
virtual void Rotate (const Vector &orig, float angle, const Vector &axis)
 
virtual void SetBlendColor (const GlsColor &color)
 
void SetBlendColor (unsigned char color[])
 
void SetBlendColor (unsigned char r, unsigned char g, unsigned char b, unsigned char a)
 
void GetBlendColor (unsigned char color[])
 
void GetBlendColor (unsigned char &r, unsigned char &g, unsigned char &b, unsigned char &a)
 
virtual GlsColor GetBlendColor ()
 
virtual void SetColor (const GlsColor &color)
 
void SetColor (unsigned char c4[])
 
void SetColor (unsigned char r, unsigned char g, unsigned char b, unsigned char a)
 
virtual GlsColor GetColor ()
 
void GetColor (unsigned char c4[])
 
void GetColor (unsigned char &r, unsigned char &g, unsigned char &b, unsigned char &a)
 
void SetFillColor (unsigned char r, unsigned char g, unsigned char b, unsigned char a)
 
void SetFillColor (unsigned char c4[])
 
virtual void SetFillColor (const GlsColor &color)
 
void GetFillColor (unsigned char &r, unsigned char &g, unsigned char &b, unsigned char &a)
 
void GetFillColor (unsigned char c4[])
 
virtual GlsColor GetFillColor ()
 
virtual bool TextureRepeat ()
 
virtual void TextureRepeat (const int rep)
 
- Public Member Functions inherited from DisplayObject
 DisplayObject (float x, float y, float z)
 
 DisplayObject (const DisplayObject &object, const bool generateNames)
 
virtual ~DisplayObject ()
 
void Destroy ()
 
virtual void SetAvailableAttributes (unsigned int value)
 
virtual void AlphaMode (int mode)
 
virtual int AlphaMode ()
 
virtual bool AntiAlias ()
 
virtual void AntiAlias (bool alias)
 
void ApplyTextureSettings (int textureIndex=-1)
 
DistiAttribDictAttributes ()
 
const DistiAttribDictAttributes () const
 
virtual void SetBlendColor (const GlsColor &color)
 
void GetBlendColor (unsigned char color[])
 
void GetBlendColor (unsigned char &r, unsigned char &g, unsigned char &b, unsigned char &a)
 
virtual GlsColor GetBlendColor ()
 
void SetBlendColor (unsigned char color[])
 
void SetBlendColor (unsigned char r, unsigned char g, unsigned char b, unsigned char a)
 
virtual bool BlinkedOff ()
 
virtual bool Blinking ()
 
virtual void Blinking (const bool blink)
 
virtual float BlinkRate ()
 
virtual void BlinkRate (const float rate)
 
const VectorBoundingVolumeCenter () const
 
void BoundingVolumeCenter (const Vector &center)
 
bool BoundingVolumeHit (const Vector &start, const Vector &direction)
 
float BoundingVolumeRadius () const
 
void BoundingVolumeRadius (float radius)
 
virtual void Calculate (double time)
 
void CalculateCollisionPoint (const Vector &pickLoc, const Vector &directionVector, Vector *collisionPoint)
 
virtual void CalculateParentBoundingBox ()
 
virtual void CalculateTextureCoordinates ()
 
bool GetTexturePointTransformationMatrix (GlsMatrixType &world2tex)
 
CallbackMethodCallerBaseCallbackCaller () const
 
void CallbackCaller (CallbackMethodCallerBase *cb)
 
virtual void GetCenter (Vector &center)
 
virtual DisplayObjectCloneObject (bool generateNames=false)=0
 
virtual GlsColor GetColor ()
 
void GetColor (unsigned char c4[])
 
void GetColor (unsigned char &r, unsigned char &g, unsigned char &b, unsigned char &a)
 
virtual void SetColor (const GlsColor &color)
 
void SetColor (unsigned char c4[])
 
void SetColor (unsigned char r, unsigned char g, unsigned char b, unsigned char a)
 
virtual void CopyGeometry (DisplayObject *src)
 
virtual void CopyHierarchyProperties (DisplayObject *src, bool copyName)
 
virtual void CopyProperties (DisplayObject *src)
 
virtual InterfaceListTypeGetCppInterfaceDescription (InterfaceListType *addToThisList=NULL)
 
virtual void GetCppInterfaceDescriptionFree (InterfaceListType *array)
 
virtual void CullBackFace (const bool val)
 
virtual bool CullBackFace ()
 
bool Culled () const
 
void Culled (bool val)
 
bool CullTest (const GlsMatrixType *matrix, const Culler &culler)
 
GlsMatrixTypeDcsMatrix ()
 
GlsMatrixType DcsMatrix () const
 
void DcsMatrix (const GlsMatrixType &matrix)
 
virtual void DeleteVertexAt (unsigned int index)
 
virtual void DeleteVertex (unsigned int indexAfter) final
 
virtual int DepthTest ()
 
virtual void DepthTest (unsigned char zbuf)
 
virtual void Draw ()=0
 
const GlsMatrixTypeDrawMatrix ()
 
bool NeedCalcDrawMatrix ()
 
void DynamicRotate (float angle, int axis)
 
void DynamicRotate (const Vector &v)
 
void DynamicRotate (float angle[])
 
virtual void DynamicRotate (float x, float y, float z)
 
virtual void DynamicRotateRelative (float angle, int axis)
 
virtual float DynamicRotation (int axis)
 
virtual Vector DynamicRotation ()
 
virtual Vector DynamicScale ()
 
virtual void DynamicScale (float x, float y, float z)
 
void DynamicScale (const Vector &scale)
 
virtual void DynamicTranslate (float x, float y, float z, bool relative=false)
 
void DynamicTranslate (const Vertex &amount, bool relative)
 
void DynamicTranslate (const Vector &amount)
 
virtual void DynamicTranslate (float amount, int axis, bool relative=false)
 
virtual float DynamicTranslation (int axis)
 
virtual Vector DynamicTranslation ()
 
DisplayObjectEditor * Editor ()
 
const DisplayObjectEditor * Editor () const
 
void Editor (DisplayObjectEditor *editor)
 
virtual void GetExtents (float &x, float &y, float &z, float &x1, float &y1, float &z1)
 
void GetExtentsDCS (Vector &min, Vector &max)
 
void GetFillColor (unsigned char &r, unsigned char &g, unsigned char &b, unsigned char &a)
 
void GetFillColor (unsigned char c4[])
 
virtual GlsColor GetFillColor ()
 
void SetFillColor (unsigned char r, unsigned char g, unsigned char b, unsigned char a)
 
void SetFillColor (unsigned char c4[])
 
virtual void SetFillColor (const GlsColor &color)
 
virtual void FinishObject ()
 
virtual void GenerateInstanceName ()
 
virtual DisplayObjecthandle (DisplayEvent *ev)
 
virtual bool Hit (float x, float y, float z, float scale, const Vector &directionVector, Vector *collisionPoint)
 
virtual bool HitUtil (float x, float y, float z, float scale, Vertex *vertices, unsigned int vertex_cnt, const Vector &directionVector, Vector *collisionPoint)
 
virtual void InsertVertexAt (unsigned int index)
 
virtual void InsertVertex (unsigned int indexAfter) final
 
char * InstanceName ()
 
const char * InstanceName () const
 
void InstanceName (const char *name)
 
virtual bool LightingEnabled ()
 
virtual void LightingEnabled (bool lighting)
 
virtual int LineStippleMultiplier ()
 
virtual void LineStippleMultiplier (int mult)
 
virtual int LineStipplePattern ()
 
virtual void LineStipplePattern (int pattern)
 
virtual float LineWidth ()
 
virtual void LineWidth (float width)
 
virtual const VertexLocation () const
 
virtual void Location (const Vertex &v)
 
virtual void Location (float x, float y, float z)
 
virtual void GetLocation (Vertex &v)
 
virtual void GetLocation (float &x, float &y, float &z)
 
float X () const
 
float Y () const
 
float Z () const
 
void X (const float x)
 
void Y (const float y)
 
void Z (const float z)
 
virtual int MaterialIndex ()
 
virtual void MaterialIndex (int index)
 
virtual DynamicArray< int > & MaterialIndices ()
 
virtual void MaterialIndices (DynamicArray< int > indices)
 
GlsMatrixTypeModelMatrix ()
 
bool NeedCalculate ()
 
VectorNormals ()
 
virtual void SetNormals (unsigned int nPoints, Vector *vertices)
 
void VaSetNormals (unsigned int nPoints,...)
 
unsigned int NumberOfVertices () const
 
virtual float ObjectDepth ()
 
virtual float ObjectHeight ()
 
virtual float ObjectWidth ()
 
virtual void SetOrigin (const Vertex &vert)
 
virtual void Parent (DisplayFrame *par)
 
DisplayFrameParent () const
 
virtual void ParentGroup (Group *group)
 
GroupParentGroup () const
 
virtual DisplayObjectPick3D (const Vector &winLoc, const Vector &logicalCoords, float scale, const Vector &directionVector, Vector &collisionWinLoc, const OpenGLMatrices &drawnMatrices)
 
unsigned char Pickable ()
 
virtual void Pickable (unsigned char pick)
 
virtual int PolygonEnd ()
 
virtual void PolygonEnd (const int end)
 
virtual int PolygonMode ()
 
virtual void PolygonMode (int mode)
 
virtual void PreDraw (const OpenGLMatrices &current, Culler &culler)
 
GlsMatrixTypeProjMatrix ()
 
virtual void ReallocateVertices (unsigned int numVertices, bool initializeNew, bool copyOld)
 
virtual float RelativeAngle (const float x, const float y)
 
virtual DistiAttributeBaseResource (const char *name)
 
virtual void GetResources (std::ostream &outstr, GlsResourceFilter *filter=NULL)
 
void RestoreAlpha ()
 
void RestoreAntiAlias ()
 
void RestoreLighting ()
 
void RestoreLineStyle ()
 
const VertexRotationPoint () const
 
virtual void RotationPoint (const Vertex &v)
 
virtual void RotationPoint (float x, float y, float z)
 
virtual void GetRotationPoint (Vertex &v)
 
virtual void Rotate (float angle, int axis=Z_AXIS)
 
virtual void Rotate (const Vector &origin, float angle, int axis=Z_AXIS)
 
virtual void Rotate (const Vector &orig, float angle, const Vector &axis)
 
void SaveMatrices ()
 
virtual void Scale (float px, float py, float pz, Vertex *anchor, int handleBar=0)
 
void Set (int spec,...)
 
bool SetupAlpha ()
 
bool SetupAntiAlias ()
 
void SetupDepthTest ()
 
void SetupLighting ()
 
bool SetupLineStyle ()
 
void SetupPolyDrawStyle ()
 
void SetupShading ()
 
bool SetupTexture ()
 
virtual int Shading ()
 
virtual void Shading (const int shading)
 
virtual void GetTransformedExtents (Vector &min, Vector &max, const GlsMatrixType &matrix, bool resetMinMax=true)
 
virtual void SetTexCoords (unsigned int nPoints, Vector *new_tex_coord, bool isVectorArray=true)
 
void SetTexCoords (unsigned int nPoints, Vertex *new_tex_coord)
 
void VaSetTexCoords (unsigned int nPoints,...)
 
VectorTextureCoordinates ()
 
VectorGetTextureCoordinates ()
 
virtual int TextureIndex ()
 
virtual void TextureIndex (int textureIndex)
 
virtual VectorGetTexturePoints ()
 
virtual bool TextureRepeat ()
 
virtual void TextureRepeat (const int rep)
 
virtual int TextureMappingTechnique ()
 
virtual void TextureMappingTechnique (const int map)
 
virtual int TextureMagnificationFilter ()
 
virtual void TextureMagnificationFilter (const int filter)
 
virtual int TextureMinificationFilter ()
 
virtual void TextureMinificationFilter (const int filter)
 
virtual void Translate (float tr[])
 
virtual void Translate (float x, float y, float z)
 
virtual void TranslateVertices (float x, float y, float z)
 
virtual void UpdateBoundingVolume ()
 
void * UserData () const
 
void UserData (void *data)
 
virtual void SetVertexColor (unsigned int vertex, unsigned char CurrentFillColor[])
 
virtual VertexVertices ()
 
virtual void SetVertices (unsigned int nPoints, Vertex *vertices)
 
void VaSetVertices (unsigned int nPoints,...)
 
int * ViewMatrix ()
 
bool Visible () const
 
bool Visibility () const
 
virtual void Visibility (const bool vis)
 
virtual Vector WorldRotationPoint ()
 
virtual void WorldRotationPoint (const Vector &vert)
 
virtual Vertex WorldVertex (unsigned int i)
 
virtual void WorldVertex (unsigned int i, const Vertex &vert)
 
bool LogicalToWindow (const Vector &logical, Vector &winLoc, const OpenGLMatrices &alternateMatrices=OpenGLMatrices())
 
bool WindowToLogical (const Vector &winLoc, Vector &logical, Vector *directionVector=NULL, const OpenGLMatrices &alternateMatrices=OpenGLMatrices())
 
void LogicalToDCS (Vector logicalPoint, Vector &objectLocal, const Vector *directionVector, const Vector &planeNormal=Vector(0, 0, 1), const Vector &planePoint=Vector(), const GlsMatrixType *dcsMatrix=NULL)
 
void DCSToLogical (Vector dcsPoint, Vector &logicalPoint, const GlsMatrixType *dcsMatrix=NULL)
 
virtual bool GetPlaneVectorPoints (Vertex &p1, Vertex &p2, Vertex &p3, Vertex &planeVector)
 
void NotifyAttributeChanged (const AttributeName &name) override
 
virtual void SetPainter (GlsPainter *painter)
 
virtual GlsPainterGetPainter ()
 
void InvalidatePainter ()
 
virtual bool IsVisibleInScene (const DisplayObject *obj=NULL) const
 
- Public Member Functions inherited from AttributeChangedNotifier
virtual void NotifyAttributeChanged (const AttributeName &name)=0
 
virtual ~AttributeChangedNotifier ()
 
- Public Member Functions inherited from WeakReferenceableMixin
void AddWeakReference (WeakReference *weakRef) override
 
void NotifyWeakReferenceDestroyed (WeakReference *ref) override
 
virtual void AddWeakReference (WeakReference *weakRef)=0
 
virtual void NotifyWeakReferenceDestroyed (WeakReference *weakReference)=0
 

Static Public Member Functions

static DisplayObjectCreateInstance ()
 
- Static Public Member Functions inherited from DisplayObject
static InterfaceListTypeStaticGetCppInterfaceDescription (InterfaceListType *addToThisList=NULL)
 
static void UseManualBlinkElapsedTime (bool useManualTime)
 
static void SetManualBlinkElapsedTime (double elapsedTime)
 

Public Attributes

DynamicArray< CompatabilityListItem_compatList
 Used for GL Studio 2.1 compatibility only.
 

Protected Member Functions

virtual void AddAvailableAttributes (unsigned int availableAttributes)
 
virtual void GrowBoundingBox (DisplayObject *obj)
 
- Protected Member Functions inherited from DisplayObject
virtual void VaListSetVertices (unsigned int nPoints, va_list args)
 
virtual void VaListSetNormals (unsigned int nPoints, va_list args)
 
virtual void VaListSetTexCoords (unsigned int nPoints, va_list args)
 
virtual int ColorMaterialMode ()
 
void AllocateModelMatrix ()
 
bool ApplyDynamicRotation ()
 
virtual void CalcDrawMatrix ()
 
void CalcDrawMatrixIfExists ()
 
virtual void CalculateMatrices (const OpenGLMatrices &newMatrices)
 
bool InsideVertexExtents (float x, float y, unsigned int nVerts, Vertex *verts, float tolerance)
 
void LastDrawMatrixLocation (const Vertex &loc)
 
const VertexLastDrawMatrixLocation ()
 
void NeedCalculate (bool val)
 
void PickSetup (float x, float y, float z, Vertex *vertices, unsigned int vertex_cnt, const Vector &directionVector)
 
void PickCleanup (Vertex *vertices, unsigned int vertex_cnt)
 
virtual void SetValue (int spec, va_list &args)
 
int GetApplicableTextureIndex ()
 
int GetApplicableTextureRepeat ()
 
- Protected Member Functions inherited from WeakReferenceableMixin
 WeakReferenceableMixin ()
 
virtual ~WeakReferenceableMixin ()
 

Protected Attributes

DisplayObjectArray _objects
 The objects contained in this group.
 
- Protected Attributes inherited from DisplayObject
int _alphaMode
 
bool _antiAlias
 
bool _attributesAdded
 
bool _blinking
 
float _blinkRate
 
GlsColor _color
 
bool _cullBackFace
 
GlsMatrixType _dcsMatrix
 
unsigned char _depthTest
 
GlsMatrixType_drawMatrix
 
bool _needCalcDrawMatrix
 True if CalcDrawMatrix() needs to be called on this object.
 
unsigned char _lineStippleMultiplier
 
unsigned short _lineStipplePattern
 
float _lineWidth
 
Vertex _location
 
DynamicArray< int > _materialIndices
 List of materials associated with this object.
 
GlsMatrixType_modelMatrix
 
Vector_normals
 
unsigned int _nTex_vertices
 
unsigned int _nVertices
 
unsigned char _polygonEnd
 
unsigned char _polygonMode
 
GlsMatrixType_projMatrix
 
unsigned char _shading
 
Vector_texCoord
 
GlsColor _textureBlendColor
 
int _textureIndex
 
unsigned char _textureMagFilter
 
unsigned char _textureMinFilter
 
unsigned char _textureMap
 
Vector _texturePoints [4]
 
unsigned char _textureRepeat
 
void * _userData
 
Vertex_vertices
 
int * _viewMatrix
 
bool _visible
 
- Protected Attributes inherited from WeakReferenceableMixin
DynamicArray< WeakReference * > * _weakRefs
 

Friends

class GroupEditor
 

Detailed Description

The Group class. Implements groups of objects

Constructor & Destructor Documentation

◆ Group() [1/2]

Group ( int  generateInstance = 0)
explicit

Construct a new group.

Parameters
generateInstanceWhether or not to generate an instance name for this group

◆ Group() [2/2]

Group ( const Group group,
bool  generateNames 
)

Copy construct a new group, performing a "deep copy" by cloning objects in the group.

Parameters
groupThe group to clone.
generateNamesWhether or not to generate a new instance name for this group and its children.

◆ ~Group()

virtual ~Group ( )
virtual

Destroy a group object

Member Function Documentation

◆ AddAvailableAttributes()

virtual void AddAvailableAttributes ( unsigned int  availableAttributes)
protectedvirtual

Helper method for child classes of group that don't want to call Group::SetAvailableAttributes.

Parameters
availableAttributesBit field for attribute types to create.

◆ AlphaMode() [1/2]

virtual int AlphaMode ( )
overridevirtual

Get the alpha mode for this object

Returns
Whether or not alpha testing or blending is enabled when drawing
See also
AlphaMode_e

Reimplemented from DisplayObject.

Reimplemented in Gls3DCable, and GlsRSOWrapper.

◆ AlphaMode() [2/2]

virtual void AlphaMode ( int  mode)
overridevirtual

Set the alpha mode state for this object

Parameters
modewhich alpha mode to use when drawing
See also
AlphaMode_e

Reimplemented from DisplayObject.

Reimplemented in Gls3DCable, and GlsRSOWrapper.

◆ AntiAlias() [1/2]

virtual bool AntiAlias ( )
overridevirtual

Get the anti aliasing state this object

Returns
Whether or not this object will be drawn antialiased

Reimplemented from DisplayObject.

Reimplemented in Gls3DCable, and GlsRSOWrapper.

◆ AntiAlias() [2/2]

virtual void AntiAlias ( bool  alias)
overridevirtual

Set the anti aliasing state for this object

Parameters
aliasWhether or not to perform anti aliasing

Reimplemented from DisplayObject.

Reimplemented in GlsRSOWrapper, and Gls3DCable.

◆ Calculate()

virtual void Calculate ( double  time)
overridevirtual

Call the Calculate method for all children

Parameters
timeThe current time

Reimplemented from DisplayObject.

Reimplemented in SplashDisplay, Gls3DCable, GlsMutexGroup, and GlsRSOWrapper.

◆ CalculateBoundingBox()

virtual void CalculateBoundingBox ( )
virtual

Recalculates the 3D bounding volume of the object, setting the Group's vertices. Affects the results of GetExtents(). This should be called when a Group's children are modified.

Reimplemented in Gls3DCable, ComponentBase, and GlsRSOWrapper.

◆ CalculateTextureCoordinates()

virtual void CalculateTextureCoordinates ( )
overridevirtual

Recalculates the texture coordinates for the object based on the TexturePoints.

Reimplemented from DisplayObject.

Reimplemented in Gls3DCable.

◆ CloneObject()

virtual DisplayObject * CloneObject ( bool  generateNames = false)
overridevirtual

Copy+Create operation in one method. In derived classes, this method will create a new instance of the derived class and then copy the object into the new instance. The cut,copy,paste and undo operations use this method.

Parameters
generateNamesWhether or not to generate new names for cloned objects
Returns
A new object, identical to the original, except for the instance name

Implements DisplayObject.

Reimplemented in SplashDisplay, Gls3DCable, GlsPushButton, GlsClippingGroup, GlsKnob, GlsMimicGroup, GlsMultiView, GlsMutexGroup, GlsOdometer, GlsSwitch, GlsThumbWheel, ComponentBase, and GlsRSOWrapper.

◆ CopyGeometry()

virtual void CopyGeometry ( DisplayObject src)
overridevirtual

Copies the geometry information from one object to another. Used by the undo mechanism to allow user to undo a geometry change.

Parameters
srcThe object to copy geometry from

Reimplemented from DisplayObject.

Reimplemented in ComponentBase, and GlsRSOWrapper.

◆ CopyProperties()

virtual void CopyProperties ( DisplayObject src)
overridevirtual

Copies the attributes except for geometry attributes from one object to another. Used by the undo mechanism to undo most attribute change operations.

Parameters
srcThe object to copy properties from

Reimplemented from DisplayObject.

Reimplemented in Gls3DCable, GlsPushButton, GlsClippingGroup, GlsKnob, GlsMimicGroup, GlsMultiView, GlsMutexGroup, GlsOdometer, GlsSwitch, GlsThumbWheel, ComponentBase, and GlsRSOWrapper.

◆ Count()

unsigned int Count ( ) const
inline
Returns
The number of objects in this group. (Non recursive count)

◆ CreateInstance()

static DisplayObject * CreateInstance ( )
static
Returns
A pointer to a new Group object.

◆ CullBackFace() [1/2]

virtual bool CullBackFace ( )
overridevirtual

Returns if back faces should be removed

Returns
True if backfaces are removed

Reimplemented from DisplayObject.

Reimplemented in Gls3DCable, and GlsRSOWrapper.

◆ CullBackFace() [2/2]

virtual void CullBackFace ( const bool  val)
overridevirtual

Sets if back faces should be removed

Parameters
valTrue if back faces should be removed

Reimplemented from DisplayObject.

Reimplemented in Gls3DCable, and GlsRSOWrapper.

◆ CullTestChildren() [1/2]

bool CullTestChildren ( ) const
inline
Returns
Whether or not this group's children should be considered for culling.

◆ CullTestChildren() [2/2]

void CullTestChildren ( bool  mode)

Sets whether or not this group's children should be considered for culling.

Parameters
modeThe new cull mode to set.

◆ DeleteAllChildren()

virtual void DeleteAllChildren ( )
virtual

Actually delete all the children of the group. This does a recursive "delete" on all the children. This does NOT just remove them from the group.

Reimplemented in ComponentBase.

◆ DeleteObject()

virtual bool DeleteObject ( DisplayObject obj,
bool  recalculateBoundingbox = true 
)
virtual

Removes the specified object from this group. Does not delete it.

Parameters
objThe display object to removed
recalculateBoundingbox
Returns
True if the object was found and removed from this group

◆ DeleteVertexAt()

void DeleteVertexAt ( unsigned  )
inlineoverride

It is not possible to modify a Group's Vertices. Overriden to disable.

◆ DepthTest() [1/2]

virtual int DepthTest ( )
overridevirtual

Get the z buffering state for this object

Returns
Whether or not this object will be draw Z buffered

Reimplemented from DisplayObject.

Reimplemented in Gls3DCable, and GlsRSOWrapper.

◆ DepthTest() [2/2]

virtual void DepthTest ( unsigned char  zbuf)
overridevirtual

Set the z buffering state for this object

Parameters
zbufWhether or not to perform z buffering

Reimplemented from DisplayObject.

Reimplemented in Gls3DCable, and GlsRSOWrapper.

◆ Draw()

virtual void Draw ( )
overridevirtual

Draws this object on the current display frame (_parent member). Pure virtual method

Implements DisplayObject.

Reimplemented in Gls3DCable, GlsPushButton, GlsClippingGroup, GlsKnob, GlsLodGroup, GlsMimicGroup, GlsMultiView, GlsMutexGroup, GlsOdometer, GlsSortedDrawGroup, GlsSwitch, GlsThumbWheel, ComponentBase, GlsRSOWrapper, and Statistics.

◆ FindByName() [1/2]

DisplayObject * FindByName ( const char *  name)

Finds a pointer to the display object in the group, using the object's instance name as a key.

Note
If there are multiple DisplayObjects within the group with the same name, only the first instance will be found. This can be an issue if a sub-component contains objects with the same name as the object you are searching for.
Parameters
nameInstance name of the object to find
Returns
A pointer to the object if it is in the group, otherwise NULL

◆ FindByName() [2/2]

DisplayObject * FindByName ( DisplayObject obj)
inline

Finds a pointer to the display object in the group, using the object's instance name as a key.

Parameters
objPointer to the object to find
Returns
A pointer to the object if it is in the group, otherwise NULL

◆ FindByNameSameFrame()

virtual DisplayObject * FindByNameSameFrame ( const char *  name)
virtual

Finds a pointer to the display object in the group, using the object's instance name as a key. This does not desend into components, as they are different frames with possibility for duplicate names as the current frame.

Parameters
nameInstance name of the object to find
Returns
A pointer to the object if it is in the group, otherwise NULL

Reimplemented in ComponentBase.

◆ FindByQualifiedName()

DisplayObject * FindByQualifiedName ( const char *  name)

Finds a pointer to the DisplayObject in the group using a qualified instance name. This allows precise searches for an object contained within a sub-component. (e.g. "cockpit.altimeter.needle"). To find an object in the same DisplayFrame use just the instance name. (e.g. "cockpit") The dot denotes crossing of DisplayFrame boundaries.

See also
GetQualifiedInstanceName
Parameters
nameQualified instance name of the object to find
Returns
A pointer to the object if it is in the group, otherwise NULL

◆ FindNonRecursive()

DisplayObject * FindNonRecursive ( DisplayObject obj)

Finds a pointer to the display object in the group, using the object's address as a key

Parameters
objPointer to the object to find
Returns
A pointer to the object if it is in the group, otherwise NULL

◆ First()

CompatabilityListItem * First ( )
Returns
The first object in this group

◆ FirstObject()

DisplayObject * FirstObject ( )
Returns
pointer to the first element in the group, or NULL if it doesn't exist

◆ GetBlendColor() [1/4]

virtual GlsColor GetBlendColor ( )
virtual

Gets the texture blend color for the object

Returns
Returns the current texture blend color.

Reimplemented from DisplayObject.

◆ GetBlendColor() [2/4]

virtual GlsColor GetBlendColor ( )
overridevirtual

Gets the texture blend color for the object

Returns
Returns the current texture blend color.

Reimplemented from DisplayObject.

Reimplemented in Gls3DCable, and GlsRSOWrapper.

◆ GetBlendColor() [3/4]

void GetBlendColor ( unsigned char &  r,
unsigned char &  g,
unsigned char &  b,
unsigned char &  a 
)

Gets the texture blend color for the object

Parameters
rReturns red color component (0-255 range)
gReturns Green color component (0-255 range)
bReturns Blue color component (0-255 range)
aReturns Alpha color component (0-255 range) NOTE: Not Virtual. Simply calls void GetBlendColor(const GlsColor& color);

◆ GetBlendColor() [4/4]

void GetBlendColor ( unsigned char  color[])

Gets the texture blend color for the object

Parameters
colorFilled in with RGBA (0-255 range) NOTE: Not Virtual. Simply calls void GetBlendColor(const GlsColor& color);

◆ GetColor() [1/4]

virtual GlsColor GetColor ( )
virtual

Gets the color for the object outline

Returns
The outline color

Reimplemented from DisplayObject.

◆ GetColor() [2/4]

virtual GlsColor GetColor ( )
overridevirtual

Gets the color for the object outline

Returns
The outline color

Reimplemented from DisplayObject.

Reimplemented in Gls3DCable, and GlsRSOWrapper.

◆ GetColor() [3/4]

void GetColor ( unsigned char &  r,
unsigned char &  g,
unsigned char &  b,
unsigned char &  a 
)

Gets the RGBA color for the object outline

Parameters
rGets the red component (0-255 range) of the line color for the object
gGets the blue component (0-255 range) of the line color for the object
bGets the green component (0-255 range) of the line color for the object
aGets the alpha component (0-255 range) of the line color for the object NOTE: Not Virtual. Simply calls void GetColor(const GlsColor& color)

◆ GetColor() [4/4]

void GetColor ( unsigned char  c4[])

Gets the RGBA color for the object outline

Parameters
c4Gets the RGBA line color (0-255 range) for the object NOTE: Not Virtual. Simply calls void GetColor(const GlsColor& color)

◆ GetCppInterfaceDescription()

virtual InterfaceListType * GetCppInterfaceDescription ( InterfaceListType addToThisList = NULL)
overridevirtual

Get the details of the Cpp Interface The actual interface is exposed in compiled code.

Parameters
addToThisListIf not NULL this list will be added to then returned. If NULL a new list will be created.
Returns
A templated list.
The caller must call the corresponding free method to safely free the memory.

Reimplemented from DisplayObject.

Reimplemented in SplashDisplay, Gls3DCable, GlsPushButton, GlsClippingGroup, GlsKnob, GlsMimicGroup, GlsMultiView, GlsMutexGroup, GlsOdometer, GlsSwitch, GlsThumbWheel, ComponentBase, and GlsRSOWrapper.

◆ GetCppInterfaceDescriptionFree()

virtual void GetCppInterfaceDescriptionFree ( InterfaceListType array)
overridevirtual

Frees the memory allocated by a previous call to GetCppInterfaceDescription

Parameters
arrayMemory allocated by a previous call to GetCppInterfaceDescription

Reimplemented from DisplayObject.

Reimplemented in SplashDisplay, Gls3DCable, GlsPushButton, GlsClippingGroup, GlsKnob, GlsMimicGroup, GlsMultiView, GlsMutexGroup, GlsOdometer, GlsSwitch, GlsThumbWheel, ComponentBase, and GlsRSOWrapper.

◆ GetExtents()

virtual void GetExtents ( float &  x,
float &  y,
float &  z,
float &  x1,
float &  y1,
float &  z1 
)
overridevirtual

Figure out the static extents for the object. Used by the editor as part of the pick operation and for figuring out the size of groups.

Parameters
xGets the minimum x extent
yGets the minimum y extent
zGets the minimum z extent
x1Gets the maximum x extent
y1Gets the maximum y extent
z1Gets the maximum z extent

Reimplemented from DisplayObject.

Reimplemented in ComponentBase, and GlsRSOWrapper.

◆ GetFillColor() [1/4]

virtual GlsColor GetFillColor ( )
virtual

Gets the fill color of the object

Returns
The fill color

Reimplemented from DisplayObject.

◆ GetFillColor() [2/4]

virtual GlsColor GetFillColor ( )
overridevirtual

Gets the fill color of the object

Returns
The fill color

Reimplemented from DisplayObject.

Reimplemented in Gls3DCable.

◆ GetFillColor() [3/4]

void GetFillColor ( unsigned char &  r,
unsigned char &  g,
unsigned char &  b,
unsigned char &  a 
)

Gets the RGBA color for filling the object

Parameters
rGets the red component (0-255 range) of the fill color for the object
gGets the blue component (0-255 range) of the fill color for the object
bGets the green component (0-255 range) of the fill color for the object
aGets the alpha component (0-255 range) of the fill color for the object NOTE: NOT Virtual Simply calls GlsColor GetFillColor()

◆ GetFillColor() [4/4]

void GetFillColor ( unsigned char  c4[])

Gets the RGBA color for filling the object

Parameters
c4Gets the RGBA fill color (0-255 range) for the object NOTE: NOT Virtual. Simply calls GlsColor GetFillColor()

◆ GetResources()

virtual void GetResources ( std::ostream &  outstr,
GlsResourceFilter filter = NULL 
)
overridevirtual

Writes the resources (attributes) of this object to the specified stream. The output of this method can be controlled by the GlsResourceFilter. Note that if filter->NamesOnly() is false (the default), then only resources that can return a value will appear in the list.

See also
GlsResourceFilter
DistiAttributeProperty
Parameters
outstrThe stream to write to
filterThe filter to determine what to write

Reimplemented from DisplayObject.

Reimplemented in Gls3DCable, GlsMultiView, ComponentBase, and GlsRSOWrapper.

◆ GetTransformedExtents()

virtual void GetTransformedExtents ( Vector min,
Vector max,
const GlsMatrixType matrix,
bool  resetMinMax = true 
)
overridevirtual

Determines the static extents of the geometry projected to the XY plane of an arbirary coordinate system.

Parameters
minReturns the minimum values found in the traversal
maxReturns the maximum values found in the traversal
matrixTransformation matrix from logical coordinates to the coordinate system to determine the extents in.
resetMinMaxNormally not specified by user. Should be true for the initial call.

Reimplemented from DisplayObject.

Reimplemented in ComponentBase, and GlsRSOWrapper.

◆ GrowBoundingBox()

virtual void GrowBoundingBox ( DisplayObject obj)
protectedvirtual

Grow bounding box to accomodate new object

Parameters
objThe new object in the group
Precondition
obj Must already be added to the group

◆ Hit()

virtual bool Hit ( float  x,
float  y,
float  z,
float  scale,
const Vector directionVector,
Vector collisionPoint 
)
overridevirtual

Determines if the object is hit by a pick ray starting at (x,y,z) and pointing towards directionVector in object logical coordinate system. If Pickable() == PICK_BEST it will return the closest point that was hit, otherwise it returns the first point that was hit. This method should not pick points behind the viewer.

Parameters
xX coordinate of pick ray start in logical coordinates.
yY coordinate of pick ray start in logical coordinates.
zZ coordinate of pick ray start in logical coordinates.
scaleThe scale factor of the window. Affects picking of outlines. Standard value is 1.0.
directionVectorThe direction of the pick ray.
collisionPointIf this method returns true, this Vector will contain the location that was hit in logical coordinates.
Returns
boolean indicating if the object was hit by the pick ray.

Reimplemented from DisplayObject.

Reimplemented in Gls3DCable.

◆ InitialGroupCount()

void InitialGroupCount ( unsigned int  cnt)

Sets the initial number of entries in a group

Parameters
cntThe initial number of entries

◆ InsertObject()

virtual void InsertObject ( DisplayObject obj,
bool  reparent = true,
bool  recalculateBoundingbox = true,
int  loc = -1 
)
virtual

Adds the specified object into the group, at the end of the list

Parameters
objA pointer to the object to add
reparentWhether or not the object parent should be set to this group
recalculateBoundingboxWhether or not to recalculate the bounding box
locWhere to insert it (defaults to -1 which means at the end of the list)

Reimplemented in GlsLodGroup, and GlsMimicGroup.

◆ InsertVertexAt()

void InsertVertexAt ( unsigned  )
inlineoverride

It is not possible to modify a Group's Vertices. Overriden to disable.

◆ IsEmpty()

bool IsEmpty ( ) const
inline
Returns
True if this group is empty

◆ Item()

DisplayObject * Item ( unsigned int  index)

Returns the DisplayObject at the given group index

Parameters
indexThe index of the object to find
Returns
A pointer to the object if it is in the group, otherwise NULL

◆ Last()

Returns
The last object in this group

◆ LastObject()

DisplayObject * LastObject ( )
Returns
pointer to the last element in the group, or NULL if it doesn't exist

◆ LightingEnabled() [1/2]

virtual bool LightingEnabled ( )
overridevirtual
Returns
The current lighting state.

Reimplemented from DisplayObject.

Reimplemented in Gls3DCable, and GlsRSOWrapper.

◆ LightingEnabled() [2/2]

virtual void LightingEnabled ( bool  lighting)
overridevirtual

Sets the lighting state.

Parameters
lightingThe new lighting state.

Reimplemented from DisplayObject.

Reimplemented in Gls3DCable, and GlsRSOWrapper.

◆ LineStippleMultiplier() [1/2]

virtual int LineStippleMultiplier ( )
overridevirtual

Get the line stipple multiplier for this object

Returns
The line stipple multiplier for this object

Reimplemented from DisplayObject.

Reimplemented in Gls3DCable, and GlsRSOWrapper.

◆ LineStippleMultiplier() [2/2]

virtual void LineStippleMultiplier ( int  mult)
overridevirtual

Set the line stipple multiplier for this object

Parameters
multThe new line stipple pattern

Reimplemented from DisplayObject.

Reimplemented in Gls3DCable, and GlsRSOWrapper.

◆ LineStipplePattern() [1/2]

virtual int LineStipplePattern ( )
overridevirtual

Get the line stipple pattern for this object

Returns
The line stipple pattern for this object

Reimplemented from DisplayObject.

Reimplemented in Gls3DCable, and GlsRSOWrapper.

◆ LineStipplePattern() [2/2]

virtual void LineStipplePattern ( int  pattern)
overridevirtual

Set the line stipple pattern for this object

Parameters
patternThe new line stipple pattern

Reimplemented from DisplayObject.

Reimplemented in Gls3DCable, and GlsRSOWrapper.

◆ LineWidth() [1/2]

virtual float LineWidth ( )
overridevirtual

Gets the width of lines in the object.

Returns
The line width of the object in logical units

Reimplemented from DisplayObject.

Reimplemented in Gls3DCable, and GlsRSOWrapper.

◆ LineWidth() [2/2]

virtual void LineWidth ( float  width)
overridevirtual

Sets the width of lines in the object.

Parameters
widthThe new line width of the object in logical units

Reimplemented from DisplayObject.

Reimplemented in Gls3DCable, and GlsRSOWrapper.

◆ Location() [1/5]

virtual const Vertex & Location ( ) const
virtual
Returns
The location of the origin of the object Lifetime is guaranteed to coincide with the DisplayObject's lifetime.

Reimplemented from DisplayObject.

◆ Location() [2/5]

virtual void Location ( const Vertex v)
virtual

Sets the location of the origin of the object

Parameters
vThe new location

Reimplemented from DisplayObject.

◆ Location() [3/5]

virtual void Location ( const Vertex v)
overridevirtual

Sets the location of the origin of the object

Parameters
vThe new location

Reimplemented from DisplayObject.

Reimplemented in ComponentBase, and ComponentBase.

◆ Location() [4/5]

virtual void Location ( float  x,
float  y,
float  z 
)
virtual

Sets the location of the origin of the object

Parameters
xX Coordinate of the new location
yY Coordinate of the new location
zZ Coordinate of the new location

Reimplemented from DisplayObject.

◆ Location() [5/5]

virtual void Location ( float  x,
float  y,
float  z 
)
overridevirtual

Sets the location of the origin of the object

Parameters
xX Coordinate of the new location
yY Coordinate of the new location
zZ Coordinate of the new location

Reimplemented from DisplayObject.

Reimplemented in ComponentBase, and ComponentBase.

◆ Objects() [1/2]

DisplayObjectArray & Objects ( )
inline
Returns
A reference to the object array for this group.

◆ Objects() [2/2]

const DisplayObjectArray & Objects ( ) const
inline
Returns
A const reference to the object array for this const group.

◆ operator[]() [1/2]

DisplayObjectPtr operator[] ( unsigned int  index)
inline

Overload of the array index operator to allow you to treat this Group as an array of objects.

Parameters
indexThe object index to be returned.
Returns
A pointer to the requested object.

◆ operator[]() [2/2]

const DisplayObject * operator[] ( unsigned int  index) const
inline

Overload of the array index operator to allow you to treat this const Group as an array of const objects.

Parameters
indexThe object index to be returned.
Returns
A pointer to the requested object.

◆ Parent() [1/3]

DisplayFrame * Parent ( ) const
inline

Gets the parent display frame pointer for this object

Returns
The parent display frame of this object

◆ Parent() [2/3]

virtual void Parent ( DisplayFrame par)
virtual

Sets the parent display frame pointer for this object to the indicated display frame

Parameters
parThe new display frame to be the parent object

Reimplemented from DisplayObject.

◆ Parent() [3/3]

virtual void Parent ( DisplayFrame par)
overridevirtual

Sets the parent display frame pointer for this object to the indicated display frame

Parameters
parThe new display frame to be the parent object

Reimplemented from DisplayObject.

Reimplemented in ComponentBase, and ComponentBase.

◆ PerformGroupCullCheck() [1/2]

bool PerformGroupCullCheck ( ) const
inline
Returns
Whether or not this group should be considered for culling.

◆ PerformGroupCullCheck() [2/2]

void PerformGroupCullCheck ( bool  mode)

Sets whether or not this group should be considered for culling.

Parameters
modeThe new cull mode for the group.

◆ Pick3D()

virtual DisplayObject * Pick3D ( const Vector winLoc,
const Vector logicalCoords,
float  scale,
const Vector directionVector,
Vector collisionWinLoc,
const OpenGLMatrices drawnMatrices 
)
overridevirtual

Attempts to pick an object in 3D and accounting for dynamic rotations and translations of this object or parent objects. It also looks at the pickable status and attempts to return the "Best" pick if that is what is desired.

Note: This method will pick objects in the scene based on a pick ray starting at winLoc and pointing into the screen. It will not pick objects behind the depth specified by winLoc.z. Typically winLoc.z should be set to 0 to ensure that the pick ray starts at near clip plane.

Parameters
winLocDevice coordinates for the mouse click. Z value should be set to 0 to ensure pick ray starts at near clip plane.
logicalCoordsThe start of the pick ray in logical coordinates. Should be calculated from the winLoc using this->WindowToLogical(winLoc, logicalCoords, &directionVector).
scaleCurrent window scale. Affects picking radius of outlines. Initial value should typically be 1.0.
directionVectorThe direction of the pick ray in logical coordinates. Should be calculated from the winLoc using this->WindowToLogical(winLoc, logicalCoords, &directionVector).
collisionWinLocReturns where the pick vector intersects the object that is hit in device coordinates.
drawnMatricesThe matrices used to draw the object, including matrices set by parents that may have dynamically rotated, translated or scaled this object. Initial value should typically be a default OpenGLMatrices() object.
Returns
The object that was hit, or NULL if no object hit

Reimplemented from DisplayObject.

Reimplemented in GlsPushButton, GlsClippingGroup, GlsMultiView, GlsMutexGroup, GlsThumbWheel, ComponentBase, GlsRSOWrapper, and Gls3DCable.

◆ PolygonEnd() [1/2]

virtual int PolygonEnd ( )
overridevirtual

Gets the polygon end mode (Open or Closed) for the polygon

Returns
Enumeration indicating open or closed mode
See also
PolygonClose_e

Reimplemented from DisplayObject.

Reimplemented in Gls3DCable, and GlsRSOWrapper.

◆ PolygonEnd() [2/2]

virtual void PolygonEnd ( const int  end)
overridevirtual

Sets the polygon end mode (Open or Closed) for the polygon

Parameters
endEnumeration indicating open or closed mode
See also
PolygonClose_e

Reimplemented from DisplayObject.

Reimplemented in GlsRSOWrapper, and Gls3DCable.

◆ PolygonMode() [1/2]

virtual int PolygonMode ( )
overridevirtual

Gets the polygon drawing mode for this object

Returns
The polygon drawing mode for this object
See also
PolygonMode_e

Reimplemented from DisplayObject.

Reimplemented in Gls3DCable, and GlsRSOWrapper.

◆ PolygonMode() [2/2]

virtual void PolygonMode ( int  mode)
overridevirtual

Sets the polygon drawing mode for this object

Parameters
modeThe new polygon drawing mode for this object
See also
PolygonMode_e

Reimplemented from DisplayObject.

Reimplemented in Gls3DCable, and GlsRSOWrapper.

◆ Position()

int Position ( const DisplayObject obj) const

Get the index position of the specified object in the list

Parameters
objThe object to find
Returns
The index of the object in the list, -1 if it isn't in the list

◆ PreDraw()

virtual void PreDraw ( const OpenGLMatrices current,
Culler culler 
)
overridevirtual

Traverses the hierarchy calculating the _modelMatrix, _projMatrix, _viewMatrix as needed.

Parameters
currentCurrent matrices inherited from parent
cullerObject that possibly marks this object for culling

Reimplemented from DisplayObject.

Reimplemented in ComponentBase, GlsRSOWrapper, Statistics, Gls3DCable, GlsPushButton, GlsKnob, GlsLodGroup, GlsMultiView, GlsMutexGroup, GlsOdometer, GlsSwitch, and GlsThumbWheel.

◆ PushObject()

virtual void PushObject ( DisplayObject obj)
virtual

Adds the specified object into the group, at the head of the list Treats the list like a stack, hence the name Push

Parameters
objA pointer to the object to add

Reimplemented in GlsMimicGroup.

◆ ReorderObject()

virtual void ReorderObject ( unsigned int  oldIndex,
unsigned int  newIndex 
)
virtual

Change the draw order of a child object within this group

Parameters
oldIndexThe old index of the object
newIndexThe new index of the object
Precondition
oldIndex and newIndex must be valid indices

◆ Rotate() [1/4]

virtual void Rotate ( const Vector orig,
float  angle,
const Vector axis 
)
virtual

Rotates the object (around the specified axis) by the angle indicated, at the point specified. Recalculates the vertex data.

Parameters
origThe point to rotate around
angleThe angle to rotate by, in degrees
axisThe arbitrary axis to rotate the object around

Reimplemented from DisplayObject.

◆ Rotate() [2/4]

virtual void Rotate ( const Vector orig,
float  angle,
const Vector axis 
)
overridevirtual

Rotates the object (around the specified axis) by the angle indicated, at the point specified. Recalculates the vertex data.

Parameters
origThe point to rotate around
angleThe angle to rotate by, in degrees
axisThe arbitrary axis to rotate the object around

Reimplemented from DisplayObject.

Reimplemented in ComponentBase, ComponentBase, GlsRSOWrapper, and GlsRSOWrapper.

◆ Rotate() [3/4]

virtual void Rotate ( const Vector origin,
float  angle,
int  axis = Z_AXIS 
)
virtual

Rotates the object (around the specified axis) by the angle indicated, at the point specified. Recalculates the vertex data.

Parameters
originThe point to rotate around
angleThe angle to rotate by, in degrees
axisThe axis to rotate the object around

Reimplemented from DisplayObject.

◆ Rotate() [4/4]

virtual void Rotate ( float  angle,
int  axis = Z_AXIS 
)
virtual

Rotates the object (around the specified axis) by the angle indicated, at the object's rotation point. Recalculates the vertex data.

Parameters
angleThe angle to rotate by, in degrees
axisThe axis to rotate the object around.

Reimplemented from DisplayObject.

◆ Scale() [1/2]

virtual void Scale ( float  scale_x,
float  scale_y 
)
virtual

Scale in X-Y plane using the center of the group as the anchor.

Parameters
scale_xThe X factor to scale by.
scale_yThe Y factor to scale by.

Reimplemented in ComponentBase, and GlsRSOWrapper.

◆ Scale() [2/2]

void Scale ( float  px,
float  py,
float  pz,
Vertex anchor = NULL,
int  handleBar = 0 
)
overridevirtual

Scales the object, either the handleBar, or the Anchor is used to translate the object, not both. Anchor takes presidence, if it is set HandleBar is ignored. The footprint is different from the 2D scale so the compiler can destinguish the two.

Parameters
pxValue of the percentage of scale in x-axis
pyValue of the percentage of scale in y-axis
pzValue of the percentage of scale in z-axis
anchorAnchor from which to scale object relative to
handleBarVertex that is being dragged

Reimplemented from DisplayObject.

Reimplemented in GlsRSOWrapper, ComponentBase, and GlsRSOWrapper.

◆ SetAvailableAttributes()

virtual void SetAvailableAttributes ( unsigned int  value)
overridevirtual

Specifies which attributes are available for the object. Currently the available attributes cannot be changed after they have been set. (Only the first call has an effect.)

Parameters
valueA bitfield specifying which types of attributes to make available.
See also
AvailableAttributesEnum

Reimplemented from DisplayObject.

Reimplemented in Gls3DCable, GlsPushButton, GlsClippingGroup, GlsKnob, GlsLodGroup, GlsMimicGroup, GlsMultiView, GlsMutexGroup, GlsOdometer, GlsSwitch, GlsThumbWheel, and ComponentBase.

◆ SetBlendColor() [1/4]

virtual void SetBlendColor ( const GlsColor color)
virtual

Sets the texture blend color for the object

Parameters
colorA GlsColor

Reimplemented from DisplayObject.

◆ SetBlendColor() [2/4]

virtual void SetBlendColor ( const GlsColor color)
overridevirtual

Sets the texture blend color for the object

Parameters
colorA GlsColor

Reimplemented from DisplayObject.

Reimplemented in Gls3DCable, and GlsRSOWrapper.

◆ SetBlendColor() [3/4]

void SetBlendColor ( unsigned char  color[])

Sets the texture blend color for the object

Parameters
colorRGBA color (0-255 range) NOTE: Not Virtual. Simply calls void SetBlendColor(const GlsColor& color);

◆ SetBlendColor() [4/4]

void SetBlendColor ( unsigned char  r,
unsigned char  g,
unsigned char  b,
unsigned char  a 
)

Sets the texture blend color for the object

Parameters
rRed color component (0-255 range)
gGreen color component (0-255 range)
bBlue color component (0-255 range)
aAlpha color component (0-255 range) NOTE: Not Virtual. Simply calls void SetBlendColor(const GlsColor& color);

◆ SetColor() [1/4]

virtual void SetColor ( const GlsColor color)
virtual

Sets the RGBA color for the object outline

Parameters
colorThe new color

Reimplemented from DisplayObject.

◆ SetColor() [2/4]

virtual void SetColor ( const GlsColor color)
overridevirtual

Sets the RGBA color for the object outline

Parameters
colorThe new color

Reimplemented from DisplayObject.

Reimplemented in Gls3DCable, and GlsRSOWrapper.

◆ SetColor() [3/4]

void SetColor ( unsigned char  c4[])
inline

Sets the RGBA color for the object outline

Parameters
c4The new RGBA (0-255 range) line color for the object NOTE: Not Virtual. Simply calls void SetColor(const GlsColor& color)

◆ SetColor() [4/4]

void SetColor ( unsigned char  r,
unsigned char  g,
unsigned char  b,
unsigned char  a 
)
inline

Sets the RGBA color for the object outline

Parameters
rThe new red component (0-255 range) of the line color for the object
gThe new blue component (0-255 range) of the line color for the object
bThe new green component (0-255 range) of the line color for the object
aThe new alpha component (0-255 range) of the line color for the object NOTE: Not Virtual. Simply calls void SetColor(const GlsColor& color)

◆ SetFillColor() [1/4]

virtual void SetFillColor ( const GlsColor color)
virtual

Sets the RGBA color for filling the object

Parameters
colorThe new RGBA fill color (0-255 range) for the object

Reimplemented from DisplayObject.

◆ SetFillColor() [2/4]

virtual void SetFillColor ( const GlsColor color)
overridevirtual

Sets the RGBA color for filling the object

Parameters
colorThe new RGBA fill color (0-255 range) for the object

Reimplemented from DisplayObject.

Reimplemented in Gls3DCable.

◆ SetFillColor() [3/4]

void SetFillColor ( unsigned char  c4[])
inline

Sets the RGBA color for filling the object

Parameters
c4The new RGBA fill color (0-255 range) for the object NOTE: Not Virtual. Simply calls void SetFillColor(const GlsColor& color)

◆ SetFillColor() [4/4]

void SetFillColor ( unsigned char  r,
unsigned char  g,
unsigned char  b,
unsigned char  a 
)
inline

Sets the RGBA color for filling the object

Parameters
rThe new red component (0-255 range) of the fill color for the object
gThe new blue component (0-255 range) of the fill color for the object
bThe new green component (0-255 range) of the fill color for the object
aThe new alpha component (0-255 range) of the fill color for the object NOTE: Not Virtual. Simply calls void SetFillColor(const GlsColor& color)

◆ SetGroupLocation()

virtual void SetGroupLocation ( const Vertex v)
virtual

Copies the given vertex data into the group's location vertex thereby moving the group's location member without affecting its child objects.

Parameters
v- Given vertex

◆ SetPainter()

void SetPainter ( GlsPainter painter)
overridevirtual

Sets the painter for this object. Can be NULL. If the painter is set, this object will call Invalidate() on the painter anytime it changes in a way that affects its rendering.

Note
This object only observers the painter, and does not delete it.
Parameters
painterthe painter that is drawing this class.

Reimplemented from DisplayObject.

Reimplemented in GlsMimicGroup.

◆ Shading() [1/2]

virtual int Shading ( )
overridevirtual

Gets the polygon shading mode (Flat or gouraud) for the polygon

Returns
Enumeration indicating shading mode
See also
ShadingType_e

Reimplemented from DisplayObject.

Reimplemented in Gls3DCable, and GlsRSOWrapper.

◆ Shading() [2/2]

virtual void Shading ( const int  shading)
overridevirtual

Sets the polygon shading mode (Flat or gouraud) for the polygon

Parameters
shadingEnumeration indicating shading mode
See also
ShadingType_e

Reimplemented from DisplayObject.

Reimplemented in Gls3DCable, and GlsRSOWrapper.

◆ TextureMagnificationFilter() [1/2]

virtual int TextureMagnificationFilter ( )
overridevirtual

Gets the texture magnification filter for this object

Returns
The texture magnification filter for this object
See also
TextureFilter_e

Reimplemented from DisplayObject.

Reimplemented in Gls3DCable, and GlsRSOWrapper.

◆ TextureMagnificationFilter() [2/2]

virtual void TextureMagnificationFilter ( const int  filter)
overridevirtual

Sets the texture magnification filter for this object

Parameters
filterThe new texture magnification filter for this object
See also
TextureFilter_e

Reimplemented from DisplayObject.

Reimplemented in Gls3DCable, and GlsRSOWrapper.

◆ TextureMappingTechnique() [1/2]

virtual int TextureMappingTechnique ( )
overridevirtual

Gets the texturing mapping mode for this object

Returns
The texture mapping mode for this object
See also
TextureMap_e

Reimplemented from DisplayObject.

Reimplemented in Gls3DCable, and GlsRSOWrapper.

◆ TextureMappingTechnique() [2/2]

virtual void TextureMappingTechnique ( const int  map)
overridevirtual

Sets the texturing mapping mode for this object

Parameters
mapThe new texture mapping mode for this object
See also
TextureMap_e

Reimplemented from DisplayObject.

Reimplemented in Gls3DCable, and GlsRSOWrapper.

◆ TextureMinificationFilter() [1/2]

virtual int TextureMinificationFilter ( )
overridevirtual

Gets the texture minification filter for this object

Returns
The texture minification filter for this object
See also
TextureFilter_e

Reimplemented from DisplayObject.

Reimplemented in Gls3DCable, and GlsRSOWrapper.

◆ TextureMinificationFilter() [2/2]

virtual void TextureMinificationFilter ( const int  filter)
overridevirtual

Sets the texture minification filter for this object

Parameters
filterThe new texture minification filter for this object
See also
TextureFilter_e

Reimplemented from DisplayObject.

Reimplemented in Gls3DCable, and GlsRSOWrapper.

◆ TextureRepeat() [1/3]

virtual bool TextureRepeat ( )
virtual

Gets the texturing repeat mode for this object

Returns
The texture repeat mode for this object

Reimplemented from DisplayObject.

◆ TextureRepeat() [2/3]

virtual void TextureRepeat ( const int  rep)
virtual

Sets the texturing repeat mode for this object

Parameters
repThe new texture repeat mode for this object (boolean)

Reimplemented from DisplayObject.

◆ TextureRepeat() [3/3]

virtual void TextureRepeat ( const int  rep)
overridevirtual

Sets the texturing repeat mode for this object

Parameters
repThe new texture repeat mode for this object (boolean)

Reimplemented from DisplayObject.

Reimplemented in Gls3DCable, and GlsRSOWrapper.

◆ Translate() [1/2]

virtual void Translate ( float  tr[])
overridevirtual

Moves the object by the amount indicated.

Parameters
trFloat[3] array containing the x,y,z amounts to translate by

Reimplemented from DisplayObject.

Reimplemented in ComponentBase.

◆ Translate() [2/2]

virtual void Translate ( float  x,
float  y,
float  z 
)
overridevirtual

Moves the object by the amount indicated.

Parameters
xX amount to translate by
yY amount to translate by
zZ amount to translate by

Reimplemented from DisplayObject.

Reimplemented in ComponentBase.

◆ TranslateVertices() [1/2]

virtual void TranslateVertices ( float  transAmount[])
virtual

Translates the group by the specified amount my changing the vertices instead of changing the _location value, moving all subobjects.

Parameters
transAmountA pointer to an array of floats representing X, Y, and Z to translate.

◆ TranslateVertices() [2/2]

virtual void TranslateVertices ( float  x,
float  y,
float  z 
)
overridevirtual

Moves the object's vertices by the amount indicated. Does not change _location.

Parameters
xX amount to translate by
yY amount to translate by
zZ amount to translate by

Reimplemented from DisplayObject.


The documentation for this class was generated from the following file: