Mapbox 添加 WMS 源
Mapbox add WMS source
目前我正在努力在原生 android 平台的地图上添加 WMS 源。我正在使用 mapbox 在应用程序中显示地图。我正在尝试从 Geo-server 添加 WMS 源层但是 WMS 源层在地图上多次添加,如图所示:
这是我用来添加 WMS 源的代码片段:
@Override
public void onMapReady(MapboxMap mapboxMap) {
RasterSource webMapSource = new RasterSource(
"web-map-source",
new TileSet("tileset", "http://geo.skymetweather.com:8081/geoserver/cite/wms/cite:india_district_web?" +
"&bbox=68.036003112793,6.60812377929688,97.5504302978516," +
"37.2502937316895&format=image/png&service=WMS&version=1.1.1&" +
"request=GetMap&srs=EPSG:4326&width=493&height=512&layers=cite:india_district_web"), 256);
mapboxMap.addSource(webMapSource);
// Add the web map source to the map.
RasterLayer webMapLayer = new RasterLayer("web-map-layer", "web-map-source");
mapboxMap.addLayerBelow(webMapLayer, "aeroway-taxiway");
}
如果代码有任何问题请提出建议,或者有人知道如何在地图上添加光栅源吗?
提前致谢!
Mapbox 仅支持 'EPSG:3857' 渲染 WMS 切片,您应该将您的源投影到此 SRS。此外,无需像在 TileSet 的第二行中那样静态设置其边界框。使用此模板在您的应用程序中加载 WMS:
RasterSource webMapSource = new RasterSource(
"web-map-source",
new TileSet("tileset",
'http://a.example.com/wms?bbox={bbox-epsg-3857}&format=image/png&service=WMS&version=1.1.1&request=GetMap&srs=EPSG:3857&width=256&height=256&layers=example')
,256);
目前我正在努力在原生 android 平台的地图上添加 WMS 源。我正在使用 mapbox 在应用程序中显示地图。我正在尝试从 Geo-server 添加 WMS 源层但是 WMS 源层在地图上多次添加,如图所示:
这是我用来添加 WMS 源的代码片段:
@Override public void onMapReady(MapboxMap mapboxMap) {
RasterSource webMapSource = new RasterSource(
"web-map-source",
new TileSet("tileset", "http://geo.skymetweather.com:8081/geoserver/cite/wms/cite:india_district_web?" +
"&bbox=68.036003112793,6.60812377929688,97.5504302978516," +
"37.2502937316895&format=image/png&service=WMS&version=1.1.1&" +
"request=GetMap&srs=EPSG:4326&width=493&height=512&layers=cite:india_district_web"), 256);
mapboxMap.addSource(webMapSource);
// Add the web map source to the map.
RasterLayer webMapLayer = new RasterLayer("web-map-layer", "web-map-source");
mapboxMap.addLayerBelow(webMapLayer, "aeroway-taxiway");
}
如果代码有任何问题请提出建议,或者有人知道如何在地图上添加光栅源吗?
提前致谢!
Mapbox 仅支持 'EPSG:3857' 渲染 WMS 切片,您应该将您的源投影到此 SRS。此外,无需像在 TileSet 的第二行中那样静态设置其边界框。使用此模板在您的应用程序中加载 WMS:
RasterSource webMapSource = new RasterSource(
"web-map-source",
new TileSet("tileset",
'http://a.example.com/wms?bbox={bbox-epsg-3857}&format=image/png&service=WMS&version=1.1.1&request=GetMap&srs=EPSG:3857&width=256&height=256&layers=example')
,256);