From 802065e025c8b435dc39b4fdd9262efdc1dcd2a8 Mon Sep 17 00:00:00 2001 From: "Alexander V. Wolf" Date: Tue, 24 May 2022 14:47:50 +0700 Subject: [PATCH] Fixed something strange in radToHMSStr and radToHMSStrAdapt convertors probably ancient bug (?), maybe related to issue #2460 --- src/core/StelUtils.cpp | 6 +++--- src/tests/testConversions.cpp | 16 ++++++---------- 2 files changed, 9 insertions(+), 13 deletions(-) diff --git a/src/core/StelUtils.cpp b/src/core/StelUtils.cpp index 521d538315e..93a55ebb957 100644 --- a/src/core/StelUtils.cpp +++ b/src/core/StelUtils.cpp @@ -225,9 +225,9 @@ QString radToHmsStr(const double angle, const bool decimal) { unsigned int h,m; double s; - StelUtils::radToHms(angle+0.005*M_PI/12/(60*60), h, m, s); + StelUtils::radToHms(angle, h, m, s); int width, precision; - QString carry, r; + QString carry; if (decimal) { width=5; @@ -268,7 +268,7 @@ QString radToDmsStrAdapt(const double angle, const bool useD) bool sign; unsigned int d,m; double s; - StelUtils::radToDms(angle+0.005*M_PI/180/(60*60)*(angle<0?-1.:1.), sign, d, m, s); // NOTE: WTF??? + StelUtils::radToDms(angle, sign, d, m, s); QString str; QTextStream os(&str); diff --git a/src/tests/testConversions.cpp b/src/tests/testConversions.cpp index a37db14307c..6e8a4c6f04c 100644 --- a/src/tests/testConversions.cpp +++ b/src/tests/testConversions.cpp @@ -248,12 +248,12 @@ void TestConversions::testRadToDMSStrAdapt() data << 61*M_PI/360 << "+30°30'" << false; data << M_PI/648000 << "+0°0'1\"" << false; data << 1213*M_PI/2400 << "+90°58'30\"" << false; - data << 39599*M_PI/648000 << "+10°59'59\"" << false; + data << 39599*M_PI/648000 << "+10°59'59.00\"" << false; data << -M_PI/36 << "-5°" << false; data << -7*M_PI/8 << "-157°30'" << false; data << -2*M_PI/5 << "-72°" << false; data << -M_PI << "-180°" << false; - data << -10*M_PI/648 << "-2°46'40\"" << false; + data << -10*M_PI/648 << "-2°46'40.00\"" << false; data << 0. << "+0d" << true; data << M_PI/6 << "+30d" << true; @@ -268,12 +268,12 @@ void TestConversions::testRadToDMSStrAdapt() data << 61*M_PI/360 << "+30d30'" << true; data << M_PI/648000 << "+0d0'1\"" << true; data << 1213*M_PI/2400 << "+90d58'30\"" << true; - data << 39599*M_PI/648000 << "+10d59'59\"" << true; + data << 39599*M_PI/648000 << "+10d59'59.00\"" << true; data << -M_PI/36 << "-5d" << true; data << -7*M_PI/8 << "-157d30'" << true; data << -2*M_PI/5 << "-72d" << true; data << -M_PI << "-180d" << true; - data << -10*M_PI/648 << "-2d46'40\"" << true; + data << -10*M_PI/648 << "-2d46'40.00\"" << true; while (data.count()>=3) { @@ -282,9 +282,7 @@ void TestConversions::testRadToDMSStrAdapt() bool flag = data.takeFirst().toBool(); QString rdms = StelUtils::radToDmsStrAdapt(rad, flag); QVERIFY2(rdms==edms, qPrintable(QString("%1 radians = %2 (expected %3) [flag: %4]") - .arg(QString::number(rad, 'f', 5)) - .arg(rdms) - .arg(edms) + .arg(QString::number(rad, 'f', 5), rdms, edms) .arg(flag))); } } @@ -381,9 +379,7 @@ void TestConversions::testRadToDMSStr() bool useDF = data.takeFirst().toBool(); QString rdms = StelUtils::radToDmsStr(rad, decimalF, useDF); QVERIFY2(rdms==edms, qPrintable(QString("%1 radians = %2 (expected %3) [flags: %4, %5]") - .arg(QString::number(rad, 'f', 5)) - .arg(rdms) - .arg(edms) + .arg(QString::number(rad, 'f', 5), rdms, edms) .arg(decimalF) .arg(useDF))); }