00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026 #ifndef GOOGLESATMAPADAPTER_H
00027 #define GOOGLESATMAPADAPTER_H
00028
00029 #include "tilemapadapter.h"
00030 namespace qmapcontrol
00031 {
00033
00037 class GoogleSatMapAdapter : public TileMapAdapter
00038 {
00039 Q_OBJECT
00040 public:
00042
00045 GoogleSatMapAdapter();
00046 virtual ~GoogleSatMapAdapter();
00047
00048 virtual QPoint coordinateToDisplay(const QPointF&) const;
00049 virtual QPointF displayToCoordinate(const QPoint&) const;
00050
00052
00055 QString getHost () const;
00056
00057
00058 protected:
00059 virtual void zoom_in();
00060 virtual void zoom_out();
00061 virtual QString query(int x, int y, int z) const;
00062 virtual bool isValid(int x, int y, int z) const;
00063
00064 private:
00065 virtual QString getQ(qreal longitude, qreal latitude, int zoom) const;
00066 qreal getMercatorLatitude(qreal YCoord) const;
00067 qreal getMercatorYCoord(qreal lati) const;
00068
00069 qreal coord_per_x_tile;
00070 qreal coord_per_y_tile;
00071 int srvNum;
00072 };
00073 }
00074 #endif