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

OSG implementation of overlay polygon model. More...

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

Public Member Functions

 DtOsgOverlayPolygonModel (DtDe &de, DtUniqueID &id)
 CTOR.
virtual ~DtOsgOverlayPolygonModel ()
 DTOR.
virtual void setUseDynamicOrigin (bool)
 Set whether or not to use dynamic origin.
virtual void setFillPattern (const std::vector< unsigned int > &)
 Sets a fill pattern (32x32)
virtual void setOutline (bool)
 Sets whether or not to outline the polygon with a scribe as if unfilled, even when filled.
virtual const DtVectororigin () const
 Get the object's origin.
virtual void setColor (float r, float g, float b, float a)
 Set the color of the polygon.
virtual void setInsideColor (float r, float g, float b, float a)
 Set the color at the center of the ellipse.
virtual void getInsideColor (float &r, float &g, float &b, float &a)
 Retrieves the inside color.
virtual void setOutsideColor (float r, float g, float b, float a)
 Set the color on the outside of the ellipse.
virtual void getOutsideColor (float &r, float &g, float &b, float &a)
 Retrieves the inside color.
virtual void setSolidFillCenter (bool)
 Sets to fill the center solid (if filled) not gradiant. Default is false.
virtual void setPosition (int vtx, const DtVector &position)
 Sets the origin if vtx is 0.
virtual void setOrigin (const DtVector &o)
 Will set in model instance.
virtual void setPoint (int vtx, const DtVector &position)
 Will set point in the model instance.
virtual void set2dOffset (int index, float x, float y)
 Sets the 2D offset of a vertex.
virtual void set3dDirection2dLength (int index, float x, float y, float z, float len)
 Sets a 3D direction with a 2D length of a vertex.
virtual void setGroup (int)
 The higher the Z order the "closer" to the eyepoint this element will be drawn.
virtual void setOrientation (int vtx, const DtTaitBryan &orientation)
 Set the orientation of a vertex of the polygon; has no effect.
virtual void setTexturePath (const std::string &texturePath)
 Set the path to the polygon's texture.
virtual void setOutlineTexture (const std::string &texturePath)
 Set the path to the polygon's outline texture.
virtual void setNumTextureTiles (double numTiles)
 Set the number of texture tiles.
virtual void setSolid (bool solid)
 Set a object to be solid.
virtual void setIsSupportModel (bool isSupport)
 Set whether the model is part of the support group (whether or not other scene objects can ground clamp to this model)
virtual void addPoint (const DtVector &point, int index)
 Add a new point to the polygon at the specified index, or, at the end if index is -1.
virtual void setPickable (bool enabled)
 Sets whether or not the polygon is pickable.
virtual void removePoint (int index)
 Removes the point from the specified index.
virtual void removePosition (int index)
 Calls removePoint.
virtual void setStipplePattern (unsigned int stipplePattern)
 Sets stipple pattern for the polygon.
virtual const std::vector
< DtVector > & 
points () const
 Points that make up this polygon.
virtual int pointCount () const
 Retrieves the number of points in the model.
virtual DtVector point (int) const
 Retrieves the point inclusive of the origin.
virtual void setWidth (float width)
 Set the polygon outline width.
virtual void setEventWidth (float width)
 Set the polygon outline width used for event picking.
virtual void setEventsEnabled (bool)
 Sets whether or not mouse events are enabled.
virtual void setVisible (bool isVisible)
 Sets whether or not the polygon is visible.
virtual void addToScene (const DtUniqueID &sceneObjectId, int modelSet, int visualizerType)
 Add the polygon to the scene.
virtual void removeFromScene ()
 Remove the polygon from the scene.
virtual void setModelDefinition (const std::string &str)
 Sets the model definition on the model instance.
- Public Member Functions inherited from makVrv::DtOverlayPolygonModel
 DtOverlayPolygonModel (DtDe &de, DtUniqueID id)
 CTOR.
virtual ~DtOverlayPolygonModel ()
 DTOR.
- Public Member Functions inherited from makVrv::DtPolygonModel
 DtPolygonModel (DtDe &de, DtUniqueID id)
 CTOR.
virtual ~DtPolygonModel ()
 DTOR.
virtual void setFill (bool)
 Calls setSolid.
- Public Member Functions inherited from makVrv::DtModel
 DtModel (DtDe &de, DtUniqueID id)
 CTOR.
virtual ~DtModel ()
 DTOR.
