c# - 我怎样才能找到圆的两点之间的角度?

标签 c# math geometry trigonometry

我有圆和半径的 centerX 和 centerY 值。现在我有 (x1, y1) 点位于圆上。我想知道该点的圆角。

我尝试了下面的公式来获得 (x1, y1) 的角度。但它没有给出通用的解决方案。

radian = Math.Atan2(y1 - Cy, x1 - Cx);
angle = radian * (180 / Math.PI);

请引用我的要求截图。

enter image description here

任何人请让我提出我做错了什么。?

最佳答案

来自MSDN documentation page for Atan2 ,它返回 -180 到 180 度(-pi 到 pi 弧度)之间的结果。另一方面,您需要 0 到 360。为此,只需将 360 添加到最终答案(如果为负数)。

radian = Math.Atan2(y1 - Cy, x1 - Cx);
angle = radian * (180 / Math.PI);
if (angle < 0.0) 
   angle += 360.0;

关于c# - 我怎样才能找到圆的两点之间的角度?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45632911/

相关文章:

javascript - 将 div 放置在具有起始 Angular 和结束 Angular 圆周围

wpf - 旋转几何路径

java - 如何在 Java 和 C# 之间共享类定义

c# - 如何记录严重级别的事件日志?

c# - Linq 在不传递上下文的情况下编译查询

math - float 学有问题吗?

math - 如何计算等距矩形/正方形的高度和宽度

math - 未评级实体与威尔逊评分负面评级实体——如何处理?

javascript - 计算模拟时钟指针相对于边界框的动态长度

c# - parentForm Reference怎么为null?