| GL Studio C++ Runtime API

Public Types | Public Member Functions | Static Public Member Functions | Protected Attributes | Friends | List of all members
Gls3DCable Class Reference

`#include <gls_3d_cable.h>`

Inheritance diagram for Gls3DCable:

## Public Types
enum | { TEXTUREPOINT_MULT = 50 }
enum | { MIN_NUMBER_OF_SIDES = 1 , MAX_NUMBER_OF_SIDES = 100 }
enum | { MIN_SEGEMENTS = 1 , MAX_SEGEMENTS = 10000 }
enum | ECollisionStyle { COLLISIONSTYLE_NONE = 0 , COLLISIONSTYLE_FAST }
| Collision model.
typedef Group | _BaseClass
| Deprecated typedef for the base class.
typedef Group | BaseClass
| Typedef for the base class.
Public Types inherited from Group
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
| Gls3DCable (bool generateInstance=false)
| Gls3DCable (const Gls3DCable &that, const bool generateNames)
virtual | ~Gls3DCable ()
virtual void | GetResources (std::ostream &outstr, GlsResourceFilter *filter) DISTI_METHOD_OVERRIDE
virtual DistiAttributeBase & | Resource (const char *name) DISTI_METHOD_OVERRIDE
virtual void | SetAvailableAttributes (unsigned int value) DISTI_METHOD_OVERRIDE
virtual DisplayObject * | CloneObject (bool generateNames=false) DISTI_METHOD_OVERRIDE
virtual void | CopyProperties (DisplayObject *src) DISTI_METHOD_OVERRIDE
virtual void | PreDraw (const OpenGLMatrices &current, Culler &culler) DISTI_METHOD_OVERRIDE
virtual void | Draw () DISTI_METHOD_OVERRIDE
virtual void | Calculate (double time) DISTI_METHOD_OVERRIDE
virtual DisplayObject * | handle (DisplayEvent *ev) DISTI_METHOD_OVERRIDE
virtual void | SetValue (int spec, va_list &args) DISTI_METHOD_OVERRIDE
virtual void | CalculateBoundingBox () DISTI_METHOD_OVERRIDE
virtual bool | Hit (float x, float y, float z, float scale, const Vector &directionVector, Vector *collisionPoint) DISTI_METHOD_OVERRIDE
virtual DisplayObject * | Pick3D (const Vector &winLoc, const Vector &logicalCoords, float scale, const Vector &directionVector, Vector &collisionWinLoc, const OpenGLMatrices &drawnMatrices) DISTI_METHOD_OVERRIDE
virtual void | CalculateTextureCoordinates () DISTI_METHOD_OVERRIDE
virtual void | LineWidth (float width) DISTI_METHOD_OVERRIDE
virtual float | LineWidth () DISTI_METHOD_OVERRIDE
virtual void | LineStipplePattern (int pattern) DISTI_METHOD_OVERRIDE
virtual int | LineStipplePattern () DISTI_METHOD_OVERRIDE
virtual void | LineStippleMultiplier (int mult) DISTI_METHOD_OVERRIDE
virtual int | LineStippleMultiplier () DISTI_METHOD_OVERRIDE
virtual int | PolygonMode () DISTI_METHOD_OVERRIDE
virtual void | PolygonMode (int mode) DISTI_METHOD_OVERRIDE
virtual void | PolygonEnd (const int end) DISTI_METHOD_OVERRIDE
virtual int | PolygonEnd () DISTI_METHOD_OVERRIDE
virtual void | Shading (const int shading) DISTI_METHOD_OVERRIDE
virtual int | Shading () DISTI_METHOD_OVERRIDE
virtual void | DepthTest (unsigned char zbuf) DISTI_METHOD_OVERRIDE
virtual int | DepthTest () DISTI_METHOD_OVERRIDE
virtual void | AntiAlias (bool alias) DISTI_METHOD_OVERRIDE
virtual bool | AntiAlias () DISTI_METHOD_OVERRIDE
virtual void | AlphaMode (int mode) DISTI_METHOD_OVERRIDE
virtual int | AlphaMode () DISTI_METHOD_OVERRIDE
virtual void | CullBackFace (const bool val) DISTI_METHOD_OVERRIDE
virtual bool | CullBackFace () DISTI_METHOD_OVERRIDE
virtual bool | LightingEnabled () DISTI_METHOD_OVERRIDE
virtual void | LightingEnabled (bool lighting) DISTI_METHOD_OVERRIDE
virtual void | SetBlendColor (const GlsColor &color) DISTI_METHOD_OVERRIDE
virtual GlsColor | GetBlendColor () DISTI_METHOD_OVERRIDE
virtual void | SetColor (const GlsColor &color) DISTI_METHOD_OVERRIDE
virtual GlsColor | GetColor () DISTI_METHOD_OVERRIDE
virtual void | SetFillColor (const GlsColor &color) DISTI_METHOD_OVERRIDE
virtual GlsColor | GetFillColor () DISTI_METHOD_OVERRIDE
virtual void | TextureRepeat (const int rep) DISTI_METHOD_OVERRIDE
virtual bool | TextureRepeat () DISTI_METHOD_OVERRIDE
virtual void | TextureMappingTechnique (const int map) DISTI_METHOD_OVERRIDE
virtual int | TextureMappingTechnique () DISTI_METHOD_OVERRIDE
virtual void | TextureMinificationFilter (const int filter) DISTI_METHOD_OVERRIDE
virtual int | TextureMinificationFilter () DISTI_METHOD_OVERRIDE
virtual void | TextureMagnificationFilter (const int filter) DISTI_METHOD_OVERRIDE
virtual int | TextureMagnificationFilter () DISTI_METHOD_OVERRIDE
void | Flexibility (const float &value)
float | Flexibility ()
void | NumberOfSegments (const unsigned int &value)
unsigned int | NumberOfSegments ()
void | NumberOfSides (const unsigned int &value)
unsigned int | NumberOfSides ()
void | Radius (const float &value)
float | Radius ()
void | Length (const float &value)
float | Length ()
void | CollisionStyle (const int &value)
int | CollisionStyle ()
void | SlackPct (unsigned int section, double pct)
double | SlackPct (unsigned int section)
unsigned int | SlackSectionCount () const
void | ForceCableRecalc ()
void | Gravity (const bool &value)
bool | Gravity ()
Public Member Functions inherited from Group
DisplayObject * | FindByName (const char *name)
virtual DisplayObject * | FindByNameSameFrame (const char *name)
DisplayObject * | FindByName (DisplayObject *obj)
DisplayObject * | FindByQualifiedName (const char *name)
DisplayObject * | FindNonRecursive (DisplayObject *obj)
DisplayObjectArray & | Objects ()
const DisplayObjectArray & | Objects () const
DisplayObject * | Item (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 DisplayObject * | operator[] (unsigned int index) const
DisplayObject * | FirstObject ()
DisplayObject * | LastObject ()
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 DisplayObject * | CloneObject (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 DisplayObject * | Pick3D (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
CompatabilityListItem * | First ()
CompatabilityListItem * | Last ()
virtual void | Parent (DisplayFrame *par)
DisplayFrame * | Parent () const
virtual const Vertex & | Location () 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)
DistiAttribDict & | Attributes ()
const DistiAttribDict & | Attributes () 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 Vector & | BoundingVolumeCenter () 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)
CallbackMethodCallerBase * | CallbackCaller () const
void | CallbackCaller (CallbackMethodCallerBase *cb)
virtual void | GetCenter (Vector &center)
virtual DisplayObject * | CloneObject (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 void | CullBackFace (const bool val)
virtual bool | CullBackFace ()
bool | Culled () const
void | Culled (bool val)
bool | CullTest (const GlsMatrixType *matrix, const Culler &culler)
GlsMatrixType & | DcsMatrix ()
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 GlsMatrixType * | DrawMatrix ()
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 | DynamicTranslateAxis (float amount, int axis, bool relative)
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 DisplayObject * | handle (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 Vertex & | Location () 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)
GlsMatrixType * | ModelMatrix ()
bool | NeedCalculate ()
Vector * | Normals ()
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)
DisplayFrame * | Parent () const
virtual void | ParentGroup (Group *group)
Group * | ParentGroup () const
virtual DisplayObject * | Pick3D (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)
GlsMatrixType * | ProjMatrix ()
virtual void | ReallocateVertices (unsigned int numVertices, bool initializeNew, bool copyOld)
virtual float | RelativeAngle (const float x, const float y)
virtual DistiAttributeBase & | Resource (const char *name)
virtual void | GetResources (std::ostream &outstr, GlsResourceFilter *filter=NULL)
const Vertex & | RotationPoint () 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 ()
void | SetupDepthTest ()
void | SetupLighting ()
bool | SetupLineStyle ()
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,...)
Vector * | TextureCoordinates ()
Vector * | GetTextureCoordinates ()
virtual int | TextureIndex ()
virtual void | TextureIndex (int textureIndex)
virtual Vector * | GetTexturePoints ()
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 Vertex * | Vertices ()
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)
bool | Create (GlsGloFile &dataStream, Group *parent)
void | GeometryRefresh ()
| Invalidates the painter and refreshes the geometry on the next paint cycle.
virtual bool | GetPlaneVectorPoints (Vertex &p1, Vertex &p2, Vertex &p3, Vertex &planeVector)
void | NotifyAttributeChanged (const AttributeName &name) override
virtual void | SetPainter (GlsPainter *painter)
virtual GlsPainter * | GetPainter ()
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 DisplayObject * | CreateInstance ()
Static Public Member Functions inherited from Group
static DisplayObject * | CreateInstance ()
Static Public Member Functions inherited from DisplayObject
static void | UseManualBlinkElapsedTime (bool useManualTime)
static void | SetManualBlinkElapsedTime (double elapsedTime)

