]> git.mxchange.org Git - flightgear.git/blobdiff - src/FDM/JSBSim/FGState.cpp
Attached patches remove BORLANDC, and hence SG_MATH_EXCEPTION_CLASH and SG_INCOM
[flightgear.git] / src / FDM / JSBSim / FGState.cpp
index d21a82b66d34b2867982120fc939f0de7b590ddf..f5fc784f2765c23b9c44d443616e943589c9985e 100644 (file)
@@ -8,20 +8,20 @@
  ------------- Copyright (C) 1999  Jon S. Berndt (jsb@hal-pc.org) -------------
 
  This program is free software; you can redistribute it and/or modify it under
- the terms of the GNU General Public License as published by the Free Software
+ the terms of the GNU Lesser General Public License as published by the Free Software
  Foundation; either version 2 of the License, or (at your option) any later
  version.
 
  This program is distributed in the hope that it will be useful, but WITHOUT
  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
- FOR A PARTICULAR PURPOSE.  See the GNU General Public License for more
+ FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more
  details.
 
- You should have received a copy of the GNU General Public License along with
+ You should have received a copy of the GNU Lesser General Public License along with
  this program; if not, write to the Free Software Foundation, Inc., 59 Temple
  Place - Suite 330, Boston, MA  02111-1307, USA.
 
- Further information about the GNU General Public License can also be found on
+ Further information about the GNU Lesser General Public License can also be found on
  the world wide web at http://www.gnu.org.
 
 FUNCTIONAL DESCRIPTION
@@ -36,20 +36,7 @@ HISTORY
 INCLUDES
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*/
 
-#ifdef FGFS
-#  include <simgear/compiler.h>
-#  include <math.h>
-#else
-#  if defined(sgi) && !defined(__GNUC__)
-#    include <math.h>
-#  else
-#    include <cmath>
-#  endif
-#endif
-
-#ifdef _WIN32
-//#define snprintf _snprintf
-#endif
+#include <cmath>
 
 #include "FGState.h"
 
@@ -77,7 +64,6 @@ FGState::FGState(FGFDMExec* fdex)
   Propagate    = FDMExec->GetPropagate();
   Auxiliary    = FDMExec->GetAuxiliary();
   FCS          = FDMExec->GetFCS();
-  Output       = FDMExec->GetOutput();
   Atmosphere   = FDMExec->GetAtmosphere();
   Aerodynamics = FDMExec->GetAerodynamics();
   GroundReactions = FDMExec->GetGroundReactions();
@@ -93,7 +79,6 @@ FGState::FGState(FGFDMExec* fdex)
 
 FGState::~FGState()
 {
-  unbind();
   Debug(1);
 }
 
@@ -136,152 +121,9 @@ void FGState::Initialize(FGInitialCondition *FGIC)
 
 //%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
