VR-Forces 5.0.2 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
makVrv::DtEntityKinematicState Class Reference

DtEntityKinematicState Controls kinematic state of a scene object This class has no accessors to kinematic data due to updaters being in the render thread. Do not add accessors for kin state info.

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

Public Member Functions

 DtEntityKinematicState (DtSceneObjectAgent &sceneObject, DtEntityStateListener &listener, DtAgentManagerInterface &sceneInterface, DtSharedSettingsManager &settingsManager, int modelSet)
 
virtual ~DtEntityKinematicState ()
 
 DtEntityKinematicState ()=delete
 
 DtEntityKinematicState (const DtEntityKinematicState &)=delete
 
DtEntityKinematicStateoperator= (const DtEntityKinematicState &)=delete
 
virtual void initialize () override
 
virtual void setLocation (const DtVector &, double time)
 
virtual void setOrientation (const DtTaitBryan &, double time)
 
virtual void setVelocity (const DtVector32 &, double time)
 
virtual void setAngularVelocity (const DtVector32 &, double time)
 
virtual void setAcceleration (const DtVector32 &, double time)
 
virtual void setLocation (const DtVector &)
 
virtual void setOrientation (const DtTaitBryan &)
 
virtual void setVelocity (const DtVector32 &)
 
virtual void setAngularVelocity (const DtVector32 &)
 
virtual void setAcceleration (const DtVector32 &)
 
virtual void resetSpatialAttributes ()
 
virtual void setDeadReckoning (bool position, bool velocity, bool orientation)
 
virtual DtDeadReckonUpdaterAgent * findDeadReckoner ()
 
virtual void setEmbarked (const DtUniqueID &id)
 
virtual void setSmoothingEnabled (bool enabled)
 
virtual void setSmoothingPeriod (float scale)
 
virtual void setFrozen (bool isFrozen)
 
virtual void implementVisibility (const bool vis) override
 
virtual void setBuoyancyEnabled (bool enabled)
 
virtual void setBuoyancyLod (float lodDistance)
 
virtual void setWaterlineOriginOffset (float offset)
 
virtual void setWaterClampingPossible (bool enabled)
 
virtual void setIsAmphibious (bool amphibious)
 
virtual bool isAmphibious () const
 
virtual void setDamageState (EntityStateListener::DamageState damageState)
 
virtual bool destroyed () const
 
virtual DtEntityStateListenerentityStateListener ()
 
virtual void processKinematicStateDefinition (const DtVisualizerDefinition *visDef) override
 
virtual void readEntityDisplaySettings ()
 
virtual void getEntityStateSettings ()
 
virtual void slot_setGroundClampingCullingEnabled (bool enabled)
 
virtual void setGroundClampingScale (float scale)
 
virtual void setGroundClamping (bool enabled)
 
virtual void setGroundClampingMode (DtGroundClampingUpdater::GroundClampingMode mode)
 
virtual void setPossibleGroundClampingModes (DtGroundClampingUpdater::GroundClampingMode possibleModes)
 
virtual
DtGroundClampingUpdater::GroundClampingMode 
groundClampingMode ()
 
virtual void slot_lifeformsUprightChanged (bool enabled)
 
virtual std::string motionModel () const
 
virtual void setMotionModel (const std::string &model)
 
virtual bool deadReckonIsThreadSafe () const
 
virtual void setDeadReckonIsThreadSafe (const bool safe)
 
- Public Member Functions inherited from makVrv::DtKinematicState
 DtKinematicState (DtSceneObjectAgent &sceneObject, DtStateListener &listener, DtAgentManagerInterface &sceneInterface, DtSharedSettingsManager &settingsManager, int modelSet)
 
virtual ~DtKinematicState ()
 
 DtKinematicState ()=delete
 
 DtKinematicState (const DtKinematicState &)=delete
 
DtKinematicStateoperator= (const DtKinematicState &)=delete
 
virtual DtSceneObjectAgent * sceneObjectAgent ()
 
virtual bool setSceneObjectIsVisible (bool vis, DtVisualizerShowHideContext::VisualizerShowHideContext context)
 
virtual bool distribute () const
 
virtual void setDistribute (const bool distribute)
 
virtual bool modelSet () const
 
