Méthode addcontrol

La méthode addControl permet de gérer les objets GControl qui seront affichés sur la carte.

addControl(control,[position])

Cette méthode ajoute les éléments de l’objet GControl que l’on souhaite. Le paramètre optionnel [position] est une instance de la classe GControlPosition. Il détermine l’endroit où afficher les panneaux de contrôle.
Si ce paramètre n’est pas renseigné, la position des contrôleurs sera déterminée par la méthode GControl.getDefaultPosition().

Il n’est possible d’ajouter qu’une instance de chaque contrôleur par appel à la méthode addControl. Si l’on souhaite afficher plusieurs types de contrôleurs, on devra à chaque fois appeler cette méthode.

<script type="text/javascript">

   var map = new GMap2(document.getElementById('map'));
   /* Ici, nous déclarons l'élément html ayant pour id "map" comme conteneur de la map */
   map.setCenter(new GLatLng(48.8566667, 2.3509871), 13);
   /* Affichage de la carte centrée sur Paris */

   map.addControl(new GLargeMapControl3D());
   // On ajoute le contrôleur "zoom grand format" sur la carte 

   map.addControl( new GMenuMapTypeControl());
   // On ajoute un menu déroulant pour permettre à l'utilisateur
   // de choisir le type de vue

   map.addControl( new GMenuMapTypeControl(),
                    new GControlPosition(G_ANCHOR_BOTTOM_RIGHT, new GSize(10,10)));
   // On ajoute le menu déroulant des différents types de vue possible en bas,
   // à droite de la carte.
   // On le décale de 10px des bords de la carte avec l'option new GSize

</script>

removeControl(control)

La méthode removeControl permet d’enlever les contrôleurs suite à une action de l’utilisateur par exemple.

Dans le script ci-dessous, nous allons déclarer un contrôleur à afficher sur la carte puis le faire disparaître lorsque l’utilisateur effectue un dragNdrop (glisser / déposer) de la carte.

<script type="text/javascript">

   var map = new GMap2(document.getElementById('map'));
   /* Ici, nous déclarons l'élément html ayant pour id "map" comme conteneur de la map */
   map.setCenter(new GLatLng(48.8566667, 2.3509871), 13);
   /* Affichage de la carte centrée sur Paris */

   var mapTypeControl = new GMapTypeControl();
   // Déclaration du contrôleur à afficher

   map.addControl(mapTypeControl);
   // Affichage du contrôleur sur la carte

   GEvent.addListener(map, "dragend", function() {
    map.removeControl(mapTypeControl);
   });
   // Fonction qui fait disparaître le choix du type de vue de la carte
   // lorsque l'utilisateur effectue un glisser / déposer

</script>

Laisser une réponse

Security Code: