how to create helix
显示 更早的评论
create helix with radius 2 withone revolution in xy plane and one unit in z direction
回答(2 个)
Ameer Hamza
2020-10-12
编辑:Ameer Hamza
2020-10-12
Try this
r = 2;
t = linspace(0, 10*pi, 1000);
x = r*cos(t);
y = r*sin(t);
z = t/(2*pi);
plot3(x, y, z);
grid on

5 个评论
Adil Asif
2020-10-12
Ameer Hamza
2020-10-12
If you want just one revolution then change 't' to
t = linspace(0, 2*pi, 1000);
t control the number of revolutions. 2*k*pi will create k revolutions.
Adil Asif
2020-10-12
John D'Errico
2020-10-12
编辑:John D'Errico
2020-10-12
What happens after 2*pi radians? (Hint: x,y return to their original position, because sin and cos are periodic with period 2*pi.)
Therefore, at t = 0, we start the curve, where z=0. When do x and y return to the same spot? Again, at t = 2*pi. What is the value of z at that "time"?
z = (2*pi)/(2*pi) = 1
So z increments by EXACTLY one unit in z, every 2*pi units of time.
Ameer Hamza
2020-10-12
@Adil, as John explained, you will move a unit distance along the z-axis for each 2*pi increment in 't'.
r = 2 ;
c = 10 ;
th = linspace(0,2*pi*c,500) ;
x = r*cos(th) ;
y = r*sin(th) ;
z = c*th ;
plot3(x,y,z)
类别
在 帮助中心 和 File Exchange 中查找有关 Resizing and Reshaping Matrices 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!