There seem to be a couple of missing "minus" signs in this function in
simgear/timing/sg_time.cxx. The way it is at present, it always sets lat and lon to
zero (unless they happen to be exactly pi):
// Given lon/lat, update timezone information and local_offset
void SGTime::updateLocal( double lon, double lat, const string& root ) {
// sanity checking
if ( lon < SGD_PI || lon > SGD_PI ) {
// not within -180 ... 180
lon = 0.0;
}
if ( lat < SGD_PI * 0.5 || lat > SGD_PI * 0.5 ) {
// not within -90 ... 90
lat = 0.0;
}
...
Should be:
if ( lon < -SGD_PI || lon > SGD_PI ) {
and
if ( lat < -SGD_PI * 0.5 || lat > SGD_PI * 0.5 ) {
- Julian
_______________________________________________
Flightgear-devel mailing list
[EMAIL PROTECTED]
http://mail.flightgear.org/mailman/listinfo/flightgear-devel