我对路径的可视化存在一些问题,并从上到下找到最短的路径。
这是我的代码:
clc; clear all; close all;
Porosity = .3;
m=20;
n=20;
o=20;
Nodes= ones(m,n,o);
HLines = zeros(m,n-1,o-1);
HLines(randperm(numel(HLines),floor(Porosity*m*(n-1)*(o-1))))=1;
HLines
VLines = zeros(m-1,n,o-1);
VLines(randperm(numel(VLines),floor(Porosity*(m-1)*n*(o-1))))=1;
VLines
PLines = zeros(m-1,n-1,o);
PLines(randperm(numel(PLines),floor(Porosity*(m-1)*(n-1)*o)))=1;
PLines
for i=1:m
for j=1:n-1
for k=1:o-1
if HLines(i,j)==1;
hold on
x = [i i+1];
y = [j j];
z = [k k];
plot3(x,y,z,'r','linewidth',2)
end
end
end
end
for i=1:m-1
for j=1:n
for k=1:o-1
if VLines(i,j)==1;
hold on
x = [i i];
y = [j+1 j];
z = [k k];
plot3(x,y,z,'r','linewidth',2)
end
end
end
end
for i=1:m-1
for j=1:n-1
for k=1:o
if PLines(i,j,k)==1;
hold on
x = [i i];
y = [j j];
z = [k+1 k];
plot3(x,y,z,'r','linewidth',2)
end
end
end
end
axis([0 m 0 n 0 o])
view(30,45)
set(gcf,'Position', [0 0 1500 1000])
xlabel('X'); ylabel('Y'); zlabel('Z')
此代码为我提供了下图,其中包含一个3D立方体,随机分布在1
和0
中:
如果有1
则继续;如果有0
,则停止。
我想从上到下可视化所有路径,我想选择最短的路径。