Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
class Cercle extends Forme {
class Cercle extends Forme {
private double rayon;
Cercle(Point pO, double r) {
private double rayon;
Cercle(Point pO, double r) {
rayon = r;
}
public void dessiner(Piletransformations pile) {
String className = this.getClass().getSimpleName();
Point pTrans = pile.getCurrentTransformation();
rayon = r;
}
public void dessiner(Piletransformations pile) {
String className = this.getClass().getSimpleName();
Point pTrans = pile.getCurrentTransformation();
- Point pOriTrans = pOri.additionner(pTrans);
- System.out.println(className + " " + pOri.toString() + "->" + pOriTrans.toString() + " " + rayon);
- }
-
- public void deplacer(Point p) {
- pOri = pOri.additionner(p);
+ Point pOriTrans = super.getpOri().additionner(pTrans);
+ System.out.println(className + " " + super.getpOri().toString() + "->" + pOriTrans.toString() + " " + rayon);
+public abstract class Forme {
+ private Point pOri;
- abstract public void dessiner(Piletransformations pile);
- abstract public void deplacer(Point p);
+ public abstract void dessiner(Piletransformations pile);
+ Forme() {
+ pOri = new Point();
+ }
+
+ Forme(Point p) {
+ pOri = p;
+ }
+
+ public Point getpOri() {
+ return pOri;
+ }
+
+ public void deplacer(Point p) {
+ pOri = pOri.additionner(p);
+ }
class Image extends Forme {
final int IMAGE_MAX_SIZE = 100;
class Image extends Forme {
final int IMAGE_MAX_SIZE = 100;
Forme[] formeCollection;
int formeNumber;
Image() {
Forme[] formeCollection;
int formeNumber;
Image() {
formeCollection = new Forme[IMAGE_MAX_SIZE];
formeNumber = 0;
}
Image(Point p) {
formeCollection = new Forme[IMAGE_MAX_SIZE];
formeNumber = 0;
}
Image(Point p) {
formeCollection = new Forme[IMAGE_MAX_SIZE];
formeNumber = 0;
}
formeCollection = new Forme[IMAGE_MAX_SIZE];
formeNumber = 0;
}
class Segment extends Forme {
class Segment extends Forme {
private Point pDest;
/* Segment() {
private Point pDest;
/* Segment() {
} */
Segment(Point pO, Point pD) {
} */
Segment(Point pO, Point pD) {
pDest = pD;
}
public void dessiner(Piletransformations pile) {
String className = this.getClass().getSimpleName();
Point pTrans = pile.getCurrentTransformation();
pDest = pD;
}
public void dessiner(Piletransformations pile) {
String className = this.getClass().getSimpleName();
Point pTrans = pile.getCurrentTransformation();
- Point pOriTrans = pOri.additionner(pTrans);
+ Point pOriTrans = super.getpOri().additionner(pTrans);
Point pDestTrans = pDest.additionner(pTrans);
Point pDestTrans = pDest.additionner(pTrans);
- System.out.println(className + " " + pOri.toString()+ "->" + pOriTrans.toString() + " " +
+ System.out.println(className + " " + super.getpOri().toString()+ "->" + pOriTrans.toString() + " " +
pDest.toString() + "->" + pDestTrans.toString());
}
public void deplacer(Point p) {
pDest.toString() + "->" + pDestTrans.toString());
}
public void deplacer(Point p) {
- pOri = pOri.additionner(p);
pDest = pDest.additionner(p);
}
pDest = pDest.additionner(p);
}