资源简介
华科图形学作业,正六面体平行投影,边长为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
评论
共有 条评论