1
0
Fork 0
Commit graph

760 commits

Author SHA1 Message Date
Thomas Geymayer
e4fed256b7 Remove hardcoded update intervals for radar. 2012-07-26 10:48:16 +01:00
ThorstenB
0b9adf8854 ADF: code clean-up/documentation 2012-07-17 19:31:57 +02:00
ThorstenB
d50aa8999d ADF: add "operable" property
Add same property as for nav radio, to provide a property to cockpit models
whether the ADF is active (serviceable/switched on/power ok/...). Useful
to enable/disable displays (i.e. KR87).
2012-07-17 19:31:49 +02:00
ThorstenB
b14401df66 #769: fix glideslope reception
Add missing frequency update.
2012-06-19 00:41:52 +02:00
ThorstenB
aabea95d19 #769: fix glideslope reception
The glideslope station was only searched once whenever the NAV station
changed. However, sometimes a mismatching G/S station is found, since
another G/S station is still closer when the NAV station changes.
When this happened, the G/S station was never updated again (while the
NAV station stayed in range), resulting in the NAV receiver providing
correct localizer, but bad G/S data (data matching another, remote station).
Issue is fixed by alternating between searching NAV and G/S stations.
2012-06-18 22:57:22 +02:00
James Turner
5fc98e4ed0 Fix another case-sensitivity issue in the NavDisplay. 2012-06-10 11:11:42 +01:00
ThorstenB
db09e11ba0 Fix inconsistent NAV receiver gs-inrange behaviour.
Make sure gs-inrange and deflection outputs have same behaviour, no matter
which out-of-range condition applies (i.e. aircraft moved out of range,
frequency changed, ...).
2012-06-08 13:28:08 +02:00
ThorstenB
805c4cbba1 Performance optimization
Throttle instruments not requiring the fast FDM simulation rate.
2012-06-08 13:20:39 +02:00
James Turner
2c640b0329 Another Win32/Canvas fix. 2012-05-18 08:56:17 +01:00
Thomas Geymayer
d82fd7cc5f Basic 2D canvas implementation.
Support text and transformations for the moment, more
features to follow in due course.
2012-05-18 07:05:37 +01:00
James Turner
fe0a703a19 Fix a dumb bug in NavDisplay text-enable. 2012-05-18 06:49:18 +01:00
James Turner
caf0138ab3 NavDisplay enhancements for Syd.
- Support text-enable condition on symbols
- support <limit>N</limit> on symbols to restrict
to closest N symbol instances.
- change search to hopefully be more stable at
larger ranges.
2012-05-17 17:30:30 +01:00
James Turner
ffac5ff889 Standard property to ignore unusably short runways in NavDB.
Default values should match existing behaviour. Set
/sim/navdb/min-runway-length-ft to skip short runways
in GPS / Map / ND / Nasal queries.
2012-05-16 16:51:39 +01:00
James Turner
e06b3df11e Make HUD loading lazy upon first show. 2012-05-15 18:17:39 +01:00
James Turner
1b7b69b498 Create a real FlightPlan (and Leg) class
Convert the route-manager to use a flight-plan internally, and expose
flightplan, leg and procedure data to Nasal. Move the Level-D parser
into its own file.
2012-05-07 00:35:48 +01:00
Frederic Bouvier
75fc136931 Remove redundant inclusion of math/SGMath.hxx 2012-05-05 11:20:04 +02:00
ThorstenB
0f462d4a6e Fix rpmlint/Linux packager complaints
about outdated/invalid FSF address in some license headers.
2012-05-05 01:42:41 +02:00
ThorstenB
b9260f543b Ganael Laplanche: fix include dependencies for FreeBSD support 2012-05-05 01:08:20 +02:00
ThorstenB
e59fabaf82 Clean-up some SGMath dependencies. 2012-05-05 00:56:29 +02:00
James Turner
15724a6a44 NavDisplay: ignore case when matching symbol types in rules. 2012-04-28 22:39:55 +01:00
ThorstenB
89b41395d8 Move viewer-related sources to separate folder.
Simple source directory clean-up, so "Main" folder contains fewer stuff
and the list of files in the editors a lot shorter.
2012-04-25 23:28:00 +02:00
James Turner
1011251504 Feature request for Syd - expose the ND view heading 2012-04-23 13:59:01 +01:00
James Turner
96ee2b1577 Tweak ODGauge usage, fix multiple instances of NavDisplay or wxRadar. 2012-04-15 12:03:21 +01:00
James Turner
2ce5b5276f NavDisplay: respect initial values for various properties. 2012-04-11 10:48:33 +01:00
James Turner
2408be0abb Whoops, fix a type found by Syd in the NavDisplay. 2012-04-09 12:17:38 +01:00
ThorstenB
9effb06047 Fix scenery reload issues.
Aircraft could fall through the ground on scenery reload. Properly reset
the "sceneryloaded" flag to pause FDM processing while scenery is being
reloaded. Also stop processing some instruments while scenery is reloaded.
2012-04-07 16:20:22 +02:00
ThorstenB
a8fe035b54 #723: perpetual "GPS init complete" info messages.
Don't report "init complete" unless "init" is complete :).
2012-03-27 21:24:54 +02:00
ThorstenB
1df5347a06 Fix "use of uninitialized data" reported by valgrind.
(issue triggered when FGGlobals::saveInitialState copies the entire
property tree on start-up).
2012-03-26 21:11:04 +02:00
Frederic Bouvier
19e7163971 Compile with MSVC 9 2012-03-25 14:39:24 +02:00
ThorstenB
0abf252ec8 Use tiedPropertyLists instead of manually matched tie/untie calls.
Ensures we don't forget to untie some individual properties.
2012-03-04 15:30:08 +01:00
Mathias Froehlich
c71c9aee0a Adapt to simgear SGMath change.
Simgears SGMath has lost its dependency on osg.
Update includes and code using these methods.
2012-03-03 13:37:43 +01:00
Torsten Dreyer
c5eba72c75 Navradio: provide property is-localizer-frequency
This property is true if the active frequency is tuned to a
paired LOC/GS frequency in the range 108.00 - 111.95 with a
odd 100kHz digit (108.10, 108.15, 108.30, 108.35 ...)
It only indicates, that this _is_ a LOC/GS frequency,
it does _not_ provide any indication if a LOC/GS station is
actually being received.
2012-02-15 22:43:15 +01:00
Torsten Dreyer
d141beee0f Accept setting-hpa along with setting-inhg for altimeter 2012-02-13 22:25:30 +01:00
Torsten Dreyer
5a05e30abd Fix file access mode for newnavradio.[ch]xx 2012-02-13 22:24:41 +01:00
Torsten Dreyer
72483d565b initialize the heading-indicator/offset-deg in it's class
Don't initialize the offset in the main loop but in
the init method of the implementing class. This ensures
it gets initialized if you instantiate more than one
heading-indicator and does not initialize the property for
unsused heading-indicators (no more stray heading-indicator-fg
property anymore).
2012-02-01 22:24:06 +01:00
James Turner
96cd6018f9 Allow distinct rule and symbol definitions for navDisplays. 2012-01-14 17:00:50 +00:00
James Turner
472cc02d6e NavDisplay: fix update lag when switching range or centre. 2012-01-12 10:08:08 +00:00
ThorstenB
d051ba5cd2 #577: blinking not working for static HUD labels
Only worked for dynamic labels displaying a property (mode!=NONE).
2012-01-10 22:01:05 +01:00
ThorstenB
6b348dc481 #590: agradar copying an uninitialized string
Thanks to Olaf Flebbe.
2012-01-09 23:41:07 +01:00
James Turner
975a5202a8 NavDisplay: fix many bugs relating to stretched and heading-rotated symbols. 2012-01-08 17:47:13 +00:00
James Turner
b1c6e31c22 Tweaks to get TCAS / multiplayer aircraft showing on the NavDisplay. 2012-01-06 20:47:21 +00:00
James Turner
a3c243f266 Mark NavDisplay stateSet as STATIC 2012-01-04 12:43:25 +00:00
ThorstenB
dac00efbc7 Fix some compiler warnings.
Comment out unused code.
2012-01-02 23:16:17 +01:00
James Turner
36fc0367d2 Nav-display: expose TCAS threat level correctly. 2011-12-27 20:19:10 +00:00
Torsten Dreyer
ddb4fa050f Some warning fixes, mostly unused variables 2011-12-25 14:41:47 +01:00
James Turner
342140a694 Add test-mode to NavDisplay, and hence fix bugs in range / scale handling. 2011-12-22 14:07:06 +00:00
Erik Hofman
1fb790eb60 comment out unused variables and function and properly initialize variables 2011-12-19 16:50:21 +01:00
James Turner
7c79e16d8d Add hud-cycling back - issue #337 2011-12-11 14:12:17 +00:00
ThorstenB
d47342a5a4 Add --log-class option, improve logging classes.
Replace SG_GENERAL by more specific log classes in many places.
Allow "," to separate logging classes (using "|" is odd on the
command-line).
Also add new option to make logging more useful for developers.
You can use:
  --log-level=debug --log-class=environment
to only get environment debug messages, or
  --log-level=debug --log-class=sound,ai
to only get debug messages related to the sound or AI subsystem.
2011-12-11 14:06:17 +01:00
ThorstenB
cc40660206 Performance improvement
Avoid frequently creating/dropping an identical sound sample, when the
nav radio signal is flickering. Always keep most recent sound when signal
is lost (only stop it/turn volume off).
2011-12-04 21:43:21 +01:00
James Turner
f054f15693 Fixes for linking with shared SimGear. 2011-11-29 10:24:33 +00:00
James Turner
a05ea36acb Restructure GUI code, isolate PLIB in source files, to ease future refactoring and alternative GUI layers. 2011-11-19 20:25:51 +00:00
Frederic Bouvier
f1d0ac52a6 Fix MSVC9 build 2011-11-14 08:38:58 +01:00
ThorstenB
2983814d52 Drop obsolete include
Can we drop "fg_typedefs.h" now? No longer used anywhere...
2011-11-13 14:27:05 +01:00
ThorstenB
6fbb5aaf99 navradio: set receiver's signal-quality-norm to 0 when navaid station
is lost
2011-11-07 21:51:53 +01:00
James Turner
10e6cc016b NavDisplay - cache nearby positioned items, and fix symbol instance queue to be cleared each update. Works much more sanely now. 2011-11-07 19:40:30 +00:00
James Turner
70b4f38ebc Goodbye automake. 2011-11-01 11:15:53 +00:00
ThorstenB
9c04b2c1ad TCAS: pressure vs radio altimeter
Altert altitudes refer to AGL/radar alt - not sea-level/pressure alt.
Avoids false alerts, i.e. while taxiing.
2011-10-30 11:47:28 +01:00
James Turner
34f86cd317 Many NavDisplay bug-fixes - almost usable now! 2011-10-24 23:55:46 +01:00
James Turner
b1b4b7ecf4 Fix (nearly) all the std:: namespace violations in headers, in preparation for fixing SGsmplstat.hxx to *not* do a 'using namespace std'. 2011-10-17 17:41:59 +01:00
Torsten Dreyer
9a21896a33 start adding backward-compatibility to newnavradio 2011-10-09 21:17:33 +02:00
Torsten Dreyer
9022c6a58d Reintroduce an old bugture: use localizer as dme
Our nav.dat.gz seem to have many bugs regarding paired LOC/DME where
the DME is missing.