## Protected Attributes
float | _flexibility
unsigned int | _numberOfSegments
unsigned int | _numberOfSides
float | _radius
float | _length
bool | _needCableRecalc
bool | _needTubeGeneration
bool | _inCableRecalc
GLPolygon | _line
GLTriMesh | _mesh
std::vector< Vector > | _endPointPos
std::vector< GlsMatrixAffineD > | _endPointOri
DynamicDoubleArray | _sectionSlackPct
GlsMatrixAffineD | _cableDcs
ECollisionStyle | _collisionStyle
bool | _gravity
| If true, gravity will be simulated on this cable.
int | _lineVertsPerSection
float | _realCableLength
Protected Attributes inherited from Group
DisplayObjectArray | _objects
| The objects contained in this group.
Protected Attributes inherited from DisplayObject
bool | _geometryRefresh
| Whether or not the geometry (VBOs etc.) needs to be updated on the GPU.
int | _alphaMode
bool | _antiAlias
bool | _attributesAdded
bool | _blinking
float | _blinkRate
bool | _isBlinkedOff
| Stores whether the object is presently blinked on or off.
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
IGlsStateManager * | _stateManager
| The state manager that interfaces with OpenGL and maintains its render state.
Protected Attributes inherited from WeakReferenceableMixin
DynamicArray< WeakReference * > * | _weakRefs

