X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=src%2FFDM%2FJSBSim%2FFGForce.cpp;h=72256d198a91e605bfadb735412ffcbf1c99cc17;hb=fbee3d10f0aafd4178fc1313edb8593c156b2874;hp=d2da596c2b719e7ee4e24c410230e88cc25b6839;hpb=5c3f4e999db5cc882f6f47630084ff00b53a4516;p=flightgear.git diff --git a/src/FDM/JSBSim/FGForce.cpp b/src/FDM/JSBSim/FGForce.cpp index d2da596c2..72256d198 100644 --- a/src/FDM/JSBSim/FGForce.cpp +++ b/src/FDM/JSBSim/FGForce.cpp @@ -43,11 +43,12 @@ and the cg. #include "FGFDMExec.h" #include "FGAircraft.h" #include "FGTranslation.h" -#include "FGMatrix33.h" -#include "FGColumnVector3.h" -#include "FGColumnVector4.h" +#include "FGMassBalance.h" +#include "FGState.h" #include "FGForce.h" +namespace JSBSim { + static const char *IdSrc = "$Id$"; static const char *IdHdr = ID_FORCE; @@ -81,9 +82,7 @@ FGColumnVector3& FGForce::GetBodyForces(void) // needs to be done like this to convert from structural to body coords. // CG and RP values are in inches - vDXYZ(eX) = -(vActingXYZn(eX) - fdmex->GetMassBalance()->GetXYZcg(eX))*inchtoft; - vDXYZ(eY) = (vActingXYZn(eY) - fdmex->GetMassBalance()->GetXYZcg(eY))*inchtoft; - vDXYZ(eZ) = -(vActingXYZn(eZ) - fdmex->GetMassBalance()->GetXYZcg(eZ))*inchtoft; + vDXYZ = fdmex->GetMassBalance()->StructuralToBody(vActingXYZn); vM = vMn + vDXYZ*vFb; @@ -100,7 +99,6 @@ FGMatrix33 FGForce::Transform(void) case tLocalBody: return fdmex->GetState()->GetTl2b(); case tCustom: - case tNone: return mT; default: @@ -172,5 +170,11 @@ void FGForce::Debug(int from) } if (debug_lvl & 16) { // Sanity checking } + if (debug_lvl & 64) { + if (from == 0) { // Constructor + cout << IdSrc << endl; + cout << IdHdr << endl; + } + } +} } -