X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=simgear%2Fephemeris%2Fmoonpos.cxx;h=7908fa89cca3d1ca9df003cf0cfbbb5bf43396d6;hb=70c5d605641b628039f75cb8761ce783a17a5bdf;hp=d053082cd2d1cc8272870641cb4b78e88c2b3b10;hpb=557fade4a7df3f030b943ba6114c3c566c57b73c;p=simgear.git diff --git a/simgear/ephemeris/moonpos.cxx b/simgear/ephemeris/moonpos.cxx index d053082c..7908fa89 100644 --- a/simgear/ephemeris/moonpos.cxx +++ b/simgear/ephemeris/moonpos.cxx @@ -15,10 +15,9 @@ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Library General Public License for more details. * - * You should have received a copy of the GNU Library General Public - * License along with this library; if not, write to the - * Free Software Foundation, Inc., 59 Temple Place - Suite 330, - * Boston, MA 02111-1307, USA. + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * * $Id$ **************************************************************************/ @@ -27,11 +26,7 @@ #include #include -#include -#ifdef __BORLANDC__ -# define exception c_exception -#endif #include // #include @@ -173,7 +168,7 @@ void MoonPos::updatePosition(double mjd, double lst, double lat, Star *ourSun) // SG_LOG( SG_GENERAL, SG_INFO, "rho = " << rho ); if (geoRa < 0) - geoRa += (2*SGD_PI); + geoRa += SGD_2PI; HA = lst - (3.8197186 * geoRa); /* SG_LOG( SG_GENERAL, SG_INFO, "t->getLst() = " << t->getLst() @@ -183,7 +178,17 @@ void MoonPos::updatePosition(double mjd, double lst, double lat, Star *ourSun) // SG_LOG( SG_GENERAL, SG_INFO, "g = " << g ); rightAscension = geoRa - mpar * rho * cos(gclat) * sin(HA) / cos (geoDec); - declination = geoDec - mpar * rho * sin (gclat) * sin (g - geoDec) / sin(g); + if (fabs(lat) > 0) { + declination + = geoDec - mpar * rho * sin (gclat) * sin (g - geoDec) / sin(g); + } else { + declination = geoDec; + // cerr << "Geocentric vs. Topocentric position" << endl; + // cerr << "RA (difference) : " + // << SGD_RADIANS_TO_DEGREES * (geoRa - rightAscension) << endl; + // cerr << "Dec (difference) : " + // << SGD_RADIANS_TO_DEGREES * (geoDec - declination) << endl; + } /* SG_LOG( SG_GENERAL, SG_INFO, "Ra = (" << (SGD_RADIANS_TO_DEGREES *rightAscension)