2015-01-20 3 views
3

Смотрите эту DEMOПараметр `bounds` в` angular-google-map` не работает?

В document, я видел описание bounds параметра:

Установите карту в указанных пределах. Выражение должно быть разрешено к объекту , имеющему свойства как на северо-востоке, так и на юго-западе. Каждый из этих свойств должен иметь широту и свойство долготы

Я установил границы в рамках:

$scope.bd = { 
    northeast: { 
    latitude: 51.219053, 
    longitude: 4.404418 
    }, 
    southwest: { 
    latitude: -51.219053, 
    longitude: -4.404418 
    } 
} 

и использовал его в директиве, как это:

<ui-gmap-google-map bounds="bd" center="map.center" zoom="map.zoom" draggable="true" options="options"></ui-gmap-google-map> 

Но это кажется, что эффекта нет. Карта не установлена ​​в моих указанных границах. Означает ли это, что параметр границ не работает? И как сделать карту подходящей для указанных границ?

ответ

2

Почему бы не использовать центр и зум вместо границ?

Во всяком случае, я делал некоторые тесты, и поскольку центр, масштабирование и границы находятся внутри директивы, они загружаются асинхронно, а по мере того, как требуются центр и зум, границы не отображаются.

Даже установка значения после того, как он не изменился (не знаю, почему)

http://plnkr.co/edit/YdyYIiVVgApA2tpm11Xn?p=preview

setTimeout(function(){ 
    var map = $scope.instance.getGMap(); 
    console.log(map); 
    console.log(map.getBounds()); 



$scope.bd = { 
    northeast: { 
    latitude: 51.219053, 
    longitude: 4.404418 
    }, 
    southwest: { 
    latitude: -51.219053, 
    longitude: -4.404418 
    } 
} 

        ne = new google.maps.LatLng($scope.bd.northeast.latitude, $scope.bd.northeast.longitude); 
      sw = new google.maps.LatLng($scope.bd.southwest.latitude, $scope.bd.southwest.longitude); 
      bounds = new google.maps.LatLngBounds(sw, ne); 
map.fitBounds(bounds); 



}, 2000); 
+0

рассчитать свои границы динамически, поэтому все маркеры в окне отлично. Это невозможно с помощью только центра и масштабирования. –

Смежные вопросы