virtual void setModelSet (const int modelSet)
 

Protected Member Functions

virtual void slot_parentSet (DtElement *parent)
 
virtual void slot_resetSmoother ()
 
virtual void slot_buoyancyDefaultLODDistanceChanged (float distance)
 
virtual void slot_buoyancyMinimumCullDistanceChanged (float distance)
 
virtual void slot_buoyancyCullTypeChanged (DtEntitySettingsRecord::BuoyancyCullType cullType)
 
virtual void slot_orientationClampingChanged (bool enabled)
 
virtual void createUpdaters () override
 
virtual void destroyUpdaters () override
 
virtual void startDeadReckoning ()
 
virtual void startEmbarked ()
 
virtual void startGroundClamping ()
 
virtual void startWaterClamping ()
 
virtual void endEmbarked ()
 
virtual void endGroundClamping ()
 
virtual void endWaterClamping ()
 
virtual void buildSurfaceClampingUpdater ()
 
virtual void buildGroundClampingUpdater ()
 
virtual void connectClampingUpdaters ()
 

Protected Attributes

DtEntityStateListenermyEntityStateListener
 
DtDeadReckonUpdaterAgent * myDeadReckonUpdaterAgent
 
DtGroundClampingUpdaterAgent * myGroundClampingUpdaterAgent
 
DtEmbarkationUpdaterAgent * myEmbarkationUpdaterAgent
 
DtSurfaceClampingUpdaterAgent * mySurfaceClampingUpdaterAgent
 
DtWaterClampingUpdaterAgent * myWaterClampingUpdaterAgent
 
DtTerrainScalingUpdaterAgent * myTerrainScalingUpdaterAgent
 
DtUniqueID myEmbarkedParentID
 
bool myEmbarkedFlag
 
bool myDrAlgorithmSet
 
bool myIsDestroyed
 
bool myDRPos
 
bool myDRVel
 
bool myDROri
 
bool myIsAmphibious
 
bool myUseDefaultBuoyancyLOD
 
bool myDeadReckonIsThreadSafe
 
bool myGroundClampingEnabled
 
bool myGroundClampingCullingEnabled
 
bool myBuoyancyEnabled
 
bool myWaterClampingPossible
 
bool mySmoothingEnabled
 
float myGroundClampingScale
 
float myBuoyancyLod
 
float myWaterlineOriginOffset
 
float myBuoyancyMinimumCullDistance
 
float mySmoothingPeriod
 
DtEntitySettingsRecord::BuoyancyCullType myBuoyancyCullType
 
DtGroundClampingUpdater::GroundClampingMode myGroundClampingMode
 
DtGroundClampingUpdater::GroundClampingMode myPossibleGroundClampingModes
 
std::string myMotionModel
 
- Protected Attributes inherited from makVrv::DtKinematicState
DtSceneObjectAgent * mySceneObjectAgent
 
DtStateListenermyStateListener
 
DtAgentManagerInterfacemySceneInterface
 
DtSharedSettingsManagermySettingsManager
 
DtSignalConnectionManager myConnections
 
bool myVisible
 
bool myDistributeFlag
 
int myModelSet
 
ShowHideContextVector myShowHideContexts
 

Additional Inherited Members

- Protected Types inherited from makVrv::DtKinematicState
typedef std::vector
< DtVisualizerShowHideContext::VisualizerShowHideContext
ShowHideContextVector
 

Constructor & Destructor Documentation

makVrv::DtEntityKinematicState::DtEntityKinematicState ( DtSceneObjectAgent &  sceneObject,
DtEntityStateListener listener,
DtAgentManagerInterface sceneInterface,
DtSharedSettingsManager settingsManager,
int  modelSet 
)

CTOR.

virtual makVrv::DtEntityKinematicState::~DtEntityKinematicState ( )
virtual

DTOR.

makVrv::DtEntityKinematicState::DtEntityKinematicState ( )
delete

not allowed - default constructor

makVrv::DtEntityKinematicState::DtEntityKinematicState ( const DtEntityKinematicState )
delete

not allowed - copy constructor

Member Function Documentation

DtEntityKinematicState& makVrv::DtEntityKinematicState::operator= ( const DtEntityKinematicState )
delete

