QGroundControl
Ground Control Station for MAVLink Drones
Loading...
Searching...
No Matches
ElevationMapProvider.h
Go to the documentation of this file.
1#pragma once
2
3#include "MapProvider.h"
4
6{
7protected:
8 ElevationProvider(const QString &mapName, const QString &referrer, const QString &imageFormat, quint32 averageSize,
9 QGeoMapType::MapStyle mapType)
11 mapName,
12 referrer,
13 imageFormat,
14 averageSize,
15 mapType) {}
16
17public:
18 bool isElevationProvider() const final { return true; }
19 virtual QByteArray serialize(const QByteArray &image) const = 0;
20};
21
24{
25public:
30 QStringLiteral("bin"),
32 QGeoMapType::TerrainMap) {}
33
34 int long2tileX(double lon, int z) const final;
35 int lat2tileY(double lat, int z) const final;
36
37 QGCTileSet getTileCount(int zoom, double topleftLon,
38 double topleftLat, double bottomRightLon,
39 double bottomRightLat) const final;
40
41 QByteArray serialize(const QByteArray &image) const final;
42
43 static constexpr const char *kProviderKey = "Copernicus";
44 static constexpr const char *kProviderNotice = "© Airbus Defence and Space GmbH";
45 static constexpr const char *kProviderURL = "https://terrain-ce.suite.auterion.com";
46 static constexpr quint32 kAvgElevSize = 2786;
47
48private:
49 QString _getURL(int x, int y, int zoom) const final;
50
51 const QString _mapUrl = QString(kProviderURL) + QStringLiteral("/api/v1/carpet?points=%1,%2,%3,%4");
52};
https://spacedata.copernicus.eu/collections/copernicus-digital-elevation-model
int lat2tileY(double lat, int z) const final
static constexpr const char * kProviderNotice
int long2tileX(double lon, int z) const final
static constexpr const char * kProviderURL
QByteArray serialize(const QByteArray &image) const final
QGCTileSet getTileCount(int zoom, double topleftLon, double topleftLat, double bottomRightLon, double bottomRightLat) const final
static constexpr const char * kProviderKey
static constexpr quint32 kAvgElevSize
virtual QByteArray serialize(const QByteArray &image) const =0
ElevationProvider(const QString &mapName, const QString &referrer, const QString &imageFormat, quint32 averageSize, QGeoMapType::MapStyle mapType)
bool isElevationProvider() const final