diff options
author | Maxim Pimenov <m@maps.me> | 2018-11-20 15:03:25 +0300 |
---|---|---|
committer | Tatiana Yan <tatiana.kondakova@gmail.com> | 2018-11-23 16:59:58 +0300 |
commit | d75839e65c4a63ed0e4a7b192d584e8b83efb435 (patch) | |
tree | e047a2d0d4d55371fdb67c5cbef6ebd10f7506a4 /geometry | |
parent | 3467f9aad381da685c13746e92c145d917e99439 (diff) |
[coding] Moved functions that encode points to one common file.
Diffstat (limited to 'geometry')
-rw-r--r-- | geometry/geometry_tests/mercator_test.cpp | 4 | ||||
-rw-r--r-- | geometry/mercator.cpp | 5 | ||||
-rw-r--r-- | geometry/mercator.hpp | 22 |
3 files changed, 13 insertions, 18 deletions
diff --git a/geometry/geometry_tests/mercator_test.cpp b/geometry/geometry_tests/mercator_test.cpp index d867ac2e89..6236b25019 100644 --- a/geometry/geometry_tests/mercator_test.cpp +++ b/geometry/geometry_tests/mercator_test.cpp @@ -39,8 +39,8 @@ UNIT_TEST(Mercator_DirectInferseF) double y = MercatorBounds::LatToY(lat); double lat1 = MercatorBounds::YToLat(y); TEST_LESS(fabs(lat - lat1), eps, ("Too big round error")); - TEST_LESS(fabs(MercatorBounds::maxX - MercatorBounds::maxY), eps, ("Non-square maxX and maxY")); - TEST_LESS(fabs(MercatorBounds::minX - MercatorBounds::minY), eps, ("Non-square minX and minY")); + TEST_LESS(fabs(MercatorBounds::kMaxX - MercatorBounds::kMaxY), eps, ("Non-square maxX and maxY")); + TEST_LESS(fabs(MercatorBounds::kMinX - MercatorBounds::kMinY), eps, ("Non-square minX and minY")); } UNIT_TEST(Mercator_ErrorToRadius) diff --git a/geometry/mercator.cpp b/geometry/mercator.cpp index 0977316e1c..b997aace27 100644 --- a/geometry/mercator.cpp +++ b/geometry/mercator.cpp @@ -7,11 +7,6 @@ using namespace std; -double MercatorBounds::minX = -180; -double MercatorBounds::maxX = 180; -double MercatorBounds::minY = -180; -double MercatorBounds::maxY = 180; - m2::RectD MercatorBounds::MetresToXY(double lon, double lat, double lonMetresR, double latMetresR) { double const latDegreeOffset = latMetresR * degreeInMetres; diff --git a/geometry/mercator.hpp b/geometry/mercator.hpp index 7c61f7394e..d3e8270e2c 100644 --- a/geometry/mercator.hpp +++ b/geometry/mercator.hpp @@ -8,21 +8,23 @@ struct MercatorBounds { - static double minX; - static double maxX; - static double minY; - static double maxY; + static double constexpr kMinX = -180.0; + static double constexpr kMaxX = 180.0; + static double constexpr kMinY = -180.0; + static double constexpr kMaxY = 180.0; + static double constexpr kRangeX = kMaxX - kMinX; + static double constexpr kRangeY = kMaxY - kMinY; - static m2::RectD FullRect() { return m2::RectD(minX, minY, maxX, maxY); } + static m2::RectD FullRect() { return m2::RectD(kMinX, kMinY, kMaxX, kMaxY); } static bool ValidLon(double d) { return base::between_s(-180.0, 180.0, d); } static bool ValidLat(double d) { return base::between_s(-90.0, 90.0, d); } - static bool ValidX(double d) { return base::between_s(minX, maxX, d); } - static bool ValidY(double d) { return base::between_s(minY, maxY, d); } + static bool ValidX(double d) { return base::between_s(kMinX, kMaxX, d); } + static bool ValidY(double d) { return base::between_s(kMinY, kMaxY, d); } - static double ClampX(double d) { return base::clamp(d, minX, maxX); } - static double ClampY(double d) { return base::clamp(d, minY, maxY); } + static double ClampX(double d) { return base::clamp(d, kMinX, kMaxX); } + static double ClampY(double d) { return base::clamp(d, kMinY, kMaxY); } static double YToLat(double y) { return base::RadToDeg(2.0 * atan(tanh(0.5 * base::DegToRad(y)))); } @@ -72,8 +74,6 @@ struct MercatorBounds static m2::PointD GetSmPoint(m2::PointD const & pt, double lonMetresR, double latMetresR); - static double constexpr GetCellID2PointAbsEpsilon() { return 1.0E-4; } - static m2::PointD FromLatLon(double lat, double lon) { return m2::PointD(LonToX(lon), LatToY(lat)); |