VR-Forces 4.5 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator 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 calculateBodyGravity();
140 
142  virtual void calculateLiftAcceleration();
143 
145  virtual void calculateDragAcceleration();
146 
149  virtual void calculateResultantAcceleration();
150 
152  virtual void integrate();
153 
155  virtual void updateRepository();
156 
158  virtual void updateDisplay() const;
159 
179  virtual void checkLandedOrCrashed();
180 
184 
192  virtual bool isCrashedIntoGround(const DtVector& localPosition,
193  DtVector& localIntersectionPoint) const;
194 
197  virtual void sendDetonation(const DtVector& geocentricLocation) const;
198 
204  virtual bool isSubsurface() const;
205 
214  virtual bool componentInitialized() const;
215 
218  virtual bool engineOperational() const;
219 
222  virtual void updateAppearance();
223 
224 private:
225 
228 
231 
234 
235 
236 protected:
237 
240 
243 
247 
254 
261 
268 
275 
277 
281  DtTaitBryan myOrientation;
293  DtReal mySpeed;
296  DtReal myAltitude;
299 
303 
307 };
308 

Document ID: Generated on Thu Mar 23 18:54:12 EDT 2017 from SVN revision 174804
Copyright © 2005-2017 VT MÄK. All Rights Reserved (www.mak.com)