|
|
void CMy3DView: rawScence()
{
GLdouble ver[5][3];
GLUtesselator *tess;
tess=gluNewTess();
gluTessCallback(tess, GLU_TESS_BEGIN,glBegin);
gluTessCallback(tess, GLU_TESS_VERTEX,glVertex3d);
gluTessCallback(tess, GLU_TESS_END, glEnd);
glColor3f(1,0,0);
ver[0][0]=0,ver[0][1]=0,ver[0][2]=0;
ver[1][0]=0,ver[1][1]=1,ver[1][2]=0;
ver[2][0]=1,ver[2][1]=1,ver[2][2]=0;
ver[3][0]=0.5,ver[3][1]=0.5,ver[3][2]=0;
ver[4][0]=1,ver[4][1]=0,ver[4][2]=0;
glBegin(GL_POLYGON);
for(int m=0;m<5;m++)
{ glVertex3d(ver[m][0],ver[m][1],ver[m][2]);}
glEnd();
gluBeginPolygon(tess);
gluTessBeginContour(tess);
gluTessVertex(tess,ver[0],ver[0]);
gluTessVertex(tess,ver[1],ver[1]);
gluTessVertex(tess,ver[2],ver[2]);
gluTessVertex(tess,ver[3],ver[3]);
gluTessVertex(tess,ver[4],ver[4]);
gluTessEndContour(tess);
gluEndPolygon(tess);
gluDeleteTess(tess);
}
error C2664: 'gluTessCallback' : cannot convert parameter 3 from 'void (unsigned int)' to 'void (__stdcall *)(void)'
None of the functions with this name in scope match the target type
error C2664: 'gluTessCallback' : cannot convert parameter 3 from 'void (double,double,double)' to 'void (__stdcall *)(void)'
None of the functions with this name in scope match the target type
这两个错误怎么回事,这段代码是编程宝典的原代码呀!我把它用在VC++下编译时就出现这样的错误!请各位指点,我是想填充一个凹多边形! |
|