我有一个带有以下geo json的MultiPoint功能。
{
"type": "Feature",
"geometry": {
"type": "MultiPoint",
"coordinates": [
[
-123,
58
],
[
-152.32,
17.5
],
[
52.02,
42.64
]
]
}
}
当我在地图上绘制并通过样式函数应用任何图标时,它会应用于所有点。但我想在地图上显示上面的所有3个坐标和不同的图标。有什么办法可以为多点功能中的每个坐标添加不同的标记吗?
答案 0 :(得分:0)
要在MultiPoint中为不同坐标应用不同的样式,需要为每个坐标编写不同的样式。我在plunker中创建了一个视图。浏览此link
中的代码new ol.style.Style({
image: new ol.style.Circle({
radius: 5,
fill: new ol.style.Fill({
color: 'orange'
})
}),
geometry: function(feature) {
var coordinates = feature.getGeometry().getCoordinates();
return new ol.geom.Point(coordinates[0]);
}
})
在几何函数中考虑单个坐标并为其应用样式。
注意:如果MultiPoint的点数更多,代码就会膨胀。