1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
|
function dessin(obj,event)
m = getappdata(0,'formes'); % Récupération de la matrice m qui contient les formes
taille = size(m); % taille est une matrice de type [nbLignes nbColonnes]
nbLignes = taille(1,1); % On récupère le nombre de lignes contenu dans taille(1,1)
cla; % Efface le contenu de l'axe courant
rotate3d(handles(2));
view(3);
for i = 1:nbLignes
if m(i,1) == 0
r = m(i,5);
xCentre = m(i,8);
yCentre = m(i,9);
[X,Y,Z] = cylinder(r,40);
X = X + xCentre;
Y = Y + yCentre;
Z = Z * 2;
surf(X, Y, Z, 'facecolor', rand(3,1), 'FaceAlpha', .5);
hold on;
elseif m(i,1) == 1
nbCotes = m(i,4);
r = m(i,5);
xCentre = m(i,8);
yCentre = m(i,9);
[X,Y,Z] = cylinder(r,nbCotes);
X = X + xCentre;
Y = Y + yCentre;
Z = Z * 2;
surf(X, Y, Z, 'facecolor', rand(3,1));
hold on;
end
end
end |
Partager