VR-Forces 4.8 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::DtSpiderWebModelInstance Class Referenceabstract

vrvGraphics implementation of the Spider Web Model More...

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

Public Member Functions

 DtSpiderWebModelInstance (DtDe &de)
 CTOR. More...
 
virtual ~DtSpiderWebModelInstance ()
 DTOR. More...
 
virtual void setOverlay (unsigned int overlayId)
 Set the overlay the model will be rendered on. More...
 
virtual bool realize (DtModelDefinition &definition)
 Apply model definition defaults. More...
 
virtual void update ()
 
virtual void recreateSpiderWeb ()
 Force the recreation of the spider web Akin to calling deleteSpiderWeb() and createSpiderWebIfNecessary() More...
 
virtual void setPosition (const DtVector &position)
 Set/Get the global position of the spider web. More...
 
virtual DtVector position () const
 
virtual void setOrientation (const DtTaitBryan &orientation)
 Set the global orientation of the spider web. More...
 
virtual DtTaitBryan orientation () const
 
virtual void setMaxAngleSegment (double angleSegmentMax)
 Set/Get the max angle segment used when building the spider web Default value is PI / 18. More...
 
virtual double maxAngleSegment () const
 
virtual void setRadius (double x)
 Set/Get the radius (in meters) of the spider web Default value is 0. More...
 
virtual double radius () const
 
virtual void setScale (float scale)
 Set/Get the spider web's scale factor Default value is 1. More...
 
virtual float scale () const
 
virtual void setVisible (bool isVisible)
 Set/Get whether the spider web is visible Default value is true (visible) More...
 
virtual bool isVisible () const
 
virtual void setNumberOfSpokes (unsigned int numSpokes)
 Set/Get the number of spokes the spider web has Default value is 0. More...
 
virtual unsigned int numberOfSpokes () const
 
virtual void setNumberOfRings (unsigned int numRings)
 Set/Get the number of rings the spider web has Default value is 0. More...
 
virtual unsigned int numberOfRings () const
 
virtual void setLineStipplePattern (unsigned int stipplePattern)
 Set/Get the line stipple pattern of the spider web Default value is 0xFFFF. More...
 
virtual unsigned int lineStipplePattern () const
 
virtual void setLineWidth (float width)
 Set/Get the line width of the spider web Default value is 1. More...
 
virtual float lineWidth () const
 
virtual void setColor (float r, float g, float b, float a)
 Set/Get the color of the spider web Valid range for argument values are 0.0 - 1.0. More...
 
virtual bool getColor (float &r, float &g, float &b, float &a) const
 
virtual void setEventsEnabled (bool enabled, unsigned long long userData)
 Set/Get to handle or not handle mouse events Default value is false (events not enabled) More...
 
virtual bool eventsEnabled () const
 
virtual void setGroup (int groupNum)
 Set/Get the group this overlay will be drawn in. More...
 
virtual int group () const
 
- Public Member Functions inherited from makVrv::DtModelInstance
 DtModelInstance (DtDe &de)
 CTOR. More...
 
virtual ~DtModelInstance ()
 DTOR. More...
 
virtual bool cloneInstance (DtModelDefinition &definition)
 Attempt to clone the basic geometry. More...
 
const std::string & realizedDefinitionName () const
 Get the name of the definition that this model instance was realized with. More...
 
virtual bool saveModelToFile (const std::string &filename) const
 Attempt to save the model to a file. 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...
 
virtual void setBlendColor (float r, float g, float b, float a)
 set the model's color 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...
 

Protected Member Functions

virtual void createSpiderWebIfNecessary ()
 Create my spider web according to current state. More...
 
virtual void deleteSpiderWeb ()
 Delete spider web. More...
 
virtual void updateColors ()
 Update the vertex colors. More...
 
virtual void setSpokeVertexPosition (unsigned int spokeIndex, unsigned int vertexIndex, double x, double y, double z)=0
 Set a vertex position of a spider web spoke. More...
 
virtual void setRingVertexPosition (unsigned int ringIndex, unsigned int vertexIndex, double x, double y, double z)=0
 Set a vertex position of a spider web ring. More...
 

Protected Attributes

unsigned int myOverlay
 
bool myEventsEnabled
 
