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

Algorithmes et structures de données Discussion :

Intersection d'un segment et d'un AABB


Sujet :

Algorithmes et structures de données

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    216
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2003
    Messages : 216
    Points : 74
    Points
    74
    Par défaut Intersection d'un segment et d'un AABB
    Hello,

    J'ai un segment définit par 2 points et aussi un parallélépipède rectangle aligné sur les 3 axes X, Y, Z (AABB) et définit par 2 points.
    J'ai donc par exemple les points "B" et "H" : http://www.ilemaths.net/img/maths/3/...t-05-02_02.gif

    Ma question : comment savoir si mon segment passe dans mon parallélépipède.
    Je cherche la solution la plus rapide.

    Merci...

  2. #2
    Membre éclairé
    Avatar de parp1
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    829
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Calvados (Basse Normandie)

    Informations forums :
    Inscription : Mai 2005
    Messages : 829
    Points : 872
    Points
    872
    Par défaut
    Tu peux calculer l'équation de ton segment (ligne dans un dommaine précis) par exemple y=a.x+b en 2D pour 3D je ne sais pas.

    Tu parcours ton équation dans le dommaine de ton segment. Et tu regarde si le point que tu as obtenu a les caracteristiques suivantes.

    x compris entre xmin et xmax du parallélépipède.
    y compris entre ymin et ymax du parallélépipède.
    z compris entre zmin et zmax du parallélépipède.

    Si et seulement si le point calculé a ses trois coordonnées comprise dans ces caractèristique alors ce point est dans le parallélépipède.

    Sinon après est ce que tu veux savoir si il passe seulement dans ton pavé. Si il est inclu entierement dedans.... etc. les conditions doivent changer.

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    216
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2003
    Messages : 216
    Points : 74
    Points
    74
    Par défaut
    Merci pour ta réponse...mais est-ce la façon la plus rapide ? Je doute... ?!

  4. #4
    Membre éclairé
    Avatar de parp1
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    829
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Calvados (Basse Normandie)

    Informations forums :
    Inscription : Mai 2005
    Messages : 829
    Points : 872
    Points
    872
    Par défaut
    Euh c'est une réponse... certainement rapide.... mais peut être pas ce qu'il y a de plus optimal...

    Désolé.

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    216
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2003
    Messages : 216
    Points : 74
    Points
    74
    Par défaut
    Oui, parce si j'ai un segment super grand (ce qui risque fort d'arrivé) et un para. rectangle super petit, l'algo sera assez lent.

    Donc si quelqu'un à une autre solution, je suis preneur.

  6. #6
    Rédacteur
    Avatar de pseudocode
    Homme Profil pro
    Architecte système
    Inscrit en
    Décembre 2006
    Messages
    10 062
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Architecte système
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2006
    Messages : 10 062
    Points : 16 084
    Points
    16 084
    Par défaut Probleme classique en raytracing
    Plutot que de calculer les coordonnées du point d'intersection, on calcule un indicateur de type "vrai/faux":

    Methode appelée "bounding slabs intersection" par Kay & Kayjia , dispo dans tous les bons moteurs de recherche.

  7. #7
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    216
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2003
    Messages : 216
    Points : 74
    Points
    74
    Par défaut
    Merci pour ces mots clef, je devrait trouver la solution sans trop de problème maintenant.

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

Discussions similaires

  1. Intersection entre segment et cercle
    Par chadliii dans le forum Mathématiques
    Réponses: 15
    Dernier message: 03/10/2019, 19h52
  2. Algo intersection de 2 segments
    Par julian_ross dans le forum Développement 2D, 3D et Jeux
    Réponses: 29
    Dernier message: 25/03/2011, 13h33
  3. intersection de 4 segments
    Par AJ_ing dans le forum MS SQL Server
    Réponses: 11
    Dernier message: 10/02/2011, 17h23
  4. Intersection de segments !
    Par j.lebowski dans le forum Général Java
    Réponses: 1
    Dernier message: 03/02/2009, 16h31
  5. Réponses: 3
    Dernier message: 22/06/2008, 17h06

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