From ea8e347e8b67dcdbb627b5c385f4b2315ffd97b2 Mon Sep 17 00:00:00 2001
From: Remek Zajac <remek@airmap.com>
Date: Fri, 12 Mar 2021 13:42:49 +0100
Subject: [PATCH] no magic numbers

---
 src/Terrain/TerrainQuery.cc | 2 +-
 src/Terrain/TerrainQuery.h  | 5 +++--
 2 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/src/Terrain/TerrainQuery.cc b/src/Terrain/TerrainQuery.cc
index c568104..232d6d3 100644
--- a/src/Terrain/TerrainQuery.cc
+++ b/src/Terrain/TerrainQuery.cc
@@ -911,7 +911,7 @@ QList<double> UnitTestTerrainQuery::_requestCoordinateHeights(const QList<QGeoCo
             double fraction = 1.0 * x / dx;
             result.append(std::round(UnitTestTerrainQuery::LinearSlopeRegion::minAMSLElevation + (fraction * UnitTestTerrainQuery::LinearSlopeRegion::totalElevationChange)));
         } else if (hillRegion.contains(coordinate)) {
-            double arc_second_meters = (6371000. / 3600.) * (M_PI / 180);
+            double arc_second_meters = (earths_radius_mts * one_second_deg) * (M_PI / 180);
             double x = (coordinate.latitude() - hillRegion.center().latitude()) * arc_second_meters / one_second_deg;
             double y = (coordinate.longitude() - hillRegion.center().longitude()) * arc_second_meters / one_second_deg;
             double x2y2 = pow(x, 2) + pow(y, 2);
diff --git a/src/Terrain/TerrainQuery.h b/src/Terrain/TerrainQuery.h
index 9c894f5..461e4db 100644
--- a/src/Terrain/TerrainQuery.h
+++ b/src/Terrain/TerrainQuery.h
@@ -305,8 +305,9 @@ private:
 class UnitTestTerrainQuery : public TerrainQueryInterface {
 public:
 
-    static constexpr double regionSizeDeg   = 0.1;      // all regions are 0.1deg (~11km) square
-    static constexpr double one_second_deg  = 1.0/3600;
+    static constexpr double regionSizeDeg     = 0.1;      // all regions are 0.1deg (~11km) square
+    static constexpr double one_second_deg    = 1.0/3600;
+    static constexpr double earths_radius_mts = 6371000.;
 
     /// Point Nemo is a point on Earth furthest from land
     static const QGeoCoordinate pointNemo;