1
0
Fork 0
Commit graph

8820 commits

Author SHA1 Message Date
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
curt
acdd550a2f Fixes so that we can read incoming broadcast packets (so we can have multiple
channels driven from one broadcast source.)
2002-07-31 23:24:55 +00:00
david
ff6a2ab520 Roll out change that required CVS version of plib. 2002-07-31 21:51:03 +00:00
david
4cb99e05ad Patch from Dave Luff:
Your 3D models cause a stackdump when the base is separate from the
root.  I've attached a patched newmat.cxx - you may want to test it
before committing!
2002-07-31 18:44:30 +00:00
david
a5f251a5de Patch from Erik Hofman:
I changed the code such that textures terrain also takes ambient,
diffuse, specular and emissive from the materials.xml file.

[note from dpm: doesn't seem to work yet]
2002-07-31 17:57:59 +00:00
david
942cf9e51d Accept multiple names for the same joystick. 2002-07-31 17:32:16 +00:00
david
2a1ef0621e Patch from Julian Foad:
Use getDisplayName instead of duplicated code.
Replace unnecessary node lookups by name with direct access.
2002-07-31 16:45:35 +00:00
david
1d82339fd8 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-07-31 16:44:27 +00:00
curt
94c44fc172 A couple fixes to the network fdm interface. 2002-07-30 04:37:16 +00:00
curt
f4e1298a1a Added formatted time to property tree for use by 'virtual' instruments. 2002-07-30 02:56:42 +00:00
curt
b3c5a8fb95 Various tweaks, enhancements, and optimizations surrounding tile paging
(specifically freeing tiles when we need to remove them from the tile cache.)
2002-07-29 05:07:38 +00:00
david
edaac686a2 Patch from Melchior Franx to restore fog on tdfx cards like the Voodoo3. 2002-07-27 22:31:40 +00:00
david
43d89cb8d6 Create a top-level branch in each tile for random objects with the
name "random-objects".

Put the random objects for each tile inside a top-level
ssgRangeSelector with a maximum range of 20km.  This saves a lot of
range tests for distant tiles, and gives about a 10% framerate boost
on my card at 1000ft AGL (possibly more on faster cards).
2002-07-27 14:29:57 +00:00
curt
f1eddc9bf4 No need to additionally ref() subcomponents of a tree. Only the root node
needs to be ref()'d.
2002-07-26 23:27:53 +00:00
curt
dc40db3b33 Modified the partial ssg tree deletion algorithm so it correctly preserves
subtrees that may be connected into the scene graph multiple times.
(i.e.  our random ground cover objects.)
2002-07-26 22:23:49 +00:00
david
f05e8f95e2 Some renaming, since there wasn't really a tile-level LOD. 2002-07-26 22:12:29 +00:00
david
8244b210fa Give up on the idea of using a singleton dummy bounding sphere;
instead, use a separate dummy bounding sphere for each triangle and
each tile, with the actual bounds, to make sure that objects are
always added when they should be in sight.
2002-07-26 19:06:29 +00:00
david
c33c58476e Load models before counting them. 2002-07-26 19:04:40 +00:00
curt
94b6d4fed5 Oops, remove some unwanted debugging output. 2002-07-26 17:00:18 +00:00
curt
8c7fe4c328 Fixed some signed vs. unsigned warnings. 2002-07-26 16:54:40 +00:00
david
88758e60b4 Added --random-wind command-line option. 2002-07-26 02:49:14 +00:00
david
f8d4cb36b2 Fixed reporting of winds, cloudbase, and altimeter setting. The
temperature is still wrong.
2002-07-26 02:48:56 +00:00
david
0178c65981 I totally misunderstood sgFrustum. This patch should put it right,
and also adds an optimization to avoid traversing anything closer than
1000m.
2002-07-26 01:52:51 +00:00
curt
27158525a9 Restructure the way tile freeing is handled. When a tile is removed from
the tile cache it's ssg elements are disconnected from the main ssg scene
graph, and then the tile is thrown on the end of a delete queue.  The
tilemgr->update() routine runs every frame.  It looks at this queue and if
it is non-empty, it incrementally frees the compents of the first tile
on the queue.  When the tile is completely free it is removed from the queue.

The amount of time to free the memory for even a single tile can be quite
substantial, especially with the increased overhead of dynamic/random
ground objects.  This change allows the system to spread the work of freeing
tile memory out over many frames so you don't get a noticable single frame
hit or stutter.
2002-07-25 23:59:04 +00:00
curt
96d499f4f1 Restructuring how tiles are freed to allow us to eventually spread the task
out over multiple frames.
2002-07-25 21:57:58 +00:00
david
d86a513997 Fix random seeds to avoid coincident objects but still ensure
consistency.
2002-07-25 20:30:51 +00:00
david
9bf3c10743 Change the extra culling to do only a quarter of the scene every 200
frames rather than the whole thing, to avoid tiny stutters.
2002-07-25 17:47:42 +00:00
david
e7e576055f Added a new range-selector layer above each tile. That way, by
default, each tile has only 3 extra SSG nodes unless it falls into
range.
2002-07-25 17:32:31 +00:00
david
1c35d89eb4 Fix a problem with the culling of out-of-range random objects. When
the triangles containing the objects were out of the view Frustum,
they were never traversed by ssg (and thus, never culled).  Now, every
200 frames, do a pass through the whole scene graph with cull-testing
disabled and without drawing anything; that will allow random-objects
to be collected incrementally.
2002-07-25 17:29:08 +00:00
curt
493fcadacd Save state before drawing '3d' panel, and then restore it after. 2002-07-22 21:09:42 +00:00
curt
e85939a814 Removed some redundant glLight() calls. 2002-07-21 17:03:29 +00:00
curt
f330ae1234 Patch to explicitely control the specular lighting component. 2002-07-21 15:40:51 +00:00
curt
750fcc7a86 Support for fuel selector switch. 2002-07-21 15:40:20 +00:00
david
140774b1e2 Renamed /sim/rendering/dynamic-objects to
/sim/rendering/random-objects, and changed the default from false to true.
2002-07-20 23:11:27 +00:00
david
3f174a15cd Added more documentation. 2002-07-20 23:10:42 +00:00
david
6ca17098b8 Added --disable-random-objects and --enable-random-objects options. 2002-07-20 23:10:16 +00:00
david
ab91bbe17a More efficient version of get_bounding_radius from Norm Vine. 2002-07-20 19:23:44 +00:00
david
d6f9038a25 Enforce a sane minimum of 1000m for coverage, to avoid run-away object
placement.
2002-07-20 18:41:17 +00:00
david
29268401b2 Randomly-place object overhaul and enhancements
-----------------------------------------------

Fixed a segfault on exit.

Changed the radius of the dummy bounding sphere from 10m to 1000m to
ensure that FOV culling doesn't leave anything out.

Allow an object to have more than one variant model, which will be
chosen randomly.  Simply repeat the <path>...</path> property.

Removed the <billboard> property and replaced it with <heading-type>,
which can be set to "fixed" (leave the model oriented as it is),
"random" (give the model a random heading between 0 and 359 deg), or
"billboard" (always turn the model to face the camera).  The default
is "fixed".  Models look much better when they are not all facing the
same direction.

Allow the user to group models with the same visual range, so that
there can be *many* fewer nodes in the scene graph when the models are
not visible.  This causes an XML-format change, so that instead of

  <object>
   <range-m>...</range-m>
   ...
  </object>
  <object>
   <range-m>...</range-m>
   ...
  </object>
  ...

we now have

  <object-group>
   <range-m>...</range-m>
   <object>
    ...
   </object>
   <object>
    ...
   </object>
   ...
  </object-group>

Every object in a group can still have its own model(s), coverage, and
heading-type, but they all share the same range selector.

This change should already help users with tight memory constraints,
but it will matter much more when we add more object types -- for
example, we can now add dozens of different urban building types
without bloating the scene graph or slowing down the LOD tests for
tris that are out of range (i.e. most of them).
2002-07-20 14:56:37 +00:00
david
cecedd302b Moved object information into a new subclass of FGNewMat, and changed
the property name from coverage to coverage_m2.
2002-07-20 01:51:27 +00:00
david
e5f4da0e9a Problem reported by Erik Hofman:
Replaced left-over std::cout statements with SG_LOG statements.
2002-07-18 22:38:46 +00:00
david
35e67c3a31 Patch from Cameron Moore:
* Rearranged member initializers
2002-07-18 22:33:10 +00:00
david
973ffbf289 Patch from Cameron Moore:
* Fixed (un)signed comparisons
2002-07-18 22:32:50 +00:00
david
bf1e7c7881 Patch from Cameron Moore:
* Rearranged member initializers
2002-07-18 22:32:32 +00:00
david
ed917f8661 Patch from Cameron Moore:
* Fixed (un)signed comparisons
* Rearranged member initializers
2002-07-18 22:32:12 +00:00
david
def3c68ffa Patch from Cameron Moore:
* Rearranged member initializers to shut gcc -Wall up
2002-07-18 22:31:53 +00:00
david
ebb180f094 Patch from Cameron Moore:
* Fixed uninitialized values
2002-07-18 22:31:36 +00:00
david
ec637e33d3 Patch from Cameron Moore:
* Fixed uninitialized MaxAileron value (set to 0.5)
2002-07-18 22:31:19 +00:00
david
c814eb3a1e Make objects appear more smoothly and reliably. 2002-07-18 19:16:47 +00:00
david
4ab343569f More efficient rotation matrix calc from Norm Vine. 2002-07-18 15:54:21 +00:00
david
f4cfe4c207 Significant speedup for randomly-placed objects, by taking better
advantage of ssg Frustum culling.
2002-07-18 13:23:29 +00:00
david
f7a17c9020 Modifed random-object code for more memory efficiency:
1. Only one copy of each object (and its texture) is stored in memory,
   no matter how many materials use it.

2. Random objects are added to a triangle only when the objects are in
   range, and they are deleted as soon as the objects are out of
   range.  That way, only a relatively small number of ssg nodes are
   used at any one time.

This patch seems to eliminate freezes when tiles are freed.  There are
occasional stutters at extremely high speeds (i.e. over 3,000kt), but
it seems smooth enough for normal aviation speeds.
2002-07-18 01:04:08 +00:00
david
cc8567ad63 More functional decomposition and documentation. 2002-07-17 22:11:13 +00:00
david
5d2c640f1a Fix some minor inconsistencies and inefficiencies:
- no extra nodes are created at all if the material has no random
  objects defined

- the range selector is place correctly under the transformation

- there is only one range selector for each object type in each
  triangle (experimental -- doesn't seem to make a difference in speed
  or memory)

This patch removes Curt's patch that randomized ranges slightly, since
individual random objects no longer have their own range selectors.
It also leaves the object-group-range value unused, for now.
2002-07-17 21:00:54 +00:00
david
f71f4cf9ab Started functional decomposition for dynamic objects.
Fixed typo in last patch, where objects were using object_group_lod
rather than object_lod.
2002-07-16 23:39:53 +00:00
curt
8dc38a5198 put a separate LOD node in front of ever random object so we can randomize
the exact pop in location of each object ... this allows us to put some objects further out and perhaps hide the popping just a tiny bit?
2002-07-16 20:43:40 +00:00
david
84fcb479f6 Added support for dynamically-generated scenery objects. Set the
property /sim/rendering/dynamic-objects to true to enable them.
2002-07-15 18:16:20 +00:00
tony
f04d342f6a Member variable initialization fixes from Cameron Moore 2002-07-11 00:19:19 +00:00
tony
e0fa2db2c9 Fixed typo in SetGammaFallback() 2002-07-10 03:24:57 +00:00
david
5aee96c481 Change FGSteam into a proper subsystem rather than a collection of
static methods, and remove outdated dependency in panel_io.cxx.
2002-07-07 15:45:56 +00:00
david
bf58dbd3c9 Patch from Julian Foad:
- tidies up the update-time-step handling (making it a simple "dt");
- makes the altimeter get a proper pressure, and the (unused) vacuum
  calculation get a proper RPM (*);
- replaces property name look-ups with static pointers to property nodes.

Notes from DPM:

- the static pointers are a very bad idea, but they're only temporary;
  I plan to make FGSteam into a proper subsystem soon, and then they
  can be member variables
- I fixed the patch to get the current static pressure from the
  /environment/pressure-inhg property, so that the altimeter interacts
  properly with FGEnvironment
2002-07-07 13:29:52 +00:00
david
ee8c5d0a3a Patch from Julian Foad:
The present sets of bindings result in the throttle being "squared"
about its centre, which is silly.  This is because the "squared"
parameter is not set by the throttle binding, but the default is
"true".  We discussed this before and I think there was general
agreement that the default should be "false" on the basis of
generality.
2002-07-06 18:02:06 +00:00
david
0f3db24a90 Patch from Julian Foad:
May I offer this patch which will help non-Linux users find their
joysticks' names.
2002-07-06 18:00:34 +00:00
david
b2d8574b75 Remove a kludge that was introduced to work around the #defined "NONE". 2002-07-06 17:50:52 +00:00
david
30d239eeda Change identifiers to their new names to match hud.hxx. 2002-07-06 17:50:38 +00:00
david
fb40950e78 Prefix "HUD_" (or "HUD_FONT_" in two cases) to #defined identifiers.
Remove some unused #defines (not mentioned anywhere, even in
comments).
2002-07-06 17:50:16 +00:00
curt
b17e1bb7c0 Update controls so we can specify each tank on/off individually. Also
updated the network interface files to add fuel tank selector information.
2002-07-05 19:04:04 +00:00
curt
eab0479417 Oops, fixed a typo. 2002-07-05 14:49:18 +00:00
curt
6d3204eedd Added a fuel selector switch. I understand that this won't handle all
situations for every kind of airplane.  But at the moment we have nothing
implimented and this will cover the simpler cases until someone has a
chance to impliment a fuller solution.
2002-07-05 14:46:38 +00:00
curt
1c91723cef Switch to snprintf() for safety. 2002-07-05 13:56:46 +00:00
curt
01f846feb2 MSVC fixups. 2002-07-05 05:23:53 +00:00
curt
667f9e0dbf Added interface to ATC xponder hardware. 2002-07-04 21:38:37 +00:00
curt
5f37f2eaa5 Initial revision of a Bendix/King KT 70 transponder. 2002-07-04 21:37:34 +00:00
curt
ac61b8323e Fixed up a couple loose ends. 2002-07-04 21:37:06 +00:00
david
1669820bba Modified to use named-joystick bindings when available (js-named
rather than js).  This functionality is available only with recent CVS
plib versions (i.e. since about May 2002).
2002-07-04 17:38:18 +00:00
curt
2fec1506d3 A bunch of reorg and clean up of the KR 87 (adf) code including some
property renaming with corresponding changes to instruments in the base
package.
2002-07-03 23:35:21 +00:00
curt
24d14dd421 Updated adf property names. 2002-07-03 21:52:13 +00:00
curt
f6e8060879 A couple ADF needle direction tweaks. 2002-07-03 05:15:04 +00:00
curt
b3be31c5ab Add support for KR 87 annunciators. 2002-07-03 04:48:44 +00:00
david
961804b03e Patch from Dave Luff to use dt properly in CHT calculation. 2002-07-03 04:13:28 +00:00
david
b3bb53b67f Fix a bug reported by Frederic Bouvier:
GL/gl.h can't be included at the first position in windows. It requires
the inclusion of windows.h that must be included in other fgfs header
file. I only move down #include <GL/gl.h>
2002-07-03 04:09:27 +00:00
david
e4d014a959 Commented out a cout statement. 2002-07-03 04:04:00 +00:00
curt
1bbc82a438 Default to ADF (rather than ANT) mode and start with the ADF turned on.
Oops, left in a debugging statement.
2002-07-02 22:39:04 +00:00
curt
aef1876858 - Oops, some name simplification led to overlapping variable names which caused
the adf needle to not point correctly, fixed.
- Make the code slightly smarter so ADF needle never takes the long way around
  to it's destination.
2002-07-02 22:35:15 +00:00
curt
a28b35f3f2 Fixes for IA-64 with Intel compiler. 2002-07-02 20:45:02 +00:00
curt
dee32ef826 Updated hardware interface to match new KR 87 features. 2002-06-30 22:46:34 +00:00
curt
fa6ad91fde Working on implimenting the timer features of the King KR 87 ADF (as well
as some of the other subtleties.)
2002-06-30 22:44:38 +00:00
curt
79a7c1c9ce Allow the default GUI font to be set via properties. 2002-06-29 13:07:25 +00:00
david
51d3edaafa Patch from Melchior Franz:
This patch eliminates about 10 of valgrind's "Use of uninitialised
value of size ..." messages. They are all caused by approachlist building
incomplete FGApproach class instances and then copying them into the
approchlist container, hence copying data garbage.
   I know, I couldn't win a beauty contest with this patch, but the
alternative approach -- letting operator<< always leave complete
entries -- didn't look any better. And I do only add those seemingly
useless initialization where the values would be used uninitialized
else. The constructors are only run during setup and won't slow fgfs
down at runtime.
2002-06-28 19:14:42 +00:00
david
0c4c182f1e Fixed an uninitialized variable reported by Frederic Bouvier; this
could cause the FDM occasionally to get caught in a very long loop.
2002-06-28 19:06:23 +00:00
david
a26ea45c43 Update from JSBSim - fix bugs reported by Gonzalo Peralta with CHT and
oil pressure.
2002-06-28 18:38:28 +00:00
david
140f58b4ca Patch from Julian Foad:
Use defined constant instead of yet another approximation to pi.
2002-06-28 18:00:49 +00:00
david
048da049f8 Patch from Julian Foad:
Make locally-used strings local instead of global.  (The safety and
cleanliness benefit outweights the slight performance hit.  If
performance is an issue, the way these strings are used should be
optimised.)  Use existing defined constant instead of a literal
number.
2002-06-28 18:00:21 +00:00
david
0cbe8a597d Patch from Julian Foad:
Remove trailing comma (unportable).
2002-06-28 17:59:59 +00:00
david
343fb01972 Patch from Julian Foad:
Remove redundant class scope qualifiers.  (Should not be used within
class definition.)
2002-06-28 17:59:44 +00:00
david
cd59f77c40 Patch from Julian Foad:
Remove unused variable.
2002-06-28 17:59:30 +00:00
david
72fbb0f3f5 Patch from Julian Foad:
Newline at end of file is required.  (On a preprocessor line it is
required; on other lines it is recommended but not required.)
2002-06-28 17:59:13 +00:00
david
0d48bae1ef Patch from Cameron Moore:
The patch fixes the uninitialized values by explicitly starting
everything at sea_level values.
2002-06-28 17:41:18 +00:00
david
b53cd9c59f 3D panel support from Andy Ross:
+ The panel(s) are now an first-class SSG node inside the aircraft
  scene graph.  There's a little code added to model.cxx to handle the
  parsing, but most of the changes are inside the new FGPanelNode
  class (Model/panelnode.[ch]xx).

+ The old FGPanel source changed a lot, but mostly cosmetically.  The
  virtual-cockpit code moved out into FGPanelNode, and the core
  rendering has been abstracted into a draw() method that doesn't try
  to set any OpenGL state.  I also replaced the old inter-layer offset
  code with glPolygonOffset, as calculating the right Z values is hard
  across the funky modelview matrix I need to use.  The older virtual
  panel code got away with it by disabling depth test, thus the "panel
  draws on top of yoke" bug.  PolygonOffset is really the appropriate
  solution for this sort of task anyway.

+ The /sim/virtual-cockpit property is no more.  The 2D panels are
  still specified in the -set.xml file, but 3D panels are part of the
  model file.

+ You can have as many 3D panels as you like.


Problems:

+ The mouse support isn't ready yet, so the 3D panels still aren't
  interactive.  Soon to come.

+ Being part of the same scene graph as the model, the 3D panels now
  "jitter" in exactly the same way.  While this makes the jitter of
  the attitude gyro less noticeable, it's still *very* noticeable and
  annoying.  I looked hard for this, and am at this point convinced
  that the problem is with the two orientation computations.  We have
  one in FGLocation that is used by the model code, and one in
  FGViewer that is used at the top of the scene graph.  My suspicion
  is that they don't agree exactly, so the final orientation matrix is
  the right answer plus the difference.  I did rule out the FDMs
  though.  None of them show more than about 0.0001 degree of
  orientation change between frames for a stopped aircraft.  That's
  within an order of magnitude of what you'd expect for the
  orientation change due to the rotation of the earth (which we don't
  model -- I cite it only as evidence of how small this is); far, far
  less than one pixel on the screen.

[and later]

OK, this is fixed by the attached panel.cxx file.  What's happened is
that the winding order for the text layer's polygons is wrong, so I
reverse it before drawing.  That's largely a hatchet job to make
things work for now, though.  We should figure out why the winding
order is wrong for only text layers and fix it.  I checked the plib
sources -- they're definitely doing things CCW, as is all the rest of
the panel code.

Odd.  I'm also not sure why the 2D panel doesn't care (it works in
both winding orders).  But this will allow you to check in working
code, anyway.  There's a big comment to this effect in there.
2002-06-28 14:17:40 +00:00
curt
004359f0e8 Updates to the OpenGC interface from John Wojnaroski. 2002-06-27 22:26:47 +00:00
curt
a6c192911d Initialize a value so we don't see non-deterministic behavior. 2002-06-27 20:48:39 +00:00
andy
b162cf8707 Wrong units when interpreting <weight> tags. 2002-06-24 04:18:53 +00:00
andy
8199ece7dc Hack in an /accelerations/pilot-g property, for testing a new panel
instrument.  This needs to move somewhere permanent.

Also, remove a bogus fuel consumption setting that (1) was off by a factor
of 3600 (hours, not seconds) and (2) collided with identical code in FGFDM.
2002-06-20 04:11:19 +00:00
david
6df9479415 Allow an empty virtual model, to which other submodels can be attached
(when no path is specified).
2002-06-19 03:25:40 +00:00
david
9569c43126 Avoid a segfault when a named object is not found for an animation.
Ensure that global animations are applied to the model.
2002-06-19 02:58:06 +00:00
david
dc132d80b1 Added fgAddChangeListener convenience functions. 2002-06-18 03:27:21 +00:00
curt
ee98995d30 Updated to match changes in radiostack.[ch]xx 2002-06-16 15:23:22 +00:00
curt
a7e237abd6 A little prepratory code reorganization before modeling the King KR 87
Silver Crown Digital ADF.
2002-06-16 00:05:07 +00:00
andy
9541e06a1e Finally fixed the flap drag issue. Drag modifications need to be based on
the amount of drag that the produced lift *would* have produced given an
unflapped air surface.  A nifty trick involving the assumption that AoA is
small works for this, and produces plausible results in the high AoA case
as well.

Also, trim for approach using the elevator-trim control, not elevator.
Just cosmetic for current planes, but future ones might have differing
implementations of trim.
2002-06-15 05:40:02 +00:00
curt
22a55b25f9 Erik Hofman:
Specify default values for properties so we get expected behavior when
an option isn't specified in the sound config file.
2002-06-14 15:29:20 +00:00
curt
1bb0cbf0a7 Andy Ross:
Fixes for uninitialized variables.
2002-06-13 19:22:32 +00:00
curt
6800231cfa Erik Hofman:
This is the small code fix which is needed for the new options.xml file.
It is needed because otherwise the "--prop:name=value" is showed
incorrectly.

There is another problem though, when compiling with --without-logging
the help message isn't displayed at all! We *must* change that somehow.

Curt: good point, the SG_LOG()'s have been switched to cout's ...
2002-06-12 16:38:46 +00:00
andy
a682823ada Bugfix. The engine thrust is recalculated based on the current N1 value
(and not the throttle setting), but the recalculation left in a degeneracy
when the target/throttle setting was exactly zero.  Zero times a big number
is still zero.  Fixed to use real math, not theoretical math.
2002-06-12 08:23:05 +00:00
curt
2c5eb44cc3 Updates to the 610x interface:
- More progress with proper radio freq tuning and proper interpreting of the
  hardware values.
- Filter ignition and flap switch values since the hardware implimentation has
  a dead zone where the value can go to zero in the middle of a change in
  switch position.
2002-06-12 06:16:23 +00:00
curt
c93b79641d Erik Hofman:
I've updated the FIXME in the code, and fixed a typo (descr instead of
description), but the SG_LOG() functions doesn't produce any output for
me. Could you confirm it's still working for you?

Curt Olson:
I did a bit of further tweaking and it all looks good now.  The tricky thing
is that SG_LOG() always appends an endl at the end of every message.
2002-06-11 17:06:46 +00:00
curt
a4e81f4ff0 Erik Hofman:
This patch solves an unknown reference to a function which showed up
when using no-inlining.
2002-06-11 16:32:12 +00:00
curt
7d3448294b Erik Hofman:
This is an enhanced version of the options patch.
It's more robust now, and gives some helpful information if something
goes wrong. Also the naming in the options.xml file has changed to the
syntax David suggested.

Since no one objected to the patch I think it is safe to included it.
2002-06-10 23:30:23 +00:00
andy
df2b147ef5 Really simple command line airplane compiler. Basically a test program;
not integrated into the Makefile.am stuff.
2002-06-10 20:15:35 +00:00
david
a74c184cfb Separate the model geodetic position and orientation into a separate
class, FGModelPlacement, while FG3DModel retains control of animation.
This way, we can have a single, top-level placement, but multiple
layers of nested models underneath.  To include a nested model, use
something like this in the XML wrapper:

  <model>
   <path>Models/Stuff/my-component.xml</path>
   <offsets>
    <roll-offset-deg>45</roll-offset-deg>
   </offsets>
  </model>
2002-06-10 13:20:26 +00:00
andy
0cabedaa4f Use the density values from the environment subsystem, to properly handle
density variations due to humidity.
2002-06-10 08:47:29 +00:00
david
f12ba10c47 Modified --wind=DIR@SPEED option to allow both DIR and SPEED to
contain colon-separated ranges.  For examples, winds from 180 degrees
10 knots gusting 15 knots would be

  --wind=180@10:15

Winds variable from 180-220 degrees 5 knots would be

  --wind=180:220@5

FGEnvironment does not yet support variable-direction winds, so
nothing will yet happen in the second case.
2002-06-09 21:28:17 +00:00
tony
9299767541 Oops. Previous versions caused compile errors 2002-06-08 03:20:37 +00:00
tony
0975a42f49 The external atmosphere fix. Really this time. 2002-06-08 03:15:05 +00:00
tony
00dcf9f507 JSBSim updates, including external atmosphere fix 2002-06-08 03:14:03 +00:00
curt
0ba0a278b9 Patch from Norman to do the code/base version comparison check a little
more sensibly (and print the correct error message.)
2002-06-07 23:26:07 +00:00
curt
8b711a5782 James Turner:
Modifications to support querying navaid database by station ID (not just
frequency.)  Some corresponding changes to testnavs.cxx to test new
functionality.
2002-06-07 21:03:27 +00:00
david
bc179de4bd Patch from Jim Wilson:
This is a small patch that makes the autopilot work much better with big heavy
airliners as well as the small Cessnas.  Of course this doesn't address the
way autopilots should be modeled.

But by making a couple changes the "George" is now capable of landing either a
C172 or a 747 very close to the center line of the runway with a moderate
cross breeze (15-20kt).

The changes:
- Added turn configurability so that things like Max Aileron and Roll can be
configured per aircraft.
- Enhanced localizer routine (NAV mode) to begin lining up the aircraft as soon
as the cone is entered.  The former model is adopted for the last 5km of the
approach in order to ensure greater precision (makes a very slight difference).

[float cast added by David Megginson to keep G++ 3.0 happy]
2002-06-07 20:16:54 +00:00
david
88e93dc767 Patch from Jim Wilson:
This is a small patch that makes the autopilot work much better with big heavy
airliners as well as the small Cessnas.  Of course this doesn't address the
way autopilots should be modeled.

But by making a couple changes the "George" is now capable of landing either a
C172 or a 747 very close to the center line of the runway with a moderate
cross breeze (15-20kt).

The changes:
- Added turn configurability so that things like Max Aileron and Roll can be
configured per aircraft.
- Enhanced localizer routine (NAV mode) to begin lining up the aircraft as soon
as the cone is entered.  The former model is adopted for the last 5km of the
approach in order to ensure greater precision (makes a very slight difference).

[float cast added by David Megginson to keep G++ 3.0 happy]
2002-06-07 19:52:00 +00:00
david
e6f9caa41b Patch from Melchior Franz:
FGViewer::updateFromModelLocation does otherwise complain several
times about non-initialized values
2002-06-07 19:43:40 +00:00
david
d982efc4c4 Fix two problems:
1. Typo where /environment/density-inhg instead of
   /environment/density-slugft3 was flagged as archivable.

2. Density should no longer be archivable anyway, since it is
   calculated internally and not directly settable by the user.
2002-06-07 14:23:09 +00:00
david
a08d92e142 Correct temperature value passed to FDM. 2002-06-07 00:15:21 +00:00
david
56642901b5 Air density is now calculated automatically from air pressure,
temperature, and dewpoint.  The /environment/density-sea-level-slugft3
property has been removed, and the /environment/density-slugft3
property is read-only.
2002-06-06 00:21:23 +00:00
david
4acb59a020 Renamed property /steam/vertical-speed-fpm to /steam/vertical-speed-fps. 2002-06-05 22:39:00 +00:00
david
2df334378f Use factors instead of offset in atmosphere model. The troposphere is
hard-coded for 38,000ft.
2002-06-05 22:30:07 +00:00
david
34e2e52158 Patch from Georg Kaiser. 2002-06-05 21:43:44 +00:00
david
890c26a9ee Move initial setup of cloud layers to Main/main.cxx to ensure that
they are done only once, and ensure that all properties are untied in
unbind().
2002-06-05 17:45:42 +00:00
david
5bec60a602 Set up cloud layers when thesky is allocated, to ensure that they are
created only once.
2002-06-05 17:44:39 +00:00
david
0387b3a4ec Replace cout statement with SG_LOG. 2002-06-05 17:44:09 +00:00
david
384c3c254a Initialize default SLP to 29.92inHG. 2002-06-05 14:44:30 +00:00
curt
e2e640ef46 Set control surface positions when using an external network fdm.
Fetch all pending remote fdm network packets so there is not chance of
  getting behind.
Add support for driving control panel lights.
Working on better modeling KX 155 tuning behavior.
2002-06-05 05:22:42 +00:00
curt
63eb4d8668 Erik Hofman:
* Small updates and fixes
* Add random as an internal ( <intenral>random</internal> is now possible)
2002-06-04 16:27:20 +00:00
andy
2852f27bdc Uninitialized data problem. As it turns out, this never bit us because
the _chord member is only used uninitialized in circumstances where the
result is thrown away.  Still, bad practice.  Found with valgrind.
2002-06-04 07:23:34 +00:00
curt
11766afb6c Added flap_deflection so that remote fdm can pass back actual flap deflection
in order to drive the flap sound effects and animation.
2002-06-03 23:35:43 +00:00
andy
04e083083d Need to call recalc() on the RigidBody during solution, or else it
won't apply the right gross weight due to fuel differences.

When solving for zero force, do so in the global frame, not the
aircraft's.  In principle, this shouldn't matter (zero is zero in all
frames), but in practice this should help to avoid oscillations.
Calculating lift as force perpendicular to the ground (and not the
wing plane) is clearly the Right Thing, anyway.

Also added support for a /yasim/gross-weight-lbs property, which
should be generically useful.
2002-06-01 19:59:38 +00:00
andy
713920356b Property name typo. This resulted in all temperatures being 273K,
which is far too warm at altitude.  Thus, air density (and aircraft
performance) was too low for a given altitude.
2002-05-30 18:54:08 +00:00
curt
b2cefb1450 Check for the proper base package version. 2002-05-30 15:37:39 +00:00
david
25450e040a Patch from Melchior Franz:
The new dt/multiloop method requires new damping parameters.
2002-05-29 22:38:11 +00:00
david
1a4b6a37a3 Default to glider again when model is not present. 2002-05-29 22:04:36 +00:00
andy
7e63c0f6e8 Modify solution heuristics. Do the cruise AoA and tail incidence only
when the lift/drag are really solid.  And defer the approach trim until
the all four of the other variables are perfect.  I believe this should
fix the solution failures under gcc 2.95.2.
2002-05-29 08:41:13 +00:00
andy
adeeed1a0e Oops. Stray checkin. Revert. 2002-05-29 07:09:41 +00:00
andy
f324ea9bad The incidence setting only works on a compiled object. If setIncidence
is called on a non-compiled object, make sure to re-set it after compilation.
2002-05-29 07:07:29 +00:00
david
8cf573ae51 JSBSim change:
Reverse sense of rudder surface position, for consistency with
ailerons and FlightGear controls.
2002-05-28 13:50:51 +00:00
andy
040c508aa8 We don't handle propellers turning backwards. This got clamped
implicitly in PropEngine by disallowing negative torques, but that was
removed at some point.  We really need the explosion protection here
at the source.
2002-05-23 19:47:19 +00:00
andy
6af60f7462 Yank the "castering" attribute and replace it with a ControlMap-enabled
control that can be set via the property system.  This allows implementation
of the DC-3 wheel lock.
2002-05-23 19:30:56 +00:00
andy
4d10297732 Oops, left debug code in the checkin. 2002-05-21 18:45:56 +00:00
andy
4535c84b99 Solve for the elevator control input during approach. It turns out that
the downforce from the tail due to elevator trim is a significant contribution
to total lift.
2002-05-21 07:40:46 +00:00
curt
e380891c40 Erik Hofman:
This patch adds "elapsed time" support to the sound code.
It is now possible to define <internal>dt_play</internal> or
<internal>dt_stop</internal> instead of a propery in the <volume> and
<pitch> sections of the configuration file.
2002-05-20 16:28:21 +00:00
curt
2cafd466e2 Tony Peden:
Defeated the invasion once and for all.
2002-05-20 16:19:26 +00:00
curt
8ae364a220 Jim Wilson:
This is a small fix for what turned out to be a major bug.  Ground elevation
was calculated incorrectly when distant from one of the view locations. This
resulted in several problems including bizarre gear trimming, mid air
"crashes" (as in thinking we hit the ground) and so on when close to or on the
ground.

Unfortunately it does require a second ssg traversal when in tower view
(only), but the increased load isn't all that noticable.  For the time being
this really is the best solution.  In a future update I will be eliminating
the unecessary per frame traversals for the static views (without having to
maintain multiple ssgRoots).

When we go to multiple FDM instances we will perhaps need to put the ssg
traversal and ground elevation queries for the FDMs into an event timer that
updates the FDMs ground elevation in a round robin fashion (maybe every 1/n
seconds where n is the number of FDM instances running).
2002-05-20 16:13:37 +00:00
curt
0efc08b6b6 Bernie Bright:
Ensure lines sent to clients are CRLF terminated.
Ensure the dump command null terminates its output string.
Removed view command and comments.
2002-05-20 15:53:14 +00:00
curt
1ffd296e27 Jim Wilson:
Fix for the sound cranking bug.
2002-05-17 21:02:40 +00:00
david
89483df079 No longer initialize static cloud layers (handled dynamically in
environment_mgr.cxx).  The /environment/clouds/status property is now
checked each frame, so clouds can be turned on or off in the middle of
a session.
2002-05-17 19:04:20 +00:00
david
b2dcc4ca00 Removed old --clouds-asl option and initialization of clouds-asl
property, since neither makes sense for multiple cloud layers.
2002-05-17 19:03:20 +00:00
david
fe4a837d7f Modified to work with new cloud properties (sort-of). 2002-05-17 19:02:43 +00:00
david
b091433cf6 Added support for initializing and maintaining up to five cloud
layers.  The properties controlling each layer are inside
/environment/clouds/layer[n], and the available properties are type
("clear", "overcast", "mostly-cloudy", "mostly-sunny", or "cirrus"),
span-m (should be about 40000), elevation-ft, thickness-ft, and
transition-ft.
2002-05-17 19:02:24 +00:00
david
9002aa41ff Corrected "#ifdef 0" to "#if 0" to keep ANSI-conformant compilers
happy.
2002-05-17 18:56:13 +00:00
curt
b1674cb506 From: "Jim Wilson" <jimw@kelcomaine.com>
This is a new improved patch for the previous tile manager fixes.

