_matchTakeoff = false;
_manual = false;
_proppitch = 0;
+ _propfeather = 0;
}
void Propeller::setTakeoff(float omega0, float power0)
_proppitch = Math::clamp(proppitch, 0, 1);
}
+void Propeller::setPropFeather(int state)
+{
+ // 0 = normal, 1 = feathered
+ _propfeather = (state != 0);
+}
+
void Propeller::calc(float density, float v, float omega,
float* thrustOut, float* torqueOut)
{
// 0.25 and 4. A prop pitch of 0.5 results in no change from the
// base value.
if (_manual)
- _j0 = _baseJ0 * Math::pow(2, 4*_proppitch - 2);
+ _j0 = _baseJ0 * Math::pow(2, 2 - 4*_proppitch);
float tipspd = _r*omega;
float V2 = v*v + tipspd*tipspd;