1
0
Fork 0
Commit graph

440 commits

Author SHA1 Message Date
curt
ab0964384e Bernie Bright:
Here are the Boost-less FGEventMgr updates I promised.

Removed Boost dependencies from FGEventMgr.
Removed Boost configure check.
fgMethodCallback now handles const member functions.

I've successfully tested these changes with gcc and msvc.
2002-04-11 16:25:12 +00:00
david
396674ce2e Patch from Martin Dressler:
This patch moves built-in Class (for now only mag-ribbon) into special
directory as you have written it in TODO: in comments of this class in
panel_io.cxx.  IMHO it is good idea.  I want to play with built-in
classes and OpenGC and this will be useful.
2002-04-07 21:13:56 +00:00
curt
41a4d0b351 Here is the 'boostified' event manager plus relevant changes to
radiostack.cxx, fg_init.cxx and main.cxx.  If these changes are accepted
then you can remove Time/event.[ch]xx and Include/fg_callback.hxx from
the repository.
2002-04-05 20:03:49 +00:00
david
57bccb1827 Patch from Melchior Franz:
radiostack.cxx:703 says
      bool light_on = ( outer_blink || middle_blink || inner_blink );
but none of the flags has ever been initialized when this line is first
executed.
2002-03-30 12:49:17 +00:00
david
36e012c400 Patch from Norm Vine:
patch to enpower HUD to  display elevator trimval
2002-03-27 20:27:52 +00:00
david
ec6a0b2810 Fixed a bug report from Frederic Bouvier:
as a follow-up of my previous message, I found that in panel.cxx, function
const char *FGTextLayer::Chunk::getValue () const, there is the use of a
member variable _buf that seems to be uninitialized.
2002-03-27 12:59:53 +00:00
curt
0a035c7f36 Oops, in the latest property manager rewrite, a typo crept in on
somewhat of a global scale.  This commit should fix all these up.
2002-03-26 02:38:11 +00:00
david
9709dcb307 First steps towards configurable mouse input. Soon, this new code
(mainly in src/Input/input.cxx) will make src/GUI/mouse.cxx obsolete
and bring the mouse into the same input system as the joystick and
keyboard.  This is just preliminary work allowing, covering mouse
clicks (no motion yet), and it actually crashes on a middle or right
click.

The new mouse support is disabled by default until it become stable;
to try it out, you need to configure --with-new-mouse.
2002-03-23 23:16:13 +00:00
curt
c032f841e2 more ( string == "" ) to ( string.empty() ) conversions. 2002-03-21 05:31:55 +00:00
david
f65f1800c7 Use !strcmp for all property name comparisons. 2002-03-20 22:23:10 +00:00
david
d0d3b2bd7a Use !strcmp for all property string-value comparisons. 2002-03-20 22:15:22 +00:00
curt
e95429572c Converted if ( string == "" ) constructs to if ( string.empty() )
Fixed a warning in soundmgr.cxx.
2002-03-20 19:16:13 +00:00
david
4d4cd16012 Major viewer-code overhaul from Jim Wilson:
Description:

This update includes the new viewer interface as proposed by David M. and
a first pass at cleaning up the viewer/view manager code by Jim W.

Note that I have dropped Main/viewer_lookat.?xx and Main/viewer_rph.?xx and
modified the Makefile.am accordingly.


Detail of work:

Overall:
The code reads a little easier.  There are still some unnecessary bits in
there and I'd like to supplement the comments in the viewer.hxx with a tiny
bit on each interface group and what the groupings mean (similar but briefer
than what you emailed me the other day).  I tried not to mess up the style,
but there is an occasional inconsistency.  In general I wouldn't call it done
(especially since there's no tower yet! :)), but I'd like to get this out
there so others can comment, and test.

In Viewer:
The interface as you suggested has been implemented.  Basically everything
seems to work as it did visually.  There is no difference that I can see in
performance, although some things might be a tiny bit faster.

I've merged the lookat and rph (pilot view) code into the recalc for the
viewer.  There is still some redundancy between the two, but a lot has been
removed.  In some cases I've taken some code that we'd likely want to inline
anyway and left it in there in duplicate.  You'll see that the code for both
looks a little cleaner.  I need to take a closer look at the rotations in
particular.  I've cleaned up a little there, but I suspect more can be done
to streamline this.

The external declaration to the Quat_mat in mouse.cxx has been removed.  IMHO
the quat doesn't serve any intrinsic purpose in mouse.cxx, but I'm not about
to rip it out.  It would seem that there more conventional ways to get
spherical data that are just as fast.  In any case all the viewer was pulling
from the quat matrix was the pitch value so I modified mouse.cxx to output to
our pitchOffset input and that works fine.

I've changed the native values to degrees from radians where appropriate.
This required a conversion from degrees to radians in a couple modules that
access the interface.  Perhaps we should add interface calls that do the
conversion,  e.g. a getHeadingOffset_rad() to go along with the
getHeadingOffset_deg().

On the view_offset (now headingOffset) thing there are two entry points
because of the ability to instantly switch views or to scroll to a new view
angle (by hitting the numeric keys for example).   This leaves an anomaly in
the interface which should be resolved by adding "goal" settings to the
interface, e.g. a setGoalHeadingOffset_deg(), setGoalPitchOffset_deg(), etc.

Other than these two issues, the next step here will be to look at some
further optimizations, and to write support code for a tower view.  That
should be fairly simple at this point.  I was considering creating a
"simulated tower view" or "pedestrian view" that defaulted to a position off
to the right of whereever the plane is at the moment you switch to the tower
view.  This could be a fall back when we don't have an actual tower location
at hand (as would be the case with rural airports).

ViewManager:
Basically all I did here was neaten things up by ripping out excess crap and
made it compatible as is with the new interface.

The result is that viewmanager is now ready to be developed.  The two
preexisting views are still hardcoded into the view manager.  The next step
would be to design configuration xml (eg /sim/view[x]/config/blahblah) that
could be used to set up as many views as we want.  If we want to take the easy
way out, we might want to insist that view[0] be a pilot-view and have
viewmanager check for that.
2002-03-20 17:43:28 +00:00
curt
99fa3a6e79 Various Irix cleanups.
Float/Double clean ups for fg_sound.cxx
2002-03-20 15:57:31 +00:00
david
0cc3bed841 Major property-manager rewrite, using const char * throughout
interface instead of string.  This will result in a lot more
efficiency later, once I add in a simple hash table for caching
lookups, since it will avoid creating a lot of temporary string
objects.  The major considerations for users will be that they cannot
use

  node->getName() == "foo";

any more, and will have to use c_str() when setting a string value
from a C++ string.
2002-03-19 17:12:13 +00:00
david
d0eaafb1e1 Patches from Tony Peden to separate property XML I/O operations into a
separate header file.  This change will help integrate properties into
JSBSim.

Also, I (David Megginson) removed most of the SimGear include
statements from globals.hxx, reducing the amount of recompilation
every time SimGear changes.  This required making minor changes to a
lot of files that were depending on the side-effects of the inclusions
in globals.hxx.
2002-03-16 00:18:38 +00:00
david
753242577f More work on saving and restoring flights. Restoring a flight is not
working in a running FlightGear session because of JSBSim trim-routine
problems, but it does work from the command-line now, i.e.

  fgfs fgfs.sav
2002-03-14 14:25:30 +00:00
david
36876decf3 Autopilot cleanup:
- implement the standard FGSubsystem interface, for consistency
- eliminate current_autopilot and add get/set_autopilot to FGGlobals,
  for consistency
- use private methods rather than static functions for tying
  properties

There should be no change in functionality.
2002-03-13 16:31:21 +00:00
david
6cca1d6a75 Eliminate dependencie on tying variable pointers (in preparation for
property-code simplification).
2002-03-13 15:16:24 +00:00
curt
62ed7592e3 Fixes for Irix compatibility.
Fix several long standing irix compiler warnings.
2002-03-12 20:01:54 +00:00
curt
6b40600e7b Sgi doesn't define the != operator for string != char[] so we need to cast
the char array into a (string) type before doing the comparison.
2002-03-08 23:24:59 +00:00
david
0bdc1b1699 Patch from Andy Ross to hide virtual panel when required:
Oh yeah, I forgot to send that one along.  This one is my bug, I
goofed the precedence in the fgPanelVisible() function in panel.cxx
such that the panel was *always* visible if virtual cockpit was
enabled.  Here's a replacement.  I've modified the style from a single
boolean expression to an if-list, since that's more readable to my
eyes for expressions this big:
2002-03-06 13:51:05 +00:00
curt
519ac21fa8 Fix a visibility condition bug in 3d panel. 2002-03-04 19:59:22 +00:00
david
f477a4603b Patch from Andy Ross:
Actually, I think I'm off the hook here; the problem is pre-existing.
What's happening is that the x/y offsets enter the modelview matrix at
line 346 in the current panel.cxx.  But note that the same
transformation also occurs before each instrument rendered at line
403.  What's happening is that the instruments are double-translated
relative to the background.

Unless I'm not understanding something, the one inside the instrument
render loop looks unnecessary.  Removing it fixes the issue and
doesn't cause any bugs that I can find.  It also fixes a bug where you
could scroll the instruments on top of the 3D panel, where the offsets
are supposed to be ignored. :)

