Предполагая, что у меня есть два местоположения в LAT / LOT
от: lat 51.504870000000004, lng -0.21533000000000002
до: lat 51.50475, lng -0.21571
Расстояние между ними составляет 0,02949062526738975 км. Округленное расстояние 0,03 км.
private fun calculatesDistance(from: Coordinate, to: Coordinate): Double {
return if ((from.lat == to.lat) && (from.lng == to.lng)) {
Double.MIN_VALUE
} else {
val theta = from.lng - to.lng
var dist = sin(Math.toRadians(from.lat)) * sin(Math.toRadians(to.lat)) + cos(Math.toRadians(from.lat)) * cos(Math.toRadians(to.lat)) * cos(Math.toRadians(theta))
dist = acos(dist)
dist = Math.toDegrees(dist)
dist *= 60 * 1.1515
dist *= 1.609344
dist
}
}
Я использую код ниже, чтобы рассчитать это расстояние. согласно веб-сайту geodatasource
Я хотел уменьшить расстояние между ними, вставив ввод метров. Кто-нибудь работал с этим, или вы могли бы мне помочь?
Например, если я введу 10 метров, я должен знать свое местоположение в LAT и LONG после применения этих 10 метров, чтобы продолжить расчет до пункта назначения.