gpt4 book ai didi

javascript - 在leaflet-geoman中绘制圆圈时,有没有办法限制圆圈的大小?

转载 作者:行者123 更新时间:2023-12-04 09:30:18 25 4
gpt4 key购买 nike

您可能知道,在leaflet-geoman 中有一个名为“drawCircle”的函数,它可以让您绘制一个以中心为轴心并用鼠标扩大半径的圆。
对于我的用法,我想在拖动圆圈时限制该功能,因为现在我要做的就是在 pm:create 事件之后检查圆圈是否太大。
这就是我现在正在做的:

       if (e.layer.getRadius() > 400) {
attivaToast("Circle is too big!", "error", "#e74c3c");
map.removeLayer(e.layer)
return;
}
这就是我想要的,但我做不到:
map.on('pm:someCircleDragEvent' e=> checkCircleSize(e));
如果您有任何想法,请提前致谢。
PS:我不想使用 Leaflet.draw 或其他插件。

最佳答案

如需快速修复,您可以调用:

map.pm.Draw.Circle._syncCircleRadius = function _syncCircleRadius() {
var A = this._centerMarker.getLatLng();

var B = this._hintMarker.getLatLng();

var distance = A.distanceTo(B);
if(distance < 500){
this._layer.setRadius(distance);
}
}
这是个好主意,我会在leaflet-geoman 中实现👍

关于javascript - 在leaflet-geoman中绘制圆圈时,有没有办法限制圆圈的大小?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62873028/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com