用opengl绘制数字

时间:2013-12-04 04:27:53

标签: c++ opengl

我有一个包含0和1的数组,并根据我想要绘制正方形的数组的值并用颜色填充它。我有下面的代码,但它只在屏幕中间有1个方格。我觉得我需要对glVertex2f()做些什么,但我有点难过。

最终结果是这样的

enter image description here

但我的代码只有一个方块。

for (int i = 0; i < Width; i++) {
  for (int j = 0; j < Height; i++) {
    if (myArray[i][j] == 0) {
      glColor(1.1, 1.1, 1.1);
    } else {
      glColor(2.2, 2.2, 2.2);
    }

    glBegin(GL_QUADS);
      glVertex2f(-0.2, 0.2);
      glVertex2f(0.2, 0.2);
      glVertex2f(0.2, 0.2);
      glVertex2f(-0.2, 0.2);
    glEnd;
  }
}

2 个答案:

答案 0 :(得分:0)

您正在同一个地方绘制所有正方形 - 您需要将它们分开。

答案 1 :(得分:0)

尝试在每次抽奖前添加翻译。类似的东西:

glPushMatrix();
glTranslatef(2. * i, 2. * j, 0.0) ;
glBegin(GL_QUADS) ;
...

glPopMatrix() ;