已知一个多边形的所有顶点坐标,如果确定一点是否在这个多边形内?

2024年11月20日 00:32
有3个网友回答
网友(1):

分两种情况:凸多边形,这种很好解决,分别将该点与各顶点连线,如果该直线与多边形各边交点为1,说明点在凸多边形内,否则在外面.

凹多边形:拆成多个凸多边形来处理.首先将凹进去部分提取成单独的凸多边形,用上边方法判断点是否在其中,如果在则该在原凹多边形外面;否则要接着处理,将原凹多边形补全成凸的后,仍用上面方法判断即可.

这里面涉及判断凸凹的问题,可以跟据内角来判断!(如果后一条边与前条边的内角>180说明为凹多边形,因此要将该点提取出来单独算处理,关在原凹多边形中剔除此点)
这个问题,由于边数不确定,用公式不是很好表达的,用程序反而好处理些~~~

网友(2):

先在多边形外部找一个点,用线段连接此点与要考察的点,计算此线段与多边形边界相交的次数。如果为奇数,则在内部;反之则在外部。

在计算交点时如果交点是多边形顶点,相交次数可能算1次也可能算2次,依据是与该顶点相关的两条边是在这个线段的同侧还是异侧。 同算2次,异算1次。

网友(3):

毕业多少年啦

说明公式我要不会啦

但你可以把它放在CAD里
那结果就出来了