Is there an upper limit for order of 2D evaluators?

hi,
I am drawing a surface with 2D evaluators. I have an array like this:
GLdouble grid[64][64][3];

and this works:
glEnable(GL_MAP2_VERTEX_3);
glMap2d(GL_MAP2_VERTEX_3,
0.0, 1.0,64*3, 30, 0.0, 1.0, 3, 30,
&grid[0][0][0]);
glMapGrid2d(20, 0.0, 1.0, 30, 0.0, 1.0);
glEvalMesh2(GL_LINE, 0, 20, 0, 30);

however, when I go to higher order, such as
glMap2d(GL_MAP2_VERTEX_3,
0.0, 1.0,64*3, 60, 0.0, 1.0, 3, 60,
&grid[0][0][0]);
then it doesn’t work anymore --nothing is drawn. I wonder if there is a upper limit for the order, and if I can change that order. In this example, I want to use order of 64.

Thanks.
Haoxiang Luo
UC San Diego

ah, I just realized that the upper limit is 30 (GL_MAX_EVAL_ORDER).
Now how can I avoid this problem, such as using NURBS?

Haoxiang