Attached is a new panel.cxx which fixes that bug, and substantially
simplifies the virtual panel code (the matrix inversion that I thought
was needed wasn't, but there were some offsetting scale bugs that hid
the problem).
2002-03-04 13:27:53 +00:00
david
7e93fca8ee Virtual cockpit patches from Andy Ross:
What the attached patch does is map your panel definition onto a (non
z-buffered) quad in front of your face.  You can twist the view around
and see it move in the appropriate ways.

Apply the patch (let me know if folks need help with that step), and
then set the /sim/virtual-cockpit property to true.  You can do this
on the command line with --prop:/sim/virtual-cockpit=1, or via the
property picker.  Bind it to a key for fast toggling if you like.

The default bindings don't allow for "panning" the view, so you'll
have to modify yours.  These are the mappings to my joystick's hat
switch, for those who need hints:

   <axis n="6">
    <desc>View Direction</desc>
    <low>
     <repeatable>true</repeatable>
     <binding>
      <command>property-adjust</command>
      <property>/sim/view/goal-offset-deg</property>
      <step type="double">1.0</step>
     </binding>
    </low>
    <high>
     <repeatable>true</repeatable>
     <binding>
      <command>property-adjust</command>
      <property>/sim/view/goal-offset-deg</property>
      <step type="double">-1.0</step>
     </binding>
    </high>
   </axis>

   <axis n="7">
    <desc>View Elevation</desc>
    <low>
     <repeatable>true</repeatable>
     <binding>
      <command>property-adjust</command>
      <property>/sim/view/goal-tilt-deg</property>
      <step type="double">1.0</step>
     </binding>
    </low>
    <high>
     <repeatable>true</repeatable>
     <binding>
      <command>property-adjust</command>
      <property>/sim/view/goal-tilt-deg</property>
      <step type="double">-1.0</step>
     </binding>
    </high>
   </axis>

While the current implementation is happy with just plastering the
panel's notion of "screen" into the 3D world, this is actually more
general.  Each panel can, in principle, have it's own coordinate
system, and you could build a cockpit out of a bunch of them.  The
mapping is specified by providing a 3D coordinate for three corners of
the quad the panel should be mapped to; this should be pretty simple
to work with.

All that's needed for a perfectly general solution is a convention on
where to store the information (a cockpit xml file, or put it in the
aircraft -set file, or...), and some work on the panel's coordinate
system conventions (some of which don't coexist very nicely with a
generalized 3D environment).  Combine that with a plib model for the
non-panel interior of the cockpit, and we're golden.

I'm actually really pleased with this.  It worked better and more
quickly than I could have imagined, and impact on the surrounding code
is quite light -- a few property tests only.  But some stuff is still
missing:

+ No equivalent work was done to the HUD, so it still displays
   incorrect headings when the view changes.  The use of pixel
   coordinates deep in the HUD code is going to give me fits doing the
   port, I sure.  It's not nearly so well put together as the panel
   (where I just changed the setup code -- none of the rendering code
   changed at all).

+ I forgot that the panel was clickable. :)  Input events still have
   the screen coordinates, which essentially kills the interactivity
   when in virtual cockpit mode.  This won't be hard to fix; it's only
   broken because I forgot the feature existed.

And one note about the implementation choice: to get away from the
inevitable near clip plane issue, the virtual cockpit renderer simply
disables the z buffer.  This means that cockpits built using these
panels need to be z-sorted, which isn't too hard since they are static
geometry.  It also means that no two "virtual panels" can ever be
allowed to interpenetrate.  No biggie.
2002-03-03 00:06:24 +00:00
curt
348ac42c90 Attached is a reasonably large patch to add a proper ATC
subsystem to Flightgear.  No more functionality is implemented
than at present (apart from an ATIS bug-fix - station wouldn't
change if the radio was switched directly from one station to
another) but it is much neater than the current hack and should be
easily extendable.

