Dynamiczna mapa google z niestandardowymi kafelkami zapobiega powtarzaniu panoramy

Mam dynamiczny zestaw kafli, w którym NIE chcę zezwalać na panoramowanie poza jego granicami.

Poniższy kod zamyka mnie, ale użytkownik nadal może przewijać poziomo poza ścisłe ograniczenia, ponieważ używa centrum mapy do porównania

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));
});

questionAnswers(3)

yourAnswerToTheQuestion