我有一个稀疏的 3d 体积(立方体),在每个 x,y 位置我想创建一个半径为 r 的球体,中心位于 x,y,z。对于每个球体,我想计算质心。
我的问题:
每个球内的点分布不均,所以我的质心不是质心,我如何计算质心?我发现了很多不同的方法...
我需要每次都计算它
size(x)*size(y)
,这可能非常大,我可以创建一个像这样的 3d 球体:w = ceil(r)*2+1; [x,y,z] = meshgrid(1:w,1:w,1:w); xc = floor(w./2)+1; yc = floor(w./2)+1; zc = floor(w./2)+1; mask = (x-xc).^2 + (y-yc).^2 + (z-zc).^2 <= r.^2; mask = double(mask);
但这会让我对每个点都进行循环,并且会很耗时。谢谢matlabit