我有一个瓷砖来源作为网址,并希望将这些添加到我的地图中。 我可以使用 Google Map 和 OSMDroid 执行此操作,但我不知道如何使用 Mapbox 来解决这个问题。
我的网址格式为"http...mysource..x=..y=..z=.."
我见过网络解决方案,但我没有找到适合移动设备的方法。
答案 0 :(得分:2)
我假设您有一个平铺服务器的网址,例如http://server/tiles/{z}/{x}/{y}.png
如果有,请更新您的问题。
请参阅此Mapbox示例,https://www.mapbox.com/android-sdk/examples/custom-raster/以添加自定义Mapbox样式。请注意setStyleUrl
的参数。打开那个json文件并检查它。
mapView.setStyleUrl("https://www.mapbox.com/android-sdk/files/mapbox-raster-v8.json");
然后,您需要创建两个JSON文件。请参阅此project(适用于iOS,但JSON文件对于Android,Web和iOS都是相同的。)。
tile.json
示例
{
"name": "geography-class",
"version": "1.0.0",
"description": "",
"type": "overlay",
"format": "png",
"minzoom": 0,
"maxzoom": 8,
"bounds": [-117.30596604, 32.78617375, -117.21820077, 32.88817706],
"scale": "1",
"profile": "mercator",
"tiles": ["http://server/tiles/{z}/{x}/{y}.png"],
"tilejson": "2.0.0",
"scheme": "xyz"
}
Mapbox Style JSON,将其放在setStyleUrl()
{
"version": 8,
"sources": {
"yourTileLayer": {
"url": "http://server/tiles/tile.json",
"type": "raster",
"tiles": [
"http://server/tiles/{z}/{x}/{y}.png"
],
"tileSize": 256
}
},
"layers": [
{
"id": "yourTileLayer",
"type": "raster",
"source": "yourTileLayer"
}
]
}