# Draw a 3D parametric curve

I have many exercise about 3d parametric curve of class $C^{\infty}(\mathbb{R})$ of the form $$\gamma(t) = \bigl( \gamma_x(t), \gamma_y(t), \gamma_z(t) \bigr)$$ (Example of curve: $\gamma(t) = (2\cos^2 t, 2 \cos t \sin t, \sin t)$). First i must find:

• the unit tangent vector;
• the unit normal vector;
• the unit binormal vector;
• the curvature;
• the torsion.

These stuff are simply to calculate.

The last question is to draw by hand the curve. How can i draw the curve? There is an alghoritm to draw a curve with the collected information? Thanks.

• do you mean drawing by hand, or are computers allowed? – A. De Luca Jun 19 '11 at 9:23
• You can draw the curve even without the collected information. Just take $t=0$, $t=0.1$, ..., compute $\gamma(t)$ and put down a point there. Or if you are familiar enough with trig functions you might even guess how the result will look like. – Marek Jun 19 '11 at 9:43
• @Marek the your idea seems the most simply but also the unique approach by hand. The curvature and the torsion give us some precise information about the curve but it's difficult to translate this in a graph – Katy23 Jun 19 '11 at 9:48

## 2 Answers

Parametric Curve Plotter (WolframAlpha) can help you.

That depends if you're allowed to use a computer for plotting or not. In the former case, I'd suggest using a program like Matlab, Octave or Scilab. They're all similar, but the last two are Open Source Software. In the case of Scilab, for your example, the following code would do the trick:

clear;clf; // initialization
t=0:0.1:2*%pi; // 0.1 is the step between parameter values
x=2*cos(2*t);
y=2*cos(t).*sin(t); // the . before * is required
z=sin(t);
param3d(x,y,z);