Visualisation 3d sur matlab
Résolu
BELDITOWN
-
elhberg -
elhberg -
A voir également:
- Visualisation 3d sur matlab
- Architecte 3d gratuit - Télécharger - Architecture & Déco
- Volet de visualisation - Guide
- 3d slash - Télécharger - 3D
- Google maps satellite 3d - Guide
- Smartshow 3d - Télécharger - Visionnage & Diaporama
5 réponses
Bonjour à tous les deux encore ;-)
Effectivement, il n'y a pas de souci pour donner des matrices à Matlab pour le plot3.
En reprenant ce qu'a écrit BELTIDOWN :
s1 liée à s5
s1 liée à s4
s1 liée à s3
s3 liée à s5
s3 liée à s2
s5 liée à s2
Cela donnerait quelque chose du genre :
Quelque chose du genre devait convenir :
Effectivement, il n'y a pas de souci pour donner des matrices à Matlab pour le plot3.
En reprenant ce qu'a écrit BELTIDOWN :
s1 liée à s5
s1 liée à s4
s1 liée à s3
s3 liée à s5
s3 liée à s2
s5 liée à s2
Cela donnerait quelque chose du genre :
P = [s1;s5;s1;s4;s1;s3;s3;s5;s3;s2;s5;s2]; plot3(reshape(P(:,1),[2 6]),reshape(P(:,2),[2 6]),reshape(P(:,3),[2 6]));Il n'en est pas question dans le message 4, mais s'il s'agit de tracer tous les segments possibles reliant les 5 points, ils ne sont pas tous tracés ici (il y en a 10 normalement). De plus, si c'est effectivement le but recherché, pour un nombre de points un peu plus important, cela risque d'être quelque peu laborieux à taper. Dans ce cas, ce ne serait pas mal d'utiliser la fonction nchoosek de Matlab pour avoir toutes les combinaisons possibles de 2 points.
Quelque chose du genre devait convenir :
%% Supposons qu'il y ait 10 points n = 10; %% Juste pour l'exemple, on choisit 10 points au hasard s = rand(n,3); s1=s(1,:);s2=s(2,:);s3=s(3,:);s4=s(4,:);s5=s(5,:);s6=s(6,:);s7=s(7,:);s8=s(8,:);s9=s(9,:);s10=s(10,:); %% Toutes les combinaisons possibles de 2 entiers choisis parmi %% 1,2,3,4,5,6,7,8,9,10 C = nchoosek((1:n),2).'; nc = nchoosek(n,2); %% On construit la chaîne de caractères à évaluer %% pour la passer en argument à plot3 C = strtrim(cellstr([num2str(reshape(C,[2*nc 1])) repmat(';',[2*nc 1])])); P = strvcat(strcat(cellstr(repmat('s',[2*nc 1])),C)).'; P = reshape(P,1,numel(P)); P = ['[' P(1:end-1) '];']; %% On évalue P P = eval(P); %% On trace plot3(reshape(P(:,1),[2 nc]),reshape(P(:,2),[2 nc]),reshape(P(:,3),[2 nc]));Bonne journée
help plot3 !
plot3(x,y,z,'-')
plot3(x,y,z,'-')
merci
mais désolé je croix que tu n'a pas bien compris ma problématique
supposons que j'ai 5 sommets [ s1,s2,s3,s4,s5]
s1=[x1,y1,z1]
s2=[x2,y2,z2]
s3=[x3,y3,z3]
s4=[x4,y4,z4]
s5=[x5,y5,z5]
les liaisons ou les arrêtes entre les sommets sont:
s1 liée à s5
s1 liée à s4
s1 liée à s3
s3 liée à s5
s3 liée à s2
s5 liée à s2
danc comment on peut faire figuré ou visualisé touts les sommets et les arrêts ( visualisation des arrêts = visualisation d'un graphes ou une squelette 3D)
merci une autre fois cher monsieur
mais désolé je croix que tu n'a pas bien compris ma problématique
supposons que j'ai 5 sommets [ s1,s2,s3,s4,s5]
s1=[x1,y1,z1]
s2=[x2,y2,z2]
s3=[x3,y3,z3]
s4=[x4,y4,z4]
s5=[x5,y5,z5]
les liaisons ou les arrêtes entre les sommets sont:
s1 liée à s5
s1 liée à s4
s1 liée à s3
s3 liée à s5
s3 liée à s2
s5 liée à s2
danc comment on peut faire figuré ou visualisé touts les sommets et les arrêts ( visualisation des arrêts = visualisation d'un graphes ou une squelette 3D)
merci une autre fois cher monsieur
Ce n'est pas que je n'ai pas bien compris, c'est que tu t'es très mal expliqué.
Tu parles d'un triangle, donc trois arrêtes, et là pas de souci.
Si tu as plus de sommets, c'est plus compliqué, à ma connaissance il n'y a pas de fonction pour le faire directement.
Je pense qu'il faut alors se taper l'algorithme pour tracer toutes les arrêtes.
toujours avec plot3, tu lui donne chaque arrete à tracer. Peut être qu'en lui fournissant 3 matrices il comprendra, regarde l'aide (help plot3)
Tu parles d'un triangle, donc trois arrêtes, et là pas de souci.
Si tu as plus de sommets, c'est plus compliqué, à ma connaissance il n'y a pas de fonction pour le faire directement.
Je pense qu'il faut alors se taper l'algorithme pour tracer toutes les arrêtes.
toujours avec plot3, tu lui donne chaque arrete à tracer. Peut être qu'en lui fournissant 3 matrices il comprendra, regarde l'aide (help plot3)
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question