1
0
Fork 0
Commit graph

3002 commits

Author SHA1 Message Date
ehofman
d53b612e2a Move the texture loader to SimGear 2003-04-09 20:28:42 +00:00
david
e4dc8fc3fd Improved tumbling behaviour -- the AI doesn't just freeze now, but
appears still to be indicating.

Added a 'caged' property to the AI, for aerobatic work.

Temporarily disabled tumbling due to pitch, until I can learn more
about it.

Publish the current amount of tumble (-1.0:1.0) under
/instrumentation/attitude-indicator/tumble-norm.
2003-04-05 14:37:12 +00:00
ehofman
cbf244aeda Add a function declaration 2003-04-05 13:05:24 +00:00
david
27d5965703 Use "coverage" instead of "type".
Rename "mostly-cloudy" to "broken" and "mostly-sunny" to "scattered",
to follow standard weather terminology.

Add "few".
2003-04-05 03:33:01 +00:00
david
807bcfb8e0 Removed debug statement.
Added return statement.
2003-04-05 00:30:38 +00:00
david
64e81d1960 Make sure values get back to FGInterface, in case we're not trimming.
This is especially important for setting multiple values like Euler
angles.
2003-04-04 22:44:32 +00:00
david
eff59b94a6 Do not allow the dewpoint to be higher than the temperature. 2003-04-04 22:38:55 +00:00
david
7543355d17 Add new property-randomize command.
Set a random value for a numeric property

Params:

  <property> - the name of the property to randomize
  <min> - the minimum allowed value
  <max> - the maximum allowed value
2003-04-04 22:38:35 +00:00
david
abf660ecef Make the turn indicator a little less responsive, again. 2003-04-04 03:25:27 +00:00
david
ad6236cbe7 Add the ability for the AI to tumble in extreme attitudes, if
/instrumentation/attitude-indicator/config/tumble-flag

is true.  The AI will take up to five minutes to reerect itself
completely.
2003-04-04 03:25:02 +00:00
curt
d82ce71d28 Tweak to the --atc610x option. 2003-04-02 14:56:21 +00:00
curt
b5f7761861 Fixed a remaining typo from the death and destruction earlier today.
Added an option to avoid using non-existant rudder pedals if they truely
non-exist.
2003-04-02 03:45:08 +00:00
curt
0620fed54a Switch to snprintf() to add an additional small measure of safety until
someone rewrites this file without needed a printf() varient at all.
2003-04-01 19:14:08 +00:00
curt
ec5609ef43 You bastards! Writing property names to char arrays that are too short for
the data you are putting in it. :-(  Fixed ...
2003-04-01 18:50:46 +00:00
ehofman
5454a4f281 Set the initial log-level back to info 2003-04-01 18:45:34 +00:00
ehofman
acf65e6ff4 Fix another controls overhaul problem 2003-04-01 16:56:13 +00:00
david
7ba6807736 Fix to use renamed /controls properties. 2003-04-01 15:51:15 +00:00
david
726d97be3c Removed old menubar option. 2003-04-01 15:50:51 +00:00
ehofman
cdd7998c90 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.
2003-04-01 13:42:10 +00:00
ehofman
c3cefaf883 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. 2003-04-01 12:43:18 +00:00
ehofman
a6c1632298 Fix a small problem which crept in after a late night session 2003-04-01 08:36:09 +00:00
curt
d3f6354332 Return code to it's original form which works around an idiosyncracy in
our data.
2003-04-01 04:13:02 +00:00
curt
d25fa96db3 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.
2003-04-01 03:44:20 +00:00
curt
fe3283eb12 Updated to work with new instrumentation version of dme. 2003-04-01 03:42:51 +00:00
daveluff
541ff04072 Fix of framerate drop due to broken OnActiveRunway function - don't read in the runway.mk4 file (~1MB) every frame 2003-03-31 16:24:41 +00:00
daveluff
3f53eaeaa7 Add width to ATC RunwayDetails structure 2003-03-31 16:23:49 +00:00
daveluff
fa094c9980 Slight change of function api 2003-03-31 16:23:23 +00:00
daveluff
e4e6864613 Emergency fix of framerate problem 2003-03-31 09:51:36 +00:00
ehofman
7de4466897 Change some cerr messages into SG_LOG messages 2003-03-31 09:36:49 +00:00
ehofman
891e83809e Remove an unnecessary check. This is done in fgPanelVisible already 2003-03-31 08:36:49 +00:00
ehofman
58937e7e6b Fix a bug where current_panel was called before it was initialized properly 2003-03-31 08:25:00 +00:00
curt
67ad32267f Sorry, left in some debugging statements, now removed. 2003-03-31 01:35:26 +00:00
curt
5df9811576 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.
2003-03-31 01:29:23 +00:00
ehofman
7948238156 Declare fgReshape into gui.h 2003-03-30 19:40:43 +00:00
ehofman
729a3b9af7 Cache some nodes 2003-03-30 16:49:48 +00:00
ehofman
1f8da4224c Change the log level of somme messages which can harldy be called allerts 2003-03-30 13:30:25 +00:00
ehofman
cf7839a67b Second update in attempt to create an aircraft selection dialog
New panels are loaded now
  New 3D model gets loaded
  Reinitialize more subsystems
  Add reinit() to FGFX, sound gets reinitialized

  Still a lot needs to be done though.
2003-03-30 12:49:05 +00:00
ehofman
4b62426109 Move current_panel to globals 2003-03-30 12:46:08 +00:00
curt
68522eb75c 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.
2003-03-30 02:26:05 +00:00
curt
2bf14d785f Removed static inline qualifiers to the fgLoadAircraft definition. 2003-03-29 22:09:28 +00:00
ehofman
37c427558a A first stab at an aircraft selection dialog 2003-03-29 15:04:52 +00:00
david
159bcc4401 Make the turn indicator more responsive. 2003-03-29 14:19:12 +00:00
curt
a552e3bc82 If the main frame rate is less than the requested io rate, don't send multiple
copies of the same data for the sole purpose of faking it.
2003-03-29 03:43:39 +00:00
curt
652863db06 Fix a typo (specified analog in channel 39 rather than 29.
Various other tweaks.
2003-03-29 03:39:52 +00:00
curt
7f28165daf Added a property /sim/rendering/draw-otw which specifies whether or not
we want to draw the out-the-window view (defaults to true in properties.xml)
2003-03-29 03:21:48 +00:00
curt
db46791c48 Don't start paused for in air starts. 2003-03-29 03:19:35 +00:00
curt
fcf6021f76 Add a property which specifies if the current nav station has a glideslope. 2003-03-29 03:19:03 +00:00
curt
49cace7a21 Fixed intermittant marker beacon audio. 2003-03-29 03:18:17 +00:00
daveluff
657dfefec0 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... 2003-03-28 15:25:48 +00:00
daveluff
b19e54c78a Moved the RunwayDetails struct definition out of tower.hxx to ATC.hxx 2003-03-28 15:24:02 +00:00
daveluff
d936531600 Initialise user lon, lat and elev 2003-03-27 15:46:23 +00:00
daveluff
9efdc3030e Some fixes to Alexander's pop-up dialog box 2003-03-27 15:45:48 +00:00
daveluff
e5dbeccc58 Log to SG_ATC instead of SG_GENERAL and cout 2003-03-27 15:45:20 +00:00
daveluff
55daa52f79 Pass dt to update(...) 2003-03-27 15:44:35 +00:00
daveluff
559b134878 Start interacting with ATC (still somewhat rudimentary) 2003-03-27 15:44:10 +00:00
daveluff
7fc214fab3 Progress towards interactive ATC... 2003-03-27 15:41:09 +00:00
curt
4eadfc4233 Added support for toe brakes
Added support for instrument panel pots
Just default circuit breakers to on.
2003-03-27 02:57:31 +00:00
ehofman
2b151fd7f3 Latest MultiPlayer updates 2003-03-26 14:12:17 +00:00
ehofman
9914cfa93c Latest MultiPlayer updates 2003-03-26 14:06:51 +00:00
daveluff
a4ea7c7561 Oops - let some DOS line endings creep in - quickly get rid of them before Erik notices... 2003-03-26 10:02:32 +00:00
ehofman
5355d1b048 Add a generic, configurable communiction output option 2003-03-25 18:47:30 +00:00
daveluff
81c9e14c7e MSVC fix from Frederic Bouvier 2003-03-24 11:06:00 +00:00
daveluff
3be0e17e66 Remove un-needed typedef 2003-03-24 11:05:25 +00:00
ehofman
b71e0774d6 Make spoilers and speed-brake position accessible 2003-03-24 10:44:45 +00:00
ehofman
60283d19bb Add speed-brake and spoilers controlls 2003-03-24 10:04:19 +00:00
tony
1a50c56d5e Updates from JSBSim, including new turbine engine model from David Culp 2003-03-23 15:12:35 +00:00
ehofman
0fe7c2452c MultiPlayer updates for MSVC from Frederic Bouvier 2003-03-23 10:08:47 +00:00
ehofman
ef37b45dc7 Frederic Bouvier's assorted set of MSVC fixes 2003-03-23 09:59:46 +00:00
ehofman
2d0cc7e1a8 Latest MultiPlayer updates 2003-03-23 09:51:28 +00:00
ehofman
1b450bee25 Make callsign parameter aware 2003-03-22 15:43:24 +00:00
ehofman
9ef6b16054 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 2003-03-22 14:52:15 +00:00
ehofman
0782e877a9 Add runtime log level support 2003-03-22 10:38:15 +00:00
ehofman
d2583bb172 Add comma to log statement 2003-03-21 22:22:33 +00:00
ehofman
46d48f7f98 Add logstream header files when using SG_LOG() 2003-03-21 21:12:12 +00:00
curt
3ade4d02e6 Removed SG_USING_STD(for_each) to make MSVC happy(er). :-) 2003-03-21 21:09:21 +00:00
curt
2e90248df8 Make error message slightly more informative. 2003-03-21 20:39:59 +00:00
curt
f4ccd7dfe2 Remove some compiler warnings. 2003-03-21 20:39:27 +00:00
ehofman
10e9877d83 Latest episode of the MultiPlayer saga 2003-03-21 20:33:41 +00:00
curt
4184882757 Add missing #include <algorithm> which provides a prototype for for_each() 2003-03-21 19:41:04 +00:00
ehofman
6e6bbc8197 Fix a small problem where multiplayer support was added to network support unconditionally 2003-03-21 18:47:24 +00:00
ehofman
4c55a5aeb4 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
2003-03-21 15:02:23 +00:00
ehofman
076e9878d1 Fix a typo 2003-03-20 22:31:25 +00:00
daveluff
254dc934d1 Add a function to allow transmission of messages to AI entities - the actual implementation is a bit of a temporary hack at the moment 2003-03-20 11:53:44 +00:00
daveluff
6fef4d457b Load ground ATC frequency data, and map all stations by bucket index 2003-03-20 11:51:44 +00:00
daveluff
ef3b5a4d61 Minor formatting changes 2003-03-20 11:50:34 +00:00
daveluff
3364b6f19d Base length of time messages are displayed for on dt rather than iterations in order to de-couple it from frame rate 2003-03-20 11:22:08 +00:00
ehofman
df2ce45ab7 Change cout and cerr in SG_LOG() where appropriate, otherwise comment it out 2003-03-20 10:43:02 +00:00
ehofman
f2e2101264 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.
2003-03-20 09:38:06 +00:00
ehofman
c5c3095859 Add includes for MacOS X 2003-03-20 08:51:01 +00:00
ehofman
e46c59d4d0 Add multiplayer support from Duncan McCreanor and Diarmuid Tyson 2003-03-19 20:45:09 +00:00
ehofman
01be2ed8e4 Compiler warning fixes and small updates 2003-03-19 17:46:52 +00:00
ehofman
cb8b72744c Add mach number to the property tree 2003-03-19 16:06:17 +00:00
daveluff
47f46d151d 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. 2003-03-17 11:32:51 +00:00
david
b3930c9c60 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.
2003-03-16 21:14:45 +00:00
daveluff
b9985548d4 Fix a nasty problem in the FGAIMgr search code that could cause a stackdump with AI traffic enabled 2003-03-14 12:27:24 +00:00
curt
c32c8aca51 Wire frame mode got broke somehow. This seems to fix it. 2003-03-14 02:07:45 +00:00
daveluff
f74d6ec90e Whoops - left out ++itr in a while(1) loop 2003-03-13 11:44:40 +00:00
david
4d146352d7 Simplify the pitot system and ASI -- the indicated airspeed should be
more reasonable now.
2003-03-12 20:28:54 +00:00
daveluff
034f224de7 Need to call Init() when initialising tower, otherwise bad things happen... 2003-03-11 23:41:03 +00:00
daveluff
ac731cdd36 Emergency fix of a possible dereference dangling pointer path uncovered by Martin Spott 2003-03-11 17:15:23 +00:00
daveluff
46261bb51b Added a function to determine whether a point is on a given runway 2003-03-11 13:25:14 +00:00
daveluff
0333c21bbf Added a function to return the closest ATC station of a given type 2003-03-11 13:24:35 +00:00
david
2908bd995d Added simple GPS support (no waypoints yet). 2003-03-10 14:09:43 +00:00
david
f10f03fd43 Corrected some typos. 2003-03-10 14:09:26 +00:00
daveluff
aabe4da5ca 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 2003-03-10 13:41:37 +00:00
daveluff
3a2495e47a Add units to function documentation 2003-03-10 13:40:10 +00:00
daveluff
75e26663bd Fixed a compile problem that affected gcc-2.95 users on Cygwin and removed a few unused variable warnings 2003-03-09 23:04:38 +00:00
daveluff
a32c7d50bb 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 2003-03-09 17:39:44 +00:00
daveluff
a9463a8399 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 2003-03-09 17:35:16 +00:00
curt
2c20e61b4b Removed some extraneous debugging output. 2003-03-09 12:48:29 +00:00
david
191bb21888 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.
2003-03-09 03:34:29 +00:00
david
d94bd7526c Make sure that all elapsed time gets passed to update when a subsystem
has a minimum time slice.
2003-03-09 03:22:12 +00:00
david
4b78f5305f Ignore generated files. 2003-03-09 03:21:34 +00:00
david
1f7e33b73d New version of basic DME support. This can coexist with the old one
for a little while, since it uses different properties.  There are
some improvements, especially with searching and range.  It also has
its own serviceable and in-range properties, independent of any
coupled VOR.
2003-03-09 03:20:34 +00:00
curt
4223da1a4b Eeek! Emergency fix of a couple "case" problems for includes. 2003-03-07 14:42:14 +00:00
daveluff
c49a6be9bc Whoops - forgot SG_USING_STD(cout) 2003-03-07 14:06:52 +00:00
daveluff
96970dcbaf More stuff to make the AI/ATC system less hardwired and more generic. Most of the hardwired stuff is now gone - there's just a little bit left in FGAIMgr 2003-03-07 13:58:33 +00:00
daveluff
1154a0dae2 Added FindByCode (airport ICAO code) to commlist. This is basically a wrapper around Flightgear's airport lookup and FindByPos 2003-03-06 14:06:34 +00:00
daveluff
c70faa4c0d Added constructor to ATCData struct 2003-03-06 14:04:02 +00:00
daveluff
3f15f38d8d If no wind, active runway is now read-out as the most Westward facing one which is consistent with the rest of FlightGear 2003-03-05 21:40:24 +00:00
daveluff
42527ecf1b Removed a lot of the remaining hardwired KEMT stuff, made the initialisation more generic, added the ability to taxi from a parking spot to a runway, used real ground elevation more 2003-03-05 21:38:29 +00:00
daveluff
8bbaba3193 Added some airport search functions that are straight copies of a couple of statics in fg_init, and will probably be removed again at some point, and added a function to convert a runway designator string to a spoken style phrase 2003-03-05 21:34:58 +00:00
daveluff
f930c93ddb Added a function to get a path from a gate to a runway threshold, also removed some couts 2003-03-05 21:31:54 +00:00
curt
9b24a37180 David Luff:
// search for the specified apt id and runway no
bool FGRunways::search( const string& aptid, const string& rwyno, FGRunway*
r )

there was a bug, in that each runway corresponds to *two* runway numbers
(eg 01/19, 10L/28R) but the function was only checking one.  I've modified
it to check the supplied number against both possible numbers for each
runway.


Secondly, I sent in the function:

// Return the runway closest to a given heading
bool FGRunways::search( const string& aptid, const int tgt_hdg,
                        FGRunway* runway )

a year or two ago now when I first did the ATIS.  I'm not sure what I was
doing at the time (copied most of it out of fg_init.cxx) but I don't think
it's ever worked, so here's a brutal modification that does!
2003-03-05 18:02:24 +00:00
curt
92cfd383d6 Remove std:: 2003-03-04 00:25:35 +00:00
curt
11e0a3b1f8 Don't remove the named pipe on a "Reset" or position change (i.e. when
FGExternalPipe is destructed.)  This leaves the name pipe hanging around
even after flightgear exits, but assuming we put the files in /tmp that
shouldn't be a big deal.
2003-03-03 17:48:09 +00:00
daveluff
c8b8afeb78 IRIX fixes from Erik Hofman 2003-03-03 11:43:49 +00:00
daveluff
b308e92bd6 Removed DOS line endings 2003-03-03 10:38:13 +00:00
curt
dbf7218c63 A small optimization, pass the number of iterations to the remote end and
have it do all the work, rather than calling the remote end "iteration"
number of times.
2003-03-03 04:59:41 +00:00
curt
2b534ebf6d Add a net_byte_order flag so that the calling code can specify if network
byte order conversion is desired (defaults to true.)
2003-03-03 04:35:09 +00:00
curt
000e86756c Add support for --fdm=pipe,<pipe_name> 2003-03-03 04:34:27 +00:00
curt
ec9c990ae4 Add ExternalPipe subdirectory. 2003-03-03 04:33:51 +00:00
curt
cc269730a5 First stab at a "named pipe" interface to an external FDM. Compared to the
ExternalNet interface:

