VR-Forces 4.6 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
rotaryWingActuatorComponent.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2013 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
11 #pragma once
12 
14 #include <vlpi/disEnums.h>
15 #include <matrix/LibMatrix.h>
16 
17 class DtString;
18 class DtSimManager;
24 class DtPhysicalWorld;
25 class DtTerrainDatabase;
27 
38 {
39 
40 public:
41 
45  DtVrfObject* owner,
46  DtSimManager* simManager,
47  DtComponentDescriptor* desc = 0,
48  DtReaderWriterRegistry* parentRegistry = 0);
49 
54 
57  virtual bool init();
58 
61  virtual const char* type() const;
62 
64  virtual void tick();
65 
69  virtual void useFuel(double fuelUsed);
70  virtual double fuelLeft() const;
71 
73  virtual double calculateFuel() const;
74 
80  virtual void fallFromSky();
81 
85  static DtSimComponent * creator(const DtString& name,
86  DtVrfObject* owner,
87  DtSimManager* simManager,
88  DtComponentDescriptor* desc = 0,
89  DtReaderWriterRegistry* parentRegistry = 0);
90 
91 protected:
92 
94  virtual bool createPortGroups();
95 
97  virtual bool createPorts();
98 
104  virtual bool createPSR();
105 
107  virtual void clampFrameRate();
108 
110  virtual void setLanded(const DtVector& localIntersectionPoint);
111 
113  virtual bool checkFlyingWithoutFuel();
114 
116  virtual void calculateYawAcceleration();
117  virtual void calculateYawRate();
118 
120  virtual void calculatePitchAcceleration();
121  virtual void calculatePitchRate();
122 
124  virtual void calculateRollAcceleration();
125  virtual void calculateRollRate();
126 
129  virtual void checkAndDetachIfNecessary();
130 
133  virtual void calculateOrientation();
134 
136  virtual void calculateNormalizedBodyVelocity();
137 
139  virtual void calculateLiftAcceleration();
140 
149  virtual double altitudePowerFactor(const double altitude);
150 
153  virtual void calculateResultantAcceleration();
154 
156  virtual void integrate();
157 
159  virtual void updateRepository();
160 
162  virtual void updateDisplay();
163 
183  virtual void checkLandedOrCrashed();
184 
188 
196  virtual bool isCrashedIntoGround(const DtVector& localPosition,
197  DtVector& localIntersectionPoint) const;
198 
201  virtual void sendDetonation(const DtVector& geocentricLocation) const;
202 
208  virtual bool isSubsurface() const;
209 
218  virtual bool componentInitialized() const;
219 
222  virtual bool engineOperational() const;
223 
226  virtual void updateAppearance();
227 
228 private:
229 
232 
235 
238 
239 
240 protected:
241 
244 
247 
251 
258 
265 
272 
279 
281 
285  DtTaitBryan myOrientation;
295  DtReal mySpeed;
298  DtReal myAltitude;
301 
305 
309 };
310 

Document ID: Generated on Thu Apr 12 03:15:37 EDT 2018 from SVN revision 187986
Copyright © 2005-2018 VT MÄK. All Rights Reserved (www.mak.com)