VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtMultiPointEmbarkationUpdater.h
Go to the documentation of this file.
1 /*****************************************************************************
2 * Copyright (c) 2023 MAK Technologies, Inc.
3 * All rights reserved.
4 *****************************************************************************/
5 
9 
10 #pragma once
11 
12 #include <vrvCore/vrvCore.h>
13 #include <vrvCore/DtUniqueID.h>
15 
16 #include <matrix/vlVector.h>
17 #include <matrix/vlTaitBryan.h>
18 
19 #include <vector>
20 #include <list>
21 
22 namespace makVrv
23 {
24 
25  class DtDe;
26 
34  {
35  public:
36 
39  {
40  public:
41 
44  : myParentSceneObject( 0 )
45  , myVertex( 0 )
46  , myUpdater( 0 )
47  {
48  }
49 
51  virtual ~ObjectEmbarkationPoint();
52 
54  void setParentSceneObject( DtSceneObject* sceneObject );
55 
57  inline void setPositionOffsets(const std::vector<DtVector>& o)
58  {
59  myPositionOffsets = o;
60  }
61 
63  inline const std::vector<DtVector>& positionOffsets() const
64  {
65  return myPositionOffsets;
66  }
67 
69  inline void setPositionOffset( const DtVector& o )
70  {
71  myPositionOffset = o;
72  }
73 
75  inline const DtVector& positionOffset() const
76  {
77  return myPositionOffset;
78  }
79 
80  // get values of attached point at simTime
81  virtual bool pointLocationAndOrientation( double simTime,
82  DtVector& location, DtTaitBryan& orientation );
83 
84  protected:
85  virtual void slot_embarkedSceneObjectToBeDeleted( const DtUniqueID& );
86  virtual void slot_embarkedUpdaterToBeDeleted( const DtUniqueID& id );
87 
88  protected:
89  DtVector myPositionOffset;
90  std::vector<DtVector> myPositionOffsets;
93  unsigned int myVertex;
94 
95  // When the class is destructed, the scene object may or may not
96  // exist. Using a separate connection variable makes it possible to
97  // 'disconnect' even if the scene object has been deleted.
98  boost::signalslib::connection myParentSceneObjectConnection;
99  boost::signalslib::connection myParentSceneObjectUpdaterConnection;
100 
101  };
102 
103  public:
104 
107 
110 
114  virtual void embark( DtUniqueID uniqueID );
115 
117  virtual void setPositionOffsets( const std::vector<DtVector>& offset );
118 
120  virtual void setPositionOffset( const DtVector& offset );
121 
123  virtual void update( DtTime tNow );
124 
126  virtual void doEmbarkation( DtTime tNow );
127 
128  protected:
132  };
133 }
void setPositionOffset(const DtVector &o)
Set the position offset from the host object&#39;s position.
Definition: DtMultiPointEmbarkationUpdater.h:69
std::vector< DtVector > myPositionOffsets
Definition: DtMultiPointEmbarkationUpdater.h:90
EmbarkationPoint used to attach to a scene object.
Definition: DtMultiPointEmbarkationUpdater.h:38
const DtVector & positionOffset() const
Get the position offset from the host object&#39;s position.
Definition: DtMultiPointEmbarkationUpdater.h:75
ObjectEmbarkationPoint()
CTOR.
Definition: DtMultiPointEmbarkationUpdater.h:43
Scene Object Updater.
Definition: DtSceneObjectUpdater.h:40
A DtMultiPointEmbarkationUpdater updates a scene object that has multiple points and can be positione...
Definition: DtMultiPointEmbarkationUpdater.h:33
void setPositionOffsets(const std::vector< DtVector > &o)
Set the position offset from the host object&#39;s position.
Definition: DtMultiPointEmbarkationUpdater.h:57
ObjectEmbarkationPoint myEmbarkationPoint
Definition: DtMultiPointEmbarkationUpdater.h:129
DtVector myLastUpdatedOrigin
Definition: DtMultiPointEmbarkationUpdater.h:130
unsigned int myVertex
Definition: DtMultiPointEmbarkationUpdater.h:93
Contains the declaration for makVrv::DtMultiPointSceneObjectUpdater.
DtSceneObject * myParentSceneObject
Definition: DtMultiPointEmbarkationUpdater.h:91
Multi Point Scene Object Updater.
Definition: DtMultiPointSceneObjectUpdater.h:33
#define DT_DLL_VRVCORE
Definition: vrvCore.h:20
const std::vector< DtVector > & positionOffsets() const
Get the position offset from the host object&#39;s position.
Definition: DtMultiPointEmbarkationUpdater.h:63
unsigned long long DtUniqueID
Definition: DtUniqueID.h:19
boost::signalslib::connection myParentSceneObjectConnection
Definition: DtMultiPointEmbarkationUpdater.h:98
A DtSceneObject represents an object that can be positioned in the scene by (possibly) attaching it t...
Definition: DtSceneObject.h:44
DtVector myPositionOffset
Definition: DtMultiPointEmbarkationUpdater.h:89
Contains makVrv::DtUniqueID type.
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
boost::signalslib::connection myParentSceneObjectUpdaterConnection
Definition: DtMultiPointEmbarkationUpdater.h:99
voidpf uLong offset
Definition: ioapi.h:42
DtSceneObjectUpdater * myUpdater
Definition: DtMultiPointEmbarkationUpdater.h:92
DtTaitBryan myLastUpdatedOrientation
Definition: DtMultiPointEmbarkationUpdater.h:131
Contains DLL export macros.

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)