Si la cartographie web 2D est désormais largement démocratisée (tous les îlots d’Atol vont bientôt être contaminés par le gang des PostGIS, Openlayers et autres « Geo outils »), les exemples de cartographie web 3D restent aujourd’hui limités (plug-in « trop » propriétaires, offre actuelle restreinte, etc.). L’arrivée de l’API « Earth » de Google va peut-être permettre de voir fleurir sur le web ce type d’applications. En effet, avec ce composant facilement exploitable, il est inutile d’installer toute l’artillerie lourde des éditeurs SIG pour exploiter la 3ème dimension des objets géographiques.

La maquette présentée dans la vidéo ci-jointe exploite en parallèle l’API Google maps (2D) à travers la couche OpenLayers et le plugin 3D de Google (Fonds Google earth)
Le principe est le suivant :

  • La saisie des objets s’effectue sur l’interface 2D avec un attribut sur la hauteur
  • Les données 2D sont converties en 3D (chaine WKT + attribut hauteur) et sauvegardés en base PostGIS sous forme de POLYGON((x y z, x y z, …))
  • L’affichage 2D s’effectue via OpenLayers et GeoExt à partir des données converties en GeoJson
  • La restitution 3D est réalisée via la fonction AsKml de PostGIS + quelques fonctions XML de PostgreSQL. 2 attributs sont ajoutés dans le KML et permettent de préciser :
  1. que les hauteurs sont à prendre en compte par rapport à l’altitude présente aux coordonnées géographiques de l’objet et non par rapport au niveau de la mer
  2. que l’objet doit être extrudé.

Remarque : le même Kml peut normalement être exploité par les 2 modes (2D/3D)

Même s’il est possible de « styliser » les objets Kml, il faut reconnaitre qu’il est difficile, à partir des outils retenus dans cet exemple, de proposer un rendu complexe et texturé. Cette limite vient principalement du fait que PostGIS ne permet pas le stockage et l’exploitation des géométries de type « polyhedral surfaces ». Ces dernières permettent de modéliser les faces. La version 2.0 devrait autoriser ce type d’objet et ainsi permettre son exploitation et la liaison avec les outils de CAO/DAO.

En attendant, il reste tout à fait possible d’ajouter sur l’interface 3D des objets externes de type kmz permettant de proposer des objets « complexes » et « stylisés ». A titre d’exemple et en fin de vidéo, un bâtiment rapidement dessiné sous « Google SketchUp » est visible.

Plus d’infos sur :
http://code.google.com/intl/fr/apis/earth/documentation/