Динамическая карта Google с пользовательскими плитками предотвращает повторное панорамирование

У меня есть динамический набор плиток, где я НЕ хочу разрешать панорамирование за его пределами.

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

var strictBounds = new google.maps.LatLngBounds(
 new google.maps.LatLng(sw_lat, sw_lon), 
 new google.maps.LatLng(ne_lat, ne_lon)
);

google.maps.event.addListener(map, 'drag', 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));
});

What is happening

What I want

Ответы на вопрос(3)

Ваш ответ на вопрос