VR-Forces 4.10 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 | Private Member Functions
makVrv::DtSpiderWebVisualizer Class Referenceabstract

Interface for a Spider Web Tactical Graphic Visualizer. More...

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

Public Member Functions

 DtSpiderWebVisualizer (DtBaseConnection &simulation, DtStateListener &listener, int modelSet)
 CTOR. More...
 
virtual ~DtSpiderWebVisualizer ()
 DTOR. More...
 
virtual void setColor (float r, float g, float b, float a)
 Sets the color for the spider web. More...
 
virtual void useDefaultColor ()
 Sets color to default color The default color is defined in the visualizer definition. More...
 
virtual void getColor (float &r, float &g, float &b, float &a) const
 Returns the color. More...
 
virtual void setPenStyle (vrvTacticalGraphicUtilities::PenStyle)
 Set the pen style This function translates the pen style to a stipple pattern. More...
 
virtual unsigned short lineStipple () const
 Returns the stipple pattern. More...
 
virtual void setStipplePattern (unsigned short)
 Sets the stipple pattern. More...
 
virtual void setPoints (const DtEnvironmentalStateListener::ControlPointsList &)
 Sets the origin and possible start/end vertices of the spider web. More...
 
virtual void addPoint (int inex, const DtVector &)
 Adds a point to the spider web. More...
 
virtual void setOrigin (const DtVector &)
 Sets the origin vertex of the spider web Akin to calling DtSpiderWebFacadeBase::setPosition(0, originPosition) More...
 
virtual void setSelected (bool)
 Sets whether or not the spider web is selected. More...
 
virtual void setPosition (int iIndex, const DtVector &)
 Sets the position of a vertex in the spider web Akin to calling DtSpiderWebFacadeBase::setPosition(vtxIndex, vtxPosition) More...
 
virtual void setPixelLineWidth (int)
 Sets the line width of the spider web The pixel line width is the width of the line in osg pixel space. More...
 
virtual void setModelDefinitionForAgents ()
 Applies myModelDefinition to the spider web model agent. More...
 
virtual void setAttached (DtUniqueID)
 Sets the spider web to be attached to the specified object Once attached this object will move its origin offset from the relative location. More...
 
virtual void setPickable (bool)
 Sets whether or not the spider web is pickable. More...
 
virtual void setRadius (double)
 Sets the radius. More...
 
virtual void setNumberOfSpokes (int)
 Sets number of spokes. More...
 
virtual void setNumberOfRings (int)
 Sets number of rings. More...
 
- Public Member Functions inherited from makVrv::DtSceneObjectVisualizer
 DtSceneObjectVisualizer (DtBaseConnection &simulation, DtStateListener &listener, int modelSet)
 
virtual ~DtSceneObjectVisualizer ()
 
virtual DtUniqueID uniqueID () const
 Return unique id of mySceneObjectAgent, if it exists, else returns 0;. More...
 
virtual DtSceneObjectAgent * sceneObjectAgent ()
 
virtual void setParent (DtStateVisualizer *p)
 Override of base class setParent to simply set the parent without destroying/recreating model agents. More...
 
virtual void setSceneObjectAgent (DtSceneObjectAgent *)
 
virtual void setElementID (const DtElementID &elementID)
 
DtElementID elementID () const
 
virtual bool show (int)
 Override to show/hide scene object agent (if it exists) More...
 
virtual bool hide (int)
 Will call destroyModelAgents(), if, when the context is added, it is the first context in the list. More...
 
- Public Member Functions inherited from makVrv::DtStateVisualizer
 DtStateVisualizer (DtBaseConnection &connection, DtStateListener &listener, int modelSet)
 CTOR. More...
 
virtual ~DtStateVisualizer ()
 DTOR. More...
 
virtual DtObserverMode::ModelSets modelSet ()
 Return the visualizer's model set enum. More...
 
virtual const TypeInfotypeInfo () const =0
 Get the type info. More...
 
virtual const DtStateVisualizerparent () const
 Get a const pointer to the parent visualizer of this visualizer. More...
 
void setModelDefinition (const std::string &definition)
 Sets the model definition and creates agent(s) based on that definition. More...
 
const std::string & modelDefinition () const
 Gets the current model definition. More...
 
