VR-Forces 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 | Friends
makVrv::DtTritonTidalStreamWakeModel Class Reference

A model of a triton tidalStreamWake is used to interface with the triton API to generate a Kelvin tidalStreamWake effect.

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

Public Member Functions

 DtTritonTidalStreamWakeModel (DtDe &de, DtUniqueID id)
 
virtual ~DtTritonTidalStreamWakeModel ()
 
virtual void setModelDefinition (const std::string &modelDef)
 
virtual std::string modelDefinition () const
 
virtual void addToScene (const DtUniqueID &sceneObjectId, DtModelSetId modelSet, int visualizerType)
 
virtual void removeFromScene ()
 
virtual void setVisible (bool isVisible)
 
virtual void setIsSupportModel (bool isSupport)
 
virtual void setWakeLength (double wakeLength)
 
virtual double wakeLength () const
 
virtual void setWakeOffset (double wakeLength)
 
virtual double wakeOffset () const
 
virtual void setDraft (double draft)
 
virtual double draft () const
 
virtual void setMaxWaveAmplitude (double amplitude)
 
virtual double maxWaveAmplitude () const
 
virtual void setLodDistance (double lodDistance)
 
virtual double lodDistance () const
 
- Public Member Functions inherited from makVrv::DtTidalStreamWakeModel
 DtTidalStreamWakeModel (DtDe &de, DtUniqueID id)
 
virtual ~DtTidalStreamWakeModel ()
 
- Public Member Functions inherited from makVrv::DtModel
 DtModel (DtDe &de, DtUniqueID id)
 
virtual ~DtModel ()
 
DtModelInstancecreateModelInstance (const std::string &modelDefName, bool realize=true)
 
virtual const std::string & modelDefinitionName ()
 
virtual void saveModelToFile (const std::string &filename)
 
virtual const std::string & className () const
 
virtual DtUniqueID uniqueId () const
 
unsigned int transformSize () const
 
virtual void setPosition (int vtx, const DtVector &position)
 
virtual const DtVector & position (int vtx=0) const
 
virtual void removePosition (int vtx)
 
virtual void setPositionOffset (const DtVector &positionOffset)
 
virtual const DtVector & positionOffset () const
 
virtual void setOrientation (int vtx, const DtTaitBryan &orientation)
 
virtual void setPositionAndOrientation (int vtx, const DtVector &positionOffset, const DtTaitBryan &orientation)
 
virtual const DtTaitBryan & orientation (int vtx=0) const
 
virtual void setOrientationOffset (const DtTaitBryan &orientationOffset)
 
virtual const DtTaitBryan & orientationOffset () const
 
virtual void enableColorBlending (bool b)
 
virtual void setBlendColor (float r, float g, float b, float a)
 
virtual void getBlendColor (float &r, float &g, float &b, float &a)
 
virtual bool colorBlendingEnabled () const
 
virtual void setColor (float r, float g, float b, float a)
 
virtual void enableLighting (bool l)
 
virtual DtModelSetId modelSet () const
 
const DtVector & boundingBoxExtents () const
 
void getBoundingBoxExtents (double &x, double &y, double &z) const
 
const DtVector & boundingBoxCenter () const
 
virtual void getBoundingBoxCenter (double &x, double &y, double &z) const
 
virtual void getBoundingBoxComponents (DtVector &minimum, DtVector &maximum)
 
void setContributesToBound (bool trueOrFalse)
 
bool contributesToBound () const
 
DtDede ()
 
virtual void setModelInstance (DtModelInstance *modelInstance)
 
virtual void promoteBackgroundModelInstance (const DtModelDefinition &defintion)
 
virtual bool visible () const
 
DtUniqueID sceneObjectId () const
 
virtual void addedToSceneObjectAsProp (const DtUniqueID &sceneObj)
 
virtual void addedToSceneObject (const DtUniqueID &sceneObj, DtModelSetId modelSet, int visualizerType)
 
virtual void setElementId (DtElementID id)
 
virtual void removedFromSceneObject ()
 
virtual void setSolid (bool isSolid)
 
virtual bool isProp ()
 
virtual void updateMinLastFrameDistance (float distance)
 
virtual void resetLastFrameDistance ()
 
virtual float minLastFrameDistance () const
 
virtual DtModelInstancemodelInstance ()
 
virtual const DtModelInstancemodelInstance () const
 
int visualizerType () const
 
virtual bool supportsMultithreadedLoad ()
 
virtual void backgroundLoad ()
 
virtual void foregroundLoad ()
 
virtual bool isActivelyBackgroundLoading ()
 
