matlab请问我这个循环语句为什么没运行

问题描述:

matlab请问我这个循环语句为什么没运行
我要计算一个机械结构的工作空间,首先生成一个2行10000列的矩阵,矩阵的每一列代表一个位姿,然后把符合要求的位姿挑出来生成一个y矩阵,但是结果y矩阵里什么也没有
xx=linspace(-70/180*pi,70/180*pi,100);
yy=xx;
v=cell(2,10000);
u=cell2mat(v);
vv=cell(2,10000);
y=cell2mat(vv);
ee=1;
ff=1;
for ii=1:1:100
for jj=1:1:100
u(1,ee)=xx(1,ii);
u(2,ff)=yy(1,jj);
ff=ff+1;
ee=ee+1;
end
end
a=105/180*pi;%α角
a01=[cos(a) 0 sin(a);0 1 0;-sin(a) 0 cos(a)];
a02=[cos(a/2) -sqrt(3)/2 cos(a/2);-sqrt(3)*cos(a/2) -1/2 -sqrt(3)*sin(a/2);sin(a) 0 -cos(a)];
a03=[cos(a/2) sqrt(3)/2 sin(a/2);sqrt(3)*cos(a/2) -1/2 sqrt(3)*sin(a/2);sin(a) 0 -cos(a)];
I=[1;0;0];%x轴初始方向
I1=a01*I;
I2=a02*I;
I3=a03*I;
M=[0;0;1];%z轴初始方向
s=size(u);
j=1;
for i=1:s(1,2)
R1=[1 0 0;0 cos(u(1,i)) -sin(u(1,i));0 sin(u(1,i)) cos(u(1,i))];
R2=[cos(u(2,i)) 0 sin(u(2,i));0 1 0;-sin(u(2,i)) 0 cos(u(2,i))];
R=R1*R2;
M1=R*M;%摄像头的方向
M2=-M1;%后开孔的方向
the1=acos(dot(I1,M1)/(norm(I1)*norm(M1)));
the2=acos(dot(I2,M1)/(norm(I2)*norm(M1)));
the3=acos(dot(I3,M1)/(norm(I3)*norm(M1)));
gam1=acos(dot(I1,M2)/(norm(I1)*norm(M2)));
gam2=acos(dot(I2,M2)/(norm(I2)*norm(M2)));
gam3=acos(dot(I3,M2)/(norm(I3)*norm(M2)));
if the1
1个回答 分类:综合 2014-09-28

问题解答:

我来补答
因为根本就没进给y赋值的语句啊.
再问: 有呀vv=cell(1,10000);
y=cell2mat(vv);
再答: 我是说运行的时候,程序根本就不能运行到这一步中。。。也就是没执行这个语句,你可以插入断点自己查看一下
再问: 好的谢谢
 
 
展开全文阅读
剩余:2000
上一页:解题方法 技巧
下一页:过程3