GL Studio C++ Runtime API
|
#include <gls_schematic_poly_line_interconnect.h>
Classes | |
struct | CornerCircle |
struct | InterconnectVertex |
Public Types | |
typedef GLPolygon | _BaseClass |
Deprecated typedef for the base class. | |
typedef GLPolygon | BaseClass |
Typedef for the base class. | |
Public Types inherited from GLPolygon | |
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 | |
GlsSchematicPolyLineInterconnect (const GlsSchematicPolyLineInterconnect &that, const bool generateNames) | |
virtual | ~GlsSchematicPolyLineInterconnect () |
virtual void | SetAvailableAttributes (unsigned int value) DISTI_METHOD_OVERRIDE |
virtual DisplayObject * | CloneObject (bool generateNames=false) DISTI_METHOD_OVERRIDE |
virtual void | CopyGeometry (DisplayObject *src) DISTI_METHOD_OVERRIDE |
virtual void | CopyProperties (DisplayObject *src) DISTI_METHOD_OVERRIDE |
virtual InterfaceListType * | GetCppInterfaceDescription (InterfaceListType *addToThisList=NULL) DISTI_METHOD_OVERRIDE |
virtual void | GetCppInterfaceDescriptionFree (InterfaceListType *array) DISTI_METHOD_OVERRIDE |
virtual void | Calculate (double time) DISTI_METHOD_OVERRIDE |
virtual void | PreDraw (const OpenGLMatrices &parentMatrices, Culler &culler) DISTI_METHOD_OVERRIDE |
virtual void | Draw () DISTI_METHOD_OVERRIDE |
virtual void | CalculateTextureCoordinates () DISTI_METHOD_OVERRIDE |
virtual DisplayObject * | handle (DisplayEvent *ev) DISTI_METHOD_OVERRIDE |
virtual void | SetValue (int spec, va_list &args) DISTI_METHOD_OVERRIDE |
virtual void | Scale (float px, float py, float pz, Vertex *anchor, int handleBar=0) DISTI_METHOD_OVERRIDE |
virtual void | GetExtents (float &x, float &y, float &z, float &x1, float &y1, float &z1) DISTI_METHOD_OVERRIDE |
virtual bool | Hit (float x, float y, float z, float scale, const Vector &directionVector, Vector *collisionPoint) DISTI_METHOD_OVERRIDE |
virtual void | Rotate (const Vector &orig, float angle, const Vector &axis) DISTI_METHOD_OVERRIDE |
virtual Vertex | WorldVertex (unsigned int i) DISTI_METHOD_OVERRIDE |
virtual void | SetVertices (unsigned int nPoints, Vertex *vertices) DISTI_METHOD_OVERRIDE |
void | DeleteVertexAt (unsigned int index) DISTI_METHOD_OVERRIDE |
void | InsertVertexAt (unsigned int index) DISTI_METHOD_OVERRIDE |
virtual void | SetOrientationVectors (const Vector &iVector, const Vector &jVector) |
virtual void | GetOrientationVectors (Vector &iVector, Vector &jVector) |
virtual void | SetLineThickness (const float lineThickness) |
virtual float | GetLineThickness () |
virtual void | SetRoundedCorners (const bool roundedCorners) |
virtual bool | GetRoundedCorners () |
virtual void | SetCornerRadius (const float cornerRadius) |
virtual float | GetCornerRadius () |
virtual void | SetForceExactCornerRadius (const bool forceExactCornerRadius) |
virtual bool | GetForceExactCornerRadius () |
virtual void | SetCornerSegments (const unsigned int cornerSegments) |
virtual unsigned int | GetCornerSegments () |
virtual void | SetInterconnectTextureIndex (const int interconnectTextureIndex) |
virtual int | GetInterconnectTextureIndex () |
virtual void | SetInterconnectTextureRepeatLength (const float interconnectTextureRepeatLength) |
virtual float | GetInterconnectTextureRepeatLength () |
virtual void | SetFlowTextureIndex (const int flowTextureIndex) |
virtual int | GetFlowTextureIndex () |
virtual void | SetFlowTextureRepeatLength (const float flowTextureRepeatLength) |
virtual float | GetFlowTextureRepeatLength () |
virtual void | SetShowFlow (const bool showFlow) |
virtual bool | GetShowFlow () |
virtual void | SetFlowRate (const float flowRate) |
virtual float | GetFlowRate () |
virtual void | SetShowFlowBlink (const bool showFlowBlink) |
virtual bool | GetShowFlowBlink () |
virtual void | SetFlowBlinkRate (const float flowBlinkRate) |
virtual float | GetFlowBlinkRate () |
virtual void | SetFlowBlinkStartColor (const GlsColor &startColor) |
virtual GlsColor | GetFlowBlinkStartColor () |
virtual void | SetFlowBlinkEndColor (const GlsColor &endColor) |
virtual GlsColor | GetFlowBlinkEndColor () |
virtual void | SetUseDisplayList (const bool useDisplayList) |
virtual bool | GetUseDisplayList () |
virtual void | SetEndingChamferDistance (const float endingChamferDistance) |
virtual float | GetEndingChamferDistance () |
Public Member Functions inherited from GLPolygon | |
GLPolygon (unsigned int nPoints, const Vertex *vertices) | |
GLPolygon (unsigned int nPoints, const Vertex *vertices, const Vertex &location) | |
GLPolygon () | |
GLPolygon (const GLPolygon &polygon, const bool generateNames) | |
virtual | ~GLPolygon () |
void | ConfigureMetaData () |
virtual DisplayObject * | CloneObject (bool generateNames=false) |
virtual void | Draw () |
virtual void | CalculateTextureCoordinates () |
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 | 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 ¢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 () |
virtual void | CalculateTextureCoordinates () |
bool | GetTexturePointTransformationMatrix (GlsMatrixType &world2tex) |
CallbackMethodCallerBase * | CallbackCaller () const |
void | CallbackCaller (CallbackMethodCallerBase *cb) |
virtual void | GetCenter (Vector ¢er) |
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 InterfaceListType * | GetCppInterfaceDescription (InterfaceListType *addToThisList=NULL) |
virtual void | GetCppInterfaceDescriptionFree (InterfaceListType *array) |
virtual void | CullBackFace (const bool val) |
virtual bool | CullBackFace () |
bool | Culled () const |
void | Culled (bool val) |
bool | CullTest (const GlsMatrixType *matrix, const Culler &culler) |
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 | DynamicTranslate (float amount, int axis, bool relative=false) |
virtual float | DynamicTranslation (int axis) |
virtual Vector | DynamicTranslation () |
DisplayObjectEditor * | Editor () |
const DisplayObjectEditor * | Editor () const |
void | Editor (DisplayObjectEditor *editor) |
virtual void | GetExtents (float &x, float &y, float &z, float &x1, float &y1, float &z1) |
void | GetExtentsDCS (Vector &min, Vector &max) |
void | GetFillColor (unsigned char &r, unsigned char &g, unsigned char &b, unsigned char &a) |
void | GetFillColor (unsigned char c4[]) |
virtual GlsColor | GetFillColor () |
void | SetFillColor (unsigned char r, unsigned char g, unsigned char b, unsigned char a) |
void | SetFillColor (unsigned char c4[]) |
virtual void | SetFillColor (const GlsColor &color) |
virtual void | FinishObject () |
virtual void | GenerateInstanceName () |
virtual 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 ¤t, 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) |
void | RestoreAlpha () |
void | RestoreAntiAlias () |
void | RestoreLighting () |
void | RestoreLineStyle () |
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 () |
bool | SetupAntiAlias () |
void | SetupDepthTest () |
void | SetupLighting () |
bool | SetupLineStyle () |
void | SetupPolyDrawStyle () |
void | SetupShading () |
bool | SetupTexture () |
virtual int | Shading () |
virtual void | Shading (const int shading) |
virtual void | GetTransformedExtents (Vector &min, Vector &max, const GlsMatrixType &matrix, bool resetMinMax=true) |
virtual void | SetTexCoords (unsigned int nPoints, Vector *new_tex_coord, bool isVectorArray=true) |
void | SetTexCoords (unsigned int nPoints, Vertex *new_tex_coord) |
void | VaSetTexCoords (unsigned int nPoints,...) |
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) |
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 GLPolygon | |
static DisplayObject * | CreateInstance () |
Static Public Member Functions inherited from DisplayObject | |
static InterfaceListType * | StaticGetCppInterfaceDescription (InterfaceListType *addToThisList=NULL) |
static void | UseManualBlinkElapsedTime (bool useManualTime) |
static void | SetManualBlinkElapsedTime (double elapsedTime) |
Protected Types | |
typedef DynamicArray< InterconnectVertex > | InterconnectVertexArray |
typedef DynamicArray< CornerCircle > | CornerCircleArray |
typedef DynamicArray< Vector > | VectorArray |
Protected Member Functions | |
virtual void | VerticesChanged () |
virtual void | OrientationChanged () |
virtual GlsMatrixType | GetOrientationMatrix () |
virtual void | SetRebuild () |
virtual void | Rebuild () |
virtual void | EmitInterconnectGeometry (const bool drawFlowUVs) |
virtual void | EnablePreviewPath (const bool enablePreviewPath) |
virtual void | EmitPreviewPathGeometry () |
virtual VectorArray | GetUniqueVerts (const unsigned int numVertices, Vertex *vertices) |
virtual bool | FindCornerCircle (const Vector &v0, const Vector &v1, const Vector &v2, const float desiredCornerRadius, const float minRadius, const bool forceExactCornerRadius, CornerCircle &c, bool forceCircle=false) |
virtual float | ComputePathLength (CornerCircleArray &cornerCircles) |
virtual float | AddInterconnectLineSegment (InterconnectVertexArray &interconnectVerts, const Vector &start, const Vector &finish, float lineThickness, float curLength, const float totalLength, const unsigned int numInterconnectRepeats, const unsigned int numFlowRepeats, const bool lastSegmentInPath=false) |
virtual float | AddInterconnectRoundedCorner (InterconnectVertexArray &interconnectVerts, const CornerCircle &c, float lineThickness, float curLength, const float totalLength, const unsigned int numInterconnectRepeats, const unsigned int numFlowRepeats) |
Protected Member Functions inherited from DisplayObject | |
virtual void | VaListSetVertices (unsigned int nPoints, va_list args) |
virtual void | VaListSetNormals (unsigned int nPoints, va_list args) |
virtual void | VaListSetTexCoords (unsigned int nPoints, va_list args) |
virtual int | ColorMaterialMode () |
void | AllocateModelMatrix () |
bool | ApplyDynamicRotation () |
virtual void | CalcDrawMatrix () |
void | CalcDrawMatrixIfExists () |
virtual void | CalculateMatrices (const OpenGLMatrices &newMatrices) |
bool | InsideVertexExtents (float x, float y, unsigned int nVerts, Vertex *verts, float tolerance) |
void | LastDrawMatrixLocation (const Vertex &loc) |
const 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 | SetValue (int spec, va_list &args) |
int | GetApplicableTextureIndex () |
int | GetApplicableTextureRepeat () |
Protected Member Functions inherited from WeakReferenceableMixin | |
WeakReferenceableMixin () | |
virtual | ~WeakReferenceableMixin () |
Friends | |
class | GlsSchematicPolyLineInterconnectEditor |
Runtime implementation of a GlsSchematicPolyLineInterconnect
|
protected |
array of CornerCircle
|
protected |
array of InterconnectVertex
|
protected |
array of Vector
GlsSchematicPolyLineInterconnect | ( | const GlsSchematicPolyLineInterconnect & | that, |
const bool | generateNames | ||
) |
Copy constructor
that | The object to copy from. |
generateNames | Whether or not to generate an instance name for this object. |
|
virtual |
Destructs a GlsSchematicPolyLineInterconnect object
|
protectedvirtual |
Add a line segment to the given array of interconnect verts.
interconnectVerts | Receives line segment is start and finish are not virtually the same point. |
start | Starting point of line segment. |
finish | Finish point of line segment. |
lineThickness | Thickness of line segment. |
curLength | Current length of path at the starting point. |
totalLength | Total length of path that contains the line segment. |
numInterconnectRepeats | Number of interconnect texture repeats over entire path that contains the line segment. |
numFlowRepeats | Number of flow texture repeats over entire path that contains the line segment. |
lastSegmentInPath | [optional, defaults to false] true if this line segment is the last in the path. |
|
protectedvirtual |
Add a rounded to the given array of interconnect verts.
interconnectVerts | Receives line segment is start and finish are not virtually the same point. |
c | Info for rounded corner to add. |
lineThickness | Thickness of line segment. |
curLength | Current length of path at the starting point. |
totalLength | Total length of path that contains the line segment. |
numInterconnectRepeats | Number of interconnect texture repeats over entire path that contains the line segment. |
numFlowRepeats | Number of flow texture repeats over entire path that contains the line segment. |
|
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.
time | The elaspsed time in seconds since program start |
Reimplemented from DisplayObject.
|
virtual |
Recalculates the texture coordinates for the object based on the TexturePoints.
Reimplemented from GLPolygon.
|
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.
|
protectedvirtual |
Compute the length of the path described by the given corner array.
cornerCircles | The corners in question. |
|
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.
|
static |
|
virtual |
DeleteVertexAt is overloaded in polygon to prevent having a poly with less than 2 verts. This prevents incorrect GL calls when polygon is set to POLY_MODE_FILLED
index | The index of the vertex to delete. |
Reimplemented from GLPolygon.
|
virtual |
Draws this object on the current display frame (_parent member).
Reimplemented from GLPolygon.
|
protectedvirtual |
emit the geomentry in _interconnectQuads to OpenGL as quads and an outline
drawFlowUVs | true to draw with flow UV's else false to draw with interconnect UV's |
|
protectedvirtual |
emit the preview path geometry to GL – mainly used fir debugging and when the line is selected in the editor
|
protectedvirtual |
turn on/off preview Path drawing ( useful for debugging and when the object is selected in the editor )
enablePreviewPath | true to enable else false |
|
protectedvirtual |
Find a corner circle that will fit the corner defined by v0 -> v1 -> v2
v0 | starting point |
v1 | corner point |
v2 | ending point |
desiredCornerRadius | desired radius for corner circle |
minRadius | minimum radius for ccorner circle |
forceExactCornerRadius | true if the corner can only be rounded with a radius equal to the desiredCornerRadius else false to allow a smaller radius to be used if needed (>minRadius) |
c | [out] receives corner info |
forceCircle | [optional, defaults to false] true to force a rounded corner to be found (used to avoid lack of precision issues when the circle is tangent at the midpoint of either v0 -> v1, or v1 -> v2 |
|
virtual |
get the corner radius in logical units
|
virtual |
get the number of segments used in rounded corners
|
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 |
get the last segment chamfer distance (NOTE: not controllable in editor, usually used by the GlsSchematicTeeInterconnect plugin at runtime)
|
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.
|
virtual |
get the flow blink end color
|
virtual |
get the flow blink rate in hz
|
virtual |
get the flow blink start color
|
virtual |
get the flow rate in "flow textures" / second
|
virtual |
get the flow texture index else NO_TEXTURE if no flow texture
|
virtual |
get the number of logical units per flow texture repeat ( >0.0 )
|
virtual |
get force exact corner radius state
|
virtual |
get the interconnect texture index else NO_TEXTURE if no interconnect texture
|
virtual |
get the number of logical units per interconnect texture repeat ( >0.0 )
|
virtual |
get the line thickness in logical units
|
protectedvirtual |
get the rotation matrix for the current _orientation vectors
get the i and j orientation vectors that orient the 2-D schematic in 3 space
iVector | [out] iVector |
jVector | [out] jVector |
|
virtual |
get rounded corners
|
virtual |
get whether or not the flow is displayed
|
virtual |
get whether or not the flow blink is displayed (NOTE: normal flow is not drawn if flow blink is true)
|
protectedvirtual |
Eliminate adjacent vertices that are not unique between each other
numVertices | number of input vertices |
vertices | input vertices |
|
virtual |
get use display list
|
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. |
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.
|
virtual |
Insert a vertex at index. Duplicate the vertex pointed to by index, so that there are two vertices that are exactly the same. If index is greater than the number of vertices, then the last vertex is duplicated.
index | The index to insert a vertex at. |
Reimplemented from DisplayObject.
|
protectedvirtual |
notify that the orientation vectors have changed
|
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.
|
protectedvirtual |
rebuild the polyline
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 |
set the corner radius in logical units
cornerRadius | new corner radisu in logical units |
|
virtual |
set the number of segments used in rounded corners
cornerSegments | number of segments to use in rounded corners |
|
virtual |
set the last segment chamfer distance (NOTE: not controllable in editor, usually used by the GlsSchematicTeeInterconnect plugin at runtime)
endingChamferDistance | distance from end of last line segment to start chamfer ( 0.0f to disable ) |
|
virtual |
set the flow blink end color
endColor | flow blink end color |
|
virtual |
set the flow blink rate in hz
flowBlinkRate | flow blink rate in hz |
|
virtual |
set the flow blink start color
startColor | flow blink start color |
|
virtual |
set the flow rate in "flow textures" / second
flowRate | flow rate in "flow textures" / second |
|
virtual |
set the flow texture index
flowTextureIndex | new flow texture index else NO_TEXTURE if no flow texture |
|
virtual |
set the number of logical units per flow texture repeat ( >0.0 ) NOTE: number of actual repeats for the whole interconnect is always rounded to the nearest whole number so that adjacent interconnect's textures lineup
flowTextureRepeatLength | new flow texture repeat length |
|
virtual |
set force exact corner radius
forceExactCornerRadius | true to force rounded corners to use the exact corner radius specified by SetCornerRadius(). If true, a corner that cannot be made with this radius will not be rounded. |
|
virtual |
set the interconnect texture index
interconnectTextureIndex | new interconnect texture index else NO_TEXTURE if no interconnect texture |
|
virtual |
set the number of logical units per interconnect texture repeat ( >0.0 ) NOTE: number of actual repeats for the whole interconnect is always rounded to the nearest whole number so that adjacent interconnect's textures lineup
interconnectTextureRepeatLength | new interconnect texture repeat length |
|
virtual |
set the line thickness in logical units
lineThickness | new line thickness in logical units |
set the i and j orientation vectors that orient the 2-D schematic in 3 space
iVector | new iVector |
jVector | new jVector |
|
protectedvirtual |
flag line to be rebuilt on next draw
|
virtual |
set rounded corners
roundedCorners | true for rounded corners |
|
virtual |
set whether or not the flow is displayed
showFlow | true to show flow else false |
|
virtual |
set whether or not the flow blink is displayed (NOTE: normal flow is not drawn if flow blink is true)
showFlowBlink | true to show flow blink else false |
|
virtual |
enable/disable using display list for drawing
useDisplayList | true to use display list |
|
virtual |
Sets an attribute of this object using variable arguments
spec | A GLS_Initializer tag |
args | A variable argument list |
Reimplemented from DisplayObject.
|
virtual |
Sets the vertex data for this polygon You should call UpdateBoundingVolume after changing an object's extents.
nPoints | The number of vertices in the object |
vertices | The vertex data for the object |
Reimplemented from DisplayObject.
|
protectedvirtual |
notify that vertices have changed
|
virtual |
Gets a vertex from the object, in World coordinates (i.e. not relative to the location as is the case with the Vertices() API call).
i | Index of the vertex to get |
Reimplemented from DisplayObject.
|
protected |
radius for rounded corners ( >0.0 )
|
protected |
number of segments to use in rounded corners (2 <= cornerSegments <= 100)
|
protected |
true to draw the preview path (mainly used in editor)
|
protected |
distance from end of last line segment to start chamfer ( 0.0f to disable ) ( >= 0.0f )
|
protected |
ending color for flow blink
|
protected |
rate of flow blink in hz >= 0.0
|
protected |
starting color for flow blink
|
protected |
display list for drawing flow (if using display lists)
|
protected |
the flow rate in "flow textures" / second
|
protected |
texture index for flow texture else NO_TEXTURE
|
protected |
number of logical units per flow texture repeat ( >0.0 ) NOTE: number of actual repeats for the whole interconnect is always rounded to the nearest whole number so that adjacent interconnect's textures lineup
|
protected |
true to force rounded corners to use the exact corner radius specified by _cornerRadius. If true, a corner that cannot be made with this radius will not be rounded.
|
protected |
display list for drawing interconnect (if using display lists)
|
protected |
number of logical units per interconnect texture repeat ( >0.0 ) NOTE: number of actual repeats for the whole interconnect is always rounded to the nearest whole number so that adjacent interconnect's textures lineup
|
protected |
2D verts and texture coords computed for interconnect
|
protected |
last time stamp given to Calculate() method
|
protected |
thickness of line in logical units ( >0.0 )
|
protected |
true if the line needs to be rebuilt
|
protected |
Two orthogonal vectors defining the orientation
|
protected |
corners in preview path
|
protected |
points in preview path
|
protected |
true for rounded corners
|
protected |
true to draw flow in interconnect else false
|
protected |
true to draw the flow blink else false (NOTE: normal flow is not drawn if flow blink is true)
|
protected |
true to draw using display lists