Rather than building dependencies between FGlocation or the viewer or fdm with
tilemgr what I ended up doing was linking the pieces together in the Mainloop
in main.cxx.  You'll see what I mean...it's been commented fairly well.  More
than likely we should move that chunk somewhere...just not sure where yet.

The changes seem clean now. As I get more ideas there could be some further
improvement in organizing the update in tilemgr.  You'll note that I left an
override in there for the tilemgr::update() function to preserve earlier
functionality if someone needs it (e.g. usage independent of an fdm or
viewer), not to mention there are a few places in flightgear that call it
directly that have not been changed to the new interface (and may not need to be).

The code has been optimized to avoid duplicate traversals and seems to run
generally quite well.  Note that there can be a short delay reloading tiles
that have been dropped from static views.  We could call the tile scheduler on
a view switch, but it's not a big deal and at the moment I'd like to get this
in so people can try it and comment on it as it is.

Everything has been resycned with CVS tonight and I've included the
description submitted earlier (below).

Best,

Jim

Changes synced with CVS approx 20:30EDT 2002-05-09 (after this evenings updates).

Files:
http://www.spiderbark.com/fgfs/viewer-update-20020516.tar.gz
 or
http://www.spiderbark.com/fgfs/viewer-update-20020516.diffs.gz

Description:
In a nutshell, these patches begin to take what was one value for ground
elevation and calculate ground elevation values seperately for the FDM and the
viewer (eye position).  Several outstanding view related bugs have been fixed.

With the introduction of the new viewer code a lot of that Flight Gear code
broke related to use of a global variable called "scenery.cur_elev".

Therefore the ground_elevation and other associated items (like the current
tile bucket) is maintained per FDM instance and per View.  Each of these has a
"point" or location that can be identified.  See changes to FGLocation class
and main.cxx.

Most of the problems related to the new viewer in terms of sky, ground and
runway lights, and tower views are fixed.

There are four minor problems remaining.  1) The sun/moon spins when you pan
the "lookat" tower view only (view #3).  2) Under stress (esp. magic carpet
full speed with max visibility), there is a memory leak in the tile caching
that was not introduced with these changes.  3) I have not tested these
changes or made corrections to the ADA or External FDM interfaces.  4) The
change view function doesn't call the time/light update (not a problem unless
a tower is very far away).

Details:
FDM/flight.cxx, flight.hxx - FGInterface ties to FGAircraftModel so that it's
 location data can be accessed for runway (ground elevation under aircraft)
 elevation.

FDM/larsim.cxx, larcsim.hxx - gets runway elevation from FGInterface now.
Commented out function that is causing a namespace conflict, hasn't been
called with recent code anyway.

FDM/JSBSim/JSBSim.cxx, YASim/YASim.cxx - gets runway elevation from
FGInterface now.

Scenery/newcache.cxx, newcache.hxx - changed caching scheme to time based
(oldest tiles discard).

Scenery/tileentry.cxx, tileentry.hxx - added place to record time, changed
rendering to reference viewer altitude in order to fix a problem with ground
and runway lights.

Scenery/tilemgr.cxx, tilemgr.hxx - Modified update() to accept values for
multiple locations.   Refresh function added in  order to periodically make
the tiles current for a non-moving view (like a tower).

Main/fg_init.cxx - register event for making tiles current in a non-moving
view (like a tower).

Main/location.hxx - added support for current ground elevation data.

Main/main.cxx - added second tilemgr call for fdm, fixed places where viewer
position data was required for correct sky rendering.

Main/options.cxx - fixed segfault reported by Curtis when using --view-offset
command line parameter.

Main/viewer.cxx, viewer.hxx - removed fudging of view position. Fixed numerous
bugs that were causing eye and target values to get mixed up.
2002-05-17 17:25:28 +00:00
curt
e8a6836525 Bernie Bright:
Reverted fgUsage() to previous version that works on all platforms.
2002-05-17 17:01:16 +00:00
curt
fcd6b28e0f Bernie Bright:
I've defined snprintf as _snprintf in compiler.h for MSVC and MINGW
targets and removed duplicate definitions from FG sources.
2002-05-17 16:41:27 +00:00
david
279643226a Temporarily modified to support changes in SGSky and SGCloudLayer;
this will soon be removed into a separate module that allows dynamic
changes to cloud layers.
2002-05-17 01:23:00 +00:00
andy
4efbc97a4b Revert the recent changes to Atmosphere.cpp. They were actually in
the wrong place.  The Atmosphere::getStd*() calls are used by the
solver, and thus really need to return values for a "standard"
atmosphere.  Otherwise, an aircraft started up in Moscow will behave
differently than one initialized in Cairo. :)

The place where environmental pressure and temperature get inspected
at runtime is in YASim.cxx.  The changes there, happily, end up being
even smaller than the ones to Atmosphere.  This ends up replacing code
only, and removing some comments.
2002-05-16 07:49:22 +00:00
curt
99859a5ea9 Bernie Bright:
To make MSVC happy it appears we need backslashes on string literals
spanning multiple lines.
2002-05-16 06:02:31 +00:00
curt
f9f05aa870 Bernie Bright:
Here is the new super improved telnet property interface.  CVS changelog
is at the end of this message.  Once this new telnet code is in and
compiles every where we can remove Network/props.[ch]xx.  I've added a
--telnet=<port> command line option to invoke the new server.  Later on
we could remove the --props option, or least change it to invoke the new
server.  I'll let you decide.

I've added some new commands to the telnet interface:

view next      Select the next view.
view prev      Select the previous view.
view set <n>   Select view 'n'
view get       Return index of current view

I'm not sure if these same effects could be achieved through property
operations.  The commands provide a convenient shortcut in any case.

I'm also planning on adding a panel command to manipulate panels and
objects contained therein (eg simulated mouse clicks).  There is going
to be some commonality with the command objects so we may need to
rationalize this in the near future.

Finally, I've also included my python stuff.  This is still very much a
work in progress, basically I've been using it to test the new telnet
server.  I have  tested it with python 2.2.  Feel free to add it to the
repository if you want.  I would suggest a scripts/python directory

CVS Changelog

Network/telnet.cxx: New property telnet protocol interface.  It supports
the same user interface provided by the --props server.  Additionally it
handles multiple simultaneous connections.  Added "view" command to
manipulate viewmgr.

Network/protocol.hxx: Added protocol configuration exception.

Main/fg_io.cxx:  Added new "telnet" protocol.  Added protocol
configuration parse exceptions.  Simplified protocol configuration
parsing.

Main/options.cxx: Added --telnet=<port> command line option and help
message.
2002-05-15 21:44:34 +00:00
david
52c1cb2f7d Take the static temperature, static pressure, and density values from
an external source if requested by the
/environment/params/control-fdm-atmosphere property.
2002-05-15 12:10:48 +00:00
david
cade7aad70 Comment out set_Static_pressure, set_Static_temperature, and
set_Density; since JSBSim doesn't override the get_* methods from
FGInterface as well, the wrong values are always set anyway.

Take the static temperature, static pressure, and density values from
an external source if requested by the
/environment/params/control-fdm-atmosphere property.  This isn't
working properly yet for JSBSim because of interactions with the
trimming routine.
2002-05-15 12:06:33 +00:00
david
b112e72510 Actively manage the static temperature, static pressure, and density
values in the FDM if requested by the
/environment/params/control-fdm-atmosphere property.
2002-05-15 12:04:25 +00:00
david
663dc4b545 Minor tweaks and additional comments. 2002-05-15 12:03:41 +00:00
david
8a5cdbdbc6 Finished off the atmosphere model (Troposphere and lower
Stratosphere).  The atmospheric properties are as follow:

/environment/temperature-sea-level-degc
/environment/temperature-degc
/environment/pressure-sea-level-inhg
/environment/pressure-inhg
/environment/density-sea-level-slugft3
/environment/density-slugft3

Setting either the sea-level or altitude value automatically sets the
other value appropriate, except for temperature at altitude above the
Troposphere (where there's no reliable way to back-calculate it).  The
atmosphere model appears in the atmosphere_data array in
environment.cxx, and can easily be extended into the upper
stratosphere and beyond.

These are not yet tied into the FDMs or steam module.
2002-05-15 03:00:41 +00:00
david
abdb5abb6a Fixed handling of delta time (just a kludge for now): VSI behaves
reasonably again, and DG doesn't drift too fast any more.
2002-05-14 14:21:27 +00:00
curt
487a14d05b Moved some scenery component initialization into FGScenery. 2002-05-14 06:08:28 +00:00
curt
92a58f6555 Consolodating scenery structures in scenery.hxx. 2002-05-14 05:49:47 +00:00
curt
47825dcbae Moved "scenery" from being declaried in scenery.cxx to being declared
in globals.hxx.
2002-05-14 05:22:52 +00:00
david
1fe50d4cd2 Removed configuration option --with-old-mouse and FG_OLD_MOUSE macro.
Removed configuration option --with-new-environment and
FG_NEW_ENVIRONMENT macro.

Added configuration option --with-weathercm and FG_WEATHERCM macro.

FGEnvironment is now the default; use --with-weathercm to get the old
weather.
2002-05-12 00:12:19 +00:00
david
94a667a061 Changed WeatherPrecision to double; this may help to avoid compile
errors (untested).
2002-05-11 23:27:03 +00:00
david
49bb3306d9 Environment manager overhaul -- return a copy of an FGEnvironment
object rather than a pointer.

FGEnvironment now has the beginning of an atmospheric model, and will
recalculate temperature (not pressure or density, yet) based on
elevation.

FGEnvironment has a copy constructor.
2002-05-11 23:23:42 +00:00
david
f8df8ecda9 Modified to use FGEnvironment as well as WeatherCM. 2002-05-11 23:22:24 +00:00
david
ee4c3f728d Remove some dead code. 2002-05-11 21:10:11 +00:00
david
e1c2a95f2f Fix maximum speed bug. 2002-05-11 21:09:53 +00:00
david
5a849b66e8 Major overhaul:
- changed FGSubsystem::update(int) to
  FGSubsystem::update(delta_time_sec); the argument is now delta time
  in seconds rather than milliseconds

- added FGSubsystem::suspend(), FGSubsystem::suspend(bool),
  FGSubsystem::resume(), and FGSubsystem::is_suspended(), all with
  default implementations; is_suspended takes account of the master
  freeze as well as the subsystem's individual suspended state

- the FDMs now use the delta time argument the same as the rest of
  FlightGear; formerly, main.cxx made a special case and passed a
  multiloop argument

- FDMs now calculate multiloop internally instead of relying on
  main.cxx

There are probably some problems -- I've done basic testing with the
major FDMs and subsystems, but we'll probably need a few weeks to
sniff out bugs.
2002-05-11 16:28:50 +00:00
david
1ce573908c Mac OS X patches from Jonathan Polley. 2002-05-11 12:30:22 +00:00
david
f3eafe1007 Property patches from Frederic Bouvier:
The FlightGear patch is to take account the change in the getChildren
function that now returns a vector<SGPropertyNode_ptr>. If the
removeChild functionnality is to be added in FlightGear, all those
SGPropertyNode * floating around should be changed to
SGPropertyNode_ptr.
2002-05-11 00:59:26 +00:00
david
56473dc28d Mac OS X fixes and MSVC warning fixes from Jonathan Polley. 2002-05-10 23:35:06 +00:00
david
c37d2019e0 Patch from Melchior Franz:
- don't send "set" confirmation when in data mode. If an external
  program really cares if the settings were accepted, which is
  rather unlikely, it simply has to "get" the property again.
  The returned line would have been a pain to parse, anyway
  (something like "from-model =  'true'  (bool)").
- do not only "set" the first token, but concatenate all given
  tokens with a space in between. This won't be used much, but
  makes sense for setting strings, while it does no harm when setting
  numbers. Silently ignoring all but the first token is impolite. ;-)
- remove old, commented out debug message that doesn't make much
  sense any more.
2002-05-09 21:57:07 +00:00
david
907e2942bb Patch from Melchior Franz:
Due to jumpy joystick read-outs the UFO jitters a lot in turns.
This patch implements simple damping for aileron/elevator/throttle.
Furthermore it lets the UFO fly backwards if brake[0] is active
(by default associated with the joystick's fire button). After all,
everyone knows that UFO's can fly backwards!
2002-05-09 21:56:31 +00:00
david
5c799d1ba2 Patch from Melchior Franz:
It's cumbersome to use the MagicCarpet as 3D cursor, because everytime
you shoot over the target you have first to turn by 180 degrees and to
fly back.

This patch lets the magic carpet fly backwards if brake[0] is active,
which is by default associated with the joystick's fire button.
2002-05-09 21:56:07 +00:00
david
26e4ae9fc4 Patch from Jim Wilson:
Turns out it was a problem with a long string, not the font.  Plib is limited
to 80 characters in things like this listbox.  BTW I checked and all the fonts
are missing those characters.  So, no point in changing.

Description:
Fixed segfault caused by long string.
2002-05-09 21:15:01 +00:00
curt
37b665075f Robert Deters:
> I have attached some new additions to the UIUC code.  Most of the
> changes allow for the addition of apparent mass.  This is very
> useful with light aircraft and gliders.
2002-05-09 05:02:36 +00:00
curt
1c513868b7 Erik Hofman:
I changed the sound code to let it use FGCondition. This changes the
code and configuration files rather drastically. Furthermore I've added
an in-transit mode which plays the sound only when the tied property is
changing.

Changes:

Code:
* Added condition support to trigger an event
* Removed the <type> section from the main event definition
   (this could be done using conditions)
* Removed the abillity to use several events with the same name,
   instead it is required to use conditions.
* Updated the README.xmlsound

Base package:
* Changed the configuration files accordingly.
* Changed flaps and gear to use the new in-stransit mode.
* Changed the flps.wav file so it can be looped.
* Created a new gear.wav file (whcih can be looped)
   and a gear-lck.wav file for gear locking sound.

IMPORTANT:
To change existing configuration files to the new ones, it is important
to pack events with the same name together into one singel event, using
the condition specification. Also, when using special types (inverted,
flip-flop, raise or fall) these should be changed to a conditions also.
For more information, please look at
FLightGear/docs-mini/README.xmlsound and the supplied aircraft
configuration files located under FlightGear/Aircraft (espesially
c172/c172-sound.xml and c310/c310-sound.xml).
2002-05-09 04:24:39 +00:00
david
93e0274eb8 Last rev was based on an old version and blew away recent changes.
Reverted to the current JSBSim CVS version of each.
2002-05-07 23:11:16 +00:00
david
ce69eb8e79 Added an interface for an environment controller, together with a
default implementation that uses user-supplied params.  Currently, the
only parameters are

  /environment/params/base-wind-speed-kt
  /environment/params/gust-wind-speed-kt

but others will show up soon (i.e. sheer, variable direction, variable
visibility, etc.).  To activate these properties, you have to
configure --with-new-environment.

The gusting function is simplistic and needs to be replaced with
something better, though it doesn't feel too far off.
2002-05-07 00:03:54 +00:00
tony
be71e0f555 Added stall hysteresis modeling, nose should fall through nicely in a stall now. 2002-05-04 17:38:06 +00:00
david
cd041af9d8 Added a new 'billboard' animation type. This animation takes one
subproperty, 'spherical', which is true if the object has spherical
symmetry and should rotate around both the x-axis and z-axis to face
the camera (i.e. a simple cloud), and false if the object has only
cylindrical symmetry and should rotate only around the z-axis (i.e. a
tree).
2002-05-03 21:09:14 +00:00
tony
4306cebe9e Norman Vine's speed optimizations 2002-05-03 13:56:09 +00:00
david
ff6943bd09 Regularized the position initialization:
1. If /position/longitude-deg and /position/latitude-deg are in range,
   use them.
2. Otherwise, if /sim/startup/airport-id is not empty, use it.
3. Otherwise, set the lon/lat to the middle of the KSFO field.

The default used to be Globe, AZ, but that doesn't make sense since we
don't distribute that scenery by default any more.

With this change, starting from a save file seems to work properly:

  fgfs myflight.sav
2002-05-01 23:13:36 +00:00
andy
7a9e2aba71 Fix dumb typo. Very embarassing, but oddly not fatal... 2002-05-01 01:17:33 +00:00
tony
4a854fcc3e JSBSim updates, including MSVC fixes from Bernie Bright 2002-04-30 13:42:26 +00:00
david
8b411b244b Cleaned up initialization of parking brake to be more consistent. 2002-04-26 01:53:41 +00:00
curt
05bb076784 Pass along the status of the gear up/down control lever. 2002-04-25 22:41:13 +00:00
curt
7b69f0cbb4 Bernie Bright:
- Major rewrite making it more member function friendly.
2002-04-25 20:31:38 +00:00
curt
d15d3652b1 Bernie Bright:
- Added initial_value argument, in milliseconds, that specifies when
  event is first run.  The default value of -1 triggers the event
  immediately as per the existing behaviour.  A repeat_value greater than
  zero runs the event no less than every 'repeat_value' milliseconds
  afterwards.  A repeat_value of zero deletes the event.
- Modified run queue behaviour such that only one event per frame is
  run.
2002-04-25 20:31:14 +00:00
david
58a001ad32 Patch from Norman Vine:
Yikes  --
Looks like I broke the scenery.current_normal when I last
reworked the hitlist code.

I guess this is proof that no one has been using it.
2002-04-25 19:44:27 +00:00
david
830e274238 Patch from Melchior Franz:
the parking_brake state is requested in saveInitialState before it
is first set
2002-04-25 19:35:04 +00:00
david
1e73f62481 Patch from Melchior Franz:
the states of all the volume buttons are requested in saveInitialState before
they are first set
2002-04-25 19:26:47 +00:00
david
f2683c541b Patch from Melchior Franz:
ATCmgr.cxx:148 says:
// Returns true if the airport is found in the map

Yes, it returns true if the airport has been found. But it fails
to return the airport data. Just plays around with a local pointer.  ;-)
2002-04-25 19:26:18 +00:00
david
77cf6c7dc8 Patch from Melchior Franz:
FGAIEntity::FastWorldCoordinate (AIEntity.cxx:96) uses this->hdg
uninitialized.
2002-04-25 19:25:53 +00:00
david
18e36a3302 UFO FDM patches from Jonathan Polley:
I have finished working the bugs out of my "Enhanced" version of the Magic
Carpet FDM.  The UFO FDM works the same as the Magic Carpet with the
following exceptions:

The aircraft's pitch is determined by the Elevator setting (with a pitch
rate of 45 degrees per second).
Climb is forward velocity * sin(pitch)
Speed is forward velocity * soc(pitch)

Roll is tied to the aileron (again, with a roll rate of 45 degrees per
second)
Turn rate is sin(roll) * 45 degrees.

Yes, this does mean that turning is quite a bit more sluggish than
climbing.

If you are wondering why a UFO FDM, it is because it's best that I not
replace the existing magic carpet and this FDM does behave like a UFO (it
hovers, can spin and pitch while hovering, and does not obey the laws of
physics ;)
2002-04-25 16:23:16 +00:00
curt
6b22c85e24 Comment out ATC AI manager init() and update() calls until we can resolve
the tremendous performance hit they are imposing.
2002-04-22 22:28:00 +00:00
curt
cf146a7d1b Fix a couple "make dist" problems that crept in since the last release.
Regengerate msvc project files.
2002-04-21 05:51:37 +00:00
curt
17106105bb Fix for reset causing view problems when not in pilot view. 2002-04-21 03:27:34 +00:00
david
a8576b9e95 Make an animation with no object name apply to the model as a whole.
This replaces the old "range" subtree with something more general.
2002-04-20 17:07:47 +00:00
curt
586d767ab6 There was an integer overflow in the way elapsed_time_ms. Because the
SGTimeStamp "-" operator returns it's result in usec's, there is an upper bound of 37.8 minutes on the maximum difference this operator can reliably report
before the math overflows.  I change the global "int elapsed_time_ms" variable
to a "double sim_time_ms" and restructured how the value is calculated.
----
The practical result of the overflow bug is that a large negative dt was
passed to the event manager and the end effect was that no events would
be run until their counters caught up ... in another 37.8 minutes or so.
2002-04-20 14:52:43 +00:00
david
89324e0cfe Explicitly include model.hxx, since acmodel.hxx no longer includes it. 2002-04-20 14:08:06 +00:00
david
1094206677 Add support for interpolation tables for non-linear animations.
Remove header dependencies where possible, to speed up rebuilds.
2002-04-20 14:07:34 +00:00
david
17cfbd2a7c Remove header dependencies where possible, to speed up rebuilds. 2002-04-20 14:07:03 +00:00
david
4c101d7199 Updated docs for this directory. 2002-04-20 14:05:49 +00:00
curt
8b3f0ad7cc Jim Wilson:
Also move tower when teleporting to a new airport.
2002-04-19 15:48:27 +00:00
curt
f1d8d554d0 Jim Wilson:
Fix a scrolling problem where last item doesn't show in prop_picker.
Removed include for unreferenced header in viewmgr.
2002-04-19 15:36:51 +00:00
curt
b36f19b871 Detect and recover from a math overflow that can possibly prevent panel text
from updating if the instrument panel is not drawn for more then 35.7
minutes.
2002-04-19 14:05:58 +00:00
david
473ea84621 JSBSim fix:
Corrected typo "flaps-pos-deg" to "flap-pos-deg".  JSBSim now reports
the normalized flap position to FlightGear, and the model animation
works again.
2002-04-19 12:15:46 +00:00
curt
130902f788 Fixed an "==" vs. "=" typo. 2002-04-19 04:11:32 +00:00
david
eea531fbf5 Stop the sound when paused. We really need a separate control for
muting, but that will have to wait until someone has time.
2002-04-19 04:00:02 +00:00
curt
4656e3adca Jim Wilson:
Minor patch for flicker glitch when crossing from one tile to another.
2002-04-19 00:25:25 +00:00
curt
97cc733ac8 Tracked down a potential segfault when trying to audibly ident a vor station.
This led to an investigation into why the ident playing didn't work anymore.
Recent changes in the sound manager broke some assumptions the radiostack
code was making.  These patches should hopefully fix all that back up.
Erik, please review these changes to double check I didn't do more damage
than good. :-)
2002-04-18 21:43:00 +00:00
david
4c30ccf2d4 Added groundwork for reading a joystick name from the latest plib CVS
code.  It doesn't do anything but print a message, so far.
2002-04-18 20:18:33 +00:00
curt
71598c12f8 Jim Wilson:
These are the updates for the View manager properties.  Removed the last of
items (within the viewer/viewmgr) hard coded to view number.  Added support
for per view configuration of ground level nearplane value.  Tower views look
very nice with little or no z-buffer problem in the models.  Pilot offset
dialog can be used to move eye in all views.
2002-04-18 16:51:47 +00:00
curt
e5abcd1ef1 Replaced spaces with <tab> since this is a makefile. 2002-04-16 20:42:58 +00:00
curt
7311318e7e Small tweak to make the Irix compiler happy. 2002-04-16 17:28:57 +00:00
david
adcb4fc30e Latest JSBSim changes. 2002-04-16 13:15:29 +00:00
curt
bd9b1c7558 Fixed a recently introduced bug which cause the ground lighting to be
wrongly "lifted" a very, very, very large amount more than it was supposed
to be.  I guess the moral of the story is what goes up, must come down. :-)
2002-04-16 06:33:56 +00:00
curt
39cba9139c Of all the ILS stations that match the specified frequency and are in range,
return the one that is pointed most directly at us.
2002-04-15 17:53:05 +00:00
david
6c2039c5aa This module was filtering out all stations with localizer offset
>90deg, even though src/Cockpit/radiostack.cxx has code to deal with
those; as a result, no backcourses were getting through.

This fix allows the common case of backcourses to work again, but
breaks the uncommon case of a runway using the same frequency for two
separate localizers.  That special case will have to be detected
somehow.  Still, this fixes more approaches than it breaks.
2002-04-15 15:28:11 +00:00
david
e528324955 MSVC fix. 2002-04-13 21:41:51 +00:00
david
c5f6293f17 Fix for vanishing-model problem: models are drawn in the same scene
graph as the terrain, except for internal cockpit view.  The SSG
scene-graph variables (except for the lighting root -- I'll get that
later) are now held in globals.hxx.

FGModelMgr::draw() is obsolete; I'll remove it in a future revision.
2002-04-13 21:36:22 +00:00
david
7432b9c590 Patch from Jim Wilson:
Fix for problem where an incorrect frame or two got slipped in while
changing tiles.  Corrections to authorship in file level comments.
2002-04-13 16:25:49 +00:00
david
d164d565c0 Patch from Norm Vine to speed up model placement.
DPM: untabified file.
2002-04-13 13:30:38 +00:00
david
39416c2855 Patch from Jim Wilson:
Minor fixes.  Made some changes to get lighting correct for time of day
for now. MSVC compatibility fix and returned to clearing z-buffer only in
LOOKFROM (formerly pilot view).

[dpm: removed the last one, since I had already made a similar patch]
2002-04-13 13:11:34 +00:00
david
d254b2a331 Ensure that the aircraft model is in the same clip plane as everything
else and *doesn't* clear the z-buffer when in external view; tighten
the far plane for internal view back to 100m to give us maximum
precision (this will be important for some instruments; I might even
move it to 50m).
2002-04-13 12:11:27 +00:00
david
6b71800829 Add and document a "range" (level-of-detail) animation for individual
objects and a range for the model as a whole.
2002-04-13 12:10:20 +00:00
david
fa5a707128 JSBSim change:
Set an arbitrary cutoff (5RPM) where friction causes the propeller to
stop spinning.
2002-04-12 17:24:17 +00:00
david
dcac4d7e32 Fixed typo for indirect longitude property. 2002-04-12 15:07:49 +00:00
david
8bed5a8cf4 Added support for additional animated, dynamic 3D models configured in
XML.
2002-04-12 12:45:49 +00:00
david
03c431aa56 Patch from Norman Vine to save some property lookups. 2002-04-12 12:44:58 +00:00
curt
b62fbaf9ce Run a registered event as it's registered and then at the specified interval. 2002-04-12 05:07:28 +00:00
david
f17a6479f7 Get rid of non-portable fmax call. 2002-04-11 19:09:15 +00:00
david
9156544566 Add support for /controls/parking-brake -- it effective overrides the
individual braking commands for the main gear.
2002-04-11 17:11:22 +00:00
david
4d7fda6e75 Added /controls/parking-brake and moved all control setters into the
cxx file (getters are still inline).
2002-04-11 17:10:46 +00:00
david
3bb69f35d1 Replace --with-new-mouse with --with-old-mouse, defaulting to 'no'. 2002-04-11 17:09:06 +00:00
curt
b3a3c0fbac Updated licensing terms to GPL since this file inherits a goodly proportion
of previously GPL'd code.
2002-04-11 16:40:59 +00:00
curt
9f8c4f9600 MSVC fixes. 2002-04-11 16:35:37 +00:00
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
curt
39fcbc93ba Finally getting around to being able to specify host name and ports for
remote fdm application.
2002-04-11 05:40:34 +00:00
curt
bef1e770bb Change constructor parameter order. 2002-04-11 05:39:56 +00:00
curt
42a5ee93d7 This patch includes the FGLocation class, a few fixes, cleanup in viewer code.
Synced to CVS 19:36 EDT 2002-04-10 (after this evenings JSMsim and Base
package updates).

Description:
Added FGLocation class which is new home for calculating matrix rotations.
Viewer can now be configured to access rotations created by the model rather
than repeating the same calculations again.

Changed model initialization for the time being so that its location data is
available for the viewer (currently required by other subsystems).  At some
point we can move this back to fg_init along with the viewer initialization.

Seperated the update from the draw function in the model code.  The viewer
code needs the same matrix data, and moving the update portion at this time
does not increase the number of matrix math iterations.

Moved the model draw so that it always appears "in front" of lights and clouds.

Reogranized viewer update routine for using the FGLocation class and
simplified some more tasks.  The routine is fairly easy to follow now, with
the steps ordered and spelled out in comments.

Viewmgr only updates the current (visible) view now, with the exception of an
old reference to "chase view" that will be corrected in forthcoming changes.
Also will be doing some work on the viewmgr outputs.

