最近在用C# +OpenGL做三维,以前用MFC实现过功能,目前是用C#重写该功能。
因为C#刚用,不是很熟,所以问题不断,大家帮帮忙。
1、glMap2d( uint target, double u1, double u2, int ustride, int uorder, double v1, double v2, int vstride, int vorder, double* points ),这个函数是opengl里的一个函数,最后一个参数“double* points”,我怎么传入啊,是指针? 这个points(点集)是数组(二维或者三维)。 以前在MFC中,比如定义一个数组
array[10][20][3],该参数我写&array[10][20][3]就行。现在用C#,我该怎么写呢?
因为C#刚用,不是很熟,所以问题不断,大家帮帮忙。
1、glMap2d( uint target, double u1, double u2, int ustride, int uorder, double v1, double v2, int vstride, int vorder, double* points ),这个函数是opengl里的一个函数,最后一个参数“double* points”,我怎么传入啊,是指针? 这个points(点集)是数组(二维或者三维)。 以前在MFC中,比如定义一个数组
array[10][20][3],该参数我写&array[10][20][3]就行。现在用C#,我该怎么写呢?
static double tex[2][2][2] =
{
{ {0.0, 0.0}, {1.0, 0.0} },
{ {0.0, 1.0}, {1.0, 1.0} }
};
[MarshalAs(UnmanagedType.ByValArray, SizeConst = 10*20*3)]
double[] points ;
[MarshalAs(UnmanagedType.ByValArray, SizeConst = 10*20*3)]
double[] points ; 上面语句就是说定义了一个三维数组?我这glMap2d函数中最后一个参数如何调用呢,请详细明示,谢谢.
比如:
glMap2d(GL_Vertex_3,0.0, 1.0, 3, 3, 0.0, 1.0,12, 4, ???????? ),