计算两个多边形的交集

一、问题描述


已知两个多边形Polygon1和Polygon2,分别由点集C1={P1,P2,...,Pm}和C2={Q1,Q2,...,Qn}表示,求这两个多边形的交集。

二、算法思想


两个多边形相交后,其顶点要么是两个多边形边的交点,要么是在多边形内部的点。

三、算法步骤


  1. 计算两个多边形每条边之间的交点。

  1. 计算包含在多边形内部的点。

  1. 将交点和多边形内部的点,按逆时针(或顺时针)排序,得出最终的点集。

四、代码实现


代码基本实现如下:

4.1 头文件

PolygonIntersection.h

4.2 主函数调用实现

main.cpp

你可能感兴趣的:(数学方法,图像处理opencv,算法,opencv)