Collision detection 最小封闭球面-从OBB派生?

Collision detection 最小封闭球面-从OBB派生?,collision-detection,bounding-box,bounding-volume,Collision Detection,Bounding Box,Bounding Volume,我需要计算3D中一组点的最小封闭球体,它已经被定向边界框(OBB)封闭 我的假设是否正确,即球体可以从OBB导出,如下所示 sphere_radius = 0.5 * obb_diagonal sphere_center = obb_center 如果没有, 为什么? OBB可以使用吗 假设定向边界框可以是任意定向的,则不能保证可以直接从定向边界框构造最小边界球体 作为反例,考虑一个立方体包围盒,从(1,1,1)(1,1,1)/代码>,包含立方体表面中心的六个点:(1,0,0),(-1,0,

我需要计算3D中一组点的最小封闭球体,它已经被定向边界框(OBB)封闭

我的假设是否正确,即球体可以从OBB导出,如下所示

sphere_radius = 0.5 * obb_diagonal
sphere_center = obb_center
如果没有,

  • 为什么?
  • OBB可以使用吗

假设定向边界框可以是任意定向的,则不能保证可以直接从定向边界框构造最小边界球体

作为反例,考虑一个立方体包围盒,从<代码>(1,1,1)<代码>(1,1,1)/代码>,包含立方体表面中心的六个点:<代码>(1,0,0)<代码>,<代码>(-1,0,0)<代码>,<代码>(0,1,0)< /代码>,代码>(0,-1,0)< /代码>,代码>(0,0,1)< /代码>,代码>(0,0,-1)< /代码> ./p><P 这组点的最小边界球是半径为1的球,以
(0,0,0)
为中心。由您建议的算法构造的球将是一个以原点为中心的半径
1.7
(ish)的球


相反,您需要使用算法来查找最小边界球体。有一些算法可以在线性时间内实现这一点(请参阅查找位置的指针。'Miniball'是一个很好的搜索关键字。)

您能提供“定向边界框”的定义吗?(它是如何定位的?定位是否总是保证盒子的体积最小化?)