| GL Studio C++ Runtime API

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

`#include <gls_cylinder.h>`

Inheritance diagram for GlsCylinder:

## 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
| GlsCylinder (float x, float y, float z)
| GlsCylinder (bool newGlsCylinder=true)
| GlsCylinder (const GlsCylinder &that, const bool generateName)
virtual | ~GlsCylinder ()
virtual void | SetAvailableAttributes (unsigned int value) override
virtual bool | GetPlaneVectorPoints (Vertex &p1, Vertex &p2, Vertex &p3, Vertex &planeVector) override
virtual void | CalculateTextureCoordinates () override
virtual void | GetExtents (float &x, float &y, float &z, float &x1, float &y1, float &z1) override
virtual void | Draw () override
virtual bool | Hit (float x, float y, float z, float scale, const Vector &directionVector, Vector *collisionPoint) override
virtual void | Scale (float px, float py, float pz, Vertex *anchor, int handleBar=0) override
virtual void | TextureIndex (int index) override
virtual void | CopyProperties (DisplayObject *src) override
virtual void | CopyGeometry (DisplayObject *src) override
virtual DisplayObject * | CloneObject (bool generateNames=false) override
virtual void | Rotate (const Vector &orig, float angle, const Vector &axis) override
virtual void | SetFillColor (const GlsColor &color) override
virtual GlsColor | GetFillColor () override
virtual void | FaceStartAngle (float deg)
virtual float | FaceStartAngle ()
virtual void | FaceEndAngle (float deg)
virtual float | FaceEndAngle ()
virtual void | TopSizeFactor (float size)
virtual float | TopSizeFactor ()
virtual void | BottomSizeFactor (float size)
virtual float | BottomSizeFactor ()
virtual void | Segments (unsigned int segments)
virtual unsigned int | Segments ()
virtual void | Faces (unsigned int faces)
virtual unsigned int | Faces ()
virtual void | TopFace (bool top)
virtual bool | TopFace ()
virtual void | BottomFace (bool bottom)
virtual bool | BottomFace ()
virtual void | GetRadii (Vector &r1, Vector &r2, Vector &r3)
virtual void | SetRadii (const Vector &r1, const Vector &r2, const Vector &r3)
virtual void | Scale (float px, float py, float pz, Vertex *anchor, int handleBar=0)
virtual int | TextureIndex ()
virtual void | TextureIndex (int textureIndex)
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 | 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 ()
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

## Protected Member Functions
void | SetResizeRecalculate ()
void | Recalculate ()
void | Resize ()
virtual void | SetValue (int spec, va_list &args) override
virtual void | SetFromGloData (GlsGloFileAttribute &data) override
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 ()

## Protected Attributes
Vector | _radii [3]
| Cylinder radii, 3 vectors.
GlsColor | _objectColor
| Fill color of the object.
float | _faceStartDeg
| 0-360, where 0 is positive x-axis of cylinder.
float | _faceEndDeg
| 0-360, where 0 is positive x-axis of cylinder.
float | _topSize
| 0 - 1, scale of top and bottom ends.
float | _bottomSize
| 0 - 1, scale of top and bottom ends.
unsigned int | _segments
| Number of segments used to draw the cylinder.
unsigned int | _faces
| Number of faces used to draw the cylinder.
bool | _needsRecalculate
| True when the cylinder vertices need to be recalculated.
bool | _needsResize
| True when the cylinder needs to be resized.
bool | _topFace
| True when there is a circle on top of the cylinder.
bool | _bottomFace
| True when there is a circle on bottom of the cylinder.
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 | GlsCylinderEditor

## Additional Inherited Members
Static Public Member Functions inherited from DisplayObject
static void | UseManualBlinkElapsedTime (bool useManualTime)
static void | SetManualBlinkElapsedTime (double elapsedTime)

## Detailed Description

The Cylinder class. Implements Cylinder primitive

## Constructor & Destructor Documentation

## ◆ GlsCylinder() [1/3]

GlsCylinder | ( | float | x,
|  | float | y,
|  | float | z
| ) |  |

Constructor. Creates a new GlsCylinder object at given coordinates.

Parameters

  x | x-coordinate of new GlsCylinder
  y | y-coordinate of new GlsCylinder
  z | z-coordinate of new GlsCylinder

## ◆ GlsCylinder() [2/3]

GlsCylinder | ( | bool | newGlsCylinder = `true` | ) |

Allocate a (blank) GlsCylinder object.

Parameters

  newGlsCylinder | Unused, optional, kept for backward compatibility.

## ◆ GlsCylinder() [3/3]

GlsCylinder | ( | const GlsCylinder & | that,
|  | const bool | generateName
| ) |  |

The copy constructor for GlsCylinder

Parameters

  that | The GlsCylinder object that is being copied
  generateName | Whether or not to generate a new instance name

## ◆ ~GlsCylinder()

virtual ~GlsCylinder | ( |  | ) |
| virtual

Destroy a GlsCylinder object

## Member Function Documentation

## ◆ BottomFace() [1/2]

virtual bool BottomFace | ( |  | ) |
| virtual

Gets whether or not to draw a bottom face on the cylinder

Returns
  Presences of a bottom face, returns the value of to _bottomFace

## ◆ BottomFace() [2/2]

virtual void BottomFace | ( | bool | bottom | ) |
| virtual

Sets whether or not to draw a bottom face on the cylinder

Parameters

  bottom | Presences of a bottom face, value assigned to _bottomFace

## ◆ BottomSizeFactor() [1/2]

virtual float BottomSizeFactor | ( |  | ) |
| virtual

Gets the size factor for the bottom of the cylinder

Returns
  Returns the value of _bottomSize

## ◆ BottomSizeFactor() [2/2]

virtual void BottomSizeFactor | ( | float | size | ) |
| virtual

Sets the size factor for the bottom of the cylinder

Parameters

  size | Factor to which to set _bottomSize

## ◆ CalculateTextureCoordinates()

virtual void CalculateTextureCoordinates | ( |  | ) |
| override virtual

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

Reimplemented from DisplayObject.

## ◆ CloneObject()

virtual DisplayObject * CloneObject | ( | bool | generateNames = `false` | ) |
| override 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

Implements DisplayObject.

## ◆ CopyGeometry()

virtual void CopyGeometry | ( | DisplayObject * | src | ) |
| override virtual

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

Parameters

  src | The object to copy geometry from

Reimplemented from DisplayObject.

## ◆ CopyProperties()

virtual void CopyProperties | ( | DisplayObject * | src | ) |
| override 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 DisplayObject.

## ◆ Draw()

virtual void Draw | ( |  | ) |
| override virtual

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

Implements DisplayObject.

## ◆ FaceEndAngle() [1/2]

virtual float FaceEndAngle | ( |  | ) |
| virtual

Gets the ending degree value for the cylinder

Returns
  Returns the value of _faceEndDeg

## ◆ FaceEndAngle() [2/2]

virtual void FaceEndAngle | ( | float | deg | ) |
| virtual

Sets the ending degree value for the cylinder

Parameters

  deg | Degree value to which to set _faceEndDeg

## ◆ Faces() [1/2]

virtual unsigned int Faces | ( |  | ) |
| virtual

Gets the number of faces around the cylinder

Returns
  Returns the value of _faces

## ◆ Faces() [2/2]

virtual void Faces | ( | unsigned int | faces | ) |
| virtual

Sets the number of faces around the cylinder

Parameters

  faces | Desired number of faces to which to set _faces

## ◆ FaceStartAngle() [1/2]

virtual float FaceStartAngle | ( |  | ) |
| virtual

Gets the starting degree value for the cylinder

Returns
  Returns the value of _faceStartDeg

## ◆ FaceStartAngle() [2/2]

virtual void FaceStartAngle | ( | float | deg | ) |
| virtual

