X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=src%2FCockpit%2Fcockpit.cxx;h=ce8d5d897546c5779fc82061b25dc418a803d8bc;hb=f057fd0d4897ef65c4d36159af37ba3fdd544798;hp=f8e822b3f0303188fa3a9482af211b0a80663159;hpb=96b88e539f769c0e0d70d112d7f98f6843760e10;p=flightgear.git diff --git a/src/Cockpit/cockpit.cxx b/src/Cockpit/cockpit.cxx index f8e822b3f..ce8d5d897 100644 --- a/src/Cockpit/cockpit.cxx +++ b/src/Cockpit/cockpit.cxx @@ -29,7 +29,9 @@ # include #endif -#include +#include + +#include SG_GLU_H #include #include @@ -38,11 +40,14 @@ #include #include #include -#include +#include +#include #include #include -#include +#ifdef ENABLE_SP_FMDS +#include +#endif #include
#include
#include
@@ -51,6 +56,7 @@ #include #include "cockpit.hxx" +#include "hud.hxx" // This is a structure that contains all data related to @@ -64,18 +70,12 @@ static pCockpit ac_cockpit; float get_latitude( void ) { - double lat; - - lat = current_aircraft.fdm_state->get_Latitude() * SGD_RADIANS_TO_DEGREES; - - float flat = lat; - return(flat); - + return current_aircraft.fdm_state->get_Latitude() * SGD_RADIANS_TO_DEGREES; } float get_lat_min( void ) { - double a, d; + double a, d; a = current_aircraft.fdm_state->get_Latitude() * SGD_RADIANS_TO_DEGREES; if (a < 0.0) { @@ -83,18 +83,14 @@ float get_lat_min( void ) } d = (double) ( (int) a); float lat_min = (a - d) * 60.0; - return(lat_min ); + + return lat_min; } float get_longitude( void ) { - double lon; - - lon = current_aircraft.fdm_state->get_Longitude() * SGD_RADIANS_TO_DEGREES; - - float flon = lon; - return(flon); + return current_aircraft.fdm_state->get_Longitude() * SGD_RADIANS_TO_DEGREES; } @@ -106,6 +102,7 @@ get_formated_gmt_time( void ) sprintf( buf, "%d/%d/%4d %d:%02d:%02d", p->tm_mon+1, p->tm_mday, 1900 + p->tm_year, p->tm_hour, p->tm_min, p->tm_sec); + return buf; } @@ -119,37 +116,34 @@ float get_long_min( void ) } d = (double) ( (int) a); float lon_min = (a - d) * 60.0; - return(lon_min); + + return lon_min; } float get_throttleval( void ) { - float throttle = globals->get_controls()->get_throttle( 0 ); - return (throttle); // Hack limiting to one engine + // Hack limiting to one engine + return globals->get_controls()->get_throttle( 0 ); } float get_aileronval( void ) { - float aileronval = globals->get_controls()->get_aileron(); - return (aileronval); + return globals->get_controls()->get_aileron(); } float get_elevatorval( void ) { - float elevator_val = (float)globals->get_controls()->get_elevator(); - return elevator_val; + return globals->get_controls()->get_elevator(); } float get_elev_trimval( void ) { - float elevatorval = globals->get_controls()->get_elevator_trim(); - return (elevatorval); + return globals->get_controls()->get_elevator_trim(); } float get_rudderval( void ) { - float rudderval = globals->get_controls()->get_rudder(); - return (rudderval); + return globals->get_controls()->get_rudder(); } float get_speed( void ) @@ -164,32 +158,27 @@ float get_speed( void ) float get_mach(void) { - float mach=current_aircraft.fdm_state->get_Mach_number(); - return mach; + return current_aircraft.fdm_state->get_Mach_number(); } float get_aoa( void ) { - float aoa = current_aircraft.fdm_state->get_Alpha() * SGD_RADIANS_TO_DEGREES; - return( aoa ); + return current_aircraft.fdm_state->get_Alpha() * SGD_RADIANS_TO_DEGREES; } float get_roll( void ) { - float roll = current_aircraft.fdm_state->get_Phi(); - return( roll ); + return current_aircraft.fdm_state->get_Phi(); } float get_pitch( void ) { - float pitch = current_aircraft.fdm_state->get_Theta(); - return( pitch ); + return current_aircraft.fdm_state->get_Theta(); } float get_heading( void ) { - float heading = (current_aircraft.fdm_state->get_Psi() * SGD_RADIANS_TO_DEGREES); - return( heading ); + return current_aircraft.fdm_state->get_Psi() * SGD_RADIANS_TO_DEGREES; } float get_altitude( void ) @@ -199,7 +188,7 @@ float get_altitude( void ) float altitude; - if ( startup_units_node->getStringValue() == "feet" ) { + if ( !strcmp(startup_units_node->getStringValue(), "feet") ) { altitude = current_aircraft.fdm_state->get_Altitude(); } else { altitude = (current_aircraft.fdm_state->get_Altitude() @@ -211,34 +200,35 @@ float get_altitude( void ) float get_agl( void ) { + static const SGPropertyNode *startup_units_node + = fgGetNode("/sim/startup/units"); + float agl; - if ( fgGetString("/sim/startup/units") == "feet" ) { + if ( !strcmp(startup_units_node->getStringValue(), "feet") ) { agl = (current_aircraft.fdm_state->get_Altitude() - - scenery.cur_elev * SG_METER_TO_FEET); + - current_aircraft.fdm_state->get_Runway_altitude()); } else { - agl = (current_aircraft.fdm_state->get_Altitude() * SG_FEET_TO_METER - - scenery.cur_elev); + agl = (current_aircraft.fdm_state->get_Altitude() + - current_aircraft.fdm_state->get_Runway_altitude()) * SG_FEET_TO_METER; } + return agl; } float get_sideslip( void ) { - float sideslip = current_aircraft.fdm_state->get_Beta(); - return( sideslip ); + return current_aircraft.fdm_state->get_Beta(); } float get_frame_rate( void ) { - float frame_rate = general.get_frame_rate(); - return (frame_rate); + return general.get_frame_rate(); } float get_fov( void ) { - float fov = globals->get_current_view()->get_fov(); - return (fov); + return globals->get_current_view()->get_fov(); } float get_vfc_ratio( void ) @@ -264,19 +254,23 @@ float get_vfc_tris_culled ( void ) float get_climb_rate( void ) { + static const SGPropertyNode *startup_units_node + = fgGetNode("/sim/startup/units"); + float climb_rate; - if ( fgGetString("/sim/startup/units") == "feet" ) { + if ( !strcmp(startup_units_node->getStringValue(), "feet") ) { climb_rate = current_aircraft.fdm_state->get_Climb_Rate() * 60.0; } else { climb_rate = current_aircraft.fdm_state->get_Climb_Rate() * SG_FEET_TO_METER * 60.0; } - return (climb_rate); + + return climb_rate; } float get_view_direction( void ) { - double view_off = SGD_2PI - globals->get_current_view()->get_view_offset(); + double view_off = SGD_2PI - globals->get_current_view()->getHeadingOffset_deg() * SGD_DEGREES_TO_RADIANS; double view = ( current_aircraft.fdm_state->get_Psi() + view_off) * SGD_RADIANS_TO_DEGREES; @@ -288,236 +282,246 @@ float get_view_direction( void ) return view; } +// Added by Markus Hof on 5. Jan 2004 +float get_dme( void ) +{ + static const SGPropertyNode * dme_node = + fgGetNode("/instrumentation/dme/indicated-distance-nm"); + + return dme_node->getFloatValue(); +} + // $$$ begin - added, VS Renganathan 13 Oct 2K // #ifdef FIGHTER_HUD float get_Vx ( void ) { - // CLO - 5 Jan 2000 - something needs to get addressed here - // float Vxx = current_aircraft.fdm_state->get_V_north_rel_ground(); - float Vxx = 0; - return (Vxx); + // Curt dont comment this and return zero. - Ranga + // Please remove comments from get_V_..() function in flight.hxx + float Vxx = current_aircraft.fdm_state->get_V_north_rel_ground(); + return Vxx; } float get_Vy ( void ) { - // CLO - 5 Jan 2000 - something needs to get addressed here - // float Vyy = current_aircraft.fdm_state->get_V_east_rel_ground(); - float Vyy = 0; - return (Vyy); + // Curt dont comment this and return zero. - Ranga + // Please remove comments from get_V_..() function in flight.hxx + float Vyy = current_aircraft.fdm_state->get_V_east_rel_ground(); + return Vyy; } float get_Vz ( void ) { - // CLO - 5 Jan 2000 - something needs to get addressed here - // float Vzz = current_aircraft.fdm_state->get_V_down_rel_ground(); - float Vzz = 0; - return (Vzz); + // Curt dont comment this and return zero. - Ranga + // Please remove comments from get_V_..() function in flight.hxx + float Vzz = current_aircraft.fdm_state->get_V_down_rel_ground(); + return Vzz; } float get_Ax ( void ) { float Ax = current_aircraft.fdm_state->get_V_dot_north(); - return (Ax); + return Ax; } float get_Ay ( void ) { float Ay = current_aircraft.fdm_state->get_V_dot_east(); - return (Ay); + return Ay; } float get_Az ( void ) { float Az = current_aircraft.fdm_state->get_V_dot_down(); - return (Az); + return Az; } float get_anzg ( void ) { float anzg = current_aircraft.fdm_state->get_N_Z_cg(); - return (anzg); + return anzg; } +#ifdef ENABLE_SP_FMDS int get_iaux1 (void) { FGADA *fdm = (FGADA *)current_aircraft.fdm_state; - return fdm->get_iaux1(); + return fdm->get_iaux(1); } int get_iaux2 (void) { FGADA *fdm = (FGADA *)current_aircraft.fdm_state; - return fdm->get_iaux2(); + return fdm->get_iaux(2); } int get_iaux3 (void) { FGADA *fdm = (FGADA *)current_aircraft.fdm_state; - return fdm->get_iaux3(); + return fdm->get_iaux(3); } int get_iaux4 (void) { FGADA *fdm = (FGADA *)current_aircraft.fdm_state; - return fdm->get_iaux4(); + return fdm->get_iaux(4); } int get_iaux5 (void) { FGADA *fdm = (FGADA *)current_aircraft.fdm_state; - return fdm->get_iaux5(); + return fdm->get_iaux(5); } int get_iaux6 (void) { FGADA *fdm = (FGADA *)current_aircraft.fdm_state; - return fdm->get_iaux6(); + return fdm->get_iaux(6); } int get_iaux7 (void) { FGADA *fdm = (FGADA *)current_aircraft.fdm_state; - return fdm->get_iaux7(); + return fdm->get_iaux(7); } int get_iaux8 (void) { FGADA *fdm = (FGADA *)current_aircraft.fdm_state; - return fdm->get_iaux8(); + return fdm->get_iaux(8); } int get_iaux9 (void) { FGADA *fdm = (FGADA *)current_aircraft.fdm_state; - return fdm->get_iaux9(); + return fdm->get_iaux(9); } int get_iaux10 (void) { FGADA *fdm = (FGADA *)current_aircraft.fdm_state; - return fdm->get_iaux10(); + return fdm->get_iaux(10); } int get_iaux11 (void) { FGADA *fdm = (FGADA *)current_aircraft.fdm_state; - return fdm->get_iaux11(); + return fdm->get_iaux(11); } int get_iaux12 (void) { FGADA *fdm = (FGADA *)current_aircraft.fdm_state; - return fdm->get_iaux12(); + return fdm->get_iaux(12); } float get_aux1 (void) { FGADA *fdm = (FGADA *)current_aircraft.fdm_state; - return fdm->get_aux1(); + return fdm->get_daux(1); } float get_aux2 (void) { FGADA *fdm = (FGADA *)current_aircraft.fdm_state; - return fdm->get_aux2(); + return fdm->get_daux(2); } float get_aux3 (void) { FGADA *fdm = (FGADA *)current_aircraft.fdm_state; - return fdm->get_aux3(); + return fdm->get_daux(3); } float get_aux4 (void) { FGADA *fdm = (FGADA *)current_aircraft.fdm_state; - return fdm->get_aux4(); + return fdm->get_daux(4); } float get_aux5 (void) { FGADA *fdm = (FGADA *)current_aircraft.fdm_state; - return fdm->get_aux5(); + return fdm->get_daux(5); } float get_aux6 (void) { FGADA *fdm = (FGADA *)current_aircraft.fdm_state; - return fdm->get_aux6(); + return fdm->get_daux(6); } float get_aux7 (void) { FGADA *fdm = (FGADA *)current_aircraft.fdm_state; - return fdm->get_aux7(); + return fdm->get_daux(7); } float get_aux8 (void) { FGADA *fdm = (FGADA *)current_aircraft.fdm_state; - return fdm->get_aux8(); + return fdm->get_daux(8); } float get_aux9 (void) { FGADA *fdm = (FGADA *)current_aircraft.fdm_state; - return fdm->get_aux9(); + return fdm->get_faux(1); } float get_aux10 (void) { FGADA *fdm = (FGADA *)current_aircraft.fdm_state; - return fdm->get_aux10(); + return fdm->get_faux(2); } float get_aux11 (void) { FGADA *fdm = (FGADA *)current_aircraft.fdm_state; - return fdm->get_aux11(); + return fdm->get_faux(3); } float get_aux12 (void) { FGADA *fdm = (FGADA *)current_aircraft.fdm_state; - return fdm->get_aux12(); + return fdm->get_faux(4); } float get_aux13 (void) { FGADA *fdm = (FGADA *)current_aircraft.fdm_state; - return fdm->get_aux13(); + return fdm->get_faux(5); } float get_aux14 (void) { FGADA *fdm = (FGADA *)current_aircraft.fdm_state; - return fdm->get_aux14(); + return fdm->get_faux(6); } float get_aux15 (void) { FGADA *fdm = (FGADA *)current_aircraft.fdm_state; - return fdm->get_aux15(); + return fdm->get_faux(7); } float get_aux16 (void) { FGADA *fdm = (FGADA *)current_aircraft.fdm_state; - return fdm->get_aux16(); + return fdm->get_faux(8); } float get_aux17 (void) { FGADA *fdm = (FGADA *)current_aircraft.fdm_state; - return fdm->get_aux17(); + return fdm->get_faux(9); } float get_aux18 (void) { FGADA *fdm = (FGADA *)current_aircraft.fdm_state; - return fdm->get_aux18(); + return fdm->get_faux(10); } -// #endif +#endif // $$$ end - added, VS Renganathan 13 Oct 2K @@ -724,15 +728,9 @@ void fgCockpitUpdate( void ) { fgUpdateHUD(); } -#define DISPLAY_COUNTER -#ifdef DISPLAY_COUNTER - else - { + if ( fgGetBool( "/sim/hud/draw-fps", false ) ) { char buf[64]; - float fps = get_frame_rate(); -// float tris = fps * get_vfc_tris_drawn(); -// float culled = fps * get_vfc_tris_culled(); -// sprintf(buf,"%-4.1f %7.0f %7.0f", fps, tris, culled); + float fps = get_frame_rate(); sprintf(buf,"%-5.1f", fps); glMatrixMode( GL_PROJECTION ); @@ -758,7 +756,7 @@ void fgCockpitUpdate( void ) { glMatrixMode( GL_MODELVIEW ); glPopMatrix(); } -#endif // #ifdef DISPLAY_COUNTER glViewport( 0, 0, iwidth, iheight ); } +