//This script requires access to Google Maps API.
//Author: Jiro Shirota
//Last Updated: December 5th, 2005

function moveMap(mapObj, x, y)
{
  var bounds = mapObj.getBoundsLatLng();
  var xShift = (bounds.maxX - bounds.minX) / 2;
  var yShift = (bounds.maxY - bounds.minY) / 2;
  var center = mapObj.getCenterLatLng();
  mapObj.recenterOrPanToLatLng(new GPoint(center.x + xShift * x, center.y + yShift * y));
}

function zoomMap(mapObj, level)
{
  var zoomLevel = mapObj.getZoomLevel();
  mapObj.zoomTo(zoomLevel + level);
}

function zoomMap_U(mapObj, level)
{
  var zoomLevel = mapObj.getZoomLevel();
  mapObj.zoomMap(zoomLevel + level);
}

function addLayer(mapObj, imageUrl, divWidth, divHeight, mapWidth, mapHeight, mapLeft, mapTop)
{
  var bounds = mapObj.getBoundsLatLng();
  var w = divWidth * mapWidth / (bounds.maxX - bounds.minX);
  var h = divHeight * mapHeight / (bounds.maxY - bounds.minY);
  var icon = new GIcon();
  icon.image = imageUrl;
  icon.iconSize = new GSize(w, h);
  icon.iconAnchor = new GPoint(0, 0);
  var marker = new GMarker(new GPoint(mapLeft, mapTop), icon);
  mapObj.addOverlay(marker);
}

function syncMap()
{
  var center = map2.getCenterLatLng();
  var zoomLevel = map2.getZoomLevel();
  map1.centerAndZoom(center, zoomLevel);
}

function syncMap_G()
{
  var center = map1.getCenter();
  var zoomLevel = map1.getZoomLevel();
  map2.centerAndZoom(new GPoint(center.lng(),center.lat()), 10-zoomLevel);
}

function syncMap_U()
{
  var center = map2.getCenterLatLng();
  var zoomLevel = map2.getZoomLevel();
  map1.centerAndZoom(new ULatLng(center.y, center.x), 10-zoomLevel);
}

function cssFilter(filter)
{
  document.getElementById("map2").className = filter;
}

