/************************************************************************** * 文件名 :tibingmapprovider.h * ======================================================================= * 创 建 者 :田小帆 * 创建日期 :2021-8-31 * 邮 箱 :499131808@qq.com * Q Q :499131808 * 公 司 : * 功能描述 : * * ====================================================================== * 修改者 : * 修改日期 : * 修改内容 : * ====================================================================== * ***************************************************************************/ #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; };