A feature has recently been introduced to always use a LOC frequency
as a DME to avoid these issues. However many LOC station do not have
a DME paired at their frequency and this behaviour might be as confusing
as having no DME where one should be.
Before we get new/bugfree navdata, a property can be set to select
the desired behaviour:

if /sim/realism/dme-fallback-to-loc is true or absent, LOC will be
treated as DME (realism is off)
if /sim/realism/dme-fallback-to-loc is false, LOC will be NOT be
treated as DME (realism is on)
2011-10-09 20:21:02 +02:00
James Turner
ef995913e1 Further NavDisplay hacking, symbol binding is working more sanely now. 2011-10-07 08:34:56 +01:00
Torsten Dreyer
e9d24b05ca Introducing: The new navradio code (WIP)
Here comes the work-in-progres code for a new navradio
implementation. Once completed, it will replace the
old/current navradio implementation.
The new code can be activated by setting
/instrumentation/use-new-navradio=true
at startup. This disables the old navradio implementation.

Current state:
- VOR works pretty good including the new
functionality 'code of confusion'.
- LOC and GS basically work
- backward compatibility (many properties) is to be implemented
2011-10-05 15:26:41 +02:00
James Turner
41759b15d6 Work on the NavDisplay instrument. 2011-10-04 08:58:09 +01:00
ThorstenB
56912c17c5 adf: fix "in-range" node
"in-range" should also be false when no station is available
2011-10-02 13:24:12 +02:00
James Turner
563614f36c Expose route-manager WP mirror nodes on the API 2011-09-19 11:38:35 +01:00
James Turner
af6ed2ff3a Expose departure+arrival airport + runway on route-manager. 2011-09-19 11:38:35 +01:00
James Turner
28c8e6fe1c Initial hacking on nav-display instrument, derived from the wxradar code 2011-09-19 11:38:35 +01:00
Torsten Dreyer
43109feb0c Some more refactoring of the radios
- wrap the ident-generating code into a class
- move dme-in-range property into dme.cxx
- move dme-ident generation into dme.cxx
- support ident-button and volume for dme idents
- use globals.get_aircraft_position instead of properties
- some minor cleanup
2011-09-15 21:28:30 +02:00
Torsten Dreyer
9cef27f5ca Refactor morse and beacon as singleton 2011-09-13 20:12:52 +02:00
ThorstenB
cc020fe9df Avoid excessive load when no navaids are in range
When no navaid is found, '_ref_navaid_id_node->setStringValue("")' results
in a listener firing, which requests another navaid update when no navaid
is available.
=> Resulted in FGPositioned::findClosest being called in every update loop,
when no navaid was within range.
2011-08-24 23:17:05 +02:00
ThorstenB
0b04bf9cdd #393: Vertical speed indicator affected by sim speed up
VSI showed incorrect values with sim speed-up factors != 1.
Time dt must be corrected by sim speed up factor.
2011-08-06 12:54:21 +02:00
James Turner
6c52a5ac85 Fixes for include-file flattening - condition.hxx no longer pulls in props or props_io 2011-07-30 10:47:28 +01:00
Torsten Dreyer
eab9a65ebc Fix some gcc warnings 2011-07-17 19:31:28 +02:00
ThorstenB
4fd1e219a4 #348 related: More places where missing files were not reported properly
Whenever resolving a (relative) path to an absolute path with
'resolve_maybe_aircraft_path', check if the result is empty and report original
(relative) path as missing. Otherwise no or a meaningless message is
issued ("File '' not found.").
2011-07-03 13:06:41 +02:00
ThorstenB
b2c03e4efc #178: improve normalization issue (avoid loops altogether)
thanks to Torsten
2011-06-26 19:05:28 +02:00
ThorstenB
68dec9af2d #178 related: avoid sim from freezing when FDM goes wild 2011-06-26 16:18:36 +02:00
James Turner
2b967608a0 Expose FGPositioned data via property tree, and make comm-stations a real FGPositioned subclass. 2011-06-01 17:45:22 +01:00
James Turner
b357dd7ac3 Remove remaining use of fabsf() from the code, avoid an OSG header issue on OS-X. 2011-05-22 16:30:18 +01:00
ThorstenB
f82caf49a3 Fix #109: Seg faults caused by wxradar with ARC display mode (aerostar700)
Fixes an ugly issue with OSG overwriting memory/stack. wxradar triggered
the issue in display mode "ARC" - since it configured a display mask (12
vertices) but all vertices were immediately removed again ("_vertices->clear()").
Issue is fixed, mask now working - however the mask wasn't even properly
aligned for the display (probably never worked since OSG port). The display
mask is only really required for weather display - so disabling for now.
2011-05-22 11:02:15 +02:00
James Turner
59fe23dcb3 Change occurrences of fabsf to fabs - part of tracking down an osg/Math issue on Mac with XCode4 2011-05-21 13:41:43 +01:00
Torsten Dreyer
76ea9a7968 Remove unused class SGEnviro
This class and their source files visual_enviro.[h|c]xx were
unused since OSG transition. It's only functionality was to
keep a variable for the enable-state of rendering of precipitation.
This has now been moved to SGPrecipitation.
This patch also removes all references to this class and
visual_enviro.hxx. Wxradar needs a new implementation for cloud
echoes which probably should be part of fgclouds.

