VR-Forces 4.10 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Member Functions | Static Protected Member Functions | Protected Attributes
makVrv::DtRectangularPyramidModelInstance Class Reference

Model instance to draw a rectangular pyramid. More...

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

Public Member Functions

 DtRectangularPyramidModelInstance (makVrv::DtDe &de)
 CTOR Instantiates a new DtRectangularPyramidModelInstance. More...
 
virtual ~DtRectangularPyramidModelInstance ()
 Virtual DTOR (no-op) (OSG manages created scene objects) More...
 
void update ()
 Performs periodic updates, if necessary. More...
 
Inherited Methods
virtual void addToConnector (makVrv::DtOsgSceneConnector *connector)
 Tell the model instance to add itself to the provided node. More...
 
virtual bool removeFromConnector (makVrv::DtOsgSceneConnector *connector)
 Tell the model instance to remove itself from the provided node. More...
 
virtual bool realize (makVrv::DtModelDefinition &definition)
 Attempt to realize a definition. More...
 
virtual void setVisible (bool isVisible)
 no-op More...
 
Setters
virtual void setRelativePosition (double x, double y, double z)
 Set the relative position of the rectangular pyramid Sets the position of the model instance relative to the parent node. More...
 
virtual void setOrientation (double yaw, double pitch, double roll)
 Set the relative orientation of the rectangular pyramid Sets the orientation of the model instance relative to the parent node. More...
 
virtual void setSize (double slantHeight)
 Sets the size of the rectangular pyramid. More...
 
virtual void setColor (float r, float g, float b, float a)
 Sets both the inside and outside colors. More...
 
void setInnerColor (float r, float g, float b, float a)
 Sets the inside color. More...
 
void setOuterColor (float r, float g, float b, float a)
 Sets the outside color. More...
 
virtual void setXHalfAngle (double xHalfAngle)
 Set the half angle amount in the x direction. More...
 
virtual void setYHalfAngle (double yHalfAngle)
 Set the half angle amount in the y direction. More...
 
virtual void setShowLines (bool showLines)
 Set whether the wireframe outlines are visible on the geometry Sets whether the wireframe lines for the rectangular pyramid should be drawn If set, the wireframe lines are drawn in addition to the geometry faces. More...
 
virtual void setLinesHaveAlpha (bool lineAlpha)
 Set whether the wireframe outlines should be rendered with alpha Sets whether the alpha component of the pyramid's colors should apply to the wireframe outlines as well as the faces, or just to the faces. More...
 
- Public Member Functions inherited from makVrv::DtOsgModelInstance
virtual ~DtOsgModelInstance ()
 DTOR. More...
 
virtual bool cloneInstance (DtModelDefinition &definition)
 Attempt to clone the basic geometry. More...
 
virtual bool saveModelToFile (const std::string &filename) const
 Attempt to save the model to a file. More...
 
virtual void enableColorBlending (bool b)
 Enable / disable coloring on all models in the scene object Note about enableColorBlending: If this particular model has instancing enabled then this flag is set to false and color blending is handled by the instance manager. More...
 
virtual void setBlendColor (float r, float g, float b, float a)
 set the model's color More...
 
virtual void enableTexture (bool onOff)
 
virtual osg::Node * rootNode ()
 Get the model instance's root node. More...
 
virtual const osg::Node * rootNode () const
 
virtual osg::Node * sensorNode ()
 Get the model instance's sensor node, . More...
 
virtual const osg::Node * sensorNode () const
 
virtual void addDynamicSensorRegion (const std::string &region)
 Add an active region state. More...
 
virtual void setDynamicSensorRegion (const std::string &region, bool state)
 Set the state of an active region. More...
 
virtual bool dynamicSensorRegion (const std::string &region)
 Get the current state of the specified sensor region. More...
 
SensorRegionStateMap const dynamicSensorRegionMap () const
 Get the map containing all regions and their current states. More...
 
virtual void slot_atcGlobalModelEnableChanged ()
 Slot to handle the global alpha to coverage signal for entities. More...
 
virtual bool alphaToCoverageEnabled ()
 Get the current setting for alpha to coverage for this model. More...
 
virtual void registerLightPoints (const std::string &groupName, bool daylightControlledLights)
 loop over all this models light points and register them with the light point manager daylightControlled is only used if the light points do not already have a type specified More...
 
- Public Member Functions inherited from makVrv::DtModelInstance
 DtModelInstance (DtDe &de)
 CTOR. More...
 
virtual ~DtModelInstance ()
 DTOR. More...
 