## Friends
class | Gls3DCableEditor

## Additional Inherited Members
Public Attributes inherited from Group
DynamicArray< CompatabilityListItem > | _compatList
| Used for GL Studio 2.1 compatibility only.
Protected Member Functions inherited from Group
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)
void | ApplyTextureMinMagSettings ()
| Updates the state manager's texture minification and magnification filter based on this display's configuration.
void | ApplyTextureEnvModeSettings ()
| Updates the state manager's texture environment based on this object configuration.
bool | SetupTextureIsNeeded ()
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 Vertex & | LastDrawMatrixLocation ()
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 | SetFromGloData (GlsGloFileAttribute &data)
virtual void | SetValue (int spec, va_list &args)
int | GetApplicableTextureIndex ()
int | GetApplicableTextureRepeat ()
Protected Member Functions inherited from WeakReferenceableMixin
| WeakReferenceableMixin ()
virtual | ~WeakReferenceableMixin ()

## Detailed Description

Runtime implementation of a Gls3DCable. The Gls3DCable is a cable mesh between two or more endpoint objects. The user controls the length, the flexibility, the diameter, the smoothness (segments and sides), and the droop of the cable.

## Member Enumeration Documentation

## ◆ anonymous enum

anonymous enum

Sides limits

## ◆ anonymous enum

anonymous enum

Segement limits

## Constructor & Destructor Documentation

## ◆ Gls3DCable() [1/2]

Gls3DCable | ( | bool | generateInstance = `false` | ) |

Create a new Gls3DCable.

Parameters

  generateInstance | Whether or not to generate an instance name for this object.

## ◆ Gls3DCable() [2/2]

