VR-Forces 5.0.1 Developer's Guide
 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 | Private Member Functions | Friends
makVrv::DtCommunicationLine Class Reference

Encapsulates a communication line between two entities or myFixedFlag points in space.

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

Public Member Functions

virtual ~DtCommunicationLine ()
 
virtual void setDirection (const AttachablePoint &source, const AttachablePoint &dest)
 
virtual void setCurvedEarthExaggeration (float amount)
 
virtual void setUseCurvedEarthLines (bool useCurved)
 
virtual void setStartOffset (const DtVector &offset)
 
virtual void setEndOffset (const DtVector &offset)
 
virtual void setStipplePattern (unsigned short stipplePattern)
 
virtual void setStippleRepeatFactor (int repeatFactor)
 
Methods Inherited from DtBaseRadioVisualization
virtual void setColor (float red, float green, float blue, float alpha=1.0f)
 
virtual void setAnimationRate (float rate)
 
virtual void animate (double t)
 
- Public Member Functions inherited from makVrv::DtBaseRadioVisualization
 DtBaseRadioVisualization (DtUniqueID uid)
 
virtual ~DtBaseRadioVisualization ()
 
DtUniqueID uniqueId () const
 

Protected Member Functions

 DtCommunicationLine (DtDe &de, int modelSet, int visualType, AttachablePoint source, AttachablePoint dest)
 
virtual void initialize ()
 
virtual DtSegmentedLineModelAgent * instantiateLineModelAgent ()
 
virtual void initializeLineModelAgent (DtSegmentedLineModelAgent *agent)
 
virtual void slot_coordinateSystemChanged ()
 

Protected Attributes

DtSignalConnectionManager myConnections
 
DtAttachableUpdaterAgent * myUpdater
 
DtSegmentedLineModelAgent * myLineModel
 
DtSceneObjectAgent * mySceneObject
 
int myModelSet
 
int myVisualType
 
bool myReverseDirectionFlag
 
bool myCurvedEarthModeFlag
 
float myCurvedEarthExaggerationAmount
 
unsigned short myStipplePattern
 
int myStippleRepeatFactor
 
float myAnimationRate
 
AttachablePoint myStartPoint
 
AttachablePoint myEndPoint
 
float myLineColorR
 
float myLineColorG
 
float myLineColorB
 
float myLineColorA
 
DtDemyDe
 
- Protected Attributes inherited from makVrv::DtBaseRadioVisualization
DtUniqueID myUniqueId
 

Private Member Functions

 DtCommunicationLine ()
 
 DtCommunicationLine (const DtCommunicationLine &)
 
DtCommunicationLineoperator= (const DtCommunicationLine &)
 

Friends

class DtCommunicationLineCreator
 

Constructor & Destructor Documentation

virtual makVrv::DtCommunicationLine::~DtCommunicationLine ( )
virtual

DTOR.

makVrv::DtCommunicationLine::DtCommunicationLine ( DtDe de,
int  modelSet,
int  visualType,
AttachablePoint  source,
AttachablePoint  dest 
)
protected

Protected CTOR (use DtCommunicationLineCreator::create(..))

makVrv::DtCommunicationLine::DtCommunicationLine ( )
private

Default Constructor not implemented.

makVrv::DtCommunicationLine::DtCommunicationLine ( const DtCommunicationLine )
private

Copy Constructor not implemented - Copy not allowed.

Member Function Documentation

virtual void makVrv::DtCommunicationLine::setDirection ( const AttachablePoint source,
const AttachablePoint dest 
)
virtual

Changes the scroll direction of the comm line.

virtual void makVrv::DtCommunicationLine::setColor ( float  red,
float  green,
float  blue,
float  alpha = 1.0f 
)
virtual

Sets the color of the comm line. Color values specified in the 0 to 1 range.

Implements makVrv::DtBaseRadioVisualization.

virtual void makVrv::DtCommunicationLine::setAnimationRate ( float  rate)
virtual

Sets the rate at which the comm line scrolls. At an animation rate of 1.0, one of the comm line's dashes will advance to the position of the next dash in 1 second. At a factor (animation rate) of 2.0, it does it in half a second, etc.

