0

我正在努力在 Matlab 中创建一个螺旋。

通过以下代码:

t = 0:pi/50:20*pi;

(你能解释一下这个语法吗,或者我们每次创建螺旋时都必须遵循这个?)

st = sin(t);
ct = cos(t);
plot3(st,ct,t)

由于螺旋角的最大效率在 40 到 45 度之间,如果我想将角度输入为 42,在代码中怎么可能?

如果有人可以就此分享他们的意见,那将非常有帮助

TIA

4

1 回答 1

1

代码中发生的只是执行螺旋的参数数学描述,您可以在维基百科上阅读

x(t) = cos(t)

y(t) = sin(t)

z(t) = t

t代码的第一行为从 0 到20pi步长pi/50(即 1000 步)的值生成一个向量。由于每个都2pi意味着一个完整的旋转(cos 和 sin 是 2pi 周期的),它与螺旋线的 10 圈重合(如果你想改变它,让t运行到2*pi*NumberOfRotations)。另外两行为x和生成对应的向量y。plot3 在 3-D 中绘制一条线,其中xy被传递,并作为z我们传递的参数,t因为z=t

要更改螺旋线的斜率,请使用下式给出的更一般的描述

x(t) = a*cos(t)

y(t) = a*sin(t)

z(t) = b*t

其中 a 是半径,b/a 是斜率。要获得 42°,请使用b = a*atand(42). 为确保显示中的纵横比正确,axis equal;请在绘图之后使用,也许axis vis3d;如果您想将其翻转。

于 2017-02-10T09:34:56.470 回答