VR-Forces 4.1.1 Class Documentation
List of all members | Public Member Functions | Protected Member Functions | Protected Attributes | Private Member Functions
makVrv::DtOsg3DGreatCircleArcModel Class Reference

OSG implementation of segmentable, stylizable 3D Great Circle Arc. More...

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

Public Member Functions

 DtOsg3DGreatCircleArcModel (DtDe &de, DtUniqueID id)
 CTOR.
virtual ~DtOsg3DGreatCircleArcModel ()
 DTOR.
virtual void setPosition (int index, const DtVector &position)
 Sets the position of the point at the specified index.
virtual void setOrientation (int index, const DtTaitBryan &orientation)
 Sets the orientation of the line.
virtual void setColor (float r, float g, float b, float a)
 Set the color of the line.
virtual void setWidth (float width)
 Set the width of the line.
virtual void setStipplePattern (unsigned int pattern, int repeatFactor)
 Set a stipple pattern for the line.
virtual void setStyleSegments (const std::vector< double > &segmentPercentages)
 Set the style segments to percentages of the total line length The values in segmentPercentages must add up to 1.0.
virtual void setSegmentColor (unsigned int segmentIndex, float r, float g, float b, float a)
 Set the color of a particular segment.
virtual void setSegmentLightningStyle (unsigned int segmentIndex, bool enableLightningStyle)
 Turn on or off lightning bolt style for a particular segment.
virtual void setSegmentStartArrow (unsigned int segmentIndex, bool enableArrow)
 Turn on or off the arrow at a segment's start point.
virtual void setSegmentEndArrow (unsigned int segmentIndex, bool enableArrow)
 Turn on or off the arrow at a segment's end point.
virtual void setArrowSize (double)
 Set the size of the arrow. Unimplemented.
virtual void setArrowStyle (int)
 Set the style of the arrow. Unimplemented.
virtual void setStopOnTerrainIntersection (bool enabled)
 Set whether or not the line stops at the first terrain intersection.
virtual void setOcclusionEnabled (bool enabled)
 Turn on or off occlusion of the line by other objects; default is true.
virtual void setSegmentStipplePattern (unsigned int segmentIndex, unsigned int stipplePattern, int repeatFactor)
 Segment parameters for line stippling.
virtual void setSegmentWidth (unsigned int segmentIndex, double width)
 Sets the width of the segment.
virtual void setSegmentStartColor (unsigned int segmentIndex, float r, float g, float b, float a)
 Set the color of the firt vertex in a segment.
virtual void setSegmentEndColor (unsigned int segmentIndex, float r, float g, float b, float a)
 Set the color of the end vertex in a segment.
virtual void setPickable (bool pickable)
 Turn on or off the ability to pick the line. Off by default.
virtual void setSolid (bool solid)
 Set whether the model is solid.
virtual void setVisible (bool)
 Sets model shown/hidden.
virtual void setMaxSubdivisions (int subDivisions)
 The maximum number of subdivisions that will be created when implementing curvature.
virtual void setPreferredSubdivisionSize (double size)
 The preferred size of curvature-related subdivisions.
virtual void setHeightScale (double heightScale)
 This scales the arc height of segments to the arcLength of the segment times the heightScale value.
- Public Member Functions inherited from makVrv::Dt3DGreatCircleArcModel
 Dt3DGreatCircleArcModel (DtDe &de, DtUniqueID id)
 Constructor.
virtual ~Dt3DGreatCircleArcModel ()
 Destructor.
- Public Member Functions inherited from makVrv::Dt3DSegmentedLineModel
 Dt3DSegmentedLineModel (DtDe &de, DtUniqueID id)
 Constructor.
 ~Dt3DSegmentedLineModel ()
 Destructor.
- Public Member Functions inherited from makVrv::DtSegmentedLineModel
 DtSegmentedLineModel (DtDe &de, DtUniqueID id)
 Constructor.
 ~DtSegmentedLineModel ()
 Destructor.
- Public Member Functions inherited from makVrv::DtLineModel
 DtLineModel (DtDe &de, DtUniqueID id)
 CTOR.
 ~DtLineModel ()
 DTOR.
- 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.
virtual void removePosition (int vtx)
 Remove a transform at the given position.
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 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.
void getBoundingBoxCenter (double &x, double &y, double &z) const
 Get the bounding box center of the model instance.
void getBoundingBoxComponents (DtVector &minimum, DtVector &maximum)
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 removedFromSceneObject ()
 Called when the model was removed from a scene object.
