23 #include <matrix/vlVector.h>
24 #include <matrix/vlTaitBryan.h>
33 class DtCoordinateSystem;
57 virtual bool isDone()
const;
81 DtTaitBryan geocEndOri,
double endZoom,
float smoothTime = 3.0f);
86 DtQuat cigEndOri,
double endZoom,
float smoothTime = 3.0f);
104 const std::string& displayName);
110 virtual void updateTargets();
117 virtual void updateObserver();
121 virtual DtVector calcTargetPosition();
125 virtual DtQuat calcTargetOrientation();
129 virtual void calculateUpVector();
137 virtual void interpolatePosition(
double t);
148 virtual void interpolateOrientation(
double t);
155 virtual void interpolateZoom(
double t);
159 virtual void finish();
162 virtual void slot_coordinateSystemChanged();
173 virtual inline bool shouldLinearlyInterpolateOrientation()
const;
178 virtual double altitude(
const DtVector& geoPos);
180 virtual DtVector surfaceAt(
const DtVector& geoPos);
182 virtual DtVector clampAltitude(
const DtVector& geoPos);
185 virtual DtVector bounce(
double dt, DtVector start, DtVector end);
189 virtual double altitudeContrib();
193 virtual double phase1Contrib(
double t);
197 virtual double phase3Contrib(
double t);
200 virtual double calculatePercentage(
double s,
double e,
double t);
203 virtual double calculateEasedPercent(
double t);
206 void initCoordinateSystem();
285 DtTaitBryan geocEndOri,
double endZoom,
float smoothTime = 3.0f);
290 DtQuat cigEndOri,
double endZoom,
float smoothTime = 3.0f);
DtEaser * myEaser
Definition: DtObserverAnimator.h:210
Virtual base class. Allows for RTTI and proper virtual destruction. Used by Creators, Factories, Providers, Assemblers and User Interfaces.
Definition: DtVirtualBaseClass.h:19
double myStartTime
Definition: DtObserverAnimator.h:251
DtVector myPreviousPosition
Definition: DtObserverAnimator.h:226
bool myIsAttached
Definition: DtObserverAnimator.h:219
DtQuat myTargetOrientation
Definition: DtObserverAnimator.h:242
DtQuat myCurrentOrientation
Definition: DtObserverAnimator.h:235
double myEndTime
Definition: DtObserverAnimator.h:253
bool myShouldFaceEarth
Definition: DtObserverAnimator.h:259
float mySmoothTime
Definition: DtObserverAnimator.h:214
DtVector geoPos
Definition: DtObserverAnimator.h:70
double myCurrentZoom
Definition: DtObserverAnimator.h:248
makVrv::DtDe & myDe
Definition: DtObserverAnimator.h:212
DtQuat myEndOrientation
Definition: DtObserverAnimator.h:236
A DtObserverSettingsRecord contains the state of an observer.
Definition: DtObserverStateRecord.h:20
bool myShouldUseLinearOrientationInterpolation
Definition: DtObserverAnimator.h:258
DtSignalConnectionManager myConnections
Definition: DtObserverAnimator.h:261
DtVector myLocationTrackAttachment
Definition: DtObserverAnimator.h:222
DtQuat myOffsetOrientation
Definition: DtObserverAnimator.h:237
DtTaitBryan cigOri
Definition: DtObserverAnimator.h:73
DtUniqueID myAttachedTo
Definition: DtObserverAnimator.h:220
DtVector myEndPosition
Definition: DtObserverAnimator.h:228
double myStartZoom
Definition: DtObserverAnimator.h:247
DtVector cigPos
Definition: DtObserverAnimator.h:72
DtVector myStartPosition
Definition: DtObserverAnimator.h:225
The creator class for creating DtObserverAnimator.
Definition: DtObserverAnimator.h:269
double myEndZoom
Definition: DtObserverAnimator.h:249
DtVector myTargetPosition
Definition: DtObserverAnimator.h:241
A facade for a DtObserverObject.
Definition: DtObserver.h:38
Contains makVrv::DtVirtualBaseClass class.
DtTaitBryan geoOri
Definition: DtObserverAnimator.h:71
Contains makVrv::DtObserverObject class declaration.
Data structure used to store information about an entity that the observer is moving towards and will...
Definition: DtObserverAnimator.h:66
#define DT_DLL_VRVCORE
Definition: vrvCore.h:20
double myCurrentTime
Definition: DtObserverAnimator.h:252
The easer class DtEaser return values along a bezier curve between input point 1 and point 2...
Definition: DtEaser.h:17
DtVector myOffsetPosition
Definition: DtObserverAnimator.h:229
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:20
DtQuat myStartOrientation
Definition: DtObserverAnimator.h:234
Contains makVrv::DtQuat class.
unsigned long long DtUniqueID
Definition: DtUniqueID.h:19
The DtCoordinateSystem is used to manage the current coordinate system of the scene.
Definition: DtCoordinateSystem.h:40
bool myIsDone
Definition: DtObserverAnimator.h:216
Contains makArchives::DtObserverStateRecord class.
Encapsulates the process of animating an observer to a given location. The animator will smoothly mov...
Definition: DtObserverAnimator.h:40
Base class to provide boost signal/slot management.
bool isValid
Definition: DtObserverAnimator.h:68
DtUniqueID mySecondaryAttachedTo
Definition: DtObserverAnimator.h:221
DtDe & myDe
Definition: DtObserverAnimator.h:309
DtObserverObject::AttachType myAttachType
Definition: DtObserverAnimator.h:218
Contains makVrv::DtUniqueID type.
bool myIs2DObsMode
Definition: DtObserverAnimator.h:245
The DtDe is the core component of any VR-Vantage application. It owns a DtRenderer, DtDeCommunicator, as well as a DtDisplay and other things.
Definition: DtDe.h:76
makVrv::DtObserver & myObserver
Definition: DtObserverAnimator.h:213
A utility Quaternion class.
Definition: DtQuat.h:19
DtVector myCurrentPosition
Definition: DtObserverAnimator.h:227
DtVector myUpVector
Definition: DtObserverAnimator.h:231
double myTravelDistance
Definition: DtObserverAnimator.h:255
DtUniqueID elementId
Definition: DtObserverAnimator.h:69
double myCurrentAltitude
Definition: DtObserverAnimator.h:256
AttachType
Definition: DtObserverObject.h:42
Contains DLL export macros.