Commit 863c0ffc authored by Pierre TILAK's avatar Pierre TILAK

Fix Image format bing/google

parent 89753977
......@@ -5,9 +5,9 @@
#endif
#include "QGCMapEngine.h"
BingMapProvider::BingMapProvider(quint32 averageSize,
BingMapProvider::BingMapProvider(QString imageFormat, quint32 averageSize,
QGeoMapType::MapStyle mapType, QObject* parent)
: MapProvider(QString("https://www.bing.com/maps/"), QString("png"),
: MapProvider(QString("https://www.bing.com/maps/"), imageFormat,
averageSize, mapType, parent) {}
BingMapProvider::~BingMapProvider() {}
......
......@@ -12,8 +12,8 @@
class BingMapProvider : public MapProvider {
Q_OBJECT
public:
BingMapProvider(quint32 averageSize, QGeoMapType::MapStyle mapType,
QObject* parent);
BingMapProvider(QString imageFormat, quint32 averageSize,
QGeoMapType::MapStyle mapType, QObject* parent);
~BingMapProvider();
......@@ -35,7 +35,7 @@ class BingRoadMapProvider : public BingMapProvider {
Q_OBJECT
public:
BingRoadMapProvider(QObject* parent)
: BingMapProvider(AVERAGE_BING_STREET_MAP, QGeoMapType::StreetMap,
: BingMapProvider(QString("png"), AVERAGE_BING_STREET_MAP, QGeoMapType::StreetMap,
parent) {}
protected:
......@@ -50,7 +50,7 @@ class BingSatelliteMapProvider : public BingMapProvider {
Q_OBJECT
public:
BingSatelliteMapProvider(QObject* parent)
: BingMapProvider(AVERAGE_BING_SAT_MAP, QGeoMapType::SatelliteMapDay,
: BingMapProvider(QString("jpg"), AVERAGE_BING_SAT_MAP, QGeoMapType::SatelliteMapDay,
parent) {}
protected:
......@@ -65,7 +65,7 @@ class BingHybridMapProvider : public BingMapProvider {
Q_OBJECT
public:
BingHybridMapProvider(QObject* parent)
: BingMapProvider(AVERAGE_BING_SAT_MAP, QGeoMapType::HybridMap,
: BingMapProvider(QString("jpg"),AVERAGE_BING_SAT_MAP, QGeoMapType::HybridMap,
parent) {}
protected:
......
......@@ -5,10 +5,11 @@
#endif
#include "QGCMapEngine.h"
GoogleMapProvider::GoogleMapProvider(quint32 averageSize, QGeoMapType::MapStyle mapType ,QObject* parent)
: MapProvider(QString("https://www.google.com/maps/preview"),
QString("png"), averageSize, mapType, parent),
GoogleMapProvider::GoogleMapProvider(QString imageFormat, quint32 averageSize,
QGeoMapType::MapStyle mapType,
QObject* parent)
: MapProvider(QString("https://www.google.com/maps/preview"), imageFormat,
averageSize, mapType, parent),
_googleVersionRetrieved(false), _googleReply(nullptr) {
// Google version strings
......@@ -122,8 +123,9 @@ void GoogleMapProvider::_tryCorrectGoogleVersions(
}
}
QString GoogleStreetMapProvider::_getURL(int x, int y, int zoom,
QNetworkAccessManager* networkManager) {
QString
GoogleStreetMapProvider::_getURL(int x, int y, int zoom,
QNetworkAccessManager* networkManager) {
// http://mt1.google.com/vt/lyrs=m
QString server = "mt";
QString request = "vt";
......
......@@ -12,8 +12,8 @@
class GoogleMapProvider : public MapProvider {
Q_OBJECT
public:
GoogleMapProvider(quint32 averageSize, QGeoMapType::MapStyle mapType,
QObject* parent);
GoogleMapProvider(QString imageFormat, quint32 averageSize,
QGeoMapType::MapStyle mapType, QObject* parent);
~GoogleMapProvider();
......@@ -67,8 +67,8 @@ class GoogleStreetMapProvider : public GoogleMapProvider {
Q_OBJECT
public:
GoogleStreetMapProvider(QObject* parent)
: GoogleMapProvider(AVERAGE_GOOGLE_STREET_MAP, QGeoMapType::StreetMap,
parent) {}
: GoogleMapProvider(QString("png"), AVERAGE_GOOGLE_STREET_MAP,
QGeoMapType::StreetMap, parent) {}
protected:
QString _getURL(int x, int y, int zoom,
......@@ -82,7 +82,7 @@ class GoogleSatelliteMapProvider : public GoogleMapProvider {
Q_OBJECT
public:
GoogleSatelliteMapProvider(QObject* parent)
: GoogleMapProvider(AVERAGE_GOOGLE_SAT_MAP,
: GoogleMapProvider(QString("jpg"), AVERAGE_GOOGLE_SAT_MAP,
QGeoMapType::SatelliteMapDay, parent) {}
protected:
......@@ -97,8 +97,8 @@ class GoogleLabelsMapProvider : public GoogleMapProvider {
Q_OBJECT
public:
GoogleLabelsMapProvider(QObject* parent)
: GoogleMapProvider(AVERAGE_TILE_SIZE, QGeoMapType::CustomMap, parent) {
}
: GoogleMapProvider(QString("png"), AVERAGE_TILE_SIZE,
QGeoMapType::CustomMap, parent) {}
protected:
QString _getURL(int x, int y, int zoom,
......@@ -112,8 +112,8 @@ class GoogleTerrainMapProvider : public GoogleMapProvider {
Q_OBJECT
public:
GoogleTerrainMapProvider(QObject* parent)
: GoogleMapProvider(AVERAGE_GOOGLE_TERRAIN_MAP, QGeoMapType::TerrainMap,
parent) {}
: GoogleMapProvider(QString("png"), AVERAGE_GOOGLE_TERRAIN_MAP,
QGeoMapType::TerrainMap, parent) {}
protected:
QString _getURL(int x, int y, int zoom,
......
......@@ -287,14 +287,14 @@ QGCMapEngine::cacheTile(QString type, const QString& hash, const QByteArray& ima
QString
QGCMapEngine::getTileHash(QString type, int x, int y, int z)
{
return QString().sprintf("%09d%08d%08d%03d", getQGCMapEngine()->urlFactory()->getIdFromType(type), x, y, z);
return QString().sprintf("%010d%08d%08d%03d", getQGCMapEngine()->urlFactory()->getIdFromType(type), x, y, z);
}
//-----------------------------------------------------------------------------
QString
QGCMapEngine::hashToType(const QString& hash)
{
QString type = hash.mid(0,9);
QString type = hash.mid(0,10);
return urlFactory()->getTypeFromId(type.toInt());
}
......
......@@ -428,46 +428,14 @@ UrlFactory::_getURL(QString type, int x, int y, int zoom, QNetworkAccessManager*
//-----------------------------------------------------------------------------
quint32 UrlFactory::averageSizeForType(QString type) {
qDebug() << "UrlFactory::averageSizeForType for" << type;
if (_providersTable.find(type) != _providersTable.end()) {
return _providersTable[type]->getAverageSize();
}
qDebug() << "UrlFactory::averageSizeForType " << type
<< " Not registered";
// switch (type) {
// case GoogleMap:
// return AVERAGE_GOOGLE_STREET_MAP;
// case BingMap:
// return AVERAGE_BING_STREET_MAP;
// case GoogleSatellite:
// return AVERAGE_GOOGLE_SAT_MAP;
// case MapboxSatellite:
// return AVERAGE_MAPBOX_SAT_MAP;
// case BingHybrid:
// case BingSatellite:
// return AVERAGE_BING_SAT_MAP;
// case GoogleTerrain:
// return AVERAGE_GOOGLE_TERRAIN_MAP;
// case MapboxStreets:
// case MapboxStreetsBasic:
// case MapboxRunBikeHike:
// return AVERAGE_MAPBOX_STREET_MAP;
qCDebug(QGCMapUrlEngineLog) << "UrlFactory::averageSizeForType " << type
<< " Not registeret";
// case AirmapElevation:
// return AVERAGE_AIRMAP_ELEV_SIZE;
// case GoogleLabels:
// case MapboxDark:
// case MapboxLight:
// case MapboxOutdoors:
// case MapboxPencil:
// case OpenStreetMap:
// case GoogleHybrid:
// case MapboxComic:
// case MapboxEmerald:
// case MapboxHighContrast:
// case MapboxHybrid:
// case MapboxPirates:
// case MapboxWheatPaste:
// default:
// break;
// }
......
......@@ -126,25 +126,7 @@ QGeoTiledMappingManagerEngineQGC::QGeoTiledMappingManagerEngineQGC(const QVarian
// QGCGEOMAPTYPE(QGeoMapType::SatelliteMapDay, "MapQuest Satellite Map", "MapQuest satellite map", false, false, UrlFactory::MapQuestSat),
// */
//
// /*
// * These are OK as you need your own token for accessing it. Out-of-the box, QGC does not even offer these unless you enter a proper Mapbox token.
// */
//
// QGCGEOMAPTYPE(QGeoMapType::StreetMap, "Mapbox Street Map", "Mapbox Street Map", false, false, UrlFactory::MapboxStreets),
// QGCGEOMAPTYPE(QGeoMapType::SatelliteMapDay, "Mapbox Satellite Map", "Mapbox Satellite Map", false, false, UrlFactory::MapboxSatellite),
// QGCGEOMAPTYPE(QGeoMapType::CustomMap, "Mapbox High Contrast Map", "Mapbox High Contrast Map", false, false, UrlFactory::MapboxHighContrast),
// QGCGEOMAPTYPE(QGeoMapType::CustomMap, "Mapbox Light Map", "Mapbox Light Map", false, false, UrlFactory::MapboxLight),
// QGCGEOMAPTYPE(QGeoMapType::CustomMap, "Mapbox Dark Map", "Mapbox Dark Map", false, false, UrlFactory::MapboxDark),
// QGCGEOMAPTYPE(QGeoMapType::HybridMap, "Mapbox Hybrid Map", "Mapbox Hybrid Map", false, false, UrlFactory::MapboxHybrid),
// QGCGEOMAPTYPE(QGeoMapType::CustomMap, "Mapbox Wheat Paste Map", "Mapbox Wheat Paste Map", false, false, UrlFactory::MapboxWheatPaste),
// QGCGEOMAPTYPE(QGeoMapType::StreetMap, "Mapbox Streets Basic Map", "Mapbox Streets Basic Map", false, false, UrlFactory::MapboxStreetsBasic),
// QGCGEOMAPTYPE(QGeoMapType::CustomMap, "Mapbox Comic Map", "Mapbox Comic Map", false, false, UrlFactory::MapboxComic),
// QGCGEOMAPTYPE(QGeoMapType::CustomMap, "Mapbox Outdoors Map", "Mapbox Outdoors Map", false, false, UrlFactory::MapboxOutdoors),
// QGCGEOMAPTYPE(QGeoMapType::CycleMap, "Mapbox Run, Byke and Hike Map", "Mapbox Run, Byke and Hike Map", false, false, UrlFactory::MapboxRunBikeHike),
// QGCGEOMAPTYPE(QGeoMapType::CustomMap, "Mapbox Pencil Map", "Mapbox Pencil Map", false, false, UrlFactory::MapboxPencil),
// QGCGEOMAPTYPE(QGeoMapType::CustomMap, "Mapbox Pirates Map", "Mapbox Pirates Map", false, false, UrlFactory::MapboxPirates),
// QGCGEOMAPTYPE(QGeoMapType::CustomMap, "Mapbox Emerald Map", "Mapbox Emerald Map", false, false, UrlFactory::MapboxEmerald),
// });
//-- Users (QML code) can define a different user agent
if (parameters.contains(QStringLiteral("useragent"))) {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment