Ajouter un commentaire

andrada

Alors, je n'ai pas le code en ma possession (étant en déplacement) mais je vais te donner juste la structure de mes classes et les méthodes de dessin.

Voici mes classes:

 public class Point implements Serializable{

int x,y;

public Point(int x, int y){
this.x=x;
this.y=y;
}

public dessinePoint(Graphics g){
Graphics2D g2 = (Graphics2D ) g ;
g2.drawRect(x,y,1,1);}


public class Ligne extends Point {

Point[] tabPoint;

public Ligne(Point[] p){
this.tabpoint=p;
}

public dessineLigne(Graphics g){
for(int i=0; i<this.tabPoint.length; i++)
g.drawLine(this.tabPoint[i].x,this.tabPoint[i].y,this.tabPoint[i+1].x,this.tabPoint[i+1].y);
}

Pour le polygone, c'est à peu près la même classe sauf qu'il y a des méthodes pour ajouter un point à un polygone, avoir le nombre de points du polygone et la méthode de dessin est différente.


public class Cercle extends Point {
Point p
 int r ;


public Cercle (Point c, int rayon )
{
this.p=c;
this.r=rayon;
}


public void dessineCercle( Graphics g ) {
Graphics2D g2 = (Graphics2D ) g ;
g2.setColor(Color.green);
g2.drawOval( p.x -r , p.y -r , 2 * r , 2 * r ) ;

}

} 

Au moment du dessin sur le panel, chaque dessin est stocké dans une liste de Shape. Et j'ai également pour chaque type d'objet un tableau où je stocke les coordonnées des objets dessinés.

Pour le dessin, sur le panel, j'ai des boutons correspondants à chaque type d'objet et au clic sur un objet, je le dessine en récupérant les coordonnées de la souris.

Je ne sais pas si ça pourra te permettre de partir de ça car c'est vrai il n'y a pas tout le code.

Dans tous les cas, merci pour l'aide.

andrada

Filtered HTML

Plain text

CAPTCHA
Cette question permet de vérifier que vous n'êtes pas un robot spammeur :-)
 EEEE  V     V   SSS   RRRR   PPPP  
E V V S R R P P
EEE V V SSS RRRR PPPP
E V V S R R P
EEEE V SSSS R RR P