1
0
Fork 0
flightgear/Simulator/FDM/JSBsim/FGMain.cpp

52 lines
1.2 KiB
C++
Raw Normal View History

1999-02-05 21:26:01 +00:00
#include "FGFDMExec.h"
#include "FGRotation.h"
#include "FGAtmosphere.h"
#include "FGState.h"
#include "FGFCS.h"
#include "FGAircraft.h"
#include "FGTranslation.h"
#include "FGPosition.h"
#include "FGAuxiliary.h"
#include "FGOutput.h"
1999-02-05 21:26:01 +00:00
#include <iostream>
#include <ctime>
1999-02-05 21:26:01 +00:00
void main(int argc, char** argv)
{
FGFDMExec* FDMExec;
1999-06-21 03:01:57 +00:00
// struct timespec short_wait = {0,100000000};
// struct timespec no_wait = {0,100000000};
1999-02-05 21:26:01 +00:00
if (argc != 3) {
cout << endl
<< " You must enter the name of a registered aircraft and reset point:"
<< endl << endl << " FDM <aircraft name> <reset file>" << endl;
exit(0);
}
FDMExec = new FGFDMExec();
1999-06-21 03:01:57 +00:00
FDMExec->GetAircraft()->LoadAircraft("aircraft", "engine", string(argv[1]));
FDMExec->GetState()->Reset("aircraft", string(argv[2]));
1999-02-05 21:26:01 +00:00
while (FDMExec->GetState()->Getsim_time() <= 25.0)
1999-02-05 21:26:01 +00:00
{
1999-05-08 03:19:08 +00:00
//
// fake an aileron, rudder and elevator kick here after 20 seconds
//
if (FDMExec->GetState()->Getsim_time() > 5.0) {
FDMExec->GetFCS()->SetDa(0.05);
1999-06-21 03:01:57 +00:00
// FDMExec->GetFCS()->SetDr(0.05);
// FDMExec->GetFCS()->SetDe(0.05);
1999-05-08 03:19:08 +00:00
}
1999-02-05 21:26:01 +00:00
FDMExec->Run();
1999-06-21 03:01:57 +00:00
// nanosleep(&short_wait,&no_wait);
1999-02-05 21:26:01 +00:00
}
delete FDMExec;
}