1
0
Fork 0
Commit graph

846 commits

Author SHA1 Message Date
Torsten Dreyer
cadb77b18d use flite+hts for metar 2014-04-24 20:59:08 +02:00
James Turner
849c6ccc6e GPS fixes
- fix corrupted ident on Mac (libc++ issue)
- don't clear scratch when activating DTO mode
- use the real navaid/airport for the waypt where possible
- expose active waypt name
2014-03-16 16:20:03 +00:00
Torsten Dreyer
75933d3e1e add min/max freq to the frequencyformatter 2014-03-14 15:19:23 +01:00
Torsten Dreyer
275d2dc7fa Partial fix #1408 2014-03-12 21:21:56 +01:00
Thomas Geymayer
c7c9fd67aa TACAN: fix distance calculations and some other problems.
- Calculate line of sight distance instead of distance over
   ground
 - Do a nav cache update if carrier_nav.dat.gz timestamp has
   changed
 - Allow comments in carrier_nav.dat.gz
 - "Fix" range calculations (still does not take terrain/weather
   and other influences into account)
2014-03-02 16:52:00 +01:00
Thomas Geymayer
5151f7f5e0 TACAN improvements.
- Make search interval for new mobile tacan larger.
 - Continuous update of mobile tacan position.
2014-03-02 01:34:04 +01:00
Thomas Geymayer
234e2bdf09 TACAN/mobile navaid cleanup and improvements. 2014-03-01 20:19:06 +01:00
Torsten Dreyer
0c7f21a259 New ATIS System: Fallback for no-realwx and some fixes
Added the fallback for realweather fetch disabled, creating
ATIS from present weather
Fixed some formatting errors, mainly missing spaces
Some code cleanup
2014-03-01 12:44:01 +01:00
Torsten Dreyer
5e080c1e37 Fix wrong metar assignment in commradio 2014-02-28 22:36:29 +01:00
Thomas Geymayer
e34d97796c TACAN: fix receiving mobile TACAN. 2014-02-28 20:01:09 +01:00
Torsten Dreyer
dd6cccdda1 A new comm radio and atis implementation 2014-02-28 11:45:49 +01:00
Christian Schmitt
7e8ee5a3a8 fix another crash at the poles 2014-02-07 23:29:06 +01:00
Christian Schmitt
6cadc2cf40 Simplify some SGGeod-related calculations 2014-02-05 23:07:43 +01:00
James Turner
27c58ddb21 Tacan: avoid a 'long-range' wgs84_inverse
- Only check mobile distance at all, if the mobile is valid
2014-02-04 14:54:39 +00:00
James Turner
34433c1fa1 GPS: fix bad init when far from any airport 2014-02-04 14:53:42 +00:00
James Turner
c6541e9c8f Remove some debug log calls.
All places which continuously log messages (either every frame or at
least every second) tending to swamp other log output.
2014-01-23 13:49:58 +00:00
James Turner
2df74c9b63 Silence some clang warnings.
(Unused private variables)
2014-01-19 16:49:43 +00:00
James Turner
976f3115a9 GPS bug fix: restore startup mode.
- the 'default to current airport' behaviour got broken by the
changes to the scratch. 
- expose a 'valid' flag on WP1
2014-01-14 13:04:52 +00:00
James Turner
ea822a99e1 Fix some warnings identified by Clang
_ unused private members. Removed in most cases, commented
out in a couple of cases where it feels as if the code might be used in the future.
2013-11-16 09:41:33 +00:00
Torsten Dreyer
6a09f01ca9 mag-compass: add deviation table and pitch property 2013-11-05 22:26:50 +01:00
janodesbois
ef1ec369db gsdi correction, wind correction is not needed anymore, as wind composant was removed from u,v,wbody-fps 2013-10-27 13:24:57 +01:00
Dirk Dittmann
778cc8c6a0 GPS
- greatCircleCrossTrackError added to LegWayptCtl, DirectToController, OBSController
	- config overflight seqence
		config/over-flight-arm-angle-deg	90
		config/over-flight-arm-distance-nm	1
		config/over-flight-distance-nm		0
