PDA

查看完整版本 : [MATLAB基础] 调用函数后变量不能传递,求高手指点


alxwong
2011-07-30, 11:26
m=2;n=2;N=16; %变量赋予初值
for i=1:m+2 %定义初始位置
for j=1:n+2
Number(i,j)=1; %设定所有网格都存在纱线
end
end
for j=1:2:n+2
Number(1,j)=NaN;Number(m+2,j+1)=NaN; %剔除第一列的奇数行元素和最后一列的偶数行元素
end

for i=1:2:m+2
Number(i,n+2)=NaN;Number(i+1,1)=NaN; %剔除第一行的奇数列元素和最后一行的偶数列元素
end

for i=1:m+2
for j=1:n+2
LocationX(i,j)=Number(i,j)*i;
LocationY(i,j)=Number(i,j)*j;
end
end
z(1:17)=0;

for i=1:m+2
for j=1:n+2
for k=1:1
z(k)=1*(k-1)*(LocationX(i,j)/LocationX(i,j));
i
j
k
X(i,j,1)=LocationX(i,j); %定义存储数组
Y(i,j,1)=LocationY(i,j);
Z(i,j,1)=z(k);
end
end
end

for i=1:N
M=mod(i,4)
switch M
case 1
[X,Y]=feval(RecBraid1,LocationX,LocationY,m,n); %调用第一步运动函数并存储坐标数据

case 2
[X,Y]=feval(RecBraid2,LocationX1,LocationY1,m,n); %调用第二步运动函数并存储坐标数据

case 3
[X,Y]=feval(RecBraid3,LocationX2,LocationY2,m,n);
case 0
[X,Y]=feval(RecBraid4,LocationX3,LocationY3,m,n); %调用第四步运动函数并存储坐标数据

otherwise
disp('error!')
end

anbcjys
2011-07-31, 08:25
把错误贴出来 。