Google Maps v3 ImageMapType Предотвращение переноса
Я пытаюсь повторить поведение, замеченное в:
http://forevermore.net/articles/photo-zoom/
Это позволяет панорамирование и масштабирование фотографии, но это ограничивает панорамирование до границ фотографии.
Пример выше с использованием кода Google Maps v2.
Кажется, мне нужно сделать следующее:
google.maps.event.addListener(map, 'dragend', function()
{
//Get bounds and not allow dragging
});
(Как видно здесь:Как ограничить панорамирование в Google Maps API V3?)
Моя проблема:
Images that will be panned/zoomed are dynamic in size, I want a generic solution (if possible)Если невозможно найти общее решение, как определить правильные границы LatLon для изображения?
Вот что у меня так далеко:
var customTypeOptions = {
getTileUrl: function(coord, zoom) {
return "img/earth_tiles/tile-" + zoom + "-" + coord.x + "-" + coord.y + ".jpg";
},
tileSize: new google.maps.Size(256, 256),
maxZoom: 6,
minZoom: 0,
name: "Custom Map Type"
};
var customMapType = new google.maps.ImageMapType(customTypeOptions);
jQuery(document).ready(function(){
var myLatlng = new google.maps.LatLng(0, 0);
var myOptions = {
center: myLatlng,
zoom: 3,
disableDefaultUI: true,
zoomControl: true
};
var map = new google.maps.Map(document.getElementById("map"), myOptions);
map.mapTypes.set('custom', customMapType);
map.setMapTypeId('custom');
});
Он отлично работает, он просто позволяет пользователю прокручивать за пределами фотографии.