2013-10-03 18:08:02 +02:00
Clément de l'Hamaide
023c136d40 Fix spelling error by Markus Wanner 2013-09-23 01:02:10 +02:00
James Turner
b24d8f2159 From Jano: fix HUD ladder aspect. 2013-09-05 08:29:20 +01:00
Tom Paoletti
81cd33e2fa Performance optimization: empty() instead of size()>0
empty() is guaranteed to be constant complexity for both vectors and lists, while size() has linear complexity for lists.
2013-08-19 09:01:59 +01:00
James Turner
be44fa45eb Kill some defunct uses of side-slip property. 2013-07-29 22:15:23 +01:00
James Turner
5d9faee463 More unused vars caught by Xcode. 2013-07-04 20:56:04 +01:00
James Turner
6acf1c12fc Fix unused private vars.
Xcode is warning about these, they're a mixture of
copy-pasted code, evolved use (e.g. using a property
node to store state), and so on.
2013-07-04 20:24:56 +01:00
James Turner
b1b6d2f6e2 Namespace fixes for std::string 2013-06-27 09:53:12 +01:00
James Turner
5ac8bc01a1 Fix issues with explicit GPS instruments.
For 2.12, ensure all GPS instruments are backwards
compatible, however they were requested. Post release we can create a new instrument name with the compatibility code disabled.
2013-06-17 18:11:47 +01:00
James Turner
26a8ffb44e GPS: work around aircraft with missing power.
This restores compatibility with 2.10 and previous versions,
where even explicit (non default) GPS ignores power requirements.
2013-06-16 22:21:41 +01:00
James Turner
313b31ad9a Fix a couple of issues valgrind identified. 2013-06-02 19:59:18 +01:00
James Turner
def81b4de5 Restore GPS compatibility with 2.10
There's a sufficiently large installed base, that simply dropping this
API is not acceptable. A Nasal shim might be possible, but in the
interim, restore the C++ functionality.
2013-05-27 22:56:12 +01:00
James Turner
e2a05c64b5 Bug 1122, transponder ident.
Don't fall through to digit-decoding on ident button release.
2013-05-27 15:59:47 +01:00
James Turner
0422ea5672 Off-by-one spotted by Clement. 2013-05-12 11:36:33 +01:00
James Turner
915626afa7 Altimeter node tweaks.
Fix the default name based on whether a regular altimeter or
encoder was requested, and delay creating the node until bind(), ctor
is too early.
2013-05-11 18:35:54 +01:00
James Turner
06dd219a83 Transponder instrument replaces KT-70.
Generic transponder can emulate KT-70 props. These emulated props
will likely die in the future, based on feedback from aircraft devs.

See (upcoming) Wiki docs on the transponder for more info.
2013-05-11 16:15:36 +01:00
f-jjth
977cfb77b5 Improve transponder instrumentation: new version 2013-05-10 19:04:53 +01:00
Hyde Yamakawa
98bfbb9560 Fix of Issue#1084. Input for this calculation should be actual GS deviation angle. Should not be scaled value. 2013-05-08 22:09:26 +01:00
James Turner
e89df85817 GPSs uses FlightPlans directly. 2013-04-09 10:20:02 +01:00
Christian Schmitt
7795fa6ffa mk-viii: tweak some values (according to spec), improve bias calculation.
Should now give less unjustified "too low - terrain" messages.
2013-03-29 20:39:00 +01:00
Christian Schmitt
db5a39e305 Issue 1090: Adapt the mk-viii instrument code to the new internal runway scheme.
Clean up some unneeded functions as well and make use of standard simgear functions where possible.
This whole thing could need a rewrite...
2013-03-27 22:26:46 +01:00
James Turner
015732db33 Fix un-inited vars found by valgrind.
All benign, but good to get fixed.
2013-03-17 13:22:30 +00:00
Eric van den Berg
2a2beec658 improved mechanical VSI model, it now lags and displays wrong at
altitude
2013-03-16 13:35:34 +00:00
Thomas Geymayer
3047c316dc Clean up/simplify NasalPositioned_cppbind
Ensure all FGPositioned related functions return SGSharedPtr
instead of raw pointers to allow automatic conversion to
nasal ghosts without custom helper functions.
2013-03-06 23:21:49 +01:00
Thomas Geymayer
1c905e5881 Typos, license headers... 2013-03-06 01:04:52 +01:00
James Turner
1eb8ae1fbf Give the FGAirport class a sane filename.
simple.[cxx|hxx] -> airport.[cxx|hxx]
2013-02-21 11:32:02 +00:00
Christian Schmitt
2013f7149d Some headers missing... ;) 2013-02-07 19:00:54 +01:00
Eric van den Berg
5a8e6aeb86 calculate /systems/pitot/total-pressure on the bases of /velocities/mach
added measured-total-pressure property to account for a normal
shockwave in front of pitot tube at supersonic speeds. momentarily not
used
small unit conversion correction of inHg to hPa in altimeter
Base airspeed calculations on impact pressure in instrumentation
/airspeed_indicator
2013-01-28 16:54:35 +00:00
James Turner
143d9fe8b9 Kill off obsolete helper class in GPS code. 2013-01-22 20:50:21 +01:00
Thomas Geymayer
0e4aba11fa Fix initialization order 2013-01-22 20:33:17 +01:00
James Turner
13303f96a1 Fix for namespace scope. 2013-01-22 18:15:19 +01:00
James Turner
1755029470 Make radar-altimeter indépendant of wxradar. 2013-01-22 18:12:39 +01:00
James Turner
369e6b564f Flightplan delegate hook for clearing the FP.
This allows delegates to take action when the flightlan is cleared, and especially, for the default delegate in the route-manager to deactivate itself, and hence the GPS LEG mode - which fixes bug 940 I hope.
2012-12-31 17:39:52 +00:00
James Turner
8aa05a871a Make the GPS quieter at log-level info. 2012-12-29 14:47:23 +00:00
James Turner
34e8181cc9 Bug 941, lower minimum speed for GPS sequencing.
10kts is fine, apparently some people 'fly' very slowly.
2012-12-29 13:46:29 +00:00
James Turner
d311045018 Bug 974, GPS exceptions at end-of-route.
One of the two route termination conditions was improperly handled, leading to bad leg/wpt indices and exceptions from the GPS code. Detect passing the final waypoint in a more robust way now. 

