3D平板多边形的交点 [英] Intersection between 3D flat polygons

查看:131
本文介绍了3D平板多边形的交点的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

如何找到两个(或更多个)的三维平面多边形的交点(对于简单的情况下它们都凸)? 寻求能够提供的交线,如果有任何的算法。 注提出了无限平面平面案件的方法是没有用的。

How to find intersections between two (or more) 3D planar polygons (for the simplest case they are all convex)? Seeking algorithms able to provide the intersection line if there is any. Note the methods proposed for infinite Plane-Plane cases are not useful.

推荐答案

有两种情况:

多边形都处于同一平面上。

查找所有内部指向第一个多边形。

Find all internal points to the first polygon.

任意取第1多边形,循环通过第二多边形的所有顶点,并确定它们是否位于内部或第一多边形之外。这样做很容易凸多边形:请参见这里

Arbitrarily take the first polygon, loop through all the vertices of the 2nd polygon and determine whether they lie inside or outside the first polygon. Doing this is easy for convex polygons: see here.

查找2多边形之间的交叉点

Find the intersection points between the 2 polygons

要找到交点取多边形和环中的一个的每个边缘通过另一多边形的所有边找到,如果它们相交的任何地方。这可以通过使用公式交点中找到。

To find the intersection points take each edge of one of the polygons and loop through all the edges of the other polygon to find if they intersect anywhere. this can be found by using the formula for the intersection of 2 lines.

的相交区域是与在内部点和顶点相交点形成的多边形

The intersected region is the polygon formed with vertices at the internal points and the intersected points.

的2个多边形趴在不同的平面上。

查找第二多边形与第一个平面的交点。可以通过考虑第二多边形的每个边,并找到边缘与第一个多边形平面之间的交点处执行此操作。这可以通过使用公式要线和一个平面的之间的交点被发现。

Find the intersection of the 2nd polygon with the plane of the first one. You can do this by considering each edge of the 2nd polygon, and finding the intersection between the edge and the plane of the first polygon. This can be found using the formula for the intersection between a line and a plane.

检查是否相交点,你找到的谎言里面还是第一面的外面。

Check whether the intersection points you found lie inside or outside of the first polygon.

这篇关于3D平板多边形的交点的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