**Description**:

It is commonly known that "the shortest distance between two points is a straight line." However, on a nearly spherical planet, when the two points are not on the same meridian (longitude), and the globe is displayed in a mercator projection as Tableau does, the shortest path between those points is actually a curve or arc. This shortest path is called the "great circle route," and you can learn more at Great circle - Wikipedia, the free encyclopedia.

Calculating the coordinates for points along that path requires some complicated spherical trigonometry, which seems pretty intimidating. However, fortunately, most of the hard work is already done and can be found at Aviation Formulary V1.46.

The formulas I found easiest to apply to this project are those in the section Intermediate Points on a Great Circle.

A=sin((1-f)*d)/sin(d)

B=sin(f*d)/sin(d)

x = A*cos(lat1)*cos(lon1) + B*cos(lat2)*cos(lon2)

y = A*cos(lat1)*sin(lon1) + B*cos(lat2)*sin(lon2)

z = A*sin(lat1) + B*sin(lat2)

lat=atan2(z,sqrt(x^2+y^2))

lon=atan2(y,x)

I also calculate and show the Distance between points, converted to kilometers and to miles:

d=acos(sin(lat1)*sin(lat2)+cos(lat1)*cos(lat2)*cos(lon1-lon2))

km=6371.0*d

mi=km * 0.621371

To illustrate this, I used the 50 busiest airports in 2014. I created a Cartesian join on this table to itself to facilitate filtering for the two endpoints, and another Cartesian join to a "scaffold" table containing the values 0 through 100 to represent a point for each one-percent of the route.

It should be noted that, due to political and safety issues, actual airline flights may not actually take the exact great circle route.

**Screenshot**:

**Tableau Version**:* 9.0.4*

**Original Author**: Bill Lyons

## Comments