diff options
Diffstat (limited to 'src/positioning/qlocationutils_p.h')
-rw-r--r-- | src/positioning/qlocationutils_p.h | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/src/positioning/qlocationutils_p.h b/src/positioning/qlocationutils_p.h index d9e6524a..e3881f6f 100644 --- a/src/positioning/qlocationutils_p.h +++ b/src/positioning/qlocationutils_p.h @@ -229,7 +229,7 @@ public: return 6371007.2; } - inline static double earthMeanDiameter() + inline static double earthMeanCircumference() { return earthMeanRadius() * 2.0 * M_PI; } @@ -256,6 +256,12 @@ public: return wrapLong(centerLongitude - leftOffset); } + static qreal metersPerPixel(qreal zoomLevel, const QGeoCoordinate &coordinate) + { + const qreal metersPerTile = earthMeanCircumference() * std::cos(radians(coordinate.latitude())) / std::pow(2, zoomLevel); + return metersPerTile / 256.0; + } + /* returns the NMEA sentence type. */ |