]> git.mxchange.org Git - flightgear.git/blobdiff - src/FDM/YASim/Airplane.hpp
First cut at a turbulence model for YASim. It's a
[flightgear.git] / src / FDM / YASim / Airplane.hpp
index 8fffa4ba6da1a0f4ab9a1a9806e28da602ec8fca..16f0ca714fc97da975ad308886be53112da7ed81 100644 (file)
@@ -4,6 +4,7 @@
 #include "ControlMap.hpp"
 #include "Model.hpp"
 #include "Wing.hpp"
+#include "Rotor.hpp"
 #include "Vector.hpp"
 
 namespace yasim {
@@ -33,6 +34,10 @@ public:
     void setTail(Wing* tail);
     void addVStab(Wing* vstab);
 
+    void addRotor(Rotor* Rotor);
+    int getNumRotors() {return _rotors.size();}
+    Rotor* getRotor(int i) {return (Rotor*)_rotors.get(i);}
+
     void addFuselage(float* front, float* back, float width,
                      float taper=1, float mid=0.5);
     int addTank(float* pos, float cap, float fuelDensity);
@@ -88,7 +93,9 @@ private:
     void setupState(float aoa, float speed, State* s);
     void solveGear();
     void solve();
+    void solveHelicopter();
     float compileWing(Wing* w);
+    float compileRotor(Rotor* w);
     float compileFuselage(Fuselage* f);
     void compileGear(GearRec* gr);
     void applyDragFactor(float factor);
@@ -119,6 +126,8 @@ private:
     Vector _weights;
     Vector _surfs; // NON-wing Surfaces
 
+    Vector _rotors;
+
     Vector _cruiseControls;
     State _cruiseState;
     float _cruiseP;