param3d
, selon les mêmes principes qu'en dimension 2.
xbasc() t=linspace(0,2*%pi,50); x=sin(t); y=sin(2*t); z=sin(3*t); param3d(x,y,z) // courbe de Lissajous xbasc() t=linspace(-%pi/2,%pi/2,1000); x=cos(t*50).*cos(t); y=sin(t*50).*cos(t); z=sin(t); param3d(x,y,z) // helice spheriquePour représenter une famille de courbes en dimension 3, il faut utiliser
param3d1
. Les arguments sont trois matrices de
coordonnées pour lesquelles les différentes courbes sont en colonne.
xbasc() t=linspace(0,2*%pi,100); a=linspace(-%pi,%pi,10); X=cos(t')*cos(a); // matrice des abscisses Y=sin(t')*cos(a); // matrice des ordonnees Z=ones(t')*sin(a); // matrice des cotes param3d1(X,Y,Z) // paralleles d'une sphereLa représentation des surfaces se fait par
plot3d
ou
plot3d1
. Nous reprenons comme exemple la fonction de
IR dans
IR qui à associe
(figure 7).
x=linspace(-%pi,%pi,50); // vecteur d'abscisses y=x; // vecteur d'ordonnees z=sin(x'*y); // matrice des valeurs de la fonction help plot3d xbasc() plot3d(x,y,z) // representation monochrome plot3d1(x,y,z) // representation coloree xbasc() R=[0:255]/256; G=R; B=0.5*ones(R); RGB=[R;G;B]'; // nouvelle matrice de couleurs xset("colormap",RGB); plot3d1(x,y,z) // les couleurs dependent de z xset("default") // reinitialise les parametres graphiquesPour représenter une surface définie par deux paramètres, il faut la définir comme une fonction, puis utiliser
eval3dp
qui prend comme argument cette fonction et deux vecteurs de
paramètres, et retourne les arguments nécessaires pour la
représentation par plot3d
. Voici par
exemple la représentation d'une sphère. Pour obtenir des couleurs
variables, il faut parfois changer le sens d'un des deux vecteurs de
paramètres.
deff("[x,y,z]=sphere(u,v)",.. // definition de la fonction ["x=cos(u).*cos(v);.. // abscisses y=sin(u).*cos(v);.. // ordonnees z=sin(v)"]) // cotes u = linspace(-%pi,%pi,50); v = linspace(-%pi/2,%pi/2,25);// parametres [x,y,z] = eval3dp(sphere,u,v);// calcul de la surface plot3d1(x,y,z); // representation monochrome u = linspace(%pi,-%pi,50); // changement de sens [x,y,z] = eval3dp(sphere,u,v);// nouveau calcul xbasc() plot3d1(x,y,z) // les couleurs dependent de z
Dimension 3 | |
param3d |
courbes paramétriques |
param3d1 |
plusieurs courbes ou points |
plot3d |
surface en dimension 3 |
fplot3d |
idem, définition par une fonction |
plot3d1 |
surface par niveaux de couleurs |
fplot3d1 |
idem, définition par une fonction |
eval3dp |
surface paramétrée |
hist3d |
histogrammes |