getBearing static method
Implementation
static double getBearing(ILatLng begin, ILatLng end) {
var lat = (begin.latitude - end.latitude).abs();
var lng = (begin.longitude - end.longitude).abs();
if (begin.latitude < end.latitude && begin.longitude < end.longitude) {
return MathUtil.toDegrees(math.atan(lng / lat)) as double /*+ 90*/;
} else if (begin.latitude >= end.latitude &&
begin.longitude < end.longitude) {
return ((90 - MathUtil.toDegrees(math.atan(lng / lat))) + 90) /*+ 45*/;
} else if (begin.latitude >= end.latitude &&
begin.longitude >= end.longitude) {
return (MathUtil.toDegrees(math.atan(lng / lat)) + 180) /*- 90*/;
} else if (begin.latitude < end.latitude &&
begin.longitude >= end.longitude) {
return ((90 - MathUtil.toDegrees(math.atan(lng / lat))) + 270) /*+ 90*/;
}
return -1;
}