javascript - 如何在两点之间获取javascript中的 Angular

标签 javascript math angle

image

在上图中需要两点之间的 Angular

如果绿点被认为是原点 (px,py) 即 (0,0) 红点是 (ax,ay)

顺便说一下,上面的图像 Angular 应该在 45 度左右....锐 Angular

更多示例:

3:00 是 0 度 12:00 是 90 度 9:00 是 180 度 6:00是270度

这是我到目前为止尝试过的代码:

function angle(cx, cy, ex, ey) {
var dy = ey - cy;
var dx = ex - cx;
var theta = Math.atan2(dy, dx); // range (-PI, PI]
theta *= 180 / Math.PI; // rads to degs, range (-180, 180]
if (theta < 0) theta = 360 + theta; // range [0, 360)
return theta;
}

最佳答案

试试这个,对我来说效果很好。

function angle(cx, cy, ex, ey) {
  var dy = ey - cy;
  var dx = ex - cx;
  var theta = Math.atan2(dy, dx); // range (-PI, PI]
  theta *= 180 / Math.PI; // rads to degs, range (-180, 180]
  //if (theta < 0) theta = 360 + theta; // range [0, 360)
  return theta;
}

关于javascript - 如何在两点之间获取javascript中的 Angular ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53337799/

相关文章:

javascript - JQuery - 使用选择器 :contains - Weird Results

c# - OpenCV - 如何检测和测量两帧之间的角度?

android - 在android中的 Canvas 上旋转图像

latitude-longitude - 经度/纬度到四元数

c - eglibc-2.13 中的 sin() 是如何实现的?

php - 获取一个条目的多个日期之间的平均时间

javascript - jQuery fadeIn() 未达到完全不透明

javascript - JavaScript 的 Date 对象容易受到 Y2038 问题的影响吗?

javascript - 在 ES6 中将段落从 div 的左边缘移动到右边缘(文本应被删除并重新出现)

java - 大于 lg N 的最小整数