Browse Source

google map hybrid

QGC4.4
Phisten 6 years ago
parent
commit
f0fac730ee
  1. 12
      src/QtLocationPlugin/QGCMapUrlEngine.cpp
  2. 1
      src/QtLocationPlugin/QGCMapUrlEngine.h
  3. 8
      src/QtLocationPlugin/QGeoTiledMappingManagerEngineQGC.cpp

12
src/QtLocationPlugin/QGCMapUrlEngine.cpp

@ -56,6 +56,7 @@ UrlFactory::UrlFactory() @@ -56,6 +56,7 @@ UrlFactory::UrlFactory()
_versionGoogleSatellite = "692";
_versionGoogleLabels = "h@336";
_versionGoogleTerrain = "t@354,r@354000000";
_versionGoogleHybrid = "y";
_secGoogleWord = "Galileo";
#endif
// BingMaps
@ -273,6 +274,17 @@ UrlFactory::_getURL(MapType type, int x, int y, int zoom, QNetworkAccessManager* @@ -273,6 +274,17 @@ UrlFactory::_getURL(MapType type, int x, int y, int zoom, QNetworkAccessManager*
return QString("http://%1%2.google.com/%3/v=%4&hl=%5&x=%6%7&y=%8&z=%9&s=%10").arg(server).arg(_getServerNum(x, y, 4)).arg(request).arg(_versionGoogleTerrain).arg(_language).arg(x).arg(sec1).arg(y).arg(zoom).arg(sec2);
}
break;
case GoogleHybrid:
{
QString server = "mt";
QString request = "vt";
QString sec1 = ""; // after &x=...
QString sec2 = ""; // after &zoom=...
_getSecGoogleWords(x, y, sec1, sec2);
_tryCorrectGoogleVersions(networkManager);
return QString("http://%1%2.google.com/%3/lyrs=%4&hl=%5&x=%6%7&y=%8&z=%9&s=%10").arg(server).arg(_getServerNum(x, y, 4)).arg(request).arg(_versionGoogleHybrid).arg(_language).arg(x).arg(sec1).arg(y).arg(zoom).arg(sec2);
}
break;
#endif
case StatkartTopo:
{

1
src/QtLocationPlugin/QGCMapUrlEngine.h

@ -120,6 +120,7 @@ private: @@ -120,6 +120,7 @@ private:
QString _versionGoogleSatellite;
QString _versionGoogleLabels;
QString _versionGoogleTerrain;
QString _versionGoogleHybrid;
QString _secGoogleWord;
#endif

8
src/QtLocationPlugin/QGeoTiledMappingManagerEngineQGC.cpp

@ -108,15 +108,9 @@ QGeoTiledMappingManagerEngineQGC::QGeoTiledMappingManagerEngineQGC(const QVarian @@ -108,15 +108,9 @@ QGeoTiledMappingManagerEngineQGC::QGeoTiledMappingManagerEngineQGC(const QVarian
QGCGEOMAPTYPE(QGeoMapType::StreetMap, "Google Street Map", "Google street map", false, false, UrlFactory::GoogleMap),
QGCGEOMAPTYPE(QGeoMapType::SatelliteMapDay, "Google Satellite Map", "Google satellite map", false, false, UrlFactory::GoogleSatellite),
QGCGEOMAPTYPE(QGeoMapType::TerrainMap, "Google Terrain Map", "Google terrain map", false, false, UrlFactory::GoogleTerrain),
QGCGEOMAPTYPE(QGeoMapType::HybridMap, "Google Hybrid Map", "Google hybrid map", false, false, UrlFactory::GoogleHybrid),
#endif
/* TODO:
* Proper google hybrid maps requires collecting two separate bitmaps and overlaying them.
*
* mapTypes << QGCGEOMAPTYPE(QGeoMapType::HybridMap, "Google Hybrid Map", "Google hybrid map", false, false, UrlFactory::GoogleHybrid),
*
*/
// Bing
QGCGEOMAPTYPE(QGeoMapType::StreetMap, "Bing Street Map", "Bing street map", false, false, UrlFactory::BingMap),
QGCGEOMAPTYPE(QGeoMapType::SatelliteMapDay, "Bing Satellite Map", "Bing satellite map", false, false, UrlFactory::BingSatellite),

Loading…
Cancel
Save