GL Studio C++ Runtime API
|
#include <gls_angular_scale.h>
Public Member Functions | |
GlsAngularScale (bool generateInstance=false) | |
GlsAngularScale (const GlsAngularScale &that, const bool generateNames) | |
virtual | ~GlsAngularScale () |
virtual void | SetAvailableAttributes (unsigned int value) |
virtual DisplayObject * | CloneObject (bool generateNames=false) |
virtual void | CopyProperties (DisplayObject *src) |
virtual void | CopyGeometry (DisplayObject *srcArg) |
virtual InterfaceListType * | GetCppInterfaceDescription (InterfaceListType *addToThisList=NULL) |
virtual void | GetCppInterfaceDescriptionFree (InterfaceListType *array) |
virtual void | PreDraw (const OpenGLMatrices &parentMatrices, Culler &culler) |
virtual void | Draw () |
virtual void | Scale (float px, float py, float pz, Vertex *anchor, int handleBar) |
virtual void | Rotate (const Vector &orig, float angle, const Vector &axis) |
virtual bool | Hit (float x, float y, float z, float scale, const Vector &directionVector, Vector *collisionPoint) |
virtual Vertex * | Vertices () |
virtual void | GetExtents (float &minx, float &miny, float &minz, float &maxx, float &maxy, float &maxz) |
virtual void | GetTransformedExtents (Vector &min, Vector &max, const GlsMatrixType &matrix, bool resetMinMax) |
virtual void | UpdateBoundingVolume () |
virtual void | SetColor (const GlsColor &color) |
virtual void | AntiAlias (bool alias) |
DisplayObject * | handle (DisplayEvent *ev) |
virtual void | SetValue (int spec, va_list &args) |
void | SetScale (int index, const GlsAngularScaleData &data) |
void | GetScale (int index, GlsAngularScaleData &data) |
void | DeconflictTicks (const bool &val) |
bool | DeconflictTicks () |
bool | HaloEnabled () |
void | HaloEnabled (const bool &val) |
float | HaloWidth () |
void | HaloWidth (const float &val) |
GlsColor | HaloColor () |
void | HaloColor (const GlsColor &val) |
bool | UseScalableLines () |
void | UseScalableLines (const bool &val) |
float | Radius () |
void | Radius (const float &val) |
void | InvalidateGeometry () |
GlsDisplayList & | DisplayList () |
Public Member Functions inherited from GLPolygon | |
GLPolygon (unsigned int nPoints, const Vertex *vertices) | |
GLPolygon (unsigned int nPoints, const Vertex *vertices, const Vertex &location) | |
GLPolygon (void) | |
GLPolygon (const GLPolygon &polygon, const bool generateNames) | |
virtual | ~GLPolygon (void) |
void | ConfigureMetaData (void) |
virtual void | CalculateTextureCoordinates (void) |
virtual void | CalcNormals (int windingOrder=1) |
virtual void | DeleteVertexAt (unsigned int index) |
virtual DisplayObject * | Pick3D (const Vector &winLoc, const Vector &logicalCoords, float scale, const Vector &directionVector, Vector &collisionWinLoc, const OpenGLMatrices &parentDrawn) |
Public Member Functions inherited from DisplayObject | |
DisplayObject (float x, float y, float z) | |
DisplayObject (const DisplayObject &object, const bool generateNames) | |
virtual | ~DisplayObject (void) |
void | Destroy () |
virtual void | AlphaMode (int mode) |
virtual int | AlphaMode (void) |
virtual bool | AntiAlias (void) |
void | ApplyTextureSettings (int textureIndex=-1) |
DistiAttribDict & | Attributes () |
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) |
bool | BlinkedOff (void) |
virtual bool | Blinking (void) |
virtual void | Blinking (const bool blink) |
virtual float | BlinkRate (void) |
virtual void | BlinkRate (const float rate) |
const Vector & | BoundingVolumeCenter () const |
void | BoundingVolumeCenter (const Vector ¢er) |
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 (void) |
bool | GetTexturePointTransformationMatrix (GlsMatrixType &world2tex) |
CallbackMethodCallerBase * | CallbackCaller () const |
void | CallbackCaller (CallbackMethodCallerBase *cb) |
virtual void | GetCenter (Vector ¢er) |
virtual GlsColor | GetColor () |
void | GetColor (unsigned char c4[]) |
void | GetColor (unsigned char &r, unsigned char &g, unsigned char &b, unsigned char &a) |
void | SetColor (unsigned char c4[]) |
void | SetColor (unsigned char r, unsigned char g, unsigned char b, unsigned char a) |
virtual void | CopyHierarchyProperties (DisplayObject *src, bool copyName) |
virtual void | CullBackFace (const bool val) |
virtual bool | CullBackFace (void) |
bool | Culled () const |
bool | CullTest (const GlsMatrixType *matrix, const Culler &culler) |
GlsMatrixType & | DcsMatrix () |
void | DcsMatrix (const GlsMatrixType &matrix) |
virtual void | DeleteVertex (unsigned int indexAfter) final |
virtual int | DepthTest (void) |
virtual void | DepthTest (unsigned char zbuf) |
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 | 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) |
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) |
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 | GenerateInstanceName (void) |
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 (void) |
void | InstanceName (const char *name) |
virtual bool | LightingEnabled () |
virtual void | LightingEnabled (bool lighting) |
virtual int | LineStippleMultiplier (void) |
virtual void | LineStippleMultiplier (int mult) |
virtual int | LineStipplePattern (void) |
virtual void | LineStipplePattern (int pattern) |
virtual float | LineWidth (void) |
virtual void | LineWidth (float width) |
virtual const Vertex & | Location (void) 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 (void) const |
float | Y (void) const |
float | Z (void) 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 (void) |
virtual float | ObjectHeight (void) |
virtual float | ObjectWidth (void) |
virtual void | SetOrigin (const Vertex &vert) |
virtual void | Parent (DisplayFrame *par) |
DisplayFrame * | Parent (void) const |
virtual void | ParentGroup (Group *group) |
Group * | ParentGroup (void) const |
unsigned char | Pickable () |
virtual void | Pickable (unsigned char pick) |
virtual int | PolygonEnd (void) |
virtual void | PolygonEnd (const int end) |
virtual int | PolygonMode (void) |
virtual void | PolygonMode (int mode) |
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) |
void | RestoreAlpha (void) |
void | RestoreAntiAlias (void) |
void | RestoreLighting (void) |
void | RestoreLineStyle (void) |
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) |
void | SaveMatrices () |
void | Set (int spec,...) |
bool | SetupAlpha (void) |
bool | SetupAntiAlias (void) |
void | SetupDepthTest (void) |
void | SetupLighting (void) |
bool | SetupLineStyle (void) |
void | SetupPolyDrawStyle (void) |
void | SetupShading (void) |
bool | SetupTexture (void) |
virtual int | Shading (void) |
virtual void | Shading (const int shading) |
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 (void) |
Vector * | GetTextureCoordinates (void) |
virtual int | TextureIndex (void) |
virtual void | TextureIndex (int textureIndex) |
virtual Vector * | GetTexturePoints (void) |
virtual bool | TextureRepeat (void) |
virtual void | TextureRepeat (const int rep) |
virtual int | TextureMappingTechnique (void) |
virtual void | TextureMappingTechnique (const int map) |
virtual int | TextureMagnificationFilter (void) |
virtual void | TextureMagnificationFilter (const int filter) |
virtual int | TextureMinificationFilter (void) |
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) |
void * | UserData (void) const |
void | UserData (void *data) |
virtual void | SetVertexColor (unsigned int vertex, unsigned char CurrentFillColor[]) |
virtual void | SetVertices (unsigned int nPoints, Vertex *vertices) |
void | VaSetVertices (unsigned int nPoints,...) |
int * | ViewMatrix () |
bool | Visible (void) const |
bool | Visibility (void) const |
virtual void | Visibility (const bool vis) |
virtual Vector | WorldRotationPoint (void) |
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 GlsPainter * | GetPainter () |
void | InvalidatePainter () |
virtual bool | IsVisibleInScene (const DisplayObject *obj=NULL) const |
Public Member Functions inherited from AttributeChangedNotifier | |
virtual | ~AttributeChangedNotifier () |
Public Member Functions inherited from WeakReferenceableMixin | |
void | AddWeakReference (WeakReference *weakRef) override |
void | NotifyWeakReferenceDestroyed (WeakReference *ref) override |
Protected Member Functions | |
void | MagnitudeChanged () |
void | CalculateRadiiUnit () |
void | CurrentColor (const GlsColor &newColor) |
void | CurrentLineWidth (const float &newLineWidth) |
void | RecomputeVertices () |
bool | TickNeeded (int currentLevel, float currentAngle) |
void | DrawScale (int i, float haloLength, float haloThickness) |
virtual void | DrawGeometry () |
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 | AllocateModelMatrix () |
bool | ApplyDynamicRotation (void) |
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 | 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) |
int | GetApplicableTextureIndex () |
int | GetApplicableTextureRepeat () |
Protected Member Functions inherited from WeakReferenceableMixin | |
WeakReferenceableMixin (void) | |
virtual | ~WeakReferenceableMixin () |
Additional Inherited Members | |
Public Types inherited from DisplayObject | |
enum | AvailableAttributesEnum |
Static Public Member Functions inherited from DisplayObject | |
static void | UseManualBlinkElapsedTime (bool useManualTime) |
static void | SetManualBlinkElapsedTime (double elapsedTime) |
Runtime implementation of a GlsAngularScale
GlsAngularScale | ( | bool | generateInstance = false | ) |
Create a new GlsAngularScale.
generateInstance | Whether or not to generate an instance name for this inputdevice |
GlsAngularScale | ( | const GlsAngularScale & | that, |
const bool | generateNames | ||
) |
The copy constructor for GlsAngularScale
that | The GlsAngularScale object that is being copied |
generateNames | Whether or not to generate a new instance name |
|
virtual |
Destructs a GlsAngularScale object
|
virtual |
Set the anti aliasing state for this object
alias | Whether or not to perform anti aliasing |
Reimplemented from DisplayObject.
|
protected |
Calculates _radiiUnit and _magnitude based on _radii
|
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.
generateNames | Whether or not to generate new names for cloned objects |
Reimplemented from GLPolygon.
|
virtual |
Copies the geometry information from one object to another. Used by the undo mechanism to allow user to undo a geometry change.
src | The object to copy geometry from |
Reimplemented from DisplayObject.
|
virtual |
Copies the attributes except for geometry attributes from one object to another. Used by the undo mechanism to undo most attribute change operations.
src | The object to copy properties from |
Reimplemented from DisplayObject.
|
protected |
Minimizes calls to glColor when drawing the scale
|
protected |
Minimizes calls to glLineWidth when drawing the scale
void DeconflictTicks | ( | const bool & | val | ) |
Sets the tick deconfliction state for this scale
val | Wether or not to enable tick deconfliction |
|
inline |
Gets the tick deconfliction state for this scale
|
inline |
Returns a reference to this object's display list
|
virtual |
Draws this object on the current display frame (_parent member).
Reimplemented from GLPolygon.
|
protectedvirtual |
Calculates current tick mark locations and performs OpenGL drawing commands
|
protected |
Calculates and draws a single scale using the given halo length and thickness
i | The index of the scale to draw |
haloLength | The length of the halo |
haloThickness | The thickness of the halo |
|
virtual |
Get the details of the Cpp Interface The actual interface is exposed in compiled code.
addToThisList | If not NULL this list will be added to then returned. If NULL a new list will be created. |
Reimplemented from DisplayObject.
|
virtual |
Frees the memory allocated by a previous call to GetCppInterfaceDescription
array | Memory allocated by a previous call to GetCppInterfaceDescription |
Reimplemented from DisplayObject.
|
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.
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.
void GetScale | ( | int | index, |
GlsAngularScaleData & | data | ||
) |
Gets data for one of the scales
index | Zero based index of the scale to get |
data | The GlsAngularScaleData structure to fill |
|
virtual |
Determines the static extents of the geometry projected to the XY plane of an arbirary coordinate system.
min | Returns the minimum values found in the traversal |
max | Returns the maximum values found in the traversal |
matrix | Transformation matrix from logical coordinates to the coordinate system to determine the extents in. |
resetMinMax | Normally not specified by user. Should be true for the initial call. |
Reimplemented from DisplayObject.
|
inline |
Gets the halo color for this scale
void HaloColor | ( | const GlsColor & | val | ) |
Sets the halo color for this scale
val | New halo color |
|
inline |
Gets the halo state for this scale
void HaloEnabled | ( | const bool & | val | ) |
Sets the halo state for this scale
val | Wether or not to enable halo |
|
inline |
Gets the halo width for this scale
void HaloWidth | ( | const float & | val | ) |
Sets the halo width for this scale
val | New halo width |
|
virtual |
Handles an event that is sent to the object.
ev | The event to send to the object |
Reimplemented from DisplayObject.
|
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.
x | X coordinate of pick ray start in logical coordinates. |
y | Y 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. |
Reimplemented from DisplayObject.
|
inline |
Causes the VBO for this object to be recomputed
|
protected |
Calculates _radii based on_magnitude and _radiiUnit
|
virtual |
Traverses the hierarchy calculating the _modelMatrix, _projMatrix, _viewMatrix as needed.
current | Current matrices inherited from parent |
culler | Object that possibly marks this object for culling |
Reimplemented from DisplayObject.
|
inline |
Gets the radius for this scale
void Radius | ( | const float & | val | ) |
Sets the radius for this scale
val | New radius |
|
protected |
Recomputes the object's vertices from its radii
Rotates the object (around the specified axis) by the angle indicated, at the point specified. Recalculates the vertex data.
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.
|
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.
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.
|
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.)
value | A bitfield specifying which types of attributes to make available. |
Reimplemented from DisplayObject.
|
virtual |
Sets the RGBA color for the object outline
color | The new color |
Reimplemented from DisplayObject.
void SetScale | ( | int | index, |
const GlsAngularScaleData & | data | ||
) |
Initializes data for one of the scales
index | Zero based index of the scale to set |
data | The data to set |
|
virtual |
Sets an attribute of this object using variable arguments
spec | A GLS_Initializer tag |
args | A variable argument list |
Reimplemented from DisplayObject.
|
protected |
Determines if a tick with the given angle should be drawn or not. If a higher priority scale already has a tick at that level and deconfliction is enabled, then this method will return false
|
virtual |
Updates the bounding volume of this object This method should be called if the vertices change for picking and culling to work correctly. This will only update this object. If PerformGroupCullCheck is enabled for one of the objects parents, you may also need to call CalculateParentBoundingBox() to update all of the objects parents.
Reimplemented from DisplayObject.
|
inline |
Gets the drawing mode for this scale
void UseScalableLines | ( | const bool & | val | ) |
Sets the drawing mode for this scale
val | New drawing mode |
|
virtual |
Gets the object's vertices. You should call UpdateBoundingVolume after changing an object's extents.
Reimplemented from DisplayObject.
|
protected |
Stores the current color. Used when calculating a new display list so that redundant glColor calls are not made
|
protected |
True if the current color has been set. Gets reset every time a new display list is recalculated.
|
protected |
Stores the current line width. Used when calculating a new display list so that redundant glLineWidth calls are not made
|
protected |
True if the current line width has been set. Gets reset every time a new display list is recalculated.
|
protected |
True if duplicated tick marks are removed
|
protected |
Stores the scale in a display list for faster drawing
|
protected |
Color of the halo
|
protected |
True if haloing is enabled
|
protected |
Width of the halo in logical units
|
protected |
Magnitudes of the two radii
|
protected |
True when the object's vertices need to be recalculated
|
protected |
Always equal to _radiiUnit * _magnitude
|
protected |
Unit vectors describing the radii
|
protected |
The particulars of each scale
|
protected |
True if scale is drawn with polygon quads instead of lines