Sets the starting degree value for the cylinder

Parameters

  deg | Degree value to which to set _faceStartDeg

## ◆ GetExtents()

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

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

  x | Gets the minimum x extent
  y | Gets the minimum y extent
  z | Gets the minimum z extent
  x1 | Gets the maximum x extent
  y1 | Gets the maximum y extent
  z1 | Gets the maximum z extent

Reimplemented from DisplayObject.

## ◆ 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 | ( |  | ) |
| override virtual

Gets the fill color of the object

Returns
  The fill color

Reimplemented from DisplayObject.

## ◆ 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

  r | Gets the red component (0-255 range) of the fill color for the object
  g | Gets the blue component (0-255 range) of the fill color for the object
  b | Gets the green component (0-255 range) of the fill color for the object
  a | Gets 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

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

## ◆ GetPlaneVectorPoints()

virtual bool GetPlaneVectorPoints | ( | Vertex & | p1,
|  | Vertex & | p2,
|  | Vertex & | p3,
|  | Vertex & | planeVector
| ) |  |
| override virtual

Finds three coplanar points and the surface normal, if possible. This calculation is performed using the Vertices() of this object. Used in the editor to determine how to map a texture onto an object.

Parameters

  p1 | Returns a point on the plane
  p2 | Returns a point on the plane
  p3 | Returns a point on the plane
  planeVector | Returns the surface normal of the plane

Returns
  True if 3 coplanar points were found

Reimplemented from DisplayObject.

## ◆ GetRadii()

virtual void GetRadii | ( | Vector & | r1,
|  | Vector & | r2,
|  | Vector & | r3
| ) |  |
| virtual

Gets the radii vectors for the cylinder

Parameters

  r1 | First radius vector (width)
  r2 | First radius vector (height)
  r3 | First radius vector (depth)

## ◆ Hit()

virtual bool Hit | ( | float | x,
|  | float | y,
|  | float | z,
|  | float | scale,
|  | const Vector & | directionVector,
|  | Vector * | collisionPoint
| ) |  |
| override 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 DisplayObject.

## ◆ Recalculate()

void Recalculate | ( |  | ) |
| protected

Recalculates the cylinder vertices values

## ◆ Resize()

void Resize | ( |  | ) |
| protected

Reallocates the vertices of the cylinder

## ◆ 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

  orig | The point to rotate around
  angle | The angle to rotate by, in degrees
  axis | The arbitrary axis to rotate the object around

Reimplemented from DisplayObject.

## ◆ Rotate() [2/4]

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

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

Parameters

  orig | The point to rotate around
  angle | The angle to rotate by, in degrees
  axis | The arbitrary axis to rotate the object around

Reimplemented from DisplayObject.

## ◆ 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

  origin | The point to rotate around
  angle | The angle to rotate by, in degrees
  axis | The 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

  angle | The angle to rotate by, in degrees
  axis | The axis to rotate the object around.

Reimplemented from DisplayObject.

## ◆ Scale() [1/2]

virtual void Scale | ( | float | px,
|  | float | py,
|  | float | pz,
|  | Vertex * | anchor,
|  | int | handleBar = `0`
| ) |  |
| virtual

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

  px | Value of the percentage of scale in x-axis
  py | Value of the percentage of scale in y-axis
  pz | Value of the percentage of scale in z-axis
  anchor | Anchor from which to scale object relative to
  handleBar | Vertex that is being dragged

Reimplemented from DisplayObject.

## ◆ Scale() [2/2]

virtual void Scale | ( | float | px,
|  | float | py,
|  | float | pz,
|  | Vertex * | anchor,
|  | int | handleBar = `0`
| ) |  |
| override virtual

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

  px | Value of the percentage of scale in x-axis
  py | Value of the percentage of scale in y-axis
  pz | Value of the percentage of scale in z-axis
  anchor | Anchor from which to scale object relative to
  handleBar | Vertex that is being dragged

Reimplemented from DisplayObject.