not allowed - equals operator

virtual void makVrv::DtEntityKinematicState::initialize ( )
overridevirtual

Initialize the Kinematic State Object.

Reimplemented from makVrv::DtKinematicState.

virtual void makVrv::DtEntityKinematicState::setLocation ( const DtVector ,
double  time 
)
virtual

This version will use the time supplied as the dead reckoned time.

virtual void makVrv::DtEntityKinematicState::setOrientation ( const DtTaitBryan &  ,
double  time 
)
virtual

This version will use the time supplied as the dead reckoned time.

virtual void makVrv::DtEntityKinematicState::setVelocity ( const DtVector32 &  ,
double  time 
)
virtual

This version will use the time supplied as the dead reckoned time.

virtual void makVrv::DtEntityKinematicState::setAngularVelocity ( const DtVector32 &  ,
double  time 
)
virtual

This version will use the time supplied as the dead reckoned time.

virtual void makVrv::DtEntityKinematicState::setAcceleration ( const DtVector32 &  ,
double  time 
)
virtual

This version will use the time supplied as the dead reckoned time.

virtual void makVrv::DtEntityKinematicState::setLocation ( const DtVector )
virtual

Call to scene object to set location. This version will use the DE representation of the current sim time when using dead reckoning.

virtual void makVrv::DtEntityKinematicState::setOrientation ( const DtTaitBryan &  )
virtual

Call to scene object to set orientation. This version will use the DE representation of the current sim time when using dead reckoning.

virtual void makVrv::DtEntityKinematicState::setVelocity ( const DtVector32 &  )
virtual

Call to scene object to set velocity. This version will use the DE representation of the current sim time when using dead reckoning.

virtual void makVrv::DtEntityKinematicState::setAngularVelocity ( const DtVector32 &  )
virtual

Call to scene object to set angular velocity. This version will use the DE representation of the current sim time when using dead reckoning.

virtual void makVrv::DtEntityKinematicState::setAcceleration ( const DtVector32 &  )
virtual

Call to scene object to set acceleration. This version will use the DE representation of the current sim time when using dead reckoning.

virtual void makVrv::DtEntityKinematicState::resetSpatialAttributes ( )
virtual

Calls all spatial methods, with info from the listener.

virtual void makVrv::DtEntityKinematicState::setDeadReckoning ( bool  position,
bool  velocity,
bool  orientation 
)
virtual

Sets the DR settings on the DR Updater, and tells the listener that DR has been set.

virtual DtDeadReckonUpdaterAgent* makVrv::DtEntityKinematicState::findDeadReckoner ( )
virtual

Return the DR Updater Agent, may be nullptr.

virtual void makVrv::DtEntityKinematicState::setEmbarked ( const DtUniqueID id)
virtual

Embarks this object on the specified parent object.

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

Set whether the Entity smooths.

virtual void makVrv::DtEntityKinematicState::setSmoothingPeriod ( float  scale)
virtual

Set the period for entity smoothing.

virtual void makVrv::DtEntityKinematicState::setFrozen ( bool  isFrozen)
virtual

Set whether the entity is frozen, pausing any animations.

virtual void makVrv::DtEntityKinematicState::implementVisibility ( const bool  vis)
overridevirtual

Override to manage the potential loss of kinematic information due to destroying the dead reckoner agent.

Reimplemented from makVrv::DtKinematicState.

virtual void makVrv::DtEntityKinematicState::readEntityDisplaySettings ( )
virtual

Ground clamping code.

Gets / Sets this entity's clamping settings

virtual void makVrv::DtEntityKinematicState::getEntityStateSettings ( )
virtual

Since the listener may be connected and receive values before the visualizer is created, get basic settings from the entity listener.

virtual void makVrv::DtEntityKinematicState::slot_setGroundClampingCullingEnabled ( bool  enabled)
virtual

Set whether ground clamp uses the distance cutoff.

virtual void makVrv::DtEntityKinematicState::setGroundClampingScale ( float  scale)
virtual

Set the scale factor for ground clamping distance culling by radius.

virtual void makVrv::DtEntityKinematicState::setGroundClamping ( bool  enabled)
virtual

Set ground clamping enabled or not.

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

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

