code: def greatcircle_to_greatcircle(from_greatcircle_coord,
                                 to_greatcircle_frame):
      
  
      # This transform goes through the parent frames on each side.
      # from_frame -> from_frame.origin -> to_frame.origin -> to_frame
      intermediate_from = from_greatcircle_coord.transform_to(
          from_greatcircle_coord.pole)
      intermediate_to = intermediate_from.transform_to(
          to_greatcircle_frame.pole)
      return intermediate_to.transform_to(to_greatcircle_frame)
docs: Transform between two greatcircle frames.