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 :

[Lancer de rayons] Intersections


Sujet :

Mathématiques

  1. #1
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2014
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2014
    Messages : 5
    Points : 3
    Points
    3
    Par défaut [Lancer de rayons] Intersections
    Bonsoir,

    J'aimerais savoir comment obtenir 't' de l'équation de la ligne (p = org + t*dir) à partir de l'équation d'une figure géométrique.

    Par exemple, sur cette page, on a deux équations qu'on ~met ensemble~ et il en sort une troisième équation qui me donne t.
    Grâce à celle ci, j'ai les boules! Mais pour les cônes ? Ou les cylindres?... Comment je trouve mon thé?

    Je suis un peu largué en maths.
    Merci d'avance !

  2. #2
    Expert confirmé
    Avatar de anapurna
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2002
    Messages
    3 416
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Mai 2002
    Messages : 3 416
    Points : 5 814
    Points
    5 814
    Par défaut
    salut

    c'est une résolution d’équation du premier degré
    tu as donc un fonction de droite du type :
    est tu cherche "a" le coefficient directeur de cette droite
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    => y-b = ax => (y-b)/x = a donc a = (y-b)/x
    ce qui donne donc pour ta formule
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    p = org + t*dir) => t = (p-org)/dir
    Nous souhaitons la vérité et nous trouvons qu'incertitude. [...]
    Nous sommes incapables de ne pas souhaiter la vérité et le bonheur, et sommes incapables ni de certitude ni de bonheur.
    Blaise Pascal
    PS : n'oubliez pas le tag

  3. #3
    Membre émérite

    Homme Profil pro
    Formation: Chimie et Physique (structure de la matière)
    Inscrit en
    Décembre 2010
    Messages
    1 333
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 77
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Formation: Chimie et Physique (structure de la matière)
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2010
    Messages : 1 333
    Points : 2 570
    Points
    2 570
    Billets dans le blog
    9
    Par défaut [Lancer de rayons] Intersections
    Bonjour,

    Il y a effectivement de quoi être largué, si l'on n'a pas vu qu'en notation anglo-saxonne, les vecteurs sont représentés en caractères gras pour des raisons typographiques, ce qui oblige à redoubler d'attention lors de la lecture des calculs.
    C'est ce que je fais aussi sur ce forum, faute d'autres moyens disponibles et suffisamment souples.
    Il faut ainsi lire, dans la page de Wikipedia dont tu as donné le lien:

    étant donné un repère orthonormé (O0xyz) - non cité
    # x: point quelconque de l'espace = O0M = (x, y, z) # coordonnées cartésiennes
    # c: centre de la sphère = O0C = (xC, yC, zC)
    # Equation de la sphère: CM = r , soit encore: ║CM║ = r , avec: CM = O0M - O0C = (x - xC, y - yC, z - zC) , ce qui donne finalement:
    (x - xC)2 + (y - yC)2 + (z - zC)2 = r2 ;

    # o: point de départ sur la droite = O0O = (xO, yO, zO)
    # l: vecteur unitaire = (lx, ly, lz) avec: lx2 + ly2 + lz2 = 1
    # Equation vectorielle de la droite: OM = d*l , soit encore: O0M - O0O = d*l = x - o
    ce qui conduit aux équations paramétriques: (x - xO, y - yO, z - zO) = (d * lx, d * ly, d * lz)

    Il faut convenir que la présentation du texte initial est assez raide, voire déplaisante.
    Cela bien compris, tes calculs devraient avancer beaucoup plus vite.
    Détail très important: pour améliorer la clarté et la lisibilité du texte, écrire impérativement les vecteurs en matrices colonnes (ce qui n'était pas possible ici).

    Je n'ai pas vu d'où vient ton équation (p = org + t*dir) , mais la transcription est défectueuse parce que (t) représente un vecteur, et qu'il devrait y en avoir d'autres.


    Le français, notre affaire à tous
    Grand Dictionnaire Terminologique

  4. #4
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2014
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2014
    Messages : 5
    Points : 3
    Points
    3
    Par défaut
    Bonjour,

    Tout d'abord, merci pour vos réponses !

    -> anapurna
    OK pour cette équation je vois le principe général, mais pour celle-ci (celle du cône, trouvée - page 4) par exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    pow(cos(a), 2) * pow(((Q - P) - (V * (Q - P) * V)) , 2) - pow(sin(a) , 2) * pow((V * (Q - P)) , 2) == 0
    Comment je m'y prend pour sortir mon Q (qui correspond au point d'intersection si j'ai bien compris) ?
    Je commence par 'sortir' (Q - P)?... Je fais quoi du reste, quand tout est 'encapsulé'?

    Existe t-il un algorithme/façon de faire qui s'appliquerait à toutes les sauces?
    Merci pour votre patience...

    PS : désolé si c'est pas présenté de façon claire, suivez plutôt le lien vers le PDF.

  5. #5
    Expert éminent sénior Avatar de Flodelarab
    Homme Profil pro
    Inscrit en
    Septembre 2005
    Messages
    5 242
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente (Poitou Charente)

    Informations forums :
    Inscription : Septembre 2005
    Messages : 5 242
    Points : 13 457
    Points
    13 457
    Par défaut
    Bonjour

    Citation Envoyé par wiwaxia Voir le message
    C'est ce que je fais aussi sur ce forum, faute d'autres moyens disponibles et suffisamment souples.
    Oserai-je rappeler que LaTeX est installé sur ce forum, ce qui permet des trucs comme cela ?

    Formule mathématique
    Cette réponse vous apporte quelque chose ? Cliquez sur en bas à droite du message.

  6. #6
    Membre émérite

    Homme Profil pro
    Formation: Chimie et Physique (structure de la matière)
    Inscrit en
    Décembre 2010
    Messages
    1 333
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 77
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Formation: Chimie et Physique (structure de la matière)
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2010
    Messages : 1 333
    Points : 2 570
    Points
    2 570
    Billets dans le blog
    9
    Par défaut
    Bonjour,

    Citation Envoyé par theophilusse Voir le message
    ... OK pour cette équation je vois le principe général, mais pour celle-ci (celle du cône, trouvée - page 4) par exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    pow(cos(a), 2) * pow(((Q - P) - (V * (Q - P) * V)) , 2) - pow(sin(a) , 2) * pow((V * (Q - P)) , 2) == 0
    Comment je m'y prend pour sortir mon Q (qui correspond au point d'intersection si j'ai bien compris) ?
    Je commence par 'sortir' (Q - P)?... Je fais quoi du reste, quand tout est 'encapsulé'? ....
    Pas de chance, tu es tombé sur un texte encore pire, dont la typographie ne distingue pas les vecteurs des scalaires il faut alors suivre son flair ... On peut se sortir de ce jeu de piste en observant bien la figure, pour identifier les objet représentés.
    Nom : Infinite cone-ray intersections.jpg
Affichages : 309
Taille : 111,2 Ko
    Traduire:
    # x2 + y2 = y2*tan(a)2 ou cos(a)2*(x2 + y2) - sin(a)2*y2 = 0 (relation initiale erronée)
    # pa: sommet du cône = OP
    # va: vecteur unitaire porté par l'axe orienté du cône = (vax, vay, vaz) avec vax2 + vay2 + vaz2 = 1
    # q: point de la surface = OM = OP + PH + HM où (H) est la projection orthogonale de (M) sur l'axe du cône; le triangle (PHM) est rectangle en (H) et vérifie les relations:
    PM2 = PH2 + HM2 ; HM = PH * tan(a) (et les deux autres, impliquant sin(a) et cos(a))
    # (H) est localisable sur l'axe à l'aide du réel (t): PH = va*t , ce qui donne PH2 = ║va2*t2 = t2
    # On peut de même utiliser un autre vecteur unitaire (vb), normal au précédent, dirigé de (H) vers (M) et vérifiant: HM = vb*t' , ce qui donne HM2 = ║vb2*t'2 = t'2 , PM2 = t2 + t'2 et t'2 = t2*tan(a)2
    # (va, q) représente probablement un produit vectoriel, puisqu'il en faut un pour définir le trièdre local de sommet (P) associé au cône (la notation est vraiment désinvolte !)
    (va, q) = va×OM = va×OP + va×PH + va×HM = va×pa + va×va*t + va×vb*t'
    En tenant compte de ce que: va×va = 0 et
    va×vb = vc , troisième vecteur unitaire orthogonal aux deux précédents et orienté de telle sorte que (va, vb, vc) soit direct, on obtient en reprenant la notation du commentaire:
    (va, q) = (va, pa) + vc*t' , soit encore: (va, q - pa) = vc*t' et (va, q - pava = (vc*t')×va = (vc×va)*t' = vb*t' = HM
    En tenant compte aussi (voir plus haut) de ce que: promis, c'est bientôt terminé
    q - pa = PH + HM il vient: q - pa - (va, q - pa),va = PH

    On obtient finalement en passant aux carrés scalaires (carrés des normes):
    (va, q - pa)2 = HM2 = t'2 = t2*tan(a)2
    (q - pa - (va, q - pa),va)2 = PH2 = t2 , et

    t2*cos(a)2 = (q - pa - (va, q - pa),va)2 *cos(a)2 = (va, q - pa)2*sin(a)2

    La dernière égalité n'est autre que l'équation cartésienne de la surface considérée, mise sous forme vectorielle; équation du second degré qui peut se ramener à F(x, y, z) = 0, et contient les éléments de définition du cône: sommet (pa), axe (va) et demi-ouverture (a).

    Un logiciel d'image 3D traite en interne une telle équation. Si maintenant tu envisages une résolution manuelle, il est hors de question d'extraire le vecteur position (q), objet géométrique impliqué dans deux produits vectoriels et deux produits scalaires ! On peut seulement envisager de localiser le (ou les) éventuel(s) point(s) d'intersection de la surface avec un "rayon" (demi-droite paramétrée) issue d'une source (S).

    Merci de me signaler les coquilles la typographie et le calcul ne font pas bon ménage.

    @F** Mais oui, il faut oser ! On a lu bien pire il y a peu ... et tous les avis sont les bienvenus.


    Le français, notre affaire à tous
    Grand Dictionnaire Terminologique

  7. #7
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2014
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2014
    Messages : 5
    Points : 3
    Points
    3
    Par défaut
    Merci Wiwaxia pour tes explications, je vais essayer de mettre ça en place.

    Problème résolu jusqu'à preuve du contraire!

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

Discussions similaires

  1. [Lancer de rayon] Intersection rayon/sphère
    Par Celelibi dans le forum Mathématiques
    Réponses: 2
    Dernier message: 22/02/2009, 18h11
  2. [Lancer de rayon] Calcul d'intersections
    Par ant12oine dans le forum Mathématiques
    Réponses: 2
    Dernier message: 03/05/2008, 14h25
  3. OpenGL et le lancer de rayon
    Par Premium dans le forum OpenGL
    Réponses: 7
    Dernier message: 06/12/2006, 17h04
  4. Lancer de rayon
    Par Bethoring dans le forum Algorithmes et structures de données
    Réponses: 2
    Dernier message: 29/11/2005, 22h28
  5. Lancer de Rayon
    Par Wyatt dans le forum OpenGL
    Réponses: 3
    Dernier message: 05/05/2005, 13h51

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