virtual void saveModelToFile (const std::string &filename)
virtual std::string className () const
 Get the class name of the model instance owner.
unsigned int transformSize () const
 Get the number of position/orientations this model has.
const DtVectorposition (int vtx=0) const
 Get the Position of a given point.
const DtTaitBryan & orientation (int vtx=0) const
 Get the Orientation of a given point.
virtual void enableColorBlending (bool b)
 Enable / disable color blending for this model.
virtual void setBlendColor (float r, float g, float b, float a)
 Set color to use if color blending is enabled.
virtual void getBlendColor (float &r, float &g, float &b, float &a)
 Returns the blend color.
virtual bool colorBlendingEnabled () const
 Returns whether or not blending is enabled.
virtual void enableLighting (bool l)
 set whether the model is lit; this may not be an option on all models
virtual int modelSet () const
 Get the model set this model is part of.
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.
virtual void getBoundingBoxCenter (double &x, double &y, double &z) const
 Get the bounding box center of the model instance.
virtual void getBoundingBoxComponents (DtVector &minimum, DtVector &maximum)
 Get the minimum and maximum X,Y,Z components of the bounding box.
void setContributesToBound (bool trueOrFalse)
 Set whether this model instance contributes to an object's overall bounding volume.
bool contributesToBound () const
 Get whether this model instance contributes to an object's overall bounding volume.
DtDede ()
 Get the DtDe object.
virtual void setModelInstance (DtModelInstance *modelInstance)
 Internally set the model instance pointer.
virtual bool visible () const
 Get the visible state of the model.
DtUniqueID parentSceneObjectID () const
 Parent of the model.
virtual void addedToSceneObjectAsProp (const DtUniqueID &sceneObj)
 Called when a scene object added the model as a prop.
virtual void addedToSceneObject (const DtUniqueID &sceneObj, int modelSet, int visualizerType)
 Called when a scene object added the model with the given model set and visualizer type.
virtual void setElementId (DtUniqueID id)
 Called when the element ID of the model's parent object is set.
virtual void removedFromSceneObject ()
 Called when the model was removed from a scene object.
virtual bool isProp ()
 Return whether or not this model was added as a prop.
virtual DtModelInstancemodelInstance ()
 Get the model instance.
virtual const DtModelInstancemodelInstance () const
int visualizerType () const
 The visualizer type determines which channel-specific group node this model will be parented to, and consequently, which observer setting will cause it to be rendered in which channel.

Protected Types

typedef std::map< DtChannel
*, DtOsgOverlayPolygonModelInstance * > 
ChannelInstances

Protected Member Functions

virtual void update ()
 Called on tick when updated, calls updateGeometry() of model instance.
virtual void needsUpdate ()
 Sets needs update flag such that on next update pass the object is updated.
virtual void moveInstancesFromChannelSpecific ()
 Moves instances from channel specific groups back to model set/visualizer groups.
virtual void moveInstancesToChannelSpecific ()
 Moves the single instance to channel specific instances.
virtual void slot_channelCreated (DtChannel *channel)
 Called when channel is created, if the model set is this model set then add a new model instance.
virtual void slot_channelDestroyed (DtChannelManager *channelManager, DtChannel *channel)
 If the channel destroyed contains an instance of this model, destroy that model instance.
virtual void slot_channelConfigurationModified (const std::string &deName, const std::string &winName, const std::string &oldChannelName, const DtChannelConfiguration &config)
 Check to see if model instances associated with this channel need to be created or destroyed.
virtual void setupInstanceWithCurrentValues (DtOsgOverlayPolygonModelInstance *, const DtOsgOverlayPolygonModelInstance::VertexList &)
 Sets up the model instance with current values of this model.

Protected Attributes

DtUniqueID myParentId
bool myEventsEnabled
DtVector myOrigin
DtTaitBryan myRotation
bool myUseDynamicOrigin
bool myChannelSpecificMode
 Set to true if displaying model instances on a per channel basis.
ChannelInstances myChannelInstances
bool myNeedsUpdate
std::string myModelDefinition
float myInsideColor [4]
float myOutsideColor [4]
float myWidth
std::string myTexturePath
std::string myOutlineTexture
std::vector< unsigned intmyFillPattern
bool myOutline
bool mySolidFillCenter
double myNumTextureTiles
bool myPickable
unsigned int myStipplePattern
float myEventWidth
bool mySolid
int myGroup

