Distance between 2 locations
Testing with google maps API V3
by Egli
HTML
<script src="http://maps.google.com/maps/api/js?key=AIzaSyBnqP7lGKGXfK2WFWvJmCjAMuu7Z_0TzTI&sensor=false&v=3&libraries=geometry"></script>
<p><strong>My Home Lat Long</strong> (-33.789042,150.6672563)</p>
<p><strong>My Work Lat Long</strong> (-33.7949199,151.1395043)</p>
<p><strong>Distance from work to home is:</strong> <span id="distance" class="result"></span></p>
<p class="highlight">calling the API 25,000 times</p>
<div id="apiCallResults">
</div>
<p class="highlight2">StartTime: <span id="startTime" class="result"></span></p>
<p class="highlight2">EndTime: <span id="endTime" class="result"></span></p>
CSS
html {font-family:arial; font-size:12px;}
p{ margin:10px; }
.highlight {color:green; font-weight:bold;}
.highlight2 {color:red; font-weight:bold;}
#apiCallResults { font-size: 8px; font-weight:bold; color:green;}
JavaScript
ovar earthRadius;
var homeCoords;
var workCoords;
var homeLatLng;
var workLatLng;
var $apiCallResults
$(window).load(function(){
var $distance = $('#distance');
var $startTime = $('#startTime');
var $endTime = $('#endTime');
$apiCallResults = $('#apiCallResults');
earthRadius = 6378137;
homeCoords = {
lat:-33.789042,
long: 150.6672563
};
workCoords = {
lat:-33.7949199,
long: 151.1395043
}
//Get home/work latlng objects
homeLatLng = new google.maps.LatLng(homeCoords.lat, homeCoords.long, true); //true allows values outside or range
workLatLng = new google.maps.LatLng(workCoords.lat, workCoords.long, true); //true allows values outside or range
var startTime = new Date();
for(var i = 1; i<= 2500; i++)
{
setTimeout(callAPIAndWriteToScreen(i), 10000)
}
var endTime = new Date();
//Print to screen the results
$startTime.html(startTime);
$endTime.html(endTime);
});
function callAPIAndWriteToScreen(i){
google.maps.geometry.spherical.computeDistanceBetween(homeLatLng, workLatLng, earthRadius)
$apiCallResults.append("<p>" + i + "</p>");
}