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

2D Java Discussion :

Dessiner à l'envers ?


Sujet :

2D Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2006
    Messages
    170
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 170
    Par défaut Dessiner à l'envers ?
    Bonjour, je suis en train de faire un mini Paint en java et j'arrive a dessiner des figures en temps réels mais seulement en déplaçant la souris vers le bas et la droite....

    Je voudrais maintenant desiner une fiigure dans l'autre sens (cad vers le haut et la gauche...) j'aimerais savoir si c'est possible et coment faire ?

    J'ai essayé de mettre des "-" à mes largeur et longueur de figure mais ca me desine la figure vers le bas et la droite seulement si je déplace la souris vers le haut et la gauche...

    Bref merci pour votre aide

  2. #2
    Membre émérite Avatar de remika
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    806
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 806
    Par défaut
    Un peu de code serait le bienvenu

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2006
    Messages
    170
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 170
    Par défaut
    Citation Envoyé par remika
    Un peu de code serait le bienvenu
    oui oui tout de suite désolé

    je met ca dans mon mousedragged après avoir instancier ma Collection dans le mousePressed() :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    monDessin.getCollection().get(0).setDimension( (e.getX()-posXdeb) , (e.getY()-posYdeb) );
    Là je modifier juste la largeur et et la longueur grace a une fonction que j'ai crée
    posXdeb et posYdeb correspond à l'endroit ou je clique.
    Ca me permet de dessiner en temps réel

  4. #4
    Rédacteur
    Avatar de eclesia
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    2 111
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 2 111
    Par défaut
    tu peux dessiner uniquement avec des valeurs positives, tu l'as remarqué.

    ce que tu dois faire c'est une condition :

    le point de depart de ta figure doit etre le point le plus en haut a gauche.

    si ta souris (au moment mousedragged) se trouve au dessus du point de depart(au moment mousePressed) tu dois dessinner a partir du point ou est la souris et mettre en taille la valeur absolue entre les deux.


    J'ai deja fait ce genre de travail :
    voila un logiciel complet qui traite ce genre de cas "ClubTypon", le source est avec le logiciel, tu peux y puisser de l'inspiration (si tu arrives a te depatouiller du code).
    http://jsorel.developpez.com/
    La page web date d'aujourd'hui , je fournis les sources pour 4 logiciels. (dont 2 de "dessin") j'espere que ca t'aidera.

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2006
    Messages
    170
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 170
    Par défaut
    Pas mal du tout tes petits progs, t plutot douée!!

    Sinon, je pense avoir saisie, en faite, il faut bouger la position de départ au point de la souris, et faire en sorte que le coin qui bouge pas correspond aux valeurs de la longueur et de la largeur,

    J'ai encore du mal à stabiliser mon dessin (car il remonte tout seul) maus y'a déjà des bribes de dessins à l'envers...

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2006
    Messages
    170
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 170
    Par défaut
    Bon c bon pour les rectangles et les éllipses, maintenant je galère comme pas possible pour les carrés vers le heut et gauche seulement !!!

    je fais ca pour la position :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    if (e.getX()<posXdeb&&e.getY()<posYdeb) 
    getDes().setPosition(e.getX(),e.getY());
         else if (e.getX()<posXdeb&&e.getY()>posYdeb) 
         getDes().setPosition(e.getX(),posYdeb);
    	    else if(e.getX()>posXdeb&&e.getY()<posYdeb) 
                getDes().setPosition(posXdeb,e.getY());
    		          else getDes().setPosition(posXdeb, posYdeb);

    et pour les longueur et largeur si je fais ca :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    getDes().setDimension( Math.abs(e.getX()-posXdeb) ,  Math.abs(e.getX()-posXdeb) );
    le carré se déplace sur l'axe des ordonnée


    et si je fais ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    getDes().setDimension( Math.abs(e.getY()-posYdeb) ,  Math.abs(e.getY()-posYdeb) );
    le carré se déplace sur l'axe des abscisses


    C'est la partie en rouge qui coince (enfin à mon avis)

    Bref qu'est ce que je dois rajouter à mon code pour créer le carré vers le haut et la gauche ! (le reste marche).

Discussions similaires

  1. [Graphic] Dessiner des hachures
    Par sylverspoon dans le forum 2D
    Réponses: 7
    Dernier message: 22/03/2006, 21h46
  2. [ALGO] dessiner un triangle dans le bon sens
    Par lefait dans le forum Algorithmes et structures de données
    Réponses: 13
    Dernier message: 05/02/2005, 14h38
  3. moteur de particules :Dessiner un point
    Par houssa dans le forum OpenGL
    Réponses: 2
    Dernier message: 25/06/2003, 22h13
  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: 3
    Dernier message: 12/06/2002, 19h03

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