Labfans是一个针对大学生、工程师和科研工作者的技术社区。 | 论坛首页 | 联系我们(Contact Us) |
![]() |
|
![]() |
#1 |
初级会员
注册日期: 2012-05-30
年龄: 33
帖子: 3
声望力: 0 ![]() |
![]()
x=rand(1,10);
y=rand(1,10); z=cos(0.5.*x).*sin(y); xi=linspace(0,1,30); yi=linspace(0,1,30); [X,Y]=meshgrid(xi,yi); Z=griddata(x,y,z,X,Y,'nearest'); mesh(X,Y,Z); a=(3^0.5)/3;b=(3^0.5)/3;c=(3^0.5)/3; xa=1;ya=2;za=3; v=sqrt(b^2+c^2);u=sqrt(a^2+b^2+c^2); d=pi/4; T=[1 0 0 0;0 1 0 0;0 0 1 0;-xa -ya -za 1]; Rx=[1 0 0 0;0 c/v b/v 0;0 -b/v c/v 0;0 0 0 1]; Ry=[v/u 0 -a/u 0;0 1 1 0;a/u 0 v/u 0;0 0 0 1]; Rz=[cos(d) sin(d) 0 0;-sin(d) cos(d) 0 0;0 0 1 0;0 0 1 1]; Ry1=[v/u 0 a/u 0;0 1 1 0;-a/u 0 v/u 0;0 0 0 1]; Rx1=[1 0 0 0;0 c/v -b/v 0;0 b/v c/v 0;0 0 0 1]; T1=[1 0 0 0;0 1 0 0;0 0 1 0;xa ya za 1]; g=zeros(1000,4); for k=1:10 for m=1:10 for n=1:10 g=[x(k) y(m) z(n) 1]*T*Rx*Ry*Rz*Ry1*Rx1*T1; end end g只有一行值,应该要1000行,循环g重复定义了,但我不知道怎么改,求指教 |
![]() |
![]() |
![]() |
#2 |
初级会员
注册日期: 2012-02-13
帖子: 12
声望力: 14 ![]() |
![]()
你的复制的代码有点小问题,可能又一个end忘记复制了,
然后主要问题是g赋值出现问题,你用一个1*4的矩阵赋给g,这样只是反复刷新了g的第一行,没有实质的变化。我只改了一行代码,你看看合不合意!! x=rand(1,10); y=rand(1,10); z=cos(0.5.*x).*sin(y); xi=linspace(0,1,30); yi=linspace(0,1,30); [X,Y]=meshgrid(xi,yi); Z=griddata(x,y,z,X,Y,'nearest'); mesh(X,Y,Z); a=(3^0.5)/3;b=(3^0.5)/3;c=(3^0.5)/3; xa=1;ya=2;za=3; v=sqrt(b^2+c^2);u=sqrt(a^2+b^2+c^2); d=pi/4; T=[1 0 0 0;0 1 0 0;0 0 1 0;-xa -ya -za 1]; Rx=[1 0 0 0;0 c/v b/v 0;0 -b/v c/v 0;0 0 0 1]; Ry=[v/u 0 -a/u 0;0 1 1 0;a/u 0 v/u 0;0 0 0 1]; Rz=[cos(d) sin(d) 0 0;-sin(d) cos(d) 0 0;0 0 1 0;0 0 1 1]; Ry1=[v/u 0 a/u 0;0 1 1 0;-a/u 0 v/u 0;0 0 0 1]; Rx1=[1 0 0 0;0 c/v -b/v 0;0 b/v c/v 0;0 0 0 1]; T1=[1 0 0 0;0 1 0 0;0 0 1 0;xa ya za 1]; g=zeros(1000,4); for k=1:10 for m=1:10 for n=1:10 g(100*(k-1)+10*(m-1)+n ,: )=[x(k) y(m) z(n) 1]*T*Rx*Ry*Rz*Ry1*Rx1*T1; end end end 此帖于 2012-06-11 12:51 被 jimmymacong 编辑。 原因: 打错了 |
![]() |
![]() |
![]() |
#3 |
高级会员
注册日期: 2008-05-13
年龄: 44
帖子: 232
声望力: 21 ![]() |
![]()
如楼上所说,只要把for循环的循环核,也就是g的赋值向楼上那样改过来就好
for k=1:10 for m=1:10 for n=1:10 g(100*(k-1)+10*(m-1)+n ,: )=[x(k) y(m) z(n) 1]*T*Rx*Ry*Rz*Ry1*Rx1*T1; end end end
__________________
工科'985'博士,(图像处理、分析及理解;模式识别;运动估计;数据分析等)定做程序、算法实现--qq:752105755 |
![]() |
![]() |