virtual void makVrv::DtEntityKinematicState::setPossibleGroundClampingModes ( DtGroundClampingUpdater::GroundClampingMode  possibleModes)
virtual

Set the flags for all possible modes for this entity.

virtual DtGroundClampingUpdater::GroundClampingMode makVrv::DtEntityKinematicState::groundClampingMode ( )
virtual

Get the entity's current ground clamping mode.

virtual void makVrv::DtEntityKinematicState::slot_lifeformsUprightChanged ( bool  enabled)
virtual

Change the life form upright state for all entities.

virtual void makVrv::DtEntityKinematicState::setBuoyancyEnabled ( bool  enabled)
virtual

Set whether this visualizer should use the dynamic ocean clamper (normally set via entity display settings)

virtual void makVrv::DtEntityKinematicState::setBuoyancyLod ( float  lodDistance)
virtual

Set the distance from any observer beyond which this entity, if buoyancy is enabled, will not run the model.

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

Set an altitude offset from the scene object origin to its waterline.

virtual void makVrv::DtEntityKinematicState::setWaterClampingPossible ( bool  enabled)
virtual

Set whether this visualizer should create a dynamic ocean clamper (buoyancy model). Normally driven by the visualizer definition.

virtual void makVrv::DtEntityKinematicState::setIsAmphibious ( bool  amphibious)
virtual

If a surface clamping updater is created (to clamp to dynamic ocean) this flag indicates if checks for on water vs. on land need to happen. This can be very expensive; off by default.

virtual bool makVrv::DtEntityKinematicState::isAmphibious ( ) const
virtual

Get if this entity needs on water vs. on land checks.

virtual void makVrv::DtEntityKinematicState::setDamageState ( EntityStateListener::DamageState  damageState)
virtual

Set the damage state (used for sinking watercraft)

virtual bool makVrv::DtEntityKinematicState::destroyed ( ) const
virtual

Get whether this entity is destroyed.

virtual DtEntityStateListener& makVrv::DtEntityKinematicState::entityStateListener ( )
virtual

Get the entity state listener.

virtual std::string makVrv::DtEntityKinematicState::motionModel ( ) const
virtual

Get / Set the Motion Model.

virtual void makVrv::DtEntityKinematicState::setMotionModel ( const std::string &  model)
virtual

Get / Set the Motion Model.

virtual bool makVrv::DtEntityKinematicState::deadReckonIsThreadSafe ( ) const
virtual

Get / Set the thread safety of the DR updater. Currently only used for DiGuys Default is false myTerrainScalingUpdaterAgent is always set to true.

virtual void makVrv::DtEntityKinematicState::setDeadReckonIsThreadSafe ( const bool  safe)
virtual

Get / Set the thread safety of the DR updater. Currently only used for DiGuys Default is false myTerrainScalingUpdaterAgent is always set to true.

virtual void makVrv::DtEntityKinematicState::processKinematicStateDefinition ( const DtVisualizerDefinition visDef)
overridevirtual

Processor the vis def for the kin state, as we no longer have a kin state visualizer.

Reimplemented from makVrv::DtKinematicState.

virtual void makVrv::DtEntityKinematicState::slot_parentSet ( DtElement parent)
protectedvirtual
virtual void makVrv::DtEntityKinematicState::slot_resetSmoother ( )
protectedvirtual
virtual void makVrv::DtEntityKinematicState::slot_buoyancyDefaultLODDistanceChanged ( float  distance)
protectedvirtual
virtual void makVrv::DtEntityKinematicState::slot_buoyancyMinimumCullDistanceChanged ( float  distance)
protectedvirtual
virtual void makVrv::DtEntityKinematicState::slot_buoyancyCullTypeChanged ( DtEntitySettingsRecord::BuoyancyCullType  cullType)
protectedvirtual
virtual void makVrv::DtEntityKinematicState::slot_orientationClampingChanged ( bool  enabled)
protectedvirtual

Change the orientation clamping for all entities.

virtual void makVrv::DtEntityKinematicState::createUpdaters ( )
overrideprotectedvirtual

Called by initialize.

Implements makVrv::DtKinematicState.

virtual void makVrv::DtEntityKinematicState::destroyUpdaters ( )
overrideprotectedvirtual
virtual void makVrv::DtEntityKinematicState::startDeadReckoning ( )
protectedvirtual
virtual void makVrv::DtEntityKinematicState::startEmbarked ( )
protectedvirtual
virtual void makVrv::DtEntityKinematicState::startGroundClamping ( )
protectedvirtual
virtual void makVrv::DtEntityKinematicState::startWaterClamping ( )
protectedvirtual
virtual void makVrv::DtEntityKinematicState::endEmbarked ( )
protectedvirtual
virtual void makVrv::DtEntityKinematicState::endGroundClamping ( )
protectedvirtual
virtual void makVrv::DtEntityKinematicState::endWaterClamping ( )
protectedvirtual
virtual void makVrv::DtEntityKinematicState::buildSurfaceClampingUpdater ( )
protectedvirtual
virtual void makVrv::DtEntityKinematicState::buildGroundClampingUpdater ( )
protectedvirtual
virtual void makVrv::DtEntityKinematicState::connectClampingUpdaters ( )
protectedvirtual

Member Data Documentation

DtEntityStateListener& makVrv::DtEntityKinematicState::myEntityStateListener
protected
DtDeadReckonUpdaterAgent* makVrv::DtEntityKinematicState::myDeadReckonUpdaterAgent
protected
DtGroundClampingUpdaterAgent* makVrv::DtEntityKinematicState::myGroundClampingUpdaterAgent
protected
DtEmbarkationUpdaterAgent* makVrv::DtEntityKinematicState::myEmbarkationUpdaterAgent
protected
DtSurfaceClampingUpdaterAgent* makVrv::DtEntityKinematicState::mySurfaceClampingUpdaterAgent
protected
DtWaterClampingUpdaterAgent* makVrv::DtEntityKinematicState::myWaterClampingUpdaterAgent
protected
DtTerrainScalingUpdaterAgent* makVrv::DtEntityKinematicState::myTerrainScalingUpdaterAgent
protected
DtUniqueID makVrv::DtEntityKinematicState::myEmbarkedParentID
protected
bool makVrv::DtEntityKinematicState::myEmbarkedFlag
protected
bool makVrv::DtEntityKinematicState::myDrAlgorithmSet
protected
bool makVrv::DtEntityKinematicState::myIsDestroyed
protected
bool makVrv::DtEntityKinematicState::myDRPos
protected
bool makVrv::DtEntityKinematicState::myDRVel
protected
bool makVrv::DtEntityKinematicState::myDROri
protected
bool makVrv::DtEntityKinematicState::myIsAmphibious
protected
bool makVrv::DtEntityKinematicState::myUseDefaultBuoyancyLOD
protected
bool makVrv::DtEntityKinematicState::myDeadReckonIsThreadSafe
protected
bool makVrv::DtEntityKinematicState::myGroundClampingEnabled
protected

Ground clamping members.

bool makVrv::DtEntityKinematicState::myGroundClampingCullingEnabled
protected
bool makVrv::DtEntityKinematicState::myBuoyancyEnabled
protected
bool makVrv::DtEntityKinematicState::myWaterClampingPossible
protected
bool makVrv::DtEntityKinematicState::mySmoothingEnabled
protected
float makVrv::DtEntityKinematicState::myGroundClampingScale
protected
float makVrv::DtEntityKinematicState::myBuoyancyLod
protected
float makVrv::DtEntityKinematicState::myWaterlineOriginOffset
protected
float makVrv::DtEntityKinematicState::myBuoyancyMinimumCullDistance
protected
float makVrv::DtEntityKinematicState::mySmoothingPeriod
protected
DtEntitySettingsRecord::BuoyancyCullType makVrv::DtEntityKinematicState::myBuoyancyCullType
protected
DtGroundClampingUpdater::GroundClampingMode makVrv::DtEntityKinematicState::myGroundClampingMode
protected
DtGroundClampingUpdater::GroundClampingMode makVrv::DtEntityKinematicState::myPossibleGroundClampingModes
protected
std::string makVrv::DtEntityKinematicState::myMotionModel
protected

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

Document ID: Generated on Sun Dec 4 20:22:03 EST 2022 from SVN revision 249613
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)