Additional Inherited Members

- Public Attributes inherited from makVrv::DtModel
boost::signal< void(DtModel *)> signal_modelToBeDestroyed
 Signal emitted when the model is to be destroyed.
boost::signal< void(DtModel *)> signal_modelChanged
boost::signal< bool(DtModel
*, bool), SlotReturnOR
signal_visibilityChangeRequested
 Signal when the visibility has been requested, if any slot returns false, it will not change.
boost::signal< void(DtModelInstance
*, DtModel *)> 
signal_modelInstanceCreated
 Signal emitted when the model instance is created.
boost::signal< void(DtModelInstance
*, DtModel *)> 
signal_modelInstanceToBeDestroyed
 Signal emitted when the model instance is to be destroyed.

Detailed Description

OSG implementation of overlay polygon model.

Member Typedef Documentation

Constructor & Destructor Documentation

makVrv::DtOsgOverlayPolygonModel::DtOsgOverlayPolygonModel ( DtDe de,
DtUniqueID id 
)

CTOR.

virtual makVrv::DtOsgOverlayPolygonModel::~DtOsgOverlayPolygonModel ( )
virtual

DTOR.

Member Function Documentation

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

Set the color of the polygon.

Implements makVrv::DtPolygonModel.

virtual void makVrv::DtOsgOverlayPolygonModel::setInsideColor ( float  r,
float  g,
float  b,
float  a 
)
virtual

Set the color at the center of the ellipse.

Implements makVrv::DtOverlayPolygonModel.

virtual void makVrv::DtOsgOverlayPolygonModel::getInsideColor ( float &  r,
float &  g,
float &  b,
float &  a 
)
virtual

Retrieves the inside color.

virtual void makVrv::DtOsgOverlayPolygonModel::setOutsideColor ( float  r,
float  g,
float  b,
float  a 
)
virtual

Set the color on the outside of the ellipse.

Implements makVrv::DtOverlayPolygonModel.

virtual void makVrv::DtOsgOverlayPolygonModel::getOutsideColor ( float &  r,
float &  g,
float &  b,
float &  a 
)
virtual

Retrieves the inside color.

virtual void makVrv::DtOsgOverlayPolygonModel::setSolidFillCenter ( bool  )
virtual

Sets to fill the center solid (if filled) not gradiant. Default is false.

Implements makVrv::DtOverlayPolygonModel.

virtual void makVrv::DtOsgOverlayPolygonModel::setPosition ( int  vtx,
const DtVector position 
)
virtual

Sets the origin if vtx is 0.

Reimplemented from makVrv::DtModel.

virtual void makVrv::DtOsgOverlayPolygonModel::setOrigin ( const DtVector o)
virtual

Will set in model instance.

Implements makVrv::DtPolygonModel.

virtual void makVrv::DtOsgOverlayPolygonModel::setPoint ( int  vtx,
const DtVector position 
)
virtual

Will set point in the model instance.

Implements makVrv::DtPolygonModel.

virtual void makVrv::DtOsgOverlayPolygonModel::set2dOffset ( int  index,
float  x,
float  y 
)
virtual

Sets the 2D offset of a vertex.

Implements makVrv::DtOverlayPolygonModel.

virtual void makVrv::DtOsgOverlayPolygonModel::set3dDirection2dLength ( int  index,
float  x,
float  y,
float  z,
float  len 
)
virtual

Sets a 3D direction with a 2D length of a vertex.

This only works with outline polygons.

Implements makVrv::DtOverlayPolygonModel.

virtual void makVrv::DtOsgOverlayPolygonModel::setGroup ( int  )
virtual

The higher the Z order the "closer" to the eyepoint this element will be drawn.

Use this variable to stack overlay objects in the particular order you want them displayed

Implements makVrv::DtOverlayPolygonModel.

virtual void makVrv::DtOsgOverlayPolygonModel::setOrientation ( int  vtx,
const DtTaitBryan &  orientation 
)
virtual

Set the orientation of a vertex of the polygon; has no effect.

Reimplemented from makVrv::DtModel.

virtual void makVrv::DtOsgOverlayPolygonModel::setTexturePath ( const std::string &  texturePath)
virtual

Set the path to the polygon's texture.

Implements makVrv::DtPolygonModel.

virtual void makVrv::DtOsgOverlayPolygonModel::setOutlineTexture ( const std::string &  texturePath)
virtual

Set the path to the polygon's outline texture.

