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

Mathématiques Discussion :

Problème intersection plan triangles


Sujet :

Mathématiques

  1. #1
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Février 2009
    Messages
    1
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 1
    Points : 1
    Points
    1
    Par défaut Problème intersection plan triangles
    Bonjour à tous,
    J'ai une matrice [3 4] comme ci dessous:

    1 1 2 3
    2 3 5 1
    3 5 3 9
    La première colonne correspond aux indices de mes triangles et les autres font références aux coordonnées des points contenus dans une autre matrice du type:

    1 8 5 10
    2 8 5 0
    3 5 5 0
    5 5 5 10
    9 5 7 0
    Ici, la première colonne représente l'indice des points formant les triangles

    exemple, les sommets du premier triangle ont pour coordonnées:
    (8 5 10, 8 5 0, 5 5 0)

    Mon problème est de tracer l'intersection de ces triangles avec un plan d'équation z=h où h est une variable

    Je met un exemple de ce que j ai fais:


    A=[8;5;10]
    B=[8;5;0]
    C=[5;5;0]

    AB=[B(1)-A(1);B(2)-A(2);B(3)-A(3)] % premier vecteur appartenant au plan du tringle 1
    AC=[C(1)-A(1);C(2)-A(2);C(3)-A(3)] % deuxieme vecteur appartenant au plan du tringle 1

    N1=[AB(2)*AC(3)-AB(3)-AC(2);AB(3)*AC(1)-AB(1)-AC(3);AB(1)*AC(2)-AB(2)-AC(1)] % vecteur normal au plan (ABC)
    Np=[0;0;1] %vecteur normal au plan P

    %là je bloc pour obtenir l'équation de la droite d'intersection entre les
    %plans 1 et P, Comment réaliser une équation cartésienne de plan et
    %calculer cette droite???
    je vous remercie d'avance

    P.S. Je travail sur Matlab

  2. #2
    Modérateur
    Avatar de ToTo13
    Homme Profil pro
    Chercheur en informatique
    Inscrit en
    Janvier 2006
    Messages
    5 793
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Chercheur en informatique
    Secteur : Santé

    Informations forums :
    Inscription : Janvier 2006
    Messages : 5 793
    Points : 9 860
    Points
    9 860

  3. #3
    Rédacteur

    Homme Profil pro
    Comme retraité, des masses
    Inscrit en
    Avril 2007
    Messages
    2 978
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 84
    Localisation : Suisse

    Informations professionnelles :
    Activité : Comme retraité, des masses
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 2 978
    Points : 5 179
    Points
    5 179
    Par défaut
    Salut!
    Une matrice dans laquelle la première colonne est constituée de nombres entiers (des numéros) et les suivantes de nombres réels (des coordonnées), ça n'existe pas. Ce que tu nous montres, ce sont des tableaux et non des matrices.
    Jean-Marc Blanc

  4. #4
    Rédacteur
    Avatar de Zavonen
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    1 772
    Détails du profil
    Informations personnelles :
    Âge : 77
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 772
    Points : 1 913
    Points
    1 913
    Par défaut
    Oublions ton tableau d'indices etc, etc. qui ne font que compliquer (inutilement) la donnée.
    Ton problème général est de trouver l'intersection d'un triangle avec un plan de cote fixe z=h.
    Tu es d'accord qu'en déplaçant le repère on peut toujours supposer que l'origine est en A.
    Les points de ton triangle sont les points G tels que:
    AG=bAB+cAC (égalité vectorielle où c>0, b>0 et c+b <1
    Tu peux donc calculer les coordonnées de G en fonction de c et b.
    En écrivant que l'ordonnée de G est h tu obtiens une nouvelle relation entre c et b.
    Joignant cette relation (linéaire) à c>0, b>0 et c+b <1 tu obtiens un ensemble à UN paramètre c variant de 0 à 1 qui est soit un segment soit vide. C'est l'intersection cherchée.Les extrêmités du segment correspondent aux valeurs extrêmes du paramètre.

  5. #5
    En attente de confirmation mail
    Profil pro
    Inscrit en
    Février 2009
    Messages
    37
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Sarthe (Pays de la Loire)

    Informations forums :
    Inscription : Février 2009
    Messages : 37
    Points : 24
    Points
    24
    Par défaut
    Soit P le plan donné par z+d=0
    Deux points A(a1 a2 a3) et B(b1 b2 b3)
    AB=(b1-a1 b2-a2 b3-a3)=(u1 u2 u3)
    I(xi yi zi) intersection de AB et P
    Ce que tu recherche c'est le point appartenant à P et AB

    Voilà une démarche :

    AI = k*AB avec 0<k<1

    Tu obtient le système suivant :

    xi = a1+k*u1
    yi = a2+k*u2
    zi = a3+k*u3

    4 inconnues, 3 équations, ça pose problème sauf qu'en réinjectant ces équations dans l'équation de ton plan, tu obtiens une relation de plus

    zi = -d

    et donc

    k = (-d-a3)/u3
    yi = a2+u2*k
    xi = a1+u1*k

    Ensuite tu répète la démarche pour les autres.

Discussions similaires

  1. Problème avec plan d'execution
    Par bibi92 dans le forum SQL
    Réponses: 4
    Dernier message: 18/09/2008, 11h09
  2. Intersection plan et surface Bézier
    Par coberle dans le forum Mathématiques
    Réponses: 2
    Dernier message: 06/05/2008, 16h17
  3. problème arrière plan excel vba
    Par xav30 dans le forum Macros et VBA Excel
    Réponses: 12
    Dernier message: 04/12/2007, 01h32
  4. drag and drop : problème de plan !
    Par kayser dans le forum Général JavaScript
    Réponses: 9
    Dernier message: 31/03/2005, 14h54
  5. petit problème premier plan, arrière plan
    Par gros bob dans le forum OpenGL
    Réponses: 4
    Dernier message: 19/04/2004, 13h00

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