2016-08-30 1 views
1

J'ai une carte sur laquelle est dessiné un cercle placé au centre de la carte. Le cercle est toujours présent sur la carte. Le rayon du cercle est réglable par l'utilisateur. Sur chaque changement de rayon J'appelle fitBounds comme ceci:Leaflet fitBounds déplace incorrectement le centre de la carte

leafletData.getMap().then(function(map){ 
    var currentDiameter = L.circle(map.getCenter(), $scope.radius); 
    map.fitBounds(currentDiameter.getBounds()); 
}); 

Parfois fitBounds déplace le centre de la carte. J'ai essayé de recentrer la carte après chaque appel fitBounds mais ce n'est pas idéal.

Merci à l'avance

Répondre

2

Il ne devrait pas être possible d'obtenir les limites d'un cercle jusqu'à ce qu'il a été ajouté à une carte, pour les mêmes raisons que bug #4740.

+0

Le cercle est déjà ajouté à la carte. C'est toujours sur la carte, seulement son rayon est changé. – user3002996

+0

Non. En exécutant 'L.circle()', vous créez une nouvelle instance. – IvanSanchez

+0

Ok, merci de me le faire savoir! Comment puis-je choisir le cercle existant? – user3002996