Leaflet获取具有特定起点和终点的子折线

时间:2016-11-16 15:38:08

标签: javascript leaflet polyline

我希望获得给定折线的“子折线”,该折线由特定的起点和终点(以米为单位)确定。

例如,我有一条500米的折线(使用30个坐标(不在相同的空间内分隔)构建)并且我想以不同的颜色为米200和300之间的线着色。是否可以使用Leaflet函数?

2 个答案:

答案 0 :(得分:1)

在这里查看LineStringSelect插件:https://github.com/w8r/L.Control.LineStringSelect

使用演示(点击折线上的2个不同位置):

https://w8r.github.io/L.Control.LineStringSelect

答案 1 :(得分:1)

所以基本上你要问“如果我有一条折线和一个距离值,沿着折线的点与线的起点所需的长度距离是多少?”

该算法已被多次覆盖,例如:

算法总是相同的:将折线/线串分成段,测量每个段的长度,定位点,在点所在的段中应用直接插值。

请记住,2D笛卡尔平面中的几何图形与大地水准面表面中的几何图形不同,特别是在测量距离时。对GeographicLib及其操纵测地线的方法进行一些研究。

对于您的问题«是否可以使用Leaflet功能?»,答案是«没有,Leaflet没有实现此算法»。最简单的方法是阅读答案中提到的Leaflet插件的源代码,或者使用Turf库中的along()方法。