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

Développement 2D, 3D et Jeux Discussion :

Savoir si un point se trouve dans un objet convexe


Sujet :

Développement 2D, 3D et Jeux

  1. #1
    Membre actif
    Profil pro
    Inscrit en
    Février 2006
    Messages
    396
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2006
    Messages : 396
    Points : 230
    Points
    230
    Par défaut Savoir si un point se trouve dans un objet convexe
    Hello,

    J'ai un objet 3d convexe quelconque formé d'environ 7 points en moyenne.

    Je cherche l'algorithme le plus rapide qui me permettrais de savoir si un bounding box (AABB) se trouve à l'intérieur ou non de mon objet convexe.

    /!\ : les 8 points de ma AABB peuvent se trouver en-dehors de mon objet convexe alors que le centre de ma AABB se trouve à l'intérieur !

    Merci d'avance...

  2. #2
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    185
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Avril 2004
    Messages : 185
    Points : 118
    Points
    118
    Par défaut
    pourquoi ne pas faire des mini boundig box au endroit de chacun de tes points ?

  3. #3
    Membre actif
    Profil pro
    Inscrit en
    Février 2006
    Messages
    396
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2006
    Messages : 396
    Points : 230
    Points
    230
    Par défaut
    Tu répond à ma dernière phrase si j'ai bien compris ?
    /!\ : les 8 points de ma AABB peuvent se trouver en-dehors de mon objet convexe alors que le centre de ma AABB se trouve à l'intérieur !
    Oui je peux diviser ma bounding box en plein de petit morceau pour éviter le problème décrit dans ma dernière phrase. Mais ça risque de pas mal ralentir mon algo si je doit diviser beaucoup de fois mon AABB ! Je ferais avec si il n'y a pas d'autre solution.

    Et ça ne répond pas à ma question principale : comment savoir si un (mini) AABB se trouve ou non à l'intérieur d'un objet convexe ? merci...

  4. #4
    Rédacteur
    Avatar de Laurent Gomila
    Profil pro
    Développeur informatique
    Inscrit en
    Avril 2003
    Messages
    10 651
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2003
    Messages : 10 651
    Points : 15 920
    Points
    15 920
    Par défaut
    Les tests entre un convexe et un point ou une sphère sont extrêmement simples, à utiliser si tu peux te permettre d'approximer ta petite boîte par l'une de ces deux formes.

    Si tu veux un résultat exact, il va falloir sortir le test entre un convexe et un autre convexe (à ma connaissance il n'y a pas de simplification pour les AABB), qui est un peu plus compliqué. Jette un oeil au théorème des axes séparateurs.

    Il y a quelques bons liens dans la FAQ 3D.

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    185
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Avril 2004
    Messages : 185
    Points : 118
    Points
    118
    Par défaut
    Citation Envoyé par zenux Voir le message
    Tu répond à ma dernière phrase si j'ai bien compris ?


    Oui je peux diviser ma bounding box en plein de petit morceau pour éviter le problème décrit dans ma dernière phrase. Mais ça risque de pas mal ralentir mon algo si je doit diviser beaucoup de fois mon AABB ! Je ferais avec si il n'y a pas d'autre solution.

    Et ça ne répond pas à ma question principale : comment savoir si un (mini) AABB se trouve ou non à l'intérieur d'un objet convexe ? merci...
    je suis pas sûr de mettre fait comprendre, ce à quoi je pensais été de générer 8 petites boites, autour de chacun de tes huit points et non de découper la totalité de ton volume en sous volume. Après tu fais un test pour chacun de tes huit points.

    Maintenant je n'ai peut-être pas compris ce que tu voulais

Discussions similaires

  1. Savoir si un point se trouve dans un tétraèdre
    Par zenux dans le forum Mathématiques
    Réponses: 22
    Dernier message: 02/02/2009, 09h27
  2. [Tableaux] Savoir ou l'on se trouve dans l'arborescence
    Par Jim_Nastiq dans le forum Langage
    Réponses: 5
    Dernier message: 27/07/2006, 23h18
  3. Réponses: 1
    Dernier message: 26/06/2006, 14h16
  4. Réponses: 6
    Dernier message: 04/11/2005, 12h34
  5. Savoir si un point est inclus dans un polygone quelconque
    Par SuperBIBI dans le forum Algorithmes et structures de données
    Réponses: 4
    Dernier message: 02/08/2005, 19h02

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