Also fix the GPS code to avoid turn computation on the final leg.
2012-12-29 13:45:27 +00:00
James Turner
51a1c86f00 Quiet some log output. 2012-11-20 17:08:56 +00:00
James Turner
93237f1b37 Avoid a dependency on the environment-manager.
Change the ASI Mach computation (written by me) to use properties, instead of depending directly on the environment-manager.
2012-11-19 23:17:03 +00:00
ThorstenB
a784443a24 Remove static property dependencies
preventing us from wiping properties on reset/reinit/subsystem recreate.
(more work required for "native_gui" and "ATC-Outputs" protocols)
2012-11-18 16:35:54 +01:00
ThorstenB
1d99401c04 Remove osg dependency for isNaN only. 2012-11-11 17:22:42 +01:00
James Turner
18e3fc0c82 Bug 921
Fix GPS search functionality, I mixed up the SQlite wild-card operator.
2012-11-08 18:31:16 +00:00
ThorstenB
d15d2ad270 Jean Pellotier: don't show markers for invalid targets in HUD
Don't show invalid AI/MP models in the HUD (after they were removed from
the scene).
Also, when a radar is installed, consider radar/in-range for HUD display.
2012-11-01 15:31:05 +01:00
ThorstenB
ccb890447a Improve gyro heading indicator failure simulation
Error/offset induced by precession and yaw also depend on spin (no spin =>
no additional error/offset).
Error/offset induced by changing a/c orientation while gyro spin is
low (<<1) should apply to the "offset" (instead of "error") property.
2012-10-07 20:47:50 +02:00
James Turner
4994973ef4 Separate instruments from cockpit displays. 2012-10-05 18:13:50 +01:00
James Turner
7b8804bd40 Tolerate refactored SGSound headers.
An upcoming commit will make the sound headers standalone, and no longer include various other headers / using std:: declarations. Prepare for this by making includes and usage of namespaces explicit.
2012-09-30 19:40:08 +01:00
James Turner
8e3314a7ec Make the radio interpolation tables static.
No need to read these again for each navradio - and the marker beacon doesn't use them at all.
2012-09-26 23:10:37 +01:00
James Turner
872e84d827 Make HUD items private to the subsystem.
Make the HUD independent of the instrument manager, and push most of the declarations from the header into a private header.
2012-09-26 17:02:11 +01:00
James Turner
649d579124 Helpers to access view position.
Avoid direct use of FGViewer in various places, by providing property-based accessors to the current view position.
2012-09-25 10:06:56 +01:00
James Turner
6c6452c62b Adapt to revised SGTime API
Convert SGTime users to pass SGGeod/SGPath instead of raw values.
2012-09-24 00:03:23 +01:00
ThorstenB
0f3fecf0c6 Fix NavDisplay segfault
When "addSymbolInstance" returns NULL, we cannot update "ins->endPos".
2012-09-22 14:23:15 +02:00
Thomas Geymayer
4a94071ed7 Canvas: Performance improvements.
- Only render the canvas if something has actually changed
   (Currently checked by looking for modified properties).
 - Only write bounding box to property tree if it has been
   recalculated (until now this happened every frame).
