如何确定两个凸多边形对应Non-Fit Polygon(NFP)的参考点
凸多边形Non-Fit Polygon(NFP)参考点选择规则
针对无旋转场景下基于边角度排序拼接的凸NFP算法,参考点的选择需严格遵循以下规则,即可避免因参考点错误导致的多边形相交判定异常:
- 参考点必须是轨道多边形自身局部坐标系下的固定锚点,整个NFP计算流程中不可变更。工业实现中最常用的选择为轨道多边形的第一个顶点,或是轨道多边形的形心,选定后所有相关计算需统一以该点为基准。
- 算法初始化时,需先将固定多边形与轨道多边形摆放为刚好接触且无重叠的初始合法位姿,此时轨道多边形参考点在全局坐标系下的坐标,就是你后续拼接生成的NFP的首个顶点坐标,后续按边角度排序拼接边向量的操作都要基于这个起始点推导。
- 最终生成的NFP仅适配你选定的这一个参考点:如果后续更换轨道多边形的参考点,必须重新计算对应版本的NFP,不可混用不同参考点生成的NFP做碰撞判定或布局计算。正常情况下,只要参考点固定、初始位姿合法,当轨道多边形的参考点落在NFP外部时,两个凸多边形一定不相交;参考点落在NFP内部或边界上时,两个多边形一定相交或接触。
内容的提问来源于stack exchange,提问作者kenmark
相关产品推荐
相关产品推荐

