得到两个垂直于矢量的点

时间:2017-12-21 13:16:40

标签: javascript vector openlayers

嗨,我无法弄清楚如何创建一个与另一个垂直的矢量。 [-0.17640, 51.426700], [0.17640, 51.796700]这是第一个矢量,我正在尝试创建一条垂直线,直线穿过它的中间。这就是iv到目前为止所做的,但线条不是正确的角度。

startPosition = [-0.17640, 51.426700];
endPosition = [0.17640, 51.796700];

var midPoint = [];
midPoint[0] = (startPosition[0] + endPosition [0]) / 2;
midPoint[1] = (startPosition[1] + endPosition [1]) / 2;

positions[0] = midPoint;
positions[1] = [startPosition[1], startPosition[0] * -1];
positions[2] = [endPosition[0], endPosition[1]];

This is what i have so far

1 个答案:

答案 0 :(得分:3)

为了使2D矢量垂直于另一个2D矢量,您可以简单地交换X和Y分量并取消新的Y分量。所以{x,y}变成{y | -x}。

中点:[(x1 + x2)/ 2,(y1 + y2)/ 2]

查看https://www.wikihow.com/Find-the-Perpendicular-Bisector-of-Two-Points