IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

APIs Google Discussion :

Viewport et fichiers KML multiples [Google Maps]


Sujet :

APIs Google

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Invité
    Invité(e)
    Par défaut Viewport et fichiers KML multiples
    Bonjour

    J'essaie d'afficher sur une carte avec plusieurs couches KML. Jusqu'à présent cela fonctionne pas trop mal. Mais je souhaiterais que la vue s'adapte de façon à afficher tous mes fichiers kml. Je parviens à modifier le viewport individuellement pour chacun de mes kml à l'aide du paramètre preserveViewport, mais pas globalement. D'ailleurs, est-ce possible ?

    mon code test actuel :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
     
    var myOptions = {
    		scrollwheel: true,
    		scaleControl: true,
    		disableDefaultUI: false,
    		mapTypeId: google.maps.MapTypeId.ROADMAP
    	};
    	var myMap= new google.maps.Map(document.getElementById("myMap"), myOptions);
     
    	var kmllayer = new google.maps.KmlLayer('map1.kml', {preserveViewport:true});
    	kmllayer.setMap(myMap);
     
    	var kmllayer2 = new google.maps.KmlLayer('map2.kml', {preserveViewport:false});
    	kmllayer2.setMap(myMap);
     
     // autres kml...

    Julien

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour

    C'est bon, je suis finalement parvenu à mon but.

    En utilisant la méthode union de LatLngBounds, puis fitBounds sur la carte.


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
     
    var myOptions = {
    		zoom: 1,
    		center: new google.maps.LatLng(0, 0),
    		scrollwheel: true,
    		scaleControl: true,
    		disableDefaultUI: false,
    		mapTypeId: google.maps.MapTypeId.ROADMAP
    	};
    	var myMap = new google.maps.Map(document.getElementById("myMap"),
    	myOptions);
     
    	var kmllayerFiles = new Array();
    	kmllayerFiles[0] = 'map1.kmz';
    	kmllayerFiles[1] = 'map2.kmz';
     
    	var LatLngUnion = null;
    	var kmllayer = new Array();
     
    	for(var i=0; i < kmllayerFiles.length; i++) {
    		kmllayer[i] = new google.maps.KmlLayer(kmllayerFiles[i] + '?112', {preserveViewport:true});
    		kmllayer[i].setMap(myMap);
     
    		google.maps.event.addListener(kmllayer[i], "defaultviewport_changed", 
    			function() {
    				if(LatLngUnion == null) {
    					LatLngUnion = this.getDefaultViewport();
    				} else {
    					LatLngUnion.union(this.getDefaultViewport());
    				}
     
    				myMap.fitBounds(LatLngUnion);
    			});
    	}

    Julien

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. fichier kml à partir d'Excel pour Google Earth
    Par lucy22 dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 15/02/2013, 15h25
  2. Réponses: 2
    Dernier message: 26/04/2007, 18h17
  3. [VBA-E] Import de fichier txt multiple
    Par Jidewe dans le forum Macros et VBA Excel
    Réponses: 19
    Dernier message: 13/02/2007, 10h45
  4. Réponses: 8
    Dernier message: 19/09/2006, 15h42
  5. [Upload] upload fichiers avec multiple submit
    Par dolf13 dans le forum Langage
    Réponses: 17
    Dernier message: 06/06/2006, 01h20

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo