Floating point 体素三角形相交的保守AABB
我试图解决的问题是为三角形和立方体的交点生成AABB。在2D中,所需的体积为绿色正方形,如下所示: 输入点和输出边界为IEEE浮点 我目前使用浮点运算的方法是将三角形剪裁到体素的每个面上,并绑定生成的多边形。但是,使用浮点表示交点不精确,因此可能会出现结果AABB未完全绑定交点区域的情况。我需要一个保守的界限 我研究了使用区间算法进行剪辑,但存在两个潜在问题:Floating point 体素三角形相交的保守AABB,floating-point,geometry,rounding-error,interval-arithmetic,Floating Point,Geometry,Rounding Error,Interval Arithmetic,我试图解决的问题是为三角形和立方体的交点生成AABB。在2D中,所需的体积为绿色正方形,如下所示: 输入点和输出边界为IEEE浮点 我目前使用浮点运算的方法是将三角形剪裁到体素的每个面上,并绑定生成的多边形。但是,使用浮点表示交点不精确,因此可能会出现结果AABB未完全绑定交点区域的情况。我需要一个保守的界限 我研究了使用区间算法进行剪辑,但存在两个潜在问题: 对于运营链而言,间隔时间可能会变大 如果条件依赖于区间的分支是一团乱,结果可能是不确定的,这意味着两种可能性都需要计算。例如,如果(
- 对于运营链而言,间隔时间可能会变大
- 如果条件依赖于区间的分支是一团乱,结果可能是不确定的,这意味着两种可能性都需要计算。例如,如果(线穿过平面)
提前感谢。体素大小应该是所需精度的重要参考。为什么不在所有的边上加一个恒定的分数(比如千分之一)?在使用AABB时,这不会导致性能显著下降。不过,体素的大小不会影响相交结果的准确性,我认为这取决于操作数的指数。我明白你的意思,但是对于一个小的体素,误差可能超过1/1000,我需要保证误差的界限。例如,一个体素可能只有10个浮点值宽,人们可以很容易地想象一系列操作累积1ULP的误差,这是体素大小的1/10