三点坐标求圆方程
求过A(x1,y1),B(x2,y2),C(x3,y3)三点的圆方程M.
设圆心M(x0,y0), 设线段AB的中点为P, 设线段AC的中点为Q, 则根据垂径定理, 有
- PM⋅AB=0
- QM⋅AC=0
可得方程组
①(x0−xP)(x2−x1)+(y0−yP)(y2−y1)=0
②(x0−xQ)(x3−x1)+(y0−yQ)(y3−y1)=0
第②式可变形为
③(x0−xP)(x3−x1)+(y0−yP)(y3−y1)=t
其中, t=(xQ−xP)(x3−x1)+(yQ−yP)(y3−yp). 接下来就是加减消元.
由 (y2−y1)×③−(y3−y1)×① 得
x0−xP=(x3−x1)(y2−y1)−(x2−x1)(y3−y1)t(y2−y1).
由 (x2−x1)×③−(x3−x1)×① 得
y0−yP=(y3−y1)(x2−x1)−(y2−y1)(x3−x1)t(x2−x1).
解出圆心x0,y0后, 半径r=∣MA∣.
如果用中垂线交点列方程那就慢了!
这里解方程组是有技巧的, 那就是先变形再消元, 这种技巧非常实用!
以BC为直径的圆方程:
F1(x,y):=(x−x2)(x−x3)+(y−y2)(y−y3)=0
设P(x,y)在BC为直径的圆上, 则PB⋅PC=0, 整理就是上式.
直线BC方程:
F2(x,y):=(x−x2)(y3−y2)−(y−y2)(x3−x2)=0
设Q(x,y)在直线BC上, 取BC的一个法向量(即与BC垂直的向量)
n=((y3−y2),−(x3−x2)),
则根据关系式QB⋅n=0, 整理可得上式
过 B,C两点的圆可以表示为
F1(x,y)+λF2(x,y)=0
只需验证两条(它就是所谓的圆系方程):
(1)B,C两点坐标满足上面等式成立;
(2)上式可整理成圆的标准式
第一条容易验证, 第二条略微麻烦. 这里给出第二条验证的思路, 不妨假设BC的中点为坐标原点(否则做平移处理), 则从形式上看, 有
F1(x,y)=x2+y2−r2
F2(x,y)=2ax+2by
即F1(x,y)+λF2(x,y)=(x+λa)2+(y+λb)2−r2−λ2(a2+b2)=0 为圆方程
把A点坐标代入上式, 可解出,
λ=−F2(x1,y1)F1(x1,y1),
因此过A,B,C三点的圆方程为:
F1(x,y)−F2(x1,y1)F1(x1,y1)F2(x,y)=0
熟知结论:
-
(1)四边形共圆, 则对角互补
-
(2)两个复数相乘的几何意义是这两个复数的模长相乘,辐角相加
-
(3)两复数z1=k1(a1+b1i)与z2=k2(a2+b2i)的辐角相等或互补, 则a1b2=b1a2
设P(x,y)在圆上, 设复数
z1=(x3−x1)+(y3−y1)i(x2−x1)+(y2−y1)i, z2=(x3−x)+(y3−y)i(x2−x)+(y2−y)i,
则根据复数乘法几何意义, z1的辐角对应于角∠BAC, z2的辐角对应于角∠BPC. 由于P,A,B,C四点共圆, 因此复数z1与z2的辐角相等或互补, 于是, 根据第三条结论可得圆M方程.
这里给出相关表达式
- k1=1/[(x3−x1)2+(y3−y1)2]
- k2=1/[(x3−x)2+(y3−y)2]
-
a1=(x2−x1)(x3−x1)+(y2−y1)(y3−y1)
-
a2=(y2−y1)(x3−x1)−(x2−x1)(y3−y1)
-
b1=(x2−x)(x3−x)+(y2−y)(y3−y)
-
b2=(y2−y)(x3−x)−(x2−x)(y3−y)=(y3−y2)x+(x2−y3)y+y2x3−x2y3=(y3−y2)(x−x2)−(x2−x3)(y−y2)
-
a1b2=b1a2
它们和待定系数法里的公式对应关系为:
-
F1(x,y)=b1
-
F1(x1,y1)=a1
-
F2(x,y)=b2
-
F2(x1,y1)=a2
假设圆方程为: x2+y2+2gx+2fy+c=0
于是有
⎩⎨⎧x12+y12+2gx1+2fy1+c=0x22+y22+2gx2+2fy2+c=0x32+y32+2gx3+2fy3+c=0
最后解出参数g,f,c
设圆心为 (x0,x0), 构造复数
c=(x0−x3)+i(y0−y3)
z1=(x1−x3)+i(y1−y3)
z2=(x2−x3)+i(y2−y3)
则r2=ccˉ=(c−z1)c−z1=(z−z2)c−z2
根据中间两项
ccˉ=ccˉ+z1zˉ1−czˉ1−z1cˉ
有
czˉ1+cˉz1=z1zˉ1
同理
czˉ2+cˉz2=z2zˉ2
解得
c=z2zˉ1−z1zˉ2z2z1zˉ1−z1z2zˉ2
最后回代得
- x0=x3+Re{c}, 这里 Re{c}表示c的实部
- y0=y3+Im{c}, 这里 Im{c}表示c的虚部
这种方法结论很简洁, 可直接得到圆心坐标
- 如果要直接得到圆方程, 则用待定系数法比较简单
- 如果要得到圆心的坐标, 则用解方程法和复数推导法比较简单
点我返回主页, 查看更多精彩