Some cruft is still probably left over in radiostack.[ch]xx such as
the bindings to the comm frequencies but I'll leave removing those
until I'm sure they're not needed there.
2002-03-01 17:39:52 +00:00
david
608668bd5f Attempt to merge LED font patches back in (they were wiped out by
Jim's tiled-background patches).
2002-02-19 23:54:17 +00:00
david
d13b46b8f1 Tiled panel background support from Jim Wilson. 2002-02-19 21:57:09 +00:00
curt
b8fc42d824 Add support for multiple panel fonts (specifically an LED font.) 2002-02-19 03:42:16 +00:00
curt
fe5d1643cf Fix several off by one errors in hud_card.cxx 2002-02-08 17:19:21 +00:00
curt
b1027c7b6a Various Irix compiler tweaks. 2002-02-05 15:57:46 +00:00
curt
4324010074 Tweaks from Julian Foad:
1. Enable auto-configure on more versions of auto tools. (configure.in)
2. Warnings from auto-configure tools. (src/Time/Makefile.am)
3. Typo: "the it's" -> "its". (docs-mini/README.Joystick)
4. Remove definition of FGViewer::update() that now is (or can be) pure
virtual\
. (src/Main/viewer.cxx)
5. Preferred form of function name according to comments in plib:
"not_working"\
 -> "notWorking". (src/Sound/soundmgr.hxx)
2002-02-05 04:42:39 +00:00
curt
e75f6a8f01 Changes to support optional screen snap shot httpd server. 2002-01-16 23:02:52 +00:00
curt
1fa4c88d0e Updates to build system to better support automake-1.5
- automake-1.4 sets default values for INCLUDES which we can't
  overwrite.
- automake-1.5 renames this to DEFAULT_INCLUDES and leaves INCLUDES
  open for the developer to use.

Thus for automake-1.4 we are forced to 'append' to INCLUDES and in
automake-1.5 we can just set the value to whatever we like.
Unfortunately, the behaviors of the two versions are mutually
incompatible.

The solution I am committing now works for both versions but
automake-1.5 generates a lot of spurious warning messages that are
annoying, but not fatal.
2001-12-28 22:29:59 +00:00
david
aabdd355f0 Modified FGSubsystem::update() to take an int parameter for delta time
(i.e. multiloop).  Most subsystems currently ignore the parameter, but
eventually, it will allow all subsystems to update by time rather than
by framerate.
2001-12-22 17:33:27 +00:00
curt
85349e313e Fixed hardcode compass texture path to correspond with base package reorg. 2001-12-17 20:34:37 +00:00
david
4f5d70144a -Removed .cvsignore from itself, since .cvsignore is now in the CVS 2001-12-12 04:15:23 +00:00
curt
07c61a2243 Minor property name change to track changes in xml panels. 2001-12-10 22:06:57 +00:00
curt
4cc5cee885 David Megginson writes:
Here's an unusual patch for FlightGear -- I've created .cvsignore
files for every source directory, to make CVS output more informative.
This is especially nice when using cvs-examine from (X)Emacs to look
for changes.
2001-12-09 05:43:40 +00:00
curt
e1ac99d5c9 ** src/Cockpit/panel.cxx
- delete table in destructor

** src/FDM/flight.cxx
- bind engine properties in FGInterface::bind, and publish properties
  for all engines rather than just engine 0

** src/Main/fg_props.cxx
- removed all engine properties; now bound in FGInterface::bind

** src/Sounds/fg_fx.cxx
- support multiple engine and cranking sounds

** src/Sounds/fg_fx.hxx
- support multiple engine and cranking sounds
2001-11-30 20:55:14 +00:00
curt
e35fffa035 David Luff writes:
Heres an update to the ATIS stuff.  In brief:

The possible buffer overflow in the display with wind should
hopefully be fixed.

Temperature is taken from the global temperature property instead
of being hardwired.

The display class now includes an implementation of the member
function to change the repeating message.

The message callsign is no longer hardwired.  The first message
from each station is generated with a random callsign.
Subsequent messages from the same station have the callsign
incremented every hour.  A map of airport-id vs. last callsign and
transmission time is kept for each station that has transmitted for
the duration of the FlightGear session.  The logic might be flaky if
FlightGear is run for more than 24 hours at a stretch between
visiting the same ATIS station though!  (ie I don't check the day.)
This map is kept in the atislist class.  This might not be the best
long-term place for it (in an ATC class of some sort might be
better), but it works for now.
2001-11-19 23:53:36 +00:00
curt
b85be56a55 Changes to support Dave Luff's initial ATC/ATIS module. 2001-11-07 17:55:28 +00:00
curt
4b5bcd0f0a Cosmetic changes. 2001-10-29 04:37:24 +00:00
curt
2b056c8452 This set of changes touches a *lot* of files. The main goal here is to
fix startup sequence problems where we initialize the FDM before we know
the desired starting altitude.

These changes delay fdm initialization until the local tile has been loaded
and we can do a real intersection and find the true ground elevation.

In order to do this, I depend more on the property manager as glue, rather
than the FGInterface.

There are some glitches still when switching to a new airport or reseting
the sim.  I will work on addressing these, but I need to commit the changes
so far to keep in sync with other developers.
2001-10-28 16:16:30 +00:00
curt
eacec814e1 Fixed a typo in an #if ... 2001-10-26 22:58:28 +00:00
curt
535d708ee0 Various MSVC patches. 2001-10-24 21:25:11 +00:00
curt
33854d9f6a Fixes to remove dependencies on depricated plib code (that just happened to
be removed in the latest plib CVS.)
2001-10-24 21:24:53 +00:00
curt
b6a259dc90 Fixes for win_ratio/aspect_ratio confusion. It was due to confusion in the
meaning of "win_ratio".  I've removed win_ratio and added fov_ratio and
aspect_ratio, as it seems both are needed.

n.b. The multi-line changes in fgReshape comprise:
  extracting common code,
  removing an apparently arbitrary "+1" on the view height,
  changing "set_win_ratio" to "set_aspect_ratio".
2001-10-24 20:28:28 +00:00
curt
2fbab0d702 Various floating point / initial value bug fixes from Christian Mayer. 2001-10-11 22:07:45 +00:00
curt
cb0aa1baa1 Added panel jitter support dependent on cockpit forces (visual force feedback) 2001-10-05 20:26:21 +00:00
curt
85371ee361 Extend range of ILS in reverse direction to allow back course approaches. 2001-09-24 17:43:33 +00:00
curt
f77877ffa8 White space changes. 2001-09-20 22:10:45 +00:00
curt
1dfe83dfd4 Follow up tweaks. 2001-09-20 21:03:41 +00:00
curt
2154915465 a) HUD - Here is the updated hud code with moving pointers, dials, turn/slip gauge, choice of circular ticks, two sizes for fonts, box for text labels etc. based partly on MIL-STD-1787b and our pilots requirements. Our pilots are not very enthusiastic about all symbols discussed in MIL-STD-1787b (I suppose it is very subjective) and so I did not have motivation to try all of them. Even now I plan to do simple symbols as seen on Russian aircraft since our Air Force pilots are familiar with them. That should be part of my next update. I have included a html document which is basically the old text file plus some snapshots with all possible hud symbols linked to corresponding xml templates. You have to just cut & paste the template, change names and positions to create additional symbols (if you have the real estate on the hud). 2001-09-19 22:23:25 +00:00
curt
45390e0655 Renamed to hud_gaug.cxx 2001-09-19 21:41:46 +00:00
curt
0d76618950 Various tweaks for mingwin32. 2001-08-14 22:18:19 +00:00
curt
79b25c850e - modified to use pointers to bindings to avoid copying 2001-08-10 05:16:41 +00:00
curt
26bfe067e9 Fixed gauge spelling error. 2001-08-07 21:19:29 +00:00
curt
0cf62da796 - changed comments to proper doc formatting
- added support for conditions and group layers
- have all panel components but FGPanel itself derived from
  FGConditional
2001-08-03 00:18:21 +00:00
curt
b077c3a8a0 - added support for conditions
- added support for group layers
2001-08-03 00:17:58 +00:00
curt
89bc634cd6 initialize marker_xs. 2001-07-30 22:30:05 +00:00
curt
ad48935028 - implemented DME ETE and speed
- modified DME distance to return nautical miles rather than meters
- modified to use /panel/dme/switch-position to select DME frequency
2001-07-30 16:26:46 +00:00
curt
d7c3801bae - declared new methods for getting DME ETE and speed 2001-07-30 16:26:25 +00:00
curt
cfe05480f4 - modified switch layers to use layer[0] and layer[1] rather than
layer1 and layer2; panel config changes required
2001-07-30 16:26:02 +00:00
curt
921a1290f5 - fixed typos relating to nav frequency properties 2001-07-27 22:00:25 +00:00
curt
b222051ee4 - modified readAction to use FGBinding 2001-07-27 22:00:17 +00:00
curt
0f156c7280 - modified PanelAction to use FGBinding, like keyboard and joystick
events
- removed all classes derived from PanelAction (no longer needed)
2001-07-27 21:59:53 +00:00
curt
ddbd85aa7b - catch sg_exception instead of sg_io_exception
- use guiErrorMessage
2001-07-24 23:50:08 +00:00
curt
67091a4b13 - fixed typo that prevented ADF needle from being offset by aircraft
heading
2001-07-23 20:31:11 +00:00
curt
96b88e539f Move FGControls declaration to globals.hxx 2001-07-22 19:51:16 +00:00
curt
7004475732 - catch exception from readProperties and show dialog 2001-07-19 04:51:05 +00:00
curt
353e09ea0b Made the following properties archivable:
- /steam/airspeed-kt
- /steam/altitude-ft
- /steam/altimeter-datum-mb
- /steam/turn-rate
- /steam/slip-skid
- /steam/vertical-speed-fpm
- /steam/gyro-compass-deg
- /steam/adf-deg
- /steam/gyro-compass-error-deg
- /steam/mag-compass-deg
2001-07-12 23:34:38 +00:00
curt
a3f8653064 Made the following properties archivable:
- /radios/nav[0]/frequencies/selected-mhz
- /radios/nav[0]/standby-mhz
- /radios/nav[0]/radials/selected-deg
- /radios/nav[0]/volume
- /radios/nav[0]/ident
- /radios/nav[1]/frequencies/selected-mhz
- /radios/nav[1]/standby-mhz
- /radios/nav[1]/radials/selected-deg
- /radios/nav[1]/volume
- /radios/nav[1]/ident
- /radios/adf/frequencies/selected-khz
- /radios/adf/frequencies/standby-khz
- /radios/adf/rotation-deg
- /radios/adf/volume
- /radios/adf/ident
2001-07-12 23:34:27 +00:00
curt
4bd5a0ab29 Made the following properties archivable:
- /sim/panel/visibility
- /sim/panel/x-offset
- /sim/panel/y-offset
2001-07-12 23:34:16 +00:00
curt
b338698c79 - move data structure allocation into constructor (it doesn't belong
in init)
- free data structures in destructor
- ensure that interpolation tables are allocated before any searching
  is done; otherwise, starting at some locations (such as CYYZ) causes
  a segfault
2001-07-11 18:54:50 +00:00
curt
72a95d570c ** Properties Renamed
- /autopilot/locks/nav1 => /autopilot/locks/nav[0]
- /autopilot/settings/altitude += "-ft"
- /autopilot/settings/climb-rate += "-fpm"
- /autopilot/settings/heading-bug += "-deg"
- /consumables/fuel/tank1/level => /consumables/fuel/tank[0]/level-gal_us
- /consumables/fuel/tank2/level => /consumables/fuel/tank[1]/level-gal_us
- /engines/engine0/cht => /engines/engine[0]/cht-degf
- /engines/engine0/egt => /engines/engine[0]/egt-degf
- /engines/engine0/fuel-flow => /engines/engine[0]/fuel-flow-gph
- /engines/engine0/mp => /engines/engine[0]/mp-osi
- /engines/engine0/rpm => /engines/engine[0]/rpm
- /environment/clouds/altitude += "-ft"
- /environment/magnetic-dip += "-deg"
- /environment/magnetic-varation += "-deg"
- /environment/visibility += "-m"
- /environment/wind-down += "-fps"
- /environment/wind-east += "-fps"
- /environment/wind-north += "-fps"
- /orientation/heading += "-deg"
- /orientation/heading-magnetic += "-deg"
- /orientation/pitch += "-deg"
- /orientation/roll += "-deg"
- /position/altitude += "-ft"
- /position/altitude-agl += "-ft"
- /position/latitude += "-deg"
- /position/longitude += "-deg"
- /radios/adf/frequencies/selected += "-khz"
- /radios/adf/frequencies/standby += "-khz"
- /radios/adf/rotation += "-deg"
- /radios/nav1/* => /radios/nav[0]/*
- /radios/nav2/* => /radios/nav[1]/*
- /radios/nav[*]/dme/distance += "-nm"
- /radios/nav[*]/frequencies/selected += "-mhz"
- /radios/nav[*]/frequencies/standby += "-mhz"
- /radios/nav[*]/radials/actual += "-deg"
- /radios/nav[*]/radials/selected += "-deg"
- /sim/view/goal-offset += "-deg"
- /sim/view/offset += "-deg"
- /steam/adf += "-deg"
- /steam/airspeed += "-kt"
- /steam/altitude += "-ft"
- /steam/gyro-compass += "-deg"
- /steam/gyro-compass-error += "-deg"
- /steam/mag-compass += "-deg"
- /steam/vertical-speed += "-fpm"
- /velocities/airspeed += "-kt"
- /velocities/side-slip += "-rad"
- /velocities/speed-down += "-fps"
- /velocities/speed-east += "-fps"
- /velocities/speed-north += "-fps"
- /velocities/uBody += "-fps"
- /velocities/vBody += "-fps"
- /velocities/wBody += "-fps"
- /velocities/vertical-speed += "-fps"
2001-07-02 22:27:24 +00:00
curt
5d2855f1ec Updated bug fix to make hopefully more thread safe. 2001-07-02 22:11:56 +00:00
curt
9fc9c8d55a Fix what looks like it could potentially cause a problem with accessing
previously free'd memory.
2001-06-30 00:27:13 +00:00
curt
b8b1425761 Removed NetworkOLK/features.[ch]xx 2001-06-26 20:41:26 +00:00
curt
af2a0da64c Patches contributed by Norman Vine to do ultra-hires tiled screen dumps. 2001-06-26 18:23:07 +00:00
curt
b498efa47e - adjusted for no-value constructor for FGPanel
- removed unused DefaultPanel, DefaultInstrument, classes
- removed unused defaultTexture
2001-06-20 20:51:45 +00:00
curt
982f145bb7 - changed to no-value constructor for FGPanel
- removed update method with args
2001-06-20 20:51:34 +00:00
curt
6814f9966b - changed to favour height over width when the aspect is less than
4:3, to avoid a gap on top (suggested by Norm Vine)
2001-06-20 20:50:49 +00:00
curt
46b82360b0 Fixed a couple items for Norman's large resolution print routines. 2001-06-13 20:31:49 +00:00
curt
d0126ec533 Fixed some warnings, updated whitespace. 2001-06-12 23:37:29 +00:00
curt
5f71bca303 Fixed panel edge artifacts (due to forced wrapping of background texture) 2001-06-12 19:07:13 +00:00
curt
72c7dc57fd replaced SGValue with SGPropertyNode throughout. 2001-06-12 05:15:48 +00:00
curt
c64e284c51 More property node optimizations. 2001-06-06 19:12:24 +00:00
curt
64254d7410 Optimized property node accesses. 2001-06-06 17:43:16 +00:00
curt
083ba99657 Optimized key property node accesses. 2001-06-06 17:21:34 +00:00
curt
71380de883 White space tweaks. 2001-06-06 17:02:39 +00:00
curt
f9533d2f4b - eliminated all references to BFI; use properties instead 2001-06-05 22:10:25 +00:00
curt
b2f604ad00 Reduce output verbosity. 2001-06-01 17:55:49 +00:00
curt
5893de13ff 1. Fixed FGInput bug preventing same key from being bound separately
with different modifiers (the format of the key bindings has changed
again slightly, adding a <code>..</code> element; see keyboard.xml for
details).

2. Modified FGInput to try default modifiers for ctrl, shift, and alt
when the initial bindings fail (i.e. you don't have to specify
mod-shift explicitly for upper-case 'P' any more).

3. Fixed problems with properties and panel reloading reported by
Martin Dressler and John Check.

4. Updated preferences.xml to get rid of obsolete references to
/controls/brakes/left and /controls/brakes/right (as reported by John
Check).


There were also two non-bugs reported by John Check:

(a) Differential braking doesn't work (John was using the obsolete
properties from #4 above).

(b) Duplicates show up in the property tree using the telnet interface
(the property tree doesn't show indices, and John was seeing separate
entries for each possible engine, etc.).
2001-05-29 22:31:04 +00:00
curt
3b131ceaa8 Updates for new, more flexible panel design from David Megginson. 2001-05-15 23:54:32 +00:00
curt
b1af3904c8 Updates from David Megginson. 2001-05-15 23:08:25 +00:00
curt
a0d50000ba Modifications to coordinate with recent changes in simgear. 2001-05-15 22:30:39 +00:00
curt
5014a910bb #ifdef ENABLE_AUDIO_SUPPORT around all audio stuff. 2001-05-15 16:52:02 +00:00
curt
4c4d17631f Screenshot tweaks from Cameron Moore. 2001-04-22 22:04:25 +00:00
curt
c5bd20c21d Removed some debug output. 2001-03-29 06:14:42 +00:00
curt
776e7293bc Changed wording ... 2001-03-29 06:09:25 +00:00
curt
4fc7f6d097 Put blinking marker beacon (bool) into the property registry for use by the
panel.
2001-03-29 06:05:01 +00:00
curt
2e8f9f7399 Added marker beacon sound effects. 2001-03-28 07:12:11 +00:00
curt
96a9152b02 Irix MIPS patches. 2001-03-26 18:22:31 +00:00
curt
f1b1077d93 More fg -> sg namespace changes in simgear. 2001-03-25 14:20:12 +00:00
curt
182fd42b40 SG-ified logstream. 2001-03-24 06:03:11 +00:00
curt
5ea9c04c64 SG_ namespace. 2001-03-24 04:56:46 +00:00
curt
17c96ae69e SG_ namespace 2001-03-24 04:48:44 +00:00
curt
17f3d48e03 FG_ to SG_ namespace changes. 2001-03-24 02:36:45 +00:00
curt
1bf3001749 FG_ to SG_ namespace changes. 2001-03-24 00:18:01 +00:00
curt
5958389026 FG_ to SG_ namespace changes. 2001-03-23 22:59:18 +00:00
curt
46a4b960d1 MSVC++ fixes. 2001-03-21 23:16:21 +00:00
curt
a695a8d9f5 Initial support for marker beacons. 2001-03-16 23:59:02 +00:00
curt
99c54d976a More tweaks to radio and sound. 2001-03-16 05:33:04 +00:00
curt
07c23f5866 More tweaks to radios so we can listen to Nav2 and ADF as well.
Fixed a bug which could make a station appear to be out of range when it isn't.
Expanded usable range to 1.3x times the FAA guaranteed service volume.
2001-03-14 23:37:50 +00:00
curt
bdde4e0581 Removed ios::binary on file open. 2001-03-14 23:35:46 +00:00
curt
e754177bdf ADF needle doesn't zero when it goes out of range. 2001-03-14 14:35:27 +00:00
curt
61c8cefcf2 Working on modeling more realistic VOR and ILS ranges. 2001-03-14 07:25:14 +00:00
curt
6e0a10b757 Working on modeling VOR range as per AIM. 2001-03-14 01:31:04 +00:00
curt
d116eb2a62 Fixes to vor/ils/adf range pickup. 2001-03-12 15:07:49 +00:00
curt
ba12982f5e Fixed a bug in radiostack->search() when switching freq. to a different
station that has the same ident (i.e. from a vor to a ils as in EAU.)
2001-03-12 13:42:32 +00:00
curt
6d6f0d3e71 Cleaned up a few things relating to playing morse audio vor/ils idents. 2001-03-12 12:40:18 +00:00
curt
c763c795ad Don't play DME ident if no colocated DME. 2001-03-10 00:06:39 +00:00
curt
6e91c958e3 Play the full 4x VOR and 1x DME morse ident sequence at 30 second intervals.
When you tune into a station start at a "random" point in the sequence.
Sped up the words per minute to 13 to which means one sequence per about 4 secs.
This means we get through the whole sequence in about 20 seconds leaving 10
seconds of silence.
2001-03-09 23:35:21 +00:00
curt
95e27e8cb9 Working on vor audio ident (morse).
Fixed a bug in Network/props.cxx with the cd command.
Fixed a typo in options.cxx
2001-03-09 02:41:04 +00:00
curt
8395ac8852 Open C++ iostreams as ios::binary. 2001-03-08 02:34:27 +00:00
curt
29275ce1ec Tweaks for Mips Irix compilers. 2001-03-06 22:36:59 +00:00
curt
4a61945285 Backcourse ILS needle should move correct direction now. 2001-02-27 23:52:52 +00:00
curt
79cabb6a8a Lots of little tweaks to autopilot to make it more realistic. 2001-02-27 23:17:58 +00:00
curt
74cb68daae Fixed a typo preventing the nav2 heading needle from moving.
DG heading bug initializes to a random setting.
Activating heading hold doesn't touch the DG heading bug any more.
Max autopilot decent rate is now -1000.
2001-02-25 16:26:48 +00:00
curt
75a538f5b9 Tweaks relating to autopilot heading hold.
Working on better modeling of nav radio needles.
2001-02-25 04:45:26 +00:00
curt
f780c27787 Changes to make the default autopilot heading hold work much more like a C172
DG heading hold (i.e. it will follow the gyro drift.)
2001-02-07 04:16:12 +00:00
curt
2827cf1387 Working on ironing out issues with VOR navigation. It think we are "as
good as we can get" until we find a data source with actual VOR magnetic
offsets.  We can use VOR offsets from some fixed date, but not all VOR's
were installed on the same day so no matter what date we pick we will be off on most of them.
2001-02-02 05:25:45 +00:00
curt
cbaf015481 Working on straightening out VOR navigation. 2001-02-02 02:55:07 +00:00
curt
1c000fef96 Tweaks to add an altitude indicator adjustment. 2001-01-23 07:17:47 +00:00
curt
f7b844f4d6 More property manager interface updates. 2001-01-16 20:21:03 +00:00
curt
576432ec75 David Megginson writes:
FGOptions is history, and the modules are (starting) to use the property
manager directly.  Let me know if I left any files out.

Inevitably, there will be some problems with broken options, etc.,
that I haven't found in my tests, but I'll try to fix them quickly.
We also need to stress that the property names currently in use are
not stable -- we need to reorganize them a bit for clarity.
2001-01-13 22:06:39 +00:00
curt
469703dd0c Internal interface changes by David Megginson. 2001-01-11 22:44:18 +00:00
curt
cff0022a16 Miscellaneous MSVC porting fixes by Christian Mayer. 2001-01-11 05:04:17 +00:00
curt
bff544aada Norman Vine has split up the GUI code into more managable/logical sections. 2001-01-08 20:55:16 +00:00
curt
66650e4148 1. Added src/Main/fgfs.hxx as a standard, top-level include file for
FlightGear subsystems -- it isolates some of the config and #ifdef
stuff in a single place.

2. Added a new FGSubsystem interface, defined in fgfs.hxx; so far,
only FGControls implements it, but if that works, we can start letting
it propagate through the system and simplify the code in main.cxx and
fg_init.cxx (which is terrifyingly complex for anyone new to the
project).

3. Added new src/Main/fgfs_props.[hc]xx files with convenience
functions for tying properties under FlightGear.

4. Experimentally modified src/Controls/controls.cxx to tie properties
directly (rather than tying to BFI functions).  I'd appreciate it if
you could get this into CVS as soon as possible, so we can see if the
template stuff causes trouble for any other platforms before I add
properties to the other subsystems.

5. Miscellaneous superficial modifications to other files.


In addition, I've made a couple of further changes:


6. Modified BFI to add support for setting the view axes (i.e. with a
joystick hat).

7. Cleaned up bfi.cxx and removed all cout statements.
2001-01-05 17:38:58 +00:00
curt
af80c2080b Neetha Girish <neethagirish@usa.net>
====================================

Cockpit.cxx
-----------
Commented #ifdef FIGHTER_HUD.

Hud.cxx
-------
Included code to read the xml file and draw the corresponding instrument.

Hud.hxx, Hud_ladr.cxx, Hud_card.cxx and Hud_labl.cxx
---------------------------------------------------
Integrated code to draw any kind of hud.

Preference.xml
---------------
Included XML file path in the sim/hud property.

ReadMe.xmlhud
-------------
The Readme.xmlhud describes the reconfigurable HUD implemented thru XML
files.
2001-01-05 16:44:48 +00:00
curt
3b88c71122 Applied changes relative to David Megginson's property manager rewrite. 2000-12-19 23:29:16 +00:00
curt
2f9850024a Renamed fg_random -> sg_random. 2000-12-04 05:28:01 +00:00
curt
57a4c79eb5 Moved Time/timestamp.hxx into simgear/timing/timestamp.hxx 2000-11-30 18:43:31 +00:00
curt
3593f3782d Fixes for better control over external aircraft 3d model control. 2000-11-14 20:43:38 +00:00
curt
5175227e3b Tweaks. 2000-11-03 23:04:23 +00:00
curt
08fd9cc36d Moved fov and win_ration from FGOptions to FGViewer so we can control these
on a per view basis.
Fixed some compile warnings in Main/*.cxx
2000-11-01 23:27:32 +00:00
curt
0175b4cd25 Continued FGViewer cleanups. FGViewer is now a base class so that we can
derive specific viewer classes from it.  Here's what I currently have in mind:

FGViewer
  |
  |-> FGViewerPRH     (current system with orientation specified in
  |                    LaRCsim Euler angle convention)
  |
  |-> FGViewerLookAt  Feed in a position, view direction, and up vector
  |
  |-> FGViewerHPR     (similar to PRH, but using ssg hpr euler angle
  |                    convention)
  |-> others?
2000-10-25 22:59:02 +00:00
curt
152a5902c8 Moved winWidth and winHeight out of FGViewer since these are set on a
per-application level.  We can have multiple viewers ...
Cleaned up fov mistake on startup with panel activated.
2000-10-19 23:09:33 +00:00
curt
01c44cbb99 Code clean ups relating to FGOptions ... and moved it into globals-> space. 2000-10-19 21:24:43 +00:00
curt
ce574d59f5 The following changes were made to flightgear-0.7.5 code to implement the follow
ing features:

a) ADA Flight model - ADA.cxx, ADA.hxx, flight.hxx
b) Fighter a/c HUD       - flight.hxx, hud.hxx, hud.cxx, cockpit.cxx, hud_ladr.c
xx, hud_card.cxx
c) 3-window display      - options.hxx, options.cxx, viewer.cxx
d) Moving objects (ship) - main.cxx
e) Patches               - main.cxx

ADA.cxx, ADA.hxx
--------------------------
Interface to the external ADA flight dynamics package.

flight.hxx
----------
Included prototypes for accepting additional data fron the External flight
model for fighter aircraft HUD

Hud.hxx
-------
Included prototypes for accepting additional data for fighter HUD from Exernal F
light model.
Defined FIGHTER_HUD pre-processor directive to enable compilation of fighter hud
 code.

hud.cxx, cockpit.cxx, hud_ladr.cxx, hud_card.cxx
---------------------------------------
Included code to initialise additional reticles/text for fighter HUD which is co
nditionally
compiled if FIGHTER_HUD is defined.

options.hxx
-----------
Added window_offset, and function to retrieve its value for 3 windows

options.cxx
-----------
Changed few options to suit ADA/CEF projection system/screens and checks for win
dow offset.

views.cxx
---------
Added code to retrieve view offset for window.

Main.cxx
--------
Added code to load and move an aircraft carrier.
Patch to enable clouds from command line until Curtis fixes it. By default cloud
s are disabled.
2000-10-19 19:46:13 +00:00
curt
2eda8480e9 Some changes contributed by David Megginson to allow for more interesting
external views.
2000-10-18 21:19:30 +00:00
curt
5018278831 Panel tweaks to support "shaped" panels.
Additional HUD support for waypoints.
JSBSim updates.
2000-10-13 23:34:54 +00:00
curt
f6fac40a11 David Megginson writes:
I have a scrollable panel working (it didn't take long in the end).  A
panel can now be much wider or higher than the available area, and the
user can scroll around using [Shift]F5, [Shift]F6, [Shift]F7, and
[Shift]F8.  The user can also scroll the panel down to get a bigger
external view.  Mouse clicks seem still to be working correctly.

To set the panel's (virtual) height and width, use the panel file's /w
and /h properties in a panel XML file; to set the initial x- and y-
offsets (untested), use the panel file's /x-offset and /y-offset
properties; to set the initial height of the external view (untested
and optional), use the panel file's /view-height property.  Note that
none of these show up in the regular FGFS property manager.

Unfortunately, these patches will not affect your initialization
problems with the property manager -- I'm having a hard time tracking
them down because I cannot reproduce them.

I have also made some patches to main.cxx and views.cxx to do two
things:

1. Expand or shrink the external view as the panel moves up and down.

2. Set the window ratio correctly, so that we don't get an oval sun
   and flat clouds when the panel is visible (the problem before was
   integer division, so I added casts).

Unfortunately, the window ratio is not set properly at start-up --
there are too many dependencies, and I haven't figured that part out
yet.  As soon as you hide and redisplay the panel or move it
vertically (i.e. force fgReshape to be called), you'll see the correct
ratio.
2000-10-06 21:16:01 +00:00
curt
1dc35581f5 MSVC compatibility changes and code tweaks for minor nits caught by the
MSVC compiler.
2000-10-02 21:49:04 +00:00
curt
8d1295119f Updates from David Megginson relating to the property manager. 2000-09-30 03:35:38 +00:00
curt
32528d0cd6 A bit of fg->sg namespace changing. 2000-09-27 20:16:22 +00:00
curt
2c59508156 Renamed fg_types.hxx -> sg_types.hxx
Started work on an interactive property manager traverser/setter.
2000-09-26 23:39:29 +00:00
curt
e7df2d5dc8 Sep. 22, 2000 panel updates from David Megginson to make the new config file
panel be the default (sp_panel.* RIP).
2000-09-22 17:20:56 +00:00
curt
bf14bb1151 Fixes for MSVC++ issues. 2000-09-21 22:59:27 +00:00
curt
dda2746ca3 Caught an old texture path reference. 2000-09-21 20:44:14 +00:00
curt
830b17c6ef Sep. 18, 2000 updates from David Megginson. New panel configs are now
expected to be found in $fgroot.
2000-09-21 20:08:16 +00:00
curt
e891774a8c builddir -> srcdir so builds can be done outside the master source directory. 2000-09-20 23:27:25 +00:00
curt
3be255a9ed Incorporated previously missed updates. 2000-09-14 17:36:02 +00:00
curt
be88681d69 MacOS changes by Darrell Walisser. 2000-09-13 21:51:07 +00:00
curt
a71f03b18c Explicitely add -lpthread to the link line to avoid a long standing linux
ld bug.

A couple namespace fixes to avoid problems with latest plib cvs on some
systems.
2000-09-09 15:48:14 +00:00
curt
a2cd367ab5 Sep 8, 2000 panel updates from David Megginson. 2000-09-08 20:47:18 +00:00
curt
da39b543f0 Initial revision. 2000-09-07 00:12:32 +00:00
curt
a009f04353 Miscellaneous MSVC fixes. 2000-09-06 22:46:43 +00:00
curt
dd2fc3141a Fixed whiskey compass. 2000-09-06 17:43:45 +00:00
curt
e891f2ff05 20000905 changes from David Megginson to impliment a data file configurable
instrument panel.
2000-09-06 00:07:48 +00:00
curt
342842537d Fixes to jsbsim. 2000-08-04 16:08:55 +00:00
curt
0c8c3ac0d6 David Megginson's changes:
src/Cockpit/radiostack.cxx
- extended VOR ranges to make them slightly more usable (pending some
  real radio code)

src/Cockpit/sp_panel.cxx
- fixed heading bug on gyro compass (sort-of -- the AP still doesn't
  work quite as expected)
- skid ball moves the right direction
- moved whiskey compass more to the co-pilot's side, as suggested by
  Alex a while back

src/Joystick/joystick.cxx
- included Norm's Windows patches
- renamed brake properties (see bfi.cxx, below)

src/Main/bfi.cxx
src/Main/bfi.hxx
- renamed getBrake and setBrake to getBrakes and setBrakes
- added getCenterBrake and setCenterBrake
- added getAPHeading (without mag correction, needed for the panel)
- renamed property /controls/brake to /controls/brakes/all
- renamed property /controls/left-brake to /controls/brakes/left (as
  requested by Alex)
- renamed property /controls/right-brake to /controls/brakes/right (as
  requested by Alex)
- added property /controls/brakes/center
- added property /autopilot/settings/heading
- fixed bug in setAltitude so that altitude will be property restored
  from a save file
- fixed getBrakes to return the highest of the three brake settings

src/Main/save.cxx
- call FGBFI::getBrakes instead of FGBFI::getBrake
2000-07-23 00:11:04 +00:00
curt
fc84045169 Activated gyro drift ... look out!
Cleaned a bit of cruft out of gui.[ch]xx
Cleaned up win_ratio() and fov code to make more sense and be a bit more
consistant and robust and less buggy and less susceptible to screw ups.
Panel is activated now by default, HUD is off by default.
2000-07-22 23:25:49 +00:00
curt
7a2ef1d57c Merged some of Alex's code changes.
Updates for better windows support in the Joystick module.
2000-07-20 04:16:59 +00:00
curt
436db30053 More SGTime tidying. 2000-07-07 20:28:51 +00:00
curt
0ffa19cd32 Updates to JSBsim from Jon's CVS.
Massaging some names inside of SimGear.
2000-07-06 22:13:24 +00:00
curt
d1e4a4bc6f A lot of code reorganization relating to moving some core code from
FlightGear into SimGear so it can be used by other projects.
2000-07-05 02:39:30 +00:00
curt
f7d775ff1e Updates from David Megginson to add DG control. 2000-06-20 02:29:01 +00:00
curt
9adf2456e2 Updates from David Megginson:
1. I've modified src/Time/fg_time.cxx so that the --start-date-gmt
option works correctly, at least on my system.

2. I've modified src/Main/bfi.cxx to return the correct time from
FGBFI::getTimeGMT(), so that saving and reloading now keeps the time set
correctly again.

3. I've modified src/Main/main.cxx so that the engine still makes a
noise when it's idling (it sounded very strange when the engine simply
turned off at idle then magically turned on again with a little
throttle).
2000-06-17 03:41:03 +00:00
curt
1882fb0119 Patches and tweaks from Alex. 2000-06-15 18:36:13 +00:00
curt
016cd935ef Updates from David Megginson:
I've done some substantial reengineering of the 2D panel: except for the
radios, the whole panel is built from a large table now.  I'd be
grateful if you could add these changes to the main distribution.

Since I always like to provide some eye-candy with my updates, I've
fixed the ADF gauge to be more usable by slimming the needle and adding
markings every 45 deg (you'll need to use the attached textures).
2000-06-14 20:59:51 +00:00
curt
2e08c97204 Updates [hack] from David Megginson so VOR reception range scales with
altitude.
2000-05-30 16:49:44 +00:00
curt
febc9cf0b2 First quick hack at panel shading. 2000-05-27 06:40:55 +00:00
curt
f886e46623 Fixes to magnetic compass.
Fixed a typo in disabling autothrottle.
2000-05-16 23:00:31 +00:00
curt
ed973e8993 Updated hud controls a bit:
"h" toggles between day/night/off
"H" cycles through black/dark/medium/light intensities.
2000-05-15 17:47:50 +00:00
curt
9dc5c9ca22 Instrument panel updates from David Megginson.
- the panel uses much, much less texture memory, and draws much
  faster, at least on my hardware

- there is a wet (magnetic) compass at the top of the panel

- the gyro compass shows true heading again, but don't get used to it:
  we're going to set it up to drift soon

- there are TO/FROM flags on NAV1 and NAV2 (but no GS flag yet)

- the ADF looks a little more realistic (if you can forgive the ugly
  needle)

- when the HUD is not open, the framerate is moved to the right side
  of the screen so that it won't be obscured by the mag compass
2000-05-15 16:33:42 +00:00
curt
7863c607bf Heading bug (and bfi) now deals with magnetic compass heading rather than
true heading.  Internally, the sim (and the autopilot) still runs off of
true heading.
2000-05-14 04:18:12 +00:00
curt
56a8d4247d Fixed a typo rich messed up vor range calculations. 2000-05-14 01:41:11 +00:00
curt
365b26d093 HUD updates/cleanups from Norman Vine. 2000-05-13 00:02:43 +00:00
curt
5127740c72 More fixes to ils approaches and autopilot. 2000-05-12 22:17:09 +00:00
curt
db89ecfae8 Fixes to ILS approaches ... now takes into consideration actual GS and DME
locations.
2000-05-12 20:07:51 +00:00
curt
63df45998f More magvar fixes relating to vor/ils. 2000-05-12 14:09:52 +00:00
curt
51898e3a14 Added magvar offset to VOR's. 2000-05-12 13:41:12 +00:00
curt
a74e205930 Norman Vine contributed code to do anti-aliases HUD lines.
However, this tanks my voodoo2 frame rates so it the code is disabled for now.
2000-05-11 19:17:02 +00:00
curt
292c97fa43 Propogate colocated dme flag. 2000-05-04 15:53:03 +00:00
curt
2fac753991 minor tweaks. 2000-05-04 05:21:50 +00:00
curt
2cda6e7082 ADF tuner fixes so that it goes from 100 to 1299 without decimal steps.
The left button moves by 1, and the right button moves by 25.
2000-05-04 05:10:32 +00:00
curt
6bc7ed9ba2 Overhaul of the navaid system to increase efficiency, reduce redundancy, and
also properly model the DME.
2000-05-04 01:18:45 +00:00
curt
4f6ed28a17 Instrument panel / steam updates for more realistic modeling of various
instruments (contributed by Alex Perry)
2000-05-02 19:41:35 +00:00
curt
a975fd77c5 User-visible
- knobs now continue to rotate when you hold down the mouse
- the middle mouse button makes knobs rotate much faster
- there are NAV1, NAV2, and ADF radios that can be tuned using the mouse
- there are standby frequencies for NAV1 and NAV2, and buttons to swap
- there is a crude, rather silly-looking DME, hard-wired to NAV1
- there is a crude, rather silly-looking autopilot that can lock
  the heading (to the bug on the gyro), can lock to NAV1, and can lock
  the current altitude
- the knobs for changing the radials on NAV1 and NAV2 look much better
  and are in the right place
- tuning into an ILS frequency doesn't change the displayed radial for
  NAV1

Code

- I've created a new module, sp_panel.[ch]xx, that constructs the
  default single-prop panel; this works entirely outside of FGPanel,
  so it is possible to construct similar modules for other sorts of
  panels; all code specific to the default panel has been removed from
  panel.cxx
- current_panel is now a pointer
- radiostack.[ch]xx keeps track both of the actual radial and of the
  selected radial (they will differ with ILS); the NAV gauges should
  not spin around automatically to show the actual radial (we need to
  do something similar with the autopilot)
- the panel is initialized fairly early
- make sure that standby frequencies also get initialized
- I've started combining and clipping small textures to save texture
  memory; there's a lot more to do, but at least I've made a start
2000-05-02 18:26:00 +00:00
curt
921beb96d7 First stab at NAV1 and GS hold modes for the autopilot. 2000-04-30 22:21:47 +00:00
curt
3ecf1b8dce Autopilot "class-ification".
Separated out gui parts of autopilot control from the actual autopilot code.
2000-04-30 06:51:49 +00:00
curt
418279fdd4 Panel updates from David Megginson. Radials can now be adjusted on the fly
by clicking on the knob on the instrument panel.
2000-04-27 22:45:48 +00:00
curt
39f4bea43e Fixes for cygwin32 builds. 2000-04-27 03:26:36 +00:00
curt
b5420977d7 Updates to nav radio stack model ... starting to get to first usable pass. 2000-04-25 04:58:25 +00:00
curt
b23f930aa6 Beginning work on integrating radiostack model into fgfs. 2000-04-25 03:09:26 +00:00
curt
56ad909452 Begin adding radio stack functionality. 2000-04-24 23:50:59 +00:00
curt
a0ed3977ce Comment some debugging output. 2000-04-11 20:38:45 +00:00
curt
dec30d2090 Updated ... 2000-03-29 00:15:26 +00:00
curt
87d4e7b5d4 David Megginson: I've created a couple of very simple textures: one for
the NAV face, and one for a NAV needle (just a thin, slightly blurry red
line for now).  I'm attaching my two new textures, together with my newest
panel.cxx (modified from Alex's to use the new textures).  Obviously,
there's a lot more to do, including TO/FROM indicators, but this is a
start, and it's fun.
2000-03-26 17:19:39 +00:00
curt
9517c0b82d NAV1 is now the ILS-28R on airport KMYF,
NAV2 is now the VOR radial 068 from MZB,
ADF  is now the Compass locator on the outer marker.
This combination is more than the legally required to
fly any of KMYF-ILS-28R, KMYF-LOC-28R KMYF-NDB28.
If you don't have access to the approach plates
and would like them, let me know and I'll scan them
(and put them on the webpage area).

The approaches do work; I've checked them all out in
terms of altitude profile, centerlines and other stuff.

In real life, the radar vectoring will basically abandon you
overhead KSEE airport at 4000 ft heading 210 or so.  Sometime
later you'll be turned to a heading of 260 if the controller
doesn't have too much else to do, just before you hit the
extended centerline.  You can't rely on that though.
Maintain 3500ft until established, 2100 ft until the outer marker,
If non-precision, maintain 1340 until crossing the radial,
then 900 thereafter until you miss, based on time from the NDB.
The miss takes you heading 270 to intercept a radial which this
hacky implementation will not let you set up the computer for.

The hacky math implementation does not take range and/or signal
strength into account, so you can fly to San Diego from England
by following the needle indication on the ADF.  It is also
fairly inaccurate math; about as accurate as the real-life signals.
When we have a _real_ radio module, I will be very happy to
throw all that code away.  For now, it makes it demonstratable.

Please notice the nastiness involving the "VARY_E" constant.
This is _not_ something that will go away with the radio module.
As far as I know, we don't have a routine that calculates
magnetic variation as a function of global position.
We will need one, probably within the next two months.
2000-03-26 16:52:36 +00:00
curt
863423054e Updates to vacuum system model from Alex Perry. 2000-03-22 21:59:59 +00:00
curt
3b0cf518bc MSVC++ tweaks contributed by Christian Mayer. 2000-03-21 22:06:05 +00:00
curt
a940c7293e Added Alex's patches for more accurate instrument modeling (compass, vsi,
altitute)
2000-03-21 20:51:03 +00:00
curt
a9f48c0dac Rendering tweaks. 2000-03-17 06:16:15 +00:00
curt
c2226f6e34 Added bfi.[ch]xx (Big Flat Interface) to give a consistant access point
to shared state inside Flight Gear.
2000-02-26 18:01:13 +00:00
curt
06f56d1465 Updates from David Megginson.
Externally: added a chronometer and a control-position indicator a la
MSFS, along with dummies for the radio-nav gauges.

Internally, substantially reworked the code so that the individual gauges
can be table- (and eventually, file-) driven.
2000-02-21 22:00:24 +00:00
curt
cc26bb7fe7 Removed all dependencies on <simgear/math/mat3.h> and friends. These are
old routines from SRGP.  Steve's plib/sg.h does a nice job of completely
replacing this (and since plib is already around) and is a nice clean design
so it just makes sense.
2000-02-19 14:29:27 +00:00
curt
1294aed465 One more pass at a reorg. 2000-02-16 23:01:03 +00:00
curt
485230b443 Code reorganization. 2000-02-15 03:30:01 +00:00
curt
9a207fb4e1 MacOS fixes contributed by Darrell Walisser on 1/26/2000. 2000-02-10 23:37:56 +00:00
curt
3ae06c157e A couple tweaks. 2000-01-12 18:40:04 +00:00
curt
fd48bdb9f2 Moved Oliver's network stuff to his own subdir: NetworkOLK. 2000-01-12 18:09:35 +00:00
curt
eedbfddbf1 Added Mach Number to hud.
Change reported speed on hud from V_equiv_kts to V_calibrated_kts.
2000-01-10 21:06:39 +00:00
curt
7da417530f Panel code reorganization contributed by David Megginson:
I've reorganized the code in panel.cxx and panel.hxx so that it will
be a little easier to extend the panel later if someone wants to.
It's still basically Friedemann's code at the core, but I've
repackaged it into a saner class hierarchy and encapsulated as much as
I could (there are still a couple of circular dependencies that need
swatting).  If someone wants to modify it to use SSG or to add new
gauges, it should be a lot easier now.

There are no user-visible changes.
1999-12-23 17:37:18 +00:00
curt
5d302f0f2a Y2K output tweak. 1999-12-13 21:43:53 +00:00
curt
978b8af9cb Updates from Norman Vine. 1999-10-15 20:42:28 +00:00
curt
303326d256 Expanded size for hud text strings to 64. 1999-10-10 16:47:51 +00:00
curt
26193c5b19 PVE serial output tweaks.
Other minor tweaks.
1999-10-01 20:07:44 +00:00
curt
7f25206f92 Show accelerated speed. 1999-09-28 22:41:43 +00:00
curt
057fa8d37e Norman's autopilot updates, now serving great circle routes direct to
the center of airports.
1999-09-11 02:07:48 +00:00
curt
0660ea821a Network updates contributed by Oliver Delise. 1999-06-30 20:21:04 +00:00
curt
0c25cad3a1 MSVC++ tweaks contributed by Christian Mayer. 1999-06-28 18:41:01 +00:00
curt
540849b9c3 Incorporated Oliver's initial networking code. 1999-06-22 21:24:31 +00:00
curt
c54a4fe206 Updates to JSBsim from Jon Berndt.
Fixed a typo in hud.cxx.
1999-06-20 04:10:44 +00:00
curt
3895c604ce Borland C++ tweaks.
MacOS/Metrowerks tweaks.
Fix for fgText default constructor.
More ssg fiddling.
Fixed an include problem with client/server tile build tools.
1999-06-20 03:54:57 +00:00
curt
14a8533f63 Initial revision 1999-06-17 20:07:19 +00:00
Tim Moore
c90db01dc8 source tree reorganization prior to flightgear 0.7
SimGear and TerraGear appear to have been split off at this time.
2009-09-14 14:26:20 +02:00