一个Opengl的绘图系统,怎样才能既可以绘制二维图形,又可以绘制三维图形,我觉得是Onsize里面出了问题,可是不知到怎么改,求高手解答,代码如下:
void CMy123View::OnSize(UINT nType, int cx, int cy) { CView::OnSize(nType, cx, cy); //设定视口大小
if (m_shape == 1 || m_shape == 2 || m_shape == 3)
{ glLoadIdentity();
glOrtho(-cx / 2, cx / 2, -cy / 2,cy / 2, -10, 10);
glMatrixMode(GL_PROJECTION); glLoadIdentity();
glViewport(0, 0, cx, cy);
}
if (m_shape == 4)
{ //设定视口大小 //
glViewport(0, 0, cx, cy);
glLoadIdentity();
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
glFrustum(-0.5, 1, -0.5, 1, 1, 20); ///透视矩阵或者透视视见体范围(左,右,下,上,前,后);
glMatrixMode(GL_MODELVIEW);
glShadeModel(GL_FLAT);
glViewport(0, 0, cx, cy);
glClearColor(1, 1, 1, 1);
glClear(GL_COLOR_BUFFER_BIT);
}
求解答。。OPengl绘图系统的问题!
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-