• 大小: 2.29MB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2023-11-15
  • 语言: 其他
  • 标签: 图形学  

资源简介

华中科技大学图形学作业,包含大部分代码,使用OpenGL实现

资源截图

代码片段和文件信息

#include
#include 
#include 

void init(void)
{
glClearColor (0.0 0.0 0.0 0.0);
glShadeModel (GL_SMOOTH);
}

void draw_triangle(void)
{
glShadeModel(GL_SMOOTH);
glColor3f(0.00.01.0);
glBegin (GL_TRIANGLES);//画出三角形,为混合色填充方式
glVertex2f(50.0 25.0);
glColor3f(0.40.50.60);
glVertex2f(150.0 25.0);
glColor3f(0.90.70.8);
glVertex2f(100.0 100.0);
glEnd();
}
void display(void)
{
glClear (GL_COLOR_BUFFER_BIT);
glColor3f (1.0 1.0 1.0);

glLoadIdentity ();
glColor3f (1.0 1.0 1.0);
glTranslatef(-100.0-50.01.0);
draw_triangle ();

glLoadIdentity ();
glTranslatef (0.0 100.0 1.0);
draw_triangle ();
glLoadIdentity ();
glRotatef (90.0 0.0 0.0 1.0);
draw_triangle ();
glLoadIdentity ();
glScalef (0.5 0.5 1.0);

draw_triangle ();

glFlush ();
}
/*
void display(void)
{
glClear (GL_COLOR_BUFFER_BIT);
glColor3f (1.0 1.0 1.0);

glLoadIdentity ();
glColor3f (1.0 1.0 1.0);
glTranslatef(-100.0-50.01.0);
draw_triangle ();

glLoadIdentity ();
glTranslatef (0.0 100.0 1.0);
glRotatef (90.0 0.0 0.0 1.0);
glScalef (0.5 0.5 1.0);
draw_triangle ();//经过三种变换后画出图形

glFlush ();
}
*/
void reshape (int w int h)
{
glViewport (0 0 (GLsizei) w (GLsizei) h);
glMatrixMode (GL_PROJECTION);
glLoadIdentity ();
if (w <= h)
gluOrtho2D (-200.0 250.0 -100.0*(GLfloat)h/(GLfloat)w
200.0*(GLfloat)h/(GLfloat)w);//调整裁剪窗口
else
gluOrtho2D (-200.0*(GLfloat)w/(GLfloat)h
250.0*(GLfloat)w/(GLfloat)h -50.0 200.0);
glMatrixMode(GL_MODELVIEW);
}
int main(int argc char** argv)
{
glutInit(&argc argv);
glutInitDisplayMode (GLUT_SINGLE | GLUT_RGB);
glutInitWindowSize (600 600);
glutInitWindowPosition (100 100);
glutCreateWindow (argv[0]);
init ();
glutDisplayFunc(display);
glutReshapeFunc(reshape);
glutMainLoop();
return 0;
}

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2015-12-29 16:17  1\
     目录           0  2015-12-29 16:18  10\
     文件        4309  2015-12-23 21:18  10\区域编码裁剪.cpp
     文件       32256  2015-12-23 21:18  10\区域编码裁剪.exe
     目录           0  2015-12-29 16:17  11\
     文件        3651  2015-12-23 21:10  11\Barsky裁剪.cpp
     文件       32256  2015-12-23 21:11  11\Barsky裁剪.exe
     目录           0  2015-12-29 16:18  12\
     文件        3336  2015-12-23 20:55  12\多边形裁剪算法.cpp
     文件       33792  2015-12-23 20:55  12\多边形裁剪算法.exe
     目录           0  2015-12-29 16:18  13\
     文件        3841  2015-12-29 16:33  13\bezier.cpp
     文件       39424  2015-12-23 16:37  13\bezier.exe
     目录           0  2015-12-29 16:37  15\
     文件       86016  2010-11-23 23:48  15\EasyIFS.exe
     文件         652  2010-11-23 09:12  15\LEVY 曲线.ifs
     文件     6333952  2015-12-25 09:57  15\LST.exe
     文件        1950  2015-12-11 10:40  1\平移旋转缩放.cpp
     文件       32256  2015-12-11 10:40  1\平移旋转缩放.exe
     目录           0  2015-12-29 16:45  2\
     文件        2417  2015-12-25 10:45  2\cube2.cpp
     目录           0  2015-12-29 16:17  4\
     文件        9188  2015-12-20 12:49  4\scene.cpp
     文件       37376  2015-12-20 12:49  4\scene.exe
     目录           0  2015-12-29 16:17  5\
     文件        3643  2015-12-29 16:29  5\line2.cpp
     文件       33792  2015-12-11 09:52  5\line2.exe
     目录           0  2015-12-29 16:17  6\
     文件        2345  2015-12-11 10:13  6\circle.cpp
     文件       31232  2015-12-11 10:13  6\circle.exe
     目录           0  2015-12-29 16:17  7\
............此处省略49个文件信息

评论

共有 条评论