how to create helix
Show older comments
create helix with radius 2 withone revolution in xy plane and one unit in z direction
Answers (2)
Ameer Hamza
on 12 Oct 2020
Edited: Ameer Hamza
on 12 Oct 2020
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 Comments
Adil Asif
on 12 Oct 2020
Ameer Hamza
on 12 Oct 2020
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
on 12 Oct 2020
John D'Errico
on 12 Oct 2020
Edited: John D'Errico
on 12 Oct 2020
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
on 12 Oct 2020
@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)
Categories
Find more on Surface and Mesh Plots in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!