unsigned long long myUserData
 
DtVector myPosition
 
DtDcm myOrientationDcm
 
DtTaitBryan myOrientationTaitBryan
 
double myRadius
 
unsigned int myNumberOfSpokes
 
unsigned int myNumberOfRings
 
bool myVisible
 
float myScale
 
float myColor [4]
 
float myLineWidth
 
unsigned int myLineStipplePattern
 
double myMaxAngleSegment
 
int myGroup
 
std::vector< DtSegmentedLine * > mySpokes
 
std::vector< DtSegmentedLine * > myRings
 
- 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

- 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::DtModelInstance
boost::signal< void(DtModelInstance *)> signal_modelInstanceChanged
 

Detailed Description

vrvGraphics implementation of the Spider Web Model

A spider web is defined by: 1) An origin vertex, 2) a radius, 3) the number of spokes, and 4) the number of rings

The drawn spider web has the following geometric parameters:

The drawn spider web has the following style properties:

Special Considerations:

Constructor & Destructor Documentation

makVrv::DtSpiderWebModelInstance::DtSpiderWebModelInstance ( DtDe de)

CTOR.

virtual makVrv::DtSpiderWebModelInstance::~DtSpiderWebModelInstance ( )
virtual

DTOR.

Member Function Documentation

virtual void makVrv::DtSpiderWebModelInstance::setPosition ( const DtVector position)
virtual

Set/Get the global position of the spider web.

virtual DtVector makVrv::DtSpiderWebModelInstance::position ( ) const
virtual
virtual void makVrv::DtSpiderWebModelInstance::setOrientation ( const DtTaitBryan &  orientation)
virtual

Set the global orientation of the spider web.

virtual DtTaitBryan makVrv::DtSpiderWebModelInstance::orientation ( ) const
virtual
virtual void makVrv::DtSpiderWebModelInstance::setMaxAngleSegment ( double  angleSegmentMax)
virtual

Set/Get the max angle segment used when building the spider web Default value is PI / 18.

virtual double makVrv::DtSpiderWebModelInstance::maxAngleSegment ( ) const
virtual
virtual void makVrv::DtSpiderWebModelInstance::setRadius ( double  x)
virtual

Set/Get the radius (in meters) of the spider web Default value is 0.

virtual double makVrv::DtSpiderWebModelInstance::radius ( ) const
virtual
virtual void makVrv::DtSpiderWebModelInstance::setScale ( float  scale)
virtual

Set/Get the spider web's scale factor Default value is 1.

virtual float makVrv::DtSpiderWebModelInstance::scale ( ) const
virtual
virtual void makVrv::DtSpiderWebModelInstance::setVisible ( bool  isVisible)
virtual

Set/Get whether the spider web is visible Default value is true (visible)

Implements makVrv::DtModelInstance.

virtual bool makVrv::DtSpiderWebModelInstance::isVisible ( ) const
virtual
virtual void makVrv::DtSpiderWebModelInstance::setNumberOfSpokes ( unsigned int  numSpokes)
virtual

Set/Get the number of spokes the spider web has Default value is 0.

virtual unsigned int makVrv::DtSpiderWebModelInstance::numberOfSpokes ( ) const
virtual
virtual void makVrv::DtSpiderWebModelInstance::setNumberOfRings ( unsigned int  numRings)
virtual

Set/Get the number of rings the spider web has Default value is 0.

virtual unsigned int makVrv::DtSpiderWebModelInstance::numberOfRings ( ) const
virtual
virtual void makVrv::DtSpiderWebModelInstance::setLineStipplePattern ( unsigned int  stipplePattern)
virtual

Set/Get the line stipple pattern of the spider web Default value is 0xFFFF.

virtual unsigned int makVrv::DtSpiderWebModelInstance::lineStipplePattern ( ) const
virtual
virtual void makVrv::DtSpiderWebModelInstance::setLineWidth ( float  width)
virtual

Set/Get the line width of the spider web Default value is 1.

virtual float makVrv::DtSpiderWebModelInstance::lineWidth ( ) const
virtual
virtual void makVrv::DtSpiderWebModelInstance::setColor ( float  r,
float  g,
float  b,
float  a 
)
virtual

Set/Get the color of the spider web Valid range for argument values are 0.0 - 1.0.