virtual DtModelInstancemodelInstance ()
 Get the model instance.
virtual const DtModelInstancemodelInstance () const
 Get the model instance.
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 Member Functions

virtual void update ()
 Called on signal_postUpdate; time to update render data.
virtual void needsUpdate ()
 Called by all mutators to set up a postUpdate signal if not already connected.
virtual void addToScene (const DtUniqueID &sceneObjectId, int modelSet, int visualizerType)
 Attaches the model to the scene.
virtual void removeFromScene ()
 Detaches the model from the scene.
virtual void setModelDefinition (const std::string &str)
 Sets the model definition on the model instance.

Protected Attributes

DtOsgSceneConnectormySceneConnector
DtUniqueID myParentId
DtVector myOrigin
bool myConnectedToPostUpdate

Private Member Functions

 DtOsg3DGreatCircleArcModel ()
 Default, unimplemented constructor.
 DtOsg3DGreatCircleArcModel (const Dt3DGreatCircleArcModel &)
 Unimplemented copy constructor.
DtOsg3DGreatCircleArcModeloperator= (const DtOsg3DGreatCircleArcModel &)
 Unimplemented assignment operator.

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.
- Protected Types inherited from makVrv::DtModel
typedef std::vector
< ObjectTransform
TransformList

Detailed Description

OSG implementation of segmentable, stylizable 3D Great Circle Arc.

Constructor & Destructor Documentation

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

CTOR.

virtual makVrv::DtOsg3DGreatCircleArcModel::~DtOsg3DGreatCircleArcModel ( )
virtual

DTOR.

makVrv::DtOsg3DGreatCircleArcModel::DtOsg3DGreatCircleArcModel ( )
private

Default, unimplemented constructor.

makVrv::DtOsg3DGreatCircleArcModel::DtOsg3DGreatCircleArcModel ( const Dt3DGreatCircleArcModel )
private

Unimplemented copy constructor.

Member Function Documentation

virtual void makVrv::DtOsg3DGreatCircleArcModel::setPosition ( int  index,
const DtVector position 
)
virtual

Sets the position of the point at the specified index.

Reimplemented from makVrv::DtModel.

virtual void makVrv::DtOsg3DGreatCircleArcModel::setOrientation ( int  index,
const DtTaitBryan &  orientation 
)
virtual

Sets the orientation of the line.

Reimplemented from makVrv::DtModel.

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

Set the color of the line.

Implements makVrv::DtLineModel.

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

Set the width of the line.

Implements makVrv::DtLineModel.

virtual void makVrv::DtOsg3DGreatCircleArcModel::setStipplePattern ( unsigned int  pattern,
int  repeatFactor 
)
virtual

Set a stipple pattern for the line.

Implements makVrv::DtLineModel.

virtual void makVrv::DtOsg3DGreatCircleArcModel::setStyleSegments ( const std::vector< double > &  segmentPercentages)
virtual

Set the style segments to percentages of the total line length The values in segmentPercentages must add up to 1.0.

Implements makVrv::DtSegmentedLineModel.

virtual void makVrv::DtOsg3DGreatCircleArcModel::setSegmentColor ( unsigned int  segmentIndex,
float  r,
float  g,
float  b,
float  a 
)
virtual

Set the color of a particular segment.

Implements makVrv::DtSegmentedLineModel.

virtual void makVrv::DtOsg3DGreatCircleArcModel::setSegmentLightningStyle ( unsigned int  segmentIndex,
bool  enableLightningStyle 
)
virtual

Turn on or off lightning bolt style for a particular segment.

Implements makVrv::DtSegmentedLineModel.

virtual void makVrv::DtOsg3DGreatCircleArcModel::setSegmentStartArrow ( unsigned int  segmentIndex,
bool  enableArrow 
)
virtual

Turn on or off the arrow at a segment's start point.

Implements makVrv::DtSegmentedLineModel.

virtual void makVrv::DtOsg3DGreatCircleArcModel::setSegmentEndArrow ( unsigned int  segmentIndex,
bool  enableArrow 
)
virtual

Turn on or off the arrow at a segment's end point.

Implements makVrv::DtSegmentedLineModel.

virtual void makVrv::DtOsg3DGreatCircleArcModel::setArrowSize ( double  )
virtual

Set the size of the arrow. Unimplemented.

Implements makVrv::DtSegmentedLineModel.

