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 Web en Java Discussion :

Chevauchement de rectangles


Sujet :

Développement Web en Java

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    25
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2008
    Messages : 25
    Par défaut Chevauchement de rectangles
    Bonjour,

    C'est une question qui va paraître simple pour beaucoup mais je n'arrête pas d'avoir des erreurs dessus, donc ...

    J'essaie de programmer une fonction qui permet de détecter si 2 rectangles se chevauchent ou non, sachant pour chaque rectangle l’abscisse min et max, l'ordonnée min et max. Si les 2 rectangles se touchent sur les bords seulement, ils ne se chevauchement pas.

    J'aimerais résoudre cela en utilisant une simple conditionnelle, mais ça s'est avéré plus compliqué que ce que je pensais. Les projections simples sur les axes ne semblent pas suffire...

    Merci par avance

  2. #2
    Modérateur
    Avatar de dinobogan
    Homme Profil pro
    ingénieur
    Inscrit en
    Juin 2007
    Messages
    4 073
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France

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

    Informations forums :
    Inscription : Juin 2007
    Messages : 4 073
    Par défaut
    Il te suffit de vérifier si au moins un des quatre coins du premier rectangle se trouve à l'intérieur du second rectangle.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java
    Que la force de la puissance soit avec le courage de ta sagesse.

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    25
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2008
    Messages : 25
    Par défaut
    Cela fonctionne quand le point est au sens strict dans le rectangle mais il y a un cas où ça ne va pas compiler :

    ------------
    '
    '-----------'
    '
    '-----------'
    ' '
    '-----------'
    dans ce cas, on a deux rectangles qui se chevauchent même si les abscisses sont confondus. Mais dans le cas ci-dessous :

    ------------
    '
    '
    '-----------
    '
    '-----------'

    On considère que les rectangles ne se chevauchent pas bien qu'il ait un coté commun. Ce sont ces cas particuliers que j'ai du mal à résoudre...

    ps : désolé pour ces schémas peu explicites...

  4. #4
    Modérateur
    Avatar de dinobogan
    Homme Profil pro
    ingénieur
    Inscrit en
    Juin 2007
    Messages
    4 073
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France

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

    Informations forums :
    Inscription : Juin 2007
    Messages : 4 073
    Par défaut
    Tu veux parler de ce cas là (en pièce jointe) par exemple ?
    Tu souhaites détecter si le rectangle 1 possède une ligne commune avec le rectangle 2 ?
    Dans ce cas, il te suffit de tester les 4 coins du rectangle 1 dans le rectangle 2, puis les 4 coins du rectangle 2 dans le rectangle 1. Tu pourras même connaitre les coordonnées de la ligne commune avec cette méthode.
    Images attachées Images attachées  
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java
    Que la force de la puissance soit avec le courage de ta sagesse.

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    25
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2008
    Messages : 25
    Par défaut
    Bonjour,

    Merci beaucoup, j'ai trouvé la solution (toute bête) à mon problème, je laisse le lien qui m'a aidé au cas où ça servirait :

    http://www.hilpers.fr/524201-chevauc...-de-rectangles

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

Discussions similaires

  1. Calculer l'aire d'une union de rectangles qui se chevauchent
    Par jeroman dans le forum Algorithmes et structures de données
    Réponses: 3
    Dernier message: 31/05/2014, 15h36
  2. Construction d'un bloc de rectangles sans chevauchements
    Par BobaL dans le forum Algorithmes et structures de données
    Réponses: 6
    Dernier message: 11/09/2012, 21h06
  3. Comment centrer un Texte dans un rectangle ...
    Par Djedjeridoo dans le forum Composants VCL
    Réponses: 3
    Dernier message: 16/06/2003, 21h56
  4. Dessiner un rectangle avec bords et texte ...
    Par Djedjeridoo dans le forum Composants VCL
    Réponses: 3
    Dernier message: 16/06/2003, 17h17
  5. Réponses: 9
    Dernier message: 11/03/2003, 12h22

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