使用Mapbox TMS创建XML文件

时间:2018-06-06 09:32:17

标签: xml mapbox raster qgis

我正在寻找一种在QGis中显示Mapbox地图的方法,因此它被识别为栅格图层。

我已经尝试了this,我成功通过TileLayer插件添加了TMS图层,使用我的mapbox网址如下: https://a.tiles.mapbox.com/styles/v1/[my_username]/[map_ID]/tiles/256/ {Z} / {X} / {Y}?=的access_token [my_access_token]

问题是,以这种方式添加图层不会被QGIS识别为栅格图层,我需要对其执行一些栅格操作。

另一方面,我尝试创建一个这样的XML文件:

<GDAL_WMS>
    <Service name="TMS">
        <ServerUrl>https://a.tiles.mapbox.com/styles/v1/[my_username]/[map_ID]/tiles/256/${z}/${x}/${y}?access_token=[my_access_token]</ServerUrl>
    </Service>
    <DataWindow>
        <UpperLeftX>-20037508.34</UpperLeftX>
        <UpperLeftY>20037508.34</UpperLeftY>
        <LowerRightX>20037508.34</LowerRightX>
        <LowerRightY>-20037508.34</LowerRightY>
        <TileLevel>18</TileLevel>
        <TileCountX>1</TileCountX>
        <TileCountY>1</TileCountY>
        <YOrigin>top</YOrigin>
    </DataWindow>
    <Projection>EPSG:3857</Projection>
    <BlockSizeX>256</BlockSizeX>
    <BlockSizeY>256</BlockSizeY>
    <BandsCount>3</BandsCount>
    <Cache />
</GDAL_WMS>

但它不起作用。

使用与Google TMS网址完全相同的XML http://mt.google.com/vt/lyrs=s&amp;x=${x}&amp;y=${y}&amp;z=${z}  工作正常。

我在这里错过了什么吗?

1 个答案:

答案 0 :(得分:1)

所以我尝试导入到QGIS的XML文件已经正确。 使用GDAL命令

gdalinfo --debug on mapboxTMS.xml

返回了一个连贯的输出。

此外,使用命令gdal_translate可以正确提取区域,这正是我要执行的栅格操作。就我而言,我是这样使用的:

gdal_translate -projwin 1499373.73124 3010255.99556 1499925.16592 3009716.74729 -of GTiff mapboxTMS.xml result.tif

因此,问题实际上出在QGIS方面。 this answer认为,这可能是由于GDAL WMS驱动程序无法与QGIS正常配合使用。