virtual void implementVisibility (bool visible)
 Wrap some of the show/hide functionality so that it can be overloaded (ex. More...
 
virtual bool setVisible (bool visible, int context)
 Returns true if this context wants to show or hide the item. More...
 
virtual void initialize ()
 Initialize the visualizer. More...
 
virtual bool isVisible () const
 Returns true if visible. More...
 
virtual void setHasMouseCursor (bool)
 Sets the mouse hover state. More...
 
virtual bool hasMouseCursor () const
 
virtual bool selected () const
 
void setName (const std::string &)
 Internal name of state visualizer. More...
 
const std::string & name () const
 
virtual bool pickable () const
 
virtual void setUniqueID (DtUniqueID id)
 
DtUniqueID uniqueID () const
 
int visualizerType () const
 
void setShowHideContext (const std::vector< int > &s)
 Set show/hide context without changing visibility of item. More...
 
virtual void setVisualizerDefinition (const DtVisualizerDefinition &)
 Set any other additional visualizer information from the visual record. More...
 
DtStateListenerlistener ()
 
DtBaseConnectionsimulation ()
 Get the connection for this visualizer. More...
 
void setDistribute (bool b)
 Whether or not to distribute over the network. More...
 
bool distribute () const
 

Protected Member Functions

virtual void setupSpiderWeb (DtSpiderWebFacadeBase *f)
 
virtual void resetSpatial ()
 Reset the geometry of spider web. More...
 
virtual void createModelAgents ()
 Create the model agents associated with the spider web. More...
 
virtual void destroyModelAgents ()
 Destroy the model agents associated with the spider web. More...
 
virtual void startAttached ()
 Utility function to begin the attachment process. More...
 
virtual void endAttached ()
 Utility function to end the attachment process. More...
 
const DtSpiderWebFacadeBasespiderWebFacade () const
 Returns the facade base used by this class. More...
 
DtSpiderWebFacadeBasespiderWebFacade ()
 Returns the facade base used by this class. More...
 
virtual DtSpiderWebFacadeBasecreateSpiderWebFacade ()=0
 Creates the facade for this spider web visualizer. More...
 
virtual void setRelativeLocation (const DtVector &)
 When attached, set the relative location of the spider web's origin If attached, the relative location will represent the offset from the origin of the entity this object is attached to, such that when the host entity moves this object's origin will move relative to that entity by the offset amount. This function does nothing if the spider web is not attached. More...
 
virtual void setOffsetPoints (const std::vector< DtVector > &)
 This is default behavior and invoking this function is akin to calling setPoints(const ControlPointsList&) More...
 
- Protected Member Functions inherited from makVrv::DtSceneObjectVisualizer
virtual DtSceneObjectAgent * createObjectAgent ()
 
- Protected Member Functions inherited from makVrv::DtStateVisualizer
virtual void slot_mouseDown (DtMouseState &mouseState, const std::string &displayEngineName, const std::string &windowName, const std::string &channelName)
 Called when the mouse is clicked in this visualizer. More...
 
virtual void slot_mouseUp (DtMouseState &mouseState, const std::string &displayEngineName, const std::string &windowName, const std::string &channelName)
 
virtual void slot_mouseDblClick (DtMouseState &mouseState, const std::string &displayEngineName, const std::string &windowName, const std::string &channelName)
 
virtual bool supportsShowHideContext (int) const
 Default returns true. More...
 
template<typename T , typename C >
void connectAndUpdate (boost::signalslib::signal< void(T)> &sig, void(C::*fp)(T), T val)
 Connect a signal and update the entity. More...
 

Protected Attributes

DtTacticalGraphicStateListenermySpiderWebListener
 
float myDefaultColor [4]
 
float myDefaultLabelColor [4]
 
float myColor [4]
 
DtSpiderWebFacadeBasemySpiderWeb
 
unsigned short myLineStipple
 
double myDefaultLineWidth
 
int myLineWidth
 
bool myAttachedFlag
 
DtUniqueID myAttachedToId
 
DtMultiPointEmbarkationUpdaterAgent * myAttachedUpdaterAgent
 
DtVector myRelativeLocation
 
DtEnvironmentalStateListener::ControlPointsList myControlPoints
 
- Protected Attributes inherited from makVrv::DtSceneObjectVisualizer
DtElementID myElementID
 
- Protected Attributes inherited from makVrv::DtStateVisualizer
DtBaseConnectionmySimulation
 
DtStateListenermyListener
 
bool myDistributeFlag
 
DtUniqueID myUniqueID
 
std::string myName
 
std::string myModelDefinition
 
DtSignalConnectionManager myConnections
 
int myModelSet
 
int myVisualizerType
 
std::vector< intmyShowHideContexts
 
bool mySelected
 
bool myHasMouseCursor
 
bool myPickable
 
bool myVisible
 
DtStateVisualizermyParent
 
DtSceneObjectAgent * mySceneObjectAgent
 

Private Member Functions

 DtSpiderWebVisualizer ()
 Default Constructor not implemented. More...
 
 DtSpiderWebVisualizer (const DtSpiderWebVisualizer &)
 Copy Constructor not implemented - Copy not allowed. More...
 
DtSpiderWebVisualizeroperator= (const DtSpiderWebVisualizer &)
 Assignment Operator not implemented - Copy not allowed. More...
 

Additional Inherited Members

- Public Types inherited from makVrv::DtStateVisualizer
enum  Type {
  AllVisualizerTypes = 0, EntityVisualizerType = 1, EnvironmentalVisualizerType, InteractionVisualizerType,
  AggregateVisualizerType, IntervisibilityVisualizerType, TacticalSmokeVisualizerType, UserType = 10000
}
 Visualizer class types that are supportable via visualizers. More...
 
- Public Attributes inherited from makVrv::DtStateVisualizer
boost::signalslib::signal
< void(DtStateVisualizer
*, DtStateVisualizer
*, DtStateVisualizer *)> 
signal_reparented
 Signaled when the parent of this item changes, called before destroying any model agents. More...
 
boost::signalslib::signal
< void(DtMouseState &, const
DtUniqueID &, const
std::string &, const
std::string &, const
std::string
&, DtStateVisualizer *)> 
signal_mouseDown
 Emitted when the entity's indicator is clicked. More...
 
boost::signalslib::signal
< void(DtMouseState &, const
DtUniqueID &, const
std::string &, const
std::string &, const
std::string
&, DtStateVisualizer *)> 
signal_mouseUp
 
boost::signalslib::signal
< void(DtMouseState &, const
DtUniqueID &, const
std::string &, const
std::string &, const
std::string
&, DtStateVisualizer *)> 
signal_mouseDblClick
 

Detailed Description

Interface for a Spider Web Tactical Graphic Visualizer.

This class is used by a VR-Link Connection to realize a Spider Web tactical graphic by setting the attributes of a Spider Web Facade according to signals received from the DtTacticalGraphicStateListener.

This class must be extended to create a spider web facade of the desired type, e.g. a 2D versus 3D spider web.

Constructor & Destructor Documentation

makVrv::DtSpiderWebVisualizer::DtSpiderWebVisualizer ( DtBaseConnection simulation,
DtStateListener listener,
int  modelSet 
)

CTOR.

virtual makVrv::DtSpiderWebVisualizer::~DtSpiderWebVisualizer ( )
virtual

DTOR.

makVrv::DtSpiderWebVisualizer::DtSpiderWebVisualizer ( )
private

Default Constructor not implemented.

makVrv::DtSpiderWebVisualizer::DtSpiderWebVisualizer ( const DtSpiderWebVisualizer )
private

Copy Constructor not implemented - Copy not allowed.

Member Function Documentation

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

Sets the color for the spider web.

Valid range for argument values are 0.0 - 1.0. This will apply to all segments of the arc. If arguments are all 0, use the default as defined in the visual definition

virtual void makVrv::DtSpiderWebVisualizer::useDefaultColor ( )
virtual

Sets color to default color The default color is defined in the visualizer definition.

This function is called when setColor( 0, 0, 0, 0 ); is called.

virtual void makVrv::DtSpiderWebVisualizer::getColor ( float &  r,
float &  g,
float &  b,
float &  a 
) const
virtual

Returns the color.

virtual void makVrv::DtSpiderWebVisualizer::setPenStyle ( vrvTacticalGraphicUtilities::PenStyle  )
virtual

Set the pen style This function translates the pen style to a stipple pattern.

See vrvTacticalGraphicUtilities for styles

virtual unsigned short makVrv::DtSpiderWebVisualizer::lineStipple ( ) const
virtual

Returns the stipple pattern.

virtual void makVrv::DtSpiderWebVisualizer::setStipplePattern ( unsigned  short)
virtual

Sets the stipple pattern.

virtual void makVrv::DtSpiderWebVisualizer::setPoints ( const DtEnvironmentalStateListener::ControlPointsList )
virtual

Sets the origin and possible start/end vertices of the spider web.

Akin to calling DtSpiderWebFacadeBase::setPosition(vtxIndex, vtxPosition) on every point in the ControlPointsList

virtual void makVrv::DtSpiderWebVisualizer::addPoint ( int  inex,
const DtVector  
)
virtual

Adds a point to the spider web.

Akin to calling DtSpiderWebFacadeBase::setPosition(vtxIndex, vtxPosition)

virtual void makVrv::DtSpiderWebVisualizer::setOrigin ( const DtVector )
virtual

Sets the origin vertex of the spider web Akin to calling DtSpiderWebFacadeBase::setPosition(0, originPosition)

virtual void makVrv::DtSpiderWebVisualizer::setSelected ( bool  )
virtual

Sets whether or not the spider web is selected.

Reimplemented from makVrv::DtStateVisualizer.

virtual void makVrv::DtSpiderWebVisualizer::setPosition ( int  iIndex,
const DtVector  
)
virtual

Sets the position of a vertex in the spider web Akin to calling DtSpiderWebFacadeBase::setPosition(vtxIndex, vtxPosition)

virtual void makVrv::DtSpiderWebVisualizer::setPixelLineWidth ( int  )
virtual

Sets the line width of the spider web The pixel line width is the width of the line in osg pixel space.

This is different than physicalLineWidth which sets the width of the line in database space.

virtual void makVrv::DtSpiderWebVisualizer::setModelDefinitionForAgents ( )
virtual

Applies myModelDefinition to the spider web model agent.

Reimplemented from makVrv::DtSceneObjectVisualizer.

virtual void makVrv::DtSpiderWebVisualizer::setAttached ( DtUniqueID  )
virtual

Sets the spider web to be attached to the specified object Once attached this object will move its origin offset from the relative location.

virtual void makVrv::DtSpiderWebVisualizer::setPickable ( bool  )
virtual

Sets whether or not the spider web is pickable.

Reimplemented from makVrv::DtStateVisualizer.

virtual void makVrv::DtSpiderWebVisualizer::setRadius ( double  )
virtual

Sets the radius.

virtual void makVrv::DtSpiderWebVisualizer::setNumberOfSpokes ( int  )
virtual

Sets number of spokes.

virtual void makVrv::DtSpiderWebVisualizer::setNumberOfRings ( int  )
virtual

Sets number of rings.

virtual void makVrv::DtSpiderWebVisualizer::setupSpiderWeb ( DtSpiderWebFacadeBase f)
protectedvirtual
virtual void makVrv::DtSpiderWebVisualizer::resetSpatial ( )
protectedvirtual

Reset the geometry of spider web.

virtual void makVrv::DtSpiderWebVisualizer::createModelAgents ( )
protectedvirtual

Create the model agents associated with the spider web.

Reimplemented from makVrv::DtSceneObjectVisualizer.

virtual void makVrv::DtSpiderWebVisualizer::destroyModelAgents ( )
protectedvirtual

Destroy the model agents associated with the spider web.

Reimplemented from makVrv::DtSceneObjectVisualizer.

virtual void makVrv::DtSpiderWebVisualizer::setRelativeLocation ( const DtVector )
protectedvirtual

When attached, set the relative location of the spider web's origin If attached, the relative location will represent the offset from the origin of the entity this object is attached to, such that when the host entity moves this object's origin will move relative to that entity by the offset amount. This function does nothing if the spider web is not attached.

virtual void makVrv::DtSpiderWebVisualizer::setOffsetPoints ( const std::vector< DtVector > &  )
protectedvirtual

This is default behavior and invoking this function is akin to calling setPoints(const ControlPointsList&)

virtual void makVrv::DtSpiderWebVisualizer::startAttached ( )
protectedvirtual

Utility function to begin the attachment process.

virtual void makVrv::DtSpiderWebVisualizer::endAttached ( )
protectedvirtual

Utility function to end the attachment process.

const DtSpiderWebFacadeBase* makVrv::DtSpiderWebVisualizer::spiderWebFacade ( ) const
protected

Returns the facade base used by this class.

DtSpiderWebFacadeBase* makVrv::DtSpiderWebVisualizer::spiderWebFacade ( )
protected

Returns the facade base used by this class.

virtual DtSpiderWebFacadeBase* makVrv::DtSpiderWebVisualizer::createSpiderWebFacade ( )
protectedpure virtual

Creates the facade for this spider web visualizer.

Implemented in makVrv::Dt2DSpiderWebVisualizer.

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

Assignment Operator not implemented - Copy not allowed.

Member Data Documentation

DtTacticalGraphicStateListener& makVrv::DtSpiderWebVisualizer::mySpiderWebListener
protected
float makVrv::DtSpiderWebVisualizer::myDefaultColor[4]
protected
float makVrv::DtSpiderWebVisualizer::myDefaultLabelColor[4]
protected
float makVrv::DtSpiderWebVisualizer::myColor[4]
protected
DtSpiderWebFacadeBase* makVrv::DtSpiderWebVisualizer::mySpiderWeb
protected
unsigned short makVrv::DtSpiderWebVisualizer::myLineStipple
protected
double makVrv::DtSpiderWebVisualizer::myDefaultLineWidth
protected
int makVrv::DtSpiderWebVisualizer::myLineWidth
protected
bool makVrv::DtSpiderWebVisualizer::myAttachedFlag
protected
DtUniqueID makVrv::DtSpiderWebVisualizer::myAttachedToId
protected
DtMultiPointEmbarkationUpdaterAgent* makVrv::DtSpiderWebVisualizer::myAttachedUpdaterAgent
protected
DtVector makVrv::DtSpiderWebVisualizer::myRelativeLocation
protected
DtEnvironmentalStateListener::ControlPointsList makVrv::DtSpiderWebVisualizer::myControlPoints
protected

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

Document ID: Generated on Tue Sep 21 17:42:52 EDT 2021 from SVN revision 234861
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)