![]() |
VR-Forces 4.6 Class Documentation
|
Class to periodically check if a location is over triton dynamic ocean or not (assumed to be land). More...

Public Member Functions | |
| DtOverWaterUpdater (DtDe &de, DtUniqueID id) | |
| Constructor. | |
| virtual | ~DtOverWaterUpdater () |
| Destructor. | |
| virtual void | slot_dynamicOceanObjectsChanged () |
| This method is connected to signals from the DtDynamicOceanManager that indicate when dynamic ocean objects are added or removed. | |
| virtual bool | needsUpdate (DtTime tNow) |
| DtTickable Overrides. | |
| virtual void | update (DtTime tNow) |
| If updateNeeded() returns true, this is called to do the actual update. | |
| virtual void | setLocalLocation (const DtVector &location) |
| Set/get the location that will be tested. This should be called each frame. | |
| virtual const DtVector & | localLocation () const |
| virtual bool | isOverWater () const |
| Get/set whether the current local location is over dynamic ocean. | |
| virtual void | setIsOverWater (bool isOverWater) |
| virtual bool | locationIsChanged () const |
| Set/get whether the input location has changed since the last update. | |
| virtual void | setLocationIsChanged (bool locationIsChanged) |
Public Member Functions inherited from makVrv::DtTickable | |
| virtual | ~DtTickable () |
| Virtual DTOR. | |
| virtual void | setUpdatePeriod (unsigned int period) |
| Specify how often (in # of frames) this tickable should call update. | |
| virtual unsigned int | updatePeriod () const |
Protected Attributes | |
| DtDe & | myDe |
| DtVector | myLocalLocation |
| bool | myLocationIsChanged |
| bool | myIsOverWater |
| DtSignalConnectionManager | mySignalConnections |
Protected Attributes inherited from makVrv::DtTickable | |
| DtTickableManagerInterface * | myManager |
| Pointer to manager for removal during destruction. | |
| DtSignalConnectionManager | myConnections |
| unsigned int | myFrameCounter |
| unsigned int | myFrameToUpdate |
| unsigned int | myUpdatePeriod |
Private Member Functions | |
| DtOverWaterUpdater () | |
| (Unimplemented) Default Constructor | |
Additional Inherited Members | |
Protected Member Functions inherited from makVrv::DtTickable | |
| DtTickable (DtTickableManagerInterface *manager) | |
| CTOR. | |
| DtTickable () | |
| Unimplemented default CTOR. | |
| virtual void | slot_managerAboutToBeDeleted () |
Class to periodically check if a location is over triton dynamic ocean or not (assumed to be land).
DtOverWaterUpdater uses an intersector to make this determination; if a dynamic terrain object exists and the test height is <= the current sea level height set for the dynamic ocean layer, then isOverWater() will return true. Because intersectors are computationally expensive, this class makes use of the DtTickableManager's ability to spread out ticking tickables that have an update period > 1. By default, DtOverWaterUpdater will check every 60 frames to see if its input location is over water; this can be changed by calling DtTickable::setUpdatePeriod().
| makVrv::DtOverWaterUpdater::DtOverWaterUpdater | ( | DtDe & | de, |
| DtUniqueID | id | ||
| ) |
Constructor.
This uses the pattern for distributable objects; although no agents are provided for this class, they could be easily added. Typically, one of these updaters is created locally by an already distributed object, such as the rotor wash updater and surface clamping updater.
|
virtual |
Destructor.
|
private |
(Unimplemented) Default Constructor
DtTickable Overrides.
Called by the tickable manager to determine if the updater needs to be updated. This checks the myLocationIsChanged flag, preventing updates for non-moving objects
Reimplemented from makVrv::DtTickable.
|
virtual |
If updateNeeded() returns true, this is called to do the actual update.
It will set the isOverWater flag to true or false.
Implements makVrv::DtTickable.
|
virtual |
Set/get the location that will be tested. This should be called each frame.
|
virtual |
|
virtual |
Get/set whether the current local location is over dynamic ocean.
Normally set during update()
|
virtual |
|
virtual |
Set/get whether the input location has changed since the last update.
Normally set to true in setLocalLocation (if the input differs from myLocalLocation) and set to false in update().
|
virtual |
|
virtual |
This method is connected to signals from the DtDynamicOceanManager that indicate when dynamic ocean objects are added or removed.
It just sets myLocationIsChanged to true to force an update the next scheduled frame
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |