Hola Miguel,
> I can plot one thread using parametric 3d plots, but haven't found the way to
> plot several of them simultaneously.
The following piece of code should do this job. I don't know your
specific needs, but you can add some more gnuplot code if necessary.
/******** BEGIN MAXIMA SESSION ********/
(%i1)
parametric_curves_3d([curve]):=
block([ncurves: length(curve), numer:true, display2d:false,
str: "splot", numticks: 100, inivar, dvar, namevar, valvar],
with_stdout("pcurves3d.gnuplot",
/* write gnuplot commands */
for k:1 thru ncurves do(
str: sconcat(str, " '-' title 'curva-", k, "' with lines ", k),
if k < ncurves
then str: sconcat(str, ",") ),
print(str),
/* write 3d points for each parametric curve */
for k:1 thru ncurves do(
inivar: curve[k][4][2],
dvar: (curve[k][4][3] - inivar) / numticks,
namevar: curve[k][4][1],
for j:1 thru numticks do(
valvar: inivar + (j - 1) * dvar,
print(float(subst(valvar, namevar, curve[k][1])),
float(subst(valvar, namevar, curve[k][2])),
float(subst(valvar, namevar, curve[k][3]))) ),
if k < ncurves then print("e") ) ),
/* call gnuplot to execute script file */
system("gnuplot -persist pcurves3d.gnuplot") )$
(%i2)
parametric_curves_3d(
[6*cos(x)*sin(x), x^2, x, [x, 0, 2*%pi]],
[2*y, 7+y, y^3, [y,-1,3]],
[5+2*cos(t),5+3*sin(t),t,[t,-3*%pi,3*%pi]])$
/******** END MAXIMA SESSION ********/
If you are a windows user, write 'wgnuplot' instead of 'gnuplot' in
command 'system'.
If you need some more help, just let me know.
Un saludo.
Mario
--
Mario Rodriguez Riotorto
www.biomates.net