需要计算一个3d矩阵中所有点到直线的距离<-程序优化,该怎么操作?

%% difinition
clear;
x1=1;x2=100;nx=100;
y1=50;y2=50;ny=100;
z1=41;z2=60;nz=100;
matrx1=rand(nx,ny,nz);
% 所有点的坐标生成[X,Y,Z] = meshgrid(1:1:nx, 1:ny,1:nz);% e.g.% pointApositionX=Y(1,50,40);
% pointApositionY=X(1,50,40);
% pointApositionZ=Z(1,50,40);
% 穿过两点的所有x点xCross=linspace(x1,x2,nx);% 定义直线两段点
a=[x1 y1 z1];b=[x2 y2 z2];
%=========
%--matrxDisMatrix
matrxDisMatrix=rand(nx,ny,nz);
for i=1:nx
for j=1:ny
for k=1:nz
pointijk=[Y(i,j,k), X(i,j,k) ,Z(i,j,k)];
[m]=pointlinedistance(a,b,pointijk);% m is the distance matrxDisMatrix(i,j,k)=m;
end
end
end
===========这里计算一个3d 矩阵中所有点到直线的距离时,并将距离保存到另一个矩阵,用的是循环,计算起来很慢;大伙帮我看看有没有优化的方法,谢谢

心有法竹
浏览 179回答 1
1回答

慕运维8079593

当然可以优化,不过需要对pointlinedistance函数进行相应的调整。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

CSS3
Cocos2d-x