﻿var MarkDistance = [];var MarkOverDistance = [];var IndexMarkDistance = 0;var DistanceLatLngs = [];var maxNumDistancepoints = 10;function clearRoute() {var i = 0;for (i = MarkDistance.length - 1; i >= 0; i--) {G_Map.removeOverlay(MarkDistance[i]);if (MarkOverDistance[i] != -1) {MarkOverDistance[i].show();}}G_Dir.clear();MarkDistance = [];MarkOverDistance = [];DistanceLatLngs = [];IndexMarkDistance = 0;document.getElementById("distance").innerHTML = "0.0";}DoMarkDistInMap = (function (overlay, point) {var i = DistanceLatLngs.length;if (i < maxNumDistancepoints) {show_hideLigthBoxMsg("lBMsg", true);if (overlay != null) {overlay.hide();MarkOverDistance[i] = overlay;DistanceLatLngs[i] = overlay.getPoint();} else {MarkOverDistance[i] = -1;DistanceLatLngs[i] = point;}if (DistanceLatLngs.length == 1) {var startIcon = new GIcon(G_DEFAULT_ICON);startIcon.image = "http://maps.google.com/intl/en_ALL/mapfiles/icon_greenA.png";startIcon.mozPrintImage = "http://maps.google.com/intl/en_ALL/mapfiles/marker_greenAff.gif";startIcon.printImage = "http://maps.google.com/intl/en_ALL/mapfiles/marker_greenAie.gif";MarkDistance[0] = new GMarker(DistanceLatLngs[0], {icon:startIcon, title:MarkOverDistance[0].getTitle(), clickable:false});G_Map.addOverlay(MarkDistance[0]);show_hideLigthBoxMsg("lBMsg", false);}doDisplayRouteDist();} else {alert("The maximum distance points is 10.");}});function doDisplayRouteDist() {if (DistanceLatLngs.length > 1) {show_hideLigthBoxMsg("lBMsg", true);var points = [];for (var i = 0; i < DistanceLatLngs.length; i++) {points[i] = DistanceLatLngs[i];}G_Dir.loadFromWaypoints(points, {preserveViewport:true});}}var _eventDoMarkInMap = null;function AddEventToDistance() {_eventDoMarkInMap = GEvent.addListener(G_Map, "click", DoMarkDistInMap);}function RemoveEventToDistance() {if (_eventDoMarkInMap != null) {GEvent.removeListener(_eventDoMarkInMap);}}function onGDir_AddOverlayDist() {var dGeocode;var dRoute;var dMarker;var dIcon;var dLenght = G_Dir.getNumRoutes();var dTitle;for (var i = 0; i < MarkDistance.length; i++) {G_Map.removeOverlay(MarkDistance[i]);}for (var i = 0; i < dLenght; i++) {dRoute = G_Dir.getRoute(i);dGeocode = dRoute.getStartGeocode();dMarker = G_Dir.getMarker(i);DistanceLatLngs[i] = dMarker.getLatLng();dIcon = dMarker.getIcon();dTitle = (MarkOverDistance[i] == -1) ? dGeocode.address : MarkOverDistance[i].getTitle();MarkDistance[i] = new GMarker(DistanceLatLngs[i], {icon:dIcon, title:dTitle, clickable:false});G_Map.addOverlay(MarkDistance[i]);}i = dLenght;dMarker = G_Dir.getMarker(i);dIcon = dMarker.getIcon();dGeocode = dRoute.getEndGeocode();DistanceLatLngs[i] = dMarker.getLatLng();dTitle = (MarkOverDistance[i] == -1) ? dGeocode.address : MarkOverDistance[i].getTitle();MarkDistance[i] = new GMarker(DistanceLatLngs[i], {icon:dIcon, title:dTitle, clickable:false});G_Map.addOverlay(MarkDistance[i]);document.getElementById("distance").innerHTML = G_Dir.getDistance().html.replace("&nbsp;mi", "").replace(",", ".");if (labelUnit == "Km") {convertDistance("Km", true);}show_hideLigthBoxMsg("lBMsg", false);function copyClick(newMarker, oldMarker) {GEvent.addListener(newMarker, "click", (function () {GEvent.trigger(oldMarker, "click");}));}}labelUnit = "Mi";function convertDistance(unit, force) {if (labelUnit != unit || force == true) {var distance = parseFloat(document.getElementById("distance").innerHTML);if (unit == "Mi") {distance = distance / 1.609344;} else {distance = distance * 1.609344;}document.getElementById("distance").innerHTML = distance.toFixed(3);document.getElementById("units").innerHTML = unit;labelUnit = unit;}}function removeLastPoint() {var i = MarkDistance.length - 1;if (i >= 0 && MarkOverDistance[i] != -1) {MarkOverDistance[i].show();}if (i > 1) {G_Map.removeOverlay(MarkDistance[i]);MarkDistance.splice(i, 1);doDisplayRouteDist();convertDistance(labelUnit, true);} else {if (i == 1) {G_Map.removeOverlay(MarkDistance[1]);MarkDistance.splice(1, 1);G_Dir.clear();document.getElementById("distance").innerHTML = "0.0";} else {if (i == 0) {G_Map.removeOverlay(MarkDistance[0]);MarkDistance = [];}}}}