1
Je voudrais tracer un nuage de points en 3D en utilisant Scilab. J'ai quelque chose mais ça a l'air horrible. Voici le codeNuage de points dans Scilab
// Mesures de références :
x1=[0 ; 0.5 ; 0 ];
x2=[0.5 ; 2 ; 1.5];
x3=[0.5 ; 2 ; 0 ];
x4=[0.5 ; 1 ; 0 ];
x5=[0 ; 1.5 ; 1.5];
x6=[0 ; 1.8 ; 2.7];
x7={0 ; 2 ; 2 };
X=[x1,x2,x3,x4,x5,x6,x7];
[n,m]=size(X);
// Transformations :
Angles=[%pi/4, %pi/2, -%pi/6];
C=cos(Angles);
S=sin(Angles);
Q1=[C(3) , S(3) , 0 ;
-S(3), C(3) , 0 ;
0 , 0 , 1 ];
Q2=[C(2) , 0 , S(2) ;
0 , 1 , 0 ;
-S(2), 0 , C(2) ];
Q3=[ 1 , 0 , 0 ;
0 , C(1) , S(1);
0 , -S(1), C(1) ];
Q=Q1*Q2*Q3;
t=[3 ; -1 ; 0];
bruit=X-(0.11)*eye(n,m); //Simulation d'une impression de mesure
// Mesures
E=Q*X(:,1)+t+bruit(:,1);
for k=2:m
e=Q*X(:,k)+t+bruit(:,k);
E=[E , e];
end
// Graphique
param3d1(X(1,:),X(2,:),X(3,:))
a = get("current_axes");
h = a.children;
h.line_mode = "off";
h.mark_mode = "on";
h.mark_size = 5;
h.mark_foreground = 3;
Ce qui donne
Je n'ai pas réussi à tirer les points dans la matrice E sur la même fenêtre que la matrice X, mais avec une couleur ou de forme. De plus, je voudrais l'améliorer pour le rendre un peu plus comme ça:
Toute aide sera grandement appréciée.
Merci beaucoup, je dois vraiment étudier davantage la commande param3d1 mais c'est parfois très compliqué. – Zanzi