
Carte de France interactive
Cet exemple de mise en œuvre du langage SVG, norme graphique ouverte pour le Web, concerne ici la cartographie thématique.
Les graphismes vectoriels interactifs s’appliquent également à de nombreux autres domaines d’interfaces utilisateurs.
La méthode utilisée a été la suivante :
-
Téléchargement du fond de carte, sous forme de polygones SVG, depuis http://commons.wikimedia.org/wiki/File:Blank_Map_of_France,_with_Communes.svg
-
Téléchargement des chiffres de l’Insee relatifs au recensement 2011
-
Intégration de ces données dans une table Oracle, comportant une ligne par commune.
Des rubriques particulières sont créées :
- Une qui contient la définition de chaque polygone sous la forme x1,y1 x2,y2 ….. xn,yn,
exemple, pour la commune de Belley (Ain) :
5.6596593,45.728581 5.6563935,45.760211 5.6589394,45.774062 5.6625205,45.776501 5.6908306,45.770855 …….
- Quatre autres, qui ont été calculées par une procédure PL/SQL , et qui comportent les coordonnées du rectangle
dans lequel chacun des polygones de chaque commune est inscrit.
toujours pour Belley, on a par exemple: 45.708633 5.6563935 5.7303237 45.776724
-
Génération dynamique de la carte SVG, par une procédure PL/SQL avec :
- Prise en compte des seules communes du département sélectionné
- Ajustement en regroupant les coordonnées des différents rectangles dans lesquels les polygones des différentes communes s’inscrivent
- Prise en compte de l’échelle choisie par l’utilisateur
- Recalcul dynamique des polygones avant génération des ordres SVG
- Calcul de couleurs de remplissage en fonction de seuils de population
- Affichage au passage du curseur du nom de la commune
- Correction du ratio Horizontal/Vertical
- Miroir selon un axe horizontal et translation verticale des éléments de la carte
-
Création d’une interactivité par un court script JavaScript, déclenchant une
action dynamique Oracle APEX, qui elle, appelle une
procédure stockée PL/SQL d’actualisation de l'affichage.
- Il est possible de cliquer sur une commune, pour afficher, par une action dynamique, une région d’informations sur cette commune
- La commune cliquée est mise en évidence par un contour plus épais
Vous pouvez acquérir cette application prototype, ce qui peut être un exemple et une aide au développement d'applications similaires.
La distribution de ce prototype comporte:
- Détail du script d'installation pour Apex 4.2 (Oracle 10.2, 11.2 et 12) (y compris Oracle XE 11.2)
compatible avec l'espace gratuit de tests Oracle OTN/Apex
- Source de l'application Oracle APEX
- Source du package PL/SQL associé
- Source des utilitaires PL/SQL d'ajustement et de mise à l'échelle des polygones SVG
- Sélection de données au format Oracle-XML des communes d'un ou plusieurs départements
- Description et source JavaScript/Ajax des actions dynamiques Apex utilisées
- Dossier technique de description détaillée, avec copies d'écran
Contact et conditions commerciales:
Jean-Pierre LOISON
Formulaire de contact