Tracer la surface entre 2 courbes sous Matlab [Résolu/Fermé]

Signaler
Messages postés
40
Date d'inscription
mardi 1 juillet 2008
Statut
Membre
Dernière intervention
5 août 2009
-
 jtdjertfshgfs -
Bonjour,
Je souhaiterai remplir une surface entre deux courbes sous Matlab
Les deux courbes en question sont des spirales (équation paramétrées).
J'ai essayé avec la fonction "area" mais à priori ça ne marche pas.

Si quelqu'un a une idée je suis preneuse.

Merci d'avance pour votre aide

18 réponses

Messages postés
639
Date d'inscription
vendredi 17 octobre 2008
Statut
Membre
Dernière intervention
31 mai 2009
377
Bonsoir torpedolos
Il n'y a rien de trop dans mes messages.
1) J'ai horreur de constater que j'ai répondu dans le vide et que la personne n'a même pas lu ce que j'avais pris la peine d'écrire.
2) J'ai horreur de devoir répéter 5 fois la même chose
3) J'ai horreur que l'on vienne dire que quelque chose est faux sans l'avoir essayé
4) J'ai horreur que l'on vienne me dire que je n'ai rien compris à la demande alors que le problème est résolu depuis 1/2h
5) J'ai horreur que l'on me dise que j'ai tort alors que j'ai raison
6) J'ai horreur que l'on me donne des énoncés faux ou incomplets et que l'on vienne ensuite pleurer parce que la solution ne vient pas assez rapidement
7) J'ai horreur des spammeurs qui se prennent pour le nombril du monde et veulent absolument une réponse immédiate au point de poster plusieurs fois s'il le faut pour que leur problème passe avant tout le monde
http://www.commentcamarche.net/forum/affich 7167869 php liste deroulante
http://www.commentcamarche.net/forum/affich 7169734 php menu deroulant
http://www.commentcamarche.net/forum/affich 7321833 bouton radio
http://www.commentcamarche.net/forum/affich 7321856 bouton radio important
Et à ce propos, concernant le respect, je pense qu'elle devrait commencer par lire la charte de ce forum, en particulier cette partie-là
CCM - Charte - Respect d'autrui
ne pas poster votre message plusieurs fois sur le forum
Bonne nuit
11
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 62855 internautes nous ont dit merci ce mois-ci

Utilisateur anonyme
D'accord, c'est pas bien, mais c'est bon, desserre les fesses, t'en verra des pires dans la vie, coooooool !

ouais d'abord

c'est vrai à la fin

nan mais ho
Messages postés
639
Date d'inscription
vendredi 17 octobre 2008
Statut
Membre
Dernière intervention
31 mai 2009
377
Bonsoir

Tu peux faire cela avec fill ou patch.
Exemple :
t=linspace(0,2*pi,129);
ux=cos(t).*(1-t/(2*pi));
uy=sin(t).*(1-t/(2*pi));
vx=cos(t).*(1/2-t/(4*pi));
vy=sin(t).*(1/2-t/(4*pi));
X=[ux(1:end-1);ux(2:end);vx(2:end);vx(1:end-1)];
Y=[uy(1:end-1);uy(2:end);vy(2:end);vy(1:end-1)];
fill(X,Y,[0 0 1],'EdgeColor','none');
Bonne soirée

Peace and love brother's.

Chaton, Les gens qui t'aident sont des benevoles et ne te doivent rien, peut-etre que tu as mal lu, peut -etre que tu dois demander plus d'explication avant de dire que ça ne marche pas ? (et cocher resolu sur ton premier post si ça marche !)
Fee fay, le lien vers un opticien tés connu etait peut-etre de trop ?

Allez, c'est terminé, faites vous un bisou.

;-)
Messages postés
40
Date d'inscription
mardi 1 juillet 2008
Statut
Membre
Dernière intervention
5 août 2009
7
Pas la peine de gaspiller ton temps à me repondre si c'est pour etre désagrable.
Messages postés
639
Date d'inscription
vendredi 17 octobre 2008
Statut
Membre
Dernière intervention
31 mai 2009
377
J'adore...
On prend le temps de répondre à une question, on donne la solution au premier message, on la répète au troisième message, et enfin, on se fait envoyer paître...
Pas la peine de gaspiller mon temps effectivement...

Pour finir, je te ferai remarquer que tes courbes ne sont pas des spirales.
À mois que l'intervalle de définition de t ne soit pas [0,2pi] mais ça je ne peux pas le deviner...
Messages postés
639
Date d'inscription
vendredi 17 octobre 2008
Statut
Membre
Dernière intervention
31 mai 2009
377
Ma solution colle très bien, j'ai très bien compris ce que tu cherches (bis).

Ta solution, d'ailleurs, marche aussi très bien si tu fais un flip du second vecteur.
fill([x1 fliplr(x1_bis)],[y1 fliplr(y1_bis)],'r');
Quand à ma solution, puisqu'apparemment il faut aussi que je l'écrive en remplaçant mes notations par les tiennes, elle donne :
X=[x1(1:end-1);x1(2:end);x1_bis(2:end);x1_bis(1:end-1)];
Y=[y1(1:end-1);y1(2:end);y1_bis(2:end);y1_bis(1:end-1)];
fill(X,Y,[0 0 1],'EdgeColor','none');
Voilà... ce fut un réel plaisir de me faire prendre pour une buse et de me faire envoyer sur les roses.

Bonne soirée
Messages postés
40
Date d'inscription
mardi 1 juillet 2008
Statut
Membre
Dernière intervention
5 août 2009
7
J'ai essayé de faire avec "fill" mais le problème c'est que le debut et la fin sont relié (il boucle automatiquement sur le dernier point) et je veux pas qu'il fasse ça !
Une autre idée ?
Merci de ta réponse
Messages postés
639
Date d'inscription
vendredi 17 octobre 2008
Statut
Membre
Dernière intervention
31 mai 2009
377
Une autre idée ?
Oui, elle est ici
Messages postés
40
Date d'inscription
mardi 1 juillet 2008
Statut
Membre
Dernière intervention
5 août 2009
7
J'arrive pas à accéder au lien !

Je met un bout de mon code ca pourrait etre utile !

r1 = (-t/10 + 2/10).^2;
x1 = r1 .* cos(t);
y1 = r1.* sin(t);

r1_bis = (-(t+pi/2)/10 + 2/10).^2;
x1_bis = r1_bis .* cos(t);
y1_bis = r1_bis.* sin(t);

fill([x1 x1_bis],[y1 y1_bis],'r');

Messages postés
639
Date d'inscription
vendredi 17 octobre 2008
Statut
Membre
Dernière intervention
31 mai 2009
377
Messages postés
40
Date d'inscription
mardi 1 juillet 2008
Statut
Membre
Dernière intervention
5 août 2009
7
Ta solution ne colle pas. T'as pas compris ce que je cherche.
Je suis restée polie j'aurais aimé que tu en fasses autant.
J'ai pas te temps à perdre avec quelqu'un qui se croit au dessus des autres.
Ne vas pas sur ce forum si ça ne te plait pas d'aider les autres et si tu es pas capable de le faire poliment
Messages postés
639
Date d'inscription
vendredi 17 octobre 2008
Statut
Membre
Dernière intervention
31 mai 2009
377
Ma solution colle très bien, j'ai très bien compris ce que tu cherches.
Messages postés
40
Date d'inscription
mardi 1 juillet 2008
Statut
Membre
Dernière intervention
5 août 2009
7
fill closes the polygon by connecting the last vertex to the first.