15 #include <matrix/vlVector.h>
22 class DtAgentManagerInterface;
23 class DtArticulatedModelAgent;
24 class DtDeadReckonUpdaterAgent;
25 class DtGroundClampingUpdaterAgent;
26 class DtWaterClampingUpdaterAgent;
27 class DtWakeModelAgent;
28 class DtWakeUpdaterAgent;
29 class DtTidalStreamWakeModelAgent;
30 class DtTidalStreamWakeUpdaterAgent;
31 class DtSurfaceClampingUpdaterAgent;
32 class DtSceneObjectAgent;
33 class DtSharedSettingsManager;
46 bool distribute =
false );
52 bool distribute =
false );
63 virtual void setUpdateTypes(
bool deadReckon=
true,
bool groundClamp=
true);
66 virtual void setVisible(
bool visible);
69 virtual bool visible()
const;
75 virtual int modelSet()
const;
78 DtSceneObjectAgent& sceneObjectAgent();
89 virtual void setPosition(
const DtVector& position);
101 virtual void setVelocity(
const DtVector32& velocity);
107 virtual DtVector32 velocity()
const;
110 virtual void setAcceleration(
const DtVector32& acceleration);
116 virtual DtVector32 acceleration()
const;
119 virtual void setOrientation(
const DtTaitBryan& orientation);
122 virtual DtTaitBryan orientation()
const;
125 virtual void setAngularVelocity(
const DtVector32& angularVelocity);
128 virtual DtVector32 angularVelocity()
const;
139 virtual void setDeadReckoningEnabled(
bool position,
bool velocity,
143 virtual void setSmoothingEnabled(
bool enabled);
146 virtual void setSmoothingPeriod(
float period);
150 virtual void setGroundClampingMode(
154 virtual void setWaterClamping(
bool isWaterClamping);
157 virtual void setWaterClampingLod(
double lodRange);
161 virtual void setWaterlineOriginOffset(
float offset );
164 virtual void addWake();
166 virtual void setWakeLODDistance(
double distance );
169 virtual DtWakeModelAgent* wake();
173 virtual void addTidalStreamWake();
177 virtual void addTidalStreamWake(
double wakeLength,
178 double draft,
double maxWaveAmplitude);
182 virtual void addTidalStreamWake(
const std::string& modelDefinitionName );
185 virtual void removeTidalStreamWake();
189 virtual void setTidalStreamWakeLod(
double distance );
195 virtual void setTidalStreamWakeCurrent(
double speed,
205 virtual void setArticulatedModelDefinition(
const std::string& modelName);
208 virtual const std::string& articulatedModelDefinition()
const;
211 virtual void setModelScalingEnabled(
bool enabled);
214 virtual void setPartOrientation(
int partNumber,
215 const DtTaitBryan& orientation,
const DtVector& angularVelocity);
218 virtual void setPartTranslation(
int partNumber,
222 virtual void setPartVisibility(
int partNumber,
bool onOff);
225 virtual void setSwitchState(
int switchToSet,
int value );
228 virtual void setLightpointMaxDistance(
float distance );
232 virtual DtArticulatedModelAgent* articulatedModelAgent();
242 virtual void slot_globalBuoyancyChanged(
bool enabled );
247 virtual void slot_buoyancyDefaultLODDistanceChanged(
double distance );
249 virtual void createWaterClampingUpdater();
250 virtual void destroyWaterClampingUpdater();
bool myIsWaterClamping
Definition: DtEntity3dFacade.h:258
DtSurfaceClampingUpdaterAgent * mySurfaceClampingUpdaterAgent
Definition: DtEntity3dFacade.h:268
std::string myModelDefinitionName
Definition: DtEntity3dFacade.h:260
bool myDistributeFlag
Definition: DtEntity3dFacade.h:256
DtTidalStreamWakeUpdaterAgent * myTidalStreamWakeUpdaterAgent
Definition: DtEntity3dFacade.h:270
DtGroundClampingUpdaterAgent * myGroundClampingUpdaterAgent
Definition: DtEntity3dFacade.h:266
DtArticulatedModelAgent * myModelAgent
Definition: DtEntity3dFacade.h:264
The shared settings manager, is the global object responsible for managing any shared settings object...
Definition: DtSharedSettingsManager.h:45
double myWaterClampingLod
Definition: DtEntity3dFacade.h:259
DtUniqueID DtElementID
The ElementID is a specific type of unique ID used to represent VR-Vantage uniquely defined elements...
Definition: DtUniqueID.h:26
float myWaterlineOffset
Definition: DtEntity3dFacade.h:257
DtSceneObjectAgent * mySceneObjectAgent
Definition: DtEntity3dFacade.h:263
DT_DLL_VRVCORE double distance(const makVrv::DtCoordinateSystem &, const DtVector &from, const DtVector &to)
Returns the distance from the two points.
DtWakeModelAgent * myWakeModelAgent
Definition: DtEntity3dFacade.h:272
boost::signalslib::connection myBuoyancyLODDistanceChangedConnection
Definition: DtEntity3dFacade.h:278
#define DT_DLL_VRVCORE
Definition: vrvCore.h:20
DtSignalConnectionManager myConnections
Definition: DtEntity3dFacade.h:274
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:24
The DtEntity3dFacade is a facade around agents that make up an entity in the 3D model set...
Definition: DtEntity3dFacade.h:39
DtDeadReckonUpdaterAgent * myDeadReckonUpdaterAgent
Definition: DtEntity3dFacade.h:265
Contains makVrv::DtGroundClampingUpdater class.
int myModelSet
Definition: DtEntity3dFacade.h:262
Base class to provide boost signal/slot management.
DT_DLL_DEBUGDRAWRENDERER void init(makVrv::DtDe &de)
Work function for the plugin initialization.
const char int mode
Definition: ioapi.h:38
DtSharedSettingsManager & mySharedSettingsManager
Definition: DtEntity3dFacade.h:253
Contains makVrv::DtUniqueID type.
DtWaterClampingUpdaterAgent * myWaterClampingUpdaterAgent
Definition: DtEntity3dFacade.h:267
The abstract interface necessary for agents.
Definition: DtAgentManagerInterface.h:36
voidpf uLong offset
Definition: ioapi.h:42
DtWakeUpdaterAgent * myWakeUpdaterAgent
Definition: DtEntity3dFacade.h:273
DtAgentManagerInterface & mySceneInterface
Definition: DtEntity3dFacade.h:255
DtElementID myElementId
Definition: DtEntity3dFacade.h:254
DtTidalStreamWakeModelAgent * myTidalStreamWakeModelAgent
Definition: DtEntity3dFacade.h:269
GroundClampingMode
Ground Clamping Modes.
Definition: DtGroundClampingUpdater.h:31
Contains DLL export macros.