Мне нужно рассчитать угол между тремя геолокациями, где два из них всегда одни и те же, и только один из них изменяется (например, когда пользователь идет).Угол между тремя геолокациями
Первая точка является начальной позиции пользователя. Вторая точка - текущая позиция пользователя, поэтому в начале первая точка равна второй точке. Первая точка и фиксированная точка всегда одинаковы. У меня есть широта и долгота для каждой точки.
Я пытался использовать эту формулу:
double angle1 = Math.atan2(startingLocation.getLongitude() - destinationLocation.getLongitude(), startingLocation.getLatitude() - destinationLocation.getLatitude());
double angle2 = Math.atan2(currentLocation.getLongitude() - destinationLocation.getLongitude(), currentLocation.getLatitude() - destinationLocation.getLatitude());
return Math.toDegrees(angle1 - angle2);
Но, например, когда первая точка == вторая точка я, кроме степени быть 0. Но это дает мне странные результаты, как 176 градусов. В чем проблема?
@ Sabish.M Я только заимствовал фотографию из этой темы. – TomTom