我需要通过在地图上拖动特征来在地图上移动特征位置。
使用地图服务器时,我可以做到这一点,但无法在HTML Map上实现。 在文档或搜索问题中找不到与此相关的任何内容。
谢谢
答案 0 :(得分:0)
假设您的特征是图形对象。
在地图上移动鼠标时,使用光标的位置修改要素的几何形状(这对于点要素来说很容易,但是对于折线和多边形来说则更为复杂)。另外,您应该为此事件监听器使用debounce or throttle function,以防止计算过多。
在地图mouseup上,删除mousemove和mouseup事件监听器
要计算圆的半径,您必须考虑地图的当前范围。这是计算半径的方法:
function getSearchAtPointRadius(mapView) {
//20m if your map units are in meters
return 20 * (mapView.extent.xmax - mapView.extent.xmin) / mapView.width
}