curt [Wed, 3 Mar 2004 21:37:41 +0000 (21:37 +0000)]
Work around a limitation of gc_calc_course_dist(). When the start and end
points are too close together, this routine can return a course of "nan"
but the distance is valid. Someday someone who understands the math should
rewrite the gc_calc_course_dist() routine so it is more robust, but for now
it's easiest to simply check for a nan result and code around the limitation.
ehofman [Tue, 2 Mar 2004 10:51:13 +0000 (10:51 +0000)]
Make it possible to define multiple texture for a material (multiple <texture> entries in the materials.xml file). The code can return a random texture, or a pre defined texture upon request (default is random)
ehofman [Mon, 23 Feb 2004 20:07:20 +0000 (20:07 +0000)]
Melchior FRANZ:
Here are some updates for the metar class:
- support for empty visibility group
- support for 4-alnum IACO ids (rather than only 4-alpha)
- better diagnosis in exception messages
- check for 404 http response
- replace last constant by constants.h definition
andy [Fri, 20 Feb 2004 15:10:49 +0000 (15:10 +0000)]
Fix from Richard Harke for 64 bit systems. The reftag was left
uninitialized by naNum(). If it happened to be constructing it on the
stack in a location previously occupied by a real reference, it would
generate a corrupt naRef.
andy [Sun, 1 Feb 2004 17:47:08 +0000 (17:47 +0000)]
Yank the MSVC special handling. It turns out it was becuase "strlen"
has special voodoo in the parser. That's much more cleanly handled by
renaming the function than by #ifdef'ing.
curt [Fri, 16 Jan 2004 17:37:05 +0000 (17:37 +0000)]
Oops, I originally had ramped the vasi/papi color transition the wrong way.
So as you passed through the target glide slope from low to high it would
be colored: red -> white -> small range of transition to red -> white.
Now it goes the right way so you get: red -> smooth transition to -> white.
You can tell you are getting high if you see the bottom vasi start to turn
pink ... etc. etc. hopefully just like in real life.
curt [Wed, 14 Jan 2004 18:02:58 +0000 (18:02 +0000)]
The emissive values just don't seem like the right thing to do. You suddenly
see the dark side of the moon quite clearly, which usually isn't the case.
The rest of the moon still seems a bit oversaturated right now ...
ehofman [Wed, 7 Jan 2004 09:07:57 +0000 (09:07 +0000)]
Frederic Bouvier:
The attached patch adds a new animation class, called SGAlphaTestAnimation, to enable alpha test in 3D models.
This will remove many artefact caused by painting order of translucent models, and I need it for an upcoming model. In addition, I added a min-factor and a max-factor to the range animation to modulate min-m, min-property, max-m or max-property.
ehofman [Fri, 19 Dec 2003 17:44:30 +0000 (17:44 +0000)]
Melchior FRANZ:
There are constructors for sg_io_exception that don't initialize the
location. In this case getFormattedMessage does still output an extra
line with " at" followed by ... nothing. Looks silly.
andy [Fri, 19 Dec 2003 02:40:33 +0000 (02:40 +0000)]
Rewrite sg_geodesy. The new version is more accurate to the WGS84
standard and includes a sgCartToGeod() function which is 100%
symmetric (down to the precision of a double) with sgGeodToCart().
ehofman [Sun, 14 Dec 2003 14:45:29 +0000 (14:45 +0000)]
Melchior FRANZ:
There's another problem with sg_socket.cxx: the timeout value is
hardcoded as 0. This is appropriate for servers as they continuously
poll the socket and never want to wait for clients. But clients
*do* want to wait a few seconds for a server response.
andy [Mon, 8 Dec 2003 16:55:50 +0000 (16:55 +0000)]
Extra i++ led to a "double skip" when parsing a \r\n pair. So a DOS
file would look like it was all on one line, and a comment would skip
to the end of the file.
andy [Sun, 7 Dec 2003 19:53:34 +0000 (19:53 +0000)]
Bug fixes. The priority queue wasn't handling boundary conditions at
the edge of the table properly. The new code is half the size -- it
*has* to be correct, right?
ehofman [Wed, 19 Nov 2003 15:16:21 +0000 (15:16 +0000)]
Frederic Bouvier wrote:
> When a c172 is on one machine, I only got segfault on an animation
> not found. This animation is named ControlsGroup and I guess
> that one object name referenced in this null animation no
> longer exist in the .ac model. I say that because the
> preceding one is analogous and works.
>
> So I would say the multiplayer works, except when there is a c172.
It seems that this animation refers to 'PanelInstruments' that is
a panel outside the model, so, when loaded with SGModelLib::load_model
the object is not found in the model and there is a non tested
read access through a null pointer in sgMakeAnimation.
Fix a problem where the compiler would mix up two function declarations because the one wich has SGSubsystem in it's options list expected a const SGSubsystem, but it was called with a plain SGSubsystem