VR-Forces 4.6.1 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
makVrv::DtEntity3dFacade Class Reference

The DtEntity3dFacade is a facade around agents that make up an entity in the 3D model set. More...

Public Member Functions

 DtEntity3dFacade (DtAgentManagerInterface &sceneInterface, DtSharedSettingsManager &settingsMgr, DtElementID id, bool distribute=false)
 CTOR Creates a 3d Facade for the 3D model set.
 DtEntity3dFacade (DtAgentManagerInterface &sceneInterface, DtSharedSettingsManager &settingsMgr, DtElementID id, int modelset, bool distribute=false)
 CTOR Creates a 3d Facade for the any model set.
virtual ~DtEntity3dFacade ()
 DTOR.
Entity Facade functions

These functions get parameters of the entity facade.

representing the entity.

virtual void setUpdateTypes (bool deadReckon=true, bool groundClamp=true)
 Set the types of updaters that can run on this object.
virtual void setVisible (bool visible)
 set the entity's model hidden or visible
virtual bool visible () const
 Get the visibility of the entity.
virtual DtElementID elementId () const
 Get the element id for the entity facade.
virtual int modelSet () const
 Returns the model set being visualized.
DtSceneObjectAgent & sceneObjectAgent ()
 Returns the scene object agent for this facade.
Spacial Functions

These functions control the spacial parameters of the entity.

virtual void setPosition (const DtVector &position)
 Set the position of the entity.The change in position will be applied during the DtDe's agent update phase (which occurs during the DtDe tick after the Driver update phase).
virtual DtVector position () const
 Gets the current position of the entity.
virtual void setVelocity (const DtVector32 &velocity)
 Set the velocity of the entity.
virtual DtVector32 velocity () const
 Gets the current velocity of the entity.
virtual void setAcceleration (const DtVector32 &acceleration)
 Set the acceleration of the entity.
virtual DtVector32 acceleration () const
 Gets the current acceleration of the entity.
virtual void setOrientation (const DtTaitBryan &orientation)
 Set the orientation of the entity.
virtual DtTaitBryan orientation () const
 Get the current orientation of the entity.
virtual void setAngularVelocity (const DtVector32 &angularVelocity)
 Set the angular velocity of the entity.
virtual DtVector32 angularVelocity () const
 Set the orientation of the entity.
Advanced Spacial Functions

These functions control the advanced spacial behavior including dead-reckoning, smoothing and ground clamping.

virtual void setDeadReckoningEnabled (bool position, bool velocity, bool orientation)
 Set dead reckoning algorithm, whether to dead reckon, position, velocity, and orientation.
virtual void setSmoothingEnabled (bool enabled)
 Set whether the Entity smooths.
virtual void setSmoothingPeriod (float period)
 Set the period for entity smoothing.
virtual void setGroundClampingMode (DtGroundClampingUpdater::GroundClampingMode mode)
 Set ground clamping mode using bit flags defined in DtGroundClampingUpdater::GroundClampingMode.
virtual void setWaterClamping (bool isWaterClamping)
 Enable/disable water clamping.
virtual void setWaterClampingLod (double lodRange)
 Set the LOD distance at which to stop water clamping.
virtual void setWaterlineOriginOffset (float offset)
 Set an offset to a model's waterline origin, if water clamping is enabled.
virtual void addWake ()
 Add a wake to the 3D model.
virtual void setWakeLODDistance (double distance)
virtual DtWakeModelAgent * wake ()
 Access the wake object, if it exists.
virtual void addTidalStreamWake ()
 Add a tidal stream wake model to an object, Using default parameters for length, draft, and maxWaveAmplitude.
virtual void addTidalStreamWake (double wakeLength, double draft, double maxWaveAmplitude)
 Add a tidal stream wake model to an object.
virtual void addTidalStreamWake (const std::string &modelDefinitionName)
 Add a tidal stream wake model to an object, specifying a model definition.
virtual void removeTidalStreamWake ()
 Remove a tidal stream wake.
virtual void setTidalStreamWakeLod (double distance)
 Set an LOD out-range for tidal stream wakes; note that the wake must be added first.
virtual void setTidalStreamWakeCurrent (double speed, double direction)
 Set the current parameters for a tidal stream wake.
Articulated Model Functions

These functions control the appearance of an articulated model representing the entity.

virtual void setArticulatedModelDefinition (const std::string &modelName)
 Set the entity's model definition names.
