VR-Forces 4.10 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtArcUpdater.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2020 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
9 
10 #pragma once
11 
12 #include <vrvCore/vrvCore.h>
13 #include <vrvCore/DtSceneObject.h>
14 #include <vrvCore/DtTickable.h>
15 #include <vrvCore/DtUniqueID.h>
16 #include <matrix/vlTaitBryan.h>
17 
18 #include <matrix/vlVector.h>
19 
20 namespace makVrv
21 {
25  {
26  public:
27 
30 
32  virtual ~DtArcUpdater();
33 
35  virtual void update(double simTime);
36 
37  virtual void setOrientationDelta(double);
38 
41  virtual void setPosition(int, const DtVector&);
42 
45  virtual void setSceneObject(DtSceneObject* sceneObject);
46 
53  virtual bool needsUpdate(DtTime tNow);
54 
58  virtual void setUpdaterPosition(int vtx, const DtVector& pos);
59 
63  virtual void setUpdaterOrientation(int vtx, const DtTaitBryan& ori);
64 
67  virtual void setDynamicOrigin(bool);
68 
69  protected:
70 
72  virtual DtTaitBryan computeOrientation(const DtVector& pos,
73  double topoHeading) const;
74 
77  virtual void slot_sceneObjectToBeDeleted(const DtUniqueID& id);
79 
80  private:
86  DtSceneObject::ObjectTransform& getOrCreateTransform(int vtx);
87 
89  DtArcUpdater(const DtArcUpdater &);
90 
92  DtArcUpdater& operator=(const DtArcUpdater &);
93 
94  protected:
96 
98 
100 
103 
106 
109 
110  // When the class is destructed, the scene object may or may not
111  // exist. Using a separate connection variable makes it possible to
112  // 'disconnect' even if the scene object has been deleted.
113  boost::signalslib::connection mySceneObjectConnection;
114 
120 
122 
123  DtTaitBryan myInitialOrientation;
124 
128  };
129 }
130 
Definition: DtSceneObject.h:46
double myOrientationDelta
Definition: DtArcUpdater.h:97
DtVector myDynamicOriginPosition
Definition: DtArcUpdater.h:127
DtVector myOrigin
Definition: DtArcUpdater.h:95
boost::signalslib::connection mySceneObjectConnection
Definition: DtArcUpdater.h:113
DtUniqueID myUniqueId
This distributed object&#39;s unique identifier.
Definition: DtArcUpdater.h:105
An abstract base class for objects that require updates.
Definition: DtTickable.h:26
DtArcUpdater is an updater that updates the orientation of arc.
Definition: DtArcUpdater.h:24
DtTaitBryan myInitialOrientation
Definition: DtArcUpdater.h:123
#define DT_DLL_VRVCORE
Definition: vrvCore.h:20
DtSceneObject::TransformList myTransforms
Local copy of the vertex positions and orientations.
Definition: DtArcUpdater.h:119
DtVector myLastAnglePosition
Definition: DtArcUpdater.h:126
unsigned long long DtUniqueID
Definition: DtUniqueID.h:19
Contains the declaration for makVrv::DtTickable.
bool myDynamicOrigin
Definition: DtArcUpdater.h:125
DtSceneObject * mySceneObject
A pointer to the current scene object.
Definition: DtArcUpdater.h:108
A DtSceneObject represents an object that can be positioned in the scene by (possibly) attaching it t...
Definition: DtSceneObject.h:41
bool mySceneObjectChanged
Definition: DtArcUpdater.h:99
Contains makVrv::DtUniqueID type.
std::vector< ObjectTransform > TransformList
Definition: DtSceneObject.h:52
The DtDe is the core component of any VR-Vantage application.
Definition: DtDe.h:69
DtDe & myDe
The display engine.
Definition: DtArcUpdater.h:102
DtTime myLastUpdateTime
Definition: DtArcUpdater.h:121
Contains makVrv::DtSceneObject class.
Contains DLL export macros.

Document ID: Generated on Tue Sep 21 17:42:52 EDT 2021 from SVN revision 234861
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)