正在显示
2 个修改的文件
包含
29 行增加
和
0 行删除
... | ... | @@ -82,5 +82,33 @@ namespace DmpWmts |
82 | 82 | response.sendError(500, "缩略图范围错误:("); |
83 | 83 | return; |
84 | 84 | } |
85 | + int heigth=abs(yMaxTile-yMinTile); | |
86 | + int width=abs(xMaxTile-xMinTile); | |
87 | + cairo_surface_t *surface = cairo_image_surface_create (CAIRO_FORMAT_ARGB32, 256*(width+1), 256*(heigth+1)); | |
88 | + cairo_t *cr =cairo_create (surface); | |
89 | + for( int i = 0 ; i <= width ; i++ ) | |
90 | + { | |
91 | + for(int j=0;j<=heigth;j++) | |
92 | + { | |
93 | + std::string strBuff; | |
94 | + GetTile(yMaxTile+j,xMinTile+i,iLevel,strBuff,buffLen); | |
95 | + | |
96 | + //TileProviderFactory::BufferCopy(image,surface,cr,i*256,j*256); | |
97 | + //cairo_surface_write_to_png (surface, "./wmts.png"); | |
98 | + } | |
99 | + } | |
100 | + std::string responseData; | |
101 | + cairo_surface_write_to_png_stream(surface, TileProviderFactory::cairo_write_func, &responseData); | |
102 | + | |
103 | + response.removeHeader("Content-Type"); | |
104 | + std::string f = (format == "jpg") ? "image/jpg" : "image/png"; | |
105 | + response.setHeader("Content-Type", f); | |
106 | + response.write(responseData); | |
107 | + cairo_destroy (cr); | |
108 | + cairo_surface_destroy (surface); | |
109 | + } | |
110 | + bool DmpEsriTileProvider::GetTile(int row, int col, int level,std::string& refbuff,int& length ) | |
111 | + { | |
112 | + | |
85 | 113 | } |
86 | 114 | } |
\ No newline at end of file | ... | ... |
... | ... | @@ -21,6 +21,7 @@ namespace DmpWmts |
21 | 21 | DmpEsriTileProvider(const std::string& rootPath); |
22 | 22 | void WriteTile(const int row, const int col, const int level, const std::string& format, DmpServerResponse& response) override; |
23 | 23 | void GetTileThumbnail(DmpTileLayer* dmpTileLayer,DmpServerResponse& response) override; |
24 | + bool GetTile(const int row,const int col,const int level,std::string& rebuff,int& length); | |
24 | 25 | private: |
25 | 26 | std::string IntToHex8Str(const int num); |
26 | 27 | }; | ... | ... |
请
注册
或
登录
后发表评论