IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

MATLAB Discussion :

Obtenir les coordonnées des noeuds de chaque élément et la table de connectivité d'un maillage [Débutant]


Sujet :

MATLAB

  1. #1
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2014
    Messages
    26
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2014
    Messages : 26
    Points : 24
    Points
    24
    Par défaut Obtenir les coordonnées des noeuds de chaque élément et la table de connectivité d'un maillage
    Bonjour,

    J'ai crée un maillage triangulaire à l'aide de Delaunay.
    Je ne sais pas comment obtenir les coordonnées des noeuds de chaque élément (triangle) et la table de connectivité du maillage.
    Quelqu'un aurait-il une idée pour coder ça en Matlab?

    Merci d'avance.

  2. #2
    Rédacteur/Modérateur

    Avatar de Jerome Briot
    Homme Profil pro
    Freelance mécatronique - Conseil, conception et formation
    Inscrit en
    Novembre 2006
    Messages
    20 302
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Freelance mécatronique - Conseil, conception et formation

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 302
    Points : 53 166
    Points
    53 166
    Par défaut
    Que ce soit avec la fonction delaunay ou avec la fonction DelaunayTri, les coordonnées des noeuds sont passés en argument d'entrée et la table de connectivité est obtenue en argument de sortie.

    Je ne vois pas où se trouve la difficulté.
    Ou alors je n'ai pas bien compris la question ?
    Ingénieur indépendant en mécatronique - Conseil, conception et formation
    • Conception mécanique (Autodesk Fusion 360)
    • Impression 3D (Ultimaker)
    • Développement informatique (Python, MATLAB, C)
    • Programmation de microcontrôleur (Microchip PIC, ESP32, Raspberry Pi, Arduino…)

    « J'étais le meilleur ami que le vieux Jim avait au monde. Il fallait choisir. J'ai réfléchi un moment, puis je me suis dit : "Tant pis ! J'irai en enfer" » (Saint Huck)

  3. #3
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2014
    Messages
    26
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2014
    Messages : 26
    Points : 24
    Points
    24
    Par défaut
    Ci-dessous le code utilisé pour réaliser le maillage triangulaire :
    M étant la matrice contenant les coordonnées des points
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    X = M(:,1)
    Y = M(:,2)
    tri = delaunay(X,Y);
    trimesh(tri,X,Y);
    Pourriez vous m'expliquer comment calculer et afficher le centre de gravité de chacun des triangles du maillage?

    Merci

  4. #4
    Modérateur

    Homme Profil pro
    Ingénieur en calculs scientifiques
    Inscrit en
    Août 2007
    Messages
    4 639
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Ingénieur en calculs scientifiques

    Informations forums :
    Inscription : Août 2007
    Messages : 4 639
    Points : 7 614
    Points
    7 614
    Par défaut
    Bonjour,

    pour calculer les cordonnées du centre de gravité d'un triangle, il suffit de calculer la moyennes des coordonnées des points constituant ce triangle, et pour l'afficher, tu peux utiliser la fonction plot.
    Pour une bonne utilisation des balises code c'est ici!
    Petit guide du voyageur MATLABien : Le forum La faq Les tutoriels Les sources


    La nature est un livre écrit en langage mathématique. Galilée.

  5. #5
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2014
    Messages
    26
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2014
    Messages : 26
    Points : 24
    Points
    24
    Par défaut
    Pour le calcul des coordonnées du centre de gravité de chacun des triangles de mon maillage, mon problème principal c'est comment identifier pour chaque triangle du maillage généré par la triangulation de Delaunay, les coordonnées des nœuds qui les composent.
    Quelqu'un aurait une solution à me proposer?
    Merci

  6. #6
    Modérateur

    Homme Profil pro
    Ingénieur en calculs scientifiques
    Inscrit en
    Août 2007
    Messages
    4 639
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Ingénieur en calculs scientifiques

    Informations forums :
    Inscription : Août 2007
    Messages : 4 639
    Points : 7 614
    Points
    7 614
    Par défaut
    Citation Envoyé par Wel Kol Voir le message
    Quelqu'un aurait une solution à me proposer?
    Oui, la documentation :
    TRI = delaunay(X,Y)creates a 2-D Delaunay triangulation of the points (X,Y), where X and Y are column-vectors. TRI is a matrix representing the set of triangles that make up the triangulation. The matrix is of size mtri-by-3, where mtri is the number of triangles. Each row of TRI specifies a triangle defined by indices with respect to the points.
    Pour lire la documentation :
    Pour une bonne utilisation des balises code c'est ici!
    Petit guide du voyageur MATLABien : Le forum La faq Les tutoriels Les sources


    La nature est un livre écrit en langage mathématique. Galilée.

  7. #7
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2014
    Messages
    26
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2014
    Messages : 26
    Points : 24
    Points
    24
    Par défaut
    Merci!
    A chaque point des triangles est associé un vecteur. J'aimerais écrire une condition qui permet tracer à chacun des centres de gravité des triangles un vecteur de même direction que les vecteurs associés aux 3 points des triangles.
    Avez vous des suggestions à me faire?

  8. #8
    Modérateur

    Homme Profil pro
    Ingénieur en calculs scientifiques
    Inscrit en
    Août 2007
    Messages
    4 639
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Ingénieur en calculs scientifiques

    Informations forums :
    Inscription : Août 2007
    Messages : 4 639
    Points : 7 614
    Points
    7 614
    Par défaut
    Que représentent ces vecteurs? Quelle est cette condition? As-tu essayé de coder quelque chose et si oui, peux-tu nous le montrer? (pour tracer un ensemble de vecteur, il y a la fonction quiver)
    Pour une bonne utilisation des balises code c'est ici!
    Petit guide du voyageur MATLABien : Le forum La faq Les tutoriels Les sources


    La nature est un livre écrit en langage mathématique. Galilée.

  9. #9
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2014
    Messages
    26
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2014
    Messages : 26
    Points : 24
    Points
    24
    Par défaut
    Salut,

    J'ai fait le maillage triangulaire à l'aide de Delaunay triangulation. C'est un maillage d'une plaque constituée de fils. Les directions horizontale et verticale des fils sont représentées par des vecteurs en chaque point de la plaque. Pour représenter ces vecteurs, j'ai utilisé la fonction quiver. J'aimerais mettre en place un code permettant de répertorier les vecteurs qui appartiennent à chacun des triangles du maillage.
    Pourriez-vous m'expliquer comment faire?
    Merci!

  10. #10
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2014
    Messages
    26
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2014
    Messages : 26
    Points : 24
    Points
    24
    Par défaut
    Problème résolu à l'aide de la fonction inpoly :-)

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 2
    Dernier message: 09/07/2013, 15h52
  2. Obtenir les coordonnées réelles
    Par chep dans le forum OpenGL
    Réponses: 2
    Dernier message: 19/04/2005, 12h05
  3. [VB6] Obtenir les nomps des polices
    Par daladim dans le forum VB 6 et antérieur
    Réponses: 1
    Dernier message: 11/01/2005, 12h59
  4. Comment obtenir les Handles des boutons systèmes de Windows ?
    Par Desraux dans le forum API, COM et SDKs
    Réponses: 6
    Dernier message: 22/12/2004, 22h20
  5. [VBA]Obtenir les noms des polices disponibles
    Par xp dans le forum VBA Access
    Réponses: 2
    Dernier message: 04/03/2004, 15h39

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo