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;
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(
157 virtual void SetGroundClampingCullCylinderRadiusScale(
float scale);
160 virtual void setWaterClamping(
bool isWaterClamping);
163 virtual void setWaterClampingLod(
double lodRange);
167 virtual void setWaterlineOriginOffset(
float offset );
170 virtual void addWake();
172 virtual void setWakeLODDistance(
double distance );
175 virtual DtWakeModelAgent* wake();
179 virtual void addTidalStreamWake();
183 virtual void addTidalStreamWake(
double wakeLength,
184 double draft,
double maxWaveAmplitude);
188 virtual void addTidalStreamWake(
const std::string& modelDefinitionName );
191 virtual void removeTidalStreamWake();
195 virtual void setTidalStreamWakeLod(
double distance );
201 virtual void setTidalStreamWakeCurrent(
double speed,
211 virtual void setArticulatedModelDefinition(
const std::string& modelName);
214 virtual const std::string& articulatedModelDefinition()
const;
217 virtual void setModelScalingEnabled(
bool enabled);
220 virtual void setPartOrientation(
int partNumber,
221 const DtTaitBryan& orientation,
const DtVector& angularVelocity);
224 virtual void setPartTranslation(
int partNumber,
228 virtual void setPartVisibility(
int partNumber,
bool onOff);
231 virtual void setSwitchState(
int switchToSet,
int value );
234 virtual void setLightpointMaxDistance(
float distance );
238 virtual DtArticulatedModelAgent* articulatedModelAgent();
248 virtual void slot_globalBuoyancyChanged(
bool enabled );
253 virtual void slot_buoyancyDefaultLODDistanceChanged(
double distance );
255 virtual void createWaterClampingUpdater();
256 virtual void destroyWaterClampingUpdater();
bool myIsWaterClamping
Definition: DtEntity3dFacade.h:264
DT_DLL_EXAMPLESCENEROOTPLUGIN void init(DtDe &anIG)
DtSurfaceClampingUpdaterAgent * mySurfaceClampingUpdaterAgent
Definition: DtEntity3dFacade.h:274
std::string myModelDefinitionName
Definition: DtEntity3dFacade.h:266
bool myDistributeFlag
Definition: DtEntity3dFacade.h:262
DtTidalStreamWakeUpdaterAgent * myTidalStreamWakeUpdaterAgent
Definition: DtEntity3dFacade.h:276
DtGroundClampingUpdaterAgent * myGroundClampingUpdaterAgent
Definition: DtEntity3dFacade.h:272
DtArticulatedModelAgent * myModelAgent
Definition: DtEntity3dFacade.h:270
The shared settings manager, is the global object responsible for managing any shared settings object...
Definition: DtSharedSettingsManager.h:42
double myWaterClampingLod
Definition: DtEntity3dFacade.h:265
DtUniqueID DtElementID
The ElementID is a specific type of unique ID used to represent VR-Vantage uniquely defined elements...
Definition: DtUniqueID.h:23
float myWaterlineOffset
Definition: DtEntity3dFacade.h:263
DtModelSetId myModelSet
Definition: DtEntity3dFacade.h:268
DtSceneObjectAgent * mySceneObjectAgent
Definition: DtEntity3dFacade.h:269
DT_DLL_VRVCORE double distance(const makVrv::DtCoordinateSystem &, const DtVector &from, const DtVector &to)
Returns the distance from the two points. Coordinates are in local database coordinates The coordinat...
DtWakeModelAgent * myWakeModelAgent
Definition: DtEntity3dFacade.h:278
boost::signalslib::connection myBuoyancyLODDistanceChangedConnection
Definition: DtEntity3dFacade.h:284
#define DT_DLL_VRVCORE
Definition: vrvCore.h:20
DtSignalConnectionManager myConnections
Definition: DtEntity3dFacade.h:280
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:20
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:271
Contains makVrv::DtGroundClampingUpdater class.
Base class to provide boost signal/slot management.
const char int mode
Definition: ioapi.h:38
DtSharedSettingsManager & mySharedSettingsManager
Definition: DtEntity3dFacade.h:259
Contains makVrv::DtUniqueID type.
DtWaterClampingUpdaterAgent * myWaterClampingUpdaterAgent
Definition: DtEntity3dFacade.h:273
The abstract interface necessary for agents.
Definition: DtAgentManagerInterface.h:33
DtModelSetId
Definition: DtModelSetEnums.h:19
voidpf uLong offset
Definition: ioapi.h:42
DtWakeUpdaterAgent * myWakeUpdaterAgent
Definition: DtEntity3dFacade.h:279
DtAgentManagerInterface & mySceneInterface
Definition: DtEntity3dFacade.h:261
DtElementID myElementId
Definition: DtEntity3dFacade.h:260
DtTidalStreamWakeModelAgent * myTidalStreamWakeModelAgent
Definition: DtEntity3dFacade.h:275
GroundClampingMode
Ground Clamping Modes.
Definition: DtGroundClampingUpdater.h:36
Contains DLL export macros.