2012-09-21 22:03:58 +02:00
ThorstenB
db3c70e235 Improve readability. 2012-09-21 16:44:16 +02:00
ThorstenB
002cada172 gyro heading indicator: realism when spin is low
Low spin or switched off gyros result in the indicator being stuck.
When the gyros are repowered, the indication doesn't jump to the correct
indication, but keeps the current error.
2012-09-21 15:59:04 +02:00
ThorstenB
f8b689c040 Allow instruments/systems to reset on sim reset
so they can instantly adjust to the changed environment.
(Not fully working yet, since some environment settings, like environemnt
pressure/temperature, still changes slowly after a sim reset - instead of
immediately jumping to the new setting. Also, METAR sometimes arrives too
late...).
2012-09-19 20:57:52 +02:00
James Turner
9b900e9430 Implement a persistent cache for navigation data.
Cache the parsed navigation and airport data in a binary file to reduce
startup times and memory consumption (since only referenced FGPositioned
elements are held in memory).

Data will be reimported when the mod-time of any input file is changed.
If a global file is changed (nav.dat, awy.dat, apt.dat, etc), the cache
will be completely rebuilt, which takes approximately 30 seconds on
moderate hardware. (Future work may reduce this).
2012-09-19 11:38:19 +01:00
James Turner
48c26079e1 Fix classes derived from SubsystemGroup.
Various classes derive from SubsystemGroup, but extend the init behaviour. Fix those for the incremental init scheme, generally by forcing their init to be atomic. Can convert them to be truly incremental in the future if it's needed, but probably not.
2012-09-19 11:37:19 +01:00
James Turner
505796e349 Make magavr a regular subsystem.
Remove various hacks and make magvar work like a normal subsystem, as part of the environment manager. Fix the remaining users of the globals->get_mag accessor, and hence kill off the global pointer.
2012-09-18 00:58:27 +01:00
ThorstenB
043128c7c0 Prepare and implement reinit methods for instruments
to clear error conditions, drifts, offsets etc
2012-09-17 13:45:30 +02:00
Mathias Froehlich
26664aaff0 Push SGMaterial use into these classes that need it. 2012-08-29 06:29:29 +02:00
Mathias Froehlich
e3ad3d3a07 bvh: Adapt to upstream bvh changes in simgear. 2012-08-24 21:24:12 +02:00
James Turner
7fabeed85d Fix some places relying on public 'using std::string' in SimGear
(Otherwise my next SimGear commit will break them)
2012-08-21 17:07:47 +01:00
ThorstenB
a3e76909ee Christoph Korn/PlayDeb.net: fix typos 2012-08-17 23:51:30 +02:00
Thomas Geymayer
8a6a234653 Canvas: First version of new Canvas GUI system.
- Refactor CanvasMgr into PropertyBasedMgr to be also used
   for the Canvas GUI system.
 - Get rid of tied properties in the Canvas system.
 - Add new placement type 'window' for placing canvases onto
   windows
 - Pass mouse events to Window class (only if cursor is over
   window)
 - Refactor canvas placement clean up
2012-07-31 23:19:23 +02:00
Thomas Geymayer
91c3f63110 Canvas: UTF-8 support and more settings exposed.
- Allow hiding objects
 - Use UTF-8 encoding for text elements
 - Add paramter max-width to text elements
 - Support stroke-linecap for path elements
 - Fix mouse coords
 - Set better mipmap filter
2012-07-31 23:19:23 +02:00
Thomas Geymayer
373d511c69 Canvas: Allow using canvases as PUI widgets.
- Add new widget type canvas
 - Set canvas view dimension from the gui xml.
 - Expose mouse events to canvas widget properties.
2012-07-31 23:19:22 +02:00
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