r--
::
lr
EislsA
L-gE
- -
4.U.2019/2020
3è" Année
Eoole Supérieure d'Ingénierie
- -
en Sciences Appliquées
N, Chenfour
,"
,*d
Epreuve Java
Partie No 2 :
L. Réaliser une classe métier : « SIG » fournissant les services suivants :
- Initialisation de la carte et ajout d'une couche à celle-ci.
- Recherche d'un employé par nom
- Recherche des entités ponctuelles à proximité d'un point donné
par ses coordonnées (x, y).
2. Réaliser une boite de dialogue permettant l'ajout d'une couche avec des
entités dedans.
A.U.20t912020
3è" Année
Ecole Supérieure d' Ingénierie
en Sciences Appliquées
N. Chenfour
Examen du 7"' Semestre
Epreuve Juva
Partie No 1:
On voudrait réaliser une application de gestion d'un système d'information
géographique (SlG) ou cartographique. Pour cela, on propose une classe
« Carte » définie par son id, nom de la région, type (pays, ville, zone ou
quartier) à définir sous forme d'un type énuméré, ses coordonnées (xL, y1) et
(x2, y2) en plus d'une liste de couches (exemples : couche des routes, couche
des écoles et universités, couche des banques, etc.). Une couche est
caractérisée par son nom, son type et une liste d'entités géographiques. ll
existe en fait 3 types de couches : Couche ponctuelle, Couche Linéaire et
couche polygonale. Les entités géographiques qui composent une couche sont
caractérisées par leur id et leur nom. On notera aussi qu'll existe 3 types
d'entités :
1,. Entité ponctuelle (Point) : une entité caractérisée en plus par sa position
(x, y) sur la carte.
2. Entité linéaire (Ligne) : c'est une entité caractéri§ée en plus par un
tablëau de points (x0, y0), (x1, y1), ...
3. Entité polygonale (Polygone) : c'est une entité caractérisée par (x0, y0),
(x1, y1), ... (xn, yn) avec (xn =- x0 et yn == y0).
La classe « Couc[e » offre une méthode addfl permettant d'ajouter une entité
à la couche. La méthode add$ doit gérer l'ajout en fonction du type de la
couche. Ainsi par exemple, on ne peut ajouter que des points à une couche
ponctuelle. lmaginer et implémenter 2 autres surcharges de la méthode add0.
On demande alors d'implémenter l'ensemble des modèles de données décrits
plus haut