1.一种凸多边形碰撞的检测方法,其特征在于,包括:根据所获取的两个凸多边形的形心坐标数据和多边形边法线与形心连线向量的关系,计算得到两个凸多边形的支持点和潜在分离轴集合;
利用爬山法对所述凸多边形的支持点和潜在分离轴集合进行计算,得到所述两个凸多边形的投影重叠长度;
比较所述投影重叠长度的大小关系,得到最小移动距离;
根据所述最小移动距离的数值是否为正值,确定所述两个凸多边形是否发生碰撞。
2.根据权利要求1所述的凸多边形碰撞的检测方法,其特征在于,根据所获取的两个凸多边形的形心坐标数据和多边形边法线与形心连线向量的关系,计算得到两个凸多边形的支持点和潜在分离轴集合,包括:基于所获取的两个凸多边形的形心坐标数据,结合多边形边法线与形心连线向量的关系,计算得到所述两个凸多边形的可碰撞顶点序列;
遍历所述可碰撞顶点序列,得到所述两个凸多边形的支持点和潜在分离轴集合。
3.根据权利要求2所述的凸多边形碰撞的检测方法,其特征在于,基于所获取的两个凸多边形的形心坐标数据,结合多边形边法线与形心连线向量的关系,计算得到所述两个凸多边形的可碰撞顶点序列,包括:根据所获取的两个凸多边形的形心坐标数据,计算得到所述两个凸多边形的形心之间的形心连线向量;
基于所述形心连线向量,结合多边形边法线与形心连线向量的关系进行计算,得到所述两个凸多边形的可碰撞顶点序列。
4.根据权利要求2所述的凸多边形碰撞的检测方法,其特征在于,遍历所述可碰撞顶点序列,得到所述两个凸多边形的支持点和潜在分离轴集合,包括:遍历所述可碰撞顶点序列,计算所述两个凸多边形中的可碰撞顶点序列的所有顶点与另一凸多边形的形心之间的欧氏距离,得到两个欧氏距离组合;
分别从所述两个欧氏距离组合中选择距离最小的顶点作为所述欧氏距离的可碰撞顶点所属的凸多边形的支持点,并将所述支持点的两条邻接边的法线确定为潜在分离轴,以及将所述潜在分离轴构成一个潜在分离轴集合。
5.根据权利要求1所述的凸多边形碰撞的检测方法,其特征在于,利用爬山法对所述凸多边形的支持点和潜在分离轴集合进行计算,得到所述两个凸多边形的投影重叠长度,包括:
基于所述凸多边形的支持点和潜在分离轴集合,计算得到任意一个凸多边形在所属潜在分离轴上投影重叠区间的上限;
利用爬山算法对所述凸多边形的支持点和潜在分离轴集合进行计算,得到另一多边形在所属潜在分离轴上投影重叠区间的下限;
基于所述任意一个凸多边形在所属潜在分离轴上投影重叠区间的上限和另一多边形在所属潜在分离轴上投影重叠区间的下限,计算得到所述两个凸多边形的投影重叠长度。
6.根据权利要求1‑5任一所述的凸多边形碰撞的检测方法,其特征在于,根据所述最小移动距离的数值是否为正值,确定所述两个凸多边形是否发生碰撞,包括:判断所述最小移动距离的数值是否大于0;
若是,则确定所述两个凸多边形发生碰撞,并将所述最小移动距离所属的潜在分离轴确定为碰撞法线;
若否,确定所述两个凸多边形没有发生碰撞。