virtual const std::string & articulatedModelDefinition () const
 Get the entity's model definition names.
virtual void setModelScalingEnabled (bool enabled)
 Enable/Disable model scaling.
virtual void setPartOrientation (int partNumber, const DtTaitBryan &orientation, const DtVector &angularVelocity)
 Set an articulated part orientation.
virtual void setPartTranslation (int partNumber, const DtVector &translation, const DtVector &velocity)
 Set an articulated part translation.
virtual void setPartVisibility (int partNumber, bool onOff)
 Sets the visibility of an articulated part.
virtual void setSwitchState (int switchToSet, int value)
 Sets a switch state.
virtual void setLightpointMaxDistance (float distance)
 Lightpoint range control.
virtual DtArticulatedModelAgent * articulatedModelAgent ()
 Access the articulated model agent directly.

Protected Member Functions

void init ()
 Constructor implementation.
virtual void slot_globalBuoyancyChanged (bool enabled)
 Slot called when the entity display settings Enable Buoyancy value changed.
virtual void slot_buoyancyDefaultLODDistanceChanged (double distance)
virtual void createWaterClampingUpdater ()
virtual void destroyWaterClampingUpdater ()

Protected Attributes

DtSharedSettingsManagermySharedSettingsManager
DtElementID myElementId
DtAgentManagerInterfacemySceneInterface
bool myDistributeFlag
float myWaterlineOffset
bool myIsWaterClamping
double myWaterClampingLod
std::string myModelDefinitionName
int myModelSet
DtSceneObjectAgent * mySceneObjectAgent
DtArticulatedModelAgent * myModelAgent
DtDeadReckonUpdaterAgent * myDeadReckonUpdaterAgent
DtGroundClampingUpdaterAgent * myGroundClampingUpdaterAgent
DtWaterClampingUpdaterAgent * myWaterClampingUpdaterAgent
DtSurfaceClampingUpdaterAgent * mySurfaceClampingUpdaterAgent
DtTidalStreamWakeModelAgent * myTidalStreamWakeModelAgent
DtTidalStreamWakeUpdaterAgent * myTidalStreamWakeUpdaterAgent
DtWakeModelAgent * myWakeModelAgent
DtWakeUpdaterAgent * myWakeUpdaterAgent
DtSignalConnectionManager myConnections
boost::signalslib::connection myBuoyancyLODDistanceChangedConnection

Detailed Description

The DtEntity3dFacade is a facade around agents that make up an entity in the 3D model set.

Constructor & Destructor Documentation

makVrv::DtEntity3dFacade::DtEntity3dFacade ( DtAgentManagerInterface sceneInterface,
DtSharedSettingsManager settingsMgr,
DtElementID  id,
bool  distribute = false 
)

CTOR Creates a 3d Facade for the 3D model set.

makVrv::DtEntity3dFacade::DtEntity3dFacade ( DtAgentManagerInterface sceneInterface,
DtSharedSettingsManager settingsMgr,
DtElementID  id,
int  modelset,
bool  distribute = false 
)

CTOR Creates a 3d Facade for the any model set.

virtual makVrv::DtEntity3dFacade::~DtEntity3dFacade ( )
virtual

DTOR.

Member Function Documentation

virtual void makVrv::DtEntity3dFacade::setUpdateTypes ( bool  deadReckon = true,
bool  groundClamp = true 
)
virtual

Set the types of updaters that can run on this object.

virtual void makVrv::DtEntity3dFacade::setVisible ( bool  visible)
virtual

set the entity's model hidden or visible

virtual bool makVrv::DtEntity3dFacade::visible ( ) const
virtual

Get the visibility of the entity.

virtual DtElementID makVrv::DtEntity3dFacade::elementId ( ) const
virtual

Get the element id for the entity facade.

virtual int makVrv::DtEntity3dFacade::modelSet ( ) const
virtual

Returns the model set being visualized.

DtSceneObjectAgent& makVrv::DtEntity3dFacade::sceneObjectAgent ( )

Returns the scene object agent for this facade.

virtual void makVrv::DtEntity3dFacade::setPosition ( const DtVector position)
virtual

Set the position of the entity.The change in position will be applied during the DtDe's agent update phase (which occurs during the DtDe tick after the Driver update phase).

virtual DtVector makVrv::DtEntity3dFacade::position ( ) const
virtual

Gets the current position of the entity.

This value will not update until after the DtDe tick This is not the same as the current velocity. If the entity is being dead-reckoned or smoothed the velocity will change.

