Geometry 与两点相交的圆的中心

Geometry 与两点相交的圆的中心,geometry,points,Geometry,Points,给定二维平面上的两个点,以及与这两个点相交的半径为r的圆,计算该圆中心的公式是什么 我意识到圆圈可以定位在两个地方。我想要一个圆,它的中心在顺时针方向上首先遇到,当从任意角度开始扫过围绕其中一个点连接两个点的线时。我想这是我问题的下一个阶段,在我找到第一部分的答案之后 我希望整个计算过程可以在没有速度三角法的情况下完成。我从整数坐标开始,如果有帮助的话,将以整数坐标结束。这里已经回答了这个问题: 这可能也很有趣:。不确定这是否是问这个问题的正确地方,但是: 让我们: 第一圈: x = x3 +

给定二维平面上的两个点,以及与这两个点相交的半径为r的圆,计算该圆中心的公式是什么

我意识到圆圈可以定位在两个地方。我想要一个圆,它的中心在顺时针方向上首先遇到,当从任意角度开始扫过围绕其中一个点连接两个点的线时。我想这是我问题的下一个阶段,在我找到第一部分的答案之后


我希望整个计算过程可以在没有速度三角法的情况下完成。我从整数坐标开始,如果有帮助的话,将以整数坐标结束。

这里已经回答了这个问题:


这可能也很有趣:。

不确定这是否是问这个问题的正确地方,但是:

让我们:

第一圈:

x = x3 + sqrt(r^2-(q/2)^2)*(y1-y2)/q
y = y3 + sqrt(r^2-(q/2)^2)*(x2-x1)/q  
第二圈:

x = x3 - sqrt(r^2-(q/2)^2)*(y1-y2)/q
y = y3 - sqrt(r^2-(q/2)^2)*(x2-x1)/q  
A=(ax,ay)
B=(bx,by)
d=((bx ax)^2+(按ay)^2)^(1/2)#从A到B的距离
r=圆的半径

如果(2*r>d)在现实世界中没有解决方案-存在复杂的解决方案;-)

如果(2*r=d)有一个解:A和B之间的中间

从a到B画一条线。

在中点处从该线绘制垂直线,并向外延伸到距离D,使r=(D^2+(D/2)^2)^(1/2)。根据需要向左或向右选择。

解决此问题时,您将始终需要三角函数。给定r,(x1,y1)和(x2,y2),你可以有一个固定的数学公式。但同样,这个公式将涉及一些计算量。你在找更简单的吗?如果需要trig,我想它是需要的。最后,我并不真正关心任何角度的绝对值,但我会比较角度的相对大小(例如,哪个更大或更小)。谢谢大家-这是我一直在努力通过谷歌找到的答案,但运气不佳。我试图围绕地理点绘制一个凹多边形,并通过围绕点云的边缘“滚动”一个圆来实现这一点。这只是解决方案的一部分。到目前为止,我所发现的凹面外壳的唯一解决方案要么是封闭源代码工具,要么是专利算法。这很有帮助。你找到解决方案了吗?q是两点之间的距离,总是2r或更小。数学博士的解决方案给出了两个中心。从A点到B点按时钟顺序运行时,如何确定使用哪个中心
x = x3 - sqrt(r^2-(q/2)^2)*(y1-y2)/q
y = y3 - sqrt(r^2-(q/2)^2)*(x2-x1)/q