線をひく&矩形描画
今まで、GLUTを使用しない場合いかに大変かを見てきたので、
今回からはOpenGLの内容を見て行く為GLUTを使用。
#include <GL/glut.h>
void display(void)
{
glClear(GL_COLOR_BUFFER_BIT);
glColor3d(1.0, 0.0, 0.0); /* 赤色の線を指定 */
glBegin(GL_LINES);
glVertex2d(-0.9, -0.9);
glVertex2d(0.9, 0.6);
glEnd();
glFlush();
}
void init(void)
{
glClearColor(1.0, 1.0, 1.0, 1.0);
}
int main(int argc, char *argv[])
{
glutInit(&argc, argv);
glutInitDisplayMode(GLUT_RGBA);
glutCreateWindow(argv[0]);
glutDisplayFunc(display);
init();
glutMainLoop();
return 0;
}
実行結果
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhvsvcV-duonEbFJTq94g6XjQ39y_ZVYgsOeNJ_lRa4ClJXUFtanL7P-yWLY0zVmhfOu-aBEaWiPdNAOrx6xMEx9GMGxQCJVzN-eTfus-Un8A266GG3Fk2PhIQCH6_bK6NyCtg-z9GlKqI/s1600/%E3%82%B9%E3%82%AF%E3%83%AA%E3%83%BC%E3%83%B3%E3%82%B7%E3%83%A7%E3%83%83%E3%83%88+2014-07-13+1.23.17.png)
今回は分かり易い様に、背景を白色に設定。
また線の色をglColor3d関数で赤に設定。
次はglBegin関数に「GL_LINE_LOOP」を指定。
void display(void)
{
glClear(GL_COLOR_BUFFER_BIT);
glColor3d(1.0, 0.0, 0.0); /* 赤色の線を指定 */
glBegin(GL_LINE_LOOP);
glVertex2d(-0.9, -0.9);
glVertex2d(0.9, -0.9);
glVertex2d(0.9, 0.9);
glVertex2d(-0.9, 0.9);
glEnd();
glFlush();
}
実行結果
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjc_YNCe6y58Q7K05bOepyjLmvFCY31q70OA-20l5Jf4k5OkmEn-ZaTku8agBu7LW2AL6vh6xkO7J_ymzjnRUBWq6RBpbZ9W5_RLkME6sy1u0olAz1dSua-4yd5oAyGLhjbyZnbT8WZSpM/s1600/%E3%82%B9%E3%82%AF%E3%83%AA%E3%83%BC%E3%83%B3%E3%82%B7%E3%83%A7%E3%83%83%E3%83%88+2014-07-13+1.29.18.png)
四角形を塗りつぶす為にglBeginに「GL_POLYGON」を指定
void display(void)
{
glClear(GL_COLOR_BUFFER_BIT);
glColor3d(1.0, 0.0, 0.0); /* 赤色の線を指定 */
glBegin(GL_POLYGON);
glVertex2d(-0.9, -0.9);
glVertex2d(0.9, -0.9);
glVertex2d(0.9, 0.9);
glVertex2d(-0.9, 0.9);
glEnd();
glFlush();
}
実行結果
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjEZTF3ENj5PIIPg_2dV-eT7MdcVL0PTWAkT2mJ_nSAJsCfKktHuvdOm_bw4eK_usrnNhMEXraU0St5x2MkYnbtFCJ7dAeHqR2mwncpTUdBrJ9NZdP5CoMRQGB0wiscSUMTC0mTKwvk92U/s1600/%E3%82%B9%E3%82%AF%E3%83%AA%E3%83%BC%E3%83%B3%E3%82%B7%E3%83%A7%E3%83%83%E3%83%88+2014-07-13+1.36.37.png)
0 件のコメント:
コメントを投稿