我正在尝试在 2D 平面上进行一些几何计算(例如点到线的距离)。
目前正在研究turfjs
计算点到线的距离。
代码
距离.js:
// hello
var turf = require('@turf/turf')
init();
// init,
function init() {
distance();
}
function distance() {
// line
let line = turf.lineString([
[0, 0],
[3, 4]
]);
console.log(line);
// point
let point = turf.point([3, 0]);
console.log(point);
// calculate distance from point to line, using planar,
let dis = turf.pointToLineDistance(point, line, {
units: 'degrees',
method: 'planar'
});
console.log("distance: %f", dis);
}
输出
距离:2.398995395932417
如果我将点更改为[30, 0]
并将线更改为[0, 0], [30, 40]
,则输出为:
距离:25.741472914575986
该程序使用degrees
作为单元和planar
作为方法。
预期的结果是2.4
和24
,但事实并非如此。
问题
- 那么,这是否意味着这些点位于曲面上,而不是平面上?
- 是否可以在平面而不是曲面中定义点&线&多边形?
- 如果没有,那么是否还有另一个类似的工具来执行此任务?