Interface GTileLayer

Sur l’Api Google MAp, une carte est représentée par un ensemble de petites cartes carrées appelées “tuiles” ayant pour dimensions 256 * 256 px.

L’interface GTileLayer est implémentée dans le but de créer des couches de cartes personnalisées en faisant notamment appel aux classes GMapType ou GTileLayerOverlay.

Consulter également la classe GTileLayerOptions afin de consulter les paramètres optionnels du constructeur de l’objet GTileLayer.

À noter qu’un type de carte (objet de type GMapType) peut afficher plusieurs couches de cartes à la fois comme par exemple le type G_HYBRID_MAP qui dispose d’un objet de type GTileLayer représentant une vue aérienne où se suprerpose un second objet de type GTileLayer proposant quant à lui le nom des rues et des villes.

Voir également les classes GCopyrightCollection et GCopyright.

Exemple d’utilisation de l’interface GTileLayer : (explications ci-dessous)

<script type="text/javascript">

   /*  Déclaration d'une collection (ou ensemble) de copyright */
   copyrights = new GCopyrightCollection('Map Imagery:');

   /*  Déclaration d'un nouveau type de tuile */
   var monTypeDeTuile = new GTileLayer(copyrights,0,5);

   /*  Dans cette instance, le type de vue sera disponible pour
   les niveaux de zooms compris entre 0 et 5. */

   monTypeDeTuile.getTileUrl = function(tile,zoom){
     /* Si le zoom appelé est > 5   */
     if(zoom > 5) return 'dossier_img_tuiles/tuile_non_dispo_pour_ce_zoom.png';

     /* Sinon, nous disposons des tuiles nécessaires   */
     else return 'dossier_img_tuiles/tile.' + zoom + '.' +
	(tile.x + tile.y * Math.pow(2,zoom)) + '.png';
   };

   monTypeDeTuile.isPng = function() { return true; }

   /*  Dans cet exemple, les tuiles seront semi-transparentes */
   monTypeDeTuile.getOpacity = function() { return 0.5; }

</script>

constructeur GTileLayer

Signature du constructeur GTileLayer :
GTileLayer(copyrights : GCopyrightCollection, minResolution : Number, maxResolution : Number, options ? : GTileLayerOptions) .

Instancie une nouvelle couche de type de tuiles.
Les arguments fournis au constructeur peuvent être omis si celui-ci est instancié comme un prototype lors de la création de vos types de carte personnalisés.

Le paramètre copyrights représente un objet de type GCopyrightCollection définissant un tableau d’objets de type GCopyright.

Les propriétés minResolution et maxResolution renseignent les valeurs des niveaux de zoom disponibles (minimum et maximum) pour le type de carte en question utilisant ces tuiles.

<script type="text/javascript">

   /*  Déclaration d'une collection (ou ensemble) de copyright */
   copyrights = new GCopyrightCollection('Map Imagery:');

   /*  Déclaration d'un nouveau type de tuile */
   var monTypeDeTuile = new GTileLayer(copyrights,0,5);

   /*  Dans cette instance, le type de vue sera disponible pour
   les niveaux de zooms compris entre 0 et 5. */

</script>

minResolution

La méthode minResolution retourne la valeur du niveau de zoom minimum disponible pour la couche de tuiles en question.

maxResolution

La méthode maxResolution retourne la valeur du niveau de zoom maximum disponible pour la couche de tuiles en question.

getTileUrl()

Signature de la méthode getTileUrl : getTileUrl(tile : GPoint, zoom : Number);

La méthode getTileUrl retourne l’URL de la tuile appropriée à afficher en fonction de la position sur la carte (coordonnées X et Y) et pour un zoom donné.

Exemple d’utilisation :

<script type="text/javascript">

   monTypeDeTuile.getTileUrl = function(tile,zoom){
     /* Si le zoom appelé est > 5   */
     if(zoom > 5) return 'dossier_img_tuiles/tuile_non_dispo_pour_ce_zoom.png';

     /* Sinon, nous disposons des tuiles nécessaires   */
     else return 'dossier_img_tuiles/tile.' + zoom + '.' +
	(tile.x + tile.y * Math.pow(2,zoom)) + '.png';
   };

</script>

isPng

La méthode isPng() retourne true si le format utilisé pour les image représentant les tuiles est le PNG, et si les images peuvent par conséquent être transparentes.
Sinon, le format GIF est également assuré (notamment pour pouvoir jouer sur la transparence).

Il est utile de “prévenir” l’Api si le format PNG est utilisé car elle se chargera automatiquement de générer les hack css nécessaires pour les navigateurs ne gérant pas ce format.

Exemple de déclaration du format PNG:

<script type="text/javascript">

   monTypeDeTuile.isPng = function() { return true; }

</script>

getOpacity

La méthode getOpacity() retourne l’opacité à appliquer à la couche de tuiles concernée.

La valeur 1 signifiant opaque et 0 transparent.

Exemple de déclaration de l’opacité des tuiles:

<script type="text/javascript">

   monTypeDeTuile.getOpacity = function() { return 0.5; }
   /*  Dans cet exemple, les tuiles seront semi-transparentes */

</script>

getCopyright

Disponible depuis la version 2.89 de l’Api.

Signature de la méthode getCopyright: getCopyright(bounds : GLatLngBounds, zoom : Number).

La méthode getCopyright retourne le message du copyright à afficher sur la carte en fonction d’une région [bounds] et d’un zoom donnés.

événement newcopyright

Signature de l’écouteur d’événement newcopyright: newcopyright(copyright : GCopyright).

Déclenche un événement lorsqu ‘un nouveau copyright est ajouté à la collection de copyrights (GCopyrightCollection) définie pour le type de carte concerné.

Laisser une réponse

Security Code: