繁体   English   中英

Turf.js 沿方法给出错误的结果

[英]Turf.js along method is giving wrong results

我尝试使用 truf js 并绘制路线,我得到了水平线和路线。 我不知道还能做什么,因为它适用于其他类型的路线。

for (let i = 0; i < lineDistance; i += steps) {
    const segment = turf.along(route.features[0], i);
    arc.push(segment.geometry.coordinates);
}

上面的代码是我如何计算要在地图上绘制的弧。

如图所示,路线坐标有两个检查点/路线点。 洛杉矶(美国)和东京(日本)。

const route = {
                'type': 'FeatureCollection',
                'features': [
                    {
                        'type': 'Feature',
                        'geometry': {
                            'type': 'LineString',
                            'coordinates': routePoints
                        }
                    }
                ]
            };

在此处输入图像描述

将“i”更改为从“1”而不是“0”开始,弧将正确计算。

for (let i = 1; i < lineDistance; i += steps) {
    const segment = turf.along(route.features[0], i);
    arc.push(segment.geometry.coordinates);
}

解释...在计算横跨太平洋的弧线时,沿路线的第一个点是“错误的”,因此它围绕地球作为第二个点(错误?)。

通过将每个段打印到 console.log() 发现了这一点,并注意到第一个点 (i=0) 与其他点非常不同。

for (let i = 0; i < lineDistance; i += steps) {
    const segment = turf.along(route.features[0], i);
    console.log(segment.geometry.coordinates);
    arc.push(segment.geometry.coordinates);
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM