Documente Academic
Documente Profesional
Documente Cultură
Sommaire
Introduction ..............................................................................................................................................................2
1.
2.
3.
4.
Gnralits .......................................................................................................................................................2
1.1
Dfinitions ................................................................................................................................................2
1.2
2.2
Formalisme ...............................................................................................................................................3
3.2
Tests..........................................................................................................................................................4
3.2.1
3.2.2
4.2
Tests..........................................................................................................................................................5
Class Cartography
Introduction
La classe Carthography a pour but de grer les mesures qui reprsentent la description de la matire dans
un point de la surface dune plante. Pour ceci, des outils de gestion ont t implments afin de garantir
lajout dune (ou plusieurs) mesure, sa recherche et son affichage.
1. Gnralits
1.1
Dfinitions
Coordonnes : Elles reprsentent le reprage dun point la surface, permettant de lidentifier. La hauteur
tant nglige, on ne considrera que les coordonnes X et Y, respectivement pour la longitude et la latitude
du point.
DMP : On appelle DMP la description de la matire dans un point de la surface de la plante. Chaque point
est caractris par ses coordonnes et sa DMP.
Cartographie : Une cartographie est lensemble des mesures sur la plante. Sa consultation permet
lanalyse la plante.
1.2
Choix gnraux
Ajout dune mesure : Lajout dune nouvelle mesure est possible si et seulement si le point nest pas dj
prsent dans la cartographie. Un code dchec est renvoy dans le cas o la contrainte nest pas respecte.
Tableau de taille dynamique : La taille du tableau augmente automatiquement lorsque on a besoin de
stocker en mmoire des nouvelles donnes.
Indexation des objets : Lors de la rcupration dune donne de la cartographie, lindice de celle-ci
correspond la position laquelle la donne a t retrouve dans le tableau des mesures (Ex. Lindice 0
indique la premire position du tableau).
Affichage : Lors de lappel de la mthode Display(), laffichage choisi pour la cartographie est le suivant :
Voici les donnes relatives la cartographie de la plante Aldebaran :
Coordonnes (X, Y) : (0, 0), Matire prsente : SiO2
Coordonnes (X, Y) : (1, 1), Matire prsente : H20
Coordonnes (X, Y) : (2, 2), Matire prsente : U
Coordonnes (X, Y) : (2, 5), Matire prsente : Au
Coordonnes (X, Y) : (-1, -2), Matire prsente : Ag
Class Cartography
Mthode Add
La mthode Add permet dajouter des mesures la carte, i.e. dans le tableau. On rappelle que une mesure
est caractrise par un couple de coordonnes X-Y et dune DMP qui sont passs en paramtres. La mthode
renvoie true si lajout a t fait i.e. si dans la cartographie il ny a pas de point ayant les mmes coordonnes
que celui quon souhaite ajouter.
Exemple dutilisation pour une cartographie C :
C.Add(2, 2 ,U);
C.Add(2, 2, H2O);
2.2
Mthode FindDMP
La mthode FindDMP permet de rcuprer lindice dune mesure et les coordonnes du point
correspondant. Elle prend en paramtre la description de la matire et lindice du tableau partir duquel on
veut commencer la recherche. Les coordonnes du point trouv sont stockes dans deux variables de la classe
qui appelle la mthode. Deux cas derreur ont tait prvus: si la mesure recherche nest pas trouve, elle
renvoie la valeur -1 ; si lindice indiqu nest pas un indice du tableau (plus petit que 0 ou suprieur au nombre
dlments prsents), elle renvoie la valeur -2.
Exemple dutilisation pour une cartographie C :
float fX, fY ;
C.FindDMP(U, 0, fX, fY);
Formalisme
Class Cartography
3.2
Tests
a serait trs utile de tester lefficacit de la mthode Count laide dune boucle, pour ajouter et ensuite
compter un trs grand nombre dlments (de lordre du 105). Si on excute la boucle n fois, on vrifiera que le
rsultat du Count est bien n ( attention ne pas crer des conflits entre les lments quon veut ajouter ).
Exemple (en pseudocode) :
Cartography Cartographie
Pour i allant de 0 9999 faire
insrer ( i, i, Au) dans Cartographie
Count() = 10000
Class Cartography
4.2
Tests
Afin de vrifier la fonctionnalit de la classe Cartography, il faut prvoir un script qui teste en mme temps
toutes les mthodes de la classe.
Exemple (en pseudocode) :
Cartography C
//appel du constructeur sans paramtres
inserer (1, 2, Au) dans C
//appel de la mthode Add ()
inserer (2, 10, SiO2) dans C
inserer (3, 50, H2O) dans C
inserer (4, 50, H2O) dans C
inserer (3, 50, H2O) dans C // conflit
Display() C :
Voici les donnes relatives la cartographie de la plante Aldebaran :
Coordonnes (X, Y) : (1, 2), Matire prsente : Au
Coordonnes (X, Y) : (2, 10), Matire prsente : SiO2
Coordonnes (X, Y) : (3, 50), Matire prsente : H2O
Coordonnes (X, Y) : (4, 50), Matire prsente : H2O
Count() = 4
Count(H2O) = 2
Count(U) = 0
GetData(2,10) = SiO2
GetData(10,100) =
FindDMP(H2O, 2, X, Y) = 2 X=3 Y=50
FindDMP(H2O, 3, X, Y) = 2 X=4 Y=50
FindDMP(H2O, 6, X, Y) = -2
FindDMP(SiO2, 2, X, Y) = -1
Comme spcifi pour la mthode Count, pour avoir rellement une ide sur le bon fonctionnement de
la classe, il faudrait implmenter des boucles2 permettant lajout dun grand nombre dlments et refaire les
tests. Cela permet aussi de connaitre les points forts et faibles de lapplication (ex. vitesse dexcution, gestion
de la mmoire, etc.), pour en prvoir des amliorations.
Class Cartography