## ◆ Segments() [1/2]

virtual unsigned int Segments | ( |  | ) |
| virtual

Gets the number of vertical segments per face

Returns
  Returns the value of _segments

## ◆ Segments() [2/2]

virtual void Segments | ( | unsigned int | segments | ) |
| virtual

Sets the number of vertical segments per face

Parameters

  segments | Desired number of segments to which to set _segments

## ◆ SetAvailableAttributes()

virtual void SetAvailableAttributes | ( | unsigned int | value | ) |
| override 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 DisplayObject.

## ◆ SetFillColor() [1/4]

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

## ◆ SetFillColor() [2/4]

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

Sets the RGBA color for filling the object

Parameters

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

Reimplemented from DisplayObject.

## ◆ SetFillColor() [3/4]

void SetFillColor | ( | unsigned char | c4[] | ) |
| inline

Sets the RGBA color for filling the object

Parameters

  c4 | The 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

  r | The new red component (0-255 range) of the fill color for the object
  g | The new blue component (0-255 range) of the fill color for the object
  b | The new green component (0-255 range) of the fill color for the object
  a | The new alpha component (0-255 range) of the fill color for the object NOTE: Not Virtual. Simply calls void SetFillColor(const GlsColor& color)

## ◆ SetFromGloData()

virtual void SetFromGloData | ( | GlsGloFileAttribute & | data | ) |
| override protected virtual

Set a single attribute from the GLO file.

Parameters

  data | The attribute to set and its associated data.

Reimplemented from DisplayObject.

## ◆ SetRadii()

virtual void SetRadii | ( | const Vector & | r1,
|  | const Vector & | r2,
|  | const Vector & | r3
| ) |  |
| virtual

Sets the radii vectors for the cylinder

Parameters

  r1 | First radius vector (width)
  r2 | First radius vector (height)
  r3 | First radius vector (depth)

## ◆ SetResizeRecalculate()

void SetResizeRecalculate | ( |  | ) |
| protected

Sets the resize and recalculate flags, causing the cylinder to be resized and recalculated the next time the cylinder draws

## ◆ SetValue()

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

Sets an attribute of this object using variable arguments

Parameters

  spec | A GLS_Initializer tag
  args | A variable argument list

Reimplemented from DisplayObject.

## ◆ TextureIndex() [1/3]

virtual int TextureIndex | ( |  | ) |
| virtual

Get the texture index for this object

Returns
  The texture index for this object

Reimplemented from DisplayObject.

## ◆ TextureIndex() [2/3]

virtual void TextureIndex | ( | int | textureIndex | ) |
| override virtual

Sets the texture index to be used when drawing the object.

Parameters

  textureIndex | The texture index to use. -1 indicates that no texture will be drawn.

Reimplemented from DisplayObject.

## ◆ TextureIndex() [3/3]

virtual void TextureIndex | ( | int | textureIndex | ) |
| virtual

Sets the texture index to be used when drawing the object.

Parameters

  textureIndex | The texture index to use. -1 indicates that no texture will be drawn.

Reimplemented from DisplayObject.

## ◆ TopFace() [1/2]

virtual bool TopFace | ( |  | ) |
| virtual

Gets whether or not to draw a top face on the cylinder

Returns
  Presences of a top face, returns the value of to _topFace

## ◆ TopFace() [2/2]

virtual void TopFace | ( | bool | top | ) |
| virtual

Sets whether or not to draw a top face on the cylinder

Parameters

  top | Presences of a top face, value assigned to _topFace

## ◆ TopSizeFactor() [1/2]

virtual float TopSizeFactor | ( |  | ) |
| virtual

Gets the size factor for the top of the cylinder

Returns
  Returns the value of _topSize

## ◆ TopSizeFactor() [2/2]

virtual void TopSizeFactor | ( | float | size | ) |
| virtual

Sets the size factor for the top of the cylinder

Parameters

  size | Factor to which to set _topSize

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

- gls_cylinder.h