Gls3DCable | ( | const Gls3DCable & | that,
|  | const bool | generateNames
| ) |  |

Copy constructor for Gls3DCable

Parameters

  that | The Gls3DCable to be copied from.
  generateNames | Whether or not to generate a new instance name.

## ◆ ~Gls3DCable()

virtual ~Gls3DCable | ( |  | ) |
| virtual

Destructs a Gls3DCable object

## Member Function Documentation

## ◆ AlphaMode() [1/2]

virtual int AlphaMode | ( |  | ) |
| virtual

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 Group.

## ◆ AlphaMode() [2/2]

virtual void AlphaMode | ( | int | mode | ) |
| virtual

Set the alpha mode state for this object

Parameters

  mode | which alpha mode to use when drawing

See also
  AlphaMode_e

Reimplemented from Group.

## ◆ AntiAlias() [1/2]

virtual bool AntiAlias | ( |  | ) |
| virtual

Get the anti aliasing state this object

Returns
  Whether or not this object will be drawn antialiased

Reimplemented from Group.

## ◆ AntiAlias() [2/2]

virtual void AntiAlias | ( | bool | alias | ) |
| virtual

Set the anti aliasing state for this object

Parameters

  alias | Whether or not to perform anti aliasing

Reimplemented from Group.

## ◆ Calculate()

virtual void Calculate | ( | double | time | ) |
| virtual

Provides a mechanism for performing regular calculations, seperate from drawing. In a standalone applicaton Calculate is recursively called by the main loop before the objects are drawn.

Parameters

  time | The elaspsed time in seconds since program start

Reimplemented from Group.

## ◆ 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 from Group.

## ◆ CalculateTextureCoordinates()

virtual void CalculateTextureCoordinates | ( |  | ) |
| virtual

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

Reimplemented from Group.

## ◆ CloneObject()

virtual DisplayObject * CloneObject | ( | bool | generateNames = `false` | ) |
| virtual

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

  generateNames | Whether or not to generate new names for cloned objects

Returns
  A new object, identical to the original, except for the instance name

Reimplemented from Group.

## ◆ CollisionStyle() [1/2]

int CollisionStyle | ( |  | ) |

Gets the Collision Style

Returns
  The current Collision Style

## ◆ CollisionStyle() [2/2]

void CollisionStyle | ( | const int & | value | ) |

Sets the CollisionStyle.

Parameters

  value | The collision mode for the cable. COLLISIONSTYLE_NONE will disable all collision detection and therefore any cable deformation caused thereby. COLLISIONSTYLE_FAST will check for collisions with other objects in the scene, but will only move / orient the cable midpoint such that it appears as though the cable is laying flat on a single surface.

Check if USE_COLLISIONSTYLE_SLOW is defined before using Slow.

## ◆ CopyProperties()

virtual void CopyProperties | ( | DisplayObject * | src | ) |
| virtual

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

Parameters

  src | The object to copy properties from

Reimplemented from Group.

## ◆ CreateInstance()

static DisplayObject * CreateInstance | ( |  | ) |
| static

Returns
  A pointer to a new Gls3DCable.

## ◆ CullBackFace() [1/2]

virtual bool CullBackFace | ( |  | ) |
| virtual

Returns if back faces should be removed

Returns
  True if backfaces are removed

Reimplemented from Group.

## ◆ CullBackFace() [2/2]

virtual void CullBackFace | ( | const bool | val | ) |
| virtual

Sets if back faces should be removed

Parameters

  val | True if back faces should be removed

Reimplemented from Group.

## ◆ DepthTest() [1/2]

virtual int DepthTest | ( |  | ) |
| virtual

Get the z buffering state for this object

Returns
  Whether or not this object will be draw Z buffered

Reimplemented from Group.

## ◆ DepthTest() [2/2]

virtual void DepthTest | ( | unsigned char | zbuf | ) |
| virtual

Set the z buffering state for this object

Parameters

  zbuf | Whether or not to perform z buffering

Reimplemented from Group.

## ◆ Draw()

virtual void Draw | ( |  | ) |
| virtual

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

Reimplemented from Group.

## ◆ Flexibility() [1/2]

float Flexibility | ( |  | ) |

Gets flexibility.

Returns
  How stiff the cable is.

## ◆ Flexibility() [2/2]

void Flexibility | ( | const float & | value | ) |

