Вопрос по google-maps-api-3, javascript – Установка границ вокруг города в Google Maps

2

Я ищу способ установить границы вокруг определенного города в API карт Google V3 с помощью JavaScript

Этот тип вещей даже поддерживается в API?

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

Ваш Ответ

3   ответа
1
  1. Use map.fitBounds() or map.setCenter() to center the city/country/region on the map.
  2. Use draggable: false option to disable panning.
2

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

попробуйте следующий код, чтобы ограничить пользователя панорамированием по региону.

 // Bounds for North America
   var strictBounds = new google.maps.LatLngBounds(
     new google.maps.LatLng(28.70, -127.50), 
     new google.maps.LatLng(48.85, -55.90)
   );

   // Listen for the dragend event
   google.maps.event.addListener(map, 'dragend', function() {
     if (strictBounds.contains(map.getCenter())) return;

     // We're out of bounds - Move the map back within the bounds

     var c = map.getCenter(),
         x = c.lng(),
         y = c.lat(),
         maxX = strictBounds.getNorthEast().lng(),
         maxY = strictBounds.getNorthEast().lat(),
         minX = strictBounds.getSouthWest().lng(),
         minY = strictBounds.getSouthWest().lat();

     if (x < minX) x = minX;
     if (x > maxX) x = maxX;
     if (y < minY) y = minY;
     if (y > maxY) y = maxY;

     map.setCenter(new google.maps.LatLng(y, x));
   });

это ограничит пользователя панорамированием по региону северной америки

Я получил ответ на комментарий выше, да, я помещаю его в функцию инициализации, думаю, мне следует прочитать всю ссылку, которую вы разместили, прежде чем задавать глупые вопросы. Эта ссылка действительно очень мне помогает. Aaron Russell
Я объявляю все это под функцией инициализации? Или за пределами этой функции? Aaron Russell
они должны иметь возможность перемещаться по карте, в противном случае я теряю всю интерактивность пользователя, которую я ищу. Aaron Russell
Удивительно, это выглядит великолепно, как я уже говорил другому парню, как только я доберусь до работы завтра, я попробую это. И дайте вам знать, если он работает правильно, я уверен, что это будет с кодом, который вы предоставили для редактирования. Смогу ли я не сделать круг, но все же выбирать и выбирать между координатами и координатами? Aaron Russell
Вы хотите ограничить пользователя, чтобы иметь возможность панорамирования только внутри круга справа!
2

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

limitCoord = [
    new google.maps.LatLng(42.49956716,-7.019005501),
    new google.maps.LatLng(42.49947126,-7.029286373),
    new google.maps.LatLng(42.50904062,-7.049299123),
    new google.maps.LatLng(42.50722622,-7.069103626),
    new google.maps.LatLng(42.50452387,-7.000150672),
    new google.maps.LatLng(42.49348015,-6.983058917),
    new google.maps.LatLng(42.49843269,-6.971666546),
    new google.maps.LatLng(42.51765791,-6.956909023),
    new google.maps.LatLng(42.52010069,-6.927429186),
    new google.maps.LatLng(42.50992238,-6.914231493),
    new google.maps.LatLng(42.50096695,-6.879679821),
    new google.maps.LatLng(42.48775868,-6.857775832),
    new google.maps.LatLng(43.23907504,-3.293216584)], "#000000", 5);

var boundries = new google.maps.Polyline({
    path: limitCoord,
    strokeColor: "#000000",
    strokeOpacity: 1.0,
    strokeWeight: 2
});
Выглядит отлично, постараюсь реализовать его, когда завтра доберусь до работы, и сообщу вам окончательные результаты. Будет ли это на самом деле помешать им пройти эти координаты? Или он только нарисует линию штрих-цвета? Aaron Russell
Будет только рисовать линию цвета обводки, надеюсь, это поможет вам, по крайней мере, может помочь вам улучшить вашу идею
Это действительно так, созданный вами набор изменений поможет вам в дизайне, но не в функциональности. В любом случае, спасибо :) Aaron Russell

Похожие вопросы