QGroundControl
Ground Control Station for MAVLink Drones
Loading...
Searching...
No Matches
GoogleMapProvider.h
Go to the documentation of this file.
1#pragma once
2
3#include "MapProvider.h"
4
5// h: roads only
6// m: standard roadmap
7// p: terrain
8// r: somehow altered roadmap
9// s: satellite only
10// t: terrain only
11// y: hybrid (s,h)
12// traffic
13// transit
14// bike
15// mt.google.com: mt0, mt1, mt2 mt3
16// size: 256x256
17// maxZoom: 20
18
19static constexpr const quint32 AVERAGE_GOOGLE_STREET_MAP = 4913;
20static constexpr const quint32 AVERAGE_GOOGLE_SAT_MAP = 56887;
21static constexpr const quint32 AVERAGE_GOOGLE_TERRAIN_MAP = 19391;
22
24{
25protected:
26 GoogleMapProvider(const QString &mapName, const QString &versionRequest, const QString &version, const QString &imageFormat, quint32 averageSize,
27 QGeoMapType::MapStyle mapType)
29 mapName,
30 QStringLiteral("https://www.google.com/maps/preview"),
31 imageFormat,
32 averageSize,
33 mapType)
34 , _versionRequest(versionRequest)
35 , _version(version) {}
36
37private:
38 void _getSecGoogleWords(int x, int y, QString& sec1, QString& sec2) const;
39 QString _getURL(int x, int y, int zoom) const final;
40
41 const QString _versionRequest;
42 const QString _version;
43 const QString _mapUrl = QStringLiteral("http://mt%1.google.com/vt/%2=%3&hl=%4&x=%5%6&y=%7&z=%8&s=%9&scale=%10");
44 const QString _secGoogleWord = QStringLiteral("Galileo");
45 const QString _scale = QStringLiteral("1");
46};
47
49{
50public:
53 QStringLiteral("Google Street Map"),
54 QStringLiteral("lyrs"),
55 QStringLiteral("m"),
56 QStringLiteral("png"),
58 QGeoMapType::StreetMap) {}
59};
60
62{
63public:
66 QStringLiteral("Google Satellite"),
67 QStringLiteral("lyrs"),
68 QStringLiteral("s"),
69 QStringLiteral("jpg"),
71 QGeoMapType::SatelliteMapDay) {}
72};
73
75{
76public:
79 QStringLiteral("Google Labels"),
80 QStringLiteral("lyrs"),
81 QStringLiteral("h"),
82 QStringLiteral("png"),
84 QGeoMapType::CustomMap) {}
85};
86
88{
89public:
92 QStringLiteral("Google Terrain"),
93 QStringLiteral("v"),
94 QStringLiteral("t,r"),
95 QStringLiteral("png"),
97 QGeoMapType::TerrainMap) {}
98};
99
101{
102public:
105 QStringLiteral("Google Hybrid"),
106 QStringLiteral("lyrs"),
107 QStringLiteral("y"),
108 QStringLiteral("png"),
110 QGeoMapType::HybridMap) {}
111};
static constexpr const quint32 AVERAGE_GOOGLE_STREET_MAP
static constexpr const quint32 AVERAGE_GOOGLE_SAT_MAP
static constexpr const quint32 AVERAGE_GOOGLE_TERRAIN_MAP
static constexpr const quint32 QGC_AVERAGE_TILE_SIZE
Definition MapProvider.h:29
GoogleMapProvider(const QString &mapName, const QString &versionRequest, const QString &version, const QString &imageFormat, quint32 averageSize, QGeoMapType::MapStyle mapType)