怎样判断一个点是否在三角形内或者外

怎样判断一个点是否在三角形内或者外
我需要 的 我用来编程的啊 用方程的方法啊
下面的大哥 你说的 方程 我还是没搞懂啊 你用 普通的方式给我写出来好嘛 就是X+Y=0 这样的形式
justyou 1年前 已收到4个回答 举报

rosnlin 花朵

共回答了25个问题采纳率:92% 举报

设三角形三个点
A(a1,a2),B(b1,b2),C(c1,c2)
三条边方程
BC:fa(x,y)=0
AC:fb(x,y)=0
AB:fc(x,y)=0
以BC为例,在三角形内的点必须与点A在BC的同侧
所以对于点D(x,y)
在三角形内首先要满足fa(x,y)*fa(a1,a2)>0
其他边也同理
所以只要比较
fa(x,y)*fa(a1,a2)
fb(x,y)*fb(b1,b2)
fc(x,y)*fc(c1,c2)
这三个数的正负性
1三个数都是正数:D在三角形内
2至少有一个负数:D在三角形外
3有且只有一个0,另两个为正数:在三角形边上
4有且只有一个0,一个正数一个负数:在三角形边的延长线上,也算在三角形外,因为满足2
5有二个0:在三角形的顶点上
6不可能出现3个0,或3个负数,或一个0两个负数的情况

1年前

2

迟光 幼苗

共回答了1个问题 举报

把点的坐标代入三边直线的方程里啊

1年前

2

为了hh的自己 幼苗

共回答了1个问题 举报

这个fa就是函数方程,比如对于AB线段,对应的直线方程就是y=kx+t,其中k就是斜率,t就是直线和Y轴相交点的纵坐标。所以这个fa(x,y) = y-kx-t = 0 假如在三角形内部,那么三角形的C点和判断点D点就应该在AB的同侧,把C和D点坐标放入上述fa(x,y),要么同正,要么同负(或者有一个为0。为0肯定就在直线上了)。...

1年前

1

adams027 幼苗

共回答了22个问题 举报

画图 看一下 就知道了
点到三角形三个顶点的最大距离必小于三角形外接圆直径,那么这个点在圆内
否则,圆外

1年前

0
可能相似的问题
Copyright © 2024 YULUCN.COM - 雨露学习互助 - 19 q. 0.019 s. - webmaster@yulucn.com