def METHOD_NAME(self, datapt, coords='data', naxispath=None):
    # force to array representation
    datapt = np.asarray(datapt)
    # Kapteyn's WCS needs pixels referenced from 1
    if coords == 'data':
        datapt = datapt + 1.0
    if naxispath is not None:
        n = len(naxispath)
        if n > 0:
            datapt = np.hstack((datapt, np.zeros((len(datapt), n))))
    try:
        wcspt = self.wcs.toworld(datapt)
    except Exception as e:
        self.logger.error(
            "Error calculating datapt_to_wcspt: %s" % (str(e)))
        raise common.WCSError(e)
    # TODO: swap axes if lon/lat reversed?
    ## if ((self.wcs.lonaxnum is not None) and
    ##         (self.wcs.lataxnum is not None)):
    return wcspt