VR-Forces Development_Version Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
DtEntityKinStateVisualizer.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2015 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
10 
11 #pragma once
15 
16 #include <matrix/vlVector.h>
17 class DtTaitBryan;
18 
19 using namespace makArchives;
20 
21 namespace makVrv
22 {
23  class DtEntityStateListener;
24  class DtGroundClampingUpdaterAgent;
25  class DtSurfaceClampingUpdaterAgent;
26  class DtWaterClampingUpdaterAgent;
27  class DtDeadReckonUpdaterAgent;
28  class DtEmbarkationUpdaterAgent;
29  class DtTerrainScalingUpdaterAgent;
30 
36  {
37  public:
40  DtStateListener& listener, int modelSet);
41 
43  virtual ~DtEntityKinStateVisualizer();
44 
47  virtual void setLocation(const DtVector&);
48 
50  virtual void setLocation(const DtVector&, double time);
51 
54  virtual void setOrientation(const DtTaitBryan&);
55 
57  virtual void setOrientation(const DtTaitBryan&, double time);
58 
61  virtual void setVelocity(const DtVector32&);
62 
64  virtual void setVelocity(const DtVector32&, double time);
65 
68  virtual void setAngularVelocity(const DtVector32&);
69 
71  virtual void setAngularVelocity(const DtVector32&, double time);
72 
75  virtual void setAcceleration(const DtVector32&);
76 
78  virtual void setAcceleration(const DtVector32&, double time);
79 
80  virtual void setDeadReckoning(bool position, bool velocity,
81  bool orientation);
82 
84  virtual void setEmbarked(const DtUniqueID& id);
85 
87  virtual void setVisualizerDefinition(const DtVisualizerDefinition& visDef);
88 
90  virtual void setSmoothingEnabled(bool enabled);
91 
93  virtual void setSmoothingPeriod(float scale);
94 
96  virtual void setFrozen(bool isFrozen);
97 
99 
100 
102  virtual void setGroundClampingCullingEnabled(bool enabled);
103 
105  virtual void setGroundClampingScale(float scale);
106 
108  virtual void setGroundClamping(bool enabled);
109 
112  virtual void setGroundClampingMode(
114 
116  virtual void setPossibleGroundClampingModes(
118 
120  virtual DtGroundClampingUpdater::GroundClampingMode groundClampingMode();
122 
125  virtual void setBuoyancyEnabled( bool enabled );
126 
129  virtual void setBuoyancyLod( float lodDistance );
130 
132  virtual void setWaterlineOriginOffset( float offset );
133 
136  virtual void setWaterClampingPossible( bool enabled );
137 
141  virtual void setIsAmphibious( bool amphibious );
142 
144  virtual bool isAmphibious() const;
145 
147  virtual void setDamageState(int damageState);
148 
149  virtual bool destroyed() const;
150 
151  virtual void resetSpatialAttributes();
152 
153  DtEntityStateListener& entityStateListener()
154  {
155  return *myEntityListener;
156  }
157 
159  virtual const DtStateVisualizer::TypeInfo& typeInfo() const;
160 
162  static const DtStateVisualizer::TypeInfo& theTypeInfo();
163 
164  protected:
165 
166  virtual void createModelAgents();
167  virtual void destroyModelAgents();
168  virtual void setModelDefinitionForAgents();
169 
170  virtual void startDeadReckoning();
171  virtual void startEmbarked();
172  virtual void startGroundClamping();
173  virtual void startWaterClamping();
174 
175  virtual void endEmbarked();
176  virtual void endGroundClamping();
177  virtual void endWaterClamping();
178 
179  virtual void buildSurfaceClampingUpdater();
180  virtual void buildGroundClampingUpdater();
181 
182  virtual void connectClampingUpdaters();
183  virtual void slot_buoyancyDefaultLODDistanceChanged( float distance );
184  virtual void slot_buoyancyMinimumCullDistanceChanged( float distance );
185  virtual void slot_buoyancyCullTypeChanged(
187 
188  protected:
189 
190 
191  DtDeadReckonUpdaterAgent* myDeadReckonUpdaterAgent;
192  DtGroundClampingUpdaterAgent* myGroundClampingUpdaterAgent;
193  DtEmbarkationUpdaterAgent* myEmbarkationUpdaterAgent;
194  DtSurfaceClampingUpdaterAgent* mySurfaceClampingUpdaterAgent;
195  DtWaterClampingUpdaterAgent* myWaterClampingUpdaterAgent;
196  DtTerrainScalingUpdaterAgent* myTerrainScalingUpdaterAgent;
197 
200 
212 
215 
216  std::string myMotionModel;
217 
220  bool myDRPos;
221  bool myDRVel;
222  bool myDROri;
225 
228  };
229 
230 
235 }

Document ID: Generated on Tue Mar 8 22:13:38 EST 2016 from SVN revision 162938
Copyright © 2005-2015 VT MÄK. All Rights Reserved (www.mak.com)