平面三个点系列

如何判断三点共线

题目:已知平面的三个点,p1(x1,y1),p2(x2,y2),p3(x3,y3),判断他们是否共线

方法一:

判断直线(p1—>p2)和直线(p1—>p3)的斜率是否相同,即(y2-y1)/(x2-x1) 是否等于(y3-y1)/(x3-x1),也就是:(y2-y1) * (x3-x1) - (y3-y1) * (x2-x1) 是否等于零。

方法二:

用行列式求解三角形面积,判断面积是否为0

S = 1/2*(x1y2+x2y3*+x3y1-x3y2-x2y1-x1y3)

方法三:

海伦公式求解三角面积,判断面积是否为零。海伦公式:S=sqrt(p * (p-a) * (p-b) * (p-c))。其中a,b,c为三角形边长,p是三角形的半周长。

已知不共线三点坐标,求解外心坐标,外接圆半径

问题:已知不共线的三点(x1,y1),(x2,y2),(x3,y3),求解外接圆半径 r 和圆心坐标(x,y)
则有圆的公式:
(x1-x)2 + (y1-y)2 = r2 (1)
(x2-x)2 + (y2-y)2 = r2 (2)
(x3-x)2 + (y3-y)2 = r2 (2)
(1) - (2) 得
x12 - x22 - 2x1x + 2x2x + y12 - y22 - 2y1y + 2y2y = 0
(2) - (3)得
x22 - x32 - 2x2x + 2x3x + y22 - y32 - 2y2y + 2y3y = 0
整理上面两个式子得
(2x2-2x1)x + (2y2-2y1)y = x22-x12 + y22 - y12
(2x3-2x2)x + (2y3-2y2)y = x32-x22 + y32 - y22
令:
A1 = 2x2 - 2x1,B1 = 2y2 - 2y1,C1 = x22 - x12 + y22 - y12
A2 = 2x3 - 2x2,B2 = 2y3 - 2y2,C2 = x32 - x22 + y32 - y22
于是:
A1x + B1y = C1
A2x + B2y = C2
得到:
x = (B2C1 - B1C2) / (A1B2 - A2B1)
y = (A1C2 - A2C1) / (A1B2 - A2B1)
r = sqrt((x-x1)2 + (y-y1)2)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

逃夭丶

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值