/* Initialize the flight model parameters */
int fgFlightModelInit(int model, fgFLIGHT *f, double dt) {
+ double save_alt = 0.0;
int result;
fgPrintf(FG_FLIGHT,FG_INFO,"Initializing flight model\n");
- if ( model == FG_LARCSIM ) {
+ if ( model == FG_SLEW ) {
+ // fgSlewInit(dt);
+ } else if ( model == FG_LARCSIM ) {
+ /* lets try to avoid really screwing up the LaRCsim model */
+ if ( FG_Altitude < -9000 ) {
+ save_alt = FG_Altitude;
+ FG_Altitude = 0;
+ }
+
fgFlight_2_LaRCsim(f); /* translate FG to LaRCsim structure */
fgLaRCsimInit(dt);
- fgPrintf(FG_FLIGHT,FG_INFO,"FG pos = %.2f\n", FG_Latitude);
+ fgPrintf( FG_FLIGHT, FG_INFO, "FG pos = %.2f\n", FG_Latitude );
fgLaRCsim_2_Flight(f); /* translate LaRCsim back to FG structure */
+
+ /* but lets restore our original bogus altitude when we are done */
+ if ( save_alt < -9000 ) {
+ FG_Altitude = save_alt;
+ }
} else {
- fgPrintf(FG_FLIGHT,FG_WARN,"Unimplemented flight model == %d\n", model);
+ fgPrintf( FG_FLIGHT, FG_WARN,
+ "Unimplemented flight model == %d\n", model );
}
result = 1;
// printf("Altitude = %.2f\n", FG_Altitude * 0.3048);
- if ( model == FG_LARCSIM ) {
+ if ( model == FG_SLEW ) {
+ // fgSlewUpdate(f, multiloop);
+ } else if ( model == FG_LARCSIM ) {
fgLaRCsimUpdate(f, multiloop);
} else {
- fgPrintf(FG_FLIGHT,FG_WARN,"Unimplemented flight model == %d\n", model);
+ fgPrintf( FG_FLIGHT, FG_WARN,
+ "Unimplemented flight model == %d\n", model );
}
result = 1;
FG_Radius_to_vehicle = FG_Altitude +
(sea_level_radius_meters * METER_TO_FEET);
+ /* additional work needed for some flight models */
if ( model == FG_LARCSIM ) {
ls_ForceAltitude(FG_Altitude);
- } else {
- fgPrintf( FG_FLIGHT, FG_WARN,
- "Unimplemented flight model == %d\n", model );
}
}
/* $Log$
-/* Revision 1.14 1998/07/12 03:08:27 curt
-/* Added fgFlightModelSetAltitude() to force the altitude to something
-/* other than the current altitude. LaRCsim doesn't let you do this by just
-/* changing FG_Altitude.
+/* Revision 1.17 1998/08/24 20:09:07 curt
+/* .
/*
+ * Revision 1.16 1998/08/22 14:49:55 curt
+ * Attempting to iron out seg faults and crashes.
+ * Did some shuffling to fix a initialization order problem between view
+ * position, scenery elevation.
+ *
+ * Revision 1.15 1998/07/30 23:44:36 curt
+ * Beginning to add support for multiple flight models.
+ *
+ * Revision 1.14 1998/07/12 03:08:27 curt
+ * Added fgFlightModelSetAltitude() to force the altitude to something
+ * other than the current altitude. LaRCsim doesn't let you do this by just
+ * changing FG_Altitude.
+ *
* Revision 1.13 1998/04/25 22:06:28 curt
* Edited cvs log messages in source files ... bad bad bad!
*