早教吧 育儿知识 作业答案 考试题库 百科 知识分享

c++怎么判断1个点在一个不规则的四边形内已知一个不规则的四边形的四个点(x1,y1),(x2,y2),(x3,y3),(x4,y4).和任意一点(x,y).怎么判断(x,y)在这个四边形内?急求只相对这个题目的算法,不要太笼统,只

题目详情
c++ 怎么判断1个点在一个不规则的四边形内
已知一个不规则的四边形的四个点(x1,y1),(x2,y2),(x3,y3),(x4,y4).和任意一点(x,y).怎么判断(x,y)在这个四边形内?
急求只相对这个题目的算法,不要太笼统,只要能解决这道题就行.
2楼的回答不明白,两两直线的斜率必相等?怎么也相等不起来.能不能给个具体的例子看下?3楼算法有问题,不说别的,如果是个正方形或矩形,随便用几个点代进去,就不成立
▼优质解答
答案和解析
四个点两两组成直线.
可得四个点的直线方程.
两点式直线方程:y-y1=[(y1-y2)/(x1-x2)]×(x-x1)
其中两两直线的斜率必相等,就是:(y1-y2)/(x1-x2) 部分相等.
将x带入四个方程解y',那么y必在斜率相等的一对直线之间,就是y'