Roll Any Point on the Sphere to Any Desired Latitude-Longitude Coordinates with One Straight-Line Roll

Pick a point on a sphere (in green). This point has certain latitude-longitude coordinates. In one straight-line roll, we can move this point to any desired latitude-longitude coordinates (in red). This Demonstration shows the shortest such roll.


  • [Snapshot]
  • [Snapshot]
  • [Snapshot]


A roll in the horizontal plane of length about an axis at angle with the axis produces the following change in orientation:
We want to choose the pair that moves a point from the starting latitude-longitude pair to the desired latitude-longitude pair.
First, we compute the 3D location of the point from the latitude-longitude pair :
Let and be the start and end coordinates.
The angle to roll along is given by , which is undefined if the coordinates overlap. If they overlap and any angle works. Otherwise, set .
The length of the roll is determined by the angle between the start and ending latitude-longitude pair with respect to the intersection of the line in the - plane between the start and end points and a perpendicular line to the origin. If is the squared - distance between the start and end points, this intersection point is given by
If , the intersection point is the origin.
If and are the vectors to the starting and ending north poles from this intersection point, then we can use a property of the dot product to calculate the angle , which satisfies .
    • Share:

Embed Interactive Demonstration New!

Just copy and paste this snippet of JavaScript code into your website or blog to put the live Demonstration on your site. More details »

Files require Wolfram CDF Player or Mathematica.