Pues como bien dices, la propia API de Google Maps tiene un método para calcular la distancia entre un punto A y un punto B, no se donde tienes realmente el problema, si solamente tienes que sustituir los datos.
Te dejo aquí una implementación en un proyecto que hice para calcular tanto la posición actual, como la distancia entre esta posición actual y otros sitios:
Código Javascript
:
Ver original// Geolocalizacion
var sitio = "";
function getLocation(site) {
sitio = site
if (navigator.geolocation) {
navigator.geolocation.getCurrentPosition(showPosition);
}
}
function showPosition(pos) {
var distance = calcDistance(pos.coords.latitude,pos.coords.longitude,
sitio.latitude,sitio.longitude)/1000;
$('.distancia').eq(i).text("A "+distance.toFixed(1)+" kms");
$('.distancia').css('visibility','visible');
}
// Calcular distancias
function calcDistance (fromLat, fromLng, toLat, toLng) {
return google.maps.geometry.spherical.computeDistanceBetween(
new google.maps.LatLng(fromLat, fromLng), new google.maps.LatLng(toLat, toLng));
}
Si te fijas, en "pos.coords.latitude" y "pos.coords.longitude" se almacena la ubicación actual.
Saludos