如何使用for循环填充矩阵

时间:2013-10-27 04:08:35

标签: matlab for-loop plot rotation

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,:))

1 个答案:

答案 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))];