正在显示
4 个修改的文件
包含
23 行增加
和
4 行删除
@@ -9,7 +9,7 @@ | @@ -9,7 +9,7 @@ | ||
9 | #include "dmpservermanager.h" | 9 | #include "dmpservermanager.h" |
10 | #include "dmpserver.h" | 10 | #include "dmpserver.h" |
11 | #include "dmphttputils.h" | 11 | #include "dmphttputils.h" |
12 | -#include "dmpserverConfig.h" | 12 | +#include "dmpserverconfig.h" |
13 | #include <memory> | 13 | #include <memory> |
14 | #include <boost/property_tree/ptree.hpp> | 14 | #include <boost/property_tree/ptree.hpp> |
15 | #include <boost/property_tree/json_parser.hpp> | 15 | #include <boost/property_tree/json_parser.hpp> |
@@ -130,7 +130,7 @@ void DmpManagerApiHandler::regService(const DmpServerApiContext &context) const | @@ -130,7 +130,7 @@ void DmpManagerApiHandler::regService(const DmpServerApiContext &context) const | ||
130 | break; | 130 | break; |
131 | } | 131 | } |
132 | 132 | ||
133 | - default: | 133 | + default: |
134 | break; | 134 | break; |
135 | } | 135 | } |
136 | 136 |
@@ -9,6 +9,10 @@ | @@ -9,6 +9,10 @@ | ||
9 | #include "dmpesritileprovider.h" | 9 | #include "dmpesritileprovider.h" |
10 | #include "dmpwmtsutils.h" | 10 | #include "dmpwmtsutils.h" |
11 | #include <string> | 11 | #include <string> |
12 | +#include "dmptileproviderfactory.h" | ||
13 | +#include <iostream> | ||
14 | +#include "dmptilelayer.h" | ||
15 | +#include <cairo/cairo.h> | ||
12 | 16 | ||
13 | namespace DmpWmts | 17 | namespace DmpWmts |
14 | { | 18 | { |
@@ -60,8 +64,23 @@ namespace DmpWmts | @@ -60,8 +64,23 @@ namespace DmpWmts | ||
60 | } | 64 | } |
61 | fread.close(); | 65 | fread.close(); |
62 | } | 66 | } |
63 | - void DmpEsriTileProvider::GetTileThumbnail(DmpTileLayer* dmpTileLayer,DmpServerResponse& respons) | 67 | + void DmpEsriTileProvider::GetTileThumbnail(DmpTileLayer* dmpTileLayer,DmpServerResponse& response) |
64 | { | 68 | { |
69 | + std::string tilePath=dmpTileLayer->getDataSource(); | ||
70 | + DmpRectangle rectangle=dmpTileLayer->extent(); | ||
71 | + std::string format=dmpTileLayer->getFormat(); | ||
65 | 72 | ||
73 | + DmpPoint min=DmpPoint(rectangle.xmin(),rectangle.ymin()); | ||
74 | + DmpPoint max=DmpPoint(rectangle.xmax(),rectangle.ymax()); | ||
75 | + std::vector<DmpTileMatrixSet*> tileMatrixSets; | ||
76 | + dmpTileLayer->getTileMatrixSets(tileMatrixSets); | ||
77 | + double resolution; | ||
78 | + DmpPoint origin; | ||
79 | + int iLevel,xMinTile,yMinTile, xMaxTile, yMaxTile,buffLen; | ||
80 | + if(!TileProviderFactory::GetTileScale(dmpTileLayer,iLevel,xMinTile,yMinTile, xMaxTile, yMaxTile)) | ||
81 | + { | ||
82 | + response.sendError(500, "缩略图范围错误:("); | ||
83 | + return; | ||
84 | + } | ||
66 | } | 85 | } |
67 | } | 86 | } |
@@ -20,7 +20,7 @@ namespace DmpWmts | @@ -20,7 +20,7 @@ namespace DmpWmts | ||
20 | public: | 20 | public: |
21 | DmpEsriTileProvider(const std::string& rootPath); | 21 | DmpEsriTileProvider(const std::string& rootPath); |
22 | void WriteTile(const int row, const int col, const int level, const std::string& format, DmpServerResponse& response) override; | 22 | void WriteTile(const int row, const int col, const int level, const std::string& format, DmpServerResponse& response) override; |
23 | - void GetTileThumbnail(DmpTileLayer* dmpTileLayer,DmpServerResponse& respons) override; | 23 | + void GetTileThumbnail(DmpTileLayer* dmpTileLayer,DmpServerResponse& response) override; |
24 | private: | 24 | private: |
25 | std::string IntToHex8Str(const int num); | 25 | std::string IntToHex8Str(const int num); |
26 | }; | 26 | }; |
请
注册
或
登录
后发表评论