const std::string & realizedDefinitionName () const
 Get the name of the definition that this model instance was realized with. More...
 
const DtVectorboundingBoxExtents () const
 Get the bounding box extents of the model instance. More...
 
void getBoundingBoxExtents (double &x, double &y, double &z) const
 Get the bounding box extents of the model instance. More...
 
const DtVectorboundingBoxCenter () const
 Get the bounding box center of the model instance. More...
 
void getBoundingBoxCenter (double &x, double &y, double &z) const
 Get the bounding box center of the model instance. More...
 
void getBoundingBoxComponents (DtVector &minimum, DtVector &maximum)
 Get the bounding box min/max of the model instance. More...
 
const DtVectorallGeometryboundingBoxExtents () const
 functions for getting the allGeometry versions of the extents (they are calculated by traversing as if all switch paths are active) More...
 
void getAllGeometryBoundingBoxExtents (double &x, double &y, double &z) const
 Get the all geometry version of bounding box extents of the model instance. More...
 
const DtVectorallGeometryboundingBoxCenter () const
 Get the all geometry version of bounding box center of the model instance. More...
 
void getAllGeometryBoundingBoxCenter (double &x, double &y, double &z) const
 Get the all geometry version of bounding box center of the model instance. More...
 
void getAllGeometryBoundingBoxComponents (DtVector &minimum, DtVector &maximum)
 Get the all geometry version of bounding box min/max of the model instance. More...
 
virtual void setContributesToBound (bool trueOrFalse)
 Set whether this model instance contributes to an object's overall bounding volume. More...
 
bool contributesToBound () const
 Get whether this model instance contributes to an object's overall bounding volume. More...
 

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 rectangular pyramid arc model then updates the geometry's colors. More...
 
virtual void updateGeometryColors ()
 Updates the color(s) of the sphere Updates the colors of the vertices on the pyramid model's geometry or sets the dirtyColors flag if lockUpdates is set. More...
 
virtual void updateGeometryWireframeState ()
 Updates the state of the geometry's wireframe Updates the visibility / alpha state of the geometry's wireframe. More...
 
virtual void updateGeometryTransforms ()
 Updates the scaling and location applied to the sphere Updates the scaling applied to the model (the rectangular pyramid model's dimensions) More...
 
- Protected Member Functions inherited from makVrv::DtOsgModelInstance
 DtOsgModelInstance (DtDe &de)
 CTOR. More...
 
virtual void updateColorBlending ()
 calls update color blending with the model root. More...
 
virtual void updateColorBlending (osg::Node *node)
 
virtual void enableTexture (osg::Node *root, bool onOff)
 
virtual void updateBoundingBoxViaContents ()
 
virtual void setRootNode (osg::Node *node)
 Set the model instance's root node. More...
 
virtual void setUpDepthTest (osg::StateSet *stateSet)
 Helper function to set up a depth test on a state set taking into account whether reverse z is enabled or not. More...
 

Static Protected Member Functions

static void clampAngle (double &val, double minAngle, double maxAngle)
 Clamps the given angle value to the given range. More...
 

Protected Attributes

osg::ref_ptr
< osg::MatrixTransform > 
myTransform
 
osg::ref_ptr< osg::Group > myBlendNode
 
osg::ref_ptr< osg::Group > myWireNode
 
osg::ref_ptr< osg::Geometry > myGeometry
 
osg::ref_ptr< osg::Geode > myFrontGeode
 
osg::ref_ptr< osg::Geode > myBackGeode
 
bool myDirtyGeometry
 
bool myDirtyColors
 
bool myDirtyTransforms
 
bool myDirtyWireframe
 
osg::Vec3d myRelativePosition
 
osg::Quat myRelativeOrientation
 
osg::Vec3d myDimensions
 
double myXHalfAngle
 
double myYHalfAngle
 
int myCenterVertexIndex
 
osg::Vec4 myInnerColor
 
osg::Vec4 myOuterColor
 
bool myShowLines
 
bool myLineAlphaFlag
 
- Protected Attributes inherited from makVrv::DtOsgModelInstance
osg::ref_ptr< osg::Node > myModelRoot
 
osg::ref_ptr< osg::StateSet > myCachedState
 
SensorRegionStateMap mySensorRegionMap
 
AlphaToCoverageState myAlphaToCoverageState
 
DtSignalConnectionManager myConnections
 
bool myModelInstanceShaderSet
 Has this model instance had a shader generated for it? Used for classes (ex. More...
 
- Protected Attributes inherited from makVrv::DtModelInstance
DtDemyDe
 
std::string myRealizedModelDefinitionName
 
DtVector myBoundingBoxCenter
 
DtVector myBoundingBoxExtents
 
DtVector myBoundingBoxMinimum
 
DtVector myBoundingBoxMaximum
 
DtVector myAllGeometryBoundingBoxCenter
 
DtVector myAllGeometryBoundingBoxExtents
 
DtVector myAllGeometryBoundingBoxMinimum
 
DtVector myAllGeometryBoundingBoxMaximum
 
bool myContributesToBound
 
bool myColorBlendingEnabled
 
float myBlendRed
 
float myBlendBlue
 
float myBlendGreen
 
float myBlendAlpha
 

Additional Inherited Members

- Public Types inherited from makVrv::DtOsgModelInstance
enum  AlphaToCoverageState { USE_GLOBAL, FORCE_OFF, FORCE_ON }
 The possible states of a control point. More...
 
typedef boost::unordered_map
< std::string, bool
SensorRegionStateMap
 Dynamic Sensor Region methods. More...
 
- Static Public Member Functions inherited from makVrv::DtOsgModelInstance
static osg::Vec4 readVec4 (const std::string &paramName, const DtModelDefinition &definition, const osg::Vec4 &initValue=osg::Vec4(1, 1, 1, 1))
 
static osg::Vec3 readVec3 (const std::string &paramName, const DtModelDefinition &definition, const osg::Vec3 &initValue=osg::Vec3(1, 1, 1))
 
- Static Public Member Functions inherited from makVrv::DtModelInstance
static float readFloat (const std::string &paramName, const DtModelDefinition &definition)
 
static DtVector readVector (const std::string &paramName, const DtModelDefinition &definition)
 
- Public Attributes inherited from makVrv::DtOsgModelInstance
boost::signalslib::signal
< void(const std::string &) > 
signal_dynamicSensorRegionAdded
 Signal raised when a dynamic sensor region is added. More...
 
boost::signalslib::signal
< void(const std::string
&, bool) > 
signal_dynamicSensorRegionChanged
 Signal raised when a dynamic sensor region's state changes. More...
 
boost::signalslib::signal
< void(bool)> 
signal_atcModeEnableChanged
 Signal raised when alpha to coverage for this model is changed. More...
 
- Public Attributes inherited from makVrv::DtModelInstance
boost::signalslib::signal
< void(DtModelInstance *)> 
signal_modelInstanceChanged
 

Detailed Description

Model instance to draw a rectangular pyramid.

Constructor & Destructor Documentation

makVrv::DtRectangularPyramidModelInstance::DtRectangularPyramidModelInstance ( makVrv::DtDe de)
virtual makVrv::DtRectangularPyramidModelInstance::~DtRectangularPyramidModelInstance ( )
virtual

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

Member Function Documentation

virtual void makVrv::DtRectangularPyramidModelInstance::addToConnector ( makVrv::DtOsgSceneConnector connector)
virtual

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

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

Reimplemented from makVrv::DtOsgModelInstance.

virtual bool makVrv::DtRectangularPyramidModelInstance::removeFromConnector ( makVrv::DtOsgSceneConnector connector)
virtual

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

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

Reimplemented from makVrv::DtOsgModelInstance.

virtual bool makVrv::DtRectangularPyramidModelInstance::realize ( makVrv::DtModelDefinition definition)
virtual

Attempt to realize a definition.

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

Reimplemented from makVrv::DtOsgModelInstance.

virtual void makVrv::DtRectangularPyramidModelInstance::setVisible ( bool  isVisible)
inlinevirtual
virtual void makVrv::DtRectangularPyramidModelInstance::setRelativePosition ( double  x,
double  y,
double  z 
)
virtual

Set the relative position of the rectangular pyramid 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::DtRectangularPyramidModelInstance::setOrientation ( double  yaw,
double  pitch,
double  roll 
)
virtual

Set the relative orientation of the rectangular pyramid 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::DtRectangularPyramidModelInstance::setSize ( double  slantHeight)
virtual

Sets the size of the rectangular pyramid.

Parameters
slantHeightthe length of the pyramid's slant height.
virtual void makVrv::DtRectangularPyramidModelInstance::setColor ( float  r,
float  g,
float  b,
float  a 
)
virtual

Sets both the inside and outside colors.

Sets the color of the entire rectangular pyramid.

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
void makVrv::DtRectangularPyramidModelInstance::setInnerColor ( float  r,
float  g,
float  b,
float  a 
)

Sets the inside color.

Sets the color of the internal of the rectangular pyramid.

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
void makVrv::DtRectangularPyramidModelInstance::setOuterColor ( float  r,
float  g,
float  b,
float  a 
)

Sets the outside color.

Sets the color of the external of the rectangular pyramid.

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::DtRectangularPyramidModelInstance::setXHalfAngle ( double  xHalfAngle)
virtual

Set the half angle amount in the x direction.

Parameters
xHalfAnglethe half-angle in the x direction.
virtual void makVrv::DtRectangularPyramidModelInstance::setYHalfAngle ( double  yHalfAngle)
virtual

Set the half angle amount in the y direction.

Parameters
yHalfAnglethe half-angle in the y direction.
virtual void makVrv::DtRectangularPyramidModelInstance::setShowLines ( bool  showLines)
virtual

Set whether the wireframe outlines are visible on the geometry Sets whether the wireframe lines for the rectangular pyramid 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
virtual void makVrv::DtRectangularPyramidModelInstance::setLinesHaveAlpha ( bool  lineAlpha)
virtual

Set whether the wireframe outlines should be rendered with alpha Sets whether the alpha component of the pyramid'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.
void makVrv::DtRectangularPyramidModelInstance::update ( )

Performs periodic updates, if necessary.

virtual void makVrv::DtRectangularPyramidModelInstance::updateGeometry ( )
protectedvirtual

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

virtual void makVrv::DtRectangularPyramidModelInstance::updateGeometryColors ( )
protectedvirtual

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

virtual void makVrv::DtRectangularPyramidModelInstance::updateGeometryWireframeState ( )
protectedvirtual

Updates the state of the geometry's wireframe Updates the visibility / alpha state of the geometry's wireframe.

virtual void makVrv::DtRectangularPyramidModelInstance::updateGeometryTransforms ( )
protectedvirtual

Updates the scaling and location applied to the sphere Updates the scaling applied to the model (the rectangular pyramid model's dimensions)

static void makVrv::DtRectangularPyramidModelInstance::clampAngle ( double val,
double  minAngle,
double  maxAngle 
)
staticprotected

Clamps the given angle value to the given range.

Parameters
valreference to variable containing the angle to clamp.
minAnglethe min angle the clamped value is allowed to have.
maxAnglethe max angle the clamped value is allowed to have.

Member Data Documentation

osg::ref_ptr<osg::MatrixTransform> makVrv::DtRectangularPyramidModelInstance::myTransform
protected
osg::ref_ptr<osg::Group> makVrv::DtRectangularPyramidModelInstance::myBlendNode
protected
osg::ref_ptr<osg::Group> makVrv::DtRectangularPyramidModelInstance::myWireNode
protected
osg::ref_ptr<osg::Geometry> makVrv::DtRectangularPyramidModelInstance::myGeometry
protected
osg::ref_ptr<osg::Geode> makVrv::DtRectangularPyramidModelInstance::myFrontGeode
protected
osg::ref_ptr<osg::Geode> makVrv::DtRectangularPyramidModelInstance::myBackGeode
protected
bool makVrv::DtRectangularPyramidModelInstance::myDirtyGeometry
protected
bool makVrv::DtRectangularPyramidModelInstance::myDirtyColors
protected
bool makVrv::DtRectangularPyramidModelInstance::myDirtyTransforms
protected
bool makVrv::DtRectangularPyramidModelInstance::myDirtyWireframe
protected
osg::Vec3d makVrv::DtRectangularPyramidModelInstance::myRelativePosition
protected
osg::Quat makVrv::DtRectangularPyramidModelInstance::myRelativeOrientation
protected
osg::Vec3d makVrv::DtRectangularPyramidModelInstance::myDimensions
protected
double makVrv::DtRectangularPyramidModelInstance::myXHalfAngle
protected
double makVrv::DtRectangularPyramidModelInstance::myYHalfAngle
protected
int makVrv::DtRectangularPyramidModelInstance::myCenterVertexIndex
protected
osg::Vec4 makVrv::DtRectangularPyramidModelInstance::myInnerColor
protected
osg::Vec4 makVrv::DtRectangularPyramidModelInstance::myOuterColor
protected
bool makVrv::DtRectangularPyramidModelInstance::myShowLines
protected
bool makVrv::DtRectangularPyramidModelInstance::myLineAlphaFlag
protected

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

Document ID: Generated on Tue Sep 21 17:42:52 EDT 2021 from SVN revision 234861
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)