docs: def srfxpt(method, target, et, abcorr, obsrvr, dref, dvec):
      """
      Deprecated: This routine has been superseded by the CSPICE
      routine :func:`sincpt`. This routine is supported for purposes of
      backward compatibility only.
  
      Given an observer and a direction vector defining a ray, compute the
      surface intercept point of the ray on a target body at a specified
      epoch, optionally corrected for light time and stellar aberration.
  
      http://naif.jpl.nasa.gov/pub/naif/toolkit_docs/C/cspice/srfxpt_c.html
  
      :param method: Computation method.
      :type method: str
      :param target: Name of target body.
      :type target: str
      :param et: Epoch in ephemeris seconds past J2000 TDB.
      :type et: Union[float,Iterable[float]]
      :param abcorr: Aberration correction.
      :type abcorr: str
      :param obsrvr: Name of observing body.
      :type obsrvr: str
      :param dref: Reference frame of input direction vector.
      :type dref: str
      :param dvec: Ray's direction vector.
      :type dvec: 3-Element Array of floats
      :return:
              Surface intercept point on the target body,
              Distance from the observer to the intercept point,
              Intercept epoch,
              Observer position relative to target center.
      :rtype: tuple
      """
      method = stypes.stringToCharP(method)
      target = stypes.stringToCharP(target)
      abcorr = stypes.stringToCharP(abcorr)
      obsrvr = stypes.stringToCharP(obsrvr)
      dref = stypes.stringToCharP(dref)
      dvec = stypes.toDoubleVector(dvec)
      spoint = stypes.emptyDoubleVector(3)
      trgepc = ctypes.c_double()
      dist = ctypes.c_double()
      obspos = stypes.emptyDoubleVector(3)
      found = ctypes.c_int()
      if hasattr(et, "__iter__"):
          spoints = []
          dists = []
          trgepcs = []
          obsposs = []
          founds = []
          for t in et:
              libspice.srfxpt_c(method, target, t, abcorr, obsrvr, dref, dvec,
                                spoint, ctypes.byref(dist), ctypes.byref(trgepc),
                                obspos, ctypes.byref(found))
              checkForSpiceError(None)
              spoints.append(stypes.cVectorToPython(spoint))
              dists.append(dist.value)
              trgepcs.append(trgepc.value)
              obsposs.append(stypes.cVectorToPython(obspos))
              founds.append(bool(found.value))
          return spoints, dists, trgepcs, obsposs, founds
      else:
          et = ctypes.c_double(et)
          libspice.srfxpt_c(method, target, et, abcorr, obsrvr, dref, dvec, spoint,
                            ctypes.byref(dist), ctypes.byref(trgepc), obspos, ctypes.byref(found))
          return stypes.cVectorToPython(spoint), dist.value, trgepc.value, stypes.cVectorToPython(obspos), bool(found.value)