VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtLineModelUpdater.h
Go to the documentation of this file.
1 /*****************************************************************************
2  * Copyright (c) 2017 MAK Technologies, Inc.
3  * All rights reserved.
4  *****************************************************************************/
5 
9 
10 #pragma once
11 
13 
14 class DtTaitBryan;
15 
16 namespace makVrv
17 {
18  enum class DtModelSetId;
19 
24  {
25  public:
28 
30  virtual ~DtLineModelUpdater();
31 
33  virtual void setStartPoint( const DtVector& position );
34 
37  virtual void attachStartPoint( DtElementID id );
38 
40  virtual void setStartPointOffset( const DtVector& offset );
41 
43  virtual void setEndPoint( const DtVector& position );
44 
47  virtual void attachEndPoint( DtElementID id );
48 
50  virtual void setEndPointOffset( const DtVector& offset );
51 
53  virtual DtVector calculateStartPoint();
54 
56  virtual DtVector calculateEndPoint();
57 
59  virtual void setSceneObject( DtSceneObject* sceneObject );
60 
64  virtual void update( DtTime tNow );
65 
66  protected:
67 
68  // \brief Updates the sceneObject
69  virtual void updateSceneObject( DtTime tNow ) = 0;
70 
73 
74  struct PointInformation;
75 
77  virtual void cleanup( PointInformation& pointInfo );
78 
84  virtual DtVector offsetPoint( const DtVector& point, const DtVector& offset,
85  const DtTaitBryan& rootOri = DtTaitBryan() ) const;
86 
91  virtual DtVector getAttachedPosition( PointInformation& pointInfo );
92 
96  virtual DtTaitBryan getAttachedOrientation( PointInformation& pointInfo );
97 
99  virtual void getSceneInformation( const PointInformation& info, DtUniqueID& sceneId );
100 
102 
105 
107  virtual void slot_attachedSceneObjectToBeDeleted( DtUniqueID, PointInformation* );
108 
110  virtual void slot_attachedUpdaterToBeDeleted( DtUniqueID, PointInformation* );
111 
113 
114  protected:
115 
117  {
119 
120  bool defined;
126 
127  // When the class is destructed, the scene object may or may not
128  // exist. Using a separate connection variable makes it possible to
129  // 'disconnect' even if the scene object has been deleted.
130  boost::signalslib::connection sceneObjectConnection;
131  boost::signalslib::connection sceneObjectUpdaterConnection;
132 
134  };
135 
138 
139  };
140 }
141 
DtModelSetId modelSet
Definition: DtLineModelUpdater.h:123
Definition: DtLineModelUpdater.h:116
PointInformation myStartPoint
Definition: DtLineModelUpdater.h:136
Scene Object Updater.
Definition: DtSceneObjectUpdater.h:39
PointInformation myEndPoint
Definition: DtLineModelUpdater.h:137
DtVector position
Definition: DtLineModelUpdater.h:121
Contains the makVrv::DtAttachableUpdater class declaration.
DtUniqueID DtElementID
The ElementID is a specific type of unique ID used to represent VR-Vantage uniquely defined elements...
Definition: DtUniqueID.h:23
DtVector offset
Definition: DtLineModelUpdater.h:122
A DtAttachableUpdater updates a scene an object that can be positioned in the scene by (possibly) att...
Definition: DtAttachableUpdater.h:35
DtSceneObject * sceneObject
Definition: DtLineModelUpdater.h:125
#define DT_DLL_VRVCORE
Definition: vrvCore.h:20
DtSceneObjectUpdater * updater
Definition: DtLineModelUpdater.h:133
unsigned long long DtUniqueID
Definition: DtUniqueID.h:19
boost::signalslib::connection sceneObjectConnection
Definition: DtLineModelUpdater.h:130
boost::signalslib::connection sceneObjectUpdaterConnection
Definition: DtLineModelUpdater.h:131
bool defined
Definition: DtLineModelUpdater.h:120
A DtSceneObject represents an object that can be positioned in the scene by (possibly) attaching it t...
Definition: DtSceneObject.h:44
DtElementID parentAttachID
Definition: DtLineModelUpdater.h:124
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:72
Base class for updaters updating segmented line models Contains methods and information struct for wo...
Definition: DtLineModelUpdater.h:23
DtModelSetId
Definition: DtModelSetEnums.h:19
voidpf uLong offset
Definition: ioapi.h:42

Document ID: Generated on Wed Mar 27 22:49:11 EDT 2024 from SVN revision 264633
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)