David Luff:
The one to fg_init.cxx initialises the AI subsystem regardless of whether it's enabled or not so that later enabling by the user doesn't crash it, and the one to main.cxx avoids running the ATC manager and ATC display system unless enabled.
Updates to the controls properties tree. This is a major update so there may be one or two 'old' refferences left. To simplify the transisition there is a file called README.properties in the docs-mini directory of FlightGear that explains the new controls layout.
Previously if a freq search matched an ILS that had no dme, it would
proceed to search for an VOR of that same frequency. On rare occasion
this search could return true with a far distant VOR and cause a small
amount of confusion.
curt [Mon, 31 Mar 2003 01:29:23 +0000 (01:29 +0000)]
I found 3 problems with the GS modeling in flightgear (all my fault originally
I believe.) :-)
- The height of the navaid was not being properly converted to meters
before being used in our internal calculations. This caused the GS
to be placed too high.
- I was using the wrong trig function to calculate the current approach
angle of the aircraft. The distance to the GS source is the euclidean
point to point distance and represents the hypotenuse (not the ground
distance) so I need to use asin() rather than atan() to calculate the
angle.
- I was calculating distance directly to the GS source, rather than
taking into consideration that the GS transmitter projects a plane,
so I need to take the distance to the line where that plane intersectso
the ground. Previously, the way I modeled my distance calculation, the
GS transmitter effectively formed a 3 degree cone from the source. The GS
transmitter is usually placed a 100 meters or so off the runway edge so
the cone model could never bring you in to the touch down point precisely.
With these changes, the GS will bring you in precisely to the touchdown
point as defined in the default.ils.gz file (it wouldn't before.) The only
issue that remains is that it will bring you in to the elevation defined
in the ILS database, which doesn't necessarily match the DEM/SRTM terrain
at that point. Still on average, this will be a big improvement until we
can do a better job of getting the runway end elevations nailed correctly.
curt [Sun, 30 Mar 2003 02:26:05 +0000 (02:26 +0000)]
There were several typos in the unbinding section of FGInterface. This meant
that after a reset or reposition, several FDM variable were not unbound
correctly and left dangling pointing to unallocated memory. This wasn't
a crash type bug, but those properties then had bogus values. This
specifically prevented the turn coordinator gyro modeling from working after
a reset or reposition.
daveluff [Fri, 28 Mar 2003 15:25:48 +0000 (15:25 +0000)]
Calculate active runway in FGGround. It would be better to get the active runway from FGTower instead of duplicating the code to calculate it, but at the moment I can't guarantee that tower control at a given airport will be initialised before ground control, so this will have to do for now...
ehofman [Sat, 22 Mar 2003 14:52:15 +0000 (14:52 +0000)]
Remove old if..then..else kludge an favour of Frederic Bouvier's new code. This also fixes a problem with MultiPlayer options being defined in the wrong place
ehofman [Fri, 21 Mar 2003 15:02:23 +0000 (15:02 +0000)]
Andy wrote:
This is just a port of an old 3D HUD patch to the new view code.
This pans the HUD with the view, by pasting it onto a quad fixed in front of the viewer. It also fixes the awful, arbitrary scaling problems the HUD code has. The old HUD only looks right when viewed at 1024x768 and 55 degree FOV. This works the scale out magically so that it looks right in all views. It also redefines the "<compression-factor>" tag in the ladder to (1) mean compression instead of expansion and (2) have non-psychopathic units (now "1" means 1 degree per degree). Fix this in your existing HUD ladder files before reporting bugs. It's definitely a cosmetic win -- the velocity vector points at the right thing and the horizon lines up properly.
Norman wrote:
I have created a modified version of Andy's patch that implements the 3D HUD as the 'normal' and the 2D HUD as the 'minimal' HUD. < i > and < shift I > keys
ehofman [Thu, 20 Mar 2003 09:38:06 +0000 (09:38 +0000)]
David Luff writes:
I've fixed a bug in FGRunways::search(aptid, tgt_hdg) which wasn't working properly for airports with multiple parallel runways. I've also firmed up and pulled out into it's own function the GetReverseRunwayNo code, and done some input checking.
As a result of fixing the above in runways.cxx, I've pulled out the
parallel implementation in the functions that set position by airport and
heading/runway number in fg_init.cxx and called the runways functions
instead.
daveluff [Mon, 17 Mar 2003 11:32:51 +0000 (11:32 +0000)]
Add the ability to scroll single ATC messages - this is toggled using property /ATC/display/scroll-single-messages (off by default). Also increased the time that single messages are displayed in non-scrolling mode - this makes ATC transmissions easier to read.
david [Sun, 16 Mar 2003 21:14:45 +0000 (21:14 +0000)]
Added a new turbulence type ttStandard, and made it the default.
ttStandard is copied from ttBerndt, with the following modifications:
1. All turbulence is diminished within three wingspans of the ground.
2. The horizontal forces are used to calculate the moments, but then
zeroed out so that only the vertical force is actually applied to
the aircraft.
3. The yaw moment is not used.
In fact, the horizontal forces and the yaw moment should be allowed,
but they are extremely rare compared to the vertical force and the
pitch/roll moments. For now, simply zeroing them gives the most
accurate feel.
daveluff [Mon, 10 Mar 2003 13:41:37 +0000 (13:41 +0000)]
Start roughing in interactive tower control. AI planes now get the ground control pointer through tower control, which then handles the difference between larger airports with separate ground and smaller ones where tower handles it
daveluff [Sun, 9 Mar 2003 17:39:44 +0000 (17:39 +0000)]
FGAIMgr now searches for proximity to airports with logical networks defined at startup and periodically thereafter, and only starts AI traffic when a suitable airport is found in range (currently only KEMT). In theory it should now be possible for a user to drop in a *.taxi file in my undocumented-shortly-to-change format into fgfsbase/ATC and have an AI Cessna appear at that airport and fly a circuit if they start there or fly near there. In practice its probably better until we start using the output from Bernie's taxiway editor, and there's bound to be glitches once other networks are tried
daveluff [Sun, 9 Mar 2003 17:35:16 +0000 (17:35 +0000)]
Added a range parameter to the FindByPos search function, also fixed a bug whereby one too few buckets in the North and East direction were searched - hence when only one bucket should have been searched none were
david [Sun, 9 Mar 2003 03:34:29 +0000 (03:34 +0000)]
Major change:
The "switch" layer type now takes any number of child layers, and will
use the first child that has a condition that evaluates to 'true' (no
condition is automatically true). Previously, it could take only two
children, controlled by a boolean property.