我希望获得给定折线的“子折线”,该折线由特定的起点和终点(以米为单位)确定。
例如,我有一条500米的折线(使用30个坐标(不在相同的空间内分隔)构建)并且我想以不同的颜色为米200和300之间的线着色。是否可以使用Leaflet函数?
答案 0 :(得分:1)
在这里查看LineStringSelect插件:https://github.com/w8r/L.Control.LineStringSelect
使用演示(点击折线上的2个不同位置):
答案 1 :(得分:1)
所以基本上你要问“如果我有一条折线和一个距离值,沿着折线的点与线的起点所需的长度距离是多少?”
该算法已被多次覆盖,例如:
算法总是相同的:将折线/线串分成段,测量每个段的长度,定位点,在点所在的段中应用直接插值。
请记住,2D笛卡尔平面中的几何图形与大地水准面表面中的几何图形不同,特别是在测量距离时。对GeographicLib及其操纵测地线的方法进行一些研究。
对于您的问题«是否可以使用Leaflet功能?»,答案是«没有,Leaflet没有实现此算法»。最简单的方法是阅读答案中提到的Leaflet插件的源代码,或者使用Turf库中的along()
方法。