• 大小: 192KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-06-01
  • 语言: 其他
  • 标签: opengl  棱锥  

资源简介

利用opengl 通过坐标系,通过点和面组合成棱锥

资源截图

代码片段和文件信息

#include “gl/glut.h“
#include 

int widthheight;

void render()
{
glClear( GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT );

//glRotatef(0.51.01.00.0);
glBegin(GL_TRIANGLES);
//glColor3f( 1.0 1.0 0.0 );
glVertex3f(width/2 0.0 -height/2);
//glColor3f( 1.0 1.0 0.0 );
glVertex3f(0.0 height/2 -height/2);
//glColor3f( 1.0 1.0 0.0 );
glVertex3f(0.0 0.0height/2);
glEnd();

/* glBegin(GL_TRIANGLES);
//glColor3f( 1.0 0.0 0.0 );
glVertex3f(width/2 0.0 -height/2);
//glColor3f( 1.0 0.0 0.0 );
glVertex3f(0.0 -height/2 -height/2);
//glColor3f( 1.0 0.0 0.0 );
glVertex3f(0.0 0.0height/2);
glEnd();

glBegin(GL_TRIANGLES);
//glColor3f( 0.0 1.0 0.0 );
glVertex3f(0.0 -height/2 -height/2);
//glColor3f( 0.0 1.0 0.0 );
glVertex3f(-width/2 0.0 -height/2);
// glColor3f( 0.0 1.0 0.0 );
glVertex3f(0.0 0.0height/2);
glEnd();

glBegin(GL_TRIANGLES);
//glColor3f( 0.0 0.0 1.0 );
glVertex3f(-width/2 0.0 -height/2);
//glColor3f( 0.0 0.0 1.0 );
glVertex3f(0.0 height/2 -height/2);
//glColor3f( 0.0 0.0 1.0 );
glVertex3f(0.0 0.0height/2);
glEnd();

glBegin(GL_POLYGON);
//glColor3f(0.01.01.0);
glVertex3f(width/20.0-height/2);
//glColor3f(0.01.01.0);
glVertex3f(0.0-height/2-height/2);
//glColor3f(0.01.01.0);
glVertex3f(-width/20.0-height/2);
//glColor3f(0.01.01.0);
glVertex3f(0.0height/2-height/2);
*/
glEnd();
glFlush();
glutSwapBuffers();
}

void keyboard( unsigned char key int x int y )
{
switch( key ) 
{
case ‘q‘ : 
case ‘Q‘ :
exit( 0 );
break;
case ‘r‘ : case ‘R‘ :
glutPostRedisplay();
break;

}
}


void init()
{
glClearColor(0.0f 0.0f 0.0f 1.0f);
glEnable(GL_DEPTH_TEST);
//glEnable(GL_LIGHTING);
//glEnable(GL_LIGHT0);
}

void idle()
{
glutPostRedisplay();
}

void reshape(int wint h)
{
glViewport(00wh);
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
glOrtho(-w/2w/2-h/2h/2-w/2w/2);
glMatrixMode(GL_MODELVIEW);
glLoadIdentity();

width = w/2.0;
height = h/2.0;
}

void main()
{
glutInitDisplayMode(GLUT_DEPTH | GLUT_DOUBLE | GLUT_RGBA);
glutInitWindowPosition(100100);
glutInitWindowSize(500500);
glutCreateWindow(“3D Tech- GLUT Tutorial“);

init();

glutDisplayFunc(render);
glutReshapeFunc(reshape);
glutIdleFunc(idle);
glutKeyboardFunc( keyboard );

glutMainLoop();
}

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       3942  2010-04-26 10:34  棱锥\assignment1\assignment1.vcproj

     文件       1413  2010-04-26 11:01  棱锥\assignment1\assignment1.vcproj.COMPUTER.Administrator.user

     文件        663  2010-04-26 10:34  棱锥\assignment1\Debug\assignment1.exe.embed.manifest

     文件        728  2010-04-26 10:34  棱锥\assignment1\Debug\assignment1.exe.embed.manifest.res

     文件        621  2010-06-14 20:25  棱锥\assignment1\Debug\assignment1.exe.intermediate.manifest

     文件       6488  2010-06-14 20:25  棱锥\assignment1\Debug\BuildLog.htm

     文件         67  2010-06-14 20:25  棱锥\assignment1\Debug\mt.dep

     文件      11926  2010-06-14 20:25  棱锥\assignment1\Debug\opengl.obj

     文件      27648  2010-06-14 20:25  棱锥\assignment1\Debug\vc90.idb

     文件      53248  2010-06-14 20:25  棱锥\assignment1\Debug\vc90.pdb

     文件       1427  2010-06-14 20:26  棱锥\assignment1\assignment1.vcproj.PC-200809101318.Administrator.user

     文件       2502  2010-06-14 20:25  棱锥\assignment1\opengl.c

     文件        904  2010-04-26 10:33  棱锥\assignment1.sln

    ..A..H.      9728  2010-06-14 20:26  棱锥\assignment1.suo

     文件      31744  2010-06-14 20:25  棱锥\Debug\assignment1.exe

     文件     402968  2010-06-14 20:25  棱锥\Debug\assignment1.ilk

     文件     437248  2010-06-14 20:25  棱锥\Debug\assignment1.pdb

     文件     379904  2010-06-14 20:26  棱锥\assignment1.ncb

     目录          0  2010-04-26 16:38  棱锥\assignment1\Debug

     目录          0  2010-04-26 16:38  棱锥\assignment1

     目录          0  2010-04-26 16:38  棱锥\Debug

     目录          0  2010-04-26 16:38  棱锥

----------- ---------  ---------- -----  ----

              1373169                    22


评论

共有 条评论