def METHOD_NAME(self, surface, samples_u, samples_v):
    u_min = surface.get_u_min()
    u_max = surface.get_u_max()
    v_min = surface.get_v_min()
    v_max = surface.get_v_max()
    us = np.linspace(u_min, u_max, num=samples_u)
    vs = np.linspace(v_min, v_max, num=samples_v)
    us, vs = np.meshgrid(us, vs)
    us = us.flatten()
    vs = vs.flatten()
    return [(u, v, 0.0) for u, v in zip(us, vs)]