virtual DtLoaderHandlegetLoadQueueHandle ()
 

Protected Member Functions

virtual
DtTritonTidalStreamWakeModelInstance
tidalStreamWakeModelInstance ()
 
virtual
DtTritonTidalStreamWakeModelInstance
tidalStreamWakeModelInstance () const
 
virtual DtVector currentPosition () const
 
virtual DtSceneObjectsceneObject () const
 
virtual void calcDefaults ()
 
virtual void setIsOverWater (bool overWater)
 
virtual void slot_oceanAddedToScene ()
 
- Protected Member Functions inherited from makVrv::DtModel
virtual void addToSceneAsProp (const DtUniqueID &sceneObjectId)
 
virtual void initializeModelInstance ()
 
void slot_modelInstanceChanged (DtModelInstance *instance)
 
virtual void waitAndClearLoadHandle ()
 
virtual void removedFromLoadQueue ()
 
virtual void setDoneBackgroundLoading ()
 
virtual void setActivelyBackgroundLoading ()
 

Protected Attributes

boost::signalslib::connection myTritonManagerConnection
 
double myLodDistance
 
- Protected Attributes inherited from makVrv::DtModel
DtLoaderHandlemyInLoadQueueHandle
 
DtDemyDe
 
const DtUniqueID myUniqueId
 
DtUniqueID myElementId
 
DtUniqueID myParentSceneObjectID
 
bool myColorBlendingEnabled
 
DtModelInstancemyBackgroundModelInstance
 
float myMinLastFrameDistance
 
TransformList myTransforms
 
DtModelInstancemyModelInstance
 
DtModelSetId myModelSet
 
int myVisualizerType
 
bool myContributesToBound
 
bool myIsPropFlag
 
float myBlendColor [4]
 
bool myVisibleFlag
 
DtVector myPositionOffset
 
DtTaitBryan myOrientationOffset
 
std::string myModelDefinitionName
 
bool myRequireModelInstance = true
 

Friends

class DtTritonTidalStreamWakeUpdater
 

Additional Inherited Members

- Public Attributes inherited from makVrv::DtModel
boost::signalslib::signal
< void(DtModel *)> 
signal_modelToBeDestroyed
 
boost::signalslib::signal
< void(DtModel *)> 
signal_modelChanged
 
boost::signalslib::signal
< bool(DtModel *, bool),
SlotReturnOR
signal_visibilityChangeRequested
 
boost::signalslib::signal
< void(DtModelInstance
*, DtModel *)> 
signal_modelInstanceCreated
 
boost::signalslib::signal
< void(DtModelInstance
*, DtModel *)> 
signal_modelInstanceToBeDestroyed
 
- Protected Types inherited from makVrv::DtModel
typedef std::vector
< ObjectTransform
TransformList
 
- Static Protected Attributes inherited from makVrv::DtModel
static bool theInittedState
 

Constructor & Destructor Documentation

makVrv::DtTritonTidalStreamWakeModel::DtTritonTidalStreamWakeModel ( DtDe de,
DtUniqueID  id 
)

CTOR.

virtual makVrv::DtTritonTidalStreamWakeModel::~DtTritonTidalStreamWakeModel ( )
virtual

DTOR.

Member Function Documentation

virtual void makVrv::DtTritonTidalStreamWakeModel::setModelDefinition ( const std::string &  modelDef)
virtual

Initialize this model from a model-definition.

Implements makVrv::DtTidalStreamWakeModel.

virtual std::string makVrv::DtTritonTidalStreamWakeModel::modelDefinition ( ) const
virtual

Get the model definition name set, if any.

Implements makVrv::DtTidalStreamWakeModel.

virtual void makVrv::DtTritonTidalStreamWakeModel::setWakeLength ( double  wakeLength)
virtual

Set /get the length of the wake generated.

Implements makVrv::DtTidalStreamWakeModel.

virtual double makVrv::DtTritonTidalStreamWakeModel::wakeLength ( ) const
virtual

Set /get the length of the wake generated.

Implements makVrv::DtTidalStreamWakeModel.

virtual void makVrv::DtTritonTidalStreamWakeModel::setWakeOffset ( double  wakeLength)
virtual

