你可以使用OpenGL 1.0或OpenGL 2.0来绘制曲面。你只需要将轴线画成线条,曲面画成三角形即可。如果你有高度图数据,可以按照以下步骤进行:
float[][] surface;
int width, height;
GL.glBegin(GL.GL_LINES);
GL.glVertex3f(0, 0, 0);
GL.glVertex3f(width, 0, 0);
GL.glVertex3f(0, 0, 0);
GL.glVertex3f(0, 0, height);
GL.glVertex3f(0, 0, 0);
GL.glVertex3f(0, 50, 0);
GL.glEnd();
GL.glBegin(GL.GL_TRIANGLES);
for(int x = 1; x < width; ++ x) {
for(int y = 1; y < height; ++ y) {
float a = surface[x - 1][y - 1];
float b = surface[x][y - 1];
float c = surface[x][y];
float d = surface[x - 1][y];
GL.glVertex3f(x - 1, a, y - 1);
GL.glVertex3f(x, b, y - 1);
GL.glVertex3f(x, c, y);
GL.glVertex3f(x - 1, a, y - 1);
GL.glVertex3f(x, c, y);
GL.glVertex3f(x - 1, d, y);
}
}
GL.glEnd();
这会绘制简单的轴和高度场,全部使用白色。从这里开始扩展应该非常简单。