cdm/src/main/java/ucar/unidata/geoloc/Bearing.java
public static Bearing calculateBearing(double lat1, double lon1,
                                           double lat2, double lon2,
                                           Bearing result) {

        return calculateBearing(defaultEarth, lat1, lon1, lat2, lon2, result);
    }
public static Bearing calculateBearing(double lat1, double lon1,
                                           double lat2, double lon2,
                                           Bearing result) {

        return calculateBearing(defaultEarth, lat1, lon1, lat2, lon2, result);
    }
Computes distance (in km), azimuth (degrees clockwise positive
from North, 0 to 360), and back azimuth (degrees clockwise positive
from North, 0 to 360), from latitude-longituide point pt1 to
latitude-longituide pt2. Uses default Earth object.

@param lat1   Lat of point 1
@param lon1   Lon of point 1
@param lat2   Lat of point 2
@param lon2   Lon of point 2
@param result put result here, or null to allocate
@return a Bearing object with distance (in km), azimuth from
pt1 to pt2 (degrees, 0 = north, clockwise positive)