VR-Forces 4.0.4 Class Documentation
Classes | Protected Attributes
makVrv::DtAttachableEllipsoidArcModelInstance Class Reference

Model instance to draw a EllipsoidArc. More...

Inheritance diagram for makVrv::DtAttachableEllipsoidArcModelInstance:
Inheritance graph
[legend]

List of all members.

Classes

struct  EllipsoidArcRange
 Simple struct for storing an arc range (center/sweep) More...
struct  SphericalQuad
 Structure to hold a quad in spherical coordinates during geometry construction. More...
struct  SphericalVertex
 Structure to hold a vertex in spherical coordinates during geometry construction. More...
struct  Triangle
 Structure to hold triangles in spherical coordinates while building the geometry. More...
struct  VertexCache
 Caches the cartesian version of spherical vertices and their normals into the specified arrays. More...

Public Member Functions

Inherited Methods
 DtAttachableEllipsoidArcModelInstance (DtDe &de)
 CTOR Instantiates a new DtAttachableEllipsoidArcModelInstance.
virtual ~DtAttachableEllipsoidArcModelInstance ()
 Virtual DTOR (no-op) (OSG manages created scene objects)
virtual void addToConnector (DtOsgSceneConnector *connector)
 Tell the model instance to add itself to the provided node.
virtual bool removeFromConnector (DtOsgSceneConnector *connector)
 Tell the model instance to remove itself from the provided node.
virtual bool realize (DtModelDefinition &definition)
 Attempt to realize a definition.
virtual void setVisible (bool isVisible)
 no-op
Setters
virtual void setRelativePosition (double x, double y, double z)
 Set the relative position of the ellipsoid Sets the position of the model instance relative to the parent node.
virtual void setOrientation (double yaw, double pitch, double roll)
 Set the relative orientation of the ellipsoid Sets the orientation of the model instance relative to the parent node.
virtual void setDimensions (double x, double y, double z)
 Set the lengths of the ellipsoid's axes Sets the length of the ellipsoid's axes.
virtual void setColor (float r, float g, float b, float a)
 Sets both the inside and outside colors Sets the color of the entire ellipsoid arc.
virtual void setInsideColor (float r, float g, float b, float a)
 Sets the color of the center point of the sphere Sets the inner color of the ellipsoid arc Note: This color is not visible if the ellipsoid is a full ellipse (as there is no center vertex)
virtual void setOutsideColor (float r, float g, float b, float a)
 Sets the color of the outer points on the sphere Sets the outer color of the ellipsoid arc.
virtual void setAzimuthRange (float azimuthCenter, float azimuthSweep)
 Set the azimuth range of the ellipsoid arc Sets the ellipsoid arc's azimuth range.
virtual void setElevationRange (float elevationCenter, float elevationSweep)
 Set the elevation range of the ellipsoid arc Sets the ellipsoid arc's elevation range.
virtual void setMaxAngleSegment (float angleSegmentMax)
 Set the max angle segment used when building the geometry Sets the max angle segment between sample points along the azimuth/elevation when generating the geometry.
virtual void setShowLines (bool showLines)
 Set whether the wireframe outlines are visible on the geometry Sets whether the wireframe lines for the ellipsoid arc should be drawn If set, the wireframe lines are drawn in addition to the geometry faces.
virtual void setLinesHaveAlpha (bool lineAlpha)
 Set whether the wireframe outlines should be rendered with alpha Sets whether the alpha component of the ellipsoid's colors should apply to the wireframe outlines as well as the faces, or just to the faces.
virtual void setLockUpdates (bool lock)
 Signals whether dirty flags should be used so updates are only applied on unlock Sets the lockUpdates flag to the given value.

Protected Member Functions

Updaters
virtual void updateGeometry ()
 Builds the geometry using the defined parameters in myParameters Updates the vertices and faces used to render the ellipsoid arc model then updates the geometry's colors.
virtual void updateGeometryColors ()
 Updates the color(s) of the sphere Updates the colors of the vertices on the ellipsoid arc model's geometry or sets the dirtyColors flag if lockUpdates is set.
virtual void updateGeometryWireframeState ()
 Updates the state of the geometry's wireframe Updates the visibility / alpha state of the geometry's wireframe Called if any of the following methods are called:
virtual void updateGeometryTransforms ()
 Updates the scaling and location applied to the sphere Updates the scaling applied to the model (the ellipsoid arc model's dimensions) Called if any of the following methods are called:
Vertex Utilities
double angularDistance (double from, double to)
 Computes the distance between two angles Computes the angle between two reference angles Counts in the clockwise direction.

Protected Attributes

osg::ref_ptr
< osg::MatrixTransform > 
myTransform
 The offset and scale transform.
osg::ref_ptr< osg::Group > myBlendNode
 The blending node for the geometry.
osg::ref_ptr< osg::Group > myWireNode
 The wireframe node for the geometry.
osg::ref_ptr< osg::Geometry > myGeometry
 The model instance's geometry.
osg::ref_ptr< osg::Geode > myFrontGeode
 The front facing geometry geode.
osg::ref_ptr< osg::Geode > myBackGeode
 The back facing geometry geode.
int myCenterVertexIndex
bool myLockUpdates
 Flag indicating changes colors and geometry should be postponed.
bool myDirtyGeometry
 Flag indicating the geometry changed and must be regenerated.
bool myDirtyColors
 Flag indicating the colors changed and must be updated.
osg::Vec3d myRelativePosition
 Relative position offset.
osg::Quat myRelativeOrientation
 Relative orientation.
osg::Vec3d myDimensions
 Axis dimensions.
EllipsoidArcRange myAzimuthRange
 Azimuth range (center/sweep)
EllipsoidArcRange myElevationRange
 Elevation range (center/sweep)
osg::Vec4 myInsideColor
 Color at the center of the sphere.
osg::Vec4 myOutsideColor
 Color on the external points of the sphere.
bool myShowLines
 Whether or not to display the sensor volume outline lines.
bool myLineAlphaFlag
 Whether the outline lines have alpha or not.
float myAngleSegmentMax
 The max angle used to sample the sensor volume (in degrees)
bool myFlashing
 Like HTML blink.

Detailed Description

Model instance to draw a EllipsoidArc.


Constructor & Destructor Documentation

Virtual DTOR (no-op) (OSG manages created scene objects)


Member Function Documentation

Tell the model instance to add itself to the provided node.

See also:
makVrv::DtOsgModelInstance::addToConnector( DtOsgSceneConnector* )

Reimplemented from makVrv::DtOsgModelInstance.

Tell the model instance to remove itself from the provided node.

See also:
makVrv::DtOsgModelInstance::removeFromConnector( DtOsgSceneConnector* )

Reimplemented from makVrv::DtOsgModelInstance.

Attempt to realize a definition.

See also:
makVrv::DtModelInstance::realize( DtModelDefinition& )

Reimplemented from makVrv::DtModelInstance.

virtual void makVrv::DtAttachableEllipsoidArcModelInstance::setVisible ( bool  isVisible) [inline, virtual]
virtual void makVrv::DtAttachableEllipsoidArcModelInstance::setRelativePosition ( double  x,
double  y,
double  z 
) [virtual]

Set the relative position of the ellipsoid Sets the position of the model instance relative to the parent node.

Parameters:
xthe relative x translation
ythe relative y translation
zthe relative z translation
virtual void makVrv::DtAttachableEllipsoidArcModelInstance::setOrientation ( double  yaw,
double  pitch,
double  roll 
) [virtual]

Set the relative orientation of the ellipsoid Sets the orientation of the model instance relative to the parent node.

Parameters:
yawthe yaw, -DtTaitBryan::psi()
pitchthe pitch, DtTaitBryan::theta()
rollthe roll, DtTaitBryan::phi()
virtual void makVrv::DtAttachableEllipsoidArcModelInstance::setDimensions ( double  x,
double  y,
double  z 
) [virtual]

Set the lengths of the ellipsoid's axes Sets the length of the ellipsoid's axes.

Parameters:
xthe length of the ellipsoid's x axis
ythe length of the ellipsoid's y axis
zthe length of the ellipsoid's z axis
virtual void makVrv::DtAttachableEllipsoidArcModelInstance::setColor ( float  r,
float  g,
float  b,
float  a 
) [virtual]

Sets both the inside and outside colors Sets the color of the entire ellipsoid arc.

Parameters:
rthe red component of the color
gthe green component of the color
bthe blue component of the color
athe alpha component of the color
virtual void makVrv::DtAttachableEllipsoidArcModelInstance::setInsideColor ( float  r,
float  g,
float  b,
float  a 
) [virtual]

Sets the color of the center point of the sphere Sets the inner color of the ellipsoid arc Note: This color is not visible if the ellipsoid is a full ellipse (as there is no center vertex)

Parameters:
rthe red component of the color
gthe green component of the color
bthe blue component of the color
athe alpha component of the color
virtual void makVrv::DtAttachableEllipsoidArcModelInstance::setOutsideColor ( float  r,
float  g,
float  b,
float  a 
) [virtual]

Sets the color of the outer points on the sphere Sets the outer color of the ellipsoid arc.

Parameters:
rthe red component of the color
gthe green component of the color
bthe blue component of the color
athe alpha component of the color
virtual void makVrv::DtAttachableEllipsoidArcModelInstance::setAzimuthRange ( float  azimuthCenter,
float  azimuthSweep 
) [virtual]

Set the azimuth range of the ellipsoid arc Sets the ellipsoid arc's azimuth range.

Parameters:
azimuthCenterthe angle of the center of the azimuth's range
azimuthSweepthe angle from the center to the ends of the azimuth range
virtual void makVrv::DtAttachableEllipsoidArcModelInstance::setElevationRange ( float  elevationCenter,
float  elevationSweep 
) [virtual]

Set the elevation range of the ellipsoid arc Sets the ellipsoid arc's elevation range.

Parameters:
elevationCenterthe angle of the center of the elevation's range
elevationSweepthe angle from the center to the ends of the elevation range
virtual void makVrv::DtAttachableEllipsoidArcModelInstance::setMaxAngleSegment ( float  angleSegmentMax) [virtual]

Set the max angle segment used when building the geometry Sets the max angle segment between sample points along the azimuth/elevation when generating the geometry.

Parameters:
angleSegmentMaxthe max angle segment between sample points

Set whether the wireframe outlines are visible on the geometry Sets whether the wireframe lines for the ellipsoid arc should be drawn If set, the wireframe lines are drawn in addition to the geometry faces.

Parameters:
showLineswhether the lines should be visible or hidden

Set whether the wireframe outlines should be rendered with alpha Sets whether the alpha component of the ellipsoid's colors should apply to the wireframe outlines as well as the faces, or just to the faces.

Parameters:
whetherthe lines should be affected by the color's alpha values.

Signals whether dirty flags should be used so updates are only applied on unlock Sets the lockUpdates flag to the given value.

If true, this indicates that the dirty flag for each update ( geometry / colors ) should be set instead of updating immediately. The dirty flags will be updated when lockUpdates is set back to false ( ie. when setLockUpdates(false) is called ). This should be used if multiple update calls are being called in a row.

Parameters:
lockthe new value for the lockUpdates flag

Builds the geometry using the defined parameters in myParameters Updates the vertices and faces used to render the ellipsoid arc model then updates the geometry's colors.

Called if any of the following methods are called:

See also:
makVrv::DtAttachableEllipsoidArcModelInstance::updateGeometryColors()

Updates the color(s) of the sphere Updates the colors of the vertices on the ellipsoid arc model's geometry or sets the dirtyColors flag if lockUpdates is set.

Called if any of the following methods are called:

See also:
makVrv::DtAttachableEllipsoidArcModelInstance::updateGeometry()

Updates the state of the geometry's wireframe Updates the visibility / alpha state of the geometry's wireframe Called if any of the following methods are called:

Updates the scaling and location applied to the sphere Updates the scaling applied to the model (the ellipsoid arc model's dimensions) Called if any of the following methods are called:

double makVrv::DtAttachableEllipsoidArcModelInstance::angularDistance ( double  from,
double  to 
) [protected]

Computes the distance between two angles Computes the angle between two reference angles Counts in the clockwise direction.

Parameters:
fromthe first reference angle
tothe second reference angle

Member Data Documentation

osg::ref_ptr<osg::MatrixTransform> makVrv::DtAttachableEllipsoidArcModelInstance::myTransform [protected]

The offset and scale transform.

osg::ref_ptr<osg::Group> makVrv::DtAttachableEllipsoidArcModelInstance::myBlendNode [protected]

The blending node for the geometry.

osg::ref_ptr<osg::Group> makVrv::DtAttachableEllipsoidArcModelInstance::myWireNode [protected]

The wireframe node for the geometry.

osg::ref_ptr<osg::Geometry> makVrv::DtAttachableEllipsoidArcModelInstance::myGeometry [protected]

The model instance's geometry.

The front facing geometry geode.

osg::ref_ptr<osg::Geode> makVrv::DtAttachableEllipsoidArcModelInstance::myBackGeode [protected]

The back facing geometry geode.

Flag indicating changes colors and geometry should be postponed.

Flag indicating the geometry changed and must be regenerated.

Flag indicating the colors changed and must be updated.

Relative position offset.

Relative orientation.

Axis dimensions.

Azimuth range (center/sweep)

Elevation range (center/sweep)

Color at the center of the sphere.

Color on the external points of the sphere.

Whether or not to display the sensor volume outline lines.

Whether the outline lines have alpha or not.

The max angle used to sample the sensor volume (in degrees)

Like HTML blink.


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

Document ID: Generated on Fri Jun 29 16:33:32 EDT 2012 from SVN revision 116588
Copyright © 2005-2012 VT MÄK Inc. All Rights Reserved (www.mak.com)