求助一个简单数学模型计算问题
本帖最后由 kuangben8 于 2019-3-3 22:02 编辑已知平面上两点坐标和圆的半径,求圆心坐标的公式。
例如:已知点A(X1,Y1)、点B(X2,Y2),半径R
求经过A、B两点且半径为R的圆的圆心O坐标(X0,Y0)。
目前想要根据OA=R,OB=R带入坐标得到两个二元二次方程组,理论上可以解出来,但是实际中没办法化简得出X0和Y0的数学表达式,因此在此求教各位老师看看有没有什么好办法?感谢各位老师的围观。 典型的圆拟合问题。MATLAB求解。 ~~~~~~以下一例供参考~~~~~~
markfang2050 发表于 2019-3-4 00:23
典型的圆拟合问题。MATLAB求解。
请教一下老师该如何做? drc2000再来 发表于 2019-3-4 00:34
~~~~~~以下一例供参考~~~~~~
感谢老师,我明白了!谢谢老师。 drc2000再来 发表于 2019-3-4 00:34
~~~~~~以下一例供参考~~~~~~
如果直线斜率不存在,这个方法是不是就不能用了? Solve[(a - x)^2 + (b - y)^2 == R^2 && (c - x)^2 + (d - y)^2 ==
R^2, {x, y}]
{x -> (4 a^3 + 4 a b^2 - 4 a^2 c + 4 b^2 c - 4 a c^2 + 4 c^3 -
8 a b d - 8 b c d + 4 a d^2 +
4 c d^2 + \((-4 a^3 - 4 a b^2 + 4 a^2 c - 4 b^2 c +
4 a c^2 - 4 c^3 + 8 a b d + 8 b c d - 4 a d^2 -
4 c d^2)^2 -
4 (4 a^2 + 4 b^2 - 8 a c + 4 c^2 - 8 b d + 4 d^2) (a^4 +
2 a^2 b^2 + b^4 - 2 a^2 c^2 + 2 b^2 c^2 + c^4 -
4 a^2 b d - 4 b^3 d - 4 b c^2 d + 2 a^2 d^2 + 6 b^2 d^2 +
2 c^2 d^2 - 4 b d^3 + d^4 - 4 b^2 R^2 + 8 b d R^2 -
4 d^2 R^2)))/(2 (4 a^2 + 4 b^2 - 8 a c + 4 c^2 - 8 b d +
4 d^2)),
y -> (1/(-2 b +
2 d))(-a^2 - b^2 + c^2 + d^2 + (4 a^4)/(
4 a^2 + 4 b^2 - 8 a c + 4 c^2 - 8 b d + 4 d^2) + (4 a^2 b^2)/(
4 a^2 + 4 b^2 - 8 a c + 4 c^2 - 8 b d + 4 d^2) - (8 a^3 c)/(
4 a^2 + 4 b^2 - 8 a c + 4 c^2 - 8 b d + 4 d^2) - (4 b^2 c^2)/(
4 a^2 + 4 b^2 - 8 a c + 4 c^2 - 8 b d + 4 d^2) + (8 a c^3)/(
4 a^2 + 4 b^2 - 8 a c + 4 c^2 - 8 b d + 4 d^2) - (4 c^4)/(
4 a^2 + 4 b^2 - 8 a c + 4 c^2 - 8 b d + 4 d^2) - (8 a^2 b d)/(
4 a^2 + 4 b^2 - 8 a c + 4 c^2 - 8 b d + 4 d^2) + (8 b c^2 d)/(
4 a^2 + 4 b^2 - 8 a c + 4 c^2 - 8 b d + 4 d^2) + (4 a^2 d^2)/(
4 a^2 + 4 b^2 - 8 a c + 4 c^2 - 8 b d + 4 d^2) - (4 c^2 d^2)/(
4 a^2 + 4 b^2 - 8 a c + 4 c^2 - 8 b d +
4 d^2) + (a \((-4 a^3 - 4 a b^2 + 4 a^2 c - 4 b^2 c +
4 a c^2 - 4 c^3 + 8 a b d + 8 b c d - 4 a d^2 -
4 c d^2)^2 -
4 (4 a^2 + 4 b^2 - 8 a c + 4 c^2 - 8 b d + 4 d^2) (a^4 +
2 a^2 b^2 + b^4 - 2 a^2 c^2 + 2 b^2 c^2 + c^4 -
4 a^2 b d - 4 b^3 d - 4 b c^2 d + 2 a^2 d^2 +
6 b^2 d^2 + 2 c^2 d^2 - 4 b d^3 + d^4 - 4 b^2 R^2 +
8 b d R^2 - 4 d^2 R^2)))/(4 a^2 + 4 b^2 - 8 a c +
4 c^2 - 8 b d +
4 d^2) - (c \((-4 a^3 - 4 a b^2 + 4 a^2 c - 4 b^2 c +
4 a c^2 - 4 c^3 + 8 a b d + 8 b c d - 4 a d^2 -
4 c d^2)^2 -
4 (4 a^2 + 4 b^2 - 8 a c + 4 c^2 - 8 b d + 4 d^2) (a^4 +
2 a^2 b^2 + b^4 - 2 a^2 c^2 + 2 b^2 c^2 + c^4 -
4 a^2 b d - 4 b^3 d - 4 b c^2 d + 2 a^2 d^2 +
6 b^2 d^2 + 2 c^2 d^2 - 4 b d^3 + d^4 - 4 b^2 R^2 +
8 b d R^2 - 4 d^2 R^2)))/(4 a^2 + 4 b^2 - 8 a c +
4 c^2 - 8 b d + 4 d^2))}} 如果需要做界面及计算,留下联系QQ方式:lol mathematic程序
Reduce[ a == 0 && b == 0 && c == 0 && d == 6 &&
R == 3 && (a - x)^2 + (b - y)^2 == R^2 && (c - x)^2 + (d - y)^2 ==
R^2, {x, y}]
结果:R == 3 && d == 6 && c == 0 && b == 0 && a == 0 && x == 0 && y == 3
已写出python求解已知任意2点坐标及半径的任意圆的圆心坐标。
页:
[1]
2