virtual void makVrv::DtEntity3dFacade::setVelocity ( const DtVector32 &  velocity)
virtual

Set the velocity of the entity.

The change in velocity will be applied during the DtDe's agent update phase (which occurs during the DtDe tick after the Driver update phase).

virtual DtVector32 makVrv::DtEntity3dFacade::velocity ( ) const
virtual

Gets the current velocity of the entity.

This value will not update until after the DtDe tick. This is not the same as the current velocity. If the entity is being dead-reckoned or smoothed the velocity will change.

virtual void makVrv::DtEntity3dFacade::setAcceleration ( const DtVector32 &  acceleration)
virtual

Set the acceleration of the entity.

virtual DtVector32 makVrv::DtEntity3dFacade::acceleration ( ) const
virtual

Gets the current acceleration of the entity.

This value will not update until after the DtDe tick. This is not the same as the last set acceleration. If the entity is being dead-reckoned or smoothed the velocity will change.

virtual void makVrv::DtEntity3dFacade::setOrientation ( const DtTaitBryan &  orientation)
virtual

Set the orientation of the entity.

virtual DtTaitBryan makVrv::DtEntity3dFacade::orientation ( ) const
virtual

Get the current orientation of the entity.

virtual void makVrv::DtEntity3dFacade::setAngularVelocity ( const DtVector32 &  angularVelocity)
virtual

Set the angular velocity of the entity.

virtual DtVector32 makVrv::DtEntity3dFacade::angularVelocity ( ) const
virtual

Set the orientation of the entity.

virtual void makVrv::DtEntity3dFacade::setDeadReckoningEnabled ( bool  position,
bool  velocity,
bool  orientation 
)
virtual

Set dead reckoning algorithm, whether to dead reckon, position, velocity, and orientation.

virtual void makVrv::DtEntity3dFacade::setSmoothingEnabled ( bool  enabled)
virtual

Set whether the Entity smooths.

virtual void makVrv::DtEntity3dFacade::setSmoothingPeriod ( float  period)
virtual

Set the period for entity smoothing.

virtual void makVrv::DtEntity3dFacade::setGroundClampingMode ( DtGroundClampingUpdater::GroundClampingMode  mode)
virtual

Set ground clamping mode using bit flags defined in DtGroundClampingUpdater::GroundClampingMode.

virtual void makVrv::DtEntity3dFacade::setWaterClamping ( bool  isWaterClamping)
virtual

Enable/disable water clamping.

virtual void makVrv::DtEntity3dFacade::setWaterClampingLod ( double  lodRange)
virtual

Set the LOD distance at which to stop water clamping.

virtual void makVrv::DtEntity3dFacade::setWaterlineOriginOffset ( float  offset)
virtual

Set an offset to a model's waterline origin, if water clamping is enabled.

virtual void makVrv::DtEntity3dFacade::addWake ( )
virtual

Add a wake to the 3D model.

virtual void makVrv::DtEntity3dFacade::setWakeLODDistance ( double  distance)
virtual
virtual DtWakeModelAgent* makVrv::DtEntity3dFacade::wake ( )
virtual

Access the wake object, if it exists.

virtual void makVrv::DtEntity3dFacade::addTidalStreamWake ( )
virtual

Add a tidal stream wake model to an object, Using default parameters for length, draft, and maxWaveAmplitude.

virtual void makVrv::DtEntity3dFacade::addTidalStreamWake ( double  wakeLength,
double  draft,
double  maxWaveAmplitude 
)
virtual

Add a tidal stream wake model to an object.

If a tidal stream wake already exists, it will be replaced with this one

virtual void makVrv::DtEntity3dFacade::addTidalStreamWake ( const std::string &  modelDefinitionName)
virtual

Add a tidal stream wake model to an object, specifying a model definition.

virtual void makVrv::DtEntity3dFacade::removeTidalStreamWake ( )
virtual

Remove a tidal stream wake.

virtual void makVrv::DtEntity3dFacade::setTidalStreamWakeLod ( double  distance)
virtual

Set an LOD out-range for tidal stream wakes; note that the wake must be added first.

virtual void makVrv::DtEntity3dFacade::setTidalStreamWakeCurrent ( double  speed,
double  direction 
)
virtual

Set the current parameters for a tidal stream wake.

Speed is in meters/second, direction is radians clockwise from north. This will override the global current speed and direction specified in the environment. Note that the wake must be added first

virtual void makVrv::DtEntity3dFacade::setArticulatedModelDefinition ( const std::string &  modelName)
virtual

Set the entity's model definition names.

virtual const std::string& makVrv::DtEntity3dFacade::articulatedModelDefinition ( ) const
virtual

Get the entity's model definition names.

virtual void makVrv::DtEntity3dFacade::setModelScalingEnabled ( bool  enabled)
virtual

Enable/Disable model scaling.

virtual void makVrv::DtEntity3dFacade::setPartOrientation ( int  partNumber,
const DtTaitBryan &  orientation,
const DtVector angularVelocity 
)
virtual

Set an articulated part orientation.

virtual void makVrv::DtEntity3dFacade::setPartTranslation ( int  partNumber,
const DtVector translation,
const DtVector velocity 
)
virtual

Set an articulated part translation.

virtual void makVrv::DtEntity3dFacade::setPartVisibility ( int  partNumber,
bool  onOff 
)
virtual

Sets the visibility of an articulated part.

virtual void makVrv::DtEntity3dFacade::setSwitchState ( int  switchToSet,
int  value 
)
virtual

Sets a switch state.

virtual void makVrv::DtEntity3dFacade::setLightpointMaxDistance ( float  distance)
virtual

Lightpoint range control.

virtual DtArticulatedModelAgent* makVrv::DtEntity3dFacade::articulatedModelAgent ( )
virtual

Access the articulated model agent directly.

void makVrv::DtEntity3dFacade::init ( )
protected

Constructor implementation.

virtual void makVrv::DtEntity3dFacade::slot_globalBuoyancyChanged ( bool  enabled)
protectedvirtual

Slot called when the entity display settings Enable Buoyancy value changed.

virtual void makVrv::DtEntity3dFacade::slot_buoyancyDefaultLODDistanceChanged ( double  distance)
protectedvirtual
virtual void makVrv::DtEntity3dFacade::createWaterClampingUpdater ( )
protectedvirtual
virtual void makVrv::DtEntity3dFacade::destroyWaterClampingUpdater ( )
protectedvirtual

Member Data Documentation

DtSharedSettingsManager& makVrv::DtEntity3dFacade::mySharedSettingsManager
protected
DtElementID makVrv::DtEntity3dFacade::myElementId
protected
DtAgentManagerInterface& makVrv::DtEntity3dFacade::mySceneInterface
protected
bool makVrv::DtEntity3dFacade::myDistributeFlag
protected
float makVrv::DtEntity3dFacade::myWaterlineOffset
protected
bool makVrv::DtEntity3dFacade::myIsWaterClamping
protected
double makVrv::DtEntity3dFacade::myWaterClampingLod
protected
std::string makVrv::DtEntity3dFacade::myModelDefinitionName
protected
int makVrv::DtEntity3dFacade::myModelSet
protected
DtSceneObjectAgent* makVrv::DtEntity3dFacade::mySceneObjectAgent
protected
DtArticulatedModelAgent* makVrv::DtEntity3dFacade::myModelAgent
protected
DtDeadReckonUpdaterAgent* makVrv::DtEntity3dFacade::myDeadReckonUpdaterAgent
protected
DtGroundClampingUpdaterAgent* makVrv::DtEntity3dFacade::myGroundClampingUpdaterAgent
protected
DtWaterClampingUpdaterAgent* makVrv::DtEntity3dFacade::myWaterClampingUpdaterAgent
protected
DtSurfaceClampingUpdaterAgent* makVrv::DtEntity3dFacade::mySurfaceClampingUpdaterAgent
protected
DtTidalStreamWakeModelAgent* makVrv::DtEntity3dFacade::myTidalStreamWakeModelAgent
protected
DtTidalStreamWakeUpdaterAgent* makVrv::DtEntity3dFacade::myTidalStreamWakeUpdaterAgent
protected
DtWakeModelAgent* makVrv::DtEntity3dFacade::myWakeModelAgent
protected
DtWakeUpdaterAgent* makVrv::DtEntity3dFacade::myWakeUpdaterAgent
protected
DtSignalConnectionManager makVrv::DtEntity3dFacade::myConnections
protected
boost::signalslib::connection makVrv::DtEntity3dFacade::myBuoyancyLODDistanceChangedConnection
protected

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

Document ID: Generated on Wed Jul 25 16:57:45 EDT 2018 from SVN revision 190790
Copyright © 2005-2018 VT MÄK. All Rights Reserved (www.mak.com)