nie wiem jak to jest z ilością kilometrów, ale go google maps jest przykładów w sieci od cholery i jeszcze troszkę... w sumie dość dobrze to jest w api opisane... tak na szybko przykład na współrzędnych...
na stronkę wrzucasz dwa divy o id:
- map (na samą mapkę)
- desc (na opis trasy)
-tworzysz mapkę i "centrujesz" ją na współrzędnych lat1, lng1 ze startowym powiększeniem zoom
map = new GMap2(document.getElementById("map"));
map.setCenter(new GLatLng(lat1, lng1), zoom);
-tworzysz trasę, jeśli podajesz drugi parametr, to będzie to div do którego trafi opis trasy (w tym przypadku trafi on do diva desc)
gdirOptions = { "getPolyline": true, "getSteps": true };
var gdir = new GDirections(map, desc);
- tutaj miałem punkt startowy, punkt przez i punkt końcowy (chciałem wymusić objazd) zapisany w tabeli
direction[0] = new Array(new GLatLng(50.003789, 18.471794), new GLatLng(49.943875, 18.546243), new GLatLng(49.946782, 18.583738));
gdir.loadFromWaypoints(direction[0], gdirOptions);
to tak na szybko, że można coś takiego zrobić... po adresach też idzie - api + google
Ogólnie api od tych map pozwala prawie na wszysko...
Edit1: nie wiem co chcesz osiągnąć, ale:
gdirOptions był tutaj użyty, aby można było pomalować inaczej trasę... można by go pewnie użyć, żeby np. symulować jazdę autkiem, bo gdir jest w tym przypadku zbiorem punktów...
GEvent.addListener(gdir, "load", function()
{
var polyline = gdir.getPolyline();
polyline.setStrokeStyle({color:'#ff0000', weight:3,opacity: 0.7});
map.addOverlay(polyline);
});
ja sobie tylko kolorowałem trasę, ale od czego inwencja? ;)
Edit2: w najgorszym przypadku można pobrać liczbę kilometrów poprzez jakieś wyrażenie regularne z treści div'a, który zawiera opis trasy - w tym przypadku to byłby desc...