• 大小: 2KB
    文件类型: .cpp
    金币: 1
    下载: 0 次
    发布日期: 2021-06-16
  • 语言: C/C++
  • 标签: 平行投影  

资源简介

华科图形学作业,正六面体平行投影,边长为1的正六面体,进行平移、比例、旋转后,向x,y平面进行平行投影,并绘出投影图

资源截图

代码片段和文件信息

#include 
#include

int ModeFlag=0;
int ShadeFlag=0;
static const float vertex_list1[][3] = 

-1.0f -1.0f -1.0f 
1.0f -1.0f -1.0f 
-1.0f 1.0f -1.0f 
1.0f 1.0f -1.0f 
-1.0f -1.0f 1.0f 
1.0f -1.0f 1.0f 
-1.0f 1.0f 1.0f 
1.0f 1.0f 1.0f 
}; 

typedef struct ColorRGB
{
GLfloat r;
GLfloat g;
GLfloat b;
};
const ColorRGB colors[4]=
{
{135.0226.056.0}
{175.0226.016.0}
{35.0216.026.0}
{115.076.0216.0}
};



static const GLint index_list[][2] = 

{0 1}    
{2 3}    
{4 5}    
{6 7}    
{0 2}    
{1 3}    
{4 6}    
{5 7}
{0 4}
{1 5}
{7 3}
{2 6}
}; 



void DrawCube()
{



int ij;

glBegin(GL_LINES); 
//gluPerspective(60.0f aspect 1.0f 200.0f); 
for(i=0; i<12; ++i) 

{
for(j=0; j<2; ++j) 

{
glColor3ub(colors[i*j%3].rcolors[i*j%3].gcolors[i*j%3].b);//以255为最大
glVertex3fv(vertex_list1[index_list[i][j]]);     
}
}
glEnd();

glPushMatrix();
glTranslatef(5.00.00.0);
glRotatef(45 0 0 1);

glBegin(GL_LINES);
for(i=0; i<12; ++i) 

{
for(j=0; j<2; ++j) 

{
glColor3ub(color

评论

共有 条评论