Sets flexibility.

Parameters

  value | Controls how stiff the cable is. The value should be in the range of 0 to 1, inclusive. 0 is very inflexible, while 1 is very flexible.

Precondition
  value must be in the range of 0 to 1

Postcondition
  None

## ◆ ForceCableRecalc()

void ForceCableRecalc | ( |  | ) |

Sometimes an outside source may need to recalculate the cable, such as when the scene changes and the cable may not be colliding with another object in the scene.

Precondition
  None

Postcondition
  None

## ◆ GetBlendColor()

virtual GlsColor GetBlendColor | ( |  | ) |
| virtual

Gets the texture blend color for the object

Returns
  Returns the current texture blend color.

Reimplemented from Group.

## ◆ GetColor()

virtual GlsColor GetColor | ( |  | ) |
| virtual

Gets the color for the object outline

Returns
  The outline color

Reimplemented from Group.

## ◆ GetFillColor()

virtual GlsColor GetFillColor | ( |  | ) |
| virtual

Gets the fill color of the object

Returns
  The fill color

Reimplemented from Group.

## ◆ GetResources()

virtual void GetResources | ( | std::ostream & | outstr,
|  | GlsResourceFilter * | filter
| ) |  |
| virtual

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

  outstr | The stream to write to
  filter | The filter to determine what to write

Reimplemented from Group.

## ◆ Gravity() [1/2]

bool Gravity | ( |  | ) |
| inline

Returns wether or not gavity is simulated on the cable.

Returns
  Returns wether or not gavity is simulated on the cable

Precondition
  none

Postcondition
  none

## ◆ Gravity() [2/2]

void Gravity | ( | const bool & | value | ) |

Whether or not to simulate gravity on the cable.

Parameters

  value | The new gravity flag value.

## ◆ handle()

virtual DisplayObject * handle | ( | DisplayEvent * | ev | ) |
| virtual

Handles an event that is sent to the object.

Parameters

  ev | The event to send to the object

Returns
  Which object handled the event

Reimplemented from DisplayObject.

## ◆ Hit()

virtual bool Hit | ( | float | x,
|  | float | y,
|  | float | z,
|  | float | scale,
|  | const Vector & | directionVector,
|  | Vector * | collisionPoint
| ) |  |
| virtual

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

  x | X coordinate of pick ray start in logical coordinates.
  y | Y coordinate of pick ray start in logical coordinates.
  z | Z coordinate of pick ray start in logical coordinates.
  scale | The scale factor of the window. Affects picking of outlines. Standard value is 1.0.
  directionVector | The direction of the pick ray.
  collisionPoint | If 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 Group.

## ◆ Length() [1/2]

float Length | ( |  | ) |

Gets the Length of the cable.

Returns
  The length of the cable in logical units

## ◆ Length() [2/2]

void Length | ( | const float & | value | ) |

Sets the Length of the cable. when not under duress (the cable will stretch when the end-points are moved too far from each other).

Parameters

  value | The approximate length of the cable in logical units

Precondition
  value must be 0.0 to MAX_FLT

Postcondition
  None

## ◆ LightingEnabled() [1/2]

virtual bool LightingEnabled | ( |  | ) |
| virtual

Returns
  The current lighting state.

Reimplemented from Group.

## ◆ LightingEnabled() [2/2]

virtual void LightingEnabled | ( | bool | lighting | ) |
| virtual

Sets the lighting state.

Parameters

  lighting | The new lighting state.

Reimplemented from Group.

## ◆ LineStippleMultiplier() [1/2]

virtual int LineStippleMultiplier | ( |  | ) |
| virtual

Get the line stipple multiplier for this object

Returns
  The line stipple multiplier for this object

Reimplemented from Group.

## ◆ LineStippleMultiplier() [2/2]

virtual void LineStippleMultiplier | ( | int | mult | ) |
| virtual

Set the line stipple multiplier for this object

Parameters

  mult | The new line stipple pattern

Reimplemented from Group.

## ◆ LineStipplePattern() [1/2]

virtual int LineStipplePattern | ( |  | ) |
| virtual

Get the line stipple pattern for this object

Returns
  The line stipple pattern for this object

Reimplemented from Group.

## ◆ LineStipplePattern() [2/2]

virtual void LineStipplePattern | ( | int | pattern | ) |
| virtual

