google.load("maps","2",{other_params:"sensor=false"});google.setOnLoadCallback(Setup);var mapDiv=document.getElementById('map');var coordsDiv=document.getElementById('coords');var map;var points=[[]];var lines=[];var marker=null;var lineWidth=5;var lineColor='#ff0000';var icon;function Setup() {try {acme.Initialize();acme.maps.Initialize();acme.maps.maptypes.Initialize();if(!google.maps.BrowserIsCompatible()) {mapDiv.innerHTML='Sorry, your browser is not compatible with Google Maps.';return;} map=new google.maps.Map2(mapDiv,{draggableCursor:'default'});map.addControl(new google.maps.LargeMapControl());map.addMapType(acme.maps.maptypes.TOPO_MAP);map.addMapType(acme.maps.maptypes.DOQ_MAP);map.addMapType(acme.maps.maptypes.MAPNIK_MAP);map.addControl(new google.maps.MapTypeControl());map.addControl(new google.maps.ScaleControl());google.maps.Event.addListener(map,'click',MapClick);icon=new google.maps.Icon(google.maps.DEFAULT_ICON);icon.image='http://acme.com/resources/images/markers/red.PNG';icon.shadow='http://acme.com/resources/images/markers/shadow.PNG';icon.iconSize=new google.maps.Size(20,34);icon.shadowSize=new google.maps.Size(37,34);icon.iconAnchor=new google.maps.Point(9,34);icon.infoWindowAnchor=new google.maps.Point(9,2);icon.infoShadowAnchor=new google.maps.Point(18,25);acme.maps.SavePositionZoomTypeCookieOnChanges(map);if(!acme.maps.GetPositionZoomTypeCookie(map)) {var point=acme.maps.GetLatLngFromIP();if(point!=null) map.setCenter(point,9);else map.setCenter(new google.maps.LatLng(0.0,0.0),1);} Display();} catch(e) {google.maps.Log.write('Setup:\n'+Props(e));}} function Display() {for(var i=0;i=2) {var line=new google.maps.Polyline(points[i],lineColor);map.addOverlay(line);lines.push(line);}} if(points[points.length-1].length>0) {marker=new google.maps.Marker(points[points.length-1][points[points.length-1].length-1],{icon:icon});map.addOverlay(marker);} var s='';for(var i=0;i0) {for(var j=0;j';s+='-1
';}} coordsDiv.innerHTML=s;} var clicked=false,doubleClicked;function MapClick(overlay,point) {try {if(overlay==null&&point!=null) {if(clicked) doubleClicked=true;else {clicked=true;doubleClicked=false;setTimeout(MakeCaller(MapClickLater,point),250);}}} catch(e) {google.maps.Log.write('MapClick:\n'+Props(e));}} function MapClickLater(point) {try {if(!doubleClicked) {points[points.length-1].push(point);Display();} clicked=false;} catch(e) {google.maps.Log.write('MapClickLater:\n'+Props(e));}} function StartNewLine() {if(points[points.length-1].length==0) return;points.push([]);Display();} function DeleteLastPoint() {if(points[points.length-1].length>0) points[points.length-1].length--;if(points[points.length-1].length==0&&points.length>1) points.length--;Display();} function ClearAllPoints() {points=[[]];Display();}