See also SimGear commit 4e6159aa07f2817c09fad72db64d713e47f6f3da
2011-05-06 14:12:17 +02:00
ThorstenB
e42a8f597c Automatic tower positioning
New "auto-position" switch to always use closest tower for tower-view.
Exposes new "/sim/airport/closest-airport-id" property.
Display closest airport on groundradar by default.
2011-04-18 22:54:33 +02:00
ThorstenB
badec14d27 Cut&paste voiceplayer into a separate module.
GPWS and TCAS are now completely separate - but use the same voice player.
2011-03-09 23:49:25 +01:00
ThorstenB
59f2328551 Used tied property list. 2011-03-09 23:10:55 +01:00
ThorstenB
18ada05d41 Fix navreceiver to make DME work with ILS signals.
Property "dme-in-range" should also work with ILS signals, which include
a DME. The nav database (dme_list) doesn't have separate entries for
"ILS-DME" (unlike for "VOR-DME"), so searching a DME by frequency didn't
work for ILS.
=> "instrumentation/nav[*]/dme-in-range" can now be used to enable/disable
cockpit DME displays.
2011-03-09 22:04:03 +01:00
Torsten Dreyer
1050a35d92 prepare for subsystem_mgr.hxx no longer including props.hxx
subsystem_mgr.hxx will soon no longer include props.hxx since it
does not (need to) know about properties at all.
2011-02-27 12:53:47 +01:00
ThorstenB
645ef8036a TCAS clean-up.
Change default voice samples.
2011-02-25 21:12:35 +01:00
ThorstenB
27a0ff5442 Added tracker stage to TCAS.
Added relative/absolte altitude display mode to wxradar.
2011-02-25 21:12:35 +01:00
ThorstenB
b6eba5ce65 New TCAS display mode for wxradar.
- new mode to display traffic in TCAS-style
- select symbols according to TCAS-threat level
2011-02-25 21:12:35 +01:00
ThorstenB
bdd931aed9 Introduce new TCAS instrument
- implements a TCAS II v7.0
2011-02-25 21:12:35 +01:00
ThorstenB
dd7c88b8cb Make voiceplayer independent
- former mk-viii voiceplayer is now an independent FGVoicePlayer
- voiceplayer still sits in mk-viii module for now
- add option to configure location/prefix of voice samples
- add pause/resume to voiceplayer
2011-02-25 21:12:34 +01:00
ThorstenB
6cd0e5aac4 Merge remote branch 'origin/releases/2.2.0' into next 2011-02-19 12:00:43 +01:00
ThorstenB
118d8fbca5 #84: John Denker: Set correct file modes
Sources shouldn't be executable.
2011-02-19 11:55:43 +01:00
ThorstenB
3c3f3a096e John Denker: move branch cut and apply clamps
fixed un-normalized outputs
2011-02-16 19:53:10 +01:00
John Denker
214919da20 More accurate, more symmetrical computation of tangent vector. 2011-02-16 19:44:23 +01:00
John Denker
02f42b8816 fix up some comments 2011-02-16 19:44:14 +01:00
John Denker
54fb3b64d0 Implement gs-direct-deg property.
Useful when posing aircraft for pictures, not quite on glideslope.
2011-02-16 19:34:38 +01:00
ThorstenB
133cfbfa7f Fixed several compiler warnings
uninitialized or unused variables, init sequence, ...
2011-02-02 22:05:54 +01:00