我今天遇到了一个小问题,似乎无法以有效的方式解决。给定球体的中心和半径,我想选择3D网格的所有单元格。
我有一个立方网格的单元格,它们都具有相同的尺寸,即立方体具有相同的宽度高度和深度,并且被分成子立方体(“单元”),每个子立方体具有相同的宽度高度和深度。
给定此网格中的3D位置,我想在球体半径内绘制此位置周围的所有单元格。部分包含在球体中的所有细胞都应包含在图纸中。
答案 0 :(得分:1)
计算盒子角落与球体中心的距离:
sqrt(dx^2+dy^2+dz^2)
如果小于或等于你的半径,则绘制立方体......
(编辑:正如Oli评论你可以比较半径的平方来加速应用中的这个测试)
您只能考虑边界r x r x r cube中的多维数据集...