gpt4 book ai didi

c++ - 立方体球体相交测试?

转载 作者:可可西里 更新时间:2023-11-01 18:40:19 24 4
gpt4 key购买 nike

最简单的方法是什么?我的数学不及格,我在互联网上发现了非常复杂的公式...我希望有更简单的公式吗?

我只需要知道一个球体是否与一个立方体重叠,我不关心它在哪个点重叠等等。

我也希望它能利用两个形状都是对称的这一事实。

编辑立方体在 x,y,z 轴上直线对齐

最佳答案

Jim Arvo 在 Graphics Gems 2 中有一个适用于 N 维的算法。我相信您想要本页底部的“案例 3”:http://www.ics.uci.edu/~arvo/code/BoxSphereIntersect.c为您的案例清理的是:

bool BoxIntersectsSphere(Vec3 Bmin, Vec3 Bmax, Vec3 C, float r) {
float r2 = r * r;
dmin = 0;
for( i = 0; i < 3; i++ ) {
if( C[i] < Bmin[i] ) dmin += SQR( C[i] - Bmin[i] );
else if( C[i] > Bmax[i] ) dmin += SQR( C[i] - Bmax[i] );
}
return dmin <= r2;
}

关于c++ - 立方体球体相交测试?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4578967/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com