Énoncé

Partie 1

Écrire une classe uneFigure permettant de représenter des figures du plan. Toute figure est caractérisée par au moins un point de référence, et peut être déplacée (indication d'un déplacement pour chaque coordonnée). Pour toute figure, il est possible d'en connaitre la taille ou de lui demander de se décrire (messages sur le terminal).

Écrire alors une classe uneFigurePlane, spécialisation de uneFigure, pour qui la taille correspond à sa surface.

Écrire une classe unCercle permettant de représenter des cercles. Un cercle est une figure plane qui se caractérise par son rayon.

Faire de même avec les rectangles (hauteur et largeur), les triangles (hauteur et base) et les carrés (coté).

Définir la classe qui permet de représenter des segments de droite (leur taille est leur longueur).

Définir la classe des rectangles évidés par des cercles (nous supposerons que le cercle intérieur est toujours inclus dans le rectangle qu'il évide).

Généraliser la classe afin que toute figure plane puisse être évidée par une autre figure plane.

Partie 2

Écrire une classe uneFigurePesante pemettant de représenter une figure pesante, i.e. à laquelle est attachée une densité. Connaissant la densité et la taille d'une figure, il est possible d'en déduire son poids.

Définir la classe représentant des cercles pesants.

Solution