You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
PayloadAPP/Src/RescueLoad/map/tianditu/include/tibingmapprovider.h

72 lines
1.9 KiB
C++

#pragma once
#include "timapprovider.h"
class TiBingMapProvider : public TiMapProvider
{
Q_OBJECT
public:
TiBingMapProvider(const QString& imageFormat, const quint32 averageSize,
const QGeoMapType::MapStyle mapType, QObject* parent = nullptr);
~TiBingMapProvider() = default;
protected:
const QString _versionBingMaps = QStringLiteral("563");
};
static const quint32 AVERAGE_BING_STREET_MAP = 1297;
static const quint32 AVERAGE_BING_SAT_MAP = 19597;
// -----------------------------------------------------------
// Bing Road Map
class TiBingRoadMapProvider : public TiBingMapProvider
{
Q_OBJECT
public:
TiBingRoadMapProvider(QObject* parent = nullptr) :
TiBingMapProvider(QStringLiteral("png"), AVERAGE_BING_STREET_MAP, QGeoMapType::StreetMap, parent)
{
}
QString getURL(const int x, const int y, const int zoom,
QNetworkAccessManager* networkManager) override;
};
// -----------------------------------------------------------
// Bing Satellite Map
class TiBingSatelliteMapProvider : public TiBingMapProvider
{
Q_OBJECT
public:
TiBingSatelliteMapProvider(QObject* parent = nullptr) :
TiBingMapProvider(QStringLiteral("jpg"), AVERAGE_BING_SAT_MAP, QGeoMapType::SatelliteMapDay,
parent)
{
}
QString getURL(const int x, const int y, const int zoom,
QNetworkAccessManager* networkManager) override;
};
// -----------------------------------------------------------
// Bing Hybrid Map
class TiBingHybridMapProvider : public TiBingMapProvider
{
Q_OBJECT
public:
TiBingHybridMapProvider(QObject* parent = nullptr) :
TiBingMapProvider(QStringLiteral("jpg"), AVERAGE_BING_SAT_MAP, QGeoMapType::HybridMap, parent)
{
}
QString getURL(const int x, const int y, const int zoom,
QNetworkAccessManager* networkManager) override;
};