classe Point (ISN)
Bonjour,
la classe Point pour le TP récursivité est disponible en pièce jointe et ci-dessous :
// Cette classe permet de définir des points
// (plus faciles à manimuler que des couples de coordonnées)
class Point {
float x;
float y;
// Constructeur avec des float
Point(float a, float b) {
this.x = a;
this.y = b;
}
// Constructeur avec des int
Point(int a, int b) {
this.x = (float)a;
this.y = (float)b;
}
// Méthode qui permet "d'additionner" deux points en additionnant leurs
// coordonnées respectives (utile pour trouver un barycentre)
Point add(Point P) {
Point Q = new Point(P.x+this.x, P.y + this.y);
return Q;
}
// Méthode qui multiplie les coordonnées par un nombre
// (utile pour trouver un barycentre)
Point mult(float k) {
Point Q = new Point(k*this.x, k*this.y);
return Q;
}
// Méthode qui renvoie l'image de (this.x, this.y) par rotation centre O, angle a
Point rotate(Point O, float a) {
float qx = O.x + (this.x-O.x)*cos(a) - (this.y-O.y)*sin(a);
float qy = O.y + (this.x-O.x)*sin(a) + (this.y-O.y)*cos(a);
Point Q = new Point(qx, qy);
return Q;
}
}