Model is now clears the z-buffer in all modes.  This will be changed with the
next viewmgr update.  The only side effect is that models always disappear
when over 5km distant from the eye point (can't really see them anyway:-)).

Other than a flag to indicate "internal" view I don't anticipate the
configuration interface for viewmgr/views will be changed a lot for now.  It
is close to done.  The next viewmgr update will however rework the outputs so
may change location.

This code will run with the previous version of preferences.xml, but will run
faster with the newer version.  I am attaching a preferences.xml that should
not be commited before the code.  All the changes are in the /sim/view section
and should show a simpler view configuration that references model locations.
 Note that I've added a 2nd tower view in "lookfrom" mode for illustration
purposes. You can look around using the mouse.  You may want to remove that or
comment it out.
2002-04-11 04:26:07 +00:00
curt
f1c03ed957 This patch includes the FGLocation class, a few fixes, cleanup in viewer code.
Synced to CVS 19:36 EDT 2002-04-10 (after this evenings JSMsim and Base
package updates).

Description:
Added FGLocation class which is new home for calculating matrix rotations.
Viewer can now be configured to access rotations created by the model rather
than repeating the same calculations again.

Changed model initialization for the time being so that its location data is
available for the viewer (currently required by other subsystems).  At some
point we can move this back to fg_init along with the viewer initialization.

Seperated the update from the draw function in the model code.  The viewer
code needs the same matrix data, and moving the update portion at this time
does not increase the number of matrix math iterations.

Moved the model draw so that it always appears "in front" of lights and clouds.

Reogranized viewer update routine for using the FGLocation class and
simplified some more tasks.  The routine is fairly easy to follow now, with
the steps ordered and spelled out in comments.

Viewmgr only updates the current (visible) view now, with the exception of an
old reference to "chase view" that will be corrected in forthcoming changes.
Also will be doing some work on the viewmgr outputs.

Model is now clears the z-buffer in all modes.  This will be changed with the
next viewmgr update.  The only side effect is that models always disappear
when over 5km distant from the eye point (can't really see them anyway:-)).

Other than a flag to indicate "internal" view I don't anticipate the
configuration interface for viewmgr/views will be changed a lot for now.  It
is close to done.  The next viewmgr update will however rework the outputs so
you can expect that the data that viewmgr is writing to the property tree
may change location.

This code will run with the previous version of preferences.xml, but will run
faster with the newer version.  I am attaching a preferences.xml that should
not be commited before the code.  All the changes are in the /sim/view section
and should show a simpler view configuration that references model locations.
 Note that I've added a 2nd tower view in "lookfrom" mode for illustration
purposes. You can look around using the mouse.  You may want to remove that or
comment it out.
2002-04-11 04:25:30 +00:00
david
ba31d94379 Fixed reversed sign for nosewheel steering. 2002-04-11 00:14:10 +00:00
curt
eda75b6d9b Let's try it again, with the correct file name this time. 2002-04-10 17:51:34 +00:00
curt
c7847e6d91 Recover this file. We are not able to use boost as a replacement because
of current Irix compiler incompatibilities.
2002-04-10 17:39:34 +00:00
david
a82e15a653 The 3D aircraft model scene is now managed by
FGAircraftModel::update.  We should do the same thing for the scenery,
to simplify the top-level loop.
2002-04-09 21:08:28 +00:00
david
cde90e06d5 Removed current_model global variable and added a reference in
FGGlobals instead (we still need to do the same with current_input and
a few other globals).
2002-04-09 18:58:24 +00:00
andy
4a2f192fb1 Change the idle MP to reduce idle power a bit. This is basically a
hack, and should be replaced with a sane idle model that has some
physical justification.
2002-04-09 04:55:16 +00:00
curt
cea3b2e4eb Added support for sending:
- Throttle control position
- Mixture control position
- Magneto/starter control position

Added support for receiving:
- Engine state (off, cranking, running)
- RPM
- Fuel Flow
- EGT
- Oil Temp
- Oil Pressure
- Fuel tank quantity
- Weight on wheels
2002-04-08 19:57:45 +00:00
david
d89c63ab32 JSBSim change:
Reduced the steering gain again, but still left it much higher than it
used to be.
2002-04-08 16:15:14 +00:00
david
aa872ed040 Patch from Frederic Bouvier (FIXME comments added by David Megginson):
I made these modifications to correct the problem of getter functions
returning pointers to local variables. Those variables are no longer
locals and become static. One should be aware that it kills reentrancy
!
2002-04-07 21:20:16 +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
david
6e5d22789b Patches from Norm Vine to improve framerate and add a new
#ifdef'ed-out mode for syncing fullscreen with user settings in
Windows.
2002-04-07 15:24:32 +00:00
david
50c13f7972 Patch from Jim Wilson:
Made a couple more adjustments, now the function builds the
transformation matrix (sans the translation) directly from the five
inputs.  After realizing that it may be necessary for the new location
class to publish a world up vector, comments were added indicating
which values constitute world up.
2002-04-07 15:04:49 +00:00
david
e2e6b19ddf Corrected typo /position/altitude-deg to /position/altitude-ft. 2002-04-06 23:45:24 +00:00
david
a1294ea398 Viewer update from Jim Wilson:
Minor patches to initial tower view code.  Added calculation for "tower" at
any airport, placed a couple fractions of a degree off the center.  Moved the
farplane from 100m to 5km so that "lookfrom" mode can see the model.  5km is
still in a reasonable range for a depth buffer.  Note that looking at a model
anything but a small distance will cause some problems on older cards.
Temporarily changed viewer to always report elevation/lon/lat of the aircraft
in order to avoid a problem with the ground trim getting recalculated when
tower and aircraft are on different tiles.
2002-04-06 17:23:18 +00:00
tony
5fcabc9982 Converted FCS to use property tree internally, documentation updates. 2002-04-06 16:03:16 +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
ec6888d4a4 Viewer update from Jim Wilson:
Tower View and viewer config is in place.  Note that the interface is
still in a state of flux.  A couple of the config items (namely the
offsets) are still using the old settings.  The tower is hard coded
into the base package for a position off the starting runway at KSFO
and is probably not in the right place for there even.  Looks pretty
cool though!  Tower View is the third view.  If you aren't at KSFO
you'll just see blank space in view 3. It's looking through the earth or
something like that :-).  Important note: zoom in with a few
hits of the "x" key to see the plane better in tower view.
2002-04-05 18:49:04 +00:00
david
9d6011aa69 Patch from Jim Wilson to realign model slightly in new model code:
This should fix it.  The problem wasn't the rotations but a difference in
the translations.  Note that this fix also puts the wheels back on top of the
pavement when in external view.
2002-04-05 18:48:04 +00:00
david
d2344cbabb Removed dependency on viewmgr.hxx from globals.hxx, so that changes to
the viewer code do not require most of FlightGear to be rebuilt.
Added some now-required includes to environment.cxx.
2002-04-05 18:46:47 +00:00
david
04bc768e0a JSBSim fix:
Changed the steering gain from +/-0.1 to +/-1.0, so that the steering
angle for the nosewheel (when present) is the same as the rudder
deflection angle.  That's probably not exactly right, but it's much
better than we had before -- you can now steer the plane on the ground
reasonably during taxiing.
2002-04-05 16:55:30 +00:00
david
625572663e Moved FGAircraftModel subsystem out into its own directory, and
separated out a new class, FG3DModel, that allows any arbitrary 3D
model to be positioned, oriented, and animated (not just the
aircraft).
2002-04-05 03:19:34 +00:00
curt
59107c791c Various code cleanups. 2002-04-05 00:38:55 +00:00
curt
2c00e13157 Initial revision. 2002-04-04 20:50:05 +00:00
curt
ea99c0421c Fix a warning message. 2002-04-04 20:48:21 +00:00
curt
6997a645c9 A few small updates to make ATC IRIX compliant. 2002-04-04 20:47:23 +00:00
curt
5ff966e8de More platform/compiler compatibility fixes. 2002-04-04 20:41:15 +00:00
david
f450e6d9d1 Let exceptions fall through to main, and use cerr to report them (in
case logging is disabled).  This way, when people specify a
non-existant aircraft or have an error in a custom XML file, they'll
get an error report, at least.
2002-04-04 17:51:40 +00:00
curt
8ac5a5327e Oops, misunderstanding, this copy of runways.cxx wasn't supposed to go here. 2002-04-04 16:30:00 +00:00
curt
6a399b24a3 Re-arranged include files to reduce external dependencies for a slight
improvement in compilation speed.
2002-04-04 06:05:51 +00:00
curt
fd8d48d011 Make the base package check [failed] message a bit more informative about
where it was looking.
2002-04-04 05:03:18 +00:00
david
21d8c07576 Changed cockpit near plane to 0.01m for interior view. Far plane is
100m, so it should be OK.
2002-04-04 01:32:57 +00:00
david
8b18201ced - fixed ANSI C++ namespace problems
- added final newlines to files to avoid compiler warnings

- adjusted for FG_NEW_ENVIRONMENT
2002-04-04 01:32:00 +00:00
david
e78a4d3727 Commented out code setting view position offsets until we sort out
what is what.
2002-04-04 01:04:09 +00:00
curt
7543409e47 Attached are a fairly extensive series of patches to the ATC
system.  A chap from Germany called Alexander Kappes (cc'd) got
in touch with me a few weeks ago and has written the start of
Approach control.  At the moment tuning in to a valid approach
frequency (Dortmund or East Midlands) should result in vectors to
a spot about 3 miles from the active runway, and a telling off if you
stray too far from the correct course, in the console window.  He
seems to know what he's doing so expect this to improve rapidly!!

I've added a rudimentry AI manager and a hardwired Cessna at
KEMT on the runway - I'll remove it before the next release if I don't
have it flying by then.  There seems to be an issue with framerate
which drops alarmingly when looking at it - I've a feeling that I've
possibly created several Cessnas on top of each other, but am not
sure.
2002-04-03 23:54:44 +00:00
curt
716aa4f7ea The previous version used a feature (language extension?) of gcc that
isn't supported by all other compilers.  Notably, MSVC and IRIX puked.
2002-04-03 00:57:06 +00:00
david
0c1fa5f1a5 Changed far clip plane for cockpit interior to 100m. 2002-04-02 20:57:32 +00:00
curt
2717dba826 I have attached revisions to the UIUC code. The revisions include the
ability to run a nonlinear model with flaps.  The files ls_model.c and
uiuc_aero.c were changed since we had some functions with the same
name.  The name changes doesn't affect the code, it just makes it a
little easier to read.  There are changes in LaRCsim.cxx so UIUC
models have engine sound.  Could you send me an email when you receive
this and/or when the changes make it to the CVS?  Thanks.

Also I noticed you have some outdated files that are no longer used in
the UIUCModel directory.  They are uiuc_initializemaps1.cpp,
uiuc_initializemaps2.cpp, uiuc_initializemaps3.cpp, and
uiuc_initializemaps4.cpp

Rob
2002-04-01 21:37:33 +00:00
david
7135382a28 Added select animation type (using a condition), and allow all
animations to be named.
2002-04-01 14:00:08 +00:00
david
d372548782 Major restructuring: the Animation class is now an abstract interface,
and specific animation types are derived from it.  This change makes
the code much easier to read, maintain, and extend.

Added a 'translate' animation type for a scaled, 3D linear translation
(such as a sliding throttle knob).

Renamed the 'offset' property to 'offset-m' or 'offset-deg' as
appropriate; ditto for 'min' and 'max' properties.
2002-03-30 21:24:19 +00:00
david
6a443bb173 Start tracking delta time in milliseconds and passing it to the update
method of each subsystem.
2002-03-30 21:22:02 +00:00
david
9cbded8eaa * src/Input/input.hxx
MSVC fix from Bernie Bright:

You can keep the enum private if you add the following declarations
immediately afterwards:

  struct mouse;
  friend struct mouse;

It seems that MSVC doesn't grant the nested mouse decl. any special
access privileges to its surrounding class.
2002-03-30 12:52:55 +00:00
david
faf2fa91d2 Patch from Jim Wilson:
Clear frame buffer and render model after rest of 3D scene. This has a
small frame rate cost (YMV). But who thought 3D cockpit would be cheap?
If anyone has a better idea, have at it!

Just did some more careful testing and I see little or no frame rate loss
with the depth buffer clear.  Also you can change the near plane to 0.1
and get rid of the "sunroof" (so I don't have to make up another set of
patches.
2002-03-30 12:52:24 +00:00
david
50e25151e1 Patch from Melchior Franz:
My last patch fixed the initialization problem only for the main branch, but
ignored the _MWERKS_ branch.
- merged the branches, only the loop head needs different treatment;
- don't access n.type before it is initialized (valgrind complaint)
- created a constructor; the operator>> wouldn't have initialized all
  variables in case of a broken default.nav.gz entry, so we would have
  got a mixture of the broken one and the previous one; in case of
  the first entry, that would have made nice random values ... ;-)
- move the automatic FGNav variable into the loop, so that the gets
  cleanly constructed for every database entry.
- commented out the frequency min/max exploration, which isn't used at all
- updated the commented out debug output statements, which were simply
  copied over from the nav* files, but never adapted (I needed them :-)
2002-03-30 12:51:42 +00:00
david
1ba6272e3c Patch from Melchior Franz:
altitude_mode is still undefined when FGAutopilot::update is
first run.
2002-03-30 12:51:02 +00:00
david
412ca9a3d4 * src/ATC/atis.cxx
* src/ATC/atislist.cxx

Patch from Melchior Franz:

- merged the _MWERKS_ & generic #ifdef branch, only the loop head needs
  different treatment
- commented out a "n >> skipeol" that is used in navlist.cxx to gobble
  the starting C++-style comment from default.nav.gz; atis inherited
  that, but there is no such comment in default.atis.gz, so the first
  data entry got thrown away
- commented out min/max frequency exploration (-> only for debugging)
- enhanced the constructor; the operator>> wouldn't have initialized all
  variables in case of a broken default.atis.gz entry, so we would have
  got a mixture of the broken one and the previous one;
- move the automatic FGATIS variable into the loop, so that it gets
  cleanly constructed for every database entry.
- don't access a.type before it is initialized
- updated the commented out debug output statements; they were still
  designed for the FGNav class ...
2002-03-30 12:50:30 +00:00
david
ce4ea1d432 Patch from Melchior Franz:
- merged the _MWERKS_ and the generic branch, only the loop head needs
  different treatment
- created a constructor; the operator>> wouldn't have initialized all
  variables in case of a broken default.fix.gz entry, so we would have
  got a mixture of the broken one and the previous one; (valgrind
  complained ...)
- move the automatic FGFix variable into the loop, so that the gets
  cleanly constructed for every database entry.
- don't access fix.type before it is initialized
- updated the commented out debug output statements (they were copied
  over from navlist.cxx but never adapted)
2002-03-30 12:50:01 +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
df74260252 Fixed buffer size again. 2002-03-28 17:16:37 +00:00
david
58e664a060 Patches from Jim Wilson:
This patch creates a seperate scene graph for the cockpit.  The near plane is
only moved up when in the interior (pilot) view.  This is because with
rounding (I presume) it the visible ground is a bit up higher than it is with
the older nearplane setting.  Not much, but it is enough to bury the wheels.
I suspected this might be true but spliting to two sg's confirms it.  If
necessary we can adjust the model up a bit when in interior view.  This might
be good so we can set the near plane even closer when in the cockpit (its
still at 0.2m).

In general this looks a lot better on my Voodoo with this patch.  No
perceptibel change in frame rate on my system.  In terms of future plans I'd
see the sense in making the model plug into either scene.  This will be
necessary when we have multiple model instances in the frame.
2002-03-28 16:14:04 +00:00
david
2288a530c3 Make sure that saved mouse position is reset when mouse is centred on
mode change.
2002-03-28 16:12:26 +00:00
david
62df2d1d53 Mouse changes suggested by Norm Vine. Cursor always centres on mode
changes, and wrap-around is smoother.
2002-03-28 15:57:02 +00:00
david
24a812c0b6 Created a new /devices property subtree to hold input device status
(currently just the mouse, but later the joystick and keyboard as
well).  Publish mouse button status to the property tree.
2002-03-27 23:45:11 +00:00
david
2129aba650 Fixed bug reported by Norman Vine:
Mouse was not working properly with PUI dialogs that use sliders.  It
turned out that the up/down sense was reversed.
2002-03-27 22:34:43 +00:00
david
36e012c400 Patch from Norm Vine:
patch to enpower HUD to  display elevator trimval
2002-03-27 20:27:52 +00:00
curt
2e0b32dab8 Changes corresponding to recent property manager changes
Remove bogus warning messages
Documentation changes
Minor speedups
2002-03-27 18:47:31 +00:00
david
0944ab91c2 Patch from Melchior Franz:
The matrix doesn't define some cells, which are actually used
in the multiplication. That makes the result unpredictable.
I have no idea if 0.0 is the correct value for these, but
garbage is hardly the correct value either. Should some of them
be set to 1.0?
2002-03-27 15:53:15 +00:00
david
38c705b6c0 Viewer patches from Jim Wilson:
Think my brain is getting clogged with matrices :-).  Well I've got the funky
orientation offset bug out of the model code.  In the process the model.cxx
got optimized a bit.  At some point we'll need to liberate model.cxx from the
viewer class, but it is no longer hard coded to access the  "pilot view" to
get it's data. Instead it uses whatever the "current" view happens to be.  I
may try and do that final bit of having models rotate independant of the view
tomorrow night, or start right in on the viewmgr and get a tower view up and
running.  You guys have any preference?  My brother's family is coming to
visit for a few days so what I don't get done tomorrow night probably won't
get done until after the weekend.
2002-03-27 14:52:19 +00:00
david
bb2371dbd1 Patch from Frederic Bouvier:
The compiler complains about too long names for instanciated templates
that result in name truncation. There are warnings but finally it ends
with a fatal errors. I found that ignoring the warning cure the
problem.
2002-03-27 13:00:57 +00:00
david
5ec0c135bc Fixed a bug report from Frederic Bouvier:
A sloppy coder already defined min and max as macros with 2 arguments
2002-03-27 13:00:25 +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
david
64ed2f8e42 Removed outdated reference to fgSimTime. 2002-03-27 12:53:50 +00:00
david
7e1b599368 Patch from Melchior Franz:
When the loop starts, n.type is still undefined, so the while statement
depends on unitialized garbage. The input operator cares for the [End]
bracket anyway (returns if the first character is a '['). So it is safe
to check for it after reading the line and break if necessary.
2002-03-27 12:49:29 +00:00
david
37b60664d1 Patch from Melchior Franz:
Err ... 8 bytes isn't much for such a long string.
Makes a nice segfault.  ;-)
2002-03-27 12:49:07 +00:00
curt
ca364c2cd9 Added support for rotational rates and body access (pilot relative)
accelerations.
2002-03-27 05:21:38 +00:00
curt
2e34bfc5af Added fields ... this is a work in progress. 2002-03-27 05:20:45 +00:00
david
8d9b59314a More cleanups. Removed the pui-* commands, and added a pass-through
property to indicate when mouse events should be offset to PUI and the
panel first.
2002-03-26 17:14:48 +00:00
david
5b2df63f54 Patches from Melchior Franz:
The first hunk might not be necessary, but the light_coverage property
was the only one that wasn't explicitly defaulted, which is unfair.  ;-)
   The second hunk adds the missing initialization to the init routine.
This is necessary, because (unlike the material entries from material.xml)
the generated light entries don't get the light coverage set. Yet
obj.cxx:795 reads this information out fot every leaf, although not needed
in the case of lights. Avoiding this isn't worth the trouble.
   The last hunk sets the missing normal_index. The POINTS branch in
gen_leaf was always called with this int_list empty, which made the normals
handling use data garbage.
2002-03-26 16:10:53 +00:00
david
db7013c83a More work on the configurable mouse. Mouse motion is now configurable
as well as mouse clicks.  You must configure with --with-new-mouse to
get this.
2002-03-26 13:45:44 +00:00
david
4536c246da Setting offset or tilt always sets goal-offset or goal-tilt as well. 2002-03-26 13:44:43 +00:00
david
bdca06f9ba Commented out cout statements that were not in the std namespace. 2002-03-26 13:44:21 +00:00
david
ee44d3042f I missed committing this one. 2002-03-26 03:14:20 +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
e82d7d5a64 Ensure that all entries in the FGAircraftModel::Animation structure
are initialized (reported by Melchior Franz).
2002-03-25 22:01:13 +00:00
david
b3d5d24d81 Patch from Melchior Franz:
It seems that the airport database was changed some day and the End?Flags
changed from floats to strings. The database definition, though, was not
adapted and still created number entries. Reading out these flags led to
access to memory, that was never initialized. While it didn't cause crashes
during normal use, it actually caused one when I ran fgfs in ddd. Seems,
that the concerned memory region wasn't zeroed out then and hence uncovered
the bug.

Of course, the runways.mk4 database has to be re-created with the new
definitions.
2002-03-25 20:05:34 +00:00
david
de9682e32a Patch from Erik Hofman:
This patch gets F8 working again.
2002-03-25 19:37:49 +00:00
david
780b4a813e Minor patch from David Megginson:
Fix FGViewer::update so that pitch offset and goal pitch offset work
together nicely (the offset was snapping to 90/-90 when only one of
the two was changed).


Viewer improvements from Jim Wilson:

These files get the 3d cockpit working and fix a few issues in the viewer
code.
XYZ offsets are now defined as follows: X -left/right+ (along wing axis), Y
-up/down+ perpendicular to the aircraft, Z is -in/out+ the aircraft's body axis.
I've also done some cleaning up of unused and mostly unusable interfaces,
added commentary to the *.hxx, combined together some duplicate code and
eliminated a couple unecessary operations.  I also moved what was left of the
"protected" zone to "private" since we aren't subclassing this anymore.
2002-03-25 14:32:13 +00:00
david
cf7f245b32 Fixed a small typo. 2002-03-25 14:30:29 +00:00
david
67e61c89ce Support for assigning custom mouse cursors to mouse modes. 2002-03-25 12:58:26 +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
tony
d2156b5649 Updates. Includes property tree additions and fixes. Also Jon's first cut at
multi-fdm capability.  Thanks also to Erik for pointing out a couple of typos.
2002-03-23 00:29:21 +00:00
tony
464c060171 Fix for flaps problem. 2002-03-23 00:27:16 +00:00
david
da621105a0 Removed unused function fgFindNode (the version used now is in model.cxx). 2002-03-22 13:24:29 +00:00
david
343cea2812 Removed unused files. 2002-03-22 13:23:39 +00:00
david
fafc000d61 Initial revision of README describing the contents of the src/Main
directory.
2002-03-21 22:37:12 +00:00
david
825320e8bf Viewer update from Jim Wilson:
This patch renames the "goal" orientation offsets inputs/outputs to
conform with the naming of the new interface.
2002-03-21 20:59:43 +00:00
david
b52123b88b Removed obsolete files. 2002-03-21 13:12:37 +00:00
curt
c032f841e2 more ( string == "" ) to ( string.empty() ) conversions. 2002-03-21 05:31:55 +00:00
andy
e45cb5d0aa Found by inspection a bug in the generation of orientation matrices
for fuselage Surface objects.  If the fuselage wasn't aligned perpendicular
to the Y axis, the matrix wouldn't be orthonormal.  Since all of, perhaps,
three aircraft have ever been built this way, it's doubtful I would have
found this as a bug report. :)
2002-03-21 03:35:52 +00:00
tony
8b621f2b1e Fix for the flaps problem. 2002-03-21 02:26:22 +00:00
tony
86e5f091bc Irix fix. 2002-03-21 01:45:49 +00:00
david
18a3df31b3 Model-loading patch from Dave Luff. 2002-03-20 22:40:11 +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
9dbb215b1d Added missing file from JSBSim CVS, with 'using namespace std;'
statement added for ANSI-conformant compilers.
2002-03-20 14:06:14 +00:00
david
25f68c0292 Irix fixes. 2002-03-20 13:59:34 +00:00
tony
775094f9af Updates. 2002-03-20 12:45:39 +00:00
tony
317d794f5c First commit of properties code. JSBSim now has a basic property tree all
under /fdm/jsbsim
2002-03-20 12:45:02 +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
andy
47b2307356 Oops, "one third from the edge" means "one SIXTH from the center". 2002-03-19 00:02:18 +00:00
curt
a2acc953ae Somewhere along the line in the recent changes some std::cout were
inclueded in some of the files. Irix doesn't have cout in the std class,
so I changed it to "cout" and included SG_USING_NAMESPACE(std) at the
beginning of the files.
And some minor warning cleanups.
2002-03-18 19:46:24 +00:00
curt
586d7f127a White space tweaks. 2002-03-18 19:02:59 +00:00
curt
464f036f35 Here is a cleaned up hitlist that should solve the PLib conflict
and fixes a 'potential bug' if the FGFS View code were to change

I also consolidated the specialized IntersectLeaf()
as they really didn't gain us much outside of their having
'more direct access into the SSG controlled data'

I would like to see the fgCurrentElevation functions moved
out of hitlist.cxx.

The one obstacle is their being dependent on my PLib
auxillary functions

ssgGetEntityTransform()
ssgGetCurrentBSphere()

code has been run through astyle with the default options
2002-03-18 16:25:16 +00:00
curt
8138c82b58 Incorporated Norman's optimized line/geometry intersection code. 2002-03-17 00:38:24 +00:00
curt
3bf7269174 Initial revision. Things are just beginning to be stubbed in now. 2002-03-17 00:37:22 +00:00
curt
56d6ecbf83 Oops, fixing the ghosts of bugs past. :-) Good thing I remembered how I
fixed this when I made the mistake the first time.
The view code wasn't properly handling the transition across tile
boundaries so we'd get a 'flash' of the scene wrongly transformed for
one frame at every tile boundary crossing.  This is what
scenery.get_next_center() is for.
2002-03-17 00:36:39 +00:00
david
2c4eb0c56b Removed at CM's request. 2002-03-16 22:36:33 +00:00
david
d4c49d65ac Major weather update from Christian Mayer, tying the weather code into
the property system, among other things.  A separate integration into
the FDMs will follow shortly.

