我的代码: -
jQuery.sap.require( "sap.ui.vbm.AnalyticMap");
var oMap = new sap.ui.vbm.AnalyticMap({
width:"100%",
height: '100%',
plugin: false,
regions: {
template: new sap.ui.vbm.Region({
code: 'NA',
color: '#fff',
})
}
});
return new sap.m.Page({
title: "Maps",
content: [oMap]
});
我正在尝试突出显示地图上的某个区域,但可能是我没有正确关注API,感谢任何帮助
答案 0 :(得分:0)
您需要拥有您所在地区的GeoJSON文件才能在地图上显示。 GeoJSON文件在下面的地方搜索,按照here所述的给定顺序进行搜索。
您必须在网关系统的MIME存储库中上传GeoJSON文件。您可以在Internet上找到许多GeoJSON的来源。
http://www.naturalearthdata.com/downloads/
然而,许多这些来源将为您提供ShapeFiles。这些包含用于在地图上定义区域的地理空间矢量数据。 您必须使用GDAL将shapefile转换为geojson,或者如果您使用QGIS(像我一样),GDAL也将同时安装。
GDAL:http://www.gdal.org/
QGIS:http://www.qgis.org/en/site/forusers/download.html
您可以运行以下命令将Shape文件转换为GeoJSON
ogr2ogr -f "GeoJSON" target.json source.shp
或者,如果您还想定义CRS
ogr2ogr -f "GeoJSON" -s_srs EPSG:3857 -t_srs EPSG:4326 target.json source.shp
您可以使用此geojson.io
创建自己的区域获得GeoJSON文件后,可以将它们添加到MIME存储库中,也可以在应用程序中为目标GeoJSON提供路径
sap.ui.vbm.AnalyticMap.GeoJSONURL = "/model/GeoJSON.json";
var oMap = new sap.ui.vbm.AnalyticMap({
width:"100%",
height: '100%',
plugin: false,
regions: {
template: new Region({
code: 'NA',
color: 'rgba(184,225,245,1.0)',
})
}
});
您也可以参考此article。