У меня есть эта позиция от GPS:
40,715192, -74,005795
как проверить, находится ли я в радиусе 10 метров?
Спасибо заранее
Используйте формулу Хаверсайна http://en.wikipedia.org/wiki/Haversine_formula
Псевдокод:
R = 6371; // corrected earth radius, km dLat = degToRad(lat2-lat1); dLon = degToRad(lon2-lon1); a = sin(dLat/2) * sin(dLat/2) + cos(degToRad(lat1)) * cos(degToRad(lat2)) * sin(dLon/2) * sin(dLon/2); c = 2 * atan2(sqrt(a), sqrt(1-a)); distance = R * c;
degToRad преобразует градусы в радианы, см., Например, здесь
degToRad
Я искал что-то подобное и нашел это: http://megocode3.wordpress.com/2008/02/05/haversine-formula-in-c/