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 :

fillOval, drawOval... en double précision, c'est possible ?


Sujet :

2D Java

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 13
    Points : 10
    Points
    10
    Par défaut fillOval, drawOval... en double précision, c'est possible ?
    Bonsoir à tous,

    j'ai besoin de tracer des points sur un canvas et j'utilise la méthode fillOval.
    Le problème est que fillOval n'accepte des arguments que en integer, et pour la définition des coordonnées de mes points, j'utilise notamment la fonction arctan. Vous l'aurez compris, un résultat de arctan, s'il est converti en integer n'apporte aucun interet ! il est donc impératif que ce résultat reste en double.. pourtant fillOval ne veut pas de mon double... que faire ?!

    Merci à tous, bonne soirée mes chers programmeurs !

  2. #2
    Rédacteur
    Avatar de lunatix
    Homme Profil pro
    Architecte technique
    Inscrit en
    Novembre 2002
    Messages
    1 960
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Architecte technique

    Informations forums :
    Inscription : Novembre 2002
    Messages : 1 960
    Points : 3 736
    Points
    3 736
    Par défaut
    je suis pas super fort sur ca mais : je pense que tu utilises une vieille methode pour faire une elipse

    tu devrais utiliser java2D a la place : tu as un exemple ici

    en gros : tu cres ton objet
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    private Ellipse2D.Double circle =
        new Ellipse2D.Double(10, 10, 350, 350);
    et tu le traces en faisant un cast de graphic vers graphic2
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    public void paintComponent(Graphics g) {
        clear(g); 
        Graphics2D g2d = (Graphics2D)g; //le cast
        g2d.fill(circle);  // on trace
      }
    jette quand meme un oeil sur le tutoriel que je t'ai donné

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 13
    Points : 10
    Points
    10
    Par défaut
    nikel, ça marche !
    d'apres le code.. ça voudrait-il dire qu'en Java2D, on "trace des objets" ?

    merci à toi !

  4. #4
    Gfx
    Gfx est déconnecté
    Expert éminent
    Avatar de Gfx
    Inscrit en
    Mai 2005
    Messages
    1 770
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations forums :
    Inscription : Mai 2005
    Messages : 1 770
    Points : 8 178
    Points
    8 178
    Par défaut
    C'est exactement ca. Et grace a ces objets tu peux creer des formes assez complexes avec la classe Area. Cela permet de les ajouter, soustraire, etc.
    Romain Guy
    Android - Mon livre - Mon blog

Discussions similaires

  1. Réponses: 7
    Dernier message: 06/04/2009, 16h43
  2. double connexion à la base..c'est possible?!
    Par med_anis_dk dans le forum JDBC
    Réponses: 1
    Dernier message: 05/05/2007, 09h48
  3. [Conception] double order by ? est-ce possible ?
    Par harlock59 dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 22/06/2006, 16h34
  4. Réponses: 1
    Dernier message: 18/06/2004, 01h12
  5. Réponses: 2
    Dernier message: 16/07/2003, 14h40

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