Attention !
Lors du premier lancement d’Eclipse, il faut param´
etrer l’espace de travail (workspace) dans lequel
le programme entrepose par d´
efaut ses projets (voir figure 1). Autant sous Linux, le choix du works-
pace ne posera pas de probl`
eme, sous Windows, il vous faudra faire attention `
a l’endroit o`
u vous le
mettez. Vous pouvez le placer soit sur votre compte (lecteur H :) ou dans le bureau.
Travail `
a r´
ealiser :
— Lancer Eclipse en prenant bien soin de bien configurer le workspace ;
— Configurer un nouveau projet ;
— Y ajouter les classes Point2D et TestPoint2D que vous avez ´
ecrites en TD ;
— Ex´
ecuter le programme en appuyant sur le bouton Run ( ).
3 Compl´
eter le projet avec une classe Rectangle
Nous allons compl´
eter notre projet avec une nouvelle classe Rectangle qu’il faudra ´
ecrire. Cette
classe comportera deux attributs de type Point2D : un coin1 et un coin2. Elle comportera trois
constructeurs :
— Un constructeur par d´
efaut donnant un rectangle nul (rectangle dont les coins sont aux coor-
donn´
ees (0,0) ;
— Un constructeur prenant en param`
etre deux points 2D indiquant les coins du rectangle ;
— Un constructeur prenant en param`
etre 4 valeurs qui sont les coordonn´
ees du premier et du
deuxi`
eme coin.
La d´
efinition de la classe Rectangle sera `
a compl´
eter avec les m´
ethodes suivantes :
— Une m´
ethode getHeight() calculant la hauteur du rectangle ;
— Une m´
ethode getWidth() calculant la largeur du rectangle ;
— Une m´
ethode getArea() calculant l’aire du rectangle ;
— Une m´
ethode getPerimeter() calculant le p´
erim`
etre d’un rectangle ;
— Une m´
ethode isInRectangle() prenant en param`
etre un point et retournant si le point est dans
le rectangle ou non ;
— Une m´
ethode isNull() renvoyant si le rectangle est nul ou non.
Travail `
a r´
ealiser :
— Ajouter la classe Rectangle `
a votre projet et ´
ecrivez l`
a de mani`
ere `
a correspondre au cahier des
charges donn´
e plus haut ;
— Modifier votre classe de test, de mani`
ere `
a ce qu’elle puisse v´
erifier toutes les fonctionnalit´
es
que vous avez impl´
ement´
ees.
4 Compl´
eter la classe Rectangle
Travail `
a r´
ealiser :
Compl´
eter la classe Rectangle avec deux m´
ethodes :
— Une m´
ethode getIntersection() qui calcule l’intersection entre le rectangle courant et un rec-
tangle pass´
e en param`
etre. Le r´
esultat sera lui-mˆ
eme un rectangle ;
— Une m´
ethode getUnion() calculant le rectangle englobant le rectangle courant et un rectangle
pass´
e en param`
etre. Le r´
esultat sera lui-mˆ
eme un rectangle ;
— Modifier la classe de test de mani`
ere `
a v´
erifier ces fonctionnalit´
es.
2