Math.atan2 找到方向

如果你正在使用向量或线条,你将在某个阶段想要获得向量或线的方向。或者从一个点到另一个点的方向。

Math.atan(yComponent, xComponent) 返回 -Math.PIMath.PI 范围内的半径角(-180180 度)

矢量的方向

var vec = {x : 4, y : 3};
var dir = Math.atan2(vec.y, vec.x);  // 0.6435011087932844

一条线的方向

var line = {
    p1 : { x : 100, y : 128},
    p2 : { x : 320, y : 256}
}
// get the direction from p1 to p2
var dir = Math.atan2(line.p2.y - line.p1.y, line.p2.x - line.p1.x); // 0.5269432271894297

从一个点到另一个点的方向

var point1 = { x: 123, y : 294};
var point2 = { x: 354, y : 284};
// get the direction from point1 to point2
var dir = Math.atan2(point2.y - point1.y, point2.x - point1.x); // -0.04326303140726714