Produire une application de cartographie Web à partir de la librairie JavaScript OpenLayers 3 est un charme. Ses fonctionnnalités sont nombreuses, riches et extrêmement versatiles. Elle dépasse de loin en qualité et performance son propre prédécesseur: OpenLayers 2.

Malgré tous ces avantages, elle ne répond pas à un besoin fort en demande que même son prédécesseur supportait: le support de couches Google Maps API. Jusqu’à maintenant, les solutions proposées pour permettre l’inclusion de couches Google Maps dans une carte OpenLayers 3 n’étaient pas officiellement supportées, ni même recommandées.

Dites bonjour à OL3-Google-Maps!

OL3-Google-Maps est une librairie JavaScript à licence libre introduite par Mapgears qui permet l’intégration de cartes Google Maps à l’intérieur d’une carte OpenLayers 3. Ses objectifs sont:

  • rendre transparent et facile l’inclusion de couches Google Maps dans une application OpenLayers 3
  • assurer la synchronisation des animations lors de navigations de la carte
  • ne pas exiger de connaissances de l’API de Google Maps

La librairie est encore toute jeune. Une version 0.2 a été publiée le 22 octobre 2015. Parmi ses fonctionnalités, on retrouve:

  • le support de couches vectorielles et de leur entités
  • le support de styles d’entités vectorielles transformées en entités natives Google Maps
  • la synchronisation de la vue actuelle entre la carte OpenLayers et Google Maps.

Exemples

Il est possible de voir la librairie en action à travers quelques exemples en ligne.

Sous le capot

Si, comme nous, vous êtes un peu “geek”, vous serez intéressés à savoir comment fonctionne la librairie.

Dès qu’une couche Google est ajoutée à la carte OpenLayers, la librairie est activée et crée une carte Google Maps qu’elle insère en dessous de celle d’OpenLayers. Les entités vectorielles provenant d’OpenLayers deviennent invisibles, tandis qu’elles sont également dessinées dans Google Maps. Chaque entité est alors synchronisée avec son homologue. Modifier une entité provenant d’OpenLayers change celle provenant de Google Maps. Ceci permet la programmation d’une seule application à l’aide de l’API d’OpenLayers.

Brandify

Remerciements spéciaux

Nous tenons à remercier l’entreprise Brandify qui a financé le développement initial de la librairie jusqu’à sa version 0.2. Oeuvrant depuis 1997, à l’époque connu sous le nom de Where2GetIt, Brandify est un fournisseur de solutions marketing numériques basées sur la localisation, la saisie de données et des services personnalisés pour aider les compagnies de marques à maximiser leur présence en ligne et diriger leur clientèle vers leur localisations.