Set /get an offset for the wake start in the direction opposite the wake motion (to move the wake at or even behind the object it is attached to.

Implements makVrv::DtTidalStreamWakeModel.

virtual double makVrv::DtTritonTidalStreamWakeModel::wakeOffset ( ) const
virtual

Set /get an offset for the wake start in the direction opposite the wake motion (to move the wake at or even behind the object it is attached to.

Implements makVrv::DtTidalStreamWakeModel.

virtual void makVrv::DtTritonTidalStreamWakeModel::setDraft ( double  draft)
virtual

Set / get the distance underwater this object extends.

Implements makVrv::DtTidalStreamWakeModel.

virtual double makVrv::DtTritonTidalStreamWakeModel::draft ( ) const
virtual

Set / get the distance underwater this object extends.

Implements makVrv::DtTidalStreamWakeModel.

virtual void makVrv::DtTritonTidalStreamWakeModel::setMaxWaveAmplitude ( double  amplitude)
virtual

Set / get the maximum wake wave amplitude generated by this object.

Implements makVrv::DtTidalStreamWakeModel.

virtual double makVrv::DtTritonTidalStreamWakeModel::maxWaveAmplitude ( ) const
virtual

Set / get the maximum wake wave amplitude generated by this object.

Implements makVrv::DtTidalStreamWakeModel.

virtual void makVrv::DtTritonTidalStreamWakeModel::setLodDistance ( double  lodDistance)
virtual

Set / get the maximum wake wave amplitude generated by this object.

Implements makVrv::DtTidalStreamWakeModel.

virtual double makVrv::DtTritonTidalStreamWakeModel::lodDistance ( ) const
virtual

Set / get the maximum wake wave amplitude generated by this object.

Implements makVrv::DtTidalStreamWakeModel.

virtual void makVrv::DtTritonTidalStreamWakeModel::addToScene ( const DtUniqueID sceneObjectId,
DtModelSetId  modelSet,
int  visualizerType 
)
virtual

AddToScene is called by the scene object with which this model is associated after it has been initialized. If the tidalStreamWake should be visible, this will cause the triton tidalStreamWake object to be created.

Implements makVrv::DtModel.

virtual void makVrv::DtTritonTidalStreamWakeModel::removeFromScene ( )
virtual

Destroy the triton tidalStreamWake object.

Implements makVrv::DtModel.

virtual void makVrv::DtTritonTidalStreamWakeModel::setVisible ( bool  isVisible)
virtual

Set the visible state of the model.

Parameters
[in]isVisibleis the new visible state; true = visible, false = hidden.

Reimplemented from makVrv::DtModel.

virtual void makVrv::DtTritonTidalStreamWakeModel::setIsSupportModel ( bool  isSupport)
inlinevirtual

Unused, but required for all DtModels.

Implements makVrv::DtModel.

virtual DtTritonTidalStreamWakeModelInstance* makVrv::DtTritonTidalStreamWakeModel::tidalStreamWakeModelInstance ( )
protectedvirtual

Get a properly cast version of the model instance this model creates.

virtual DtTritonTidalStreamWakeModelInstance* makVrv::DtTritonTidalStreamWakeModel::tidalStreamWakeModelInstance ( ) const
protectedvirtual

Get a properly cast const version of the model instance this model creates.

virtual DtVector makVrv::DtTritonTidalStreamWakeModel::currentPosition ( ) const
protectedvirtual

Get the object's current position that this tidal stream wake is attached to.

virtual DtSceneObject* makVrv::DtTritonTidalStreamWakeModel::sceneObject ( ) const
protectedvirtual

Get the helo's current orientation that this tidalStreamWake is attached to.

Get the scene object that owns this model (and the ship's model)

virtual void makVrv::DtTritonTidalStreamWakeModel::calcDefaults ( )
protectedvirtual

Calculate defaults for geometric parameters based on the ship model's bounding geometry.

virtual void makVrv::DtTritonTidalStreamWakeModel::setIsOverWater ( bool  overWater)
protectedvirtual

Called by the tidalStreamWake updater to tell us if we are over water.

virtual void makVrv::DtTritonTidalStreamWakeModel::slot_oceanAddedToScene ( )
protectedvirtual

If a tidalStreamWake is requested and Triton hasn't been initialized, this model connects to the DtTritonManager's signal_addedToScene signal, and creates the tidalStreamWake (and disconnects) when the signal is raised.

Friends And Related Function Documentation

friend class DtTritonTidalStreamWakeUpdater
friend

Allow the updater to use our protected methods.

Member Data Documentation

boost::signalslib::connection makVrv::DtTritonTidalStreamWakeModel::myTritonManagerConnection
protected
double makVrv::DtTritonTidalStreamWakeModel::myLodDistance
protected

in meters; values <= 0 indicate no LOD (always show wake)


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

Document ID: Generated on Thu Oct 23 22:29:17 EDT 2025 from SVN revision 280951
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)