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 :

Agrandissement/Réduction de rectangle, les uns par rapport aux autres avec contrainte


Sujet :

Algorithmes et structures de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    574
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Avril 2004
    Messages : 574
    Par défaut Agrandissement/Réduction de rectangle, les uns par rapport aux autres avec contrainte
    Bonjour à tous, et Meilleurs Voeux !!!

    Je reviens cette année avec encore (et toujours) des questions !
    J'ai presque fini de mettre au point mon algorithme de disposition de fenêtres avec contraintes.

    Je voudrais faire appel à vous pour un soucis, qui peut être vous rappellera quelque chose que vous avez déjà vu.

    Donc je me lance :
    J'ai des rectangles qui sont tous déjà positionnés (aucun ne se chevauche).
    Et voici que je voudrais en aggrandir un ou le rétrécir... Cependant, je souhaiterais que les rectangles avoisinant se rétrécissent à leur tour où s'agrandissent afin de laisser de la place ou d'occuper celle qui se libère.

    Voilà, c'est mon soucis, seulement il y a une contrainte. En effet, chaque rectangle à une taille maximum et minimum à respecter...
    C'est à dire que lorsque l'un est réduit au maximum, il faut que je passe à un autre pour permettre de libérer assez de place pour l'agrandissement du rectangle courant. Et inversément, lorsqu'il s'agit de réduire le rectangle courant...

    J'espère que je vous ai donné assez de détails... En attendant, je réfléchie encore un peu...

  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 : 46
    Localisation : Etats-Unis

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

    Informations forums :
    Inscription : Janvier 2006
    Messages : 5 793
    Par défaut
    Bonjour,

    quel est ton espace de représentation de tes rectangles ?
    Si tu es dans un espace discret, cela est facile, sinon il nous faudra être un peu plus fin...
    Consignes aux jeunes padawans : une image vaut 1000 mots !
    - Dans ton message respecter tu dois : les règles de rédaction et du forum, prévisualiser, relire et corriger TOUTES les FAUTES (frappes, sms, d'aurteaugrafe, mettre les ACCENTS et les BALISES) => ECRIRE clairement et en Français tu DOIS.
    - Le côté obscur je sens dans le MP => Tous tes MPs je détruirai et la réponse tu n'auras si en privé tu veux que je t'enseigne.(Lis donc ceci)
    - ton poste tu dois marquer quand la bonne réponse tu as obtenu.

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    574
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Avril 2004
    Messages : 574
    Par défaut
    Oui, c'est dans un espace discret... Mes rectangles n'ont que des valeurs entieres pour taille.

    J'ai omis aussi d'indiquer une contrainte : Les rectangles doivent garder leur proportions (ratio).

    Je crois que je suis en bonne voie pour trouver la solution concernant l'agrandissement d'un rectangle (donc la réduction des autres). Ensuite, je ne suis pas sure que ce soit une méthode optimale... Donc je suis preneuse si vous avez des suggestions !

  4. #4
    Membre très actif
    Avatar de edfed
    Profil pro
    être humain
    Inscrit en
    Décembre 2007
    Messages
    476
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : être humain

    Informations forums :
    Inscription : Décembre 2007
    Messages : 476
    Billets dans le blog
    1
    Par défaut
    ça à l'air bien casse tete comme truc...
    peut etre qu'en faisant des tests de collisions entre les regtangles et le rectangle redimensionné, et en lançant une routine pour chaque collisions, on peu faire ça:

    incase collision de "cible" avec rect_redimensionné

    case à_gauche?
    appliquer l'equation de redimension par la droite de la "cible"
    case à_droite?
    appliquer l'equation de redimension par la gauche de la "cible"
    case en_bas?
    appliquer l'equation de redimension par le haut de la "cible"
    case en_haut?
    appliquer l'equation de redimension par le bas de la "cible"

    que doit il se passer si l'on deplace un de ces rectangles, si c'est possible de le faire?
    puis si le ratio doit etre conservé, on risque fort d'avoir des trous.

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    574
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Avril 2004
    Messages : 574
    Par défaut
    Bon finalement pour l'agrandissement d'un rectangle et donc la reduction des autres, je crois que j'ai une solution :
    Je vais simuler que je l'ai agrandi, voir quels sont ceux qui sont chevauché, essayer de les reduire, et ainsi de suite tant qu'ils chevauchent eux meme à nouveaux un rectangle voisin. Arrivé contre la limite de la fenetre, j'indique de combien , je ne pourrais pas diminuer plus, et finalement, mon rectangle de base ne pourra être dimuné que de la valeur initiale moins cette dernière valeur.

    Pour l'autre cas, je pense que lorsque je vais réduire la taille d'un rectangle, les autres ne vont finalement pas d'agrandir, mais se coller à celui qui diminue tant que cela est possible...

    Voilà, si jamais une idée plus ingénieuse vous trottre dans l'esprit, je suis preneuse. En tout cas, je vous remercie !

  6. #6
    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 : 46
    Localisation : Etats-Unis

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

    Informations forums :
    Inscription : Janvier 2006
    Messages : 5 793
    Par défaut
    Bonjour,

    un espace discret wonderfull.
    Une solution super simple c'est de représenter ton espace par un tableau 2D. Chaque case contiendra soit du vide, soit le numéro d'un rectangle.
    Cet espace va te permettre de gérer facilement les voisinages et donc de savoir quels sont les rectangles voisins à agrandir ou à réduire.
    Consignes aux jeunes padawans : une image vaut 1000 mots !
    - Dans ton message respecter tu dois : les règles de rédaction et du forum, prévisualiser, relire et corriger TOUTES les FAUTES (frappes, sms, d'aurteaugrafe, mettre les ACCENTS et les BALISES) => ECRIRE clairement et en Français tu DOIS.
    - Le côté obscur je sens dans le MP => Tous tes MPs je détruirai et la réponse tu n'auras si en privé tu veux que je t'enseigne.(Lis donc ceci)
    - ton poste tu dois marquer quand la bonne réponse tu as obtenu.

Discussions similaires

  1. Position des QLabel les uns par rapport aux autres
    Par dharkan dans le forum Débuter
    Réponses: 4
    Dernier message: 23/04/2011, 18h21
  2. Réponses: 3
    Dernier message: 24/07/2010, 21h02
  3. [MySQL 5] Mise à jour de 3 bases les unes par rapport aux autres
    Par Doc.Fusion dans le forum Administration
    Réponses: 1
    Dernier message: 17/07/2009, 20h15
  4. Placer des table les unes par rapport aux autres.
    Par IyF33 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 13
    Dernier message: 03/07/2008, 09h29
  5. Numeroter les tables par rapport aux contraintes
    Par nicassy dans le forum Outils
    Réponses: 10
    Dernier message: 02/02/2007, 11h39

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