0

QGraphicsScene の drawBackground() を通じて、 QGraphicsScene に QGraphicsRectItem を追加し、

すべての opengl コードは、QGraphicsScene の drawBackground() 内に記述されています。

コード:

MTList=glGenLists(1);
glEnableClientState(GL_VERTEX_ARRAY); 
Vertex_iterator vi = model.vertices_begin(); 
glVertexPointer(3, GL_DOUBLE, sizeof(Vertex), &(vi->point()[0]));
glDisable(GL_LIGHTING); 
glNewList(MTList, GL_COMPILE); 
glColor3f(1.0,0.0,1.0);
//glLineWidth(10.0); 
//glDisable(GL_CULL_FACE); 
//glPolygonMode(GL_FRONT_AND_BACK, GL_LINE);
glDrawElements(GL_POINTS, 3*model.size_of_facets(), GL_UNSIGNED_INT, &modelfaces[0]); glEndList();
glDisableClientState(GL_VERTEX_ARRAY);

通常表示される項目。ただし、この行を有効にした後: glPolygonMode(GL_FRONT_AND_BACK, GL_LINE) 項目が歪んでいました。

一方、コードを変更すると: glPolygonMode(GL_FRONT, GL_LINE); 問題を解決し、アイテムは期待どおりのものになりました。

なぜこれが起こるのでしょうか?

4

0 に答える 0