docs: def point_at(lon, lat, azimuth, distance):
      """
      Perform a forward geodetic transformation: find a point lying at a given
      distance from a given one on a great circle arc defined by azimuth.
  
      :param float lon, lat:
          Coordinates of a reference point, in decimal degrees.
      :param azimuth:
          An azimuth of a great circle arc of interest measured in a reference
          point in decimal degrees.
      :param distance:
          Distance to target point in km.
      :returns:
          Tuple of two float numbers: longitude and latitude of a target point
          in decimal degrees respectively.
  
      Implements the same approach as :func:`npoints_towards`.
      """
      # this is a simplified version of npoints_towards().
      # code duplication is justified by performance reasons.
      lon, lat = numpy.radians(lon), numpy.radians(lat)
      tc = numpy.radians(360 - azimuth)
      sin_dists = numpy.sin(distance / EARTH_RADIUS)
      cos_dists = numpy.cos(distance / EARTH_RADIUS)
      sin_lat = numpy.sin(lat)
      cos_lat = numpy.cos(lat)
  
      sin_lats = sin_lat * cos_dists + cos_lat * sin_dists * numpy.cos(tc)
      lats = numpy.degrees(numpy.arcsin(sin_lats))
  
      dlon = numpy.arctan2(numpy.sin(tc) * sin_dists * cos_lat,
                           cos_dists - sin_lat * sin_lats)
      lons = numpy.mod(lon - dlon + numpy.pi, 2 * numpy.pi) - numpy.pi
      lons = numpy.degrees(lons)
  
      return lons, lats