我正在寻找有关如何找到圆弧中点的帮助。我有起点和终点、圆心和半径。我在网上到处搜索,找不到可以在任何地方转换为代码的答案。如果有人有任何想法,请告诉我。下图是我试图找到的(假设已经找到圆心)。

最佳答案

x1,x2 的平均值和 y1,y2 的平均值的 Atan2() 为您提供到中点的角度。因此,圆弧处的中点为:

double c=Math.Atan2(y1+y2, x1+x2);
double x_mid=R*Math.Cos(c);
double y_mid=R*Math.Sin(c);

请注意,我从 Atan2 的两个参数中删除了 1/2(平均值)的因子,因为这不会改变角度。

更新: 该方法将始终在周长上的两点之间的最短弧上找到中点。这可能是也可能不是您需要的。

关于c# - 给定起点、终点和(圆的)中心点,查找圆弧的中点,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11674239/

10-09 21:38