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

Model instance to draw a cuboid. More...

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

Public Member Functions

 DtCubeModelInstance (DtDe &de)
 CTOR.
virtual ~DtCubeModelInstance ()
 DTOR.
virtual void setDimensions (float x, float y, float z)
 Set the dimensions of the cube.
void dimensions (float &length, float &width, float &height)
 Get the dimensions of the cube.
virtual void setColor (float r, float g, float b, float a)
 Set the color of the cube.
const osg::Vec4 & color () const
 Get the color of the cube.
virtual void setLightingEnabled (bool enabled)
 Set lighting enabled or disabled (default disabled)
virtual bool realize (DtModelDefinition &definition)
 Attempt to realize a definition.
virtual void setVisible (bool isVisible)
 no-op
virtual void setContributesToBound (bool trueOrFalse)
 Override to recalculate bounding box if starts to contribute.
- Public Member Functions inherited from makVrv::DtOsgModelInstance
virtual ~DtOsgModelInstance ()
 DTOR.
virtual void addToConnector (DtOsgSceneConnector *connector)
 Brief Tell the model instance to add itself to the provided node.
virtual bool removeFromConnector (DtOsgSceneConnector *connector)
 Brief Tell the model instance to remove itself from the provided node.
virtual bool saveModelToFile (const std::string &filename) const
 Attempt to save the model to a file.
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.
virtual void setBlendColor (float r, float g, float b, float a)
 set the model's color
virtual void enableTexture (bool onOff)
virtual osg::Node * rootNode ()
 Get the model instance's root node.
virtual const osg::Node * rootNode () const
virtual osg::Node * sensorNode ()
 Get the model instance's sensor node, .
virtual const osg::Node * sensorNode () const
virtual void addDynamicSensorRegion (const std::string &region)
 Add an active region state.
virtual void setDynamicSensorRegion (const std::string &region, bool state)
 Set the state of an active region.
virtual bool dynamicSensorRegion (const std::string &region)
 Get the current state of the specified sensor region.
SensorRegionStateMap const dynamicSensorRegionMap () const
 Get the map containing all regions and their current states.
virtual void slot_atcGlobalModelEnableChanged ()
 Slot to handle the global alpha to coverage signal for entities.
virtual bool alphaToCoverageEnabled ()
 Get the current setting for alpha to coverage for this model.
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
- Public Member Functions inherited from makVrv::DtModelInstance
 DtModelInstance (DtDe &de)
 CTOR.
virtual ~DtModelInstance ()
 DTOR.
const std::string & realizedDefinitionName () const
 Get the name of the definition that this model instance was realized with.
const DtVectorboundingBoxExtents () const
 Get the bounding box extents of the model instance.
void getBoundingBoxExtents (double &x, double &y, double &z) const
 Get the bounding box extents of the model instance.
const DtVectorboundingBoxCenter () const
 Get the bounding box center of the model instance.
void getBoundingBoxCenter (double &x, double &y, double &z) const
 Get the bounding box center of the model instance.
void getBoundingBoxComponents (DtVector &minimum, DtVector &maximum)
bool contributesToBound () const
 Get whether this model instance contributes to an object's overall bounding volume.

Protected Member Functions

virtual void updateColors ()
 Update the color in the material.
virtual void updateTransform ()
 Update the transform matrix of the cylinder.
void createBlendedGeodes ()
 Creates the geodes needed when doing alpha blending.
void createOpaqueGeode ()
 Creates the geodes when NOT doing alpha blending.
void createSingleSidedBlendedGeode ()
 Creates the geode when single sided and alpha blending.
- Protected Member Functions inherited from makVrv::DtOsgModelInstance
virtual void updateColorBlending ()
 calls update color blending with the model root.
virtual void updateColorBlending (osg::Node *node)
virtual void enableTexture (osg::Node *root, bool onOff)
virtual void updateBoundingBoxViaContents ()
 DtOsgModelInstance (DtDe &de)
 CTOR.
virtual void setRootNode (osg::Node *node)
 Set the model instance's root node.

Protected Attributes

float myLength
 The current parameter set.
float myWidth
float myHeight
osg::Vec4 myColor
osg::ref_ptr< osg::Drawable > myCubeDrawable
osg::ref_ptr< osg::Geode > myGeode
 Geode to draw the geometry when no blending is required.
osg::ref_ptr< osg::Geode > myBlendedGeode
 Geode to draw the geometry when single-sided blending is required.
osg::ref_ptr< osg::Geode > myFrontGeode
 Geode to draw the geometry with backface culling.
osg::ref_ptr< osg::Geode > myBackGeode
 Geode to draw the geometry with frontface culling.
osg::ref_ptr
< osg::MatrixTransform > 
myTransform
 My tranform.
osg::ref_ptr< osg::Material > myMaterial
 My Material.
