def latsrf(method, target, et, fixref, lonlat):
    """
    Map array of planetocentric longitude/latitude coordinate pairs 
    to surface points on a specified target body. 
 
    The surface of the target body may be represented by a triaxial 
    ellipsoid or by topographic data provided by DSK files.
    
    https://naif.jpl.nasa.gov/pub/naif/toolkit_docs/C/cspice/latsrf_c.html
    
    :param method: Computation method.
    :type method: str
    :param target: Name of target body.
    :type target: str
    :param et: Epoch in TDB seconds past J2000 TDB. 
    :type et: float
    :param fixref: Body-fixed, body-centered target body frame.
    :type fixref: str
    :param lonlat: Array of longitude/latitude coordinate pairs.
    :type lonlat: A 2xM-Element Array of floats
    :return: Array of surface points. 
    :rtype: A 3xM-Element Array of floats
    """
    method = stypes.stringToCharP(method)
    target = stypes.stringToCharP(target)
    et     = ctypes.c_double(et)
    fixref = stypes.stringToCharP(fixref)
    npts   = ctypes.c_int(len(lonlat))
    lonlat = stypes.toDoubleMatrix(lonlat)
    srfpts = stypes.emptyDoubleMatrix(3, npts.value)
    libspice.latsrf_c(method, target, et, fixref, npts, lonlat, srfpts)
    return stypes.cMatrixToNumpy(srfpts)