多边形的交点

给出了两个多边形.如何确定一个多边形是在另一个多边形的内部,外部还是相交?
多边形可以是凹面或凸面.

解决方法

您想对凸多边形使用分离轴定理.
基本上,对于每个多边形的每个面,您将每个多边形投影到该面的法线上,并查看这些投影是否相交.

您可以执行各种技巧来减少必须执行的这些计算的数量 – 例如,您可以在对象周围绘制一个矩形,并假设如果两个对象的矩形不相交,则它们本身不相交. (这更容易,因为检查这些盒子的交叉点的计算成本较低,而且通常非常直观.)

凹面多边形更难.我认为您可以将多边形分解为一组凸多边形,并尝试检查每个交叉的组合,但我不认为自己在这方面有足够的技巧来尝试它.

相关文章

本程序的编译和运行环境如下(如果有运行方面的问题欢迎在评...
水了一学期的院选修,万万没想到期末考试还有比较硬核的编程...
补充一下,先前文章末尾给出的下载链接的完整代码含有部分C&...
思路如标题所说采用模N取余法,难点是这个除法过程如何实现。...
本篇博客有更新!!!更新后效果图如下: 文章末尾的完整代码...
刚开始学习模块化程序设计时,估计大家都被形参和实参搞迷糊...