Boîte à outils d'annotation de cartes géographiques de type GoogleMaps dans un contexte d'applications Web Bergeret Michael Saint-germain Emeric
Plan Introduction Présentation des architectures Spécification des services Classes réalisées Améliorations à prévoir Conclusion Démonstration 2/14
I.Introduction Développer un ensemble de classes permettant à tout autre programmeur de les utiliser dans une application Web Définir une architecture logicielle adéquate Décrire chaque classe implémentée dans une documentation HTML 3/14
II.Présentation des architectures Outils utilisés Google Maps service de cartes et de plans géographiques JavaScript langage exécuté côté client 4/14
II.Présentation des architectures Structuration des services sous forme de classe (function) JavaScript Une classe Map Une classe Point Une classe pour chaque type d'annotation Marker Polyline Polygone 5/14
II.Présentation des architectures « Annotation » : nœud racine pour avoir le même modèle que le groupe AnnotText Un nœud Map Plusieurs nœuds correspondants aux annotations <annotation> <map> <marker> </point x=« 43.3145 » y=« -0.364 »> <name_> mon marker </name_> <comment> comment </comment> <icone> test.jpg </icone> <draggable> true </draggable> <hidden> false </hidden> </marker> <polyline> ... </polyline> </map> </annotation> 6/14
III.Spécification des services Ajouter ou supprimer tout type d'annotation sur une carte Modifier chaque annotation : changement d'icône, de nom, de couleur, d'épaisseur, de note... Afficher ou cacher tout ou partie d'un type d'annotation Sauvegarder et charger des annotations 7/14
IV.Classes réalisées Map Point function Map(){ function hideZoom(); function showZoom(); function addMarker(m); function removeMarker(m); function hideAllMarker(); function showAllMarker(); ... function addPolyline(p); } Point function Point(xpos,ypos){ function getX(); function getY(); function getPoint(); ... function equals(other); } 8/14
IV.Classes réalisées Marker function Marker(point){ function getMarker(); function setMarker(); function getPoint(); function setPoint(); function setIcone(); ... function showComment(); function show(); } 9/14
IV.Classes réalisées Polyline function Polyline( Points, color, weight, opacity){ function getPolyline(); function setPolyline(pl); function getTabPoints(); function getOpacity(); function setOpacity(op); ... function addPoint(p); function removePoint(p) } 10/14
IV.Classes réalisées Polygone function Polygone( Points, bColor, bWeight, bOpacity, iColor, iOpacity){ function getPolygone(); function setPolygone(pg); function getTabPoints(); function getBOpacity(); function setBOpacity(op); ... function addPoint(p); function removePoint(p); } 11/14
V.Améliorations à prévoir Implémenter les services de sauvegarde et de chargement d'annotations sur une carte Mettre en place une notification directe lors de l'ajout d'un élément sur la carte Ajouter des méthodes de transformation d'un type d'annotation en un autre 12/14
VI.Conclusion Boîte à outils d'annotation de carte fonctionnelle et facile à utiliser Certaines fonctionnalités sont encore à implémenter Plutôt difficile de concevoir un outil qui sera indirectement utilisé par un internaute 13/14
VII.Démonstration 14/14