2012-07-05 2 views
1

У меня вопрос. Теперь я произвожу свою карту с помощью этой функции:Как создать карту Google с ограничениями?

function mapStart() { 
var center = new google.maps.LatLng(c1, c2); 
var MapOption = { 
zoom: 6, 
center: center, 
mapTypeId: google.maps.MapTypeId.ROADMAP 
}; 
var map = new google.maps.Map(document.getElementById("mapka"), MapOption); 

Мой вопрос - как я могу генерировать эту карту без типа «центра», но с оценками? Например: Новая карта с границами:

NorthEast = 51; 
NorthWest = 55; 
SouthEast = 45; 
SouthWest = 44; 

[это всего лишь случайные числа]

, как я могу это сделать?

Поздравления!

EDIT # Это мой новый код

 var test1 = "(" + nelat + ", " + nelng + ")"; 
     var test2 = "(" + swlat + ", " + swlng + ")"; 
     //alert(test1); => (50.355089589491605, 25.734125341796926) 
     //alert(test2); => (49.467221440947704, 23.806024755859426) 
     var newbounds = new google.maps.LatLngBounds(test1, test2); 

     function mapaStart() { 
      var center = new google.maps.LatLng(c1, c2); 
      var MapOption = { 
       zoom: 6, 
       center: center, 
       mapTypeId: google.maps.MapTypeId.ROADMAP 
      }; 
      var map = new google.maps.Map(document.getElementById("mapka"), MapOption); 
      map.fitBounds(newbounds); 

Но этот код не работает должным образом. Когда я нажимаю ctrl + shift + j, я получаю эту ошибку:

Error: a.lat is not a function Source:

http://maps.gstatic.com/intl/pl_ALL/mapfiles/api-3/9/8/main.js

как решить эту проблему?

Поздравления!

ответ

0
  1. создать google.maps.LatLngBounds из ваших номеров

  2. вызов метода Map.fitBounds

map.fitBounds(bounds);

+0

Я добавил свой новый код в первый пост. Оценки не установлены должным образом. – whoah

+0

, пожалуйста, просмотрите документацию по LatLngBounds. В качестве аргументов требуется два объекта LatLng: вы передаете строки. – geocodezip

+0

Ох, спасибо! теперь у меня есть 2 объекта lanlng, fitBounds почти работают хорошо. но есть еще одна проблема - когда я обновляю страницу с помощью метода fitBounds и новых границ, уровень масштабирования меньше, чем оригинал на -1. Как я могу это решить? Я пробовал с var zoom1 = map.getZoom(); map.setZoom (zoom1 + 1); после метода fitBounds, но это не работает, карта серая. – whoah

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