bool mySingleSided
- 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.
- Protected Attributes inherited from makVrv::DtModelInstance
DtDemyDe
std::string myRealizedModelDefinitionName
DtVector myBoundingBoxCenter
DtVector myBoundingBoxExtents
DtVector myBoundingBoxMinimum
DtVector myBoundingBoxMaximum
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.
- Static Public Member Functions inherited from makVrv::DtOsgModelInstance
static osg::Vec4 readVec4 (const std::string &paramName, const DtModelDefinition &definition)
static osg::Vec3 readVec3 (const std::string &paramName, const DtModelDefinition &definition)
- Public Attributes inherited from makVrv::DtOsgModelInstance
boost::signal< void(const
std::string &) > 
signal_dynamicSensorRegionAdded
 Signal raised when a dynamic sensor region is added.
boost::signal< void(const
std::string &, bool) > 
signal_dynamicSensorRegionChanged
 Signal raised when a dynamic sensor region's state changes.
boost::signal< void(bool)> signal_atcModeEnableChanged
 Signal raised when alpha to coverage for this model is changed.
- Public Attributes inherited from makVrv::DtModelInstance
boost::signal< void(DtModelInstance *)> signal_modelInstanceChanged

Detailed Description

Model instance to draw a cuboid.

Constructor & Destructor Documentation

makVrv::DtCubeModelInstance::DtCubeModelInstance ( DtDe de)

CTOR.

virtual makVrv::DtCubeModelInstance::~DtCubeModelInstance ( )
virtual

DTOR.

Member Function Documentation

virtual void makVrv::DtCubeModelInstance::setDimensions ( float  x,
float  y,
float  z 
)
virtual

Set the dimensions of the cube.

void makVrv::DtCubeModelInstance::dimensions ( float &  length,
float &  width,
float &  height 
)

Get the dimensions of the cube.

virtual void makVrv::DtCubeModelInstance::setColor ( float  r,
float  g,
float  b,
float  a 
)
virtual

Set the color of the cube.

const osg::Vec4& makVrv::DtCubeModelInstance::color ( ) const

Get the color of the cube.

virtual void makVrv::DtCubeModelInstance::setLightingEnabled ( bool  enabled)
virtual

Set lighting enabled or disabled (default disabled)

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

Attempt to realize a definition.

If the model instance can't realize the definition it should return false.

Reimplemented from makVrv::DtOsgModelInstance.

virtual void makVrv::DtCubeModelInstance::setVisible ( bool  isVisible)
inlinevirtual

no-op

Implements makVrv::DtModelInstance.

virtual void makVrv::DtCubeModelInstance::setContributesToBound ( bool  trueOrFalse)
virtual

Override to recalculate bounding box if starts to contribute.

Reimplemented from makVrv::DtModelInstance.

virtual void makVrv::DtCubeModelInstance::updateColors ( )
protectedvirtual

Update the color in the material.

virtual void makVrv::DtCubeModelInstance::updateTransform ( )
protectedvirtual

Update the transform matrix of the cylinder.

void makVrv::DtCubeModelInstance::createBlendedGeodes ( )
protected

Creates the geodes needed when doing alpha blending.

void makVrv::DtCubeModelInstance::createOpaqueGeode ( )
protected

Creates the geodes when NOT doing alpha blending.

void makVrv::DtCubeModelInstance::createSingleSidedBlendedGeode ( )
protected

Creates the geode when single sided and alpha blending.

Member Data Documentation

float makVrv::DtCubeModelInstance::myLength
protected

The current parameter set.

float makVrv::DtCubeModelInstance::myWidth
protected
float makVrv::DtCubeModelInstance::myHeight
protected
osg::Vec4 makVrv::DtCubeModelInstance::myColor
protected
osg::ref_ptr<osg::Drawable> makVrv::DtCubeModelInstance::myCubeDrawable
protected
osg::ref_ptr<osg::Geode> makVrv::DtCubeModelInstance::myGeode
protected

Geode to draw the geometry when no blending is required.

osg::ref_ptr<osg::Geode> makVrv::DtCubeModelInstance::myBlendedGeode
protected

Geode to draw the geometry when single-sided blending is required.

osg::ref_ptr<osg::Geode> makVrv::DtCubeModelInstance::myFrontGeode
protected

Geode to draw the geometry with backface culling.

osg::ref_ptr<osg::Geode> makVrv::DtCubeModelInstance::myBackGeode
protected

Geode to draw the geometry with frontface culling.

osg::ref_ptr<osg::MatrixTransform> makVrv::DtCubeModelInstance::myTransform
protected

My tranform.

osg::ref_ptr<osg::Material> makVrv::DtCubeModelInstance::myMaterial
protected

My Material.

bool makVrv::DtCubeModelInstance::mySingleSided
protected

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

Document ID: Generated on Fri Apr 26 21:53:14 EDT 2019 from SVN revision 197883
Copyright © 2005-2019 VT MAK. All Rights Reserved (www.mak.com)