public static String getBearingAsString(double lat1, double lng1, double lat2, double lng2) { double b = getBearing(lat1, lng1, lat2, lng2); double b1 = b += 22.5; if (b1 < 0) { b1 += 360.0; } if (b1 >= 360.0) { b1 -= 360.0; } int idx = (int) b1 / 45; DBG.write( "Bearing " + lat1 + ":" + lng1 + " --> " + lat2 + ":" + lng2 + " [" + b + "] is " + bearingWords[idx]); return bearingWords[idx]; }