Java et géométrie

cs_svince Messages postés 48 Date d'inscription vendredi 2 juillet 2004 Statut Membre Dernière intervention 16 février 2013 - 15 mai 2008 à 10:28
cs_jojolemariole Messages postés 519 Date d'inscription mercredi 21 mars 2007 Statut Membre Dernière intervention 19 décembre 2016 - 15 mai 2008 à 12:21
Bonjour,
Je ne suis pas sûr d'être dans le bon thème, mais voilà, je me lance. Je cherche à coder en java une sorte de puissance 4, mais je ne suis pas très au point sur le graphisme avec java. Où pourrais-je trouver un bon tuto ou une personne charitable (vous?) qui pourrait m'expliquer comment très simplement lancer une fenêtre avec dessin de simples cercles, remplis ou non d'une couleur ? Ca paraît simple, mais je ne trouve pas...
Bonne journée

Vincent

2 réponses

cs_cbil Messages postés 140 Date d'inscription mercredi 30 avril 2003 Statut Membre Dernière intervention 15 mai 2008 1
15 mai 2008 à 11:22
débutant en c/c++, flash et asm- ["mailto:cedbillard@voila.fr" Me contacter]
0
cs_jojolemariole Messages postés 519 Date d'inscription mercredi 21 mars 2007 Statut Membre Dernière intervention 19 décembre 2016 25
15 mai 2008 à 12:21
C'est un peu vague comme question.

Je te montre un exemple simple de dessin avec Java en 2 classes. Tu pourras peut-être t'en inspirer.
<hr size="2" width="100%" />
import java.awt.Color;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.RenderingHints;

import javax.swing.JPanel;

/**
 * Ca c'est une JPanel personnalise (extends JPanel)
 */
public class PanelP4 extends JPanel {

    private static final long serialVersionUID = 1L;

    /**
     * On surcharge la methode paint afin de dessiner des trucs
     */
    public void paint(Graphics graphics){
       
        /*
         * C'est pas tres elegant mais, on convertit le graphics en
         * graphics2D qui permet de faire plus de chose
         */
        Graphics2D g = (Graphics2D) graphics;
       
       
        /*
         * On active l'antialiasing (effet d'escalier)
         * pour que les cercles soient plus jolis
         */
        g.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);
       
        /*
         * On met la couleur du Graphics2D à Bleu, c'est comme si on était en train
         * de dessiner et qu'on prenait un crayon bleu (par défaut c'est noir)
         */
        g.setColor(Color.blue);
       
        /*
         * On dessine un rectangle bleu qui fait toute la taille du panel
         */
        g.fillRect(0, 0, getWidth(), getHeight());
       
        /*
         * On dessine un petit disque jaune
         */
        g.setColor(Color.yellow);
        g.fillOval(10, 10, 50, 50);
       
    }

}

Classe de test
<hr size="2" width="100%" />
import javax.swing.JFrame;

public class TestPanelP4 {

    public static void main(String[] args) {

        // on instancie un panelp4 (celui qui affiche un rond
        // jaune sur fond bleu
        PanelP4 panel = new PanelP4();

        // on instancie une fenetre qui va contenir le panel
        // sans quoi il ne sera jamais visible a l'ecran
        JFrame fenetre = new JFrame("Test Panel P4");

        // on definit la taille de la fenetre
        fenetre.setSize(200, 100);

        // on ajoute le panel dans la fenetre
        fenetre.add(panel);

        // on centre la fenetre a l'ecran
        fenetre.setLocationRelativeTo(null);

        // cette instruction permet de faire en sorte que l'application soit
        // fermee quand on ferme la fenetre
        fenetre.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

        // on rend la fenetre visible
        fenetre.setVisible(true);
    }

}
0
Rejoignez-nous