如何使用 OpenLayers 创建圆形图标图像?
How can I create a round icon image with OpenLayers?
我在我的 ionic 应用程序中使用了 openlayers。现在我将用户放在地图上。我被卡住了,我不知道如何向用户元素添加一些自定义 css 样式,因为它在 html 中不可见。正如您在下面的屏幕截图中看到的那样,我在背景中绘制了圆圈,并在其上添加了图像。现在我希望那个图像也是圆形的。最简单的事情是 css,但我无法将它添加到元素。
示例地图:
https://gyazo.com/3fb6b2e3565572b0c0a64044c645e364
我定义圆圈和图标的部分代码:https://gyazo.com/cc80d368dfa8874739be14ce09eadffd
我找到了 this 的解决方法。
我使用 ol.Overlay 作为标记,而不是使用 ol.Feature。现在我可以放任何 html element on map and control it however i want, since it is accessible in html. (screen #2)
updateMarkers(featuresArr) {
for(var i = 0; i < featuresArr.length; i++)
{
var overlayelement = new ol.Overlay({
stopEvent: false,
positioning: 'center-center',
element: document.getElementById('slika')
});
overlayelement.setPosition(featuresArr[i].getGeometry().getCoordinates());
this.olMap.addOverlay(overlayelement);
}}
我在我的 ionic 应用程序中使用了 openlayers。现在我将用户放在地图上。我被卡住了,我不知道如何向用户元素添加一些自定义 css 样式,因为它在 html 中不可见。正如您在下面的屏幕截图中看到的那样,我在背景中绘制了圆圈,并在其上添加了图像。现在我希望那个图像也是圆形的。最简单的事情是 css,但我无法将它添加到元素。
示例地图: https://gyazo.com/3fb6b2e3565572b0c0a64044c645e364
我定义圆圈和图标的部分代码:https://gyazo.com/cc80d368dfa8874739be14ce09eadffd
我找到了 this 的解决方法。 我使用 ol.Overlay 作为标记,而不是使用 ol.Feature。现在我可以放任何 html element on map and control it however i want, since it is accessible in html. (screen #2)
updateMarkers(featuresArr) {
for(var i = 0; i < featuresArr.length; i++)
{
var overlayelement = new ol.Overlay({
stopEvent: false,
positioning: 'center-center',
element: document.getElementById('slika')
});
overlayelement.setPosition(featuresArr[i].getGeometry().getCoordinates());
this.olMap.addOverlay(overlayelement);
}}