Set the line stipple pattern for this object

Parameters

  pattern | The new line stipple pattern

Reimplemented from Group.

## ◆ LineWidth() [1/2]

virtual float LineWidth | ( |  | ) |
| virtual

Gets the width of lines in the object.

Returns
  The line width of the object in logical units

Reimplemented from Group.

## ◆ LineWidth() [2/2]

virtual void LineWidth | ( | float | width | ) |
| virtual

Sets the width of lines in the object.

Parameters

  width | The new line width of the object in logical units

Reimplemented from Group.

## ◆ NumberOfSegments() [1/2]

unsigned int NumberOfSegments | ( |  | ) |

Gets the Number of Segements.

Returns
  The Number of Segments

## ◆ NumberOfSegments() [2/2]

void NumberOfSegments | ( | const unsigned int & | value | ) |

Sets Number of Segements.

Parameters

  value | The number of cylindrical segments that will traverse the entire length of the cable. A cable with one section (that is, with only two control objects) would be a straight cylinder connecting two points, incapable of bending. The higher this number, the smoother your cable will appear.

Precondition
  value must be in the range MIN_SEGEMENTS to MAX_SEGEMENTS

Postcondition
  none

## ◆ NumberOfSides() [1/2]

unsigned int NumberOfSides | ( |  | ) |

Gets the Number of Sides.

Returns
  The number of sides

## ◆ NumberOfSides() [2/2]

void NumberOfSides | ( | const unsigned int & | value | ) |

Sets the Number Of Sides.

Parameters

  value | The number of sides the cable "tube" will have. The more sides, the smoother the cable will appear. A value of two will produce a ribbon-like cable. A value of one will render only a line.

Precondition
  value must be in the range of 1 to 100 inclusive.

Postcondition
  None

## ◆ Pick3D()

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

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

  winLoc | Device coordinates for the mouse click. Z value should be set to 0 to ensure pick ray starts at near clip plane.
  logicalCoords | The start of the pick ray in logical coordinates. Should be calculated from the winLoc using this->WindowToLogical(winLoc, logicalCoords, &directionVector).
  scale | Current window scale. Affects picking radius of outlines. Initial value should typically be 1.0.
  directionVector | The direction of the pick ray in logical coordinates. Should be calculated from the winLoc using this->WindowToLogical(winLoc, logicalCoords, &directionVector).
  collisionWinLoc | Returns where the pick vector intersects the object that is hit in device coordinates.
  drawnMatrices | The 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 Group.

## ◆ PolygonEnd() [1/2]

virtual int PolygonEnd | ( |  | ) |
| virtual

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

Returns
  Enumeration indicating open or closed mode

See also
  PolygonClose_e

Reimplemented from Group.

## ◆ PolygonEnd() [2/2]

virtual void PolygonEnd | ( | const int | end | ) |
| virtual

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

Parameters

  end | Enumeration indicating open or closed mode

See also
  PolygonClose_e

Reimplemented from Group.

## ◆ PolygonMode() [1/2]

virtual int PolygonMode | ( |  | ) |
| virtual

Gets the polygon drawing mode for this object

Returns
  The polygon drawing mode for this object

See also
  PolygonMode_e

Reimplemented from Group.

## ◆ PolygonMode() [2/2]

virtual void PolygonMode | ( | int | mode | ) |
| virtual

Sets the polygon drawing mode for this object

Parameters

  mode | The new polygon drawing mode for this object

See also
  PolygonMode_e

Reimplemented from Group.

## ◆ PreDraw()

virtual void PreDraw | ( | const OpenGLMatrices & | current,
|  | Culler & | culler
| ) |  |
| virtual

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

Parameters

  current | Current matrices inherited from parent
  culler | Object that possibly marks this object for culling

Reimplemented from Group.

## ◆ Radius() [1/2]

float Radius | ( |  | ) |

Gets the Radius of the cable

Returns
  The radius in logical units

## ◆ Radius() [2/2]

void Radius | ( | const float & | value | ) |

Sets the Radius of the cable in logical units

Parameters

  value | The radius in logical units.

Precondition
  value must be plus/minus MAX_FLT

Postcondition
  none

## ◆ Resource()

virtual DistiAttributeBase & Resource | ( | const char * | name | ) |
| virtual

