C是2乘360的矩阵,形成单位圆的轮廓。 C = [v1 | v2 | v3 ... v360]其中v1旋转1°,v2旋转2°等.R是给定的旋转矩阵。 e是列向量[1 0]
我通过
初始化了矩阵>> C=zeros(2,360);
我不知道如何使用for循环来填充矩阵C的条目
>> for c = 1:360
C = (R^c)*e;
end
接下来应该绘制圆圈。
>> plot(C(1,:), C(2,:))
答案 0 :(得分:2)
您需要在每次旋转时设置每列,因此您需要在每次旋转时设置C(:,c)。即
for c = 1:360
C(:,c) = (R^c) * c;
end
然而,你可以在没有for循环的情况下完成所有事情。 (MATLAB喜欢避免循环)。
由于
t = 2*pi/360;
R = [cos(t) -sin(t); sin(t) cos(t)];
我们有那个
R*e = [cos(t); sin(t)];
所以我们正在寻找
C = [cos(t) cos(2*t) ... cos(360*t);
sin(t) sin(2*t) ... sin(360*t)];
即
C = [cos(t * (1:360)); sin(t * (1:360))];