virtual void makVrv::DtOsg3DGreatCircleArcModel::setArrowStyle ( int  )
virtual

Set the style of the arrow. Unimplemented.

Implements makVrv::DtSegmentedLineModel.

virtual void makVrv::DtOsg3DGreatCircleArcModel::setStopOnTerrainIntersection ( bool  enabled)
virtual

Set whether or not the line stops at the first terrain intersection.

Implements makVrv::Dt3DSegmentedLineModel.

virtual void makVrv::DtOsg3DGreatCircleArcModel::setOcclusionEnabled ( bool  enabled)
virtual

Turn on or off occlusion of the line by other objects; default is true.

Implements makVrv::Dt3DSegmentedLineModel.

virtual void makVrv::DtOsg3DGreatCircleArcModel::setSegmentStipplePattern ( unsigned int  segmentIndex,
unsigned int  stipplePattern,
int  repeatFactor 
)
virtual

Segment parameters for line stippling.

Implements makVrv::DtSegmentedLineModel.

virtual void makVrv::DtOsg3DGreatCircleArcModel::setSegmentWidth ( unsigned int  segmentIndex,
double  width 
)
virtual

Sets the width of the segment.

Implements makVrv::DtSegmentedLineModel.

virtual void makVrv::DtOsg3DGreatCircleArcModel::setSegmentStartColor ( unsigned int  segmentIndex,
float  r,
float  g,
float  b,
float  a 
)
virtual

Set the color of the firt vertex in a segment.

This can be used for color blending between vertices.

Implements makVrv::DtSegmentedLineModel.

virtual void makVrv::DtOsg3DGreatCircleArcModel::setSegmentEndColor ( unsigned int  segmentIndex,
float  r,
float  g,
float  b,
float  a 
)
virtual

Set the color of the end vertex in a segment.

This can be used for color blending between vertices.

Implements makVrv::DtSegmentedLineModel.

virtual void makVrv::DtOsg3DGreatCircleArcModel::setPickable ( bool  pickable)
virtual

Turn on or off the ability to pick the line. Off by default.

Implements makVrv::Dt3DSegmentedLineModel.

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

Set whether the model is solid.

Implements makVrv::DtModel.

virtual void makVrv::DtOsg3DGreatCircleArcModel::setVisible ( bool  )
virtual

Sets model shown/hidden.

Reimplemented from makVrv::DtModel.

virtual void makVrv::DtOsg3DGreatCircleArcModel::setMaxSubdivisions ( int  subDivisions)
virtual

The maximum number of subdivisions that will be created when implementing curvature.

Implements makVrv::Dt3DGreatCircleArcModel.

virtual void makVrv::DtOsg3DGreatCircleArcModel::setPreferredSubdivisionSize ( double  size)
virtual

The preferred size of curvature-related subdivisions.

This will only be honored up to the point at which it causes maxSubdivisions to be exceeded

Implements makVrv::Dt3DGreatCircleArcModel.

virtual void makVrv::DtOsg3DGreatCircleArcModel::setHeightScale ( double  heightScale)
virtual

This scales the arc height of segments to the arcLength of the segment times the heightScale value.

Implements makVrv::Dt3DGreatCircleArcModel.

DtOsg3DGreatCircleArcModel& makVrv::DtOsg3DGreatCircleArcModel::operator= ( const DtOsg3DGreatCircleArcModel )
private

Unimplemented assignment operator.

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

Attaches the model to the scene.

Implements makVrv::DtModel.

virtual void makVrv::DtOsg3DGreatCircleArcModel::removeFromScene ( )
protectedvirtual

Detaches the model from the scene.

Implements makVrv::DtModel.

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

Sets the model definition on the model instance.

Reimplemented from makVrv::DtModel.

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

Called on signal_postUpdate; time to update render data.

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

Called by all mutators to set up a postUpdate signal if not already connected.

Member Data Documentation

DtOsgSceneConnector* makVrv::DtOsg3DGreatCircleArcModel::mySceneConnector
protected
DtUniqueID makVrv::DtOsg3DGreatCircleArcModel::myParentId
protected
DtVector makVrv::DtOsg3DGreatCircleArcModel::myOrigin
protected
bool makVrv::DtOsg3DGreatCircleArcModel::myConnectedToPostUpdate
protected

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

Document ID: Generated on Mon Apr 8 19:24:01 EDT 2013 from SVN revision 125877
Copyright © 2005-2013 VT MÄK. All Rights Reserved (www.mak.com)