b423d0bc1d
Here is a little patch that changes the behaviour of the VOR CDI and OFF-flag for indicators like the HSI when getting outside the range of the VOR station. Currently, when flying at a distance between the effective_range and twice the effective_range of a VOR station, the in-range property is computed based on a random value, causing the OFF Flag and the CDI bar to perform an ugly jitter. The attached patch introduces a new property signal-quality-norm which is computed based on the distance to the station and the range. It is 1.0 when the distance is less than the range and decreases by 1/x^2 for distances greater than the range leading to a signal-quality-norm of 0.25 for distances two times the range, 0.125 for three times the range and so on. The in-range flag is tied to a signal-quality-norm greater than 0.2 (fixed squelch). The CDI and GS needle deflection is multiplied with the signal-quality-norm. The benefit is: - Ability to animate the OFF-Flag with a smooth transition. - CDI and GS needle deflection shows correct values when in range (signal-quality-norm=1.0) and show some wrong indication when the range is exceeded - CDI and GS needle start to move, even when the OFF flag is visible - No more jitter for flag and needles See the new SenecaII ki525a hsi as an example at http://www.t3r.de/fg/navpatch.jpg The numbers on the image are: (1) the new property signal-quality-norm (2) distance exceeds the effective-range by 30% (3) NAV flag has a rotation animation bound to signal-quality-norm and is partially visible (4) CDI is partially deflected even with NAV flag shown This implementation better matches reality - at least, how I observed it ;-) |
||
---|---|---|
.. | ||
HUD | ||
KLN89 | ||
.cvsignore | ||
adf.cxx | ||
adf.hxx | ||
agradar.cxx | ||
agradar.hxx | ||
airspeed_indicator.cxx | ||
airspeed_indicator.hxx | ||
altimeter.cxx | ||
altimeter.hxx | ||
attitude_indicator.cxx | ||
attitude_indicator.hxx | ||
clock.cxx | ||
clock.hxx | ||
dclgps.cxx | ||
dclgps.hxx | ||
dme.cxx | ||
dme.hxx | ||
gps.cxx | ||
gps.hxx | ||
groundradar.cxx | ||
groundradar.hxx | ||
gsdi.cxx | ||
gsdi.hxx | ||
gyro.cxx | ||
gyro.hxx | ||
heading_indicator.cxx | ||
heading_indicator.hxx | ||
heading_indicator_dg.cxx | ||
heading_indicator_dg.hxx | ||
heading_indicator_fg.cxx | ||
heading_indicator_fg.hxx | ||
inst_vertical_speed_indicator.cxx | ||
inst_vertical_speed_indicator.hxx | ||
instrument_mgr.cxx | ||
instrument_mgr.hxx | ||
kr_87.cxx | ||
kr_87.hxx | ||
kt_70.cxx | ||
kt_70.hxx | ||
mag_compass.cxx | ||
mag_compass.hxx | ||
Makefile.am | ||
marker_beacon.cxx | ||
marker_beacon.hxx | ||
mk_viii.cxx | ||
mk_viii.hxx | ||
mrg.cxx | ||
mrg.hxx | ||
navradio.cxx | ||
navradio.hxx | ||
od_gauge.cxx | ||
od_gauge.hxx | ||
rad_alt.cxx | ||
rad_alt.hxx | ||
README | ||
render_area_2d.cxx | ||
render_area_2d.hxx | ||
slip_skid_ball.cxx | ||
slip_skid_ball.hxx | ||
tacan.cxx | ||
tacan.hxx | ||
transponder.cxx | ||
transponder.hxx | ||
turn_indicator.cxx | ||
turn_indicator.hxx | ||
vertical_speed_indicator.cxx | ||
vertical_speed_indicator.hxx | ||
wxradar.cxx | ||
wxradar.hxx |
src/Instrumentation/ - gauge and avionics support code This directory contains code to support gauges, avionics, and other instruments in FlightGear. The file instrument_mgr.[ch]xx contains a subsystem group that holds all of the individual instruments. Every instrument should extend FGSubsystem, and then should be added to the group in the FGInstrumentMgr constructor. Code is gradually moving into here from other areas, especially the src/Cockpit/ directory. Eventually, there will be an XML configuration file to select what instrumentation modules should be available, so that different aircraft can have appropriate support.