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&amp;sensor=false&amp;v=3&amp;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>");
}