8 changed files with 190 additions and 19 deletions
@ -0,0 +1,51 @@
@@ -0,0 +1,51 @@
|
||||
#include "BingMapProvider.h" |
||||
#if defined(DEBUG_GOOGLE_MAPS) |
||||
#include <QFile> |
||||
#include <QStandardPaths> |
||||
#endif |
||||
#include "QGCMapEngine.h" |
||||
|
||||
BingMapProvider::BingMapProvider(quint32 averageSize, |
||||
QGeoMapType::MapStyle mapType, QObject* parent) |
||||
: MapProvider(QString("https://www.bing.com/maps/"), QString("png"), |
||||
averageSize, mapType, parent) {} |
||||
|
||||
BingMapProvider::~BingMapProvider() {} |
||||
|
||||
QString BingRoadMapProvider::_getURL(int x, int y, int zoom, |
||||
QNetworkAccessManager* networkManager) { |
||||
Q_UNUSED(networkManager); |
||||
QString key = _tileXYToQuadKey(x, y, zoom); |
||||
return QString("http://ecn.t%1.tiles.virtualearth.net/tiles/" |
||||
"r%2.png?g=%3&mkt=%4") |
||||
.arg(_getServerNum(x, y, 4)) |
||||
.arg(key) |
||||
.arg(_versionBingMaps) |
||||
.arg(_language); |
||||
} |
||||
|
||||
QString |
||||
BingSatelliteMapProvider::_getURL(int x, int y, int zoom, |
||||
QNetworkAccessManager* networkManager) { |
||||
Q_UNUSED(networkManager); |
||||
QString key = _tileXYToQuadKey(x, y, zoom); |
||||
return QString("http://ecn.t%1.tiles.virtualearth.net/tiles/" |
||||
"a%2.jpeg?g=%3&mkt=%4") |
||||
.arg(_getServerNum(x, y, 4)) |
||||
.arg(key) |
||||
.arg(_versionBingMaps) |
||||
.arg(_language); |
||||
} |
||||
|
||||
QString BingHybridMapProvider::_getURL(int x, int y, int zoom, |
||||
QNetworkAccessManager* networkManager) { |
||||
Q_UNUSED(networkManager); |
||||
QString key = _tileXYToQuadKey(x, y, zoom); |
||||
return QString("http://ecn.t%1.tiles.virtualearth.net/tiles/" |
||||
"h%2.jpeg?g=%3&mkt=%4") |
||||
.arg(_getServerNum(x, y, 4)) |
||||
.arg(key) |
||||
.arg(_versionBingMaps) |
||||
.arg(_language); |
||||
} |
||||
|
@ -0,0 +1,74 @@
@@ -0,0 +1,74 @@
|
||||
#pragma once |
||||
|
||||
#include "MapProvider.h" |
||||
|
||||
#include <QByteArray> |
||||
#include <QMutex> |
||||
#include <QNetworkProxy> |
||||
#include <QNetworkReply> |
||||
#include <QPoint> |
||||
#include <QString> |
||||
|
||||
class BingMapProvider : public MapProvider { |
||||
Q_OBJECT |
||||
public: |
||||
BingMapProvider(quint32 averageSize, QGeoMapType::MapStyle mapType, |
||||
QObject* parent); |
||||
|
||||
~BingMapProvider(); |
||||
|
||||
protected: |
||||
// Define the url to Request
|
||||
virtual QString _getURL(int x, int y, int zoom, |
||||
QNetworkAccessManager* networkManager) = 0; |
||||
|
||||
const QString _versionBingMaps = "563"; |
||||
}; |
||||
|
||||
const quint32 AVERAGE_BING_STREET_MAP = 1297; |
||||
const quint32 AVERAGE_BING_SAT_MAP = 19597; |
||||
|
||||
// -----------------------------------------------------------
|
||||
// Bing Road Map
|
||||
|
||||
class BingRoadMapProvider : public BingMapProvider { |
||||
Q_OBJECT |
||||
public: |
||||
BingRoadMapProvider(QObject* parent) |
||||
: BingMapProvider(AVERAGE_BING_STREET_MAP, QGeoMapType::StreetMap, |
||||
parent) {} |
||||
|
||||
protected: |
||||
QString _getURL(int x, int y, int zoom, |
||||
QNetworkAccessManager* networkManager); |
||||
}; |
||||
|
||||
// -----------------------------------------------------------
|
||||
// Bing Satellite Map
|
||||
|
||||
class BingSatelliteMapProvider : public BingMapProvider { |
||||
Q_OBJECT |
||||
public: |
||||
BingSatelliteMapProvider(QObject* parent) |
||||
: BingMapProvider(AVERAGE_BING_SAT_MAP, QGeoMapType::SatelliteMapDay, |
||||
parent) {} |
||||
|
||||
protected: |
||||
QString _getURL(int x, int y, int zoom, |
||||
QNetworkAccessManager* networkManager); |
||||
}; |
||||
|
||||
// -----------------------------------------------------------
|
||||
// Bing Hybrid Map
|
||||
|
||||
class BingHybridMapProvider : public BingMapProvider { |
||||
Q_OBJECT |
||||
public: |
||||
BingHybridMapProvider(QObject* parent) |
||||
: BingMapProvider(AVERAGE_BING_SAT_MAP, QGeoMapType::HybridMap, |
||||
parent) {} |
||||
|
||||
protected: |
||||
QString _getURL(int x, int y, int zoom, |
||||
QNetworkAccessManager* networkManager); |
||||
}; |
@ -0,0 +1,23 @@
@@ -0,0 +1,23 @@
|
||||
#include "StatkartMapProvider.h" |
||||
#if defined(DEBUG_GOOGLE_MAPS) |
||||
#include <QFile> |
||||
#include <QStandardPaths> |
||||
#endif |
||||
#include "QGCMapEngine.h" |
||||
|
||||
StatkartMapProvider::StatkartMapProvider(QObject* parent) |
||||
: MapProvider(QString("https://www.norgeskart.no/"), QString("png"), |
||||
AVERAGE_TILE_SIZE, QGeoMapType::StreetMap, parent) {} |
||||
|
||||
StatkartMapProvider::~StatkartMapProvider() {} |
||||
|
||||
QString StatkartMapProvider::_getURL(int x, int y, int zoom, |
||||
QNetworkAccessManager* networkManager) { |
||||
Q_UNUSED(networkManager); |
||||
return QString("http://opencache.statkart.no/gatekeeper/gk/" |
||||
"gk.open_gmaps?layers=topo4&zoom=%1&x=%2&y=%3") |
||||
.arg(zoom) |
||||
.arg(x) |
||||
.arg(y); |
||||
} |
||||
|
@ -0,0 +1,23 @@
@@ -0,0 +1,23 @@
|
||||
#pragma once |
||||
|
||||
#include "MapProvider.h" |
||||
|
||||
#include <QByteArray> |
||||
#include <QMutex> |
||||
#include <QNetworkProxy> |
||||
#include <QNetworkReply> |
||||
#include <QPoint> |
||||
#include <QString> |
||||
|
||||
class StatkartMapProvider : public MapProvider { |
||||
|
||||
Q_OBJECT |
||||
public: |
||||
StatkartMapProvider(QObject* parent); |
||||
~StatkartMapProvider(); |
||||
|
||||
protected: |
||||
QString _getURL(int x, int y, int zoom, |
||||
QNetworkAccessManager* networkManager); |
||||
}; |
||||
|
Loading…
Reference in new issue