Android Question GPS - How to calculate the distance among two points

SamuelSlf

Member
Licensed User
Longtime User
Hello!

I need calculate distance among two points, how i make this?

Can be using the API of Google Maps or GPS.


Thanks!
 

James Chamblin

Active Member
Licensed User
Longtime User
You can use Location in the GPS library
B4X:
    Dim p1, p2 As Location
    p1.Initialize2("+35.54569","-71.62213")
    p2.Initialize2("+35.53427","-71.61508")
    Dim Distance As Float = p1.DistanceTo(p2)
    Log("Distance is "&Distance&" meters")
 
Upvote 0

samperizal

Active Member
Licensed User
Longtime User
function in javascript but easy to transport.

function distance(lat1,lon1,lat2,lon2) {
var R = 6371; // km (change this constant to get miles)
var dLat = (lat2-lat1) * Math.PI / 180;
var dLon = (lon2-lon1) * Math.PI / 180;
var a = Math.sin(dLat/2) * Math.sin(dLat/2) +
Math.cos(lat1 * Math.PI / 180 ) * Math.cos(lat2 * Math.PI / 180 ) *
Math.sin(dLon/2) * Math.sin(dLon/2);
var c = 2 * Math.atan2(Math.sqrt(a), Math.sqrt(1-a));
var d = R * c;
if (d>1) return Math.round(d)+"km";
else if (d<=1) return Math.round(d*1000)+"m";
return d;
}
 
Upvote 0
Top