VR-Forces 5.0.3 Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | Private Member Functions | Friends
makVrv::DtOsgMultiRibbon Class Reference

Ribbon implementation that composes multiple child ribbons.

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

Public Types

typedef std::vector
< DtOsgRibbon * > 
RibbonSet
 
typedef std::vector
< osg::ref_ptr< DtOsgRibbon > > 
RibbonRefPtrSet
 

Public Member Functions

virtual osg::Node * node () override
 
virtual void setDroppedPointsPositionOffset (const osg::Vec3d &posOffset) override
 
virtual void update (double dt, double simTime) override
 
virtual void addRibbon (DtOsgRibbon *ribbon)
 
- Public Member Functions inherited from makVrv::DtOsgRibbon
 DtOsgRibbon (DtDe &de, float segmentSpacing=1.0, const osg::Vec4 &color=osg::Vec4d(0.5, 0.5, 0.5, 1.0), float maxLength=2000, float timeout=3600.0)
 
virtual ~DtOsgRibbon ()
 
virtual void traverse (osg::NodeVisitor &nv)
 
virtual void setColor (const osg::Vec4 &color)
 
virtual const osg::Vec4 & color () const
 
virtual void setDroppedPoints (const osg::Vec3d &pointA, const osg::Vec3d &pointB)
 
virtual void update ()
 
virtual void setMaxSegments (long segments)
 
virtual long maxSegments () const
 
virtual void setSegmentSpacing (float spacing)
 
virtual void setSegmentTimeout (float duration)
 
virtual float segmentSpacing () const
 
virtual void setStippled (bool stippled)
 
virtual bool isStippled () const
 
virtual void setLightingEnabled (bool enable)
 
virtual bool lightingEnabled ()
 

Protected Member Functions

 DtOsgMultiRibbon (DtDe &de)
 
virtual ~DtOsgMultiRibbon ()
 
virtual void addParticle (osg::Vec3d const &left, osg::Vec3d const &right, double simTime) override
 
virtual float currentSegmentLength () override
 
virtual void cleanupOldSegments (double simTime)
 
virtual void extendCurrentSegment (osg::Vec3d const &left, osg::Vec3d const &right, double simTime) override
 
virtual osg::Drawable * getDrawable () override
 
- Protected Member Functions inherited from makVrv::DtOsgRibbon
virtual osg::Geode * createGeode ()
 
virtual void setDrawable ()
 

Protected Attributes

RibbonRefPtrSet myRibbons
 
osg::ref_ptr< osg::Group > myNode
 
- Protected Attributes inherited from makVrv::DtOsgRibbon
osg::ref_ptr
< osg::MatrixTransform > 
myPositionNode
 
osg::ref_ptr< osg::Geode > myGeode
 
osg::Matrixd myWorldTransformInv
 
osg::Matrixd myLastLocalToWork
 
int myLastUpdatedFrame
 
double myLastUpdateTime
 
long myMaxSegments
 
float mySegmentSpacingSquared
 
float mySegmentSpacing
 
float mySegmentTimeout
 
osg::Vec3d myLocalPointA
 
osg::Vec3d myLocalPointB
 
osg::Vec3d myLocalPosOffset
 
osg::Vec4 myColor
 
bool myFirstUpdate
 
bool myStippled
 
DtDemyDe
 
bool myLightingEnabled
 
bool myShaderSet
 

Private Member Functions

 DtOsgMultiRibbon ()=delete
 
 DtOsgMultiRibbon (const DtOsgMultiRibbon &)=delete
 
DtOsgMultiRibbonoperator= (const DtOsgMultiRibbon &)=delete
 

Friends

class DtOsgMultiRibbonCreator
 

Member Typedef Documentation

Constructor & Destructor Documentation

makVrv::DtOsgMultiRibbon::DtOsgMultiRibbon ( DtDe de)
protected

CTOR (Create using DtOsgMultiRibbonCreator)

virtual makVrv::DtOsgMultiRibbon::~DtOsgMultiRibbon ( )
protectedvirtual

DTOR.

makVrv::DtOsgMultiRibbon::DtOsgMultiRibbon ( )
privatedelete

unimplemented private default constructor

makVrv::DtOsgMultiRibbon::DtOsgMultiRibbon ( const DtOsgMultiRibbon )
privatedelete

Copy Constructor not implemented – Copy not allowed.

Member Function Documentation

DtOsgMultiRibbon& makVrv::DtOsgMultiRibbon::operator= ( const DtOsgMultiRibbon )
privatedelete

Assignment Operator not implemented – Copy not allowed.

virtual osg::Node* makVrv::DtOsgMultiRibbon::node ( )
overridevirtual

Get the geometry node for the multi-ribbon.

Reimplemented from makVrv::DtOsgRibbon.

virtual void makVrv::DtOsgMultiRibbon::setDroppedPointsPositionOffset ( const osg::Vec3d &  posOffset)
overridevirtual

Apply an offset to all ribbons in the multi-ribbon.

Reimplemented from makVrv::DtOsgRibbon.

virtual void makVrv::DtOsgMultiRibbon::update ( double  dt,
double  simTime 
)
overridevirtual

Update the ribbon.

Reimplemented from makVrv::DtOsgRibbon.

virtual void makVrv::DtOsgMultiRibbon::addRibbon ( DtOsgRibbon ribbon)
virtual

Add a ribbon to the multi-ribbon.

virtual void makVrv::DtOsgMultiRibbon::addParticle ( osg::Vec3d const &  left,
osg::Vec3d const &  right,
double  simTime 
)
overrideprotectedvirtual

Add a particle to the ribbon.

Implements makVrv::DtOsgRibbon.

virtual float makVrv::DtOsgMultiRibbon::currentSegmentLength ( )
overrideprotectedvirtual

Find the length of the current ribbon segment.

Implements makVrv::DtOsgRibbon.

virtual void makVrv::DtOsgMultiRibbon::cleanupOldSegments ( double  simTime)
protectedvirtual

Check to see if any segments have reached their timeout if so remove them from the list to be rendered. currently only implemented for track histories.

Implements makVrv::DtOsgRibbon.

virtual void makVrv::DtOsgMultiRibbon::extendCurrentSegment ( osg::Vec3d const &  left,
osg::Vec3d const &  right,
double  simTime 
)
overrideprotectedvirtual

Extend the current segment to left and right points.

Implements makVrv::DtOsgRibbon.

virtual osg::Drawable* makVrv::DtOsgMultiRibbon::getDrawable ( )
overrideprotectedvirtual

Get the drawable responsible for drawing the ribbon.

Implements makVrv::DtOsgRibbon.

Friends And Related Function Documentation

friend class DtOsgMultiRibbonCreator
friend

Member Data Documentation

RibbonRefPtrSet makVrv::DtOsgMultiRibbon::myRibbons
protected

Set of sub-ribbons.

osg::ref_ptr<osg::Group> makVrv::DtOsgMultiRibbon::myNode
protected

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

Document ID: Generated on Thu Jun 1 17:58:13 EDT 2023 from SVN revision 255404
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)