Default value is (1, 1, 1, 1)

virtual bool makVrv::DtSpiderWebModelInstance::getColor ( float &  r,
float &  g,
float &  b,
float &  a 
) const
virtual
virtual void makVrv::DtSpiderWebModelInstance::setEventsEnabled ( bool  enabled,
unsigned long long  userData 
)
virtual

Set/Get to handle or not handle mouse events Default value is false (events not enabled)

virtual bool makVrv::DtSpiderWebModelInstance::eventsEnabled ( ) const
virtual
virtual void makVrv::DtSpiderWebModelInstance::setGroup ( int  groupNum)
virtual

Set/Get the group this overlay will be drawn in.

The higher the group number, the "closer" to the eyepoint this overlay will be drawn. Use this function to stack overlay objects in the particular order you want them displayed. Default value is 1.

virtual int makVrv::DtSpiderWebModelInstance::group ( ) const
virtual
virtual void makVrv::DtSpiderWebModelInstance::setOverlay ( unsigned int  overlayId)
virtual

Set the overlay the model will be rendered on.

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

Apply model definition defaults.

Reimplemented from makVrv::DtModelInstance.

virtual void makVrv::DtSpiderWebModelInstance::update ( )
virtual
virtual void makVrv::DtSpiderWebModelInstance::recreateSpiderWeb ( )
virtual

Force the recreation of the spider web Akin to calling deleteSpiderWeb() and createSpiderWebIfNecessary()

virtual void makVrv::DtSpiderWebModelInstance::createSpiderWebIfNecessary ( )
protectedvirtual

Create my spider web according to current state.

virtual void makVrv::DtSpiderWebModelInstance::deleteSpiderWeb ( )
protectedvirtual

Delete spider web.

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

Update the vertex colors.

virtual void makVrv::DtSpiderWebModelInstance::setSpokeVertexPosition ( unsigned int  spokeIndex,
unsigned int  vertexIndex,
double  x,
double  y,
double  z 
)
protectedpure virtual

Set a vertex position of a spider web spoke.

Implemented in makVrv::DtOverlaySpiderWebModelInstance.

virtual void makVrv::DtSpiderWebModelInstance::setRingVertexPosition ( unsigned int  ringIndex,
unsigned int  vertexIndex,
double  x,
double  y,
double  z 
)
protectedpure virtual

Set a vertex position of a spider web ring.

Implemented in makVrv::DtOverlaySpiderWebModelInstance.

Member Data Documentation

unsigned int makVrv::DtSpiderWebModelInstance::myOverlay
protected
bool makVrv::DtSpiderWebModelInstance::myEventsEnabled
protected
unsigned long long makVrv::DtSpiderWebModelInstance::myUserData
protected
DtVector makVrv::DtSpiderWebModelInstance::myPosition
protected
DtDcm makVrv::DtSpiderWebModelInstance::myOrientationDcm
protected
DtTaitBryan makVrv::DtSpiderWebModelInstance::myOrientationTaitBryan
protected
double makVrv::DtSpiderWebModelInstance::myRadius
protected
unsigned int makVrv::DtSpiderWebModelInstance::myNumberOfSpokes
protected
unsigned int makVrv::DtSpiderWebModelInstance::myNumberOfRings
protected
bool makVrv::DtSpiderWebModelInstance::myVisible
protected
float makVrv::DtSpiderWebModelInstance::myScale
protected
float makVrv::DtSpiderWebModelInstance::myColor[4]
protected
float makVrv::DtSpiderWebModelInstance::myLineWidth
protected
unsigned int makVrv::DtSpiderWebModelInstance::myLineStipplePattern
protected
double makVrv::DtSpiderWebModelInstance::myMaxAngleSegment
protected
int makVrv::DtSpiderWebModelInstance::myGroup
protected
std::vector<DtSegmentedLine*> makVrv::DtSpiderWebModelInstance::mySpokes
protected
std::vector<DtSegmentedLine*> makVrv::DtSpiderWebModelInstance::myRings
protected

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

Document ID: Generated on Thu Aug 27 10:56:05 EDT 2020 from SVN revision 217100
Copyright © 2005-2020 MAK Technologies. All Rights Reserved (www.mak.com)