diff --git a/src/QtLocationPlugin/GenericMapProvider.cpp b/src/QtLocationPlugin/GenericMapProvider.cpp index ce1267b..e9ef7b2 100644 --- a/src/QtLocationPlugin/GenericMapProvider.cpp +++ b/src/QtLocationPlugin/GenericMapProvider.cpp @@ -45,6 +45,13 @@ QString JapanReliefMapProvider::_getURL(const int x, const int y, const int zoom return JapanReliefMapUrl.arg(zoom).arg(x).arg(y); } +static const QString LINZBasemapMapUrl = QStringLiteral("https://basemaps.linz.govt.nz/v1/tiles/aerial/EPSG:3857/%1/%2/%3.png?api=d01ev80nqcjxddfvc6amyvkk1ka"); + +QString LINZBasemapMapProvider::_getURL(const int x, const int y, const int zoom, QNetworkAccessManager* networkManager) { + Q_UNUSED(networkManager) + return LINZBasemapMapUrl.arg(zoom).arg(x).arg(y); +} + QString CustomURLMapProvider::_getURL(const int x, const int y, const int zoom, QNetworkAccessManager* networkManager) { Q_UNUSED(networkManager) QString url = qgcApp()->toolbox()->settingsManager()->appSettings()->customURL()->rawValue().toString(); diff --git a/src/QtLocationPlugin/GenericMapProvider.h b/src/QtLocationPlugin/GenericMapProvider.h index fafad05..1ac8649 100644 --- a/src/QtLocationPlugin/GenericMapProvider.h +++ b/src/QtLocationPlugin/GenericMapProvider.h @@ -60,6 +60,16 @@ class JapanReliefMapProvider : public MapProvider { QString _getURL(const int x, const int y, const int zoom, QNetworkAccessManager* networkManager) override; }; +class LINZBasemapMapProvider : public MapProvider { + Q_OBJECT + public: + LINZBasemapMapProvider(QObject* parent = nullptr) + : MapProvider(QStringLiteral("https://basemaps.linz.govt.nz/v1/tiles/aerial"), QStringLiteral("png"), + AVERAGE_TILE_SIZE, QGeoMapType::SatelliteMapDay, parent) {} + + QString _getURL(const int x, const int y, const int zoom, QNetworkAccessManager* networkManager) override; +}; + class CustomURLMapProvider : public MapProvider { Q_OBJECT public: diff --git a/src/QtLocationPlugin/QGCMapUrlEngine.cpp b/src/QtLocationPlugin/QGCMapUrlEngine.cpp index 142c538..8461dc1 100644 --- a/src/QtLocationPlugin/QGCMapUrlEngine.cpp +++ b/src/QtLocationPlugin/QGCMapUrlEngine.cpp @@ -82,6 +82,8 @@ UrlFactory::UrlFactory() : _timeout(5 * 1000) { _providersTable["Japan-GSI Slope"] = new JapanSlopeMapProvider(this); _providersTable["Japan-GSI Relief"] = new JapanReliefMapProvider(this); + _providersTable["LINZ Basemap"] = new LINZBasemapMapProvider(this); + _providersTable["CustomURL Custom"] = new CustomURLMapProvider(this); }