This code will be used only if the --with-new-environment option is
*not* passed to configure.
2002-03-16 20:31:27 +00:00
curt
ac99a82b98 Replaced some debugging structure David inadvertantly removed. 2002-03-16 05:12:26 +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
96a4e9abc3 Renamed /cockpit property to /sim/view/internal. 2002-03-15 21:50:14 +00:00
andy
b933406818 Print an error message before terminating on parse errors. 2002-03-15 19:02:07 +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
curt
56fef38054 Change fog punch through value a bit. Either way it's a WAG for now, but
at least it's less obviously wrong.
2002-03-14 00:52:38 +00:00
david
cabbc08c07 Removed some cout statements left in accidentally. 2002-03-14 00:30:21 +00:00
david
45d64bef95 Centralized most view-management code in FGViewMgr. It's still a
mess, but the mess is all in one place now.
2002-03-14 00:29:20 +00:00
curt
9a27019df1 Combined and updated some code to calculate fog parameters. 2002-03-13 17:06:41 +00:00
curt
87d6a0700d Fix several signed vs. unsigned warning messages. 2002-03-13 17:06:17 +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
curt
fd21788c45 Add "(" and ")" to ensure the expression is evaluated correctly. 2002-03-13 15:55:32 +00:00
david
6cca1d6a75 Eliminate dependencie on tying variable pointers (in preparation for
property-code simplification).
2002-03-13 15:16:24 +00:00
david
a0f50cd90d Added a final newline to avoid a compiler warning. 2002-03-13 14:17:59 +00:00
curt
06bf5db80a Working on the start of a 'standard' <grin> remote FDM interface. This
is a work in progress and needs severe enhancement before it will be
useful.  It provides a UDP data channel that goes both ways between
flightgear and the fdm.  It also provides a TCP 'command' channel so
flightgear can 'reliably' send commands to the remote fdm (such as set
starting position, reset on ground, etc.)
2002-03-13 06:07:07 +00:00
curt
0a01e563f4 Better support of the newer more flexible object file format. This
includes the ability to specify per vertex normals rather than depending
the normals list being the same as the vertices list.  (Support for
previous binary file format scenery is maintained.)
2002-03-13 06:03:37 +00:00
david
d31fcd21ef Patch from Jim Wilson to fix internal cockpit view rotations:
This seems to pretty much correct the problem.  Part of the problem is that
rotations are occuring at the firewall (model origin) which seems a little
un-natural inside the cockpit.  The rest of the problem is I am just learning
how this stuff works (I know I've been saying this for a couple months
now...but hey I'm slow :-)).
2002-03-13 04:58:08 +00:00
curt
d5af9e2a10 *** empty log message *** 2002-03-12 20:38:26 +00:00
curt
62ed7592e3 Fixes for Irix compatibility.
Fix several long standing irix compiler warnings.
2002-03-12 20:01:54 +00:00
david
d8a50ad49e Added a new 'delimiter' property to allow an alternative delimiter to
the comma, and fixed a constant that was causing CygWin compilation
problems.
2002-03-12 19:55:49 +00:00
david
0d3b0f27ba Add support for elapsed time and logging. 2002-03-12 16:30:27 +00:00
david
d23c674846 Bind a new property, /sim/time/elapsed-ms, giving the number of
milliseconds elapsed since the simulation began.
2002-03-12 16:29:32 +00:00
david
c22018db05 Added new logging module. 2002-03-12 16:29:00 +00:00
curt
9ff8951be6 *** empty log message *** 2002-03-12 05:37:55 +00:00
curt
c5f43ca688 Patches from Erik. 2002-03-11 22:55:52 +00:00
curt
914b5636e4 Removed some extra debugging output that wasn't supposed to be committed. 2002-03-11 22:55:01 +00:00
curt
3df76f9401 Oops, make sure we are generating an ocean tile if we can't load a terrain
tile.
Fixed a warning in the sound manager.
2002-03-11 22:50:23 +00:00
curt
9436f68f56 Cleaned up a couple compiler warnings. 2002-03-11 15:41:39 +00:00
david
60e0204fe8 Sound patch from Erik Hofman:
* Add new trigger types: raise, fall
* Add new trigger offset parameter
* Add new volume/pitch types: inv, abs, sqrt
* Add initial support for multiple events to intervere in a single sound
   (by using the same name, see the crank section of 172-sound.xml)
* Cached the volume/pitch type fucntions
   (No more if's inside the loops in update())
2002-03-10 19:31:30 +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
efe559ead4 First baby steps towards restructuring the view architecture. I've
created a new class, FGViewPoint (declared in viewer.hxx) that holds a
single position in FlightGear coordinates, and have used it to factor
a lot of the common code out of viewer_lookat.cxx and viewer_rph.cxx.

I don't know whether this new class will stay or not; it might just be
a temporary step, or it might end up taking over much of the current
viewer functionality.  It would be a bad idea to code against it right
now.
2002-03-06 16:03:33 +00:00
david
bdbd69effd If the (temporary) property /cockpit is true, set the near clipping
plane to 0.2; otherwise, use the old defaults.

This is a temporary step that will allow me to work on a 3D cockpit
without breaking current behaviour; the final approach will be to put
the 3D model in its own scene graph, with different clipping plane.
2002-03-06 16:01:19 +00:00
david
51b2aeb872 Temporarily rolled out last change, pending a restructuring of the
view infrastructure: vertical mouse panning wasn't working.
2002-03-06 15:54:25 +00:00
david
9ae5ad236e Patch from Andy Ross to allow virtual panel to tilt with mouse view:
OK, attached is a replacement for mouse.cxx that works the view using
the view-offset/tilt interface, rather than the (kinda odd) GuiQuat
stuff.  It's kind of a hack job, as I left the hooks to GuiQuat in in
other places for fear of breaking something.  Still, it removed more
code from mouse.cxx than it added, which has to count for some
elegance points.
2002-03-06 13:53:18 +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
david
07ba9777ed Temporarily reverted change to near/far clip plane. 2002-03-05 22:25:11 +00:00
david
bd3900a3ff Start of an internal 3-D view. If the property "/cockpit" (temporary
and soon to be renamed) is true, FlightGear will draw the 3-D model
even in internal view.  This makes sense right now only with the C310
model, since the others don't have any kind of interiors modeled and
all surfaces in all models are one-sided.

This isn't quite working yet -- the view code is very hard to
disentangle, and currently, if the view is not forward, roll and pitch
are applied incorrectly.  It looks interesting (modulo a messy model)
on the ground, in level flight, or looking straight ahead under any
other flight conditions.
2002-03-05 13:39:45 +00:00
david
0618c2cae8 Changed the near clip plane to 0.1f regardless. Previously, it jumped
to 10m after takeoff, but that doesn't really make sense any more,
especially if models are going to have interior views.  Is there any
real saving in pushing the near plane out anyway?
2002-03-05 13:35:48 +00:00
curt
be99e1549a Fixed a bug with view-offset specification from the command line. There
was some confusion between degrees and radians which would lead to a huge
goal_view_offset value.  The display would sit and spin for a *long* time
trying to wind it's way up to this large value.
2002-03-04 20:12:30 +00:00
curt
7d8af6fee2 Fix a compiler warning. 2002-03-04 19:59:50 +00:00
curt
519ac21fa8 Fix a visibility condition bug in 3d panel. 2002-03-04 19:59:22 +00:00
curt
d8b6786d20 This patch creates a sample manager next to the sound manager. The
difference between the two is this: A sample is file related and sound
is a authonomus entity. This means you can have several sounds pointing
to a single sample. In that case, just one sample is loaded into memory.
The advantage is you can play the same sample with different pitch or
volume, but with just one  sample loaded into memory.

To fully support this there is a new fucntion call:

    FGSimpleSound *sample = new FGSimpleSound("filename");
    mgr->add(sample, "name");

should be replaced by:

    FGSimpleSound *sample = mgr->add("name", "filename");

But the old behaviour is still supported with one minor change, sounds
with the same name aren't supported anymore.

Erik
2002-03-04 16:03:11 +00:00
curt
1f5096105b Fixed a couple compiler warnings. 2002-03-04 15:46:44 +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
andy
b9d1cad6f2 Export the gear compression to the property tree. 2002-03-04 07:57:43 +00:00
curt
536e95b63d Further modifications and restructuring of the scenery loading process. 2002-03-04 02:36:06 +00:00
david
f75e1b4d7b Add fake control-surface positions for 3D model animation. 2002-03-04 01:28:17 +00:00
david
b4eb6324aa Patch from Jim Wilson:
Property sort now leaves "." and ".." at top of subdirectory list in their
expected sequence.
2002-03-04 01:05:59 +00:00
david
e71873f4ad Patch from Jim Wilson:
These changes add to the "Add Waypoint" dialog so that you can see the entire
list in the pui dialog that you are adding to.  Also made some minor changes
so that the autopilot is now activated (toward first waypoint target heading)
when a waypoint is added.
2002-03-04 00:03:25 +00:00
curt
73b92a697d Further restructuring of the scenery loading code. 2002-03-03 23:20:55 +00:00
david
b9e866cfdd Added write-all parameter to save command. If set to true, the
command will save *all* properties, rather than just those marked as
archivable.  This feature was requested by Tony Peden to make it
easier to write documentation on the properties, but it should also be
useful for debugging.  There is currently no default binding for the
command with the write-all parameter set to true.
2002-03-03 22:48:40 +00:00
david
76b06f4707 Added final newline to prevent compiler warnings. 2002-03-03 22:47:06 +00:00
curt
938d006188 Updates to the scenery loading infrastructure to make it more flexible,
clean up some messiness, and lay more groundwork for runway lighting.
2002-03-03 20:29:31 +00:00
curt
9c42c9288a Added magnetos and starter to structure 2002-03-03 20:27:56 +00:00
david
d83fc1e9c8 Logging cleanups from Martin Dressler. 2002-03-03 00:38:56 +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
david
0296c04e32 For property-scale, apply the squared option before factor, etc. 2002-03-02 19:40:26 +00:00
david
00738f22f7 Added min/max parameters to clamp range of movement. These are
actually very powerful when combined with factor and offset -- for
example, on the C310 model the nose wheel can now retract completely
before the doors start closing.
2002-03-02 16:07:42 +00:00
tony
173251885b Fixed gear position property. 2002-03-01 20:56:15 +00:00
curt
7631c37f73 Setting up some more ground work for lighting. 2002-03-01 18:08:30 +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
curt
a6cb16ce36 This is the change where autopilot bindings are moved from fg_props.cxx to
newauto.cxx.  Basically everything is the same functionally except for a
changed in the initial altitude setting to 3000ft instead of meters (the panel
is in feet).
2002-03-01 16:54:50 +00:00
tony
34072bbc42 Changed -pct properties to -norm 2002-03-01 12:38:37 +00:00
andy
ab381e5c01 Added a property output feature to ControlMap that allows arbitrary binding
and scaling of control values to properties.  Also added a time interpolation
feature that replaces the hacked-in "retract-time" feature for the gear in
a more general way (applicable to flaps, too!).  Incompatibly breaks
the XML syntax; get new files!
2002-03-01 06:47:28 +00:00
curt
9bae80d94a Latest version of hitlist.cxx from Norman Vine:
- Addresses some ot the recent profiling results.
- Added a 'lazy evaluation' in IntersectBranch and inlined a couple
  of HEAVILY called functions.
2002-02-28 23:59:28 +00:00
tony
03b9ecf039 Copy normalized control surface positions to property tree 2002-02-28 13:32:40 +00:00
tony
1ab43c8048 Add support for normalized control surface positions and right and left ailerons 2002-02-28 13:31:56 +00:00
tony
a073e35c7c Add support for normalized control surface positions 2002-02-28 13:30:25 +00:00
curt
3966e02de0 A few of Norman's changes I managed to get in.
Added support for arrays of points (in addition to various forms of triangles)
2002-02-28 00:10:35 +00:00
david
a370cbbb6a A single transformation can now be applied to more than one object by
including multiple <object-name> entries.
2002-02-27 20:32:24 +00:00
curt
249fbedcae Make sure when setting autopilot heading via the menu that the current
heading value is presented between 0 and 360.
2002-02-27 18:05:17 +00:00
david
d514e8c255 Major sound-effect architectural reworking from Eric Hofman, allowing
individual aircraft to have different sounds (and cleaning up my code
a fair bit).  The most important user-visible change is the renaming
of the /sim/sound property to /sim/sound/audible.
2002-02-27 15:13:58 +00:00
david
123f8b083d Patch from Andy Ross to sort properties in browser. 2002-02-27 14:58:18 +00:00
david
b51fb81a1e - added an 'offset' parameter for animations (it's applied before
'factor')

- incorporated changes from Norman Vine to avoid expensive matrix
  operations
2002-02-27 12:46:38 +00:00
andy
5faea1c494 Wrong sense in the pilot acceleration coordinates (or maybe it's a panel
bug?  I'm not sure what points where anymore).
2002-02-27 08:24:37 +00:00
andy
df9069a224 Added a post-solver "initEngines()" call to return the engines to a sane
initial state.  No more starting up at cruise RPM.
2002-02-27 00:41:57 +00:00
andy
d3cca375dc Basically complete support for piston engine startup, including power loss
due to single-magneto operation.  Seems to work.
2002-02-27 00:18:57 +00:00
tony
51587dbe75 Trimming in turn now works 2002-02-26 22:28:41 +00:00
tony
998c2a9325 Output control positions to properties 2002-02-26 22:27:42 +00:00
david
8f1d2f7bc9 Added rotation animations, and a factor parameter for scaling. 2002-02-26 14:30:04 +00:00
david
fe7fbdf532 Started support for animations. Currently, the only supported type
(other than "none") is "spin", which must be tied to a property giving
a value in RPM.  This gets the DC-3 propellers turning.  The next type
will be "rotation", which will allow the flaps, elevators, ailerons,
and rudders to move (and even gear, eventually).  Later, I'll add
"shift" for sliding things around, and will figure something out for
blinking lights.
2002-02-26 00:10:06 +00:00
david
3d4bec275b If the model path specified ends with .xml, then read properties from
the XML file, including the path to the 3D file.

This change obsoletes the existing /sim/model/*-offset-deg and
/sim/model/*-offset-m properties in the main property tree, and
replaces them with /offsets/*-deg and /offsets/*-m in the model
property file.  The /path property in the model XML file is relative
to the XML file's location rather than FG_ROOT.
2002-02-25 20:07:34 +00:00
curt
1cc851d2b7 Moved JSBSim.hxx to src/FDM/JSBSim/ 2002-02-25 03:22:03 +00:00
curt
15fcd26c2f Removed JSBSim/tests 2002-02-25 00:07:05 +00:00
tony
eb5a3ceee5 Workaround for terrain altitude problem. Helps but doesn't work 100% 2002-02-24 21:56:38 +00:00
curt
3ca8643632 Removed orphaned 10520d engine modeling code. Thanks goes to Phil
Schubert for getting the ball rolling with engine modeling in
flightgear.  The existing engine modeling code is derived from
his initial efforts.
2002-02-24 21:41:02 +00:00
david
c923f27f16 Fixed crash when using 3D model other than the C172. 2002-02-24 21:14:38 +00:00
curt
f06a3e8289 Moved to tests subdirectory. 2002-02-24 21:01:11 +00:00
curt
1b6cde22dc Moved to JSBSim subdirectory. 2002-02-24 20:54:23 +00:00
curt
4cbfe4b724 Moved JSBSim.cxx and JSBSim.hxx into src/FDM/JSBSim subdirectory
(similar to how YASim is setup.)
2002-02-24 20:53:46 +00:00
david
d61ce30c12 Separated 3D model-handling code from main.cxx out into its own
subsystem, FGAircraftModel.
2002-02-23 21:20:00 +00:00
david
a9a30bfd80 Added an #ifdef for compiling without --with-new-environment. Thanks
to Tony Peden for the catch.
2002-02-23 04:50:47 +00:00
david
2e4f836a98 General cleanups to cut cross-dependencies and speed up compilation.
Added two new properties:

  /environment/temperature-sea-level-degc
  /environment/pressure-sea-level-inhg

These are now supported in FGEnvironment as well, though they always
have the same value for now.  They need to be hooked up to the FDMs.
2002-02-22 23:37:45 +00:00
david
eaf9fa7621 Added FGEnvironmentMgr to provide information on the environment in
different locations, and hitched it into FGGlobals.  FGEnvironmentMgr
has taken over as the subsystem, while FGEnvironment is simple the
information that it returns.  I've removed current_environment
completely -- everything now uses properties or goes through
FGGlobals.  FGGlobals itself has a couple of useful methods:

  const FGEnvironment * get_environment ();
  const FGEnvironment * get_environment (double lat, double lon, double alt);

The first one returns the environment data for the plane's current
position, while the second returns the environment data for any
arbitrary location.  Currently, they both return the same information,
but that will change soon.
2002-02-22 22:51:34 +00:00
curt
0a61c0da99 Fix a big where the initial ground elevation reported could be bogus
(initialization order problem.)
2002-02-22 20:20:23 +00:00
tony
6c90295655 Adds flap cmd and pos to output 2002-02-22 13:27:19 +00:00
tony
ee9a81fd56 Added parameter for abs value of elevator, rudder, and aileron positions 2002-02-22 13:26:31 +00:00
david
5607753935 Corrected typo that was hiding winds from FDM's unless configured with
--with-new-environment.
2002-02-20 22:58:42 +00:00
curt
1ea557f249 Added Tony's function to set position on a glide slope. 2002-02-20 16:56:44 +00:00
andy
2f00a7970c Minor mixup. Engines that are off have a manifold pressure equal to
ambient, not to _rho0, which is the air density of the "calibration
environment" (typically sea level).
2002-02-20 07:15:12 +00:00
andy
764eb2a2e7 Automatically generate "contact" points for collision detection. Implemented
as extra (and invisible) gear objects.
2002-02-20 07:12:27 +00:00
andy
6b10d8b128 Scaling "idle" MP to 6 inches or so is all well and good, but not if
the engine continues to develop 20% power.  Rescale the output power
accordingly, so idling aircraft stay put.
2002-02-20 07:10:58 +00:00
andy
3f35de9507 Forgot to include the wind when computing airspeed. Big oops. 2002-02-20 07:09:21 +00:00
andy
4edfa14137 Support a "skid" property for non-rolling gear objects like tail skids. 2002-02-20 07:08:33 +00:00
david
ad79ee4897 Added minimal support for magnetos, so that engines can be shut off.
The starter isn't working yet, so the engine just springs to life.
2002-02-20 04:27:22 +00:00
david
b4a9d76215 Fixed runway-altitude problem that prevented starts at airports higher
than sea-level.
2002-02-20 00:20:13 +00:00
david
a285ff5ea4 Added a new 'squared' subproperty for axis bindings. 2002-02-19 23:54:47 +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
david
254de7695d Further tweaks for the new environment subsystem. 2002-02-19 16:25:38 +00:00
david
ee3500a0a4 Remove obsolete FGWeather subsystem. 2002-02-19 15:19:21 +00:00
david
71f120e3be Initial take of new environment subsystem. Configure with
--use-new-environment to active it.
2002-02-19 15:16:08 +00:00
david
ac20cb7768 Initial take of new environment subsystem. Configure with
--use-new-environment to active it.
2002-02-19 14:21:19 +00:00
curt
aa65d0c3db Minor, miscellaneous stuff ... 2002-02-19 04:34:18 +00:00
curt
b8fc42d824 Add support for multiple panel fonts (specifically an LED font.) 2002-02-19 03:42:16 +00:00
david
3b870192f4 First steps in a weather reorganization. Note especially that
properties have been renamed from wind-(north|east|down)-fps to
wind-from-(north|east|down)-fps, and the FDMs modified appropriately.
No other changes should be visible unless FG_OLD_WEATHER is defined.
2002-02-19 01:26:44 +00:00
david
e90cbeacc3 Corrected wind, so that properties give the FROM direction for all
FDMs, and the --wind option takes the direction *from* which the wind
is blowing.
2002-02-18 19:33:18 +00:00
david
6c978b02f8 Patches from Tony Peden:
Attached are patches for adding the command line options to set initial
glideslope and climb rate. This was really easy to do as all the pieces
were in place.  It works well with JSBSim because the trimming routine
finds the right throttle and elevator settings. It should work with
LaRCsim as well, but it has no trimming routine so there will be some
dynamics at startup.  I don't know what YASim will do.
2002-02-18 19:18:51 +00:00
david
93c69c4bc3 Changes from Tony Peden to fix reinit crashes (and eliminate the force
altitude function).
2002-02-17 21:05:27 +00:00
david
d1208f15b8 Latest JSBSim changes. 2002-02-17 21:04:44 +00:00
curt
dc85f0c634 Be more robust when FlightGear changes it's mind about the local ground
elevation.
2002-02-16 17:38:29 +00:00
curt
4f67824f09 - Removed redundant FG*:: qualifications from class members
- Fixed comparisons between signed and unsigned ints
2002-02-15 22:00:49 +00:00
curt
4e334bcc5c Fixed description of the --time-offset option. 2002-02-14 03:57:22 +00:00
david
7a3e749284 JSBSim fix for FreeBSD. 2002-02-13 23:57:49 +00:00
david
ecccc91064 Corrected typo ("Celsius" rather than "Celcius") and added to cast to
avoid a compiler warning.
2002-02-13 23:57:31 +00:00
david
a0ec3ccc43 Ensure that initial engine settings are copied over. 2002-02-13 20:51:57 +00:00
curt
55387fd7ea This is a three line fix for some inconsistancies between the gui dialogs and
the panel controls for the autopilot.  The heading dialog would only show the
last setting you did through it, even if it was later tweaked with the bug on
the hsi.  The altitude dialog did a similar thing.  Now the values default to
the same that show on the panel displays.
2002-02-13 20:12:31 +00:00
curt
6191fae106 Reset "/sim/startup/time-offset-type" when specifying "--time-offset" in
case some other conflicting option has set this to something else.
2002-02-13 19:41:05 +00:00
curt
56db201e52 Cleaned up a few stray cout's 2002-02-13 18:17:04 +00:00
curt
9e6ee4b703 Fixed an if statement typo. 2002-02-13 17:43:01 +00:00
david
304ff21697 Latest JSBSim fixes, including Dave Luff's mixture improvements for
the JSBSim piston-engine model.
2002-02-13 14:35:10 +00:00
curt
465678ad07 Oops fixed one small mistake from the last fix. 2002-02-13 02:46:01 +00:00
curt
4cd24b3a67 Added a clock freeze option (/sim/freeze/clock). This can be specified
via the command line (--enable-clock-freeze / --disable-clock-freeze)
and can be toggled during a run.  However this property is not currently
bound to any menu or keystroke so you have to do it via the gui property
interface or externally via the web property browser or a script.
2002-02-13 02:37:44 +00:00
curt
ca3d6fac8f Added .hpp files to Makefile.am so they will be automatically included
in the tarball distributions.
2002-02-12 23:44:15 +00:00
curt
7237072f3a Make code a bit more explicit. 2002-02-12 22:27:57 +00:00
curt
9c370c2a9a Converted a cout to SG_LOG() 2002-02-12 16:36:25 +00:00
curt
82346dec63 Enable audio support for MSVC builds. 2002-02-12 16:12:52 +00:00
curt
dd8852dabe Better support for an alternate calendar time (i.e. if time/position/etc.
are being driven from an external data source.)

Akso found and fixed a bug in the simgear that caused the time to go goofy
temporarily while scenery was being loaded.
2002-02-11 23:33:20 +00:00
curt
527ada0e1d Add support for cygwin 2002-02-11 15:25:19 +00:00
curt
3a5ed2b997 Fixed a typo. 2002-02-11 15:24:08 +00:00
curt
2c862a330e Set default value for cur time override to 0 (no override) 2002-02-10 04:27:56 +00:00
curt
aad1de2ee5 Changes to match simgear changes which allow overriding the current
clock time.
2002-02-10 04:18:10 +00:00
curt
61d31ab822 Tweaks to 'native fdm' output. Time offset should now be properly supported
as well as visibility.
This means that if you are using this protocal to exchange data with a
visual channel, you should be able to change time and visibility on the master
and all the slaved visual channels will match it.
2002-02-08 23:03:54 +00:00
curt
de2b5f50e9 Fixes for the bug where LaRCsim gets no fuel and won't start,
and also a bug with the EGT being displayed at running values
when cranking without starting.
2002-02-08 17:27:38 +00:00
curt
fe5d1643cf Fix several off by one errors in hud_card.cxx 2002-02-08 17:19:21 +00:00
curt
c06aad31b3 Fix a potential mouse freeze. 2002-02-08 17:18:50 +00:00
david
827e11ff81 JSBSim change from Dave Luff:
Attached is a fix to add a short period of cranking time required
before the engine fires.  I've also added a little hack to limit the
torque applied by the starter motor when the rpm is less than 10 in
order to avoid the rpm overshooting idle in the first time step when
the prop is producing very little resistance due to the low rpm.
2002-02-08 13:36:46 +00:00
david
e1843e15d4 Patch from Melchior Franz:
- add indices to ambiguous property names
2002-02-08 13:31:22 +00:00
david
057885ed62 Modified to use a relative path for aircraft_dir rather than an
absolute one.  The path should be relative to $FG_ROOT.
2002-02-08 13:21:28 +00:00
curt
856534f0ca Fixed a typo ... 2002-02-08 01:08:24 +00:00
curt
ef82114c32 MSVC++ fixes 2002-02-08 00:07:53 +00:00
curt
3238528b35 FreeBSD fix. 2002-02-07 15:38:32 +00:00
curt
644668a932 Removed an unneeded #include 2002-02-06 23:56:17 +00:00
curt
7cd113fa2f Some follow up patches from Norman Vine. 2002-02-06 23:31:33 +00:00
david
fb5d5960a9 Patch from Melchior Franz:
- don't show redundant indices
2002-02-06 16:53:01 +00:00
david
7b01a143a1 Latest JSBSim changes from Tony Peden (should help slip/skid ball). 2002-02-06 16:52:34 +00:00
curt
d01cb2769a Cygwin fix. 2002-02-06 16:09:44 +00:00
david
628e4cc029 Patches from Melchior Franz:
- remove buffer with class scope
  - remove variable 'length' (isn't used anywhere)
  - make process_command private (it isn't used anywhere outside, and it
    shouldn't be)
2002-02-06 14:22:23 +00:00
david
c1c6a00856 Patches from Melchior Franz:
- define buffers where they are needed (two places)
  - comment out stale debug message (it doesn't buy anything, because the
    contents are output two lines below, anyway)
  - let every error message begin with "ERR ". This makes error messages
    less beautiful, but easier to recognize for scripts. Every internet
    protocol that outputs text, has such a tag for distinguishing regular
    output from error messages. (pop3 uses "-ERR ", smtp uses error codes,
    etc.)
2002-02-06 14:22:04 +00:00
david
670873198d Patches from Melchior Franz:
- fix html bug (<form> was closed by another <form>, instead of </form>)
  - remove useless <br>
  - fix a bug, that would have truncated an argument containing a '&'
  - extend the comment for urlEncode: cite the concerned RFC
2002-02-06 14:21:24 +00:00
curt
a29013fcda WIN32 fix. 2002-02-06 04:31:12 +00:00
david
c5d537394d Latest JSBSim changes, including a kludge from Tony to keep the
slip/skid ball still when the plane is stationary.
2002-02-06 04:07:12 +00:00
curt
7666c88e23 Latest version submitted by John W. 2002-02-06 01:03:54 +00:00
curt
5586d12e26 Fixes for default chase view values. 2002-02-05 23:02:16 +00:00
curt
abc6f642a2 Fix the not showing the last item bug. Also I cleaned up a
few things and made the scroll bar look right.
2002-02-05 22:32:29 +00:00
curt
548aa0d774 MSVC updates. 2002-02-05 22:28:31 +00:00
curt
08bbb83b8e A grab bag of tweaks and patches from Norman Vine.
- Better mingwin/cygwin support
- Various gui tweaks and code clean ups
- Initialization clean ups
- Hitlist/scenery tweaks
- other misc. stuff.
2002-02-05 20:54:08 +00:00
curt
9e8b00e2e0 Updated --help message. 2002-02-05 17:02:25 +00:00
curt
b1027c7b6a Various Irix compiler tweaks. 2002-02-05 15:57:46 +00:00
curt
f149bcba97 1. Tidies up h-FOV/v-FOV handling and makes window scale depend on
max(width, height) by default (easily changeable) rather than just width.
(src/GUI/gui.cxx, src/Main/main.cxx, src/Main/viewer.cxx, src/Main/viewer.hxx)
2002-02-05 05:51:11 +00:00
curt
e12f6757d5 1. Enable intro music under MS Windows. (main.cxx)
This works on a CygWin build, and probably works on non-Cygwin builds
  as well.

2. Enable FG to start even if audio is not available. (soundmgr.cxx)
   Avoids the FGSoundMgr constructor crashing; the rest of FG then runs
   OK without sound.
2002-02-05 05:04:02 +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
847b968816 Updates from "Jonathan Polley" <jwpolley@home.com> to convert from/to 'net'
format before reading/writing data from/to remote machine.  This allows
different endian machines to talk to each other.  Also added support for
passing time and time offset (warp) in the data packet.
2002-02-04 22:54:02 +00:00
curt
4453bec3de Print the usage message as well if a base package version mismatch is
detected.
2002-02-04 22:06:37 +00:00
curt
463f8bcb50 Patch from Melchior Franz to add support for indexed property names. 2002-02-04 21:10:36 +00:00
curt
4a40bb1151 Updates to allow weather system and atis to interact better. 2002-02-01 23:13:48 +00:00
david
d3db1e622b Latest JSBSim changes, including SGI patch. 2002-02-01 02:11:13 +00:00
curt
88170a7d36 Uncommented a few more inline accessors for the FDM. Note that this doesn't
mean that the various flight models are filling in the values with valid
data.
2002-01-31 20:18:19 +00:00
curt
c19a336935 Updates from John to pass additional data to the external OpenGC display. 2002-01-31 20:17:33 +00:00
curt
8998dbe0bb Additional autopilot tuning taking into consideration more data. 2002-01-31 00:03:41 +00:00
curt
d03de51817 Variable "i" was multiply defined in two for loops. 2002-01-30 22:42:06 +00:00
david
abbedea3bc Fixes from Cameron Moore:
I've attached 3 diffs against files in FlightGear to fix some printf
format strings.  The changes are pretty straight forward.  Let me know
if you have any questions.  (BTW, I'm using gcc 2.95.4)
2002-01-30 16:17:26 +00:00
david
9b11ee221e Property-tree-viewer improvements from Melchior Franz. 2002-01-30 15:44:13 +00:00
curt
9456906a0c Fixes to make telnet interface work more than 1x. 2002-01-28 22:48:29 +00:00
david
45807b3126 Latest update from JSBSim. 2002-01-24 15:51:26 +00:00
curt
05e8c4c542 Autopilot now honors tunable altitude hold parameters which are defined in
the aircraft-set.xml file.
2002-01-24 01:48:39 +00:00
curt
9c13fafe5a Small fix for Irix. 2002-01-23 22:11:51 +00:00
curt
e856a8ce0a Minor tweaks. 2002-01-22 15:39:51 +00:00
curt
c98c633b4d Added some sanity checking. 2002-01-22 15:38:02 +00:00
curt
9f85caa64c - reworked spacing/layout to be more readable
- added missing --bpp option
- added IO and Debug sections
- moved --units-* out of HUD section
2002-01-20 06:09:36 +00:00
curt
766b07d724 Add --enable/disable-fuel-freeze command line options. 2002-01-20 05:59:28 +00:00
curt
10d63827fb #ifdef out some test code. 2002-01-20 05:58:34 +00:00
curt
dea7284cc7 Restructured the 'freeze' property a bit. We now have
/sim/freeze/master      (implimented)
  /sim/freeze/fuel        (implimented)
  /sim/freeze/position    (not implimented)
  /sim/freeze/time-of-day (not implimented)

/sim/freeze/master is bound to the 'p' key via keyboard.xml, however,
/sim/freeze/fuel is not bound to anything at the moment so you must
change it via the external property interface, or specify an initial
value on the command line.
2002-01-20 03:52:36 +00:00
david
4e0ab72766 Added the ability to tilt the view as well as rotate it; the
properties /sim/view/view-tilt-deg and /sim/view/goal-view-tilt-deg
control the tilt.  There are (temporarily) keyboard bindings in the
base package for experimentation: Ctrl-O to tilt the view down, and
Ctrl-P to tilt the view up.
2002-01-19 23:38:24 +00:00
david
5cb3d22494 Add infrastructure in preparation for tilting the view. 2002-01-19 23:01:01 +00:00
david
88cb2d13f0 Latest JSBSim changes. 2002-01-19 21:50:31 +00:00
david
451ebabe95 Fix use of properties for fuel-tank levels. 2002-01-19 18:26:30 +00:00
david
47772b9853 Return a positive shortage when there is still fuel in the tank;
otherwise, the logic in FGEngine::ConsumeFuel breaks down and the
engine is starved when *any* feed tank is empty, rather than when all
feed tanks are empty.
2002-01-19 18:25:52 +00:00
david
2008529299 - fixed fuel-need calculations
- stop engine when no fuel is available
2002-01-19 18:24:02 +00:00
david
80b4567d54 Removed FGEngInterface and FGGearInterface after consultation with
FDM people.  FlightGear now supports an unlimited number of fuel
tanks.  Also added correct fuel-flow reporting for piston engines, and
tracked new features in SimGear property support.
2002-01-19 05:34:03 +00:00
david
eedf9f9671 Latest JSBSim changes, including some gear tweaking from Jon and some
fuel-reporting improvements for piston engines.
2002-01-19 05:32:28 +00:00
curt
4be27ce2bf Misc tweaks. 2002-01-19 00:31:27 +00:00
curt
65701b43dc Tweaks to sound levels from Erik Hofman. 2002-01-18 22:38:47 +00:00
curt
28d8191dae A couple minor MSVC tweaks contributed by Jonathan Polley 2002-01-17 00:03:02 +00:00
curt
e75f6a8f01 Changes to support optional screen snap shot httpd server. 2002-01-16 23:02:52 +00:00
david
1779e8b8bd Patches from Cameron Moore to fix setting cloud altitude from
properties or the command line.
2002-01-16 16:56:49 +00:00
david
a0cabcd2af Removed some temporary debug statements. 2002-01-16 16:48:27 +00:00
curt
6a0bc55b7d I prefer frozen vs. paused for some odd reason. 2002-01-15 23:39:21 +00:00
david
80130682fb - changed mixture cutoff from 50% to 30%, to allow for borderline
leaning at high altitude

- changed to report correct manifold pressure for altitude when engine
  is running
2002-01-14 20:44:19 +00:00
curt
ea327e59b2 Removed FGMatrix.* because it is no longer used by JSBSim. 2002-01-14 18:33:06 +00:00
david
cf7f829130 Added ability to set engine RPM from FlightGear. 2002-01-14 14:23:53 +00:00
david
1d35fab813 Changes to keep the various autopilot properties from stepping on each
other -- it is now possible to set properties at startup (such as an
autopilot altitude).  The only user-visible change, other than the
fact that the properties work as they are supposed to, is that the
heading bug no longer starts at a random value.
2002-01-14 03:14:42 +00:00
curt
1fd3d5aa48 Removed old remnants of plib-1.2.x support. We haven't officially supported
this older version of plib in some time, but there were bits of code remaining
that was (or could potentially) cause confusion.
2002-01-11 22:16:05 +00:00
david
bc13e2f213 Change from Norman Vine to avoid breaking G++ 2.95. 2002-01-11 17:55:26 +00:00
david
73f5eec1b7 ANSI C++ fixes, to allow compilation with g++ 3.x. 2002-01-10 12:52:39 +00:00
david
96665adcce Corrected some typos for 3DFX support. 2002-01-06 18:36:34 +00:00
david
f29978fb42 Added fullscreen to globals, and fixed compile bug for 3DFX cards. 2002-01-06 16:51:31 +00:00
david
3cbc6f21c7 Renamed fgParseOptions(int,string) to fgParseArgs, and modified the
function to allow property files as non-option parameters after the
options have finished (and added "--" to terminate options).  It's now
possible to do something like

  fgfs denver-am.fgd

or even

  fgfs at-lax.fgd in-c310.fgd around-sunset.fgd

This works the same way as the --config option, but will be friendlier
for GUIs, where start-up situation files can now be associated easily
with FlightGear.
2002-01-04 20:58:48 +00:00
david
3ddf66206a Don't generate FPEs for Linux for now, until PPE model loading is
fixed.  Developers can uncomment lines to get FPEs for debugging.
2002-01-04 20:56:28 +00:00
david
e09ea2243f Removed stale include of options.hxx. 2002-01-04 20:55:36 +00:00
david
ecddbcbb48 JSBSim update:
Removed debugging message about windmilling.
2002-01-03 21:42:44 +00:00
david
117bf73dea JSBSim update. 2002-01-03 21:04:49 +00:00
david
21931e320c Update from JSBSim
Changed _set_Accels_Pilot_Body to use FGAuxiliary::GetNpilot instead
of FGAuxiliary::GetPilotAccel.  It looks like a similar change was
started but never finished, and there are artifacts still lingering.
With this change, the slip/skid ball now works reasonably on the C172
when in motion, but not at rest (that will have to wait for fixes to
the gear code).
2002-01-03 17:42:04 +00:00
curt
40c45ee57e Added help text for the --aircraft=name option. 2002-01-02 16:19:39 +00:00
david
35056ddaea Removed unused alpha variable; more code cleanups and documentation. 2001-12-30 03:04:39 +00:00
david
a2be88ad74 Initialization fixes. 2001-12-29 13:19:09 +00:00
david
d4aea05246 Substantial rewrite of FGNewMat, the material class. Most of the
material-specific logic is now removed from the material library and
encapsulated in the material class itself, and materials are loaded
from $FG_ROOT/materials.xml rather than $FG_ROOT/materials.  This also
removes a nasty bug in the old material-loading code that caused a
floating-point exception.
2001-12-28 23:33:32 +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
3b70eae4c9 Set default elevator trim to 0 to avoid FPEs and improve transparency
(per-aircraft default trim can be set in the XML config files).
2001-12-27 22:34:32 +00:00
david
36f00b1c12 Updated to latest JSBSim, including preliminary support for
windmilling propellers.
2001-12-25 00:02:25 +00:00
david
73a898e346 Removing yet another auto-generated file. 2001-12-24 22:12:43 +00:00
david
be7cc1058a Patch from Andy to fix propellers on DC-3. 2001-12-24 20:34:53 +00:00
david
2db3a9a93c Renamed static function from sgdPointInTriangle to pointInTriangle to
avoid conflict with most recent PLIB CVS.
2001-12-24 18:56:15 +00:00
david
5d8a04291c Latest JSBSim changes. 2001-12-24 13:54:55 +00:00
david
f0e6716953 Latest YASim changes. 2001-12-24 13:54:03 +00:00
david
2b34388ea6 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 23:18:28 +00:00
david
22c472bb17 Corrected typo in macro name, and reverse flags -- FPEs really are
being reported now.
2001-12-22 23:16:43 +00:00
david
c24f4a0539 Enable floating-point exceptions for Linux/x86 systems. See the
beginning of main() for the exceptions that can be enabled (only
divide-by-zero is enabled by default, but you can uncomment any ones
you want); eventually, FlightGear should run cleanly with all FPEs
enabled.
2001-12-22 19:10:37 +00:00
curt
f5c9008823 Added FGScript.{cpp,h} 2001-12-22 17:40:26 +00:00
curt
3f1e9cdc37 Initial revision. 2001-12-22 17:39:21 +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
david
b9dc522882 Latest JSBSim changes. 2001-12-21 19:20:21 +00:00
curt
916045f45e Added _wheel_spin[] variable for simple wheel spin rate model used for
audio effects only.
2001-12-21 05:18:47 +00:00
curt
71bf754fb8 Added a really simple wheel spin model for audio effect purposes only. This
has absolutely no bearing on actual wheel performance and has nothing to do
with the fdm.  It is just a simplistic wheel spin velocity model used to
avoid subsequent squealing when a tire is bouncing, or touches down right after lifting off.  If at some point tire spin is modeled by an FDM we could
transition to using real data.
2001-12-21 04:53:37 +00:00
curt
b75998736f Fix for MSVC. 2001-12-17 21:04:33 +00:00
curt
85349e313e Fixed hardcode compass texture path to correspond with base package reorg. 2001-12-17 20:34:37 +00:00
curt
75037e081b The Irix compiler was reporting a "can't jump out of region" error with the
current code.  This tweak seems to fix it.
2001-12-17 17:41:44 +00:00
curt
ff0a5bd9ea Make the Irix compiler happy. 2001-12-17 17:41:02 +00:00
david
a4ba46a270 Latest JSBSim changes, mostly to support yaw and roll trim. 2001-12-17 15:36:20 +00:00
david
0395a446f7 Latest JSBSim changes to support yaw and roll trim. 2001-12-17 01:42:39 +00:00
david
0b792ab689 Added rudder trim and aileron trim to FGControls, and bound them to
properties analogous to elevator trim.
2001-12-17 01:42:11 +00:00
david
7abad40151 Fixed to look for easyxml.hxx in the simgear/xml rather than simgear/. 2001-12-16 22:00:35 +00:00
david
0505201362 Latest JSBSim changes -- EGT fixes. 2001-12-15 13:53:53 +00:00
curt
0b5594d50d The latest updates from John Wojnaroski. 2001-12-15 03:30:45 +00:00
david
26c6f3f407 Latest JSBSim changes. 2001-12-14 23:57:05 +00:00
david
fbccfab5ff Latest JSBSim changes. 2001-12-14 03:35:41 +00:00
david
5c3f4e999d Latest JSBSim changes. 2001-12-13 04:48:34 +00:00
curt
37c2b6002c Rename FGInterface::_updatePosition() ->
FGInterface::_updateGeocentricPosition() for clarity.  Also added an
  FGInterface::_updateGeodeticPosition() since it is useful.
A few clean ups to native_fdm.cxx and raw_fdm.hxx.
2001-12-12 05:18:46 +00:00
david
4f5d70144a -Removed .cvsignore from itself, since .cvsignore is now in the CVS 2001-12-12 04:15:23 +00:00
david
18b1b4f7af Added --trace-read=<property> and --trace-write=<property> options.
These will log trace messages whenever a specific property value is
read or written through the property manager.  They do not cause
FlightGear to poll bound values, so if a class variable that is bound
is changed directly, no trace message will be displayed.

These options are also useful in conjunction with a debugger.
--trace-read will cause the private SimGear SGPropertyNode::trace_read
method to be invoked, and --trace-write will cause the private SimGear
SGPropertyNode::trace_write method to be invoked; in a debugger
session, a user can set breakpoints on these methods then get a
backtrace to see what specific points in the code are reading or
writing properties.
2001-12-12 03:49:48 +00:00
david
2f66d01298 Fixed typo preventing loading alternative aircraft from the
/sim/aircraft property in preferences.xml.
2001-12-12 03:46:37 +00:00
curt
f82b717c8b Norman's changes to display a scrolling "PAUSE" message when the simulation
is paused.
2001-12-11 22:40:14 +00:00
david
d45e1d0ac6 Added config.h, which is autogenerated. 2001-12-11 22:26:51 +00:00
david
519224d9fc Modified initial property parsing order to be more intuitive. It now
works like this:

1. Parse preferences.xml, which will usually specify a default
aircraft using the /sim/aircraft property.

2. If /sim/aircraft is specified and not empty, parse the properties
in $FG_ROOT/Aircraft/{/sim/aircraft}-set.xml to set up a default
aircraft.

3. During command-line parsing, whenever the --aircraft option appears
set /sim/aircraft appropriately and parse the properties in
$FG_ROOT/Aircraft/{/sim/aircraft}-set.xml.  Any --config, --prop, or
--aircraft options afterwards will take precedence.
2001-12-11 19:27:37 +00:00
curt
9f73588b31 YASim-0.1.3 updates. 2001-12-10 23:13:54 +00:00
curt
ec346bf0ef Tweak #includes to use double quotes for local files not <> 2001-12-10 23:00:27 +00:00
curt
de1c8ef06e Change to WeatherCM so that it doesn't triger an floating point exception
when queried for too low (i.e. < -1000 meters) altitudes. So now there's
now valid weather information for altitudes below -500 meters sea level.
2001-12-10 22:39:05 +00:00
curt
07c61a2243 Minor property name change to track changes in xml panels. 2001-12-10 22:06:57 +00:00
curt
5c0fa275d7 Tweaks to how we load aircraft defaults and definition file to make things
more intuitive.  We switch to an include in the preferences.xml to include
the default model, and then if the user specifies --aircraft=, that is
expanded immediately so portions can be overwritten by subsequent command
line options.
2001-12-10 16:29:20 +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
810aee6de8 MSVC patches from Christian Mayer. 2001-12-09 05:20:13 +00:00
curt
470292a434 Small tweaks to initialization sequence and logic so we can default to
a top level aircraft def file (c172-set.xml)

preferences.xml or --aircraft= or any other property setting mechanism can
be used to set the property "/sim/aircraft".  After all options and config
files are parsed, the contents of /sim/aircraft is expanded into a *-set.xml
file and loaded.
2001-12-09 05:19:50 +00:00
curt
9d54df6d87 Revert to pre-wind-sticking ground reaction forces until they can be debugged. 2001-12-09 05:14:48 +00:00
curt
dcf937e39f From Christian Mayer fixing some array allocation/overrun errors. 2001-12-09 04:29:27 +00:00
curt
09d1e59156 Cosmetic changes to #include order. 2001-12-09 04:28:51 +00:00
curt
e27a88756c Changes from Norman Vine that 'almost' get 'reset' and 'goto apt' working.
Note there is still a problem when doing a 'reset' after doing
a 'goto'.   Curt says: I also see that doing two subsequent reset's on a
JSBSim model results in a segfault in a deconstructor deep inside JSBSim.
2001-12-07 22:38:19 +00:00
curt
48260480b3 Updated to YASim-0.1.2 2001-12-07 20:00:59 +00:00
curt
01d13f797a Tweak how tire squeal volume is calculated ... probably needs some more work. 2001-12-07 17:37:51 +00:00
curt
75478ea4f7 Added --aircraft= option back in, but now it refers to a top level aircraft
config file that pulls in the proper fdm, aero model, panel, 3d model, etc.
for the aircraft.
2001-12-07 17:37:15 +00:00
curt
6b2e17493e Syncing with most recent JSBSim. 2001-12-07 17:10:17 +00:00
curt
53fdf0c25c Fixed a problem with initial view offset (from command line) getting tromped
on.  This is an important feature for multi-display support.
2001-12-06 23:28:14 +00:00
curt
d8e7b7b9ff Changed --aircraft= to --aero= to make way for a high level aircraft definition
that will tie together fdm, aero model, 3d model, sounds, etc. into one
top level config file.
2001-12-06 23:10:50 +00:00
curt
f716539390 Change default search directory for YASim aircraft to $FG_ROOT/Aircraft-yasim
with corresponding changes to the base tree cvs.
2001-12-06 20:16:03 +00:00
curt
e08d4359cd Tweaks to fix directory change. 2001-12-06 18:16:22 +00:00
curt
4c422bbe6d Updated to YASim-0.1.1 2001-12-06 18:13:24 +00:00
curt
6d077f4127 Fix propellor spelling. 2001-12-05 16:05:26 +00:00
curt
06c4076cf5 Fixed a typo in --opengc parsing. 2001-12-05 04:54:54 +00:00
curt
a1ab836daf Sync with latest JSBSim. 2001-12-05 03:10:20 +00:00
curt
238df6975a Synced with Jon's table parsing fixes. 2001-12-04 13:59:38 +00:00
curt
cec011503c - added gear up and gear down sounds
- changed all sound file properties to end in /path for pathname, and
  added /sound and /pitch (with current values as defaults)
- don't activate the stall horn if CAS is less than 30kt (this needs
  to be refined somehow)
- declarations to support changes to cxx file
2001-12-03 22:48:49 +00:00
curt
5513830175 Initial revision. 2001-12-03 22:36:42 +00:00
curt
408742c48c Syncing with latest JSBSim code with retractable landing gear support. 2001-12-03 22:24:40 +00:00
curt
b3d2d2cd00 Throttle runs all throttles simultaneously by default. 2001-12-03 22:17:35 +00:00
curt
58aa15ece9 JSBSim sync. 2001-12-03 22:17:03 +00:00
curt
0d2d153914 Integrating YASim into the build system. 2001-12-01 06:22:49 +00:00
curt
5b84ae51a5 Initial revision of Andy Ross's YASim code. This is (Y)et (A)nother Flight
Dynamics (Sim)ulator.  Basically, this is a rough, first cut of a "different
take" on FDM design.  It's intended to be very simple to use,
producing reasonable results for aircraft of all sorts and sizes,
while maintaining simulation plausibility even in odd flight
conditions like spins and aerobatics.  It's at the point now where one
can actually fly the planes around.
2001-12-01 06:22:24 +00:00
curt
bc391fb54e Sync with latest JSBSim. 2001-12-01 04:03:57 +00:00
curt
a69e2cc976 Added Network/opengc.cxx Network/opengc.hxx Network/opengc_data.hxx
This is John Wojnaroski's initial implimentation of an interface to the
OpenGC glass cockpit displays.
2001-11-30 23:56:28 +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
4b4394774b Tweaks to pitch/volume of a couple sound effects. 2001-11-30 17:55:28 +00:00
curt
71a562b695 Sync with latest JSBSim changes. 2001-11-30 17:49:37 +00:00
curt
c167c60de9 Don't use turbulence model by default because it is still under development. 2001-11-27 03:32:24 +00:00
curt
ffe498f33f Initial revision. 2001-11-25 00:32:58 +00:00
curt
ac50500e80 Sync with latest JSBSim CVS. 2001-11-24 22:13:04 +00:00
curt
d19ef5cd99 Synced with latest JSBSim cvs. 2001-11-20 22:34:24 +00:00
curt
3d1e802b84 Format tweaks. 2001-11-20 22:03:58 +00:00
curt
bcca6a88a4 - changed MAX_GEAR to an enum to avoid upsetting non-conformant C++
compilers
2001-11-20 22:03:40 +00:00
curt
804c9adbb0 - added extensive documentation comments 2001-11-20 22:03:29 +00:00
curt
7a88cd31eb - added /sim/logging/classes and /sim/logging/priority properties
to control logging
- /sim/logging/classes takes a value like "terrain|astro", where the
  names are the macros from simgear/debug/debug_types.h with the
  initial "SG_" removed and converted to lower case; for none, use
  "none"
- /sim/logging/priority takes a single name like "warn", where the
  name is a macro from simgear/debug/debug_types.h with the initial
  "SG_" removed and converted to lower case
2001-11-20 22:03:17 +00:00
curt
2bc1e7d365 a couple of minor modifications, including hardwiring temperature again
(the global temperature property returns that at the aircrafts altitude) and
adding "information" to the airport name to avoid having to store it
in the default.atis file 1200 odd times.
2001-11-20 21:23:42 +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
36de63366b I just nailed an especially annoying tile cache scheduling bug.
What was happening was that we screwed up and scheduled tiles for
(lon,lon) rather than (lon,lat) ... note the typo.  This generated
bogus tile id's which the system happily accepted, put into the tile
cache system, and attempted to load.  The problem was that these bogus
tile id's were negative where as all valid tile id's should be >= 0.

These negative tile id's up the logic used to remove tiles from the
cache.  When identifying tiles for removal, we look for the furthest
tile away from us by starting out the furthest id at -1 and if we find
something further, we update the furthest tile id.  Then at the end we
check if the furthest tile id >= 0 to see if we found anything we
could remove.  However, the furthest tile id was these bogus tiles
with negative tile id's so the system always assumed there was nothing
appropriate for removal.  This made it impossible to ever remove a
tile from the cache meaning it quickly filled up and no more tiles
could be loaded.

I fixed the one instance of scheduling tiles for a bogus location, and
added a sanity check so if it ever happens again we'll bomb with an
appropriate error message.
2001-11-12 22:05:47 +00:00
curt
a3bce2f219 Updated mouse gui tweaks and Jim's nifty new external view controls. 2001-11-12 20:57:08 +00:00
curt
d227398525 Norman Vine's mouse cursor tweaks fixes. 2001-11-12 19:37:23 +00:00
curt
2b28f7c41b Updated by Geoff McLane. 2001-11-12 18:13:17 +00:00
curt
6bc2f59572 Sync with latest JSBSim CVS 2001-11-12 16:06:29 +00:00
curt
daabe407aa Add the "null" flight model which is a better name for what the "external"
flightmodel used to be called.
Fixed wind (it was 180 degrees off).
2001-11-12 04:49:06 +00:00
curt
fee8c33799 Sync with latest JSBSim 2001-11-09 04:38:53 +00:00
curt
8ff6965f98 Add #include <math.h> for fabs() 2001-11-08 16:52:51 +00:00
curt
b85be56a55 Changes to support Dave Luff's initial ATC/ATIS module. 2001-11-07 17:55:28 +00:00
curt
20f0d3f83e Initial revision of ATIS module contributed by Dave Luff. 2001-11-07 17:55:04 +00:00
curt
e19d456716 Tweaks to get startup time, relative sun angle, sky colors, etc. to be
properly initialized.
2001-11-07 04:55:57 +00:00
curt
5fe0f04702 Updates to JSBSim and FDM interface. 2001-11-06 22:33:05 +00:00
curt
bc20e9b490 - added support for new sounds: flaps, wheel rumble, squeal
- cache property nodes to avoid hash lookups
2001-11-06 22:32:26 +00:00
curt
19a8dacdb4 - removed references to FGSoundMgr 2001-11-06 22:32:14 +00:00
curt
fe22475260 Alasdair Campbell's ILS patch allowing us to fly both ILS approaches if both
ends of the same runway share the same frequency.  This is probably the best
we can do until we impliment some sort of operator interface to manually set
which end is active (like is done in real life.)
2001-10-30 17:45:11 +00:00
curt
dff16b3f8d Fix from Dave to get JSBSim engine startups working again. 2001-10-30 16:14:51 +00:00
curt
b82a5ad062 Latest updates from the JSBSim project. 2001-10-30 02:51:13 +00:00
curt
7172d31e71 Additional changes including updates to JSBSim to try to get interface and
initial trimming to work.
2001-10-29 19:00:24 +00:00
curt
5f4f82dbe7 Additional startup work and error checking. 2001-10-29 18:38:21 +00:00
curt
c74c2f224f Update JSBSim files to latest JSBSim CVS. 2001-10-29 18:25:19 +00:00
curt
c3ec11ca13 Fix a screwup I introduced with radians to degree conversion in passing data
between JSBSim and FlightGear.
2001-10-29 17:28:00 +00:00
curt
971f2383ff update based on property system rather than cur_fdm_state because cur_fdm_state
may not always hold valid information.
2001-10-29 04:41:30 +00:00
curt
15f02e9dd6 Sound manager changes from David Megginson. 2001-10-29 04:40:43 +00:00
curt
d0df197e1d Temporarily added some debugging output. 2001-10-29 04:40:19 +00:00
curt
5cf725035f Sound effect changes from David Megginson. 2001-10-29 04:39:54 +00:00
curt
2a00ebf9b4 Added sound effect changes from David Megginson. 2001-10-29 04:39:05 +00:00
curt
c8f21829d4 Attempting to simplify JSBSim initialization. 2001-10-29 04:38:25 +00:00
curt
4b5bcd0f0a Cosmetic changes. 2001-10-29 04:37:24 +00:00
curt
250bab5089 Initial revision of fg_fx.[ch]xx 2001-10-28 16:27:16 +00:00
curt
d41bb00d6e Fix return type on get_num_engines() 2001-10-28 16:19:54 +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
d7ec45ca3b Various tweaks for support of external flight models running as seperate
processes.
2001-10-26 05:42:08 +00:00
curt
035b9dabb1 Fix to check for nonexistant nodename requests. 2001-10-26 05:41:39 +00:00
curt
111f2b7b86 Addition Irix tweaks. 2001-10-24 22:06:47 +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
fe8c751f1b Macintosh OSX changes. 2001-10-23 22:25:53 +00:00
curt
a5ee77406f Emergency memory leak fix. ***Hopefully*** these fixes will get applied
to JSBSim so they can become permanent.
2001-10-14 16:13:00 +00:00
curt
2fbab0d702 Various floating point / initial value bug fixes from Christian Mayer. 2001-10-11 22:07:45 +00:00
curt
2653a8dc7e Patch to fix wrong case crash. 2001-10-10 18:15:07 +00:00
curt
ca29586a45 Fixed a few spelling/grammer mistakes in the command line help output. 2001-10-10 17:55:29 +00:00
curt
3e968179c2 Patches from Dave Luffto pass the magneto and starter control movements
through the controls interface and the running and cranking flags through
the engine interface.  This has no current effect on LaRCsim (other than
to make the code neater) but is necessary to add engine startup to JSBSim
which is now underway.  I've also put in main.cxx which escaped getting
committed in the previous round of changes - adding this will add
the cranking sound to LaRCsim during engine startup.
2001-10-10 17:50:20 +00:00
curt
a264f99310 Updated with additional engine parameters. 2001-10-05 22:44:15 +00:00
curt
f02107a0cc Tweaks ... 2001-10-05 20:27:43 +00:00
curt
74fc1387a9 Begin wiring Dave Luff's engine model into JSBSim. 2001-10-05 20:27:33 +00:00
curt
07f5955f8c Many engine model tweaks, updates, and enhancements. 2001-10-05 20:27:01 +00:00
curt
cb0aa1baa1 Added panel jitter support dependent on cockpit forces (visual force feedback) 2001-10-05 20:26:21 +00:00
curt
ba10c133fc Syncing with the very latest JSBSim development code. 2001-10-05 20:19:59 +00:00
curt
2297c706e8 Initial revision. 2001-10-05 20:16:16 +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
646f93e618 Enclosed is the latest engine model update that supercedes the
one I sent yesterday.  I have re-zipped all four files so you can
neglect the last lot but only io360.cxx has changed if you've
already committed.  It's untested since I can't start the engine until
John has committed his update with separate properties.  Should
work fine though.
2001-09-19 22:58:29 +00:00
curt
c0f70c0d54 Initial supporting code for runway lighting (not yet working) 2001-09-19 22:30:41 +00:00
curt
f2e89407d2 For ADA fdm turn on hud for center channel. 2001-09-19 22:27:08 +00:00
curt
b991f8fd96 Turn hud off by default for ADA fdm. 2001-09-19 22:26:01 +00:00
curt
bb785797b9 b) FDM - ada.cxx, ada.hxx have been updated with the faux, daux and iaux arrays that you created in flight.hxx. In Flight.hxx I use the get_V_north_rel_ground() set of functions. Please do not comment them out. If you dont comment them, you dont have to forcibly return zero vale to get_Vx(),get_Vy() & get_Vz() in cockpit.cxx. 2001-09-19 22:25:22 +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
d96dd611b1 Tweaks. 2001-09-14 20:54:46 +00:00
curt
bfc56f9d17 More changes in support of UIUCModel. 2001-09-14 20:47:27 +00:00
curt
19e7e93787 /FDM/UIUCModel/uiuc_aircraft.h
Added variables necessary for new abilities.
/FDM/UIUCModel/uiuc_coefficients.cpp
/FDM/UIUCModel/uiuc_coefficients.h
/FDM/UIUCModel/uiuc_coef_lift.cpp
	Added CZfa.
/FDM/UIUCModel/uiuc_controlInput.cpp
	Added aileron and rudder inputs.
/FDM/UIUCModel/uiuc_engine.cpp
	Added throttle input.
/FDM/UIUCModel/uiuc_engine.h
/FDM/UIUCModel/uiuc_map_CL.cpp
/FDM/UIUCModel/uiuc_map_engine.cpp
/FDM/UIUCModel/uiuc_map_init.cpp
/FDM/UIUCModel/uiuc_menu.cpp
/FDM/UIUCModel/uiuc_wrapper.cpp
	Added a few new functions.
/FDM/UIUCModel/uiuc_wrapper.h
/FDM/UIUCModel/uiuc_map_controlSurface.cpp
/FDM/UIUCModel/uiuc_initializemaps.cpp
/FDM/UIUCModel/uiuc_initializemaps.h
/FDM/UIUCModel/uiuc_map_keyword.cpp
/FDM/UIUCModel/Makefile.am
/Main/Makefile.am

added files
/FDM/UIUCModel/uiuc_map_fog.cpp
	For the visibility ability.
/FDM/UIUCModel/uiuc_map_fog.h
/FDM/UIUCModel/uiuc_fog.cpp
/FDM/UIUCModel/uiuc_fog.h
2001-09-14 20:36:34 +00:00
curt
9385f607bc Initial revision. 2001-09-04 14:39:12 +00:00
curt
a691a3a3f6 Changes to better support arbitrary external flight models. 2001-09-04 14:38:15 +00:00
curt
a6ab6f0117 Fixed option help (Tony Peden). 2001-08-31 23:55:58 +00:00
curt
019b6d29fe Fixed [simple] terrain following altitude hold mode to work again. 2001-08-31 18:07:23 +00:00
curt
0f68fb3633 Initial revision. 2001-08-21 21:19:42 +00:00
curt
90471b6fad Added information on enabling the http server. 2001-08-21 21:19:26 +00:00
curt
c2e6992b5e Added httpd protocol so you can interface to a running copy of FlightGear
via a web browser, see README.IO for more details.
2001-08-21 21:13:55 +00:00
curt
b6520485ca Fix a segfault on exit. Introduces a small memory leak if the instrument
panel is reloaded, but *hopefully* David will fix this soon. ;-)
2001-08-16 16:06:55 +00:00
curt
0d76618950 Various tweaks for mingwin32. 2001-08-14 22:18:19 +00:00
curt
59ccf90a60 Misc tweaks. 2001-08-14 19:47:40 +00:00
curt
db7b3ec096 - some code rearrangement for readability and maintainability
- commented out some destructor code that's causing crashes
  (temporarily creates a minor memory leak, triggered only when
  reloading the panel)
2001-08-10 05:17:40 +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
1f4788fbb5 - declared FGCondition class and subclasses
- declared FGConditional abstract base class
- declared fgReadCondition global function
2001-08-03 00:19:59 +00:00
curt
4de352cbe8 - added FGCondition class and subclasses
- implemented FGConditional abstract base class
- added fgReadCondition global function
2001-08-03 00:19:41 +00:00
curt
cd6683bdb5 - FGBinding now extends FGConditional
- switched to a vector of binding pointers, to avoid copying
- removed FGBinding copy constructor declaration
2001-08-03 00:19:19 +00:00
curt
dd440e7829 - added support for conditions in FGBinding
- switched to a vector of binding pointers, to avoid copying
- removed FGBinding copy constructor implementation
2001-08-03 00:19:03 +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
17c781a870 Remove cached intersection code so that we can support intersecting with
dynamic objects.
2001-07-31 19:54:29 +00:00
curt
57b4283383 MSVC tweak. 2001-07-30 22:54:20 +00:00
curt
45904a45eb Various MSVC tweaks and warning fixes. 2001-07-30 22:53:53 +00:00
curt
89bc634cd6 initialize marker_xs. 2001-07-30 22:30:05 +00:00
curt
e7e67fd468 Minor fix for Irix. 2001-07-30 22:06:33 +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
4678a4db66 - added support for reporting SGPropertyNode::NONE type 2001-07-27 22:00:48 +00:00
curt
f725b12de5 - added optional min, max, and wrap parameters to property-adjust 2001-07-27 22:00:35 +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
6d1c383814 Added protocol to output out complete control positions. 2001-07-27 14:23:01 +00:00
curt
5796b95988 Updates. 2001-07-26 17:17:11 +00:00
curt
58c936cc4e - ensure that all throwables are caught
- use new sg_throwable::getFormattedMessage method
2001-07-24 23:51:57 +00:00
curt
ff91dbfd7b - catch sg_exception instead of sg_io_exception
- use guiErrorMessage
- added new properties /sim/view/pilot/x-offset-m,
  /sim/view/pilot/y-offset-m, and /sim/view/pilot/z-offset-m to
  control pilot-position offset from CG
2001-07-24 23:51:47 +00:00
curt
c6711fb877 - catch sg_exception instead of sg_io_exception
- use new sg_throwable::getFormattedMessage method
2001-07-24 23:51:36 +00:00
curt
ffd94e24a1 - removed some verbose output 2001-07-24 23:50:52 +00:00
curt
c5d7944b17 - added guiErrorMessage 2001-07-24 23:50:44 +00:00
curt
f636a6ce6d - added guiErrorMessage (sends both to log and dialog, if GUI active) 2001-07-24 23:50:34 +00:00
curt
ddbd85aa7b - catch sg_exception instead of sg_io_exception
- use guiErrorMessage
2001-07-24 23:50:08 +00:00
curt
43cf7b07fd Tweaks. 2001-07-24 01:02:59 +00:00
curt
d76c92df5e Initial revision. 2001-07-23 22:17:47 +00:00
curt
a40a60a213 Multi-engine throttle fixes. 2001-07-23 20:32:31 +00:00
curt
97067e62a2 Added recent ground effect modeling changes. 2001-07-23 20:31:59 +00:00
curt
450de25cc7 - added get_gear_down and set_gear_down (bool) 2001-07-23 20:31:40 +00:00
curt
cf73bc2365 - added property /controls/gear-down 2001-07-23 20:31:33 +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
6fdbbaf475 Initial revision. 2001-07-22 20:01:25 +00:00
curt
96b88e539f Move FGControls declaration to globals.hxx 2001-07-22 19:51:16 +00:00
curt
fe82a3d31f Make the tile loader more tolerant of situations where the cache is full,
but no entries qualify for removal.  It will keep trying to schedule the
tile(s) until an entry frees up.  Entries in the cache do not qualify for
removal if they are in the process of being loaded.
2001-07-20 22:25:12 +00:00
curt
20f50d349f CM:
I've updated the WeatherDatabase to be able to use only the n closest
stations. This can speed up the initalization dramatically.

To take a benefit from that you need:

- http://129.13.102.67/out/flight/current.txt.gz in
  FG_ROOT/weather/current.txt.gz
- --prop:/environment/weather/working-type=internet
- --prop:/environment/weather/max-stations=what_ever_you_want

The WeatherCM stuff now publishes its data in the property system.

    /environment/weather/wind-north-mps
    /environment/weather/wind-east-mps
    /environment/weather/wind-up-mps
    /environment/weather/temperature-K
    /environment/weather/air-pressure-Pa
    /environment/weather/vapor-pressure-Pa
    /environment/weather/air-density

are the new properties.
2001-07-19 22:10:14 +00:00
curt
1de5373ed9 - don't set computer sound volume -- that's up to the user 2001-07-19 04:55:58 +00:00
curt
4141c6f8bb - moved main to mainLoop, and added top-level main to catch any missed
exceptions; we'll make it smarter later
2001-07-19 04:54:53 +00:00
curt
5abff48c8a - catch exception from readProperties and exit 2001-07-19 04:53:13 +00:00
curt
7004475732 - catch exception from readProperties and show dialog 2001-07-19 04:51:05 +00:00
curt
004055a3be Fix include order for FreeBSD. Actually this is the published order for
Linux, but linux seems to be more tolerant of the includes being out of order.
2001-07-16 23:12:39 +00:00
curt
76a94d8f02 Tweaks to base version check code. 2001-07-16 19:37:13 +00:00
curt
093960be31 Check for the proper version of the base package and exit gracefully if not
found.
2001-07-16 19:17:58 +00:00
curt
ef5037fe42 Center display upon leaving mouse mode until we can come up with a more
comprehensive solution.
2001-07-16 04:44:49 +00:00
curt
bbc2d1758e - added /sim/temp/winding-ccw property
- added /sim/temp/full-screen property
- added /sim/fdm/data-logging property
2001-07-16 04:35:35 +00:00
curt
5e58976862 - removed hard-coded bindings for ^R (toggle winding-ccw), W (toggle
3DFX full-screen mode), Shift-F10 (toggle FDM data logging)
2001-07-16 04:35:15 +00:00
curt
98b90a2a37 - make certain UVW velocities don't overright airspeed-kt at startup 2001-07-16 04:34:46 +00:00
curt
c5c5a83ab2 Use try/catch to flag FDM initialization errors. 2001-07-16 04:15:02 +00:00
curt
3cca0caced Use throw to report config file load errors. 2001-07-16 04:14:34 +00:00
curt
f2515f709e Updated so load/save will work. 2001-07-13 21:45:48 +00:00
curt
361fa84d18 More work on the external view panning. 2001-07-13 16:50:35 +00:00
curt
26d12e4b69 Synced with latest JSBSim. 2001-07-13 16:41:23 +00:00
curt
dae9b63a14 Nuked the segfault on exit bug everyone was seeing. The material lib could
have multiple ptrs to individual entries (aliases) but the destructor was
trying to delete every ptr so it would delete already freed memory for aliases.
I implimented a simple ref counting scheme (similar to the plib mechanism) to
track references to material lib entries and only "delete" them when the last
reference is removed.
2001-07-13 05:15:29 +00:00
curt
a9289994b0 Most recent changes blew up LaRCsim so we are reverting to a previous
version.
2001-07-13 05:13:29 +00:00
curt
4e74c02688 Fix a comment. 2001-07-13 05:12:53 +00:00
curt
e4044e469f We check if the ptr is NULL before deleting it, so set it to NULL after
deleting it.
2001-07-13 05:12:30 +00:00
curt
0ff9311948 Just being a tad more careful with setting the ptr to NULL after deleting
it.
2001-07-13 05:11:46 +00:00
curt
0fa4b9a154 Leave view as is when leaving mouse pans view mode. 2001-07-12 23:36:31 +00:00
curt
87fbd941ba - added full doc comments for all functions
- added fgSetArchivable, fgSetReadable, and fgSetWritable functions
2001-07-12 23:36:04 +00:00
curt
6beb00f407 Made the following properties archivable:
- /sim/time/gmt
- /sim/view/offset-deg
- /sim/view/goal-offset-deg
- /sim/field-of-view
- /consumables/fuel/tank[0]/level-gal_us
- /consumables/fuel/tank[1]/level-gal_us
- /autopilot/locks/altitude
- /autopilot/settings/altitude-ft
- /autopilot/locks/glide-slope
- /autopilot/locks/terrain
- /autopilot/settings/climb-rate-fpm
- /autopilot/locks/heading
- /autopilot/settings/heading-bug-deg
- /autopilot/locks/wing-leveler
- /autopilot/locks/nav[0]
- /autopilot/locks/auto-throttle
- /autopilot/control-overrides/rudder
- /autopilot/control-overrides/elevator
- /autopilot/control-overrides/throttle
- /environment/visibility-m
- /environment/wind-north-fps
- /environment/wind-east-fps
- /environment/wind-down-fps
2001-07-12 23:35:56 +00:00
curt
5daff6705a - modified set_V_(north|east|down) to use set_Velocities_Local, so
that overrides in JSBSim will work (i.e. properties can be set)
- modified set_(u|v|w)Body to use set_Velocities_Wind_Body, so
  that overrides in JSBSim will work (i.e. properties can be set)
2001-07-12 23:35:36 +00:00
curt
ac1342de59 Made the following properties archivable:
- /position/latitude-deg
- /position/longitude-deg
- /position/altitude-ft
- /orientation/roll-deg
- /orientation/pitch-deg
- /orientation/heading-deg
- /velocities/speed-north-fps
- /velocities/speed-east-fps
- /velocities/speed-down-fps
(TODO: add rotational velocities)
2001-07-12 23:35:18 +00:00
curt
e0ffdf2109 - removed /controls/brakes/all property (no longer needed, since we
can bind a single input to multiple properties)
Made the following properties archivable:
- /controls/aileron
- /controls/elevator
- /controls/elevator-trim
- /controls/rudder
- /controls/flaps
- /controls/throttle[*]
- /controls/mixture[*]
- /controls/propellor-pitch[*]
- /controls/brakes[*]
2001-07-12 23:34:57 +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
c0309ef524 "Fix a bug" in mouse-pans-external view mode. 2001-07-12 20:03:37 +00:00
curt
e2dd3ac3e5 MSVC tweaks. 2001-07-12 17:55:44 +00:00
curt
1cdcaef13d sync with latest JSBSim ... 2001-07-12 17:55:27 +00:00
curt
2fba4df258 Begin stubbing in some wrapper code in preparation for runway lighting. 2001-07-12 15:03:49 +00:00
curt
2cb51a228b Restructured code a bit to split out the bits that create objects on the
fly.  More work needs to be done.
Added apt_signs.[ch]xx
2001-07-12 15:03:09 +00:00
curt
7b917bbd5c Removed FGControls.{cpp,h} 2001-07-11 23:53:45 +00:00
curt
4c281f0c65 Fix a dialog box cancel problem. 2001-07-11 23:51:31 +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
4b23576df1 Shuffled around and restructured the terrain elevation interesection code
to make it usable by the threaded tile loader for placing objects at ground
level at load time.
2001-07-11 15:51:21 +00:00
curt
bc4859c0fb Attempt to fix a segfault on exit, although I don't think this quite
does it.  We'll have to dig deeper.
2001-07-11 15:50:18 +00:00
curt
1e474b4773 Restructured the audio initialization order and don't attempt to continue
loading while intro music is being played.
2001-07-11 06:01:55 +00:00
curt
347d951bca Fixed a problem with recentering/snaping the view direction to forward so
the panel can come back.
2001-07-11 06:00:55 +00:00
curt
96eff71a13 20010710 sync with JSBSim. 2001-07-10 15:56:38 +00:00
curt
968b9fcb9c - /sim/model/h-rotation renamed to /sim/model/heading-offset-deg
- /sim/model/p-rotation renamed to /sim/model/roll-offset-deg
- /sim/model/r-rotation renamed to /sim/model/pitch-offset-deg
- /sim/model/x-offset += "-m"
- /sim/model/y-offset += "-m"
- /sim/model/z-offset += "-m"
2001-07-09 16:17:28 +00:00
curt
5f12c963d6 - modified to take advantage of SGCommandState to cache property nodes
and other information and avoid expensive lookups in the main loop.
2001-07-09 16:17:20 +00:00
curt
589eb42699 Fixed a typo, tank2 -> tank[1] 2001-07-09 15:50:36 +00:00
curt
df793e6763 Fixed a typo ... 2001-07-09 12:58:08 +00:00
curt
82f9528927 Fix a bug with old-style binary scenery compatibilty where no ground lighting
was generated.
2001-07-08 23:38:56 +00:00
curt
6116accf6a Various cleanups, jettison plib-1.2.0 support, remove a potential memory
leak.
2001-07-08 23:38:16 +00:00
curt
4520173d9b Allow other routines to increment/decrement goal_view_offset while keeping it
in the allowable 0-360 range.
2001-07-08 23:37:14 +00:00
curt
297241c318 Untweak my button tweak. 2001-07-08 23:30:44 +00:00
curt
90634ffc23 Added "/sim/startup/browser-app" as a property.
Added auto coordination to the --help output.
2001-07-08 23:30:17 +00:00
curt
4fe4a14ab8 Added "/sim/startup/browser-app" as a property. 2001-07-08 23:29:48 +00:00
curt
76815256f7 Updated to work with current property naming convention. 2001-07-06 21:38:28 +00:00
curt
74bb87e855 Use the new plib-1.4.1 sound interface to set a maximum of 6 concurrent
sounds (rather than the default 3).
2001-07-03 23:07:57 +00:00
curt
706db85486 gcc-3.0 fixes. 2001-07-03 22:39:16 +00:00
curt
db40b8c48b Rather than create an SGTime structure and trigger a spurious
"*** NO TIMEZONE" error message, just grab the modified julian date
directly.
2001-07-03 16:45:34 +00:00
curt
fe0c17625b Upgraded to handle new default.apt.gz file. 2001-07-03 16:44:37 +00:00
curt
7ec0025615 Add a link library needed by Irix. 2001-07-02 22:55:32 +00:00
curt
0b8c3564ff Add a library needed by Irix. 2001-07-02 22:55:16 +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
75fd10601a - fixed doubled bindings for joystick buttons 2001-07-02 22:26:19 +00:00
curt
4503cbb8b7 Oops, typo. 2001-07-02 22:14:09 +00:00
curt
1d486add56 Tweaks. 2001-07-02 22:12:22 +00:00
curt
5d2855f1ec Updated bug fix to make hopefully more thread safe. 2001-07-02 22:11:56 +00:00
curt
41260ee546 Fixed a bug with warp variable initialization. fgTie() was nuking out the
initial value.
2001-07-02 16:44:02 +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
eb2b614117 - changed SGPropertyNode::UNKNOWN to SGPropertyNode::UNSPECIFIED 2001-06-29 03:47:55 +00:00
curt
1b8f9cd1b4 - modified to support new prototype for command functions, with extra
SGCommandState parameter
- changed SGPropertyNode::UNKNOWN to SGPropertyNode::UNSPECIFIED
2001-06-29 03:47:39 +00:00
curt
d9bcec2851 - added variable support for the saved command state and for the local
argument copy in FGBinding
- removed redundant FGBinding::_fire internal method
- declared copy constructor for FGBinding
2001-06-29 03:47:19 +00:00
curt
ce45dbefe0 - modified FGBinding to keep a local copy of the argument property
node, and to modify that directly for scaling events: that will make
  handling joystick axes much more efficient
- modified FGBinding to work with the new command state, so that
  commands can save their state (i.e. compiled arguments) from the last
  pass
- removed FGBinding::_fire implementation
- implemented FGBinding copy constructor
2001-06-29 03:47:07 +00:00
curt
9ff7217961 Fix a JSBSim airport elevation bug. 2001-06-26 22:16:02 +00:00
curt
c3131e5e42 input.cxx: cleaned up some warnings.
fg_props.cxx: fixed a type "if (axisLong = 0) {" ...
2001-06-26 22:05:11 +00:00
curt
93178a944b - added declaration for method get_step 2001-06-26 22:00:31 +00:00
curt
2b6873903c - added implementation for method get_step 2001-06-26 22:00:21 +00:00
curt
7a723244a0 - modified to use the new /sim/freeze property 2001-06-26 22:00:10 +00:00
curt
7fd44010e1 - /autopilot/locks/altitude now returns true only for FG_ALTITUDE_LOCK
- added /autopilot/locks/terrain (bool)
- added /sim/time/warp and /sim/time/warp-delta (both long)
- added /sim/freeze property (bool)
- added /sim/rendering/textures property (bool)
2001-06-26 21:59:59 +00:00
curt
aa5ad5ad6e - added property-multiply command with argument 'factor'
- added confirm dialog for exit command
- added tile-cache-reload command
- added lighting-update command
2001-06-26 21:59:49 +00:00
curt
1c2b612926 - removed hard-coded bindings for ^G, ^T, ESC, M, T, X, Z, m, p, t, x,
z, F2, F4, and F9 (see keyboard.xml for replacements)
- no longer dump position report to log when paused (CLO: Argh! Gasp! I use
  that!)
2001-06-26 21:59:35 +00:00
curt
b8b1425761 Removed NetworkOLK/features.[ch]xx 2001-06-26 20:41:26 +00:00
curt
66280d99a9 Moved DEFAULT_AP_HEADING_LOCK to newauto.hxx
it was defined in both fg_props.cxx and newauto.cxx
This is I believe where it belongs.  (NHV)
2001-06-26 20:14:13 +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
0648e5c051 Updated to read new scenery configuration files. 2001-06-22 20:35:39 +00:00
curt
d99b8fb2ba Synced to latest version of JSBSim which [hopefully] includes all of Erik's
Irix patches.
2001-06-20 22:29:31 +00:00
curt
4c8a7c3cef - fixed an initialization order bug that prevented reading correct
ground elevation at start-up
2001-06-20 22:22:26 +00:00
curt
b97673d877 - added Alex Perry's patch to support more sophisticated hat switches
for the view axes
2001-06-20 20:52:10 +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
4d96e62a10 - added Melchior's patches to allow a joystick axis to act as a pair
of buttons (by adding "high" or "low" to the path before "binding")
2001-06-20 20:51:15 +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
4be7feddf6 Changed help message to --config= rather than --file= 2001-06-18 20:17:43 +00:00
curt
2b9727a4da Ooops, fixed a typo ... 2001-06-18 20:13:23 +00:00
curt
02ce62548b Remove fgjs from the makefile for the 0.7.7 release. 2001-06-18 18:09:47 +00:00
curt
d2eb835c84 Add *.h files to Makefile.am so they get included in the .tar.gz 2001-06-14 22:23:58 +00:00
curt
d839e84f99 Cleaned up various warning messages. 2001-06-14 22:18:01 +00:00
curt
81eb6d345d Fixed various warnings. 2001-06-14 22:10:29 +00:00
curt
e779ec44b4 Cleaned up various warnings. 2001-06-14 22:07:19 +00:00
curt
60553b64d1 Cleaned up various warning messages. 2001-06-14 22:02:38 +00:00
curt
86b7f1b26a - check for null property before trying to copy properties 2001-06-14 20:25:39 +00:00
curt
46b82360b0 Fixed a couple items for Norman's large resolution print routines. 2001-06-13 20:31:49 +00:00
curt
6420088452 Check for a NULL current_panel before shelling out mouse actions to a panel
method.
2001-06-13 16:41:02 +00:00
curt
d0126ec533 Fixed some warnings, updated whitespace. 2001-06-12 23:37:29 +00:00
curt
3d0ed99651 Cygwin fixes contributed by Norman Vine. 2001-06-12 23:15:16 +00:00
curt
da33ab1cf8 Oops, fixed a bug introduced in the previous round that munged many
runway textures.
2001-06-12 22:24:52 +00:00
curt
5f71bca303 Fixed panel edge artifacts (due to forced wrapping of background texture) 2001-06-12 19:07:13 +00:00
curt
bd0b5085db Fixed an data initialization problem that was causing MSVC grief. 2001-06-12 18:45:23 +00:00
curt
15fadd1687 There was a typo in the $fgbase/materials file where an alias was
pointing to a non-existant material name.  (This has been fixed.)

The alias code didn't check to see if this condition would occur so it
was putting a 'NULL' entry in the material library which was causing
the crash.  It now checks for and skips bad aliases and prints a
warning message.
2001-06-12 17:52:09 +00:00
curt
9337a5446c Added David's 'real' patch rather than my guess at it. 2001-06-12 16:25:36 +00:00
curt
c086f3e0e5 Property node patches by David Megginson. 2001-06-12 05:18:43 +00:00
curt
3899259cf7 - changed SGValue::Type references to SGPropertyNode::Type
- added "long" to list of known types
2001-06-12 05:18:15 +00:00
curt
80bc1edcd5 removed fgHasValue
removed fgGetValue
added fgHasNode
2001-06-12 05:17:49 +00:00
curt
6a9051883c changed SGValue::Type references to SGPropertyNode::Type 2001-06-12 05:17:33 +00:00
curt
2795fefa71 replaced 'static const int' with enum, as suggested by Christian
Meyer, to work around yet more MSVC bugs
2001-06-12 05:16:57 +00:00
curt
fe1f65eb24 replaced dynamically-sized arrays with statically-sized ones, to
work around MSVC bugs.
2001-06-12 05:16:38 +00:00
curt
72c7dc57fd replaced SGValue with SGPropertyNode throughout. 2001-06-12 05:15:48 +00:00
curt
1aa5235f17 Updated to work with David's new property naming conventions. 2001-06-08 05:49:32 +00:00
curt
7f6d4b0a01 Irix Mips compiler tweaks. 2001-06-06 23:31: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
70cfe7e606 Debugging output. 2001-06-06 17:11:35 +00:00
curt
71380de883 White space tweaks. 2001-06-06 17:02:39 +00:00
curt
d7ae38c0dd Optimized property manager accesses.
Fixed a creep in bug in the altitude hold autopilot.
2001-06-06 17:02:25 +00:00
curt
a54e10ac12 Part of David's command binding updates. 2001-06-05 22:13:26 +00:00
curt
5cf0bae003 JSBSim tweaks. 2001-06-05 22:12:57 +00:00
curt
dacb644ae7 - replace FGBFI::update with fgUpdateProps
- switched to properties for calculating RPM for model selector
- no longer includes bfi.hxx
- no longer includes keyboard.hxx
2001-06-05 22:12:28 +00:00
curt
286817978d - added load and save commands
- added panel-load command
- added preferences-load command
2001-06-05 22:12:17 +00:00
curt
cdfd5cada4 - removed all reference to BFI; use fgInitProps instead 2001-06-05 22:12:08 +00:00
curt
f7c1a37611 File no longer used. 2001-06-05 22:11:56 +00:00
curt
f367e6d432 - removed bfi.cxx and bfi.hxx
- removed keyboard.cxx and keyboard.hxx
2001-06-05 22:11:37 +00:00
curt
9b7c5c4ded - moved declarations of GLUTkey, GLUTkeyup, GLUTspecialkey, and
GLUTspecialkeyup from obsolete keyboard.hxx to here
2001-06-05 22:11:25 +00:00
curt
2a34a5d815 - moved shift-F1 and shift-F2 (load/save) bindings to XML
- moved shift-F3 (reload panel) bindings to XML
- moved shift-F4 (reload prefs) bindings to XML
- moved shift-F5, shift-F6, shift-F7, and shift-F8 (scroll panel) to
  XML
- no longer includes Main/bfi.hxx
- added implementations of GLUTkey, GLUTkeyup, GLUTspecialkey, and
  GLUTspecialkeyup
2001-06-05 22:11:16 +00:00
curt
149ddd450b - removed unused reference to bfi.hxx 2001-06-05 22:11:00 +00:00
curt
a8fb1aabca - eliminated all references to BFI; use properties instead
- copied DEFAULT_AP_HEADING_LOCK over from old BFI
2001-06-05 22:10:33 +00:00
curt
f9533d2f4b - eliminated all references to BFI; use properties instead 2001-06-05 22:10:25 +00:00
curt
9c0925744d Synced with latest JSBSim as of June 5, 2001. 2001-06-05 20:58:48 +00:00
curt
b31c520a39 Removed 'x' from the xgl* calls. 2001-06-05 19:50:36 +00:00
curt
095fb5c946 Irix/MIPS compiler fixes. 2001-06-04 21:47:48 +00:00
curt
cce5426ac8 Fixed a problem where all hardcoded keybindings were being double executed. 2001-06-04 21:40:38 +00:00
curt
b75e1af838 More tweaks related to David's input patches. 2001-06-04 21:38:44 +00:00
curt
30c23281d9 Joystick functionality has been moved to ../Joystick. 2001-06-04 21:38:03 +00:00
curt
698004e401 Eliminate a couple compiler warnings. 2001-06-04 21:30:03 +00:00
curt
9124dd945d Files moved from ../Joystick to here. 2001-06-04 21:26:53 +00:00
curt
7821a45772 - make repeatable for keys and joystick buttons default to false
rather than true; it's too confusing for users if keys and buttons
  repeat by default (keys weren't anyway, but they were supposed to)
2001-06-04 21:15:23 +00:00
curt
0dc313c955 - reduced amount of logging
- fixed bug with incorrect modifiers for some joystick buttons; trim
  buttons now work on my system
2001-06-04 21:15:09 +00:00
curt
96be3ad601 - no longer include Joystick/joystick.hxx
- include Input/input.hxx
- register GLUTkeyup and GLUTspecialkeyup with glut
- comment out call to fgJoystickRead
- comment out call to fgJoystickInit
- add call to FGInput::update to replace fgJoystickRead
2001-06-04 21:08:06 +00:00
curt
c9616e8c10 - added declarations for GLUTkeyup and GLUTspecialkeyup to capture
key-release events
2001-06-04 21:07:54 +00:00
curt
523cc794df - implemented GLUTkeyup and GLUTspecialkeyup 2001-06-04 21:07:39 +00:00
curt
d2a20a3824 - no longer include joystick.hxx 2001-06-04 21:07:27 +00:00
curt
d00ea4540f - removed Joystick library 2001-06-04 21:07:16 +00:00
curt
2d1d8cd274 - added FG_MOD_UP to use key-up or button-up as a command modifier;
this way, keyboard buttons can work the same way as joystick buttons
- added declaration for FGBinding::fire(double); this adds a setting
  property to the arguments passed to the command, so that it can use
  the current axis position as part of its calculations
- added data structures from joystick.cxx
2001-06-04 21:07:02 +00:00
curt
112a531f42 - added FGBinding::fire(double) - added support for "mod-up" property
- go back to using index as key code (otherwise, we'll get nasty
  surprises when users try to override bindings)
- XML config file now nests bindings inside modifiers
- allow user to specify whether key is repeatable
- removed hard-coded bindings for 'b', ',', and '.'
- added code from joystick.cxx, with the following major changes:
  - changed from js0, axis0, button0 to js[0], axis[0], button[0], etc.
  - removed factor, offset, etc. since they will be args to command in
    binding
  - allow multiple bindings, as with key mappings
  - allow access to keyboard modifier keys for bindings
  - include infrastructure for modifiers (only FG_MOD_UP is used so far)
  - removed unused 'saturation' property
  - temporarily removed capture property and trim code; it will have to
    be rewritten to be more generic
  - allow modifiers for joystick buttons
2001-06-04 21:06:48 +00:00
curt
864e862150 - removed Joystick subdirectory 2001-06-04 21:05:53 +00:00
curt
a6e0a69637 Removed cloud layers added for testing. 2001-06-04 20:48:43 +00:00
curt
a09eb4951e Initial revision of Tony's joystick configurator. 2001-06-01 20:56:13 +00:00
curt
2467c8e2f8 Move a variable declaration out of the case statement. 2001-06-01 20:29:03 +00:00
curt
35533b3a8d Test for null object after load before trying to connect it into the scene
graph (which would cause a crash.)
2001-06-01 18:04:10 +00:00
curt
b2f604ad00 Reduce output verbosity. 2001-06-01 17:55:49 +00:00
curt
f99f670aed - renamed /sim/startup/view-offset to /sim/view/offset 2001-06-01 17:53:20 +00:00
curt
0ec19036b8 - no longer allocate the root property node for globals; globals does
it itself
- tweaks to model path loading.
2001-06-01 17:53:09 +00:00
curt
57aacb64f3 - added an instance of SGCommandMgr
- added a get_commands() method
2001-06-01 17:52:50 +00:00
curt
1b0878a835 - modified setup so that the globals object creates and deletes its
own instances of the property and command managers
2001-06-01 17:52:40 +00:00
curt
ecda50f9bc - added invocation of fgInitCommands() to set up command manager 2001-06-01 17:52:28 +00:00
curt
3cdb3d2c49 Initial revision of interface to new SimGear command manager. 2001-06-01 17:52:17 +00:00
curt
80a5a6b354 - removed some obsolete method declarations
- added declarations for get/setViewOffset and get/setGoalViewOffset
2001-06-01 17:51:49 +00:00
curt
34d941f914 - implemented get/setViewOffset and get/setGoalViewOffset
- tied to properties /sim/view/offset and /sim/view/goal-offset
2001-06-01 17:51:39 +00:00
curt
ca22e9f422 - added fg_commands.cxx and fg_commands.hxx 2001-06-01 17:51:20 +00:00
curt
f695b5b479 - refactored and simplified FGBinding class to use the new command
manager; removed unused getters and setters; track original
  command name for use in debugging messages
- removed unused action methods from FGInput
2001-06-01 17:51:09 +00:00
curt
318326f9af - renamed property binding/action to binding/command; most commands now
want binding/property rather than binding/control
- removed hard-coded bindings for F3 (screenshot), Ctrl-S
  (autothrottle), v (cycle view) and all of the keypad view-direction
  keys; these are now defined in $FG_ROOT/keyboard.xml
- removed unused action method
2001-06-01 17:50:59 +00:00
curt
54a0e1cf52 Make FGViewer::update() a pure virtual because FGViewer is a base class
and can never be instantiated itself.
2001-05-31 04:25:43 +00:00
curt
cecd0df78d We don't need to explicitely #include <glext.h> since gl.h should do this
for us already if it exists.
2001-05-30 20:58:02 +00:00
curt
d5a2533411 Fixed a bug in the tile pager / caching / management system that caused
a crash when relocating to a new airport.  Pending work from the old
area is now just completed as normal, rather than trying to empty the various
queues in their various stages when can lead to many problems in a threaded
environment.
2001-05-30 18:21:03 +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
876e9c60fd Win32 fixes.
Fixed a few glitches in the autopilot keys
Added a #define to be able to make a compile time decision to revert to
   older GPS like autopiolt behavior this define SHOULD become a property
   so that it is run time switchable.
2001-05-29 22:06:14 +00:00
curt
38f29c3d86 Fix a clash with some standard MSVC defines (yeah MS) :-( 2001-05-29 20:02:00 +00:00
curt
94f745e3ea I'm attaching diffs to add a new FGInput module to FlightGear
(src/Input).  So far, FGInput replaces most of src/Main/keyboard.cxx
(I've left a tiny stub); in the very near future, it will also take
over control of the joystick, mouse (Norm permitting), and panel
instrument interactions, so that there is a single mechanism for
configuring all input devices.

The new format should be (close to) self-explanatory by looking at the
new base-package file keyboard.xml, which is now included by
preferences.xml (I'll do the same thing for the joystick when I have a
chance).  I have not managed to move all keybindings into this file
yet, but I've made a good start.  I'm including Tony in the recipient
list so that he can see how bindings can use an external XML file.

This patch also adds support for multiple bindings for a single key,
special keys (i.e. keypad and function keys), and key modifiers
(shift/alt/ctrl); special keys use the PUI convention of adding 256 to
the Glut key code.

Unfortunately, everything comes with a price; in this case, I have not
yet found a general mechanism for the old (hard-coded) modal bindings,
which behaved differently depending on the autopilot state (i.e. left
rudder or move AP heading left); with my patches, this functionality
disappears, but you can still adjust the autopilot using the panel or
the GUI input dialogs.
2001-05-23 23:01:15 +00:00
curt
7208b95d36 Initial revision. (Contributed by David Megginson) 2001-05-23 22:59:40 +00:00
curt
7e4a96dc77 Norman Vine contributed more optimized object placement math. 2001-05-23 22:28:38 +00:00
curt
76f2eb47eb Whitespace tweak. 2001-05-23 20:57:25 +00:00
curt
02896643d7 Minor texture tweaks. 2001-05-23 20:54:51 +00:00
curt
29d540901c Tile pager tweaks.
MSVC++ tweaks.
2001-05-21 20:44:59 +00:00
curt
2afcbb4bc8 We can't remove ssg branches in the threaded tile page because if we happen
to have attached an ssg loaded object to this branch, then plib will remove
it and all it's states (and textures) which will call opengl api commands
which will crash the program if run from a separate thread from the main render
thread.
2001-05-20 06:49:06 +00:00
curt
34854ab2af Threaded tile paging:
- model loading deferred to primary thread
- tile removal deferred to paging thread
- other tweaks and rearrangments.

Airport signs
- first stab at some support for adding taxiway and runway signs.  This
  is non-optimal, but I'm under the gun for a demo.
2001-05-19 16:59:43 +00:00
curt
865fb56c5a Tile loading is interleaved now when not threaded. Threaded loader is
throttled to one tile per frame maximum.
2001-05-18 20:31:23 +00:00
curt
f85df36eaa Tweaks. 2001-05-18 20:30:36 +00:00
curt
31c8d67333 Push external eye point a bit further away from the aircraft. 2001-05-18 20:30:18 +00:00
curt
74b473ca36 Don't build ls_trim.c, but keep it in EXTRA_DIST. 2001-05-18 20:29:57 +00:00
curt
69a4aa083d Trying to fix ascii file parsing and line terminator handling. 2001-05-18 16:09:39 +00:00
curt
aea664cd15 MSVC++ changes contributed by Geoff McLane. 2001-05-17 21:55:22 +00:00
curt
4bdbe9c8c1 Added David Megginson's patch for reconfigurable keyboard bindings. 2001-05-16 23:27:59 +00:00
curt
31890db125 First stab at adding static objects to scene. 2001-05-16 06:00:02 +00:00
curt
5c52bb1f22 Added a missing 'return' in case statement. 2001-05-16 00:32:28 +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
b7ccbfe532 Fixed a typo. 2001-05-15 04:08:31 +00:00
curt
a01a26a009 Re-added support for loading on-the-fly textures. 2001-05-15 00:01:04 +00:00
curt
0d999c9936 Added a search method for an airport/runway number combination. 2001-05-15 00:00:08 +00:00
curt
c7f7093df5 Timezone fixes for Cygwin. 2001-04-26 18:15:32 +00:00
curt
4c4d17631f Screenshot tweaks from Cameron Moore. 2001-04-22 22:04:25 +00:00
curt
ffe70e3221 Fix various compiler warnings contributed by Norman Princeton. 2001-04-22 17:00:08 +00:00
curt
f3ca9b2e05 Synced with latest JSBSim. X15 works for me, but C172 segfaults. 2001-04-17 21:19:54 +00:00
curt
051e2a6dc3 Tweaks so tile loading still works in non-threaded mode. 2001-04-17 05:21:56 +00:00
curt
9bc25d9ce3 Fix for reinit after user resizes screen. 2001-04-16 20:31:26 +00:00
curt
4a609646b6 Modified FlightGear/src/Scenery. The tile loader thread no longer adds
a newly loaded tile to the scene graph.  Instead it puts it in a queue
for the tile manager.  I've used your counter_hack to check the loaded
queue and add any tiles to the scene graph.  I was playing around with
the counter_hack so there might be some commented out code, etc.  I also
changed some SG_DEBUGs to SG_INFOs so I could track the tile loading.
2001-04-16 20:03:52 +00:00
curt
a29cb28e93 Tweaks to the tile pager so it waits for a signal from the main thread before
loading the next tile.  This allows the main thread to "pace" the tile loader
so it consumes fewer resources.
2001-04-14 03:11:39 +00:00
curt
f117bc201f Oops missed one updated file. 2001-04-13 21:16:16 +00:00
curt
fc7e234d3d Irix MipsPRO fixes. 2001-04-13 21:00:07 +00:00
curt
e03752883e Unconvoluted around line #130 2001-04-11 20:09:23 +00:00
curt
b0b6c34249 Initial stab at a threaded tile loader contributed by Bernie Bright.
He writes:

Here are the final changes to add threads to the tile loading.  All the
thread related code is in the new FGTileLoader class.

./configure.in
./acconfig.h
Added --with-threads option and corresponding ENABLE_THREADS
definition.  The default is no threads.

./src/Scenery/tilemgr
Removed load_queue and associated references.  This has been replaced by
a new class FGTileLoader in FGNewCache.
Made the global variable global_tile_cache a member.
schedule_needed(): removed global_tile_cache.exists() tests since
sched_tile() effectively repeats the test.
initialize_queue(): removed code that loads tiles since this is now
performed by FGTileLoader.
update(): ditto

./src/Scenery/newcache
Added new class FGTileLoader to manage tile queuing and loading.
tile_map typedefs are private.
exists() is a const member function.
fill_in(): deleted
load_tile(): added.

./src/Scenery/FGTileLoader
The new threaded tile loader.  Maintains a queue of tiles waiting to be
loaded and an array of one or more threads to load the tiles.  Currently
only a single thread is created.  The queue is guarded by a mutex to
synchronize access.  A condition variable signals the thread when the
queue is non-empty.

CLO: I made a few tweaks to address a couple issues, hopefully what we
have is solid, but now we kick it out to the general public to see. :-)
2001-04-11 02:47:15 +00:00
curt
a2049b110f More JSBSim updates. 2001-04-06 22:59:31 +00:00
curt
606b8d13d9 Added loaded flag to FGTileEntry so that the main thread knows when the
tile has been loaded.  Since this flag can be set by another thread I've
declared it "volatile bool".

Also cleaned up delete vs delete[] usage.  Gcc is happy with delete[],
which is the correct usage.
2001-04-06 18:30:07 +00:00
curt
4b6e8102a7 Synced with latest JSBSim cvs.
reinit fix from Norman.
2001-04-05 21:14:37 +00:00
curt
d422a7bb7f Added a special default default fgroot for cygwin. 2001-04-05 20:25:40 +00:00
curt
65f6e343ab From David Megginson:
The files in the attached tarball make the following changes to
FlightGear:

- rename the existing FGInterface::init() method to
FGInterface::_setup to get it out of the way

- move *all* FDM initialization code out of src/Main/fg_init.cxx and
into FGInterface::init(), and clean up fg_init.cxx a little
(especially by removing the zillions of attempts to place the plane on
the ground at various locations in the code)

- modify FGInterface::bind() so that no values are picked up
automatically at bind time (they are set previously by init() instead)

- modify the init() methods of the classes derived from FGInterface
(i.e. larcsim, jsbsim, balloon, magic, and ada) to invoke
FGInterface::init() explicitly before doing their own setup

I don't claim that the code in FGInterface::init() is optimal (or even
correct), but it seems to work for on-ground starts with both LaRCSim
and JSBSim on runways pointing various directions from near sea level
to about 700' ASL (the range I happened to test).  I expect that Jon
and Tony will want to look at the code and refactor and correct it now
that they can see what's going on in one place.

Here's a quick outline of what is invoked:

  cur_fdm_state = new <whatever>(dt);
  cur_fdm_state->init();
  cur_fdm_state->bind();

The constructor allocates memory and sets default values only (with
the help of the FGInterface::_setup() method).  The init() method pull
any required properties out of the property tree and sets up the
initial state of the FDM.  The bind() method takes ownership of
FDM-related properties so that the FDM can publish them to the rest of
the sim.

Note that bind() and init() are virtual, so any implementation in a
subclass will hide the implementation in FGInterface; that's why
subclass implementations of init() and bind() have to invoke
FGInterface::init() and FGInterface::bind() explicitly, probably at
the start, so that they get the basic initialization.
2001-04-05 20:20:44 +00:00
curt
397a83d69f Data logging patches from Jon Berndt
Fix for model loading under plib-1.2.x in main.cxx
2001-04-05 15:39:37 +00:00
curt
96fbc75b7c Bug fix from Norman Vine. 2001-04-02 21:28:35 +00:00
curt
4f7ac699e3 Patches to flight.cxx to make things work better with JSBSim. 2001-04-02 20:14:04 +00:00
curt
16b21865b8 Initial units confusion fixes. 2001-04-02 03:39:43 +00:00
curt
20fb555364 Updates to fix c172 throttle. 2001-04-02 03:18:44 +00:00
curt
94034c3081 Latest jsbsim updates. 2001-04-02 03:12:38 +00:00
curt
2aca8ca2cf Irix MipsPro patches and fixes. 2001-04-02 02:59:31 +00:00
curt
0fdc1caebb Updated for 8 ... 2001-04-02 02:39:51 +00:00
curt
7c81992a2d Updated from JSBSim cvs. 2001-04-02 02:27:45 +00:00
curt
626969d0cc Initial revision. 2001-03-30 03:08:44 +00:00
curt
74fbaa8f5e Latest round of JSBSim updates. 2001-03-30 01:04:50 +00:00
curt
679eb0b984 Tweaking sound safety margin. 2001-03-29 14:11:43 +00:00
curt
bfb2a65128 Initial revision. 2001-03-29 13:14:42 +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
f8e234bb27 Dynamically adjust audio safety margin (how much audio we stuff in the
pipe in advance) based on frame rates.
2001-03-29 05:18:29 +00:00
curt
31047f65ac - model loading should work again with the latest CVS PLIB (and, I
hope, with earlier versions as well)
- support for the new LONG value type
- gear support for UIUC (updated for the newly renamed SG_* stuff;
otherwise identical to what I sent you before)
- fixed reported MSVC problem in src/FDM/flight.cxx
2001-03-29 03:49:02 +00:00
curt
0ab39eea99 From: David Megginson <david@megginson.com>
I have created a set of patches to provide configurable landing gear
for the UIUC models.  The patches (including four new files) are
available at

  http://megginson.com/private/fgfs/uiuc-20010309.tar.gz

A modified UIUC configuration file for the Twin Otter (DHC-6) is
available at

  http://megginson.com/private/fgfs/aircraft.dat

It should be possible to configure appropriate gear for all of the
UIUC models now.  As a bonus, the models also support braking, both
absolute and differential, as well as nose-wheel steering (all of
which are currently missing from the UIUC models) -- when you land,
you don't have to keep rolling off the end of the runway anymore, and
you don't have to bank to steer in a taxi.

My sample configuration file contains absolutely bizarre, wild
guesses, and many places that I didn't even bother to guess properly.
The only actual data I had was the wing-span of the DHC-6 (65ft),
which I used for positioning the wing tips.  The wing-tips for this
model actually work now -- I hit the aileron hard while accelerating
for take-off, and the wingtip noticeably strikes the ground and
bounces up (quite dramatic in external view using the DHC-6 model from
Wolfram's site).


Details
-------

The UIUC models now support up to 16 gear points each where a gear
point is anything in the aircraft that can come in contact with the
ground, including the tail and wing-tips.  I have added the following
new fields to the UIUC configuration files, where <index> is an
integer between 0 and 15, and <value> is a real number:

  gear <index> Dx_gear <value>     # x offset from CG [ft]
  gear <index> Dy_gear <value>     # y offset from CG [ft]
  gear <index> Dz_gear <value>     # z offset from CG [ft]
  gear <index> cgear <value>       # spring damping [lbs/ft/sec]
  gear <index> kgear <value>       # springiness [lbs/ft]
  gear <index> muGear <value>      # rolling coefficient
  gear <index> strutLength <value> # gear travel [ft] (not yet used)

Most of these names were already pencilled into the UIUC documentation
(as TODO items), but I had to make up Dx_gear, Dy_gear, and Dz_gear --
if those are inappropriate, I'd appreciate suggestions for better
names.

It will be necessary to modify the other UIUC configuration files to
include some kind of gear support as well, or the planes will sink
nose-first into the ground down to their CG's (it's actually quite
funny to watch with an external view).


Background
----------

As I frequently remind everyone here, I have no math background worth
spitting at, so I will not even pretend to have done the hard stuff.
The UIUC code uses a copy of a very old version of the LaRCsim
c172_gear.c -- I wanted to update it with Tony Peden's excellent newer
version, which includes differential braking among other goodies (the
UIUC models don't support brakes, period).

I copied the newer code into uiuc_aero.c, and it compiled and ran, but
all of the planes ended up sitting on their tails with their noses in
the air.  Since Tony made his gear code nicely parameterized, I
experimented with different values, and found that it wasn't too hard
to balance the Twin Otter by moving the gear back a bit.  At first, I
used properties to set different values, but then I decided to
integrate the whole thing properly into the UIUC configuration
framework.  Thanks to Tony Peden, who did the real modelling work -- I
can take credit only for two or three hours of integration.  It turns
out that Tony's code is generalized enough to deal with a wide range
of different gear structures -- I suspect that it will even work for
the 747, when I get around to trying some values.
2001-03-29 03:16:25 +00:00
curt
84816c13af Fix for MSVC. 2001-03-29 01:44:54 +00:00
curt
191bb3956a Updates from Bernie Bright to massage tile loading around to make it
slightly more conducive to future threading.
2001-03-29 01:42:31 +00:00
curt
e7d79e7ba2 Light model tweaks. 2001-03-28 18:11:05 +00:00
curt
c4b2e54551 Fix moon drawing at night. 2001-03-28 17:52:40 +00:00
curt
d6039a111f Removed an unneeded exit() 2001-03-28 14:38:55 +00:00
curt
2e8f9f7399 Added marker beacon sound effects. 2001-03-28 07:12:11 +00:00
curt
7aa5e0a4eb Lighting fixes.
Warning fixes.
Typo in configure.in
2001-03-28 00:39:29 +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
9fac7682e3 inlines.h -> sg_inlines.h 2001-03-24 14:56:37 +00:00
curt
f380595144 fg_zlib.h -> sg_zlib.h 2001-03-24 14:12:00 +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
92443d36a4 FG_ to SG_ namespace changes. 2001-03-24 03:10:40 +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
8497f9b1ac FG_ to SG_ name changes. 2001-03-23 22:42:49 +00:00
curt
945163b540 FG_HAVE_STD_INCLUDES -> SG_HAVE_STD_INCLUDES 2001-03-23 22:15:19 +00:00
curt
4162c808bd David Luff: I've put Phil's temperature correction back in since I'm not
implicitly correcting for that yet.  The plane now makes it to 11000ft on
autopilot *slowly*.  I think I'll have to look at the prop parameters
next - altering the diameter and blade angle just slightly can have
quite an effect.  If you want to play then try changing the values
prop_diameter and blade_angle in FGNewEngine::init.  Keep blade
angle between 20 and 25 (since those are the only values for which
I've entered data and I interpolate between them) and ignore
FGProp1_Blade_Angle since that's an old variable that isn't used.  I
really ought to read all the engine and prop parameters from file to
avoid recompilation when tweaking !
2001-03-22 23:42:16 +00:00
curt
80ff1af457 David Luff: Here is an update to the engine model. It now takes
the actual air pressure and temperature from the LaRCSim model
instead of assuming that it is at sea level as before.  This has
reduced the ceiling from over 60000 ft to about 9000 ft.  This is a bit
low (should be around 13 - 14000 ft I think) but I still have some
stuff to do with the engine power correlation and its ignoring the
temperature at the moment so I'm not panicking yet :-)

I've also changed the mixture-power correlation to one from a
published paper since the curve from the IO360 manual seemed to
be a load of rubbish, and didn't have any numbers on the mixture
axis anyway.

I've also knocked the full rich mixture down a touch in line with
Riley Rainey's recommendation, and cleaned up the code a bit.
2001-03-22 16:27:16 +00:00
curt
def805e9dc Added support for reading ~/.fgfsrc.hostname files. 2001-03-22 04:02:11 +00:00
curt
46a4b960d1 MSVC++ fixes. 2001-03-21 23:16:21 +00:00
curt
cdd3082998 MSVC fixes. 2001-03-21 23:10:15 +00:00
curt
eccd695f91 Fixed some problems with marker beacon range:
a) I was compairing feet vs. meter (making the range 3x too. big)
b) I was using the diameter in place of the radius (making the range an
   additional 2x too big.)
c) Updated the equation for calculating range to model the weak transmitter
   not being picked up at upper altitudes.

We still might need some additional tweaking, but I think we are starting to
get in the right ball park.
2001-03-19 13:56:19 +00:00
curt
4cf4edcfb4 Julian Foad: fixes to meters/feet confusion. (Also length of "--vNorth="
is 9 not 8.)  Note that the initial altitude setting was placing us way below
the ground, but as it doesn't seem to have caused us problems, it's probably
redundant!
2001-03-17 21:06:43 +00:00
curt
22d0448657 Oops ... 2001-03-17 00:00:32 +00:00
curt
a695a8d9f5 Initial support for marker beacons. 2001-03-16 23:59:02 +00:00
curt
5978b6967d Fixes to not hide mouse in win32 (current implimentation caused too much
confusion.)
2001-03-16 23:58:31 +00:00
curt
7d38baf850 Initial revision of mkrbeacons.[ch]xx
Additions to query and report if we are over a marker beacon.
2001-03-16 23:57:38 +00:00
curt
99c54d976a More tweaks to radio and sound. 2001-03-16 05:33:04 +00:00
curt
7191e8b810 Tweaks to PLIB version detection. 2001-03-14 23:38:34 +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
2b45761f56 Fixes from Erik Hofman for Mips Irix. 2001-03-10 20:58:47 +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
55e881b83d Attempt to detect and work around plib-1.2.0 audio bugs. 2001-03-09 20:17:54 +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
b1ade68b61 Patch from Tony so the FDM can trim out a specific starting location for a
joystick input, and then will ignore the actual position of that input
until the user places it in the proper position to match the trimmed position.
At that point the joystick input captures control over the value and the
value will match the joystick position from then on.  This is primarily set
up so that the FDM can trim in an initial throttle position.
2001-03-06 23:59:08 +00:00
curt
7555a4b8db Added some sanity checking on max number of bottons and axes. 2001-03-06 23:03:06 +00:00
curt
29275ce1ec Tweaks for Mips Irix compilers. 2001-03-06 22:36:59 +00:00
curt
5ca3ea8ecf A small patch (a few lines) to add a --file option to
FlightGear, a long-standing request from Norm, and to get the UIUC
--aircraft-dir option working again.
2001-03-06 19:11:28 +00:00
curt
0e424f6ad7 Ooops, missed adding this the first time. 2001-03-06 00:51:58 +00:00
curt
815d49e86a Reshuffled some of the sound code and created a "src/Sound" subdirectory. 2001-03-05 22:54:20 +00:00
curt
fbad3482fa More work on morse code ... 2001-03-05 14:11:25 +00:00
curt
040185f0fd Continued work on morse code generator. 2001-03-05 12:09:36 +00:00
curt
3abe133162 Added beginnings of a morse code sound clip manager. 2001-03-05 03:13:47 +00:00
curt
e85cf6cc10 Fixed a couple property manager typos. 2001-03-03 00:04:03 +00:00
curt
0262c56059 Fixes to initial position for JSBSim. 2001-03-03 00:03:42 +00:00
curt
f5baf8c952 Oops, forgot to take out -lsgmetar 2001-03-02 23:28:51 +00:00
curt
29dede4c1a Tony's patches to allow you to position yourself at an offset from the
default location (i.e. end of the runway.)  This allows you to start
up on final and things like that.
2001-03-02 23:27:22 +00:00
curt
d84c64563b Updated comments. 2001-03-02 22:54:10 +00:00
curt
e9591422f3 Added a first pass at a C++ sound manager class. 2001-03-02 22:37:01 +00:00
curt
5d423a94b0 Contributed by Dave Luff:
Added fuel-flow and total fuel to the LaRCSim model.  Its still a bit
rough for now but it works, except the engine dosn't stop when fuel runs
out at the moment since there's no refuelling capability in the sim just
now.  It takes about 4 gallons use before you see the fuel guages begin
to drop since there's 28 gal per tank but the guages go to 26.
2001-03-01 16:32:29 +00:00
curt
d7ca2c7e7d Some error checking and an xml dump routine contributed by Norman Vine. 2001-02-28 19:48:18 +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
2c9443c698 Fixed a problem with autodetecting if we need to draw our own mouse cursor
on voodoo-1/2 cards.
2001-02-26 13:58:33 +00:00
curt
7c6df16062 Autopilot in nav1 tracking mode bases heading off of desired radial not
current radial.
2001-02-25 18:03:11 +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
bd9ce60174 Autopilot in Nav1 heading hold mode is now driven just from needle position. 2001-02-25 05:42:34 +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
c210a78067 Autopilot fixes so when in NAV1 radial hold mode we can now fly the FROM
radial and we can properly fly "through" a VOR station.
2001-02-24 13:51:48 +00:00
curt
7a4da94425 Added support for managing fov via the property manager so the --fov= option
can work again.
Removed a bit of debugging output when reading "native" IO input.
2001-02-23 22:25:03 +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
8830f5c6a8 Fix a problem with external views where the sky lighting was calculated
in reverse.
2001-02-02 23:15:03 +00:00
curt
d1a50b5667 Fixes to get back support for Voodoo-1/2 cards and the voodoo-in-a-window
hack.
2001-02-02 22:39:13 +00:00
curt
a5d1970007 David Luff writes:
Basically I've rewritten the prop model along similar lines to how
Jon has done his - using published efficiency and coefficient of
power data.  It works *much* better - try pulling the throttle back
to idle and putting the plane into a dive before and after updating
and you'll see what I mean.  It doesn't require a fudge factor either
:-)
2001-02-02 20:55:41 +00:00
curt
fcce1d782c Oops for specified magvars, I had the sign backwards. 2001-02-02 17:44:16 +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
a4d27fe7bc Added a specific "altas" format for output which includes a proprietary string
to convey the radio stack settings.
2001-01-31 22:21:36 +00:00
curt
c7f1c662a1 Initial revision of atlas.cxx atlas.hxx 2001-01-31 21:57:55 +00:00
curt
2cd7473384 Fixed --enable-freeze. 2001-01-31 15:59:16 +00:00
curt
c78827569a Properly close our database file ... 2001-01-31 15:58:53 +00:00
curt
c3e3e9f5d7 Reduce spurious output from joystick.cxx
Fix a typo in JSBSim.cxx (#endif in wrong place)
2001-01-29 15:14:12 +00:00
curt
97f526f7a6 Added a GUI vec3 pilot offset control contributed by Norman Vine. 2001-01-29 05:08:00 +00:00
curt
f023440a5f Bug fix/typo fix submitted by Tony. 2001-01-29 04:47:16 +00:00
curt
e977778527 Fixed a problem with the object loader ignoring custom texture dimensions
specifiec in the materials file.
2001-01-29 04:36:46 +00:00
curt
1a0a65b2a5 Fixes to iochannel parsing which had gotten broke at some point.
Fixed --disable-skyblend
2001-01-26 00:21:36 +00:00
curt
1a6ed2ecc8 Tweaks to autopilot, but I'm not 100% happy with the current state of things. 2001-01-26 00:20:18 +00:00
curt
1c000fef96 Tweaks to add an altitude indicator adjustment. 2001-01-23 07:17:47 +00:00
curt
1bc2a66b1c Fixed a couple property manager typo's. 2001-01-22 20:39:25 +00:00
curt
e1dd52d38a The FlightGear patches add new saveInitialState and
restoreInitialState methods to FGGlobals, as well as the two-stage
commit described above for loading saved files.  fgInit now takes a
snapshot of the initial state before handing off to the main loop, and
the GUI reInit function restores that state explicitly before calling
fgReInit.

The FlightGear patches also modify fg_props.hxx to add optional
useDefault arguments to all of the fgTie functions -- that lets you
choose whether you want to pick up any default value in the property
tree when you tie the property (the default is true).
2001-01-19 22:57:24 +00:00
curt
bfcef94570 Fixed typo that messed up panel toggling from the menu. 2001-01-19 04:32:21 +00:00
curt
e9b492af4f More tweaking of position reset logic. 2001-01-17 23:30:35 +00:00
curt
a5e4e6be11 Working on setting initial altitude correctly after a reset. 2001-01-17 20:32:02 +00:00
curt
26dca37028 More "delta-t" and fdm interface timing tweaks. 2001-01-17 02:37:12 +00:00
curt
d346e53aee Tweaking the FGInterface interface so we can move it towards a more consistant
fgSubsystem init() and update() interface.
2001-01-16 21:41:28 +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
a701a2be4a Debugging output tweaks. 2001-01-13 00:14:47 +00:00
curt
5bfca5eff8 Removed some debugging output and added some optimizations. 2001-01-12 22:47:41 +00:00
curt
bc99033c96 Integrated FGOptions with the property manager (by David Megginson) 2001-01-12 15:37:40 +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
dc7b762a12 Minor MSVC porting tweaks. 2001-01-11 04:54:33 +00:00
curt
e9d12ee586 Tweaks from Tony to JSBSim.cxx jsbsim interface to flightgear.
Added ls_trim.c to the LaRCsim library.
2001-01-09 18:35:23 +00:00
curt
d9bff43bde Tweaks. 2001-01-08 22:01:24 +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
8a7e5eeaf2 Minor tweaks. 2001-01-08 20:40:26 +00:00
curt
7a235abecd Tweaks to the LaRCsim interface to get wind working.
Corresponding tweaks to bfi.[ch]xx and options.cxx.
2001-01-08 17:59:54 +00:00
curt
690d2ac3e8 Tweaks for new SGBinObject interface. 2001-01-06 05:31:45 +00:00
curt
49fc684885 Tweaks to binobj reader interface. 2001-01-06 05:09:40 +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
5ef00ab621 Contibuted by David Megginson; Initial revision. 2001-01-05 17:37:59 +00:00
curt
3e7bc24006 Tweaks related to the HUD. 2001-01-05 16:45:14 +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
ba8f62a540 Added support for loading binary object files. 2001-01-05 01:07:10 +00:00
curt
1db7986e0e Added a scenery version check so we will die if the program tries to load
scenery that is newer than we know how to handle.
2001-01-03 19:00:55 +00:00
curt
6ccc92a666 Fixed an array overrun typo ... 2000-12-20 23:50:44 +00:00
curt
3b88c71122 Applied changes relative to David Megginson's property manager rewrite. 2000-12-19 23:29:16 +00:00
curt
6d399f83f8 Added some initial support for moving parts on aircraft models. 2000-12-19 20:50:00 +00:00
curt
0d457e78e2 Fix a view bug that could make the aircraft appear rotated from an
external view if the primary view was rotated before we switched.
2000-12-14 21:59:47 +00:00
curt
e333080388 MacOS changes contributed by Darrell Walisser (12/13/2000) 2000-12-13 23:02:02 +00:00
curt
95d6d93bed Renamed FGBucket -> SGBucket. 2000-12-13 20:36:04 +00:00
curt
da97ac5b9f Tweaks. 2000-12-13 17:56:43 +00:00
curt
403c740b34 Updates to DCS support and updates to options in preparation for support
the new xml configurable hud.
2000-12-08 20:05:43 +00:00
curt
94fd1bd8f2 Blame this on David Megginson ... :-)
Save/restore seems to be working now, thanks to a couple of
unspeakable kludges:

1. Every time the altitude changes, pause the flight simulator for
five frames and then change it a second time.

2. Every time the latitude or longitude changes, wait five frames,
then invoke fgUpdateSkyAndLightingParams() a second time.
2000-12-08 17:36:07 +00:00
curt
65087c6b56 Removed tilecache.cxx tilecache.hxx.
Tweaks to ground lighting.
2000-12-08 17:28:05 +00:00
curt
6574e8f4f6 Updates to time parsing and setting by David Megginson. 2000-12-08 17:26:49 +00:00
curt
5fecec2bba More night ground lighting tweaks. 2000-12-06 22:16:12 +00:00
curt
40d68c5627 Tweaks to get lights to fade in quantity-wise as well as brightness-wise. 2000-12-06 13:57:29 +00:00
curt
31b9c763df Added a --visibility= option. 2000-12-06 04:13:16 +00:00
curt
f37f2f73ce Added a file load / save entry box so you can specify a file name (contributed
by David Findley)
2000-12-05 22:19:42 +00:00
curt
84440e9b5e Added support for specifying light coverage on a per material basis in the
materials file (contributed by David Megginson.)
2000-12-05 20:53:14 +00:00
curt
3ec542d18f Faster triangle area routine contributed by Norman Vine. 2000-12-05 20:20:57 +00:00
curt
174553feef Tweaked thresholds for staging in ground lighting. 2000-12-05 18:58:05 +00:00
curt
2baba715b4 Adjust ground lighting up significantly higher to avoid zbuffer fighting
on cards with 16 bit (or less) depth buffers.
2000-12-05 14:27:27 +00:00
curt
a775392e31 Bring lights in in stages as it get's darker. 2000-12-04 23:25:05 +00:00
curt
f14e155533 Tweaks to ground lighting infrastructure. 2000-12-04 22:36:18 +00:00
curt
90d30b023e Generate a set of ground lights when loading a scenery tile. 2000-12-04 22:35:38 +00:00
curt
45564beba8 Fix fog / light punchthrough. 2000-12-04 22:35:10 +00:00
curt
2f9850024a Renamed fg_random -> sg_random. 2000-12-04 05:28:01 +00:00
curt
3f32f2680d Started laying out infrastructure for ground lighting.
Renamed fg_random -> sg_random.
2000-12-04 05:26:40 +00:00
curt
d3c4018baa Started laying out the infrastructure for handling lighting.
Started experimenting with ground lighting.
2000-12-04 05:24:38 +00:00
curt
bb108c7917 Added a hardcoded "LIGHTING" material entry in the matlib.
Fixed a typo in creating textured ssg simple states.
Start looking at a faster method for generating surface lighting based on the
scenery triangles.
2000-12-04 05:23:06 +00:00
curt
39632b90b8 Rewrote the tile scheme to use a "map" structure rather than "vector"
structure.  The new approach is simpler, more flexible, and more dynamics.
We can now dynamically size the tile cache up and down.  Also, the range
of tiles to load is now dependent on visibility and is calculated to always
bring in enough tiles.
2000-12-03 20:15:46 +00:00
curt
11987d96c3 Removed tile radius option. Range of tiles to be loaded is now controled
by the visibility distance.
2000-12-03 20:13:58 +00:00
curt
57a4c79eb5 Moved Time/timestamp.hxx into simgear/timing/timestamp.hxx 2000-11-30 18:43:31 +00:00
curt
bde6c86fce Parse route files by Durk Talsma. 2000-11-28 23:38:24 +00:00
curt
5531230bc7 Fix an autopilot rate of climb bug (meter vs. feet confusion) 2000-11-25 20:54:52 +00:00
curt
b1fbb16b9d Increased FG_MAX_NODES to 4000 2000-11-23 15:48:21 +00:00
curt
3593f3782d Fixes for better control over external aircraft 3d model control. 2000-11-14 20:43:38 +00:00
curt
0f98d21dd7 Nov. 14, 2000 JSBSim updates 2000-11-14 20:31:58 +00:00
curt
aa9fece628 Rearranged includes a touch. 2000-11-13 16:37:38 +00:00
curt
5175227e3b Tweaks. 2000-11-03 23:04:23 +00:00
curt
407dcaff62 Sync with current JSBSim devel code. 2000-11-03 23:02:47 +00:00
curt
7715f7d872 Support aliasing one material name to another. 2000-11-03 20:21:43 +00:00
curt
a6f1e938cd Here are updated IO360.cxx and IO360.hxx files with an alteration to
bring EGT down to a more reasonable range.  EGT is now returned in
deg Fahrenheit (yuk!!) by the accessor function since that is what
the guage is calibrated in, and the absolute max value that can be
output (max power mixture at max power) is about 750 deg F.  Dave, I
suggest that you set the guage to run from 450 - 750 deg F between
the four big marker ticks.  What do the offset and scale actually
refer to in the .xml config file BTW?

Fuel flow, better handling of manifold pressure wrt engine speed, and
proper consideration of altitude effects next, hopefully.
2000-11-02 17:01:09 +00:00
curt
d79bfda33f A couple clean ups ... 2000-11-02 00:59:39 +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
f24b6a4098 More view clean ups. 2000-11-01 22:40:10 +00:00
curt
6786cf9da4 src/GUI/gui.cxx:
- removed Toggle Clouds menu item

src/Main/options.cxx:
- (minor) added some code to sync up options with properties

src/Main/bfi.[ch]xx:
- removed (get|set)Clouds(ASL)?
- removed setSpeedNorth, setSpeedEast, and setSpeedDown -- these are
  all read-only now
- added setAirspeed (for calibrated kt)
- extensive rewrite to support Tony's FDM changes
- rearranged everything in bfi.hxx to mess up Curt's ediff examination
- added properties for setting initial panel position

src/Main/save.cxx:
- reinit the tile cache after restore
2000-11-01 04:51:55 +00:00
curt
8aab71034a Woohoo! some success with external views ... 2000-11-01 04:32:04 +00:00
curt
49aab2af8e Working on lookat views. 2000-11-01 02:30:10 +00:00
curt
1b206c6202 Tweaks. 2000-10-30 15:09:17 +00:00
curt
11a68e55d4 Updates by Tony working on the FDM interface bus. 2000-10-28 16:30:30 +00:00
curt
81bb2f00d1 Added manifold pressure to the property manager. 2000-10-27 22:27:16 +00:00
curt
b83ad15313 Added CHT (cylinder head temp) to BFI and property manager. 2000-10-27 22:00:43 +00:00
curt
b5b0ba5eba This is a somewhat rough first attempt at modelling cylinder head
temperature.  The cylinder head is assumed to be at uniform
temperature.  Obviously this is incorrect, but it simplifies things a
lot, and we're just looking for the behaviour of CHT to be correct.
Energy transfer to the cylinder head is assumed to be one third of the
energy released by combustion at all conditions.  This is a reasonable
estimate, although obviously in real life it varies with different
conditions and possibly with CHT itself.  I've split energy transfer
from the cylinder head into 2 terms - free convection - ie convection
to stationary air, and forced convection, ie convection into flowing
air.  The basic free convection equation is: dqdt = -hAdT   Since we
don't know A and are going to set h quite arbitarily anyway I've
knocked A out and just wrapped it up in h - the only real significance
is that the units of h will be different but that dosn't really matter
to us anyway.  In addition, we have the problem that the prop model
I'm currently using dosn't model the backwash from the prop which will
add to the velocity of the cooling air when the prop is turning, so
I've added an extra term to try and cope with this.

In real life, forced convection equations are genarally empirically
derived, and are quite complicated and generally contain such things
as the Reynolds and Nusselt numbers to various powers.  The best
course of action would probably to find an empirical correlation from
the literature for a similar situation and try and get it to fit well.
 However, for now I am using my own made up very simple correlation
for the energy transfer from the cylinder head:

dqdt = -(h1.dT) -(h2.m_dot.dT) -(h3.rpm.dT)

where dT is the temperature different between the cylinder head and
the surrounding air, m_dot is the mass flow rate of cooling air
through an arbitary volume, rpm is the engine speed in rpm (this is
the backwash term), and h1, h2, h3 are co-efficients which we can play
with to attempt to get the CHT behaviour to match real life.

In order to change the values of CHT that the engine settles down at
at various conditions, have a play with h1, h2 and h3.  In order to
change the rate of heating/cooling without affecting equilibrium
values alter the cylinder head mass, which is really quite arbitary.
Bear in mind that altering h1, h2 and h3 will also alter the rate of
heating or cooling as well as equilibrium values, but altering the
cylinder head mass will only alter the rate.  It would I suppose be
better to read the values from file to avoid the necessity for
re-compilation every time I change them.
2000-10-27 21:33:07 +00:00
curt
cf6022e439 Added a viewmgr system and made corresponding changes to support it. 2000-10-26 21:51:09 +00:00
curt
f519b98e16 Initial revision. 2000-10-26 21:23:38 +00:00
curt
1338b3548c Debug cleanup. 2000-10-26 18:20:55 +00:00
curt
35819b8c4d Check point ... making progress with a FGViewerLookAt class so we can
more easily do nifty external views.
2000-10-26 18:10:28 +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
f4ce3314fd Initial revision. 2000-10-25 22:58:05 +00:00
curt
83ad798898 Removed references to Point3D from FGViewers interface. 2000-10-25 19:46:43 +00:00
curt
470ee55fb7 Continuing work on cleanups.
Removed some commented out chunks of code that no longer make sense to keep
around.
Working on replacing instances of Point3D with sg{d,}Vec3.
2000-10-25 19:27:13 +00:00
curt
6515f9072c Checkpoint commit for cleaning up the FGViewer class. External views are
not working right, but this will hopefully be fixed soon.
2000-10-25 15:27:55 +00:00
curt
d85d899244 Started integrating Jon's doc++ comments. 2000-10-24 21:43:37 +00:00
curt
d475a0c002 Updates to fix a network communication problem. 2000-10-24 17:15:32 +00:00
curt
7cc98ad15f I tested:
LaRCsim c172 on-ground and in-air starts, reset: all work
UIUC Cessna172 on-ground and in-air starts work as expected, reset
results in an aircraft that is upside down but does not crash FG.   I
don't know what it was like before, so it may well be no change.
JSBSim c172 and X15 in-air starts work fine, resets now work (and are
trimmed), on-ground starts do not -- the c172 ends up on its back.  I
suspect this is no worse than before.

I did not test:
Balloon (the weather code returns nan's for the atmosphere data --this
is in the weather module and apparently is a linux only bug)
ADA (don't know how)
MagicCarpet  (needs work yet)
External (don't know how)

known to be broken:
LaRCsim c172 on-ground starts with a negative terrain altitude (this
happens at KPAO when the scenery is not present).   The FDM inits to
about 50 feet AGL and the model falls to the ground.  It does stay
upright, however, and seems to be fine once it settles out, FWIW.

To do:
--implement set_Model on the bus
--bring Christian's weather data into JSBSim
-- add default method to bus for updating things like the sin and cos of
latitude (for Balloon, MagicCarpet)
-- lots of cleanup

The files:
src/FDM/flight.cxx
src/FDM/flight.hxx
-- all data members now declared protected instead of private.
-- eliminated all but a small set of 'setters', no change to getters.
-- that small set is declared virtual, the default implementation
provided preserves the old behavior
-- all of the vector data members are now initialized.
-- added busdump() method -- FG_LOG's  all the bus data when called,
useful for diagnostics.

src/FDM/ADA.cxx
-- bus data members now directly assigned to

src/FDM/Balloon.cxx
-- bus data members now directly assigned to
-- changed V_equiv_kts to V_calibrated_kts

src/FDM/JSBSim.cxx
src/FDM/JSBSim.hxx
-- bus data members now directly assigned to
-- implemented the FGInterface virtual setters with JSBSim specific
logic
-- changed the static FDMExec to a dynamic fdmex (needed so that the
JSBSim object can be deleted when a model change is called for)
-- implemented constructor and destructor, moved some of the logic
formerly in init() to constructor
-- added logic to bring up FGEngInterface objects and set the RPM and
throttle values.

src/FDM/LaRCsim.cxx
src/FDM/LaRCsim.hxx
-- bus data members now directly assigned to
-- implemented the FGInterface virtual setters with LaRCsim specific
logic, uses LaRCsimIC
-- implemented constructor and destructor, moved some of the logic
formerly in init() to constructor
-- moved default inertias to here from fg_init.cxx
-- eliminated the climb rate calculation.  The equivalent, climb_rate =
-1*vdown, is now in copy_from_LaRCsim().

src/FDM/LaRCsimIC.cxx
src/FDM/LaRCsimIC.hxx
-- similar to FGInitialCondition, this class has all the logic needed to
turn data like Vc and Mach into the more fundamental quantities LaRCsim
needs to initialize.
-- put it in src/FDM since it is a class

src/FDM/MagicCarpet.cxx
 -- bus data members now directly assigned to

src/FDM/Makefile.am
-- adds LaRCsimIC.hxx and cxx

src/FDM/JSBSim/FGAtmosphere.h
src/FDM/JSBSim/FGDefs.h
src/FDM/JSBSim/FGInitialCondition.cpp
src/FDM/JSBSim/FGInitialCondition.h
src/FDM/JSBSim/JSBSim.cpp
-- changes to accomodate the new bus

src/FDM/LaRCsim/atmos_62.h
src/FDM/LaRCsim/ls_geodesy.h
-- surrounded prototypes with #ifdef __cplusplus ... #endif , functions
here are needed in LaRCsimIC

src/FDM/LaRCsim/c172_main.c
src/FDM/LaRCsim/cherokee_aero.c
src/FDM/LaRCsim/ls_aux.c
src/FDM/LaRCsim/ls_constants.h
src/FDM/LaRCsim/ls_geodesy.c
src/FDM/LaRCsim/ls_geodesy.h
src/FDM/LaRCsim/ls_step.c
src/FDM/UIUCModel/uiuc_betaprobe.cpp
-- changed PI to LS_PI, eliminates preprocessor naming conflict with
weather module

src/FDM/LaRCsim/ls_interface.c
src/FDM/LaRCsim/ls_interface.h
-- added function ls_set_model_dt()

src/Main/bfi.cxx
-- eliminated calls that set the NED speeds to body components.  They
are no longer needed and confuse the new bus.

src/Main/fg_init.cxx
-- eliminated calls that just brought the bus data up-to-date (e.g.
set_sin_cos_latitude). or set default values.   The bus now handles the
defaults and updates itself when the setters are called (for LaRCsim and
JSBSim).  A default method for doing this needs to be added to the bus.
-- added fgVelocityInit() to set the speed the user asked for.  Both
JSBSim and LaRCsim can now be initialized using any of:
vc,mach, NED components, UVW components.

src/Main/main.cxx
--eliminated call to fgFDMSetGroundElevation, this data is now 'pulled'
onto the bus every update()

src/Main/options.cxx
src/Main/options.hxx
-- added enum to keep track of the speed requested by the user
-- eliminated calls to set NED velocity properties to body speeds, they
are no longer needed.
-- added options for the NED components.

src/Network/garmin.cxx
src/Network/nmea.cxx
--eliminated calls that just brought the bus data up-to-date (e.g.
set_sin_cos_latitude).  The bus now updates itself when the setters are
called (for LaRCsim and JSBSim).  A default method for doing this needs
to be added to the bus.
-- changed set_V_equiv_kts to set_V_calibrated_kts.  set_V_equiv_kts no
longer exists ( get_V_equiv_kts still does, though)

src/WeatherCM/FGLocalWeatherDatabase.cpp
-- commented out the code to put the weather data on the bus, a
different scheme for this is needed.
2000-10-24 00:34:50 +00:00
curt
c67e0467b4 Tweaks. 2000-10-23 20:27:41 +00:00
curt
94b78153eb Updates to track more consistant naming scheme in simgear. 2000-10-23 17:10:06 +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
445c4bbdb1 I guess we have to ref() ssgStateTable as well as ssgSimpleState. 2000-10-18 07:03:49 +00:00
curt
806511bd99 Added ref() count increment calls to all ssgSimpleState creation to prevent
them from being delete by ssg once nothing in the scene graph points to them.
2000-10-18 00:48:12 +00:00
curt
d4194eea12 Add #include <string.h> since js.h doesn't (but should.) 2000-10-18 00:47:18 +00:00
curt
926470f44a Doh! typo in a the file name. 2000-10-16 21:53:45 +00:00
curt
ff8c2cc9a0 Added a missing patch ... 2000-10-16 20:54:48 +00:00
curt
ae1028b795 Added #include <math.h> for fabs() 2000-10-16 20:47:47 +00:00
curt
0750b9d34f Renamed new FGEngine to FGNewEngine to avoid conflict with stuff in JSBSim. 2000-10-16 20:01:23 +00:00
curt
e178af50f0 Check result of cur_fdm_state->init() and die if it fails. 2000-10-16 14:55:34 +00:00
curt
47c3f41828 Check return value of FDM::init().
Updated other return values to be bool instead of int.
2000-10-16 14:54:41 +00:00
curt
972bf22630 Friday the 13th JSBSim update ... :-0 !!! 2000-10-14 02:10:10 +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
fb2d013c4e Minor tweaks. 2000-10-12 01:08:22 +00:00
curt
df0228e019 Tweaks and massaging relative to the new waypoint route management system.
You can now specify waypoint on the command line with --wp=ID[,alt]
2000-10-12 01:08:09 +00:00
curt
6d6bf8ed5a Updates to Autopilot menu to support new SGRoute manager. 2000-10-12 01:06:55 +00:00
curt
72a09d198c Updates to track current JSBSim cvs. 2000-10-12 01:06:31 +00:00
curt
f5cc3b9b9c Lot's of massaging to get the WAYPOINT hold mechanism to work with the
new SGRoute manager.  Changed logic and gui a bit to match.
2000-10-12 01:06:07 +00:00
curt
1e5e2eb36e Changes to support new simgear waypoint module. 2000-10-11 00:18:26 +00:00
curt
7c38f172d9 Some tweaks relating to engines and the various LaRCsim related fdm's 2000-10-10 20:31:20 +00:00
curt
0fc90cfc56 Separated out "VERSION" into it's own include file. 2000-10-10 19:47:34 +00:00
curt
c64a964956 Added keyboard mappings to move panel up/down/right/left. 2000-10-10 17:45:04 +00:00
curt
6caf599f2b Oct. 10, 2000 sync with JSBSim master repository. 2000-10-10 17:44:35 +00:00
curt
b2d7a4e27a Fixed a small bug in the engine lookup of bfi that is currently crashing
with jsbsim since no engine is currently created.  This will all have to be
revamped in the future, but jsbsim has the structure for doing engines so
that is good.
2000-10-09 21:17:39 +00:00
curt
b85ea575a3 Oct. 9, 2000 - synced with latest JSBsim code. 2000-10-09 21:16:21 +00:00
curt
599625eeec Fixed an altitude setting bug. 2000-10-09 20:33:53 +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
981d4dbd7d Properties:
- /engines/engine0/rpm changed to read-only
- /engines/engine0/egt added (read-only)
- /controls/mixture added
- /controls/propellor-pitch added (not used for C172)

BFI:

- getEGT() added
- getMixture() and setMixture() added
- getPropAdvance() and setPropAdvance() added (= pitch)
- cleaned up reinit function a bit
- force reinit only when values are actually changed; for example,
  setting the flight model to the current flight model will not cause
  a reinit

LaRCSim:

- hook up mixture and pitch to FGControls (they were hard-coded
  before)
2000-10-04 22:52:34 +00:00
curt
b6d0402074 Properties:
- /engines/engine0/rpm changed to read-only
- /engines/engine0/egt added (read-only)
- /controls/mixture added
- /controls/propellor-pitch added (not used for C172)

BFI:

- getEGT() added
- getMixture() and setMixture() added
- getPropAdvance() and setPropAdvance() added (= pitch)
- cleaned up reinit function a bit
- force reinit only when values are actually changed; for example,
  setting the flight model to the current flight model will not cause
  a reinit

LaRCSim:

- hook up mixture and pitch to FGControls (they were hard-coded
  before)
2000-10-04 22:22:21 +00:00
curt
4e3abe851b Trial support for texture sets with varying resolution. 2000-10-04 20:51:57 +00:00
curt
63bbe7de75 Working on a new protocal that allows you to remotely browse, examine, and
change items in the property manager.
2000-10-04 20:51:12 +00:00
curt
df31c5893e Die if I/O Channel config fails for any reason.
Add an I/O Shutdown function call that explicitely closes all the open channels.
2000-10-04 20:50:38 +00:00
curt
3dde95059d Close all iochannel connections on exit. 2000-10-04 20:49:44 +00:00
curt
21a5886bcb Oct 2, 2000 JSBSim sync. 2000-10-02 23:07:30 +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
df26bde4c4 Updates from Christian Mayer to put some of the weather data "on the bus." 2000-09-30 03:55:57 +00:00
curt
8d1295119f Updates from David Megginson relating to the property manager. 2000-09-30 03:35:38 +00:00
curt
83d06fb4d6 Tie the engine0 rpm to the property manager. 2000-09-29 22:02:32 +00:00
curt
137da58a70 Working on putting engine data on "the bus" 2000-09-29 03:27:21 +00:00
curt
6d4e03361a Updates to IO360 engine model: Added a couple of guestimates for engine
and prop inertia and passed the timestep from LaRCsim in order to have
the engine rpm behaving according to the applied torque and the laws of
physics.
2000-09-28 22:49:33 +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
75c77d9e53 Initial revision. 2000-09-26 23:37:26 +00:00
curt
4b6b2bc06d Minor changes to several includes to allow out of source tree builds. 2000-09-26 21:44:52 +00:00
curt
a9ab25ddd1 Changes from David Megginson in support of an xml based configuration file. 2000-09-25 21:41:50 +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
f2d507fbd5 Tweaks for new panel invocation. 2000-09-21 20:09:12 +00:00
curt
dcf9dd9a1b Fixed another array overrun type bug. 2000-09-21 20:08:51 +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
02def51a97 Tweaks to handle latest airport data file from Robin Peel. 2000-09-20 23:26:17 +00:00
curt
62742cb880 Joystick fixes from Tony. 2000-09-20 20:35:49 +00:00
curt
7286224210 Change A* and B* variables to lowercase to avoid conflicting defines with
Irix includes.
2000-09-20 16:17:42 +00:00
curt
18f5bbd027 Grab max texture size in case we want to use it later ... 2000-09-18 21:02:59 +00:00
curt
f47fb1e1c2 Added a function to query the current size of the tile load queue. 2000-09-15 19:28:45 +00:00
curt
f21847b3c2 bfi load/save fix from David.
Added an initial freeze on startup so that we can try to avoid bouncing the
plane on it's back during the very low frame rate / scenery loading startup
conditions.
2000-09-15 19:28:26 +00:00
curt
68d96bfcb1 Added .h flags so the they are included in the distribution. 2000-09-15 19:25:18 +00:00
curt
5fe2a48c7e Tweaks to the runfgfs.bat script. 2000-09-14 17:36:39 +00:00
curt
13bba6c88d Tweaks to ground steering sensitivity. 2000-09-14 17:36: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
655ce0e20d MACOS -> macintosh 2000-09-10 00:04:50 +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
b4b46df9a8 Ooops, shouldn't call a program "ps". 2000-09-08 14:35:23 +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
517d111c5c Sep 1 2000 updates from the UIUC team. 2000-09-06 19:52:37 +00:00
curt
dd2fc3141a Fixed whiskey compass. 2000-09-06 17:43:45 +00:00
curt
64719b3da1 Initial revision. 2000-09-06 15:45:43 +00:00
curt
3d47d2284e Tweaks ... 2000-09-06 00:11:01 +00:00
curt
b48424236b Tweaks relating to texture repeating effects for runways and disabling mipmaps
(experimental).
2000-09-06 00:10:50 +00:00
curt
d60f4d4852 A couple tweaks from David Megginson relating to his new panel data file
support.
2000-09-06 00:09:32 +00:00
curt
50b74acd95 Default to not using new engine code ... 2000-09-06 00:09:02 +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
ed9fcb74b7 Updates to trial engine model. 2000-08-29 03:15:51 +00:00
curt
306f01c41a Updates to test the 10520 engine code. 2000-08-28 21:31:28 +00:00
curt
fa000a3447 Starting to play around with an engine model. 2000-08-28 20:39:55 +00:00
curt
faeb25940e Add support in materials file for non-repeating textures. 2000-08-25 05:53:12 +00:00
curt
927aa90378 Force glEnable(GL_DEPTH_TEST) for scenery rendering. 2000-08-22 04:45:31 +00:00
curt
1ad9f1b59e Fixed a small bug in runway closeness logic. 2000-08-17 14:58:13 +00:00
curt
72b0ac307d Setting airport position from within flightgear now also takes advantage
of the new runway positioning code.
2000-08-16 20:16:09 +00:00
curt
26bdfd033b Initial revision. 2000-08-16 04:40:29 +00:00
curt
890ac4d237 Initial revision. 2000-08-16 01:28:33 +00:00
curt
535ed92264 Added code to put aircraft at the end of the runway closest to the desired
heading.  Only changed for initial position right now.
2000-08-16 00:09:03 +00:00
curt
f89d86d4af Updates and tweaks for Oliver's multi-player networking code. 2000-08-14 20:12:17 +00:00
curt
bc6d6fbf50 Fixed a problem with the sound hack ... code was using a value that was never
initialized or updated ... switched to a different value that was both
initialized and updated ... :-)
2000-08-11 20:25:30 +00:00
curt
0537a0ac84 Norman's changes to make the current scenery normal available. 2000-08-09 21:35:17 +00:00
curt
5103729ca0 Updates to use new SGMagVar class from simgear. 2000-08-08 00:39:52 +00:00
curt
342842537d Fixes to jsbsim. 2000-08-04 16:08:55 +00:00
curt
120b26cc88 20000803 updates. 2000-08-04 03:20:09 +00:00
curt
8ec5fd715b Fix to time initialization (based on position) code 2000-07-31 15:05:46 +00:00
curt
76b4de7f1f Updates to JSBSim. 2000-07-31 15:05:08 +00:00
curt
6a98486375 JSBSim updates.
Updates to put more internal JSBSim values on the "bus".
2000-07-25 21:41:59 +00:00
curt
273efc8729 Renamed JSBsim to JSBSim ... 2000-07-24 17:27:12 +00:00
curt
64d6f149e0 Sync the JSBSim code with the Jon & Tony's devel version.
Renamed JSBsim -> the official JSBSim.
2000-07-24 17:26:05 +00:00
curt
941f27c9a0 Updates to move scenery initialization earlier in the initialization
sequence so that the FDM can know the current ground altitude when it is
initialized.
2000-07-23 21:32:59 +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
3d96949058 Updates for 0.7.5 2000-07-22 23:34:28 +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
81b266aa4a Try to set initial position in a bit more intelligent way (and earlier in
the process so time initialization can have a chance to work.)
2000-07-21 22:54:14 +00:00
curt
f463846760 Use more common joystick mappings for default. 2000-07-20 04:26:50 +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
3e98fcf671 Fix to a nagging portability problem. 2000-07-17 18:24:33 +00:00
curt
dbd8342e14 Renamed the property manager stuff from fg* to sg* 2000-07-14 23:34:21 +00:00
curt
a7357e2de0 Autopilot altitude increment fixes.
Screen snapshot fixes.
$FG_SCENERY fixes
FGIOChannel api tweaks.
2000-07-14 21:19:18 +00:00
curt
71747eb892 Added support for $FG_SCENERY and --fg-scenery=path 2000-07-14 16:57:55 +00:00
curt
f134adfc6a Tweaks to build with newest gcc under Irix contributed by Erik Hofman. 2000-07-14 16:08:46 +00:00
curt
4dcd4cda79 Joystick updates from David Megginson to add the beginnings of button support. 2000-07-14 15:46:27 +00:00
curt
4f19d10485 Tweaks to go along with changes in SGSocket. 2000-07-14 00:50:56 +00:00
curt
4c0a3b3db4 Moved iochannel stuff over into SimGear. 2000-07-11 20:40:12 +00:00
curt
b29a72a5bc SGTime tweaks. 2000-07-08 22:11:00 +00:00
curt
342554fadb Fix up simulator freeze functionality. 2000-07-08 06:29:19 +00:00
curt
6bd02587aa Tidying up the SGEphemeris class. 2000-07-08 05:09:24 +00:00
curt
c65cd3254b More tidying up of SGTime. 2000-07-07 23:56:43 +00:00
curt
312626c5f0 Hopefully final time cleanups. 2000-07-07 21:52:45 +00:00
curt
436db30053 More SGTime tidying. 2000-07-07 20:28:51 +00:00
curt
6654ae5f49 Initial revision. 2000-07-07 17:27:53 +00:00
curt
f9b28c103d Updates to go along with SGTime tweaks in SimGear. 2000-07-07 17:27:37 +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
9d47a64a09 Updates from Jon's official CVS tree. 2000-07-06 21:02:46 +00:00
curt
e7d90b98d2 Rewrite from David Megginson to use property registry to allow the joystick
to be runtime configurable.
2000-07-06 16:26:56 +00:00
curt
92dd898110 Initial revision. 2000-07-05 17:04:08 +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
efe5654b8b Moved sky code over to simgear.
Added David Megginsons property manager.
2000-07-03 20:09:56 +00:00
curt
03f703cea0 Oops, a couple more sky tweaks. 2000-06-30 23:51:11 +00:00
curt
db6da3a896 Various odds and ends tweaks. 2000-06-30 21:46:41 +00:00
curt
4c72f1df98 Updates to cloud code to add different basic cloud types. This isn't the
final list of cloud types, but servers as an example / template for someone
who wants to tweak this out and do it right.
2000-06-23 04:55:55 +00:00
curt
33bfe7587d Rewrites of material.[ch]xx and materialmgr.[ch]xx 2000-06-23 02:59:03 +00:00
curt
39ae3864de Cleaned up all the old fragment and material_mgr stuff which originated
from the pre-ssg / render everything ourselves days.  Replaced with a
material library manager that is much better suited for working in the
context of ssg.  This simplified and cleaned up a ton of old junk.
2000-06-23 00:30:04 +00:00
curt
276a1d5221 A couple more cloud tweaks. 2000-06-20 23:44:03 +00:00
curt
291d72d4be Updating cloud code. 2000-06-20 22:31:47 +00:00
curt
86af8c519a Lighting tweaks. 2000-06-20 04:50:00 +00:00
curt
cb1d2d96d1 Fix for reset/reloading tiles. 2000-06-20 04:48:12 +00:00
curt
2ec4d6782e Rearranging some code. 2000-06-20 02:29:58 +00:00
curt
6a6e829dd1 Changing the way clouds are handled. 2000-06-20 02:29:31 +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
bb61414e04 Initial revision. 2000-06-16 02:15:08 +00:00
curt
cd1a471f7e Updates, optimizations, and restructures from Norman Vine. 2000-06-15 22:32:26 +00:00
curt
0f4ff744c6 Patch from Oliver. 2000-06-15 22:31:57 +00:00
curt
fa3cbdb2f8 Updates from Alex for his motion chair project. 2000-06-15 22:31:40 +00:00
curt
fb8baab76d View code simplifications and optimizations contributed by Norman Vine. 2000-06-15 22:31:20 +00:00
curt
a586378692 Stubbed in some radio settings for Alex. 2000-06-15 22:30:48 +00:00
curt
c8a0114406 Start of a ascii-file configurable joystick module. 2000-06-15 18:49:42 +00:00
curt
1882fb0119 Patches and tweaks from Alex. 2000-06-15 18:36:13 +00:00
curt
ca3fd98b5c Tony Peden: fixed Mach number for LaRCsim. 2000-06-14 21:52:22 +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
dcdd61c590 Added differential braking (Alex and David). 2000-06-12 20:52:36 +00:00
curt
2d4cd1b24d Added support back in for raw triangle faces in the object file. 2000-06-06 00:33:30 +00:00
curt
838c4a684c A few enhancements to allow object definitions to reference new textures
on the fly.
2000-06-02 23:37:40 +00:00
curt
a371fe4e6d Minor fiddling with material properties *trying* to chase down a visual bug
where the scene get's brighter or dimmer depending on whether or not the sun
or moon is in the field of view.
2000-06-01 21:14:06 +00:00
curt
6cb91111d8 Added a get_type() to the iochannel class so the protocol code can optionally
impliment different behavior depending on the channel that's being used.
2000-06-01 21:13:26 +00:00
curt
818a462a02 Replaced Durk's mymath.* with plib/sg.h (contributed by Durk). 2000-05-30 20:51:47 +00:00
curt
252cb48f44 Swapped throttle and rudder axes. 2000-05-30 17:23:57 +00:00
curt
1e5c61fcbd Alex Perry has added support for Ray Woodworth's motion chair which has
3-5 axes installed.
2000-05-30 17:01:09 +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
0786793f42 05/30/2000 updates from Jon Berdnt. Landing gear code now is beginning to
work.
2000-05-30 16:48:52 +00:00
curt
febc9cf0b2 First quick hack at panel shading. 2000-05-27 06:40:55 +00:00
curt
d4d10fad6b Replaced gdbm with metakit. Involves a new simgear version and a new database
format for the airports in the base package.
2000-05-27 05:54:02 +00:00
curt
e12e81dd23 5/26/2000 updated from Jon and Tony. 2000-05-27 05:48:14 +00:00
curt
b074559216 MSVC5 portability changes contributed by Bruce Finney. 2000-05-24 06:10:01 +00:00
curt
d423fa9337 MSVC5 Compatibility tweaks. 2000-05-24 04:27:28 +00:00
curt
b543d8291e Fixes to uiuc includes and initialization.
Fixes to fg_io.cxx periodic scheduler.
2000-05-23 22:08:00 +00:00
curt
9835072241 From Tony Peden:
This set of changes cleans up my previous ones quite a bit:
[tony@valkyrie FlightGear]$ tar -ztf tp_changes.tgz
src/Controls/controls.cxx
src/Controls/controls.hxx
src/FDM/JSBsim.cxx
src/Main/fg_init.cxx
src/Main/options.cxx
src/Main/options.hxx
src/Joystick/joystick.cxx

controls.[ch]xx:  removed the trimmed_throttle stuff.  This undoes the
                  changes I submitted last time.

JSBsim.cxx:       updates for the removal of the trimmed_throttle stuff

fg_init.cxx:      removed the autothrottle logic.  The autothrottle is now
off
                  by default.

options.[ch]xx:   Sets trim_mode to false by default.  It is enabled only
                  when --notrim is not used and JSBsim is the FDM.

joystick.cxx:     Added logic for syncing the throttle lever.  This is
                  only enabled when trim_mode is enabled.   The way I
                  did it is, I hope, a good way of going about it.

I tested:
fgfs --fdm=larcsim
fgfs --fdm=jsb --aircraft=c172 --vc=100 --altitude=500
fgfs --notrim --fdm=jsb --aircraft=c172 --vc=100 --altitude=500

All work as intended, at least for me.

Make sure your joystick is calibrated and give:
fgfs --fdm=jsb --aircraft=c172 --vc=100 --altitude=500
a try, I think you just might be impressed.

I am. ;-)
2000-05-19 16:29:23 +00:00
curt
2f22748275 Fixes from David Megginson for save/restore. 2000-05-19 16:14:37 +00:00
curt
466c7ec5dc Fix so that we don't attempt a phantom trim on the larcsim flight model at
startup.
2000-05-17 03:53:36 +00:00
curt
f886e46623 Fixes to magnetic compass.
Fixed a typo in disabling autothrottle.
2000-05-16 23:00:31 +00:00
curt
fb2a4f6909 Updates from Jon (addendum to previous changes). 2000-05-16 22:43:58 +00:00
curt
c4a1cc047e Updates from the Jon and Tony show.
Tony submitted:

JSBsim:
Added trimming routine, it is longitudinal & in-air only at this point
Added support for taking wind & weather data from external source
Added support for flaps.
Added independently settable pitch trim
Added alphamin and max to config file, stall modeling and warning to
follow

c172.cfg:
Flaps!
Adjusted Cmo, model should be speed stable now

FG:
Hooked up Christian's weather code, should be using it soon.
Hooked up the trimming routine.  Note that the X-15 will not trim.
  This is not a model or trimming routine deficiency, just the
  nature of the X-15
The trimming routine sets the pitch trim and and throttle at startup.
The throttle is set using Norman's code for the autothrottle so the
autothrottle is on by default.  --notrim will turn it off.
Added --vc, --mach, and --notrim switches
      (vc is airspeed in knots)
uBody, vBody, and wBody are still supported, last one entered
on the command line counts, i.e. you can set vc or mach or u,v,
and w but any combination will be ignored.
2000-05-16 21:35:11 +00:00
curt
90707efd3f Changes by David Megginson. 2000-05-16 18:21:08 +00:00
curt
e8d1596ec7 Added cur_radius (radius in meters from the center of the earth) to the
current terrain elevation structure.
2000-05-15 18:19:17 +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
519996f34d Changes contributed by Tony Peden to put wind data "on the bus". 2000-05-11 19:17:33 +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
109088a84e Updated save file and bfi code from David Megginson. 2000-05-06 21:47:53 +00:00
curt
b603674b92 Fix gui parameter adjuster. 2000-05-04 17:09:42 +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
977917a612 Initial revision (is this the best place for this?) 2000-05-03 03:02:30 +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
ea80ed959e Partial JSBsim update. 2000-05-02 18:25:30 +00:00
curt
921beb96d7 First stab at NAV1 and GS hold modes for the autopilot. 2000-04-30 22:21:47 +00:00
curt
b62900e44c Minor autopilot/gui tweaks. 2000-04-30 07:33:11 +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
2aefd15f74 Added getAGL() 2000-04-28 20:08:22 +00:00
curt
1868e44ee4 0429 updates from Jon. 2000-04-28 19:59:46 +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
949fc00815 MacOS build updates. 2000-04-27 21:57:08 +00:00
curt
39f4bea43e Fixes for cygwin32 builds. 2000-04-27 03:26:36 +00:00
curt
f7891be922 Initial revision. 2000-04-26 00:35:14 +00:00
curt
e9b2b521ca April 25, 2000 updates from Jon. 2000-04-25 17:43:40 +00:00
curt
8f71890c08 April 25 updates to JSBsim by Jon. 2000-04-25 17:42:11 +00:00
curt
ff8e6b9e28 Tweaks to navaid database loading. 2000-04-25 17:33:13 +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
9a3b25e4fa cygwin32 fixes by norman vine. 2000-04-24 23:52:13 +00:00
curt
8f1c10a746 Fix a bug with converting frequencies to "int". 2000-04-24 23:51:56 +00:00
curt
8f21c91edf Moved main.o to beginning of link line.
Initialize navaid databases.
2000-04-24 23:51:26 +00:00
curt
56ad909452 Begin adding radio stack functionality. 2000-04-24 23:50:59 +00:00
curt
c7cac5893f Added new section of JSBsim. 2000-04-24 23:49:37 +00:00
curt
ad4416e143 Updated JSBsim code. 2000-04-24 23:49:06 +00:00
curt
6dba794faa Added fix routines. 2000-04-21 18:30:59 +00:00
curt
abc61895ed Added ils loader. 2000-04-21 18:00:47 +00:00
curt
a759908c76 More name changing. 2000-04-21 16:42:01 +00:00
curt
6b7353598b Renamed files. 2000-04-21 16:03:36 +00:00
curt
afcf4d4324 Tweaks. 2000-04-21 05:27:13 +00:00
curt
ce86c83222 Basic query routine now working. 2000-04-21 05:26:24 +00:00
curt
96a8cc0fff Whups didn't mean to add this, removed. 2000-04-21 04:31:18 +00:00
curt
f83731630c Updates to add in navaid management code. 2000-04-21 04:20:35 +00:00
curt
7a16ec4fb4 Start of code to load, manage, and query the navaid database. 2000-04-21 04:19:22 +00:00
curt
96c20e6532 Added custom joystick client support so that flight gear can read values
being shipped over from a separate joystick server.
2000-04-19 21:22:16 +00:00
curt
f03cfb6b4a Initial revision. 2000-04-19 21:20:44 +00:00
curt
336aee09c4 Added one more missing include file. 2000-04-13 17:42:09 +00:00
curt
4139964eb2 Fixed a syntax error (stray space). 2000-04-12 19:05:41 +00:00
curt
6660bb4788 Added all .h files to Makefile.am so they can be included in the distribution. 2000-04-12 17:43:58 +00:00
curt
12168687cb Changes by Tony Peden to get pitch, roll, and yaw rates onto the "bus." 2000-04-11 21:45:42 +00:00
curt
a0ed3977ce Comment some debugging output. 2000-04-11 20:38:45 +00:00
curt
1f1b2bab50 David Megginson made a few (mostly minor) mods to the LaRCsim files, and
it's now possible to choose the LaRCsim model at runtime, as in

  fgfs --aircraft=c172

or

  fgfs --aircraft=uiuc --aircraft-dir=Aircraft-uiuc/Boeing747

I did this so that I could play with the UIUC stuff without losing
Tony's C172 with its flaps, etc.  I did my best to respect the design
of the LaRCsim code by staying in C, making only minimal changes, and
not introducing any dependencies on the rest of FlightGear.  The
modified files are attached.
2000-04-10 20:09:40 +00:00
curt
d9c7848ed7 Replaced all instances sgMultMat4 with sgPre/PostMultMat4 to avoid bug and
fix discrepancy in plib.
2000-04-04 05:49:05 +00:00
curt
616610a962 Removed all sgMultMat4 in favor of Pre/PostMultMat4. Steve says there is
an error in MultMat4 that isn't found in Pre/Post.  He wants to fix it which
means different versions of plib could work differently from each other.
2000-04-04 05:46:37 +00:00
curt
7db09cfd2f Build gdbm database from original text file. 2000-03-29 20:23:28 +00:00
curt
3b34980556 Updates to simple.[ch]xx to use gdbm to look up airport values. 2000-03-29 20:21:31 +00:00
curt
19d2b1a314 Updated for magvar calculations. 2000-03-29 00:15:58 +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
a2f328c8a8 A couple more tweaks to get UIUC flight model stuff to work. 2000-03-23 03:28:54 +00:00
curt
bd969d8e11 tweaks. 2000-03-23 00:14:37 +00:00
curt
0b69d5a107 Initial revision. 2000-03-22 22:08:16 +00:00
curt
8f3aa1bebd UIUC flight model contribution. This is based on LaRCsim, but can read
the aircraft parameters from a file.  It still uses Tony's <crappy> (and I
mean that in a constructive way) gear model. :-)
2000-03-22 22:01:33 +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
314a1dd9dd Moved src/Astro to src/Ephemeris 2000-03-16 23:19:39 +00:00
curt
10ceaa4ba0 *** empty log message *** 2000-03-16 23:03:05 +00:00
curt
84c64c8cc3 Removed dependencies on Astro/solarsystem.*
Pass star and planet data to Sky module.
2000-03-16 23:01:57 +00:00
curt
dc01e3f8d2 tweaks. 2000-03-16 04:23:24 +00:00
curt
4deab11ed6 Tweaks to reduce module interdependencies.
Additional sun and moon position values calculated from new FGEphemeris class.
2000-03-16 04:18:24 +00:00
curt
b00c41ab45 Slight updates to material properties. 2000-03-16 04:15:47 +00:00
curt
7ada12ed09 Updates for ssg solarsystem/sky model. Includes changes to Time, Light, and
initialization sequences.
2000-03-16 04:15:22 +00:00
curt
52039b1fe5 Working on ssg-ifying sky. 2000-03-06 23:29:24 +00:00
curt
8d27e09b91 Pass NULL for ColourArray when creating cloud objects. 2000-03-06 23:28:52 +00:00
curt
28f17b1052 Updates for sky rendering. 2000-03-06 23:28:43 +00:00
curt
359b9507b1 Working on drawing sun and sun halo. 2000-03-03 00:07:23 +00:00
curt
02732b23f8 Sun now correctly placed in sky and correctly colored. 2000-03-02 19:20:54 +00:00
curt
f874d4a94f Working on separating out ephemeris code from the actual rendering code
which I am trying to ssg-ify at the same time.
2000-03-02 13:51:31 +00:00
curt
e6d5923ad0 Separating out the Sky rendering as a separate unit and ssg-ifying it. 2000-03-02 03:03:16 +00:00
curt
7cfecd71a3 Tweaks related to updating skydome colors. 2000-03-01 00:32:09 +00:00
curt
a50dc5af73 Forgot to include ssg.h 2000-03-01 00:31:56 +00:00
curt
8f3f9bd264 Cygwin fixes. 2000-03-01 00:31:46 +00:00
curt
138863b3e2 Working on skydome ... some actual progress has been made. :-) Still
something goofy with sunrise, sunset effects.
2000-03-01 00:31:35 +00:00
curt
cb071f4e56 Continuing work on ssg-ifying the sky dome. 2000-02-29 17:13:02 +00:00
curt
749462f9bb Make NetworkOLK optional even if compiled in. 2000-02-28 04:16:12 +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
cb4164c5e1 Added an #include <glut.h> to pick up the FLT_MAX definition. 2000-02-21 18:05:42 +00:00
curt
b98a3093c6 It makes things easier to have this file already seeded after a cvs co. 2000-02-21 18:05:04 +00:00
curt
ac9491e386 Converted ssgVTable's to ssgVtxTable's which manage their own memory and
will hopefully be a step towards using compiled vertex arrays.
2000-02-20 05:19:15 +00:00
curt
becffdbce9 A blind attempt to fix the errno problem for the cygwin people. 2000-02-20 04:08:12 +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
b23d8f9938 A few remaining reorg changes. 2000-02-17 23:34:30 +00:00
curt
1294aed465 One more pass at a reorg. 2000-02-16 23:01:03 +00:00
curt
274bdfd1eb More reorganization. 2000-02-15 20:46:04 +00:00
curt
ee4433c312 Moved here at least for now. 2000-02-15 17:13:45 +00:00
curt
afdda1c821 Added. 2000-02-15 06:12:40 +00:00
curt
485230b443 Code reorganization. 2000-02-15 03:30:01 +00:00
curt
7f9c6d72ab Added a load/save state function contributed by David Megginson. 2000-02-11 22:27:23 +00:00
curt
9a207fb4e1 MacOS fixes contributed by Darrell Walisser on 1/26/2000. 2000-02-10 23:37:56 +00:00
curt
de21d794a7 Minor code shuffling. 2000-02-10 23:36:44 +00:00
curt
095c069b39 Updated for plib-1.1.x 2000-02-04 22:50:04 +00:00
curt
d70120752c Read all pending messages. 2000-01-21 18:02:19 +00:00
curt
fa16790a9b Fixed a comment typo. 2000-01-21 18:01:57 +00:00
curt
85ac481272 17 Jan 2000 updates from Vader@t-online.de (Christian Mayer) 2000-01-18 18:32:35 +00:00
curt
e61785f83b 2000 17 Jan updates from "Oliver Delise" <delise@mail.isis.de> 2000-01-18 18:28:51 +00:00
curt
e7c6f292a5 The aircraft model used for external views was being included in the height
above terrain check so when the view position and the aircraft model collided
the current altitude kept getting pushed up to compensate, but of course the
aircraft model would get pushed up as well because it tracks the current
aircraft position and orientation.  Thus you had a never ending cycle ...
2000-01-13 20:12:16 +00:00
curt
b89675ceb8 One final rearrangement tweak. 2000-01-13 17:32:30 +00:00
curt
a056d93a99 13 Dec 2000 updates from Oliver. 2000-01-13 17:27:32 +00:00
curt
3ae06c157e A couple tweaks. 2000-01-12 18:40:04 +00:00
curt
fc008f9a34 Added new GUI changes for Oliver's Network code.
Moved Oliver's network stuff to his own subdir: NetworkOLK.
2000-01-12 18:09:54 +00:00
curt
fd48bdb9f2 Moved Oliver's network stuff to his own subdir: NetworkOLK. 2000-01-12 18:09:35 +00:00
curt
a93e97c438 Moved to NetworkOLK and updated. 2000-01-12 17:53:10 +00:00
curt
c665ace281 Moved Oliver's multi-pilot network code to NetworkOLK/ 2000-01-12 17:30:20 +00:00
curt
0e1c43e8e5 Jan 11, 2000 changes from Jon. 2000-01-11 17:26:43 +00:00
curt
6e14da1e16 Corrected a comment. 2000-01-10 21:07:52 +00:00
curt
58e1bc7698 Updates to propogate V_calibrated_kts and Mach from all FDM codes. 2000-01-10 21:07:26 +00:00
curt
c722481805 Updates from Jon and Tony. 2000-01-10 21:07:00 +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
226b8a8971 Here is a wrap-up of the latest changes to JSBSim. It still is flaky, but
much less so due to returning the aero reference point stuff to the config
files. Don't know what happened there ...

Additionally, I have added a new field to the config file: CFG_VERSION. A
version number, currently 1.1, is assigned to the config file and a matching
definition is found in FGDefs.h. The two need to match. Tony has also added
code into FGAircraft.cpp to handle if aero reference point is not specified.
1999-12-30 18:01:59 +00:00
curt
871e4e8319 Updates to help work the kinks out of JSBsim. 1999-12-30 17:42:24 +00:00
curt
817279c7a8 Removed libVoronoi.a
Added Ctrl-U key binding to force an instant altitude gain of 1000'.
1999-12-23 19:38:40 +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
46b65bcab2 Fixed abs() vs. fabs() typo. 1999-12-23 17:35:10 +00:00
curt
4c0f52af83 21.12.1999 Christian Mayer: Added a fix for compatibility to gcc 2.8 which
suggested by Oliver Delise.
1999-12-23 17:17:48 +00:00
curt
210e87ec3a The WeatherDatabase doesn't need the voronoi code anymore but uses
Dave Eberly's spherical interpolation code (found in the Lib/Math
directory). So it would be great if you could give him also a place
in the thanks file.  Changing the WeatherDatabse made actually a heavy
internal redesign necessary but no code outside the database is
affected (isn't code hiding great?).
1999-12-23 16:54:54 +00:00
curt
1963e006c3 Removed for this version of weather code. 1999-12-23 16:49:30 +00:00
curt
5c487a7803 Allow JSBsim aircraft model file to be specified from the command line. 1999-12-20 20:26:18 +00:00
curt
3cca59bf1f Allow aircraft model file to be specified from the command line. 1999-12-20 20:25:58 +00:00
curt
9892d4f03e Initial revisions. 1999-12-20 20:25:13 +00:00
curt
c319dac02a Updates from the Jon and Tony show. 1999-12-20 20:24:49 +00:00
curt
797fb48d03 Playing around with altitude hold settings. 1999-12-13 21:44:21 +00:00
curt
5d302f0f2a Y2K output tweak. 1999-12-13 21:43:53 +00:00
curt
a872c40389 Updates from Tony. 1999-12-13 21:43:41 +00:00
curt
e340190916 Updates from Tony. 1999-12-08 19:48:54 +00:00
curt
bc8bbb823f Testing display lists in ssg. 1999-11-24 14:15:10 +00:00
curt
d7d9403509 Cosmetic change. 1999-11-24 14:15:00 +00:00
curt
ba60c0effd Added an FGIOChannel::writestring().
Some cygwin32 portability fixes for fg_socket.cxx.
1999-11-24 14:14:45 +00:00
curt
796aa8b352 Removed some testing cruft related to a dumb attempt to disable the nagle
algorithm.
1999-11-23 13:27:08 +00:00
curt
cd5ab3222a Added FGFS "Native" I/O protocol. 1999-11-23 05:51:14 +00:00
curt
8c70ec7026 Initial revision of FGFS "Native" I/O protocal. 1999-11-23 05:47:16 +00:00
curt
99e9eb0833 Fixed the bug that was causing overbuffering of socket traffic and lending
to big delays between the master and the slave.
1999-11-23 03:19:09 +00:00
curt
8c789b1e61 Tweak with readline() return value. 1999-11-22 18:08:14 +00:00
curt
57163baca0 Added first stab at a socket class.
Fixed readline() bug in fg_serial.cxx and fg_socket.cxx.
Fixed process() bug in nmea.cxx and garmin.cxx.
1999-11-20 15:41:48 +00:00
curt
ed98ee8a31 Tweaked a comment line. 1999-11-20 15:40:15 +00:00
curt
60ac2b36e0 Do a better job of disabling all sound related stuff if --disable-sound is
specified.
1999-11-20 15:39:53 +00:00
curt
65e9aba6dc Added support for parsing socket options. 1999-11-20 15:39:20 +00:00
curt
4f294285fe Added a readline(buf) vs. read(buf,len) 1999-11-20 00:28:30 +00:00
curt
24caa82715 Cleaning out old code ... 1999-11-19 23:19:51 +00:00
curt
1f66606440 Added two new output formats, PVE and RUL. 1999-11-19 03:03:11 +00:00
curt
2c7625351a Added PVE (ProVision Entertainment) and RUL (some guy's motion platform)
formats.
1999-11-19 03:02:49 +00:00
curt
5fdede6f75 Revamped the "External" flight model. 1999-11-19 02:12:46 +00:00
curt
1fd9270267 Revamping I/O system. 1999-11-19 02:10:24 +00:00
curt
5bcd8c700b Updates from Tony, mostly to landing gear. 1999-11-15 23:54:07 +00:00
curt
40a1a07730 Added js_demo.cxx from plib source tree. 1999-11-10 20:50:58 +00:00
curt
021ee36a78 Tweaks to get rid of compiler warnings. 1999-11-09 19:51:07 +00:00
curt
212bf4a549 Cygwin32 build tweaks. 1999-11-09 18:22:55 +00:00
curt
0b181d91c8 Tweaks to ssg LOS routines and the use of it for height above ground
calculations.
1999-11-04 22:55:00 +00:00
curt
54fa3ae512 Make state management conform more to the example in the ssg docs. 1999-11-04 22:54:23 +00:00
curt
0a97fc1dcc Tweaked with drag and thrust. 1999-11-04 22:53:34 +00:00
curt
846ac621a2 Tweaks to my ssg LOS routines and their usage. 1999-11-04 00:41:23 +00:00
curt
1d6675a895 Debug output tweaks. 1999-11-03 23:50:15 +00:00
curt
bd198f503b Began work on adding support for loading additional 3d models per tile.
Began work on my own ssgLOS() (line of sight) routine.
1999-11-03 21:01:59 +00:00
curt
8ce39244df Start adding support for loading additional models per tile. 1999-11-03 20:59:34 +00:00
curt
369f052c7b Clear traversal bit on aircraft model. 1999-11-03 20:58:20 +00:00
curt
b430d919d4 Updates by Christian Mayer. 1999-11-03 18:06:52 +00:00
curt
5097ba0bf8 Patches from Tony to enable brakes. 1999-11-03 17:46:24 +00:00
curt
eeaf652ddb Added some extra debugging infrastructure. 1999-11-03 16:18:19 +00:00
curt
308e9d1ac5 Updates so that trim will work. 1999-11-02 15:59:13 +00:00
curt
491c4c573c Updates from Mark Vallevand. 1999-11-01 21:16:05 +00:00
curt
7638109583 Better no-texture support contributed by David Megginson. 1999-11-01 19:17:43 +00:00
curt
43143ef358 c172 updates from Tony. Fix extra yaw when using ailerons. Flaps and elevator
tweaks.
1999-11-01 19:17:16 +00:00
curt
f9044bc5de Trying to fix automake version problems. 1999-10-30 04:27:21 +00:00
curt
715062e85f Fixed (hopefully) a build problem with newer versions of automake
and autoconf.
1999-10-30 02:37:56 +00:00
curt
ad8e491420 MSVC++ tweak. 1999-10-29 18:09:19 +00:00
curt
4c92fd1418 Added keyboard support for flap control. 1999-10-29 18:09:04 +00:00
curt
cd49be7182 Updateds to win32 print system. 1999-10-29 18:08:54 +00:00
curt
06b966ee53 Added flaps support to c172 model. 1999-10-29 18:08:31 +00:00
curt
0c0071533c Added flaps support to control model. 1999-10-29 18:08:26 +00:00
curt
cee6d7d7d8 Moved to Include/fg_types.hxx 1999-10-27 01:41:59 +00:00
curt
939aa2b1d3 Fixed some warning messages that were tripping up pickier compilers. 1999-10-27 00:52:44 +00:00
curt
eb02aba5c8 More tile memory clean ups. 1999-10-27 00:52:25 +00:00
curt
cde20a9fd6 Better memory clean up and ocean texture generation. Moved cloud generation
calls up a level.
1999-10-27 00:51:42 +00:00
curt
ceaf93a11c Fix for MSVC++ 1999-10-27 00:44:29 +00:00
curt
3b5667ed39 Tweaks by David Megginson. 1999-10-27 00:44:16 +00:00
curt
c6d4eee79a Added common fg_types.hxx 1999-10-27 00:42:36 +00:00
curt
a631bd2e55 Add a key mapping (F3) for taking a screen snap shot.
Keep track of and free index arrays that are fed to ssg.
Ssg branch deletion memory leak work around.
1999-10-26 03:45:33 +00:00
curt
c6d49ec502 Cygwin32 fixes. 1999-10-23 04:19:25 +00:00
curt
29bcf26577 Added cloud puffs as we pass through the cloud layer. 1999-10-23 00:09:26 +00:00
curt
e69c859afd Moved where glBlendFunc() is reset to main.cxx 1999-10-22 17:15:43 +00:00
curt
5c9b04f975 Just a minor tweak. 1999-10-22 01:30:39 +00:00
curt
37220833ed Added Durk's first stab at clouds.
Added Simulator/Clouds/
Durk fixed a problem in gui.cxx with cursor type.
Durk updated his time zone / time-offset command line parameters
Curt added a cheezy fade in/out as we transition through the cloud layer.
  We really need to fog the sky dome, sun, moon, stars as well.
Curt added --enable/disable-clouds and --clouds-asl= to control clouds.
1999-10-22 00:27:49 +00:00
curt
e3f7c16e6a Don't actually set fog parameters here.
Added FGWeatherVectorWrap.h to cvs.
1999-10-22 00:23:32 +00:00
curt
adf5011f80 Fixes to Christian's latest weather submission. 1999-10-21 22:53:12 +00:00
curt
2751545008 Updates by Christian Mayer. 1999-10-20 22:19:07 +00:00
curt
aacffa37d6 Updates to BalloonSim init by Christian Mayer.
Removed old plib include line from the days when plib was rolled in with
  flight gear.
Texture handling tweaks contributed by David Megginson.
1999-10-20 22:18:54 +00:00
curt
0e48fe8ac4 Updates from Christian Mayer. 1999-10-20 22:15:41 +00:00
curt
eb81fb7a2d Updates to tools to move the class FGArray into the lib area so it could
be used by multiple programs.
Fixed a triangle loading bug in obj.cxx introduced when I added tri-strip
  functionality.
1999-10-19 20:34:58 +00:00
curt
7a1e59ae4b Changes to properly handle new style tri-strips. 1999-10-18 14:57:38 +00:00
curt
805878ebaf Working on adding textured airport runways. 1999-10-18 04:55:58 +00:00
curt
0b55a915b4 Wire in the balloon sim. 1999-10-15 22:21:09 +00:00
curt
802af70258 A couple MSVC++ portability tweaks. 1999-10-15 22:06:56 +00:00
curt
c0b59ca4b2 Pan view with mouse both side-to-side and up/down from Norman Vine. 1999-10-15 20:43:02 +00:00
curt
978b8af9cb Updates from Norman Vine. 1999-10-15 20:42:28 +00:00
curt
c9b58a1e44 Rename screen dump to snap shot.
Updated view enums.
1999-10-15 13:55:44 +00:00
curt
d707c00c13 Maybe fixed an altitude problem. 1999-10-15 05:35:50 +00:00
curt
e577d8c7ef Tweaks to dumpScreen(). 1999-10-15 00:40:11 +00:00
curt
2633d957e7 Updates for sun. 1999-10-15 00:39:41 +00:00
curt
6d733533ba Script was looking for wrong executable name. 1999-10-15 00:11:52 +00:00
curt
c866ba581d Added screen dumping and screen printing (win32) functionality. 1999-10-14 23:46:28 +00:00
curt
eddea671a2 Upgraded to latest weather data base code from Christian Mayer's and make
it the default.
1999-10-14 20:30:54 +00:00
curt
b822efcf78 Use wgs_84 time and distance calc routines instead of pure spherical geometry. 1999-10-14 19:32:15 +00:00
curt
229ba460d8 Moved wgs_84 time and distance calc routines to fg_geodesy.[ch]xx 1999-10-14 19:31:55 +00:00
curt
f565b1fdbe ... 1999-10-14 19:31:27 +00:00
curt
7a5fbf1ba3 Fixed up external view mode so it works once again. 1999-10-14 17:32:34 +00:00
curt
884dae9c57 Removing all the old vestiges of the original attempt at a slew FDM. Now
this functionality is implimented as a magic carpet mode.
1999-10-14 02:01:27 +00:00
curt
b5aaa84cc9 Initial revision. 1999-10-14 01:54:11 +00:00
curt
cecd5685ca Adding magic carpet FDM mode. 1999-10-14 01:53:43 +00:00
curt
e78f205b38 Added some temporary debugging msgs (now commented out.) 1999-10-14 01:53:20 +00:00
curt
23b97f93fe Replaced all instances of pow(a,2.0) with (a*a) 1999-10-13 19:33:17 +00:00
curt
a0aee5d866 Updates by Christian Mayer. 1999-10-12 03:30:24 +00:00
curt
c4963be66c First pass at incorporating Christian's BalloonSim. 1999-10-12 03:30:00 +00:00
curt
de03bd75bd Default to no force-disengage of autopilot for now. 1999-10-12 03:29:10 +00:00
curt
c682dec898 Initial revision of balloon simulator code. 1999-10-12 03:27:06 +00:00
curt
8957e8e354 Fixed a typo. 1999-10-11 23:10:10 +00:00
curt
74a337b91e Fixed a couple warning messages. 1999-10-11 23:09:51 +00:00
curt
b86e6ddc11 Updating FGFS <=> FDM interface. 1999-10-11 23:09:07 +00:00
curt
98af0b8924 Tweaks to scenery version number keyword. 1999-10-10 17:08:46 +00:00
curt
9f678a797f Work on better texture coordinate handling with the ability to scale textures
via a parameter in the materials file, while having the textures scroll
smoothly at any scaling.
1999-10-10 16:49:29 +00:00
curt
5bb9223dda Pass through ground speed for hud ETA calculation. 1999-10-10 16:48:21 +00:00
curt
303326d256 Expanded size for hud text strings to 64. 1999-10-10 16:47:51 +00:00
curt
4e043de1f1 Added "ETA" to display. 1999-10-10 16:47:21 +00:00
curt
5f5905f6e8 Updates by norman vine to controls.hxx.
Joystick auto-coordination tweaks.
Additional debuging output when pausing and resuming the sim.
Window resizing tweaks by David Megginson (and Norman Vine).
1999-10-09 13:09:16 +00:00
curt
65ea4e8bfc Updates contributed by Norman Vine. 1999-10-09 13:07:35 +00:00
curt
5e61535594 Irix tweaks. 1999-10-08 00:14:01 +00:00
curt
f00b1f8b83 Various SGI portability tweaks. 1999-10-07 23:08:48 +00:00
curt
f7af6787a0 Removed menu entries that were not implimented. 1999-10-07 17:10:41 +00:00
curt
da3271e103 Simplify ssg branch deletion code. Saying we were doing it the
round-a-bout hard way would be an understatement.
1999-10-06 20:59:52 +00:00
curt
f8df262633 Added a simple auto-coordination capability.
Can be enabled/disabled from the command line.
1999-10-06 20:58:57 +00:00
curt
6f079dcf2e Added a simple auto-coordination capability.
If only a single 2-axis joystick is found, and the user hasn't specified a
preference, enable autocoordination.
1999-10-06 20:58:40 +00:00
curt
6de1139450 Added a simple auto-coordination capability. 1999-10-06 20:57:47 +00:00
curt
038b68153e Added support for a pilot view offset vector from the center of gravity. 1999-10-04 04:43:09 +00:00
curt
38999ec3e0 "sg-izing" the matrix/vector code so that I can hopefully eventually remove
the older "MAT3" code.
1999-10-04 04:02:10 +00:00
curt
ad7718ff02 Rewriting old mat3 stuff with plib's sg library. 1999-10-03 18:49:39 +00:00
curt
7d08a3c508 Tweaks for greater precision output in PVE format. 1999-10-02 16:39:54 +00:00
curt
5d9577f806 Remove ssg kids in a an attepmpt to fix one memory leak. We think the
remaining leak is ssg's fault.
1999-10-01 20:36:16 +00:00
curt
2375ae99e3 Fix to keep longitude between -180 ... 180. 1999-10-01 20:35:43 +00:00
curt
780a3c6831 More heave tweaks. 1999-10-01 20:33:06 +00:00
curt
26193c5b19 PVE serial output tweaks.
Other minor tweaks.
1999-10-01 20:07:44 +00:00
curt
cea7b4b335 Try to generate serial output for a motion platform company in California. 1999-09-30 02:59:44 +00:00
curt
aa065f7068 Pass a few more values between LaRCsim and FGInterface. 1999-09-30 02:59:12 +00:00
curt
04619e469f Debugging output tweaks. 1999-09-28 22:44:23 +00:00
curt
9a508406db MSVC++ portability tweaks. 1999-09-28 22:44:08 +00:00
curt
b274e7ce4a Some view tweaks. 1999-09-28 22:43:52 +00:00
curt
0e5ecc165c Allow single joysticks with more than 2 axes to work. 1999-09-28 22:42:59 +00:00
curt
88a0a8264f Some mouse input enhancements. 1999-09-28 22:42:35 +00:00
curt
d12253020b Make sure c172 files get into distribution. 1999-09-28 22:42:07 +00:00
curt
7f25206f92 Show accelerated speed. 1999-09-28 22:41:43 +00:00
curt
6eaf06957d Dynamic calculation of CG and inertias. 1999-09-28 14:19:34 +00:00
curt
fde987982e Tweaks to get rid of a compiler warning. 1999-09-11 02:09:09 +00:00
curt
a5e9fd1358 Jon's updates to adjust control gains. 1999-09-11 02:08:31 +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
045b1acef6 Tweaks from Durk. 1999-09-10 17:00:55 +00:00
curt
f9c9e8b49f Slight syntax change. 1999-09-09 14:19:04 +00:00
curt
9e28d1b626 Updates from David Megginson. 1999-09-09 03:40:06 +00:00
curt
8087bae02a Fiddling around with views, fdm data passing and management to try to be
more sensible so we can do a more reasonable external view.
Fixed some const incorrectness.
1999-09-09 00:17:06 +00:00
curt
1b45c9ee54 Fiddling around with views, fdm data passing and management to try to be
more sensible so we can do a more reasonable external view.
1999-09-09 00:16:28 +00:00
curt
e9013be4a0 Fixed altitude update bug. 1999-09-08 16:11:09 +00:00
curt
c193021346 Updates to get engine working. 1999-09-07 23:15:45 +00:00
curt
4dc4764510 Initial revision of:
geocoord.cxx geocoord.h lowleveltime.cxx lowleveltime.h
   mymath.cxx mymath.h timezone.cxx timezone.h
Incorporating Durk's better timezone handling:
   Makefile.am fg_time.cxx fg_time.hxx
1999-09-07 23:11:22 +00:00
curt
92f7e1123c Added Durks timezone handling changes. 1999-09-07 23:09:43 +00:00
curt
8d903eac1c Patches to allow panel to display.
Allow model_hz to be defined from the command line.
1999-09-03 00:27:48 +00:00
curt
8d1be9f893 Added support for timegm() which returns time_t and explicitely expects GMT
input.
1999-09-03 00:24:30 +00:00
curt
32bab8aa10 Setup a user definable model hertz. 1999-09-01 20:24:54 +00:00
curt
87e3a7decb Tweaked some log messages. 1999-09-01 18:52:31 +00:00
curt
0925492e4c Fixed a couple small bugs with fragment creation in on-the-fly generated
tiles.
1999-09-01 18:51:49 +00:00
curt
c3753bf620 Lighting/ssgSimpleState fixes.
obj.cxx added code to generate an ocean tile on the fly if no tile exists.
1999-08-31 23:23:04 +00:00
curt
0f6565f764 Patch to allow window resizes. 1999-08-31 23:22:05 +00:00
curt
c664ec4e93 Updates from Tony. 1999-08-24 23:17:05 +00:00
curt
efa21a5dd6 Initial revisions. 1999-08-17 21:20:38 +00:00
curt
bfcfbcaa5e Updates from Tony. 1999-08-17 21:18:16 +00:00
curt
f38dcfd995 Updates from Jon. 1999-08-17 21:18:11 +00:00
curt
db1be3a0ce Updates to interface to pass in radians for starting position. 1999-08-17 21:18:04 +00:00
curt
bbced46d9f Tweaks to fix problems with moon rendering introduced with ssg. 1999-08-15 15:35:07 +00:00
curt
58a8b0d103 Minor tweaks. 1999-08-14 22:07:35 +00:00
curt
82da518255 minor tweaks 1999-08-14 22:07:15 +00:00
curt
2dc567a4a4 Tweaks from Norman. 1999-08-14 22:06:54 +00:00
curt
fdbfd9c2f8 Minor tweaks to work around egcs compiler pickiness. 1999-08-12 21:08:37 +00:00
curt
e945d2b761 Christian's new weather subsystem is causing problems with some compilers
so I am allowing it to be #ifdef'd out until the compile problems can be
resolved.
1999-08-12 17:13:44 +00:00
curt
7397860323 Fixed --shading-flat option so it sets the material properties correctly. 1999-08-11 18:35:23 +00:00
curt
afe8cc4d26 Updates to material properties so --disable-textures now works, although
textures still cannot be toggled on and off with F9 while the sim is running.
1999-08-11 16:52:15 +00:00
curt
8b2e57a93d Updated to support new weather subsystem (visibility variable determins
how far out the scenery should be drawn.)
1999-08-10 03:45:47 +00:00
curt
9e3edfb47b Added support for Christian Mayers new weather subsystem.
Added support for david@megginson.com's mouse yoke patch.
Added a flight model acceleration options (controlled by a/A keys.)
1999-08-10 03:44:47 +00:00
curt
06ee5a4f0a Added a patch contributed by david@megginson.com for mouse yoke control. 1999-08-10 03:43:05 +00:00
curt
b645c8cf7e Initial revision. 1999-08-10 03:40:34 +00:00
curt
21f888a43f Updates from Tony. 1999-08-08 17:12:33 +00:00
curt
a5f19c7a7c Removed extra square array of indirection indices between what's visible
and where these things are in the cache.  We just let ssg sort out what needs
to be drawn based on visual range.
1999-08-08 15:23:39 +00:00
curt
1e8b5c8956 Makefile.am: Got rid of -DUSE_SSG
options.cxx: reorder option initializations to match declaration order.
views.cxx: much cleanup of stuff that was depricated by the move to ssg.
           I now use ssg to do all the projection/modelview matrix calculation
           and setup. (mostly)
vies.hxx: also added the view pan offset to the view matrix calcs.
1999-08-08 15:21:54 +00:00
curt
471fe324ff Added a place holder for optionally giving the engine a bit of a boost. 1999-08-08 07:04:11 +00:00
curt
82b41d7db6 Set up the model view matrix exactly as ssg does it before drawing sky, stars
sun, and moon.  I really should do a derived sgLeaf class so that these things
can be drawn within ssgCullandDraw() but this is quicker for now ...
1999-08-08 01:31:30 +00:00
curt
b512e40e79 Cleaning cruft that can be removed now that ssg is taking over. 1999-08-07 23:07:59 +00:00
curt
e7751d59f2 Initial revision. 1999-08-07 19:19:14 +00:00
curt
09987296b4 Updates to Tony's c172 model. 1999-08-07 19:18:45 +00:00
curt
a7abe629cf Scaling inputs to JSBsim to get a bit more realistic results. 1999-08-07 18:28:21 +00:00
curt
243b73c10b Moving towards increased dependence on ssg. 1999-08-07 18:27:29 +00:00
curt
dec6e86f6e Mac portability tweaks. 1999-08-07 18:24:49 +00:00
curt
6b2f7f4e3d Mac portability changes. 1999-08-07 18:24:23 +00:00
curt
e6aef49822 Updates to Tony's c172 model. 1999-08-07 18:23:55 +00:00
curt
b001cc55c7 Updates for Mac compilers. 1999-08-07 18:22:57 +00:00
curt
def090d631 Return to glider model ... 1999-07-31 05:01:04 +00:00
curt
44400cdff8 Fix a small tile cache bug. 1999-07-31 04:59:28 +00:00
curt
439779ee36 Tweaks so that Jon's FDM stuff get's initialized better. 1999-07-31 04:58:26 +00:00
curt
0bb22cd0a7 Improvements to Tony's c172 model. 1999-07-31 04:57:35 +00:00
curt
aa68d067d0 Updates so that JSBsim can work. 1999-07-31 04:56:13 +00:00
curt
a1b2152d7f Updates from Jon. 1999-07-31 04:55:23 +00:00
curt
8d58f64257 Fixed a tile caching bug. When I was freeing tiles to make room in the
cache, I was only checking currently visible tiles, rather than checking
all the cache entries.
1999-07-25 01:52:36 +00:00
curt
e5a87cf9fa (Hopefully) fixed bug which caused corrupt entries to be loaded into the
scene graph when a tile shift occured while the tile load queue was not
  empty.
1999-07-04 07:37:30 +00:00
curt
6efea97fb0 Don't make mismatched nodes/normals a fatal error ... 1999-07-04 07:33:29 +00:00
curt
f57f8ef7ce Fail on mismatch of nodes and normals. 1999-07-03 04:03:59 +00:00
curt
d3b9b645ad ssg and external view tweaks. 1999-07-01 01:17:43 +00:00
curt
0660ea821a Network updates contributed by Oliver Delise. 1999-06-30 20:21:04 +00:00
curt
7a56d332ad Force initial ssgState before doing ssg cull and render pass so that the
lazy state loader get's primed.
1999-06-30 19:16:53 +00:00
curt
9f9f487e2a Added some early support for a cheezy external view of TuX.
'v' toggles internal vs. external view modes.
Add the distance of the bouding radius into the tile's range selector.
1999-06-30 14:35:01 +00:00
curt
39b3602dce Ssg tweaks.
Better handling of missing tiles.
Added a range selector so we can completely ignore tiles that are beyond
  our visibility range.
Added a routine to prep the ssg nodes before rendering by updating the
  transform and range selector values.
1999-06-30 00:28:20 +00:00
curt
5329ce82c5 Ssg tweaks. Better handling of missing tiles. 1999-06-30 00:26:43 +00:00
curt
35dc68a0d0 Ssg tweaks. 1999-06-30 00:25:13 +00:00
curt
b333a30678 Misc. tweaks. 1999-06-29 17:26:46 +00:00
curt
0ae48876a7 More ssg tweaks. 1999-06-29 14:57:00 +00:00
curt
0c25cad3a1 MSVC++ tweaks contributed by Christian Mayer. 1999-06-28 18:41:01 +00:00
curt
e2a7fb6080 Initial revision. 1999-06-28 18:22:20 +00:00
curt
b67e68b684 FreeBSD tweaks. 1999-06-28 18:19:26 +00:00
curt
bb94a6ef5c Updates contributed by Jon Berndt. 1999-06-28 17:39:20 +00:00
curt
a85b537e75 Fear the penguin ... 1999-06-28 14:18:14 +00:00
curt
aa27214f65 Additional tweaks to fix the ssg texture (state) problems. Tweaked near
and far clip planes.  Adjusted rendering order so menus and hud get drawn
last.
1999-06-28 05:47:02 +00:00
curt
858f17b323 Changes to begin incorporating plib support for managing and rendering the
terrain.
1999-06-28 00:02:52 +00:00
curt
a540873192 Tweaks by Oliver. 1999-06-25 18:15:52 +00:00
curt
8520f46403 Initial revision. 1999-06-24 20:40:22 +00:00
curt
aea253a85c Updated build system to remove DEFS += -DFOO type lines. This doesn't seem
to be supported in recent versions of autoconf.
1999-06-24 20:38:31 +00:00
curt
540849b9c3 Incorporated Oliver's initial networking code. 1999-06-22 21:24:31 +00:00
curt
116e3913ae Updated for both JSBsim and Tony Peden's c172 flight model. 1999-06-21 05:01: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
bfe5df5f24 Working on getting ssg integrated. 1999-06-19 04:48:07 +00:00
curt
6e10fd9a05 Fiddling with ssg. 1999-06-18 16:12:17 +00:00
curt
c8501f9b29 Now use plib in native install mode.
Preparations for unstable development version 0.7.0
Some reorganizational changes.
Beginning to test the use of ssg (part of plib)
1999-06-18 03:42:54 +00:00
curt
90655cf54b renamed GLUTkey.* -> keyboard.*
renamed GLUTmain.cxx -> main.cxx
1999-06-17 21:33:39 +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