Implements makVrv::DtBaseRadioVisualization.

virtual void makVrv::DtCommunicationLine::animate ( double  t)
virtual

Animate the comm line using the current time and stipple pattern.

Implements makVrv::DtBaseRadioVisualization.

virtual void makVrv::DtCommunicationLine::setCurvedEarthExaggeration ( float  amount)
virtual

Sets the amount of exaggeration applied to curved earth comm lines.

virtual void makVrv::DtCommunicationLine::setUseCurvedEarthLines ( bool  useCurved)
virtual

Sets whether the line should be rendered as a great circle arc. If set to false, the line is rendered as a straight line.

Exceptions
DtCorruptedStateif the line model can't be created.
virtual void makVrv::DtCommunicationLine::setStartOffset ( const DtVector offset)
virtual

Sets the offset of attachments to the start point of the line.

virtual void makVrv::DtCommunicationLine::setEndOffset ( const DtVector offset)
virtual

Sets the offset of attachments to the end point of the line.

virtual void makVrv::DtCommunicationLine::setStipplePattern ( unsigned short  stipplePattern)
virtual

Set the stipple pattern of the line.

virtual void makVrv::DtCommunicationLine::setStippleRepeatFactor ( int  repeatFactor)
virtual

Set the stipple pattern repeat factor of the line.

virtual void makVrv::DtCommunicationLine::initialize ( )
protectedvirtual

Instantiates model agents representing the comm line. Uses settings from the settings manager for proper appearance.

Exceptions
DtCorruptedStateif agents could not be created.
virtual DtSegmentedLineModelAgent* makVrv::DtCommunicationLine::instantiateLineModelAgent ( )
protectedvirtual

Instantiates the model agent used for visualizing the line itself. This method can be overridden to create new communication line types that visualize lines using different model agents.

Returns
the newly instantiated line model agent.
virtual void makVrv::DtCommunicationLine::initializeLineModelAgent ( DtSegmentedLineModelAgent *  agent)
protectedvirtual

Initializes the line model agent with its display parameters. This method applies the display parameters to the line model agent to customize how the line appears (occlusion, stipple, line width, etc.). This method can be overridden to create new communication line types that appear differently from the default communication lines.

virtual void makVrv::DtCommunicationLine::slot_coordinateSystemChanged ( )
protectedvirtual

Receives notification that the loaded terrain's coordinate system changed. Forces re-creation of the communication line model, since the great circle lines don't work on non-geocentric terrains.

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

Assignment Operator not implemented - Copy not allowed.

Friends And Related Function Documentation

friend class DtCommunicationLineCreator
friend

Member Data Documentation

DtSignalConnectionManager makVrv::DtCommunicationLine::myConnections
protected
DtAttachableUpdaterAgent* makVrv::DtCommunicationLine::myUpdater
protected
DtSegmentedLineModelAgent* makVrv::DtCommunicationLine::myLineModel
protected
DtSceneObjectAgent* makVrv::DtCommunicationLine::mySceneObject
protected
int makVrv::DtCommunicationLine::myModelSet
protected
int makVrv::DtCommunicationLine::myVisualType
protected
bool makVrv::DtCommunicationLine::myReverseDirectionFlag
protected
bool makVrv::DtCommunicationLine::myCurvedEarthModeFlag
protected
float makVrv::DtCommunicationLine::myCurvedEarthExaggerationAmount
protected
unsigned short makVrv::DtCommunicationLine::myStipplePattern
protected
int makVrv::DtCommunicationLine::myStippleRepeatFactor
protected
float makVrv::DtCommunicationLine::myAnimationRate
protected
AttachablePoint makVrv::DtCommunicationLine::myStartPoint
protected
AttachablePoint makVrv::DtCommunicationLine::myEndPoint
protected
float makVrv::DtCommunicationLine::myLineColorR
protected
float makVrv::DtCommunicationLine::myLineColorG
protected
float makVrv::DtCommunicationLine::myLineColorB
protected
float makVrv::DtCommunicationLine::myLineColorA
protected
DtDe& makVrv::DtCommunicationLine::myDe
protected

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

Document ID: Generated on Mon Jun 20 00:38:30 EDT 2022 from SVN revision 244029
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)