-FGMatrix33& FGState::GetTs2b(void)
-{
-  double ca, cb, sa, sb;
-
-  double alpha = Auxiliary->Getalpha();
-  double beta  = Auxiliary->Getbeta();
-
-  ca = cos(alpha);
-  sa = sin(alpha);
-  cb = cos(beta);
-  sb = sin(beta);
-
-  mTs2b(1,1) = ca*cb;
-  mTs2b(1,2) = -ca*sb;
-  mTs2b(1,3) = -sa;
-  mTs2b(2,1) = sb;
-  mTs2b(2,2) = cb;
-  mTs2b(2,3) = 0.0;
-  mTs2b(3,1) = sa*cb;
-  mTs2b(3,2) = -sa*sb;
-  mTs2b(3,3) = ca;
-
-  return mTs2b;
-}
-
-//%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-FGMatrix33& FGState::GetTb2s(void)
-{
-  float alpha,beta;
-  float ca, cb, sa, sb;
-
-  alpha = Auxiliary->Getalpha();
-  beta  = Auxiliary->Getbeta();
-
-  ca = cos(alpha);
-  sa = sin(alpha);
-  cb = cos(beta);
-  sb = sin(beta);
-
-  mTb2s(1,1) = ca*cb;
-  mTb2s(1,2) = sb;
-  mTb2s(1,3) = sa*cb;
-  mTb2s(2,1) = -ca*sb;
-  mTb2s(2,2) = cb;
-  mTb2s(2,3) = -sa*sb;
-  mTb2s(3,1) = -sa;
-  mTb2s(3,2) = 0.0;
-  mTb2s(3,3) = ca;
-
-  return mTb2s;
-}
-
-//%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-void FGState::ReportState(void)
-{
-#if 0
-#if !defined(__BORLANDCPP__)
-  char out[80], flap[10], gear[12];
-
-  cout << endl << "  JSBSim State" << endl;
-  snprintf(out,80,"    Weight: %7.0f lbs.  CG: %5.1f, %5.1f, %5.1f inches\n",
-                   FDMExec->GetMassBalance()->GetWeight(),
-                   FDMExec->GetMassBalance()->GetXYZcg(1),
-                   FDMExec->GetMassBalance()->GetXYZcg(2),
-                   FDMExec->GetMassBalance()->GetXYZcg(3));
-  cout << out;
-  if ( FCS->GetDfPos() <= 0.01)
-    snprintf(flap,10,"Up");
-  else
-    snprintf(flap,10,"%2.0f",FCS->GetDfPos());
-
-  if (FCS->GetGearPos() < 0.01)
-    snprintf(gear,12,"Up");
-  else if (FCS->GetGearPos() > 0.99)
-    snprintf(gear,12,"Down");
-  else
-    snprintf(gear,12,"In Transit");
-
-  snprintf(out,80, "    Flaps: %3s  Gear: %12s\n",flap,gear);
-  cout << out;
-  snprintf(out,80, "    Speed: %4.0f KCAS  Mach: %5.2f\n",
-                    Auxiliary->GetVcalibratedKTS(),
-                    Auxiliary->GetMach() );
-  cout << out;
-  snprintf(out,80, "    Altitude: %7.0f ft.  AGL Altitude: %7.0f ft.\n",
-                    Propagate->Geth(),
-                    Propagate->GetDistanceAGL() );
-  cout << out;
-  snprintf(out,80, "    Angle of Attack: %6.2f deg  Pitch Angle: %6.2f deg\n",
-                    Auxiliary->Getalpha()*radtodeg,
-                    Propagate->Gettht()*radtodeg );
-  cout << out;
-  snprintf(out,80, "    Flight Path Angle: %6.2f deg  Climb Rate: %5.0f ft/min\n",
-                    Auxiliary->GetGamma()*radtodeg,
-                    Propagate->Gethdot()*60 );
-  cout << out;
-  snprintf(out,80, "    Normal Load Factor: %4.2f g's  Pitch Rate: %5.2f deg/s\n",
-                    Aircraft->GetNlf(),
-                    Propagate->GetPQR(2)*radtodeg );
-  cout << out;
-  snprintf(out,80, "    Heading: %3.0f deg true  Sideslip: %5.2f deg  Yaw Rate: %5.2f deg/s\n",
-                    Propagate->Getpsi()*radtodeg,
-                    Auxiliary->Getbeta()*radtodeg,
-                    Propagate->GetPQR(3)*radtodeg  );
-  cout << out;
-  snprintf(out,80, "    Bank Angle: %5.2f deg  Roll Rate: %5.2f deg/s\n",
-                    Propagate->Getphi()*radtodeg,
-                    Propagate->GetPQR(1)*radtodeg );
-  cout << out;
-  snprintf(out,80, "    Elevator: %5.2f deg  Left Aileron: %5.2f deg  Rudder: %5.2f deg\n",
-                    FCS->GetDePos(ofRad)*radtodeg,
-                    FCS->GetDaLPos(ofRad)*radtodeg,
-                    FCS->GetDrPos(ofRad)*radtodeg );
-  cout << out;
-  snprintf(out,80, "    Throttle: %5.2f%c\n",
-                    FCS->GetThrottlePos(0)*100,'%' );
-  cout << out;
-
-  snprintf(out,80, "    Wind Components: %5.2f kts head wind, %5.2f kts cross wind\n",
-                    Auxiliary->GetHeadWind()*fpstokts,
-                    Auxiliary->GetCrossWind()*fpstokts );
-  cout << out;
-
-  snprintf(out,80, "    Ground Speed: %4.0f knots , Ground Track: %3.0f deg true\n",
-                    Auxiliary->GetVground()*fpstokts,
-                    Auxiliary->GetGroundTrack()*radtodeg );
-  cout << out;
-#endif
-#endif
-}
-
-//%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
 void FGState::bind(void)
 {
-  PropertyManager->Tie("sim-time-sec",this,
-                        &FGState::Getsim_time);
-}
-
-//%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-void FGState::unbind(void)
-{
-  PropertyManager->Untie("sim-time-sec");
+  PropertyManager->Tie("sim-time-sec", this, &FGState::Getsim_time);
 }
 
 //%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%