virtual void makVrv::DtOsgOverlayPolygonModel::setNumTextureTiles ( double  numTiles)
virtual

Set the number of texture tiles.

Implements makVrv::DtPolygonModel.

virtual void makVrv::DtOsgOverlayPolygonModel::setSolid ( bool  solid)
virtual

Set a object to be solid.

Reimplemented from makVrv::DtModel.

virtual void makVrv::DtOsgOverlayPolygonModel::setIsSupportModel ( bool  isSupport)
virtual

Set whether the model is part of the support group (whether or not other scene objects can ground clamp to this model)

Implements makVrv::DtModel.

virtual void makVrv::DtOsgOverlayPolygonModel::addPoint ( const DtVector point,
int  index 
)
virtual

Add a new point to the polygon at the specified index, or, at the end if index is -1.

Implements makVrv::DtPolygonModel.

virtual void makVrv::DtOsgOverlayPolygonModel::setPickable ( bool  enabled)
virtual

Sets whether or not the polygon is pickable.

Implements makVrv::DtPolygonModel.

virtual void makVrv::DtOsgOverlayPolygonModel::removePoint ( int  index)
virtual

Removes the point from the specified index.

Implements makVrv::DtPolygonModel.

virtual void makVrv::DtOsgOverlayPolygonModel::removePosition ( int  index)
virtual

Calls removePoint.

Reimplemented from makVrv::DtModel.

virtual void makVrv::DtOsgOverlayPolygonModel::setStipplePattern ( unsigned int  stipplePattern)
virtual

Sets stipple pattern for the polygon.

Implements makVrv::DtPolygonModel.

virtual const std::vector<DtVector>& makVrv::DtOsgOverlayPolygonModel::points ( ) const
virtual

Points that make up this polygon.

Implements makVrv::DtPolygonModel.

virtual int makVrv::DtOsgOverlayPolygonModel::pointCount ( ) const
virtual

Retrieves the number of points in the model.

Implements makVrv::DtPolygonModel.

virtual DtVector makVrv::DtOsgOverlayPolygonModel::point ( int  ) const
virtual

Retrieves the point inclusive of the origin.

Implements makVrv::DtPolygonModel.

virtual void makVrv::DtOsgOverlayPolygonModel::setWidth ( float  width)
virtual

Set the polygon outline width.

Implements makVrv::DtPolygonModel.

virtual void makVrv::DtOsgOverlayPolygonModel::setEventWidth ( float  width)
virtual

Set the polygon outline width used for event picking.

Implements makVrv::DtOverlayPolygonModel.

virtual void makVrv::DtOsgOverlayPolygonModel::setEventsEnabled ( bool  )
virtual

Sets whether or not mouse events are enabled.

Implements makVrv::DtOverlayPolygonModel.

virtual void makVrv::DtOsgOverlayPolygonModel::setVisible ( bool  isVisible)
virtual

Sets whether or not the polygon is visible.

Reimplemented from makVrv::DtModel.

virtual void makVrv::DtOsgOverlayPolygonModel::addToScene ( const DtUniqueID sceneObjectId,
int  modelSet,
int  visualizerType 
)
virtual

Add the polygon to the scene.

Implements makVrv::DtModel.

virtual void makVrv::DtOsgOverlayPolygonModel::removeFromScene ( )
virtual

Remove the polygon from the scene.

Implements makVrv::DtModel.

virtual void makVrv::DtOsgOverlayPolygonModel::setModelDefinition ( const std::string &  str)
virtual

Sets the model definition on the model instance.

Reimplemented from makVrv::DtModel.

virtual void makVrv::DtOsgOverlayPolygonModel::setUseDynamicOrigin ( bool  )
virtual

Set whether or not to use dynamic origin.

Will not cause redraw or recalulate, but will effect how point 0 is used when using setPosition. If true will not set the point 0 to be at the origin, but rather will respect the current value. Default is false

Implements makVrv::DtPolygonModel.

virtual void makVrv::DtOsgOverlayPolygonModel::setFillPattern ( const std::vector< unsigned int > &  )
virtual

Sets a fill pattern (32x32)

Implements makVrv::DtOverlayPolygonModel.

virtual void makVrv::DtOsgOverlayPolygonModel::setOutline ( bool  )
virtual

Sets whether or not to outline the polygon with a scribe as if unfilled, even when filled.

Only valid if fill is also true

Implements makVrv::DtOverlayPolygonModel.

