C#点和直线关系程序

来源:百度知道 编辑:UC知道 时间:2024/05/31 06:14:13
给定P1、P2、P3的X、Y轴坐标,判断P3在P1、P2所成直线的上方还是下方。

1、根据P1、P2点求出直线方程(这个应该不用教吧?两点式代入)
2、将P3点x坐标代入方程,求出y值
3、跟原P3点的y值做比较,比之大则在线的下方,反之则在上方

提个相关扩展,你没考虑点会在直线的左右方吗?

几何问题啊。
具体做法是,p2和p3连成直线,判断p1位置。
只需要分别计算p1水平方向和垂直方向上,与直线的交点,即作Pa,Pb。
p1.x <= pa.x || p2.y <= p1.y 就是在上方。反之在下方。

计算交点的办法,由于是水平和垂直,所以简单的用斜率和X,Y坐标计算即可,一元方程阿。

这是面向对象的题,首先声明Point对象,p1,p2,p3然后判断!