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 :

Créer un tube à partir de coordonnées d'un chemin


Sujet :

MATLAB

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2014
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2014
    Messages : 3
    Points : 1
    Points
    1
    Par défaut Créer un tube à partir de coordonnées d'un chemin
    Bonjour,
    J'ai actuellement plusieurs "chemins" 3D que j'ai tracé sur matlab grâce à la fonction plot3 qui marche très bien. Ils sont définis grâce aux coordonnées des points (x,y,z) qui les composent et ce sont les seules données dont je dispose pour mon problème.
    J'aurais aimé mettre du volume à ces chemins en choisissant le diamètre que je veux et mailler le volume ainsi créé.
    Est-il possible de faire cela sous matlab ? Ce qui m'éviterait des calculs longs et fastidieux à faire à la main...
    Si oui grâce à quelles fonctions ?

    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 318
    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 318
    Points : 52 953
    Points
    52 953
    Par défaut
    Fais une recherche sur le File Exchange

  3. #3
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2014
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2014
    Messages : 3
    Points : 1
    Points
    1
    Par défaut
    Merci pour cette réponse et ce site a l'air vraiment utile je le garde sous le coude merci pur ça.
    Cependant, je n'arrive toujours pas à mes fins. En effet j'ai toujours des erreurs quand j'utilise des fonctions trouvées sur ce site telles que tubeplot ou cylinder2 ... n'auriez vous pas un exemple de tube tracé grâce à des coordonnées de point ? cela m'aiderait beaucoup sur la syntaxe à adopter dans ce cas.
    Merci bien.

  4. #4
    Rédacteur/Modérateur

    Avatar de Jerome Briot
    Homme Profil pro
    Freelance mécatronique - Conseil, conception et formation
    Inscrit en
    Novembre 2006
    Messages
    20 318
    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 318
    Points : 52 953
    Points
    52 953
    Par défaut
    Il y a un exemple d'utilisation dans l'aide de la fonction tubeplot :

    En voici un autre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    th = linspace(0,6*pi,100);
     
    x = 5*cos(th);
    y = 5*sin(th);
    z = linspace(0, 10, 100);
     
    figure
     
    subplot(121)
    plot3(x, y, z, 'b-s')
    grid on
    axis equal tight vis3d
     
    subplot(122)
    tubeplot([x ; y ; z], 1, 15);
    axis equal tight vis3d
    Images attachées Images attachées  

  5. #5
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2014
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2014
    Messages : 3
    Points : 1
    Points
    1
    Par défaut
    Merci beaucoup pour cet exemple en fait le problème que j'avais était que mes coordonnées étaient dans des vecteurs colonne et non ligne comme dans votre exemple. Je les ai transformé et maintenant cela fonctionne très bien il faut juste que je fasse attention à ne pas avoir des angles de plus de 90° dans mes chemins comme indiqué dans tubeplot.
    Maintenant, j'aurais aimé pouvoir récupérer les coordonnées du maillage créé pour pouvoir l'exporter afin de créer un modèle mécanique avec ce maillage.
    En tout cas merci infiniment pour vos réponses rapides et utiles.

  6. #6
    Rédacteur/Modérateur

    Avatar de Jerome Briot
    Homme Profil pro
    Freelance mécatronique - Conseil, conception et formation
    Inscrit en
    Novembre 2006
    Messages
    20 318
    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 318
    Points : 52 953
    Points
    52 953
    Par défaut
    Voici comment générer le maillage (type éléments finis) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    [x,y,z] = tubeplot([x ; y ; z], 1, 15);
     
    s = surf(x,y,z);
     
    [elmts, nodes] = surf2patch(s);
    Tu peux l'afficher comme ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    figure
    patch('vertices', nodes, 'faces', elmts, 'facecolor', 'r')
    axis equal tight vis3d
    Il y aura par contre des nœuds en double dans le modèle, qu'il faudra sans doute éliminer avant un éventuel calcul.

Discussions similaires

  1. Créer une carte à partir de coordonnées GPS
    Par Plotoner dans le forum PyQt
    Réponses: 1
    Dernier message: 10/01/2015, 00h31
  2. créer une matrice à partir de ses coordonnées
    Par Décembre dans le forum MATLAB
    Réponses: 5
    Dernier message: 20/01/2012, 21h00
  3. Créer un fichier shapefile à partir de coordonnées x,y
    Par jeanphi45 dans le forum Développement de jobs
    Réponses: 5
    Dernier message: 09/02/2011, 15h14
  4. créer une matrice à partir de coordonnées 3D
    Par Décembre dans le forum MATLAB
    Réponses: 2
    Dernier message: 12/07/2010, 16h00
  5. [PHP 5.0] Créer une trace à partir de coordonnées
    Par SebastienM dans le forum Langage
    Réponses: 0
    Dernier message: 19/05/2010, 22h21

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