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 :

g.draw avec Float


Sujet :

2D Java

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    67
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 67
    Par défaut g.draw avec Float
    Bonjour,

    Dans mon application, je dessine un petit rond à un endroit particulier de mon panel.
    La coordonnée X sont un nombre entier mais la coordonnée Y est donné par la division de 2 nombre entiers.
    Je dois absolument prendre en compte ce nombre à virgule donné par la division, sinon je ne pourrais pas faire ce que je veux.
    Le problème, c'est que g.drawOval prend du int, et les nombre à virgule, il n'aime pas.

    Comment résoudre ce probléme le plus simplement possible ?

    merci encore

  2. #2
    Rédacteur/Modérateur

    Avatar de bouye
    Homme Profil pro
    Information Technologies Specialist (Scientific Computing)
    Inscrit en
    Août 2005
    Messages
    6 900
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Nouvelle-Calédonie

    Informations professionnelles :
    Activité : Information Technologies Specialist (Scientific Computing)
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Août 2005
    Messages : 6 900
    Billets dans le blog
    54
    Par défaut
    Il te faut utiliser la methode draw(Shape) de la classe Graphics2D et l'une des implementation existantes d'Ellipse2D.
    Merci de penser au tag quand une réponse a été apportée à votre question. Aucune réponse ne sera donnée à des messages privés portant sur des questions d'ordre technique. Les forums sont là pour que vous y postiez publiquement vos problèmes.

    suivez mon blog sur Développez.

    Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the universe trying to produce bigger and better idiots. So far, the universe is winning. ~ Rich Cook

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    67
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 67
    Par défaut
    je suis débutant :s, peux tu détaillé un peu plus svp ?

  4. #4
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 5
    Par défaut Avec Shape en float
    Comme ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    Graphics2D graphics2D = (Graphics2D) g; 
    Shape shape = new Ellipse2D.Float(3.3f, 3.3f, 50f, 50f);  
    graphics2D.draw(shape); 
    graphics2D.fill(shape);

  5. #5
    Rédacteur/Modérateur

    Avatar de bouye
    Homme Profil pro
    Information Technologies Specialist (Scientific Computing)
    Inscrit en
    Août 2005
    Messages
    6 900
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Nouvelle-Calédonie

    Informations professionnelles :
    Activité : Information Technologies Specialist (Scientific Computing)
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Août 2005
    Messages : 6 900
    Billets dans le blog
    54
    Par défaut
    Intervertit l'ordre du draw() et du fill()plutot. Le modele de Stroke (trace du contour) utilise par Java2D est centre sur la bordure, donc dans ton cas on ne verra que la moitie exterieure du Stroke apparaitre (ca se verra surtout quand on utilise des Stroke assez epais cependant).
    Merci de penser au tag quand une réponse a été apportée à votre question. Aucune réponse ne sera donnée à des messages privés portant sur des questions d'ordre technique. Les forums sont là pour que vous y postiez publiquement vos problèmes.

    suivez mon blog sur Développez.

    Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the universe trying to produce bigger and better idiots. So far, the universe is winning. ~ Rich Cook

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    67
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 67
    Par défaut
    j'ai une erreur au niveau de la ligne :
    Shape shape = new Ellipse2D.Float(3.3f, 3.3f, 50f, 50f);

    On me propose de changer "Ellipse2D" en "Shape"

    Et si je change en "Shape", j'ai une nouvel erreur (croix rouge ronde) qui dit : Cannot Instanciate the type Shape

  7. #7
    Rédacteur/Modérateur

    Avatar de bouye
    Homme Profil pro
    Information Technologies Specialist (Scientific Computing)
    Inscrit en
    Août 2005
    Messages
    6 900
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Nouvelle-Calédonie

    Informations professionnelles :
    Activité : Information Technologies Specialist (Scientific Computing)
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Août 2005
    Messages : 6 900
    Billets dans le blog
    54
    Par défaut
    Citation Envoyé par Rekiem
    j'ai une erreur au niveau de la ligne :
    Shape shape = new Ellipse2D.Float(3.3f, 3.3f, 50f, 50f);

    On me propose de changer "Ellipse2D" en "Shape"
    Ca ne devrait pas faire ca.
    As-tu pense a importer le package java.awt.geom ?

    Citation Envoyé par Rekiem
    Et si je change en "Shape", j'ai une nouvel erreur (croix rouge ronde) qui dit : Cannot Instanciate the type Shape
    Normal c'est une interface.
    Merci de penser au tag quand une réponse a été apportée à votre question. Aucune réponse ne sera donnée à des messages privés portant sur des questions d'ordre technique. Les forums sont là pour que vous y postiez publiquement vos problèmes.

    suivez mon blog sur Développez.

    Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the universe trying to produce bigger and better idiots. So far, the universe is winning. ~ Rich Cook

  8. #8
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    67
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 67
    Par défaut
    merci c'est résolu

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

Discussions similaires

  1. Problème avec float sous Mysql
    Par adgabd dans le forum Bases de données
    Réponses: 1
    Dernier message: 22/09/2006, 10h52
  2. Problème avec float.
    Par Paulinho dans le forum Débuter
    Réponses: 1
    Dernier message: 29/11/2005, 10h27
  3. [CSS] Utilisation de deux div avec float
    Par Ditch dans le forum Mise en page CSS
    Réponses: 5
    Dernier message: 06/10/2005, 15h48
  4. pb positionnement avec float
    Par jerome38000 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 4
    Dernier message: 17/08/2005, 19h40

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