virtual const DtVector& makVrv::DtOsgOverlayPolygonModel::origin ( ) const
virtual

Get the object's origin.

Implements makVrv::DtOverlayPolygonModel.

virtual void makVrv::DtOsgOverlayPolygonModel::update ( )
protectedvirtual

Called on tick when updated, calls updateGeometry() of model instance.

virtual void makVrv::DtOsgOverlayPolygonModel::needsUpdate ( )
protectedvirtual

Sets needs update flag such that on next update pass the object is updated.

virtual void makVrv::DtOsgOverlayPolygonModel::moveInstancesFromChannelSpecific ( )
protectedvirtual

Moves instances from channel specific groups back to model set/visualizer groups.

This will mean destroying all channel specific instances and creating a single instance

virtual void makVrv::DtOsgOverlayPolygonModel::moveInstancesToChannelSpecific ( )
protectedvirtual

Moves the single instance to channel specific instances.

Will make connections for channels being added and removed. This code is to allow for fixed sized items on different channels

virtual void makVrv::DtOsgOverlayPolygonModel::slot_channelCreated ( DtChannel channel)
protectedvirtual

Called when channel is created, if the model set is this model set then add a new model instance.

virtual void makVrv::DtOsgOverlayPolygonModel::slot_channelDestroyed ( DtChannelManager channelManager,
DtChannel channel 
)
protectedvirtual

If the channel destroyed contains an instance of this model, destroy that model instance.

virtual void makVrv::DtOsgOverlayPolygonModel::slot_channelConfigurationModified ( const std::string &  deName,
const std::string &  winName,
const std::string &  oldChannelName,
const DtChannelConfiguration config 
)
protectedvirtual

Check to see if model instances associated with this channel need to be created or destroyed.

virtual void makVrv::DtOsgOverlayPolygonModel::setupInstanceWithCurrentValues ( DtOsgOverlayPolygonModelInstance ,
const DtOsgOverlayPolygonModelInstance::VertexList  
)
protectedvirtual

Sets up the model instance with current values of this model.

Member Data Documentation

DtUniqueID makVrv::DtOsgOverlayPolygonModel::myParentId
protected
bool makVrv::DtOsgOverlayPolygonModel::myEventsEnabled
protected
DtVector makVrv::DtOsgOverlayPolygonModel::myOrigin
protected
DtTaitBryan makVrv::DtOsgOverlayPolygonModel::myRotation
protected
bool makVrv::DtOsgOverlayPolygonModel::myUseDynamicOrigin
protected
bool makVrv::DtOsgOverlayPolygonModel::myChannelSpecificMode
protected

Set to true if displaying model instances on a per channel basis.

Default is false

ChannelInstances makVrv::DtOsgOverlayPolygonModel::myChannelInstances
protected
bool makVrv::DtOsgOverlayPolygonModel::myNeedsUpdate
protected
std::string makVrv::DtOsgOverlayPolygonModel::myModelDefinition
protected

Variables that are saved in order to switch between channel instance and model set instance

float makVrv::DtOsgOverlayPolygonModel::myInsideColor[4]
protected
float makVrv::DtOsgOverlayPolygonModel::myOutsideColor[4]
protected
float makVrv::DtOsgOverlayPolygonModel::myWidth
protected
std::string makVrv::DtOsgOverlayPolygonModel::myTexturePath
protected
std::string makVrv::DtOsgOverlayPolygonModel::myOutlineTexture
protected
std::vector<unsigned int> makVrv::DtOsgOverlayPolygonModel::myFillPattern
protected
bool makVrv::DtOsgOverlayPolygonModel::myOutline
protected
bool makVrv::DtOsgOverlayPolygonModel::mySolidFillCenter
protected
double makVrv::DtOsgOverlayPolygonModel::myNumTextureTiles
protected
bool makVrv::DtOsgOverlayPolygonModel::myPickable
protected
unsigned int makVrv::DtOsgOverlayPolygonModel::myStipplePattern
protected
float makVrv::DtOsgOverlayPolygonModel::myEventWidth
protected
bool makVrv::DtOsgOverlayPolygonModel::mySolid
protected
int makVrv::DtOsgOverlayPolygonModel::myGroup
protected

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

Document ID: Generated on Thu Apr 12 03:15:37 EDT 2018 from SVN revision 187986
Copyright © 2005-2018 VT MÄK. All Rights Reserved (www.mak.com)