- inline int GetBrakeGroup(void) const { return (int)eBrakeGrp; }
- inline int GetSteerType(void) const { return (int)eSteerType; }
-
- inline double GetZPosition(void) const { return vXYZ(3); }
- inline void SetZPosition(double z) { vXYZ(3) = z; }
-
- bool GetSteerable(void) const { return eSteerType != stFixed; }
- inline bool GetRetractable(void) const { return isRetractable; }
- inline bool GetGearUnitUp(void) const { return GearUp; }
- inline bool GetGearUnitDown(void) const { return GearDown; }
- inline double GetWheelSideForce(void) const { return SideForce; }
- inline double GetWheelRollForce(void) const { return RollingForce; }
- inline double GetWheelSideVel(void) const { return SideWhlVel; }
- inline double GetWheelRollVel(void) const { return RollingWhlVel; }
- inline double GetBodyXForce(void) const { return vLocalForce(eX); }
- inline double GetBodyYForce(void) const { return vLocalForce(eY); }
- inline double GetWheelSlipAngle(void) const { return WheelSlip; }
- double GetWheelVel(int axis) const { return vWhlVelVec(axis);}
- bool IsBogey(void) const { return (eContactType == ctBOGEY);}
+ int GetBrakeGroup(void) const { return (int)eBrakeGrp; }
+ int GetSteerType(void) const { return (int)eSteerType; }
+
+ bool GetSteerable(void) const { return eSteerType != stFixed; }
+ bool GetRetractable(void) const { return isRetractable; }
+ bool GetGearUnitUp(void) const { return GearUp; }
+ bool GetGearUnitDown(void) const { return GearDown; }
+ double GetWheelRollForce(void) {
+ FGColumnVector3 vForce = mTGear.Transposed() * FGForce::GetBodyForces();
+ return vForce(eX)*cos(SteerAngle) + vForce(eY)*sin(SteerAngle); }
+ double GetWheelSideForce(void) {
+ FGColumnVector3 vForce = mTGear.Transposed() * FGForce::GetBodyForces();
+ return vForce(eY)*cos(SteerAngle) - vForce(eX)*sin(SteerAngle); }
+ double GetWheelRollVel(void) const { return vWhlVelVec(eX)*cos(SteerAngle)
+ + vWhlVelVec(eY)*sin(SteerAngle); }
+ double GetWheelSideVel(void) const { return vWhlVelVec(eY)*cos(SteerAngle)
+ - vWhlVelVec(eX)*sin(SteerAngle); }
+ double GetWheelSlipAngle(void) const { return WheelSlip; }
+ double GetWheelVel(int axis) const { return vWhlVelVec(axis);}
+ bool IsBogey(void) const { return (eContactType == ctBOGEY);}