d6
function []=chongdianluxian
global a;
global qj;
global qi;
global oj;
global oi;
c=a;
oi,oj
c(oi,oj)=c(oi,oj)+1;
while oi=2|oj=2
if a(oi-1,oj-1)=-1&(a(oi-1,oj)=-1|a(oi,oj-1)~=-1) %只有左方或上方有障碍
oi=oi-1;
oj=oj-1;
c(oi,oj)=c(oi,oj)+1;
elseif a(oi,oj-1)-1&a(oi-1,oj-1)-1&a(oi-1,oj)~=-1 %左方和左上方有障碍
oi=oi-1;
c(oi,oj)=c(oi,oj)+1;
elseif a(oi-1,oj)-1&a(oi-1,oj-1)-1&a(oi,oj-1)~=-1 %上方和左前方有障碍
oj=oj-1;
c(oi,oj)=c(oi,oj)+1;
elseif a(oi-1,oj-1)-1&(a(oi-1,oj)=-1&a(oi,oj-1)=-1) %只有左上方有障碍
oi=oi-1;
c(oi,oj)=c(oi,oj)+1;
while a(oi,oj-1)-1
oi=oi-1;
% b(oi,oj)=1;
c(oi,oj)=c(oi,oj)+1;
end
elseif a(oi-1,oj-1)-1&a(oi-1,oj)-1&a(oi,oj-1)-1 %左方、左上方和上方都有障碍,即所谓“死角”
if oi-11 %当死角处于上边沿
while a(oi,oj-1)-1
oi=oi+1; %下移至左侧没有障碍物
% b(oi,oj)=1;
c(oi,oj)=c(oi,oj)+1;
end
oj=oj-1;
elseif oj-11 %当死角处于左边沿
while a(oi-1,oj)-1
oj=oj+1; %右移至上侧没有障碍物
% b(oi,oj)=1;
c(oi,oj)=c(oi,oj)+1;
end
oi=oi-1;
elseif oi-1=1&oj-1=1 %当死角既不处于上边沿又不处于左边沿
oj=oj+1;
while a(oi-1,oj)-1
oj=oj+1; %下移至左侧没有障碍物
% b(oi,oj)=1;
c(oi,oj)=c(oi,oj)+1;
end
oi=oi-1;
end
end
oi,oj
% b(oi,oj)=1;
end
c
xlswrite(‘返回路径7.xls’,c);
下一篇: 关于h5语义化标签的详细介绍