Gets a reference to the specified attribute for reading and writing. This reference can be streamed into and out of variables. For Example: someObject->Resource("Visible") >> someBool; someBool << someObject->Resource("Visible");

Parameters

  name | The name of the attribute to be returned.

Returns
  A reference to the attribute if it is present, or DistiEmptyAttribute if not.

Reimplemented from DisplayObject.

## ◆ SetAvailableAttributes()

virtual void SetAvailableAttributes | ( | unsigned int | value | ) |
| virtual

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

  value | A bitfield specifying which types of attributes to make available.

See also
  AvailableAttributesEnum

Reimplemented from Group.

## ◆ SetBlendColor()

virtual void SetBlendColor | ( | const GlsColor & | color | ) |
| virtual

Sets the texture blend color for the object

Parameters

  color | A GlsColor

Reimplemented from Group.

## ◆ SetColor()

virtual void SetColor | ( | const GlsColor & | color | ) |
| virtual

Sets the RGBA color for the object outline

Parameters

  color | The new color

Reimplemented from Group.

## ◆ SetFillColor()

virtual void SetFillColor | ( | const GlsColor & | color | ) |
| virtual

Sets the RGBA color for filling the object

Parameters

  color | The new RGBA fill color (0-255 range) for the object

Reimplemented from Group.

## ◆ SetValue()

virtual void SetValue | ( | int | spec,
|  | va_list & | args
| ) |  |
| virtual

Sets an attribute of this object using variable arguments

Parameters

  spec | A GLS_Initializer tag
  args | A variable argument list

Reimplemented from DisplayObject.

## ◆ Shading() [1/2]

virtual int Shading | ( |  | ) |
| virtual

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

Returns
  Enumeration indicating shading mode

See also
  ShadingType_e

Reimplemented from Group.

## ◆ Shading() [2/2]

virtual void Shading | ( | const int | shading | ) |
| virtual

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

Parameters

  shading | Enumeration indicating shading mode

See also
  ShadingType_e

Reimplemented from Group.

## ◆ SlackPct() [1/2]

double SlackPct | ( | unsigned int | section | ) |

Gets the Slack Percentage for a particular section

Parameters

  section | The section of interest.

Returns
  The slack percentage for the specified section.

Precondition
  section must be < _sectionSlackPct.Count()

Postcondition
  if preconditions are not met 0.0 is returned

## ◆ SlackPct() [2/2]

void SlackPct | ( | unsigned int | section,
|  | double | pct
| ) |  |

Sets the Slack Percentage

Parameters

  section | Which section of the cable, 0 based
  pct | The percent of the slace (0.0 -> 1.0) This will adjust the slack percentage in the cable for the section, the caller must ensure that all percents sum up to 1.0.

Precondition
  section must be < _sectionSlackPct.Count(), and pct must be 0.0-1.0

Postcondition
  Slack percentage will not change if preconditions are not met.

## ◆ SlackSectionCount()

unsigned int SlackSectionCount | ( |  | ) | const

How many Slack Sections are there? Can be used with SlackPct() to get set Slack Sections.

Returns
  Return the number of Slack Sections, 0 to N

Precondition
  none

Postcondition
  none

## ◆ TextureMagnificationFilter() [1/2]

virtual int TextureMagnificationFilter | ( |  | ) |
| virtual

Gets the texture magnification filter for this object

Returns
  The texture magnification filter for this object

See also
  TextureFilter_e

Reimplemented from Group.

## ◆ TextureMagnificationFilter() [2/2]

virtual void TextureMagnificationFilter | ( | const int | filter | ) |
| virtual

Sets the texture magnification filter for this object

Parameters

  filter | The new texture magnification filter for this object

See also
  TextureFilter_e

Reimplemented from Group.

## ◆ TextureMappingTechnique() [1/2]

virtual int TextureMappingTechnique | ( |  | ) |
| virtual

Gets the texturing mapping mode for this object

Returns
  The texture mapping mode for this object

See also
  TextureMap_e

Reimplemented from Group.

## ◆ TextureMappingTechnique() [2/2]

virtual void TextureMappingTechnique | ( | const int | map | ) |
| virtual

Sets the texturing mapping mode for this object

Parameters

  map | The new texture mapping mode for this object

See also
  TextureMap_e

Reimplemented from Group.

## ◆ TextureMinificationFilter() [1/2]

