我正在尝试测量两点之间相对于 X 轴的角度,以度为单位。
通过查看有关堆栈溢出的其他帖子,我一直在使用以下代码:
private double GetAngleBetweenTwoPoints(double x1, double y1, double x2, double y2)
{
return Math.Atan2(y2 - y1, x2 - x1) * 180.0 / Math.PI;
}
问题是,这似乎适用于某些值,但不适用于其他值。例如,传入 (0, 0, 1, 1) 会正确返回值 45。但是,传入 (0, 0, 2, 1) 会返回 26.565051177078,而我预计是 22.5。
我究竟做错了什么?