【问题标题】:How to add a polygon around a polyline leaflet如何在折线传单周围添加多边形
【发布时间】:2018-10-11 06:39:54
【问题描述】:

大家好,我对 Leaflet 和 turfjs 还很陌生,需要一点帮助。

我已经制作了一条有效的折线,但我想要的是一个跟随折线的多边形/缓冲区,用户可以通过滑块或文本字段以 nm 为单位更改多边形/缓冲区的宽度。

如果有人知道这将是一个很大的帮助

【问题讨论】:

    标签: json leaflet polyline turfjs


    【解决方案1】:

    您可以使用this滑块插件。

    https://codepen.io/anon/pen/RypEOM

    var polygon = turf.polygon([[[-81, 41], [-88, 36], [-84, 31], [-80, 33], [-77, 39], [-81, 41]]]);   
    turfLayer.addData(polygon);
    
    L.control.slider(function(value) {
        if (turfLayer.getLayers().length > 1) {
            turfLayer.removeLayer(turfLayer.getLayers()[1]);
        }
        var buffered = turf.buffer(polygon, value, {units: 'kilometers'});
        turfLayer.addData(buffered);
    
    }, {
        max: 100,
            value: 0,
        step: 10,
        size: '250px',
            orientation:'vertical',
        id: 'slider'
    }).addTo(map);
    

    【讨论】:

    • 您好,感谢您在我的代码中遵循此示例时的回复,它说 var 滑块有错误,它说它已定义但从未使用过?
    • 这一定只是一个警告,但当然该变量不会在任何地方使用,因此您可以将其删除。我已经相应地更新了代码。
    • 我已经让滑块显示在屏幕上并且它可以工作,我的问题是现在坐标是错误的,因为它们在演示中设置。如果有意义的话,我需要它与我的折线相同,折线大约为 15 L.LatLng。如果我输入所有坐标,它就会从屏幕上消失或位置错误
    猜你喜欢
    • 2018-01-17
    • 1970-01-01
    • 2013-06-16
    • 1970-01-01
    • 2013-10-22
    • 1970-01-01
    • 2011-08-12
    • 1970-01-01
    相关资源
    最近更新 更多