virtual int TextureMinificationFilter | ( |  | ) |
| virtual

Gets the texture minification filter for this object

Returns
  The texture minification filter for this object

See also
  TextureFilter_e

Reimplemented from Group.

## ◆ TextureMinificationFilter() [2/2]

virtual void TextureMinificationFilter | ( | const int | filter | ) |
| virtual

Sets the texture minification filter for this object

Parameters

  filter | The new texture minification filter for this object

See also
  TextureFilter_e

Reimplemented from Group.

## ◆ TextureRepeat() [1/2]

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/2]

virtual void TextureRepeat | ( | const int | rep | ) |
| virtual

Sets the texturing repeat mode for this object

Parameters

  rep | The new texture repeat mode for this object (boolean)

Reimplemented from Group.

## Member Data Documentation

## ◆ _cableDcs

GlsMatrixAffineD _cableDcs
| protected

Store the DCS Rotation matrix used to calculate the mesh object. The Z is the direction of gravity, so this will effect the slack in the cable. Compare this old DCS with the current to determine if we need to recalculate the mesh.

## ◆ _collisionStyle

ECollisionStyle _collisionStyle
| protected

The collision type.

## ◆ _endPointOri

std::vector<GlsMatrixAffineD> _endPointOri
| protected

Stores the dcs orientations of all of the "EndPoint" objects for ease of use in future calculations. Also used to check if any of the orientations have changed. Endpoints, can be in the middle section of the cable, by "endpoints" it is meant the ends of the sections.

## ◆ _endPointPos

std::vector<Vector> _endPointPos
| protected

Stores the locations of all of the "EndPoint" objects for ease of use in future calculations. Also used to check if any of the positions have changed. Endpoints, can be in the middle section of the cable, by "endpoints" it is meant the ends of the sections.

## ◆ _flexibility

float _flexibility
| protected

How flexibile is the cable, more flexibility gives a more rounded cable This has a range of 0 to 1, 0 is inflexible, 1 is flexible.

## ◆ _inCableRecalc

bool _inCableRecalc
| protected

Prevents "Hit()" from being called from within RecalculateCable()

## ◆ _length

float _length
| protected

The requested length of the cable, the cable may be longer, if needed to reach between the end points. A zero length cable can be used to "hide" the cable, while leaving the end points intact. Units are in logical units. This has a range of zero to FLT_MAX.

## ◆ _line

GLPolygon _line
| protected

The _lineVerts are stored in the _line object. The _line object is used for drawing if sides == 1.

## ◆ _lineVertsPerSection

int _lineVertsPerSection
| protected

The number of vertices in the cable line, for each section of the cable. This INCLUDES the first vertex and the last vertex of each section.

## ◆ _mesh

GLTriMesh _mesh
| protected

The Mesh Verts, Normals, and TexCoords are stored in this object. The _mesh object is used for drawing when sides > 1.

## ◆ _needCableRecalc

bool _needCableRecalc
| protected

Does RecalculateCable () need to be called next frame?

## ◆ _needTubeGeneration

bool _needTubeGeneration
| protected

Does TubeGeneration () need to be called next frame?

## ◆ _numberOfSegments

unsigned int _numberOfSegments
| protected

The number of pieces that the entire cable has, the more segements the more smooth a cable will appear, e.g., 1 segment gives you a straight line, two gives you a 'V', etc. This has a range of MIN_SEGEMENTS to MAX_SEGEMENTS

## ◆ _numberOfSides

unsigned int _numberOfSides
| protected

How many sides does the cable have. 1 is a wire 2 is a ribbon cable, 3 a triangle, 4 a sqaure, etc. the more sides the closer to a circle you get. This has a range of MIN_NUMBER_OF_SIDES to MAX_NUMBER_OF_SIDES.

## ◆ _radius

float _radius
| protected

The Radius of the cable. Units are in pixels. This has a range of plus/minus FLT_MAX

## ◆ _realCableLength

float _realCableLength
| protected

This will be the summed arc length for all sections. It is stored because it is used for tube generation.

## ◆ _sectionSlackPct

DynamicDoubleArray _sectionSlackPct
| protected

The percentage of slack that each cable segment has (starts out equally divided)... but the User can set the percentages.
This has a range of >= 0 and <= 1. The total of all sections should add to 1.

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

- gls_3d_cable.h