- allows a much more closely coupled execution.  A remote network FDM will run
  at it's own rate, and maybe a particular data packets will come, maybe it
  won't.  This makes it very hard to control timing and keep the animation
  smooth.  There are also cpu scheduling issues with running multiple
  processes on a single machine.  The linux scheduler by default runs at
  100hz.  If an FDM process uses a sleep/alarm system to avoid wasting
  CPU, it will be forced to run at 100hz, 50hz, 25hz, 20hz, etc.  This
  makes it *impossible* to serve a display system running at 60hz without
  dropping frames.

- the downside is that the FDM process must now run on the same machine as
  the master flightgear process.
2003-03-03 04:30:16 +00:00
david
648f1208f8 Patch from Frederic Bouvier:
arrays of insufficient size are allocated in prop_picker.cxx ( size()
don't count the null char ) and strcpy is writing outside the allocated
array. A patch follow.
2003-03-02 16:37:48 +00:00
david
45f3eb7f99 Patch from Erik Hofman:
I've updated the instrument modulator code to allow tricks like the one
described by Andy. It is now possible to define <min>, <max> and
<modulator> in one layer and if <min> and/or <max> ore within the range
of the <modulator> tag, their value will be honoured.

So, if you define

  <layer>
   <min>0</min>
   <max>50</max>
   <modulator>100</modulator>
  </layer>

The value will stay at 50, until the modulator forces it back to 0.
2003-03-02 14:19:24 +00:00
david
c8b8722a14 Don't fiddle with control positions at startup -- we can do that in
the *-set.xml files if desired.
2003-03-02 02:22:18 +00:00
david
c7998b9940 Initialize speed from mach number or vcas more-or-less properly. 2003-03-02 01:44:11 +00:00
david
1e5d48d1d9 Add spdFromMach() and spdFromVCAS(). 2003-03-02 01:43:39 +00:00
david
c90d7e96c2 Make sure the atmosphere is updated before the flight model. 2003-03-02 01:43:00 +00:00
david
af38fe4803 Don't allow this subsystem to be suspended. 2003-03-01 21:29:31 +00:00
david
e1bb9b67f5 Refactor things so that individual subsystems can override suspension. 2003-03-01 21:29:16 +00:00
david
58adf467bf Add a new <power> property to allow raising an axis to a power other
than 1 or 2 (<squared/> still works as well, and is equivalent to
<power>2</power>).
2003-03-01 21:28:51 +00:00
david
d38685b92f Minor code cleanup. 2003-02-26 19:20:02 +00:00
daveluff
489b8186b0 Use actual terrain ground elevation instead of hardwired KEMT elevation field whilst taxiing. Still need to fix this for takeoff and landing roll. Also added a check that a valid gate is found whilst arriving, and simply disappear the plane if none is found (instead of stackdumping\!\! 2003-02-26 11:24:15 +00:00
david
21d3b2848a Initialize the internal pressure to ambient pressure. 2003-02-25 20:04:22 +00:00
daveluff
42868f2550 Whoops - a stray debugging cout got through 2003-02-25 09:32:49 +00:00
daveluff
54a7b5d9ad Modified slightly whilst developing the shortest-path algorithm in the ground code. Also removed some old KPAO specific initialisation. 2003-02-24 19:04:53 +00:00
daveluff
e805a4188c Added a shortest-path algorithm between two nodes and removed the hardwired KEMT-specific path. Also tidied up some bugs in the gate handling code 2003-02-24 19:03:15 +00:00
david
c07f22ea16 Begin supporting a starting speed for YASim:
- NED and UVW are working correctly
- knots is giving true airspeed instead of calibrated airspeed
- mach is not working at all

This desperately needs a trimming routine.
2003-02-22 20:29:43 +00:00
david
afb2e68f89 Add new options:
--vor=ID
  --ndb=ID
  --fix=ID
  --turbulence=NORM
2003-02-21 02:46:44 +00:00
david
4b9060b064 Invoke fgInitNav() before fgInitPos(). 2003-02-21 02:46:07 +00:00
david
22097a5272 Add fgInitNav() function so that navaids and fixes can be loaded
earlier, before fgInitSubsystems().

Modify fgInitPos() so that the plane is not automatically aligned with
a runway when an airport is the reference point unless (a) a runway
was explicitly requested, or (b) the plane is on the ground with no
offset distance specified.  To set up the plane lined up on an
approach to a runway, use something like

  fgfs --airport=CYOW --runway=32 --altitude=300 --offset-distance=0.5

This way, it's possible to specify a starting position relative to an
airport without getting snapped onto a runway approach (unless you
want to be).
2003-02-21 02:45:47 +00:00
david
7d7a137d86 Declare fgInitNav(). 2003-02-21 02:42:45 +00:00
david
8eac88efe9 Fixed calibrated airspeed output so that it accounts for wind. 2003-02-19 17:41:53 +00:00
david
b78d5a0b93 Interpolate the twist linearly over the wing.
Reduce the minimum number of twist segments from 16 to 8.
2003-02-18 17:37:28 +00:00
david
7228024ed5 Added a "twist" attribute for wings to allow for washout (or washin,
if desired) in the stall.  This allows for fairly docile stalls when
desired, as on trainers (you also need to limit the elevator lift).
2003-02-18 16:50:07 +00:00
daveluff
0ecc199b09 Added basic support for using more than one voice. The render function is moved out of ATCmgr and into the ATC base class. 2003-02-18 10:44:01 +00:00
curt
317e48ba4f Jim Wilson:
Here's a patch to fix the asi problem (it affects most aircraft panels).
[ Avoids a sqrt( x < 0 ) ]
2003-02-16 20:47:40 +00:00
curt
d4d53763d9 Commented out a stray cout. 2003-02-13 21:31:44 +00:00
daveluff
ecad8a206e Alexander's new files added to Makefile.am 2003-02-13 12:21:01 +00:00
daveluff
85a79b4886 Changes in support of Alexander's ATC menu/transmission work. In particular all the pop-up dialog stuff has been ripped out of ATCmgr.[ch]xx and moved to ATCDialog.[ch]xx 2003-02-13 12:20:25 +00:00
daveluff
b271bc5da2 Better robustness for the ATCData structure istream operator. Adding fin.close() seems to have cured an intermittent stackdump when reading in the voice files which are the next istream operation to occur. Unknown types no longer cause the rest of the file not to be read - only the specific unknown entry 2003-02-13 12:17:37 +00:00
daveluff
f57e495893 Alexander's Approach ATC class modified to support his new menu/transmission code 2003-02-13 12:09:28 +00:00
daveluff
5dbf38c273 First draft of work by Alexander Kappes to add dynamically driven menu entries to the pop-up ATC dialog, parsing of text input to the ATC system and parameterised transmissions where the speech of a transmission is derived from the intent based on data files potentially allowing users to specify different phrases for each voice instead of being hard-coded. This is a work in progress. 2003-02-13 12:05:19 +00:00
david
2412c3a334 Integrate code posted by Jon Berndt, so that only the z-direction
turbulence is diminished near the ground.
2003-02-12 23:00:49 +00:00
david
0a6d2b7559 Minor code cleanups. 2003-02-12 18:35:04 +00:00
david
1693a364e4 Square the /environment/turbulence-norm property before scaling it for
FGAtmosphere -- that way, there are finer distinctions in the lower
end, where most people will fly.
2003-02-12 18:34:51 +00:00
david
9f5498acf4 Fade out the turbulence within two wingspans of the ground. 2003-02-12 18:34:39 +00:00
david
4ecd146258 Connect the FlightGear /environment/turbulence-norm property to the
turbulence gain in JSBSim's FGAtmosphere class.

Latest FGAtmosphere from JSBSim with working turbulence support.
2003-02-12 00:30:24 +00:00
curt
86bf012f50 Erik Hofman:
Sort aircraft when using --show-aircraft option.
2003-02-11 21:17:36 +00:00
curt
0ab97746c8 Erik Hofman:
Adds some small updates to the sound code (add vector clearing in destructors).
2003-02-11 20:26:42 +00:00
david
4c93c8a070 Temporarily disabled ILS range tweaking, until we come up with a
better scheme.

While it's true that the actual ILS indications are unreliable when
far off the approach path, the ILS is not out of range -- you can
still ident it (an essential part of any approach procedure), and the
indicator will usually be doing something, however bizarre.  The
current scheme did not allow the user to ident the ILS until
practically on the approach path.
2003-02-11 20:05:18 +00:00
curt
53083bf9fb Another tilemgr fix from Jim W. 2003-02-11 15:50:53 +00:00
daveluff
4231262d61 Several *list.[ch]xx files removed 2003-02-10 22:30:13 +00:00
daveluff
5e40c46afc approachlist.[ch]xx superceeded by commlist.[ch]xx 2003-02-10 22:29:15 +00:00
daveluff
f3cc3cc658 towerlist.[ch]xx superceeded by commlist.[ch]xx 2003-02-10 22:28:31 +00:00
daveluff
20455b1f61 atislist.hxx superceeded by commlist.hxx 2003-02-10 22:27:43 +00:00
daveluff
4df26cb392 atislist.cxx superceeded by commlist.cxx 2003-02-10 22:27:12 +00:00
curt
5efcc9c1d9 Dave Luff:
Patch to remove initialisation of atislist,towerlist and
approachlist which have been superceeded by commlist.
2003-02-10 20:42:18 +00:00
curt
0fe90a83dd Fix a bug in tile manager updating when switching from one view to the next. 2003-02-10 15:34:18 +00:00
daveluff
1915423544 groundlist now replaced by commlist 2003-02-07 13:38:57 +00:00
daveluff
df3e54cc47 Whoops - missed a file from the commlist changes yesterday 2003-02-07 13:34:56 +00:00
curt
79b3e39251 There are a number of little changes. Tested with current cvs as of 20:30EST
04Feb.  Actually been running since the beginning of January with these
patches.  All changes work without crashing with the current base package cvs,
but there are some visual problems with the views (other than pilot view)
without changes to the base package.

As soon as you can build test and commit I can add in those base package
updates that will make it all work nicely.  I will also go through all the 3D
Aircraft configs to make sure the change in the "pitch-offset" for cockpit
views (see below) are made to maintain current behavior.

Here are the files (changes listed below):
http://www.spiderbark.com/fgfs/viewerupdate.diffs.gz
http://www.spiderbark.com/fgfs/viewerupdate.tar.gz
2003-02-06 19:44:32 +00:00
david
41b04ba02b Make sure that we have a VOR or VORTAC, and not just a DME or TACAN. 2003-02-06 16:18:17 +00:00
david
fbfb499d49 The switch position was screwed up -- 2 means "hold last frequency",
not "off".
2003-02-06 16:17:47 +00:00
david
2a388d796e Use the property /sim/sound/voice to disable voice support even if
/sim/sound/audible is true.
2003-02-06 16:17:03 +00:00
daveluff
9b7405304d Major re-work of the comm frequency storage and lookup. Only a small core amount of data is now stored instead of the whole ATC classes. All the comm frequency types are now stored in one map instead of a map each. query(...) and query_bck(...) have been renamed to FindByFreq(...) and FindByPos(...) for clarity and consistency with NavList 2003-02-06 10:42:43 +00:00
david
9864453259 GUI style changes suggested by Erik Hofman and Curtis Olson. 2003-02-05 02:17:08 +00:00
david
e4f1dbace7 Patches from Johan Walles:
Here are the two modifications I had to make to get flightgear (just
updated from CVS) to build.  The first one is for being able to specify
SimGear's location at the ./configure command line, and the second one
is to be able to link.
2003-02-05 01:09:20 +00:00
curt
23668a2a08 Rephrased some comments to avoid /* in a comment warnings. 2003-02-04 22:28:48 +00:00
curt
b6e4238dfa Clean up a compiler warning. 2003-02-04 22:28:19 +00:00
curt
e8b6077c79 James Turner:
Here's a change to the GUI property picker I did a few weeks back.
It makes the values in the property pick 'live' (and also re-factors
the picker code to use less arrays, this should be obvious from the
diffs). A good demo is to open up the engine node and observe the rpm,
cylinder head temp, oil pressure and so on while playing with the
throttle and airspeed. It's pretty rough (some rounding of digits would
help) but useful for testing (at least I think so). I'm not sure about
the performance implications either, but it seems fine for me.
2003-02-04 22:27:58 +00:00
curt
0111a2c71c Fix a bug in transit sound termination and adjust the minimum time we
wait with no change before stoping the sound.
2003-02-04 18:18:24 +00:00
curt
8228afdbac Periodically the turn coordinator is jammed all the way to one side.
Initialize _last_rate to 0 at start up to hopefully avoid this.
2003-02-04 17:23:21 +00:00
curt
fed01db83a Oops, sorry, nothing more to see here, move right along ... 2003-02-04 17:22:00 +00:00
curt
6bfdb5a762 Add support for specifying an rpm source for the alternator. This enables
us to tie the output of an arbitrary generator to the state of an arbitrary
engine.
2003-02-03 22:35:24 +00:00
curt
1b40b5e4c9 Fixed a spelling error in the api. (ouch) :-) 2003-02-03 22:22:02 +00:00
curt
9e35d33657 Add the ability to specify an initial state (on/off) for a connector switch.
If nothing is specifed the switch defaults to on, but this is a problem for
the starter switch.
2003-02-03 22:15:36 +00:00
curt
fc095c7061 Avoid a potential segfault. 2003-02-03 21:57:25 +00:00
curt
2ce74e14b1 Register that we have been inited so the init routine isn't called repeatedly. 2003-02-03 21:57:07 +00:00
curt
88b98d9d79 Updated FGILSList api to better match the FGNavList api. 2003-02-03 20:05:27 +00:00
curt
371b5314a8 Updates to use new FGILSList api (updated to better match NavList api) 2003-02-03 20:04:56 +00:00
david
8506e731a2 Minor logging changes.
All logs and log entries are now disabled by default, unless
explicitly enabled by an 'enabled' property.  This works much more
intuitively with the GUI dialog.
2003-02-01 17:59:52 +00:00
david
603834ccf1 Add support for numerals as well as letters in Morse identifiers
(needed for many navaids).
2003-01-29 23:30:34 +00:00
david
67defdcf2f README for src/Systems/ 2003-01-29 16:03:00 +00:00
david
91c8dd3196 Converted to a simple FGSubsystemGroup. 2003-01-29 16:02:46 +00:00
david
70dde366bc Removed unneeded inclusion of std::vector. 2003-01-29 16:02:27 +00:00
david
9c574d4b87 Added a README for the src/Instrumentation/ directory. 2003-01-29 15:38:52 +00:00
david
9841edf429 Added a README for the src/Cockpit/ directory. 2003-01-29 15:34:31 +00:00
david
57da4bf02d Removed the old FGSteam module from FlightGear. 2003-01-29 15:30:29 +00:00
tony
6acae863ec Removing files already removed from JSBSim CVS. 2003-01-27 23:42:08 +00:00
david
269c83b86a Correct old-reinit_dialog to old-reinit-dialog. 2003-01-27 15:39:41 +00:00
david
7470eadbe7 Make the indicator a little less jumpy. 2003-01-26 20:57:57 +00:00
david
95e3e9d28b Add serviceable property. 2003-01-26 20:21:04 +00:00
david
d56bc5c9df If the gyro becomes unserviceable, stop spinning immediately. 2003-01-26 20:20:33 +00:00
david
113b1192c4 Make serviceable property writable. 2003-01-26 20:20:15 +00:00
david
c8f775c103 Switch to opaque dialogs and menu (with a heavy heart). 2003-01-26 20:19:15 +00:00
david
c165466a07 Use new magnetic compass property. 2003-01-26 15:56:30 +00:00
david
f72891e113 Added magnetic compass instrument.
Removed some unused bind/unbind methods.

Improved responsiveness of slip-skid ball.

Some minor cleanups.
2003-01-26 15:56:11 +00:00
david
acbb9f5aff Renamed /velocities/side-slip-rad to /orientation/side-slip-rad.
Renamed /velocities/side-slip-deg to /orientation/side-slip-deg.

Renamed /velocities/alpha-deg to /orientation/alpha-deg.

Added /accelerations/ned/north-accel-fps_sec.

Added /accelerations/ned/east-accel-fps_sec.

Added /accelerations/ned/down-accel-fps_sec.

Renamed /accelerations/pilot/x-accel-ft_sec2 to
/accelerations/pilot/x-accel-fps_sec.

Renamed /accelerations/pilot/y-accel-ft_sec2 to
/accelerations/pilot/y-accel-fps_sec.

Renamed /accelerations/pilot/z-accel-ft_sec2 to
/accelerations/pilot/z-accel-fps_sec.
2003-01-26 15:53:35 +00:00
curt
fe45f5b7a8 Output target navaid radial to external gui so it can resolve potential
ambiguity in selected ILS approach.
2003-01-26 03:39:09 +00:00
david
9adaa93b19 Kludge in a /systems/electrical/serviceable master property to kill
the whole electrical system.  We will also need a mechanism to kill
individual suppliers (such as the alternator), but this is good enough
for most training.
2003-01-25 21:49:57 +00:00
david
25387150c4 Improve spindown when the gyro fails. 2003-01-25 21:48:35 +00:00
david
99aa857dcb Added support for the slip-skid ball. 2003-01-25 21:13:13 +00:00
curt
8cc7b283d5 Refactored some of the navlist code and removed the built in "fail to find"
if the station is too far away.  Instead, simply return the closest station.
All the code that searches navaids does it's own range checking anyway.
This will make the navlist query functions a bit more useful for other
types of functionality where you may need to lookup a station without
consideration of range (i.e. presetting your position relative to a navaid.)
2003-01-25 20:45:39 +00:00
david
677c3e3e9a Added a Gyro helper class to factor out some common code for managing
a spinning gyro.

Changed FGInstrumentMgr to inherit from FGSubsystemGroup, greatly
simplifying the (already simple) class.  I should probably rename this
to FGInstrumentGroup or something similar, but not today.

Added the gyroscopic turn indicator (part of the TC).
2003-01-25 19:49:27 +00:00
david
4526b1b8ee Remove redundant rate properties recently added. 2003-01-25 19:47:35 +00:00
david
f3b00f1598 Publish properties for accelerations and rates. 2003-01-25 17:25:30 +00:00
curt
925f521521 Initial revision. 2003-01-24 18:12:04 +00:00
tony
a9d81f2e65 Latest JSBSim updates, including use of new "JSBSim" namespace 2003-01-24 12:55:28 +00:00
david
9679c7da15 Changed 'exit' command to quit immediately, rather than displaying a
built-in dialog (use an XML dialog instead).

Added an fgExit() function to simplify exit and cleanup.
2003-01-24 03:08:23 +00:00
david
980eae6187 Remove old-preset-* commands; replaced with a general, XML presets
dialog.
2003-01-24 02:49:30 +00:00
david
8e659f84fa No longer recursively search $FG_ROOT/gui/dialogs/ for configuration
files; all of them must be at the top level.

Do not attempt to parse a configuration file unless it ends with
".xml".
2003-01-24 02:43:52 +00:00
curt
29a3525869 Add a "signed" distance to the GS transmitter. When you are in the approach
hemisphere the distance is positive, if you are in the departure hemisphere
the distance is negature.  (Possible use for graphing approach distance
vs. glide slope or cdi.)
2003-01-22 01:24:32 +00:00
david
d819c42184 Remove another deprecated command, and fix things up so that dialogs
reload properly on a reinit.
2003-01-21 15:44:21 +00:00
david
87a84efbb0 Added support for reinit(), to reload the configuration files without
having to restart FlightGear.  This should speed up GUI design and
debugging quite a bit.
2003-01-21 02:09:27 +00:00
david
0940afae5a Fixed iteration bug in destructor. 2003-01-21 02:08:56 +00:00
david
fbcfbd9355 Removed need to specify 'type' property at the top level; it's always
a dialog.
2003-01-21 02:08:41 +00:00
david
f61d73e546 Make fgLoadProps more flexible, to read from $FG_ROOT or the current
directory.
2003-01-21 02:08:00 +00:00
david
e0c7b29aa7 Added reinit, suspend, and resume commands. 2003-01-21 02:07:29 +00:00
david
40bed0a3f1 Change GUI method names.
Do not delete GUI objects directly; let the GUI manager do it instead.

Simplify some code for readability.
2003-01-20 16:03:48 +00:00
david
9291bb510d Rename some methods to be more intuitive, add a close method for the
active dialog, and add lots of documentation.
2003-01-20 16:03:09 +00:00
david
123931834f Fix memory leaks (PUI doesn't make copies of lists, so we have to make
our own copies and keep pointers to them).
2003-01-20 16:02:26 +00:00
david
4dc28f11f4 Add more documentation comments.
Fix memory leaks (PUI doesn't make copies of lists, so we have to make
our own copies and keep pointers to them).

Adjust for new method names in NewGUI.

Move the GUIInfo struct into the cxx file so that it's not part of the
public interface.
2003-01-20 16:01:54 +00:00
david
bbff86ed36 Add new object types "slider" and "dial".
Fix memory leaks (PUI doesn't make copies of lists, so we have to make
our own copies and keep pointers to them).

Adjust for new method names in NewGUI.

Move the GUIInfo struct into the cxx file so that it's not part of the
public interface.
2003-01-20 16:01:16 +00:00
david
21b46469ee Make sure the gust wind speed is never less than the base wind speed. 2003-01-20 13:02:18 +00:00
curt
364df6baaa Fix a potential buffer overflow. 2003-01-20 03:14:43 +00:00
curt
e00fa3dbaf Tweaks to protocol names to match recent changes in options.cxx (so they
will work.) :-)
2003-01-20 03:09:54 +00:00
david
62be29c640 Make some allowances for a dialog closing in the middle of a callback.
Add support for combo fields.
2003-01-19 23:04:03 +00:00
david
c1d6741fd5 Go back to the simpler arrangement syntax of a map of vectors. 2003-01-19 23:03:31 +00:00
david
35935cb23a Major overhaul by Frederic Bouvier to make options table-driven. 2003-01-19 23:02:51 +00:00
daveluff
c5403b2a7c Memory allocation bugfix from Frederic Bouvier, plus a few cout's commented out 2003-01-19 21:31:37 +00:00
david
6205d5eb1a Do an update after apply to see what really got into FlightGear. 2003-01-19 17:22:05 +00:00
david
dd4890d952 Add support for a "checkbox" dialog widget (for boolean properties). 2003-01-19 17:21:38 +00:00
david
ed3ae450ce Use a pointer for the bindings vector to try to work around a 2.95
bug.
2003-01-19 17:21:18 +00:00
david
cf5d7499ad Changed return type of fireItem to void. 2003-01-19 15:27:29 +00:00
david
9e143bc615 Use FGGlobals::get_fg_root instead of looking up the environment
variable directly.
2003-01-19 12:54:26 +00:00
david
5d5de3c903 Removed a couple of the deprecated dialogs, and removed the old
predefined bindings for F11 and F12.  Instead, there is now a soft
binding from F11 to the autopilot dialog.
2003-01-18 21:59:25 +00:00
david
013c322dd3 Added the property-cycle command. 2003-01-18 21:13:11 +00:00
david
7d3c375df2 Remove the old built-in bindings for F8 and F10 (they can be done in
keyboard.xml now).
2003-01-18 21:12:27 +00:00
david
64aa833087 Tie the bool property /sim/menubar/visibility to hide and reveal the
menubar.
2003-01-18 21:11:51 +00:00
david
7ae491dc2e Keep track of the visible/hidden state more robustly. 2003-01-18 21:11:15 +00:00
david
b2713841b6 Simplify looking up the GUI subsystem. 2003-01-18 21:10:49 +00:00
curt
d8f4bfa9ae Make the destructor virtual.
(I thought I'd slip this in along with David's change to the default menu
configure option.  I believe that will cause a new config.h to be generated
which will cause a near complete rebuild of FG (as will this globals.hxx
change) so it shouldn't cause additional grief to have these happen at the
same time.)
2003-01-18 19:40:28 +00:00
curt
4226eab6bd More updates to refine the output data to make it more useful for an
external GUI and approach path plotter.
2003-01-18 19:36:50 +00:00
david
88e2ffabfe Add in some temporary commands to get at the old, hard-coded dialogs.
Most of these will eventually be replaced with XML-configured dialogs,
and the rest will be turned into proper widgets or global commands.
2003-01-18 16:26:41 +00:00
david
9e2707c9f8 Do late, lazy binding of commands from the command manager. 2003-01-18 16:25:50 +00:00
david
c10ce7bd26 Renamed GUIWidget to FGDialog. 2003-01-18 15:57:51 +00:00
david
6371783e2d Include fg_props.hxx to get definition of FGConditional. 2003-01-18 15:16:54 +00:00
david
6632b2d8c2 Unbundle dialog-box support from the top-level GUI manager, to
simplify maintenance.
2003-01-18 15:16:34 +00:00
curt
abcd050795 Oops we tweaked the preset_commit command name, let's call it by it's
correct name.
2003-01-17 22:54:09 +00:00
david
55182238e6 Do not require libScripting.a unless PSL is available. 2003-01-17 18:25:34 +00:00
daveluff
9c96e109a3 Slight change to some STL stuff that was breaking MSVC6 2003-01-17 16:45:26 +00:00
curt
7c3df373af Convert distance to touch down point to nm. 2003-01-17 13:49:48 +00:00
david
04f1dc4837 Make all PSL support conditional, because it's not included in plib
1.6.  The macro is HAVE_PLIB_PSL.
2003-01-17 12:41:47 +00:00
curt
537cb97f56 Allow network byte order conversion to be conditionally compiled off. 2003-01-17 00:11:49 +00:00
curt
9f6cd30b34 Updates to the net_gui code that can spit out updated flight information
to the network which a gui might be interested in.
2003-01-16 20:57:28 +00:00
david
9d726c1bd8 Started a new FGMenuBar class to handle a different XML-configurable
menubar.  This one allows regular command bindings, with the
(temporary) condition that every menu item must have a unique text
label.  The new menubar is disabled by default; to enable it,
configure --with-new-menubar.
2003-01-16 18:06:27 +00:00
david
af4f1894c9 Added a run_inline method that automatically wraps the script in a
main() function.  It's not hooked to a command, yet.
2003-01-16 18:04:24 +00:00
david
2256c3d5fd Simplify subsystem handling through FGGlobals. 2003-01-16 16:01:26 +00:00
david
b2518a0056 Broadcast suspend/resume/reinit through the manager and its groups. 2003-01-16 15:11:04 +00:00
curt
ea543c1210 Renamed mini_fdm to native_gui which makes a lot more sense to me. 2003-01-15 02:09:10 +00:00
daveluff
2fb9a21f2d Fix compilation bug that only occurred when compiled with weathercm subsystem enabled 2003-01-13 19:03:36 +00:00
curt
9bff823e0a Added velocity and climb_rate to mini_fdm structure. 2003-01-13 00:27:50 +00:00
curt
f3d4f741f0 Update to the Mini FDM network protocal (mostly renaming class and file names)
Wired this in to options.cxx and fg_io.cxx so it can be activated.
2003-01-12 23:39:18 +00:00
curt
e4b3eebdbb Added a "mini fdm" output. This could (for example) be useful for an
external gui if it wanted to monitor some key sim position/orientation
varialbles without saturating the net with the full slate of fdm data
@60hz.
2003-01-12 23:28:21 +00:00
curt
f9ae85b0c0 Consolidate and clean up some of the FDM network interface code. 2003-01-12 22:11:55 +00:00
curt
f2dac6306f #ifdef out a bit more code that could cause compile problems on platforms
that don't have all the latest opengl extensions.
2003-01-12 14:28:26 +00:00
david
9bbe8a78b6 Added simple proof-of-concept support for running PSL scripts from
input bindings.  They will work only with the latest CVS; otherwise,
./configure will disable them.  There is a new command, 'script',
which takes a single argument, also called 'script', containing PSL
code (currently PSL requires a main() function).

Erik Hofman has written some more elaborate code for triggering PSL
code from drop-down menus and scheduling events; I will look at
integrating that next.
2003-01-11 16:30:32 +00:00
david
5424c65f00 Removed #ifdef FG_PLIB_JOYSTICK_GETNAME -- it's in 1.6, so we can rely
on it.
2003-01-11 16:27:56 +00:00
curt
f918bdcc0c ExternalNet -> Updated to not repeat code from native_ctrls. 2003-01-10 19:45:29 +00:00
curt
9f5105bfbc Oops, a bit more clean up. 2003-01-10 19:12:28 +00:00
curt
95600d1c27 Updated to support all the fields in net_ctrls.hxx 2003-01-10 19:10:46 +00:00
curt
d359a103c5 Rename a variable so we don't have to rely on scoping rules to distinguish
between the same veriable name used twice.
2003-01-10 17:01:57 +00:00
daveluff
086be2b474 Start the ATIS recorded message at a random position into the broadcast when the radio is tuned into it 2003-01-07 14:41:49 +00:00
daveluff
c8a67cb773 Search ATC frequencies with both comm1 and 2 instead of just comm1 as previously 2003-01-07 13:11:00 +00:00
curt
6a45be1d72 Oops missed some more usage of opengl extensions that may not be on everyone's systems. 2003-01-06 21:43:59 +00:00
curt
7805202fc6 Set SO_REUSEADDR on incoming UDP socket so other processes on the host
can also monitor the UDP broadcasts.
2003-01-06 02:51:07 +00:00
curt
e160b3b312 #ifdef out experimental lighting for now until someone has time to investigate
the "right" way to test for and use extensions.

Hopefully this will clear up compile problems a lot of people have been
haveing.
2003-01-06 02:50:29 +00:00
curt
be703a92b4 Add support for in-air preset starts relative to a VOR, NDB, or Fix. 2003-01-05 00:10:36 +00:00
curt
30dc5aab90 Ooops, the presets_commit command was lost going from the 1.8 -> 1.9 version
(Sun Dec 22 19:58:34 2002 UTC)
2003-01-04 21:22:43 +00:00
curt
5fc7c70a4a Expose the ability to run built in (command manager) commands via the
"telnet" interface.
2003-01-04 19:04:07 +00:00
david
1ec788b6da Patch from Julian Foad to fix wrapping behaviour for property-adjust
and property-multiply:

Firstly, change back to wrapping modulo the interval, with "min <= x <
max" semantics.  I believe the previous implementation did that.  The
inline function that Norman mentioned also does that.

Secondly, make it snap to the nearest value (min + N*resolution) when a
"resolution" tag is present, taking special care of floating-point
precision.  Or perhaps specify "number of divisions in the interval" as
an integer, instead of "resolution" by which I meant a floating-point
"size of a division".

[also fixed]

While working on this file I noticed some potentially serious warnings:

fg_commands.cxx: In function `bool do_property_adjust(const
SGPropertyNode*)':
fg_commands.cxx:435: warning: control reaches end of non-void function
fg_commands.cxx: In function `bool do_property_multiply(const
SGPropertyNode*)':
fg_commands.cxx:465: warning: control reaches end of non-void function
/usr/local/include/simgear/misc/props.hxx: At top level:
fg_commands.cxx:600: warning: `bool do_presets_commit(const
SGPropertyNode*)' defined but not used
2003-01-04 18:47:25 +00:00
daveluff
a1d4e79127 Fix problem with cout 2003-01-03 16:30:44 +00:00
daveluff
7ae6c2010d Fix compiler warning 2003-01-03 15:01:16 +00:00
david
9ff659bba7 Work around G++ 2.95 bug by removing use of STL find() function. 2003-01-01 18:47:50 +00:00
david
71f08e795d Patches from Erik Hofman for SGI compatibility:
Some more cmall changes to the SimGear header files and removed the
SG_HAVE_NATIVE_SGI_COMPILERS dependancies from FlightGear.

I've added a seperate JSBSim patch for the JSBSim source tree.
2002-12-31 18:26:02 +00:00
david
e4409c5222 Add the 'offset' and 'factor' arguments back into property-adjust;
they're needed for the mouse.
2002-12-31 12:08:32 +00:00
david
af609fcd93 Patch from Bernie Bright:
FWIW here are patches for src/FDM/ADA.[ch]xx that remove a dependency on
<simgear/io/sg_socket.hxx>
2002-12-31 03:21:49 +00:00
david
52c564b5b8 Patch from Norm Vine to remove unnecessary include-file dependencies. 2002-12-31 03:13:17 +00:00
david
ea6448c956 Modify the property-assign command to optionally copy a value from
another property (suggested by Jim Wilson).
2002-12-31 03:05:38 +00:00
david
7cc894be4b Require /sim/rendering/experimental-lighting to be true before using
experimental lighting rendering (which is very expensive on my
machine, for example).  To use distance attenuation,
/sim/rendering/distance-attenuation must also be true.
2002-12-31 01:15:59 +00:00
david
8e60042052 Patch from Erik Hofman:
This patch turns out to be much more reliable compared to the previous
one I sent Curtis. Could you apply it for me?
2002-12-31 00:56:14 +00:00
david
cf3e79ee46 Cleanup from Norman Vine to prevent compiler warnings. He also writes:
Note I believe there was a 'missing comma' in the next to last row also
2002-12-30 22:21:31 +00:00
david
c153e21174 Bug fix suggested by Gonzalo Peralta:
Convert the fuel flow from gallons to pounds <kludge>assuming 100LL at
sea level, 6lb/gallon.</kludge>
2002-12-30 22:16:16 +00:00
david
e80c093681 Distance attenuation patch from Erik Hofman:
It adds a command line options to enable/disbale distance attenuation
using a property rather than using a #define inside the code. It also
adds a small change for systems that don't support the OpenGL extension,
so that the lights *do* fade away as they get furher away but they don't
get smaller in size.
2002-12-30 21:49:56 +00:00
david
0d12c4d83d Removed the (apparently unused) 'factor' and 'offset' arguments from
property-adjust.

Modified property-adjust and property-multiply so that they always
work with double values, to simplify the code.

Factored out some common code.

Added a 'mask' argument to the property-adjust and property-multiply
commands.  If mask is set to "all" (the default), then the command
works as before; if mask is set to "integer", it works only to the
left of the decimal point; and if mask is set to "decimal", it works
only to the right of the decimal place.  This functionality is useful
for tuning VHF COM and NAV radios.
2002-12-30 19:50:17 +00:00
david
ea98111926 Made it possible to add and remove models programmatically, as
requested by Leon Otte.
2002-12-30 15:44:11 +00:00
david
c5751c7df4 Cleaned up some whitespace. 2002-12-30 15:43:16 +00:00
david
d31e0e7071 Allow panel mouse bindings to use mod-up.
Ensure that if a condition for a panel mouse binding fails, other
bindings for the same area will have a chance to run.

Add a repeatable flag for panel mouse bindings (defaults to true).
2002-12-28 19:05:45 +00:00
david
f85b9589da Fixed so that 2D panel bindings work again. 2002-12-23 19:16:58 +00:00
david
63672604bf Removed debugging statements accidentally left in. 2002-12-23 17:58:31 +00:00
david
a7e56cf399 Added new commands:
- dialog-open
- dialog-close
- dialog-update
- dialog-apply

The last two can copy a value from a property to a GUI field or
vice-versa either individually or across the whole dialog.
2002-12-22 19:58:34 +00:00
david
5c2fb92a92 Use SGPropertyNode_ptr and add a private copy constructor, both for
safety's sake.
2002-12-22 19:57:09 +00:00
david
0111183153 Reworked the XML-configurable GUI to use the same binding structure as
the keyboard, joystick, mouse, and 2D panel.  Exposed methods for
applying and updating property values in GUI fields.
2002-12-22 19:52:26 +00:00
curt
6225936ead Various tweaks. 2002-12-21 05:01:51 +00:00
daveluff
e785eb74a5 Add SG_USING_STD(ifstream) 2002-12-20 09:48:09 +00:00
curt
c7ab26871c Allow the polling frequency of the telnet/props server to be set on the
command line.
2002-12-19 21:55:05 +00:00
daveluff
3447ab6e57 Read KEMT ground network from file instead of hardwiring it into the code. 2002-12-19 14:03:36 +00:00
daveluff
38b3f48d41 Code beautifying 2002-12-19 14:00:52 +00:00
daveluff
5931760602 Make AI traffic more robust to not getting a list of runway exits - it is now simply removed from view at the end of the landing roll instead of stackdumping if no exits are returned 2002-12-19 12:26:10 +00:00
curt
2d09acb10f Fix a potential crash when an electrical system is not defined. 2002-12-18 21:55:33 +00:00
curt
a857322d9c Norman Vine:
This patch finally reenables the AutoPilot gain adjuster.
2002-12-17 19:57:49 +00:00
daveluff
22d94b8273 First draft of an ATC dialog box, mostly copied from the autopilot new heading dialog box code. Need to bind a key to the ATC-dialog command to bring it up. 2002-12-17 17:19:14 +00:00
curt
b30ceec62d Remove DOS line endings. 2002-12-17 15:31:34 +00:00
daveluff
4b9c0ad822 Add some stub functions to FGTower to aid ATC dialog box development 2002-12-17 11:36:14 +00:00
tony
3cb4d55342 Fix for X-15 crash. 2002-12-17 00:07:46 +00:00
daveluff
87be5d93a5 Comment out stray cout 2002-12-16 21:02:07 +00:00
curt
54b980854c Read audio panel switches and parking brake. 2002-12-16 06:09:38 +00:00
curt
44be7da053 Added support for an audio panel. 2002-12-16 06:09:05 +00:00
curt
2b74a7c3d6 Additional failure modeling.
Support parking brake in external fdm.
2002-12-16 01:13:39 +00:00
curt
74b5aa6a41 OBS turning work, work on supporting failure moding. 2002-12-16 01:12:10 +00:00
david
8e7dfbe292 Add a reinit() stub for subsystems, so that they can be reinitialized
when needed (say, to reload the configuration files).
2002-12-15 14:58:08 +00:00
curt
0e69acaff7 Simplified to use the delta_time_sec that is passed to the update() routine
rather than calculating a separate delta_t and using that.
2002-12-14 14:39:56 +00:00
curt
51c5b9bf09 Work on nav2_obs tuner. 2002-12-14 14:38:19 +00:00
curt
339f39f235 Change time counter to a double. Add a variable which can allow us to
track long term rate stats to verify we are hitting the requested hz.
2002-12-14 14:37:40 +00:00
david
f332d1b659 Removed redundant logging statement. 2002-12-12 17:55:49 +00:00
andy
ba84ec24bf Changing the thresholds to be bigger in the previous patch isn't
really useful unless we simultaneously change the per-iteration deltas
to be smaller.  Add another pseudo-tunable to control the speed with
which we change values across iterations.  As it turns out, this is
much more effective than the threshold tunable.  It does come at the
cost of lower solution performance, however.
2002-12-12 02:15:06 +00:00
curt
5c8e6a5841 Tweak taxi light rendering so they don't look completely bogus at dusk. 2002-12-12 01:24:48 +00:00
andy
ac93c22545 Put in some (currently compile-time) tuning for the solver threshold.
A recent change resulted in the Piper Cub oscillating about its
correct solution.
2002-12-11 22:58:47 +00:00
andy
4fb6673ff7 Update masses on the rigid body when consuming fuel. Simply updating
the tank capacity won't change the aircraft.
2002-12-11 22:52:52 +00:00
david
c3398c9add Have DummyBSphereEntity inherit from ssgBranch instead of ssgEntity,
to allow building with the latest plib CVS.

Problem identified by Norm Vine.
Fix suggested by Steve Baker.
2002-12-11 21:49:25 +00:00
curt
10baa71a65 Fix out of order initialization crash (not sure how it worked before
unless some recent changes subtlely changed some init order items around.)
2002-12-11 21:07:30 +00:00
curt
43e48070fe - Some refactoring of the configure.ac script.
- Better Mac OS X support (they put glut.h in GLUT/glut.h) :-(
2002-12-10 20:50:48 +00:00
curt
69b5c093dd #ifdef out all references to sgCloud3d until more of it's issues can be
addressed.
2002-12-10 19:25:12 +00:00
curt
b640aceaa8 Change library order for cygwin. 2002-12-07 13:54:13 +00:00
curt
28243f40ca White space cleanups. 2002-12-07 02:26:50 +00:00
curt
1feedec8d1 - Change the global_tile_mgr to a globals->get_tile_mgr() which is
dynamically created at run time.
- Further clean ups to the FGTileMgr class interface.
2002-12-06 22:29:46 +00:00
daveluff
49d843e22e Patches from Erik Hofman - use Plib's wave file loader plus IRIX fixes. 2002-12-06 15:35:18 +00:00
daveluff
4d6ac0ddf5 Code improvements from Norman Vine 2002-12-05 16:51:40 +00:00
curt
a4600f85c7 Updates for 0.9.1 2002-12-05 15:31:09 +00:00
curt
eac68e9d93 add uiuc_getwind.h to distribution. 2002-12-04 23:02:08 +00:00
daveluff
bc3df74066 Add ground.[ch]xx, groundlist.[ch]xx and ATCVoice.[ch]xx to Makefile.am 2002-12-04 20:08:03 +00:00
daveluff
c65c5f3a4a Changes to support voice rendering of ATC 2002-12-04 20:07:12 +00:00
daveluff
d3e33e8b53 Changes towards tower control - work in progress with no end-user benefit yet 2002-12-04 20:06:20 +00:00
daveluff
46011ab535 Changes and additions to utility functions to support voice ATC rendering and AI taxiing. 2002-12-04 20:05:30 +00:00
daveluff
2a1c00b8e4 Minor changes to variable name and comments 2002-12-04 20:04:26 +00:00
daveluff
8bd892a1a0 Minor change to variable name 2002-12-04 20:03:18 +00:00
daveluff
9be0f4032d Changes to support AI taxiing and crabing when flying in wind. Still a work in progress. 2002-12-04 20:02:03 +00:00
daveluff
791caf9fbc Removed unused code and obsolete comments 2002-12-04 19:52:50 +00:00
daveluff
df089b80f8 Changes to support voice ATIS 2002-12-04 19:51:21 +00:00
daveluff
fe6784af51 Initial draft of a canned ATC voice handling class 2002-12-04 19:49:35 +00:00
daveluff
1db3b01e04 Add ground control frequency data handling along the same lines as navlist etc... 2002-12-04 19:47:16 +00:00
daveluff
25d9868759 Include GPL 2002-12-04 19:38:04 +00:00
daveluff
5f543a2fd1 Changes towards ground control and AI taxiing currently very hardwired to KEMT 2002-12-04 19:36:39 +00:00
tony
75e51b0d81 Sync with JSBSim CVS 2002-12-04 15:32:03 +00:00
david
2e8572a4c5 Ignore more generated files. 2002-12-04 01:01:45 +00:00
curt
35b7d568d0 #include <config.h> where needed for cygwin/gcc-3.2. 2002-12-03 14:59:24 +00:00
curt
7674741abb Add -lplibjs where needed. 2002-12-03 14:55:23 +00:00
curt
953162ea53 Remove cout/endl usage and replace with SG_LOG() 2002-12-02 19:01:59 +00:00
curt
64028a37ef Andy Ross:
I wrote:
 > I can confirm this.  Layers on the 2D panels (but oddly, only the 2D
 > panels) aren't drawing over the background with the current ATI
 > drivers.

OK, this turns out to be a trivial fix, although I still think it's a
driver bug.  There are two calls to glPolygonOffset in the panel
rendering code (shared by both 2D and 3D panels).  One is called
per-layer, and sets up a layer-specific offset.  The other is called
for drawing the background textures, to lift them off of any
underlying cockpit geometry.

I was using different "factor" values for each, incorrectly.  Patch
attached.  It was affecting only 2D panels because the 3D ones don't
use background images.

Problem is, by my reading of the specification the bug should have had
the effect of pushing the background texture *farther* behind the
instruments, instead of pulling it on top of them.  Either I'm reading
the spec incorrectly or ATI has inverted the sense of the factor
argument.  Dunno, I'll submit a bug report to them and see what
happens.
2002-12-01 22:38:38 +00:00
andy
d98b7f05ff Honor the /sim/freeze/fuel property to inhibit fuel consumption at runtime.
Link the standalone executable against the source files explicitly rather
than libYASim, as the Irix linker can't handle the unneeded dependance on
other parts of FlightGear.
2002-11-30 20:22:25 +00:00
curt
ebc2fbd684 Exposed the fg_commands though the httpd interface.
Added a built in command to preset to what ever values are in /sim/presets/
Twiddling with preset code.
2002-11-30 20:10:16 +00:00
curt
a6ce9a5b2a A small amount of additional massaging of tile manager update() interface. 2002-11-30 14:22:00 +00:00
andy
0b2a45e256 Add the command-line yasim compiler to the automake configuration. It
installs into the build directory as "yasim".  Simply run it with the
xml file as its only argument.
2002-11-30 06:28:18 +00:00
andy
388d714fdc Fuel consumption. Simple implementation without support for tank selection
or engine-specific feeds.
2002-11-30 06:12:20 +00:00
curt
bcf9fa3695 Massaging the FGTileMgr->update() interface towards using FGLocation. 2002-11-30 03:05:34 +00:00
andy
fe4e83a10b Added a tunable "induced drag" number to aircraft. One of the things that
isn't well-constrained by the solution process is the drag-vs-aoa curve.
The default value that YASim picked was very steep, and resulted in most
of the jets flying their approaches *way* behind the power curve.  This
changes the default to be more forgiving, and adds an "idrag" tunable
to the configuration file for tweakers.

Also, change the default gear springiness to be less stiff.
2002-11-30 02:24:16 +00:00
curt
95109cec57 Split out tile load/free queue processing into a separate routine. 2002-11-30 02:21:04 +00:00
curt
89874fd5f5 Make tile_mgr->prep_ssg_nodes() use an FGLocation object. 2002-11-28 01:08:25 +00:00
david
9ca42c5fa3 Patch from JSBSim:
Convert DrCmd from percentage to radians.
2002-11-27 21:09:16 +00:00
david
b79c943aa3 Change from JSBSim:
Changed steering to use the rudder command rather than the rudder
position.  During taxi, the rudder trim shouldn't affect the steering
in any serious way.

This should be configurable in the aircraft file, since not all
aircraft use the rudder pedals for ground steering.

[In FlightGear, this may make it easier to taxi straight.]
2002-11-27 01:38:26 +00:00
curt
3aa5e5fcdf Don't force ground lighting to have the same limited visibility as runway
lighting.
2002-11-26 16:01:39 +00:00
curt
98dca16794 Having the runway lights "pop" in at a specific range is not 100% realistic.
I have updated the lighting code to use fog to try to fade the runway lights
in smoothly, but still keep them from being visible until you are about 7-10
miles out, and then only have them be very faint at first.  I think what I
have is a bit nicer than before since it completely avoids the "popping" effect,
but I've very open to tweaking the actual ranges based on people's real
world experiences.
2002-11-26 02:29:03 +00:00
curt
019b31ea26 Make the runway lights come on just a bit sooner in terms of sun angle. 2002-11-25 21:42:07 +00:00
tony
b672fed418 Updates for cygwin 2002-11-23 15:33:01 +00:00
curt
dc5397b33b Minor property name change to avoid some minor confusion. 2002-11-21 02:54:46 +00:00
curt
80e8647330 Removed depricated files. 2002-11-18 21:34:07 +00:00
curt
df2356050d Added a "Presets" menu. 2002-11-18 21:31:33 +00:00
david
9a3f0c5c19 Irix patch from Erik Hofman. 2002-11-17 12:56:01 +00:00
curt
8f3a988e0e If a non existant runway is specified with --runway=xxx fall back to
finding the runway that is the closest match to the specified (or default)
heading.
2002-11-17 04:17:27 +00:00
curt
13bb01a70e Added a --runway= option which can be used in conjunction with the --airport=
option to specify a starting airport + specific runway.  If you don't specify
a runway, you get the one that's closest to your specified (or default)
heading.
2002-11-17 04:04:21 +00:00
curt
2384d0ed51 Added some cheap eye candy to entertain myself for a few minutes. Splash
screen now fades out revealing the scene.
2002-11-17 01:21:13 +00:00
david
928309d3d1 Cygwin patch from Patrick Staehlin:
To compile the development CVS version of FlightGear(0.9.0) i had to
apply some small changes to SimGear and FlightGear.

The changes need probably some additional ifdefs for other platforms but
since my linux-hd crashed i can't verify that.
2002-11-17 00:42:50 +00:00
david
bd5560605d Patch from Jim Wilson to fix model offsets:
Here's a patch to fix the offsets bug.  The problem was the transform was just
getting added to a local instance rather than being returned by the function.
2002-11-17 00:30:40 +00:00
david
8eb735d149 I wrote:
> Jim Wilson wrote:
 > > How hard would it be to have a property that toggles hotspot
 > > visibility?  It'd be nice to be able to turn it on and have yellow
 > > rectangles show up on the hotspots...
 >
 > That's not a bad idea.

It's actually an astoundingly good idea, and implementable over lunch
to boot. :)

Try the attached patch, which predicates the boxes on the
/sim/panel-hotspots property.  I mapped a toggle event on this to a
spare joystick button, and had fun. :)

[dpm: bound to Ctrl-C]
2002-11-17 00:04:57 +00:00
david
a53ccae248 Make sure led_font isn't used unless it's initialized. 2002-11-16 22:13:49 +00:00
david
de0f20aa22 Reduce POFF_UNITS from 40 to 4, following Andy Ross's suggestion (to
avoid having the 2D instruments obscure 3D objects in front of them):

It's related to depth buffer precision.  On my Geforce cards (2MX and
3), it never happens with the 24 bit depth buffer you get by default
at 32bpp.  At 16bpp, it picks a slimmer depth buffer (probably 16 bit)
and the texture layers bleed through.

The code is using a pretty big argument to glPolygonOffset, and I've
never investigated how small it can be.  If someone has a little time
the next time they see this issue, try changing the value of
POFF_UNITS at the top of Cockpit/panel.cxx.  Decrease it until the
textures *just* start to interfere with each other, and post the value
that works for you.
2002-11-16 22:08:22 +00:00
david
4d1e05804f Patch from Frederic Bouvier:
I have discovered recently that plib has ulIsAbsolutePathName
in ul.lib so you can try this patch.
2002-11-16 22:01:15 +00:00
curt
35f24baf32 Clean ups to the code that determines initial position based on command
line options or defaults.
2002-11-16 21:34:51 +00:00
curt
b3935aa01f Make the routines that scan the command line options and config files more
general so we can eliminate the option specific versions of these.
2002-11-16 20:41:00 +00:00
curt
52a322decc Some various massaging and clean ups of initialization code. 2002-11-16 20:17:11 +00:00
david
c5ebb65efd Turn off runway lights during the day, except in less than 5km
visibility (that should be lower, but it will do for now).
2002-11-16 11:56:15 +00:00
curt
52312f2a13 Restructuring some of the initialization code.
The general idea is to help clean up some aspects of the FDM init and be
able to provide startup conditions in a less ambiguous manner.

Previously, things like positions, orientations, and velocites were set on
"the bus".  These had to be read by the FDMs which then were supposed to
initialized themselves to those values and turn write around and start
modifying those values.  It was messy and cumbersome.

Now, all the initial fdm conditions are written to a sub-[property-]tree
under /sim/presets/

The values in /sim/presets/ always stay set to what the user has specified.
The user can change these at his/her liesure, and then request a "reset"
which will reset to the new conditions.  I don't even want to say how this
worked before. :-)

Now, an script, or gui interface can stage a set of initial conditions while
the sim is running (without disrupting it), and then call "reset" to commit
the change.

People who should worry about all this are FDM writters, and a small few
others who care about over all program structure and flow.
2002-11-15 21:13:29 +00:00
david
bb9b1ae3c7 Correct offset-deg in a rotate animation so that it is added after the
factor (otherwise, it's not in degrees).

Allow 2D panel inclusions to be named (and further animated).
2002-11-13 16:45:21 +00:00
andy
e8e1a087fe Add "spring" and "damp" tunables to gear objects. 2002-11-09 21:08:10 +00:00
curt
3640aca191 Robert Deters:
Attached is more UIUC revisions.  Actually it is only an updated
uiuc_wrapper.cpp.  Thanks
2002-11-08 17:05:56 +00:00
curt
4a2c47d9d7 Robert Deters:
Latest revisions of the UIUC code.
2002-11-08 17:03:49 +00:00
david
49a8c070f3 Moved command information into user data. 2002-11-08 16:33:00 +00:00
david
8205c4e030 Separated out GUIWidget class to manage a top-level widget. 2002-11-08 15:24:14 +00:00
david
3e217ba909 Instead of reading $FG_ROOT/gui.xml, recursively read all files under
the $FG_ROOT/gui/ directory; that way, each dialog can have a separate
configuration file, and management should be simpler.
2002-11-08 02:03:56 +00:00
david
4d292daeaa Added button actions so that property fields can be applied or
updated.
2002-11-07 22:59:46 +00:00
david
2de88f278b Started new, XML-configurable GUI subsystem. 2002-11-07 16:27:47 +00:00
david
0de065b0ec Added fgLoadProps to load properties from a path relative to FG_ROOT. 2002-11-06 18:57:31 +00:00
david
a8f40e0771 Fixed bug in timed update cycling. 2002-11-06 16:04:04 +00:00
david
e9dc716221 Added a new TimedAnimation, using the type "timed" and the property
duration-sec.  This animation may have any number of child objects,
and each one will be displayed for the requested duration before
moving on to the next one.

Added Animation::init for initialization after children have been
added to an animation.

Added a default implementation of Animation::update, and removed all
of the empty ones in derived classes.

Removed tabs from model.cxx.
2002-11-06 15:47:40 +00:00
andy
7b7de3d3e0 Blindingly stupid ground effect bug. It interpolated in the wrong direction
(zero at ground, maximum at 1-span!)
2002-11-05 21:36:47 +00:00
david
dd10ae6ba8 Patch from Andy Ross:
Indeed, there was no check for panel visibility in the input code.  I
guess we've never noticed because nothing was fighting for the same
real estate in the past.  This one-liner appears to fix the problem.

[also converted all tabs to spaces for Norm Vine]
2002-11-05 02:28:07 +00:00
curt
b57a78e637 Cleaned up some debugging output. 2002-11-04 16:58:54 +00:00
curt
925126fa6b Add support for drawing ODALS approach lighting. 2002-11-04 16:34:42 +00:00
david
f2a5f98532 Patch from Jim Wilson:
That's a little too small to resolve differences at 16bpp. Try the
patch below.  It decreases the lifting substantially.  You will see
a slight increase in z-buffer flickering but it isn't bad.  Note
that we removed the "distance" component the other day,  the purpose
of it was to lift the lights higher when viewed at shallow viewing
angles.  The distance component is critical for the street lights that
can be very long distances away.

But with the distances we're working with here it really doesn't
do all that much.  The factor used in this patch is about as shallow
a lift as can be used when looking straight down at the airport.  At
24bpp there's no effect from incorporating a distance component.

The choice is to reintroduce a distance component...one that works (and
only for 16bpp), or alter the factor used in the patch below to strike an
acceptable balance between different viewing angles when in 16bpp mode.
2002-11-04 02:17:13 +00:00
david
68d44ac103 Removed debug print statements.
Added ability to set a name for an animation and refer to it in
subsequent animations.
2002-11-03 15:48:08 +00:00
david
351a4d5c09 Streamline to create fewer branch nodes. This involves moving some
objects around when an animation specifies more than one object.
2002-11-03 15:42:11 +00:00
david
2bc7a538cf Eliminate dependency of flight.hxx on model.hxx, to avoid unnecessary
rebuilding.
2002-11-03 15:41:30 +00:00
david
f06a658bee Modified /sim/current-view/axes/long and /sim/current-view/axes/lat to
use the user-configurable view defaults.
2002-11-02 21:43:15 +00:00
curt
dbf997a2d3 Put taxiway lights in their own scene graph so we can adjust their brightness
(or fog punch through) independently from the ground or runway lighting.
2002-11-01 21:56:48 +00:00
curt
eb0c92f8ff Fix a couple oversights in the runway light lifting formula. 2002-10-30 22:56:22 +00:00
curt
94a36038d2 Remove distance component from runway lifting function. Only use the AGL
component.  This seems to work pretty well and simplifies things a fair bit.
2002-10-30 21:59:05 +00:00
curt
72017fc671 Andy Ross:
The biggest and coolest patch adds mouse sensitivity to the 3D
cockpits, so we can finally work the radios.  This ended up requiring
significant modifications outside of the 3D cockpit code.  Stuff folks
will want to look at:

+ The list of all "3D" cockpits is stored statically in the
   panelnode.cxx file.  This is clumsy, and won't migrate well to a
   multiple-aircraft feature.  Really, there should be a per-model list
   of 3D panels, but I couldn't find a clean place to put this.  The
   only handle you get back after parsing a model is a generic ssg
   node, to which I obviously can't add panel-specific methods.

+ The aircraft model is parsed *very* early in the initialization
   order.  Earlier, in fact, than the static list of allowable command
   bindings is built in fgInitCommands().  This is bad, as it means
   that mouse bindings on the instruments can't work yet.  I moved the
   call to fgInitCommands, but someone should look carefully to see
   that I picked the right place.  There's a lot of initialization
   code, and I got a little lost in there... :)

+ I added yet another "update" hook to the fgRenderFrame routine to
   hook the updates for the 3D panels.  This is only required for
   "mouse press delay", and it's a fairly clumsy mechanism based on
   frame rate instead of real time.  There appears to be delay handling
   already in place in the Input stuff, and there's a discussion going
   on about different mouse behavior right now.  Maybe this is a good
   time to unify these two (now three) approaches?
2002-10-29 19:44:03 +00:00
curt
5a439826ff Andy Ross:
Make rotational rate FDM values available from the property tree.
This is required for some cool stuff I've been doing with the Harrier.
2002-10-29 19:27:05 +00:00
david
9a5080b6ad Fixed jump around the north indication. 2002-10-27 20:32:34 +00:00
andy
f80b8660bf Fix coordinate conventions for reporting pilot acceleration. Add a few
digits to the c.g. report.
2002-10-27 04:30:34 +00:00
david
fa87fe5c1d Modified for simpler command-manager interface. 2002-10-26 01:19:23 +00:00
david
d43dfa54df Major code simplification. 2002-10-25 22:19:51 +00:00
curt
4c2e97be18 Default to experimental point lighting disabled. 2002-10-24 14:05:40 +00:00
curt
ae46fe825f Erik Hofman: Irix build fixes. 2002-10-24 14:02:19 +00:00
curt
a9b9e9d155 Tweak red and blue runway light colors a bit more. 2002-10-24 14:02:06 +00:00
curt
786e58aa1a Removed some left over debugging output. 2002-10-24 12:12:14 +00:00
curt
bbf33cc7cb White space tweak ... 2002-10-24 12:11:55 +00:00
curt
d62b1a0a66 Fix a subtle bug in the partial ssg tree deleter which was leaving some
parts of the tree left over at the end which the failsafe was catching, but
this could impose a huge framerate hit if the missed portion of the tree
was large enough (and it very often was.)
2002-10-24 03:38:14 +00:00
curt
aff9655029 Tweak lighting colors a bit. Add a slight yellow tint to "white" lights.
Add a slight orange tint to "yellow" lights.  Brighten the blue lights a bit
to make them more visible.
2002-10-23 16:29:53 +00:00
curt
2214f540e2 Fixed the DG heading bug hold to work with the new DG instrumentation.
It was slightly goofed up before by about the amount of the magnetic
variation.
2002-10-23 16:27:30 +00:00
curt
66e8d3fe65 Updates to how we structure runway lighting in the scene graph so we can get
the range selector to work on a per runway (or per lighting group) basis.
2002-10-22 20:47:14 +00:00
curt
95f46806c2 Tone down the relative intensity of the taxiway lights. 2002-10-22 04:12:33 +00:00
curt
13813f9143 Added support for taxiway lights that are much more visible from the size
than from above.
2002-10-22 03:57:32 +00:00
curt
86d586e592 Make runway lighting LOD work correctly. 2002-10-21 19:45:21 +00:00
curt
15b6f15d36 Misc clean ups. 2002-10-21 16:26:48 +00:00
curt
4496bf341d Preallocate proper ssg list sizes when building list structures so plib
doesn't need to waste time extending it's list sizes.
2002-10-21 16:26:34 +00:00
curt
a4c06de42f Fix a bug with rabbit light creation. 2002-10-21 16:09:11 +00:00
curt
b0d12281c8 Minor tweak to avoid some compile errors people are seeing with the
glPointParameterExt.
2002-10-21 03:22:27 +00:00
david
d7662bceb8 Put cout and endl in std:: namespace. 2002-10-19 10:27:52 +00:00
curt
9c561ab860 Add a pre/post draw call back to strobe lights so we can make them bigger
so they will stand out from everything else.
2002-10-18 18:43:50 +00:00
curt
89ede45989 There are some problems with ssgTimedSelector's but shorter strings of
rabbit lights appear to almost work except the last light or two is never
included in the animation and longer strings of lights are drawn as all
light on ... :-(
2002-10-18 03:36:56 +00:00
curt
bbdca39e3b Some restructuring to optimize the light point portion of the scene graph.
There's no point in having a separate leaf for each light.
2002-10-17 23:17:16 +00:00
curt
7df3da668c Fix a bug in ground elevation measuring for the first frame after we cross
a tile boundary.  (Potentially imposes a slight performance penalty, but
getting the correct answer needs to be higher priority than getting the
wrong answer really quickly.)
2002-10-17 15:54:31 +00:00
curt
a01f92f0d1 Support green directional lights. 2002-10-17 15:52:32 +00:00
curt
55b7dc661e Playing with glPointParameterfEXT. 2002-10-17 04:34:32 +00:00
curt
050f44adc8 Cleaned some cruft. 2002-10-17 03:11:10 +00:00
curt
9d5281a5d1 Add support for generating REIL approach light animations. 2002-10-17 03:08:46 +00:00
curt
66bd17bfa3 Add support for additional runway light colors and intensities. 2002-10-16 22:39:08 +00:00
david
8aae366757 Fixed so that ASI will indicate correctly (or at least, more
correctly) in winds.
2002-10-16 22:09:26 +00:00
curt
3f7b0533a5 Add support for wind speed/direction and freezes. 2002-10-16 03:46:24 +00:00
curt
27c4385980 Throttle was being scaled with mixture config values.
Cleaned up some old cruft.
2002-10-16 03:46:05 +00:00
curt
4ef75aa6c8 Playing with point lighting effects. 2002-10-16 03:44:44 +00:00
curt
8166467292 Cleaned up some old cruft. 2002-10-16 03:44:19 +00:00
curt
b699a0aac9 Added support for passing wind speed/direction.
Added support for passing various freeze commands to fdm.
Initial support for in-air starts.
2002-10-16 03:43:52 +00:00
curt
1ce4ef590f Norman Vine:
Updates to the autopilot to allow it to run off of 'non-cooked' altitude
and heading values (as a compile time option.)
2002-10-16 02:06:42 +00:00
curt
f38c88b762 Fix an init order bug and do some minor cleanups. 2002-10-16 02:02:39 +00:00
david
f962e24fee Use default visibility instead of modified sky visibility when 2D
clouds are disabled.
2002-10-13 10:46:37 +00:00
david
b66a6c75b3 Patch from Frederic Bouvier:
I noticed that textures for scenery static objects are not loaded
anymore for a few weeks.  Static objects have absolute path while
random objects and aircraft have relative path but fgLoad3DModel
unconditionally prepend fg_root to the model path. This patch test the
beginning of the model path to choose if fg_root has to be prepended
to the model path.
2002-10-13 10:43:57 +00:00
david
76cda01641 Fixed init-order bug that caused c172-set.xml defaults always to be
used unless explicitly overwritten.  Now, the options are parsed
twice, and only the *-set.xml file for the *last* aircraft specified
is loaded.
2002-10-10 18:39:52 +00:00
david
e8db622ce1 Patch from Alex Perry:
Ok, I found the problem.  You're computing the dynamic pressure in
"psf" and adding it to the static pressure in "inHg" to form the
total pressure.  The attached patch is the simple fix to the source.

With that fix, failing the pitot while in cruise at 3k' will cause
the airspeed to indicate beyond redline during climb ... well before 4k'.
Thus, a pitot problem can be detected on any IFR altitude change.

Similarly, failing the static (with working pitot) while cruising 4k'
causes the airspeed to indicate beyond redline during a descent
well before reaching 3k' (during which, of course, the ALT looks fine).
Thus, a static failure can be detected before the aircraft breaks out
of the pilot tolerance range and is blatantly conspicuous soon after.
2002-10-10 18:15:22 +00:00
curt
470d233f0d Eric Hofman:
Now the options can be localized as well. This adds a slight problem for
the --language options, but not that much (worst case, the strings are
loaded twice consuming some more memory). I tried to be as accurate as
posiible when copying the options texts, but there might be some
mostakes left.
2002-10-10 15:02:50 +00:00
curt
83314d3f45 Fix a potential crash with William Riley's scenery build. 2002-10-09 14:29:42 +00:00
curt
257c065d81 misc tweaks. 2002-10-09 14:15:08 +00:00
curt
f54302e9e9 Begin work on improving runway lighting infrastructure. 2002-10-09 03:40:23 +00:00
curt
e74c4d9437 Oops, I had my lighting tris wound the wrong way. 2002-10-08 22:25:41 +00:00
curt
9dcf7dd13f Erik Hofman:
This adds supports for a language specific font, defined in locale.xml
I've also moved the fgInitLocale() routine from main.cxx to fg_init.cxx
to prevent an ungly extern definition in options.cxx.
2002-10-07 15:45:00 +00:00
curt
cf96178ea8 Misc clean ups. 2002-10-06 04:27:24 +00:00
curt
c162577340 Begin work on rendering runway lights using environment maps. The basics
are now working.  A runway light is defined by a point and a direction.  The
point and direction are combined with the local up vector to create a small
triangle orthogonal to the direction.  The two ficticous corners of the
triangle are given an alpha value of zero, the orignal corner is given an
alpha of one.  The triangle is drawn in glPolygonMode(GL_FRONT, GL_POINT)
mode which means only the corner points are drawn, and since two have alpha=0
only the original point is drawn.  This is a long way to go to draw a point,
but it ensures that the point is only visible within 90 degrees of the light
direction, behind the light it is not visible.  This is still a long way
to get to drawing a point, but we use an environement map, with the direction
vector as the normal to mimic a light that is brightest when viewed head
on and dimmest when viewed perpendicularly or disappears when viewed from
behind.

- warning, there is a bug in how the current runway light direction vector
  is calculated which will adversely effect runway lighting.  The airports
  should be regenerated in order to fix this problem.
2002-10-06 03:53:19 +00:00
curt
f0b7744fd5 Frederic Bouvier:
The FGGlobals constructor does not initialise the locale pointer.
Under MSVC, uninitialized pointer have a value of 0xcdcdcdcd, not
0, so a test in mainLoop fails and the program segfault.

This patch set un initial value to locale.
2002-10-04 20:57:18 +00:00
curt
5cf14e78c4 Erik Hofman:
This patch fixes some bugs for correctly reporting un-updated
configuration files, and adds support for a --language=<code>
commandline option, overriding the language specified by the OS.
2002-10-04 15:19:07 +00:00
david
29eb5f7f5d Eliminated current_input and added FGInput to the subsystems managed
by FGSubsystemMgr.
2002-10-04 13:20:53 +00:00
david
598db3d528 Decrease the error (slightly) from a power glide. 2002-10-04 01:04:20 +00:00
david
ee6f6ecf61 Turn the runway lights on during the day when visibility is less than
5000m (about 3SM).
2002-10-04 00:23:40 +00:00
david
d1f5f04423 Have update check that sound is enabled. 2002-10-03 21:21:44 +00:00
david
38f0d6a35c First draft of subsystem manager; moved some subsystems into it. 2002-10-03 21:20:56 +00:00
david
fe14223750 Ignore generated files. 2002-10-03 16:59:32 +00:00
curt
44fcbbd0af Better internationalization infrastructure. We now supports the "LANG"
environment variable.
2002-10-03 14:39:37 +00:00
curt
bacbd50eaa Init 3d clouds at starting location. 2002-10-03 03:19:35 +00:00
david
c581cfa395 Preliminary support for AI planes from Dave Luff. This works only at
KEMT (w120n30 scenery), and you will have to set the property
/sim/ai-traffic/enabled to 'true' to see the other plane (and tune
comm1 to 121.2 to hear the other plane's radio calls).
2002-10-02 15:27:49 +00:00
david
03b508adb7 Support Dave Luff's AI plane if /sim/ai-traffic/enabled is set to
true.
2002-10-02 15:25:58 +00:00
david
ab27c591b5 Removed print statements accidentally committed. 2002-10-01 23:35:33 +00:00
david
42dfe6256f Corrected so that deflections are reversed on ILS backcourse. 2002-10-01 23:28:17 +00:00
curt
8ad519d854 Get rid of some debugging output. 2002-10-01 18:39:49 +00:00
curt
8722af0eb8 Read menu titles indirectly from specified property names so we can support
translations.
2002-10-01 18:38:34 +00:00
curt
4fb56176ce Allow for a user specified timeout when waiting for a response from the
remote fdm command server (http server.)
2002-10-01 16:44:38 +00:00
curt
4763dbae6a Pass data needed to make David's new ASI model work correctly. 2002-10-01 15:26:15 +00:00
curt
1604c9bae2 Erik Hofman:
This is a small patch which resets the delay counter if the sound
doesn't need to be stopped. Also the code is reorganiozed a bit to fix
sume "bugs".
2002-09-30 18:45:09 +00:00
david
b0afca93d5 Put gyro spin into a property so that it can be restored after a save. 2002-09-29 18:26:24 +00:00
tony
09cb9b750c Include gravity in pilot accel calc when Vt < 1 2002-09-29 14:13:39 +00:00
tony
eb05a298e9 Latest JSBSim updates -- includes fix for control surface animations. 2002-09-29 13:33:53 +00:00
tony
2c1889a8b5 Removed delete of dangling pointer -- fixes seg fault on reset 2002-09-28 22:48:21 +00:00
curt
2eaaddc52a Renamed raw_ctrls.hxx -> net_ctrls.hxx which makes more sense and matches
net_fdm.hxx.
2002-09-28 22:10:49 +00:00
curt
0d87fad65c Shuffled location of ExternalNet.[ch]xx to it's own subdir.
Removed External.[ch]xx which is a duplicate of NullFDM.[ch]xx
--fdm=external is preserved but just maps to NullFDM.
2002-09-28 21:42:03 +00:00
curt
d2dbf0a8ee Moved the ExternalNet code to it's own subdirectory. The plan is also
place standalone FDM wrappers here as well so we can build FDM specific
executables that interface with FG via the ExternalNet interface.
2002-09-28 21:38:51 +00:00
david
1acb43dbfc Added pitot system and new airspeed indicator. 2002-09-28 20:48:53 +00:00
curt
dc7103245a My understanding of plib's net libs has expanded slightly. A couple of
small mods here reflect that and allow the external network connection
to play better when other net connections (i.e. telnet) are activated.
2002-09-28 17:37:44 +00:00
curt
57ba57a18b Erik Hofman:
For sounds that play while a value is in transit, use time rather than
the number of frames to judge when to halt the sound because it will be much
more reliable on high performance systems. It currently waits 10 ms.
before stopping the sound, but you might want to fiddle it a little by
changing MAX_TRANSIT_TIME defined int fg_sound.hxx
2002-09-28 12:16:37 +00:00
curt
de667227c4 Minor formating tweaks. 2002-09-28 04:01:34 +00:00
curt
3a0f56a6e6 Removed some extraneous spaces that crept in some how. 2002-09-28 04:01:20 +00:00
curt
a677ddac5d Pass ground elevation at aircraft position to external FDM, not ground
elevation at view point.
2002-09-28 04:00:55 +00:00
curt
c7df5f3639 Panel night lighting acts as if lights are always turned on. We don't
really see anything different in the day, but as day turns to night the
panel smoothly darkens and the lighting component becomes visible.
Lights are wired to electrical system so if you kill power, you lose the
lights.
2002-09-28 03:57:37 +00:00
david
8685e68b99 Modified to use fgGetLowPass from utils.cxx. 2002-09-27 22:04:21 +00:00
david
5289055776 Added a heading-indicator connected to the vacuum pump and a
vertical-speed indicator connected to the static port.
2002-09-27 22:03:48 +00:00
david
c542559097 When the clock is frozen, set delta time to 0 so that the subsystems
won't keep updating themselves; that effectively freezes the
instrumentation.
2002-09-27 22:02:48 +00:00
david
3da2de39fc Add utils.[ch]xx. 2002-09-27 22:02:09 +00:00
david
84d2627236 Globally-useful functions, starting with Alex Perry's low-pass
function from steam.cxx.
2002-09-27 22:01:33 +00:00
curt
b81139dab3 Pass stall warning info in net_fdm.hxx 2002-09-27 21:20:28 +00:00
david
8d5714084e Added static port system and a new altimeter model connected to it.
The static port uses the

  /systems/static/

property subtree, and the altimeter uses the

  /instrumentation/altimeter/

property subtree.
2002-09-27 18:27:58 +00:00
curt
d150450b06 Mixture is on channel 6. 2002-09-27 02:33:32 +00:00
curt
c1417a0268 Pass velocities in local body axis. 2002-09-27 01:20:20 +00:00
curt
a7fb46bcb2 Interface the adf and transponder to the electrical system. 2002-09-26 17:26:34 +00:00
curt
3fdcbbd6ce Code clean ups. 2002-09-26 17:25:19 +00:00
curt
cd9c38e0b4 Connect to the electrical system. 2002-09-26 17:24:11 +00:00
curt
2a73201ca8 More code shuffling. 2002-09-26 16:19:06 +00:00
curt
eaf4954441 Shuffling/reorganizing code. 2002-09-26 15:34:00 +00:00
curt
2a19fc2f53 Work on wiring the dme into the electrical model. 2002-09-26 14:13:42 +00:00
curt
cc4821e43f Each node in the electrical system graph can now publish to an arbitrary
number of properties which will reflect that node's state.
2002-09-26 04:51:23 +00:00
curt
911e7dbfa8 For flaps power, fuel pump, and starter, send power state rather than switch
state.
2002-09-26 04:49:31 +00:00
curt
4a28902197 Begin interfacing the navcom's to the electrical model. 2002-09-26 04:47:29 +00:00
curt
427505cf37 Begin interfacing with the electrical model. 2002-09-26 04:45:45 +00:00
curt
d16f082500 Read and publish states of master switches (bat, alt, avionics.)
Read and publish states of toggle switches and circuit breakers.
2002-09-25 22:09:38 +00:00
curt
d53b005a41 Interchange state of fuel_pump (switches) and master switches (bat, alt,
and avionics.)
2002-09-25 22:08:43 +00:00
curt
4a43282b72 Change path name of electrical system config file. 2002-09-25 22:07:28 +00:00
curt
d976a1f879 Added fuel_pump switch, and master switches (bat, alt, avionics) 2002-09-25 22:06:38 +00:00
curt
f26e8e5af0 Added a per-engine fuel pump switch. 2002-09-25 22:05:49 +00:00
curt
02d1d81348 Fixed a compiler warning. 2002-09-25 22:05:14 +00:00
curt
c6c96eb688 Remove 'cout' 2002-09-25 12:38:09 +00:00
tony
04f7625c67 Fixes for flaps, gear, and reset. The c310 takeoff rotation problem seems to be fixed as well, though I don't understand why. 2002-09-25 11:04:20 +00:00
curt
8d2014f7bc Updates to the electrical system model. "Juice" is now propogated through
the system, switches, fuses, circuit-breakers work.  Nothing is actually
wired into the electical system yet.
2002-09-24 23:45:56 +00:00
curt
3323efa256 Check point commit:
The code reads the electrical system config and contructs an internal model.
Nothing is done beyond that yet ... the electrical system is not updated,
nor is it connected to the property system in anyway.
2002-09-24 19:57:11 +00:00
david
6a8371c44c Introduce a simplistic spin-down when insufficient suction is
available.
2002-09-24 16:37:28 +00:00
curt
90e64f9430 Stub in a place holder for the electrical system model. 2002-09-24 15:24:04 +00:00
david
512f37185a Ignore generated files. 2002-09-24 14:55:14 +00:00
david
682feb8f2d Flattened src/Systems/ subtree.
Added src/Instrumentation/ with partial stab at a vacuum-driven
attitude indicator.
2002-09-24 14:51:37 +00:00
david
e97b8841e1 Forgot to update header.
Added .cvsignore.
2002-09-24 13:11:27 +00:00
curt
d19ef4008d Small tweaks for improved compiling. 2002-09-24 13:07:30 +00:00
tony
ab242159a3 JSBSim updates. This update changes the file format, so an update of the base
package is required.
2002-09-24 12:54:43 +00:00
curt
43af8026d8 More tweaks to opengl state management when drawing 3d clouds. 2002-09-23 22:05:36 +00:00
david
7c057de4fe Started new module and sub-modules for aircraft systems, including an
initial simplistic vacuum system that's not yet connected to anything.
2002-09-23 19:55:10 +00:00
curt
f6607cac90 Removed some depricated code snippets. 2002-09-23 18:52:21 +00:00
curt
5133b9467b Removed some left over debugging output. 2002-09-23 18:49:12 +00:00
curt
29e72b0b90 Various tweaks and fixes to navcom radios.
Oops, taking the address of a temporary in main.cxx: 3dcloud rendering.
2002-09-23 18:44:09 +00:00
david
5eef7d7ad1 Removed tabs. 2002-09-23 15:27:46 +00:00
curt
7b01068d9c Bernie Bright:
fgLoad3DModel() throws an exception if it fails to load the requested model.
This causes FGTileMgr::update(...) to exit.  So I've added a try/catch block
to catch the exception and display an error message instead.
2002-09-23 14:23:17 +00:00
curt
578073a6f3 Slightly cleaned up 3d cloud positioning code. 2002-09-23 13:34:51 +00:00
curt
e23b22fabe There is something wierd about moving the cloud base around, let's just leave
it rooted in place until we sort out the positioning.
2002-09-22 23:07:01 +00:00
tony
743b4848cf Changed much inline code to non-inline. The inline code that remains in the header *must* be there to avoid linker errors. 2002-09-22 15:32:45 +00:00
tony
1ca94a72c0 Latest updates, including a thrust-only turbofan model. It should produce
realistic thrust (including time-dependent effects), but does not provide
N1, N2, EPR, etc.
2002-09-22 15:31:09 +00:00
david
c3a1a9335e Added OBJECT_SHARED, which is identical to OBJECT_STATIC except that
the object is loaded relative to $FG_ROOT rather than to the current
scenery directory.
2002-09-22 11:46:53 +00:00
curt
ab49022465 Patch to position 3d clouds at center of <current> tile. This means the clouds
jump whenever you cross a tile, but there are currently a lot of other
positioning problems as well, so this doesn't really detract too much and
means you can play with 3d clouds from just about any starting point.
2002-09-20 15:30:54 +00:00
david
2d7d0034d0 Do 3D cloud state changes only when 3D clouds are selected. 2002-09-20 14:01:06 +00:00
curt
53b9eacf74 Stabalize cloud shading. 2002-09-19 02:21:23 +00:00
curt
b350c6cd0f Miscellanious flailings trying to get 3d cloud imposter rendering to work
correctly.
2002-09-19 01:27:49 +00:00
curt
a15f79f4ae Cascading changes from the navcom.[ch]xx addition. 2002-09-19 01:12:26 +00:00
curt
3d2311d884 Split Nav/Com units out into their own source code file to continue the
process of simplifying radiostack.[ch]xx
2002-09-19 01:11:07 +00:00
curt
e0a7536e55 Erik Hofman:
This patch shows fatal error messages even when ./configure --disable-logging
is specified.
2002-09-18 16:13:08 +00:00
curt
c5f7f15f5b Updated from Norman to hack on clouds ... some progress. 2002-09-18 14:57:20 +00:00
curt
bb4fe6907f Bernie Bright:
Fix a problem compiling Main/fg_io.cxx with MSVC.
2002-09-17 16:16:54 +00:00
curt
0d7a859d76 Bernie Bright:
Added some missing defines to config.h-msvc6 and updated the version macros.
2002-09-17 16:16:31 +00:00
curt
b811ce4bcf Fixed some stupidity. 2002-09-17 02:36:59 +00:00
curt
cc87fb93ba Updates for 3d cloud rendering. 2002-09-16 14:56:16 +00:00
david
95e1b51068 Added --enable-clouds3d and --disable-clouds3d options. 2002-09-16 02:46:23 +00:00
curt
73c4fd481d Changed the clouds3d header install directory. 2002-09-15 04:32:49 +00:00
curt
82c87b2456 Updated the base package version required. 2002-09-14 01:58:40 +00:00
curt
bdde29e203 Update base package version. 2002-09-13 23:37:55 +00:00
curt
a4b3e35c0e Stubbed in initial support for 3d clouds. 2002-09-13 20:38:15 +00:00
curt
b92244ea7a Added support for calibration properties. 2002-09-12 03:15:27 +00:00
curt
e2313bfb55 Michael Selig:
A bug lurked into our uiuc code.

There are two changes:
[1] Comment out the chunk of code as shown (compare w/ the old)
[2] Put back in the function call, and in that code change AlphaTail to Alpha.
2002-09-11 18:27:26 +00:00
curt
f8abc6d848 Fixed: When you select Menu->Autopilot->Set Heading nothing happens. 2002-09-11 16:51:23 +00:00
curt
1784ad74b6 Updates from Rob Deters. 2002-09-11 16:45:47 +00:00
curt
93c9f8cbf4 Updates from Rob Deters. 2002-09-11 02:31:10 +00:00
curt
ed4a2e6db6 Darrell Walisser:
This allows it to behave like a certified Mac OS X citizen.
2002-09-10 19:43:33 +00:00
curt
f8c24745b6 Initial revision 2002-09-10 01:13:59 +00:00
curt
5598d2735a Read the desired menu font from the property system (or default to
typewriter.txf if it's not specified.)
2002-09-07 14:16:06 +00:00
curt
2da005377e Fix a typo that could cause a crash on some platforms. 2002-09-07 14:15:10 +00:00
david
832d514d05 Added explicit std:: prefix to map to work-around MSVC6 bug reported
by Jonathan Polley.
2002-09-07 13:16:48 +00:00
david
f0195b564d Made temperature, dew-point, and pressure at altitude read-only, so
that they won't get messed up during a reset if there are reassigned
before the altitude.
2002-09-07 13:00:20 +00:00
david
0ba90f4d2b Patch from Julian Foad:
Use getDisplayName instead of duplicated code: gives a better
decision on whether to display the index.
     Replace unnecessary node lookups by name with direct access: tidier
and more efficient.  E.g. "getValueTypeString
(node->getNode(name.c_str()))" -> "getValueTypeString (child)".
2002-09-07 12:35:31 +00:00
david
7599f0ec8c Patch from Julian Foad:
When the scroll bar slider is dragged, the list scrolls only far
enough to see all items; only the arrow buttons can scroll it so far
that the last item goes to the top of the view.
     Fix scroll bar proportional size: was wrong when the list was only
a little longer than the visible area.
     Minor fixes such as "delete files[i];" -> "delete[] files[i];"
(where the item being deleted is an array of characters) and removal of
global variables.
     Smooth scrolling when dragging the slider: one item at a time,
rather than one tenth of the list at a time.
     Fix a bug that would have occurred if instantiated with arrows=2.
     Sort properties primarily by name and then by numerical index
order, rather than a simple ASCII string order.  E.g. "js[1]", "js[2]",
"js[10]" rather than "js[1]", "js[10]", "js[2]".
     Avoid crashing if the selected property path does not exist;
display an empty list instead.  This cannot happen when the property
picker is working properly, but did happen due to missing indices prior
to this patch, and could happen if the user is allowed to type a
pathname, as in the http and telnet interfaces.
     Fix truncation of strings to PUSTRING_MAX: was wrong when string
length was exactly 80.
     Fix: move the scroll bar to the top each time a new list is
displayed.  It was left at its previous position, while the top of the
new list was displayed, not corresponding to the slider.
     Use getDisplayName instead of duplicated code: gives a better
decision on whether to display the index, and avoids invalid property
paths being generated which would previously crash find_props().
     Replace unnecessary node lookups by name with direct access: tidier
and more efficient.  E.g. "getValueTypeString
(node->getNode(name.c_str()))" -> "getValueTypeString (child)".
2002-09-07 12:35:06 +00:00
curt
6bcef49afc Erik Hofman:
It turned out that pui required the submenu structure to be declared
backwards, which I didn't notice the first time.
2002-09-05 21:58:24 +00:00
tony
83179a5daf Various clean-ups. 2002-09-05 13:55:16 +00:00
curt
e9dba2caa1 Removed dos line endings. 2002-09-03 13:27:45 +00:00
curt
1dfb58783c Additional build system tweaks. 2002-09-03 01:12:26 +00:00
curt
9de48125cc Initial revision. 2002-09-03 00:50:01 +00:00
curt
9a5ec79e11 Updates to the UIUCModel code. This includes some big compile time
speedups to uiuc_menu.cpp.

(Note these were originally submitted before the cutoff date for new
features, but something was corrupted in the transfer so I granted a bit
of leeway in the schedule.)
2002-09-02 23:26:28 +00:00
curt
401c0afcd9 Return the closest match, not just the first match. Sometimes there
are stations with the same frequency close enough together to cause problems
for our code.
2002-09-02 05:31:46 +00:00
curt
692445fe3e Read the com1/2 on/off switch. 2002-09-01 03:02:11 +00:00
david
d4f92d6aff Removed unused cur_view_fdm variable as suggested by Bernie Bright. 2002-08-31 19:48:28 +00:00
tony
408c3d5dda Removed unused and improperly initialized constant. 2002-08-30 13:43:28 +00:00
curt
66ab510a3e Norman's fix to make the help system start on Win32.
And fixed up some other non-sensical code in the vicinity which
was generating compiler warnings.
2002-08-29 21:00:22 +00:00
tony
f8c1e8dc98 Fixed an oops. 2002-08-29 13:39:29 +00:00
tony
b2fe0cc682 Added FGTurbine.[ch]* 2002-08-29 13:27:43 +00:00
tony
3f459636fd New Turbine engine model framework 2002-08-29 13:26:49 +00:00
curt
430f030cbf Make adf volume and adf on/off seperate properties. 2002-08-29 04:18:55 +00:00
curt
17efea3ec0 Ignore files that have -set.xml in them, but don't end in that exact string
(i.e. something-set.xml~)
2002-08-28 17:53:52 +00:00
curt
61655bb2b2 Add support for a --show-aircraft option. This displays a list of all
available aircraft and a brief description if one is available.
2002-08-28 16:59:40 +00:00
curt
5aaa533da9 Fix a compile error. 2002-08-28 16:58:57 +00:00
tony
b5d116dad7 Latest JSBSim updates. 2002-08-28 13:46:42 +00:00
curt
21db1e10b2 More tweaks to the automake/conf configuration scripts. 2002-08-28 03:34:31 +00:00
curt
ff7c8101bc Modernize the autoconf/automake files. 2002-08-27 23:52:15 +00:00
curt
050ba12fba Strip dos line endings. 2002-08-26 22:04:10 +00:00
curt
25c4d9b620 Minor tweaks to sound subsystem update rates. 2002-08-26 20:46:13 +00:00
curt
3976a6d55c Removed an old test. 2002-08-26 00:08:14 +00:00
curt
ee35eecb54 Erik Hofman:
I removed some pending random code and I also fixed a
small cosmetic glitch where dt_play was cleared before it was printed.

Curt: Erik changed the sound update intervale and I further I tweaked it.
The issue is that if we put too much into the sound buffer, then we can't react
quick enough to sounds like tire squeek that need to be synced with the visuals
and the action.  We put too little into the sound buffer and we risk the
audio dropping out for moment if a frame takes longer to draw than the amount
of audio in the buffer.
2002-08-25 23:27:00 +00:00
curt
61cf3a8f6d Erik Hofman:
I cleaned up the XML menu code a fair bit, in preparation to C++-ifying it.
2002-08-25 22:53:38 +00:00
curt
b21333d4f8 Erik Hofman:
I've modified the code to display a brief help message instead of the
whole bunch of options. To get the complete message -v or --verbose has
to be added to the command line.
2002-08-25 22:38:20 +00:00
curt
df6989a37a Bernie Bright:
Here is a FGIO class derived from FGSubsystem that replaces the fgIOInit()
and fgIOProcess() functions.  The FGIO::update(double delta) doesn't use the
delta argument yet.  I suspect it could be used as a replacement for the
calculated interval value but I'm not familiar enough with that piece of code
just yet.

I've also added two "command properties" to fg_commands.cxx that select the
next or previous view.  Writing any value to these properties triggers the
corresponding action.  As an example I modified my keyboard.xml:

 <key n="118">
  <name>v</name>
  <desc>Next view</desc>
  <binding>
   <command>property-assign</command>
   <property>/command/view/next</property>
   <value type="bool">true</value>
  </binding>
 </key>

 <key n="86">
  <name>V</name>
  <desc>Prev view</desc>
  <binding>
   <command>property-assign</command>
   <property>/command/view/prev</property>
   <value type="bool">true</value>
  </binding>
 </key>

And of course these actions can also be triggered from external scripts via
the props server.
2002-08-25 20:56:16 +00:00
curt
4f00d9a959 Tidy up the autoconf/automake configuration a bit.
- Removed some old cruft.

- Removed some support for older versions of automake which technically was
  correct, but caused the newer automakes to squawk warnings during an
  initial sanity check (which isn't done very intelligently.)

  NOTE: this fix is technically not correct for older version of automake.
  These older version use the variable "INCLUDES" internally and could have
  them already set to an important value.  That is why we were appending
  our values to them.  However, newer versions of automake don't set this
  value themselves so it is an error to append to a non-existant variable.
  We seem to "get away" with overwriting the value on older versions of
  automake, but if you have problems, consider upgrading to at least
  automake-1.5.
2002-08-25 19:40:04 +00:00
curt
1b197dd8bf Bernie Bright:
Here are some changes that gave me a significant frame rate increase of about 10 fps with random objects disabled.  The interesting thing is that these changes aren't in the main loop but are in tile loader.  My guess is that I've reduced the memory footprint just enough to reduce CPU cache misses, though I have no hard evidence of this.

Initially I modified all SGBinObject member functions to pass/return by reference instead of by-value.  This gives little or no speed up but allows for some optimizations in fgBinObjLoad().  It is these changes that reduce the number of memory allocations.  Needless copying of vectors, and vectors of vectors, can be very memory intensive, especially if they are large.

Anyway I would be interested to see if you get similar results.  I would emphasize that the frame rate increase only occurs with random objects disabled.  I lose about 10-15 fps on my GF2MX 32MB with random objects, probably a fill-rate limitation or texture memory thing.
2002-08-23 19:53:48 +00:00
curt
b9218c74af Scale throttle inputs a bit better.
Add support for rudder pedal inputs.
Reverse adf frq switch.
2002-08-19 02:08:43 +00:00
curt
9238050068 Add support for flipping the instrument panel vertically on screen (if
we want to do a full screen panel on a device that is mounted upside
down.)
2002-08-19 02:07:39 +00:00
curt
d2ba5b1883 Force ATC interface to run at 30 hz. 2002-08-19 01:59:26 +00:00
david
f0e40fa3f8 XML-configurable menu support from Erik Hofman.
[dpm: removed an attempt to free a pointer to a function]
2002-08-08 23:25:47 +00:00
david
47b4dcd65f Random-object and -light placement optimizations from Norman Vine. 2002-08-08 23:09:02 +00:00
curt
4dac47f558 * Cleaned up some loose ends with free tiles that are paged out of the cache.
* Finally I think I have the partial ssg tree deletion routine working correctly
  after I managed to break it (and other confusion in the code cause it to
  never be called so I didn't notice the problem.)
* Converted several SG_INFO statements to SG_DEBUG to clean up some
  extraneous console output.
* This *should* conclude my investigation into a massive memory leak. :-)
2002-08-07 02:53:01 +00:00
david
0ebe8ec8f0 Removed the FG3DModel class and replaced it with fgLoad3DModel.
Animations are now contained within the scene graph itself and are
updated whenever the graph is traversed -- that saves time by not
updating animations not currently in sight, and it allows animations
to be used for static objects and random objects as well.

Added new FGModelLoader and FGTextureLoader classes.  These are intern
tables for models, to guarantee (mostly) that no model is loaded more
than once.  FGTextureLoader is not yet used anywhere, but
FGModelLoader is now in place everywhere that ssgLoad* used to be
used (thus adding the ability to use animations).

In the future, FGModelLoader will add some interesting functionality,
including the ability to reload 3D models on the fly.
2002-08-07 01:34:49 +00:00
david
c3f4b63258 Remove dependency on acmodel.hxx out of flight.hxx (which is included
many places) and into the files that actually use it.
2002-08-07 01:30:21 +00:00
curt
29d20b1703 Temporarily fix a crash and correctly free memory until I can sort out a
problem with the partial ssg tree freeing code.
2002-08-06 18:52:45 +00:00
curt
9885169964 Working on hunting down a really awful memory leak. This arose out of a
misunderstanding over which section of code would be freeing tiles.  This
patch cleans up several things, but a little more work is still needed.
2002-08-06 18:50:12 +00:00
david
e66c57a7bb Patch from Erik Hofman to remove 'random' option for sound:
I back out this patch because it gives me 2~3 bonus fps, and it isn't
used now and probably won't be used in the future.
2002-08-05 20:49:17 +00:00
david
f253425973 Detabified for Norman Vine. 2002-08-05 20:14:28 +00:00
david
844a55c3d1 Latest JSBSim updates. 2002-08-05 20:13:34 +00:00
curt
f71e09be69 Remove call to function only in plib-cvs. 2002-08-05 18:29:25 +00:00
david
67fc66f82e Improve the random seed calculation slightly. 2002-08-04 19:10:13 +00:00
curt
0c0b150661 Bernie Bright:
I've merged FGProps and FGTelnet so there is just a single property server.
I've left in the --telnet=port# command line option but it could be removed
if we wanted to.  The command line accepts two forms of the --props option.
The original (--props=medium,dir,hz,host,port#,style) and the shorter
--props=port#.  If you accept this change then src/Network/telnet.[ch]xx
can be removed from the cvs repository.
2002-08-02 22:49:34 +00:00
curt
dc28e74081 Convert several alert/info statements to debug. 2002-08-01 21:51:09 +00:00
curt
128dd77314 Filter fuel selector knob. 2002-08-01 21:50:40 +00:00
curt
2619106044 Fix tile cache resizing bug (which could lead to thrashing.) 2002-08-01 06:15:59 +00:00