📄 draw_holder.c
字号:
glVertex3fv(bp[0][1]);
glVertex3fv(bp[0][3]);
glVertex3fv(bp[0][2]);
glEnd();
glBegin(GL_POLYGON);
glNormal3fv(bn[1]);
glVertex3fv(bp[0][2]);
glVertex3fv(bp[0][3]);
glVertex3fv(bp[0][5]);
glVertex3fv(bp[0][4]);
glEnd();
glBegin(GL_POLYGON);
glNormal3fv(bn[2]);
glVertex3fv(bp[0][4]);
glVertex3fv(bp[0][5]);
glVertex3fv(bp[0][7]);
glVertex3fv(bp[0][6]);
glEnd();
glBegin(GL_POLYGON);
glNormal3fv(bn[3]);
glVertex3fv(bp[0][6]);
glVertex3fv(bp[0][7]);
glVertex3fv(bp[0][1]);
glVertex3fv(bp[0][0]);
glEnd();
glBegin(GL_TRIANGLE_STRIP);
glNormal3fv(bn[4]);
glVertex3fv(bp[0][1]);
glVertex3fv(bp[1][0]);
glVertex3fv(bp[0][3]);
glVertex3fv(bp[1][2]);
glVertex3fv(bp[0][5]);
glVertex3fv(bp[1][4]);
glVertex3fv(bp[0][7]);
glVertex3fv(bp[1][6]);
glVertex3fv(bp[0][1]);
glVertex3fv(bp[1][0]);
glEnd();
glBegin(GL_POLYGON);
glNormal3fv(bn[0]);
glVertex3fv(bp[1][0]);
glVertex3fv(bp[1][1]);
glVertex3fv(bp[1][3]);
glVertex3fv(bp[1][2]);
glEnd();
glBegin(GL_POLYGON);
glNormal3fv(bn[1]);
glVertex3fv(bp[1][2]);
glVertex3fv(bp[1][3]);
glVertex3fv(bp[1][5]);
glVertex3fv(bp[1][4]);
glEnd();
glBegin(GL_POLYGON);
glNormal3fv(bn[2]);
glVertex3fv(bp[1][4]);
glVertex3fv(bp[1][5]);
glVertex3fv(bp[1][7]);
glVertex3fv(bp[1][6]);
glEnd();
glBegin(GL_POLYGON);
glNormal3fv(bn[3]);
glVertex3fv(bp[1][6]);
glVertex3fv(bp[1][7]);
glVertex3fv(bp[1][1]);
glVertex3fv(bp[1][0]);
glEnd();
glBegin(GL_TRIANGLE_STRIP);
glNormal3fv(bn[4]);
glVertex3fv(bp[1][1]);
glVertex3fv(bp[2][0]);
glVertex3fv(bp[1][3]);
glVertex3fv(bp[2][2]);
glVertex3fv(bp[1][5]);
glVertex3fv(bp[2][4]);
glVertex3fv(bp[1][7]);
glVertex3fv(bp[2][6]);
glVertex3fv(bp[1][1]);
glVertex3fv(bp[2][0]);
glEnd();
glBegin(GL_POLYGON);
glNormal3fv(bn[0]);
glVertex3fv(bp[2][0]);
glVertex3fv(bp[2][1]);
glVertex3fv(bp[2][3]);
glVertex3fv(bp[2][2]);
glEnd();
glBegin(GL_POLYGON);
glNormal3fv(bn[1]);
glVertex3fv(bp[2][2]);
glVertex3fv(bp[2][3]);
glVertex3fv(bp[2][5]);
glVertex3fv(bp[2][4]);
glEnd();
glBegin(GL_POLYGON);
glNormal3fv(bn[2]);
glVertex3fv(bp[2][4]);
glVertex3fv(bp[2][5]);
glVertex3fv(bp[2][7]);
glVertex3fv(bp[2][6]);
glEnd();
glBegin(GL_POLYGON);
glNormal3fv(bn[3]);
glVertex3fv(bp[2][6]);
glVertex3fv(bp[2][7]);
glVertex3fv(bp[2][1]);
glVertex3fv(bp[2][0]);
glEnd();
glBegin(GL_TRIANGLE_STRIP);
glNormal3fv(bn[4]);
glVertex3fv(bp[2][1]);
glVertex3fv(bp[3][0]);
glVertex3fv(bp[2][3]);
glVertex3fv(bp[3][2]);
glVertex3fv(bp[2][5]);
glVertex3fv(bp[3][4]);
glVertex3fv(bp[2][7]);
glVertex3fv(bp[3][6]);
glVertex3fv(bp[2][1]);
glVertex3fv(bp[3][0]);
glEnd();
glBegin(GL_POLYGON);
glNormal3fv(bn[2]);
glVertex3fv(bp[3][0]);
glVertex3fv(bp[3][1]);
glVertex3fv(bp[3][3]);
glVertex3fv(bp[3][2]);
glEnd();
glBegin(GL_POLYGON);
glNormal3fv(bn[3]);
glVertex3fv(bp[3][2]);
glVertex3fv(bp[3][3]);
glVertex3fv(bp[3][5]);
glVertex3fv(bp[3][4]);
glEnd();
glBegin(GL_POLYGON);
glNormal3fv(bn[0]);
glVertex3fv(bp[3][4]);
glVertex3fv(bp[3][5]);
glVertex3fv(bp[3][7]);
glVertex3fv(bp[3][6]);
glEnd();
glBegin(GL_POLYGON);
glNormal3fv(bn[1]);
glVertex3fv(bp[3][6]);
glVertex3fv(bp[3][7]);
glVertex3fv(bp[3][1]);
glVertex3fv(bp[3][0]);
glEnd();
glBegin(GL_POLYGON);
glNormal3fv(bn[4]);
glVertex3fv(bp[3][1]);
glVertex3fv(bp[3][3]);
glVertex3fv(bp[3][5]);
glVertex3fv(bp[3][7]);
glEnd();
}
void draw_torus(void) {
glCallList( MAT_HOLDER_RINGS);
glBegin(GL_TRIANGLE_STRIP);
glNormal3fv(tn[0][0]); glVertex3fv(tp[0][0]);
glNormal3fv(tn[1][0]); glVertex3fv(tp[1][0]);
glNormal3fv(tn[0][1]); glVertex3fv(tp[0][1]);
glNormal3fv(tn[1][1]); glVertex3fv(tp[1][1]);
glNormal3fv(tn[0][2]); glVertex3fv(tp[0][2]);
glNormal3fv(tn[1][2]); glVertex3fv(tp[1][2]);
glNormal3fv(tn[0][3]); glVertex3fv(tp[0][3]);
glNormal3fv(tn[1][3]); glVertex3fv(tp[1][3]);
glNormal3fv(tn[0][4]); glVertex3fv(tp[0][4]);
glNormal3fv(tn[1][4]); glVertex3fv(tp[1][4]);
glNormal3fv(tn[0][5]); glVertex3fv(tp[0][5]);
glNormal3fv(tn[1][5]); glVertex3fv(tp[1][5]);
glNormal3fv(tn[0][6]); glVertex3fv(tp[0][6]);
glNormal3fv(tn[1][6]); glVertex3fv(tp[1][6]);
glNormal3fv(tn[0][7]); glVertex3fv(tp[0][7]);
glNormal3fv(tn[1][7]); glVertex3fv(tp[1][7]);
glNormal3fv(tn[0][8]); glVertex3fv(tp[0][8]);
glNormal3fv(tn[1][8]); glVertex3fv(tp[1][8]);
glNormal3fv(tn[0][9]); glVertex3fv(tp[0][9]);
glNormal3fv(tn[1][9]); glVertex3fv(tp[1][9]);
glNormal3fv(tn[0][10]); glVertex3fv(tp[0][10]);
glNormal3fv(tn[1][10]); glVertex3fv(tp[1][10]);
glNormal3fv(tn[0][11]); glVertex3fv(tp[0][11]);
glNormal3fv(tn[1][11]); glVertex3fv(tp[1][11]);
glNormal3fv(tn[0][12]); glVertex3fv(tp[0][12]);
glNormal3fv(tn[1][12]); glVertex3fv(tp[1][12]);
glNormal3fv(tn[0][13]); glVertex3fv(tp[0][13]);
glNormal3fv(tn[1][13]); glVertex3fv(tp[1][13]);
glNormal3fv(tn[0][14]); glVertex3fv(tp[0][14]);
glNormal3fv(tn[1][14]); glVertex3fv(tp[1][14]);
glNormal3fv(tn[0][15]); glVertex3fv(tp[0][15]);
glNormal3fv(tn[1][15]); glVertex3fv(tp[1][15]);
glNormal3fv(tn[0][16]); glVertex3fv(tp[0][16]);
glNormal3fv(tn[1][16]); glVertex3fv(tp[1][16]);
glNormal3fv(tn[0][17]); glVertex3fv(tp[0][17]);
glNormal3fv(tn[1][17]); glVertex3fv(tp[1][17]);
glNormal3fv(tn[0][18]); glVertex3fv(tp[0][18]);
glNormal3fv(tn[1][18]); glVertex3fv(tp[1][18]);
glNormal3fv(tn[0][19]); glVertex3fv(tp[0][19]);
glNormal3fv(tn[1][19]); glVertex3fv(tp[1][19]);
glNormal3fv(tn[0][20]); glVertex3fv(tp[0][20]);
glNormal3fv(tn[1][20]); glVertex3fv(tp[1][20]);
glEnd();
glBegin(GL_TRIANGLE_STRIP);
glNormal3fv(tn[1][0]); glVertex3fv(tp[1][0]);
glNormal3fv(tn[2][0]); glVertex3fv(tp[2][0]);
glNormal3fv(tn[1][1]); glVertex3fv(tp[1][1]);
glNormal3fv(tn[2][1]); glVertex3fv(tp[2][1]);
glNormal3fv(tn[1][2]); glVertex3fv(tp[1][2]);
glNormal3fv(tn[2][2]); glVertex3fv(tp[2][2]);
glNormal3fv(tn[1][3]); glVertex3fv(tp[1][3]);
glNormal3fv(tn[2][3]); glVertex3fv(tp[2][3]);
glNormal3fv(tn[1][4]); glVertex3fv(tp[1][4]);
glNormal3fv(tn[2][4]); glVertex3fv(tp[2][4]);
glNormal3fv(tn[1][5]); glVertex3fv(tp[1][5]);
glNormal3fv(tn[2][5]); glVertex3fv(tp[2][5]);
glNormal3fv(tn[1][6]); glVertex3fv(tp[1][6]);
glNormal3fv(tn[2][6]); glVertex3fv(tp[2][6]);
glNormal3fv(tn[1][7]); glVertex3fv(tp[1][7]);
glNormal3fv(tn[2][7]); glVertex3fv(tp[2][7]);
glNormal3fv(tn[1][8]); glVertex3fv(tp[1][8]);
glNormal3fv(tn[2][8]); glVertex3fv(tp[2][8]);
glNormal3fv(tn[1][9]); glVertex3fv(tp[1][9]);
glNormal3fv(tn[2][9]); glVertex3fv(tp[2][9]);
glNormal3fv(tn[1][10]); glVertex3fv(tp[1][10]);
glNormal3fv(tn[2][10]); glVertex3fv(tp[2][10]);
glNormal3fv(tn[1][11]); glVertex3fv(tp[1][11]);
glNormal3fv(tn[2][11]); glVertex3fv(tp[2][11]);
glNormal3fv(tn[1][12]); glVertex3fv(tp[1][12]);
glNormal3fv(tn[2][12]); glVertex3fv(tp[2][12]);
glNormal3fv(tn[1][13]); glVertex3fv(tp[1][13]);
glNormal3fv(tn[2][13]); glVertex3fv(tp[2][13]);
glNormal3fv(tn[1][14]); glVertex3fv(tp[1][14]);
glNormal3fv(tn[2][14]); glVertex3fv(tp[2][14]);
glNormal3fv(tn[1][15]); glVertex3fv(tp[1][15]);
glNormal3fv(tn[2][15]); glVertex3fv(tp[2][15]);
glNormal3fv(tn[1][16]); glVertex3fv(tp[1][16]);
glNormal3fv(tn[2][16]); glVertex3fv(tp[2][16]);
glNormal3fv(tn[1][17]); glVertex3fv(tp[1][17]);
glNormal3fv(tn[2][17]); glVertex3fv(tp[2][17]);
glNormal3fv(tn[1][18]); glVertex3fv(tp[1][18]);
glNormal3fv(tn[2][18]); glVertex3fv(tp[2][18]);
glNormal3fv(tn[1][19]); glVertex3fv(tp[1][19]);
glNormal3fv(tn[2][19]); glVertex3fv(tp[2][19]);
glNormal3fv(tn[1][20]); glVertex3fv(tp[1][20]);
glNormal3fv(tn[2][20]); glVertex3fv(tp[2][20]);
glEnd();
glBegin(GL_TRIANGLE_STRIP);
glNormal3fv(tn[2][0]); glVertex3fv(tp[2][0]);
glNormal3fv(tn[3][0]); glVertex3fv(tp[3][0]);
glNormal3fv(tn[2][1]); glVertex3fv(tp[2][1]);
glNormal3fv(tn[3][1]); glVertex3fv(tp[3][1]);
glNormal3fv(tn[2][2]); glVertex3fv(tp[2][2]);
glNormal3fv(tn[3][2]); glVertex3fv(tp[3][2]);
glNormal3fv(tn[2][3]); glVertex3fv(tp[2][3]);
glNormal3fv(tn[3][3]); glVertex3fv(tp[3][3]);
glNormal3fv(tn[2][4]); glVertex3fv(tp[2][4]);
glNormal3fv(tn[3][4]); glVertex3fv(tp[3][4]);
glNormal3fv(tn[2][5]); glVertex3fv(tp[2][5]);
glNormal3fv(tn[3][5]); glVertex3fv(tp[3][5]);
glNormal3fv(tn[2][6]); glVertex3fv(tp[2][6]);
glNormal3fv(tn[3][6]); glVertex3fv(tp[3][6]);
glNormal3fv(tn[2][7]); glVertex3fv(tp[2][7]);
glNormal3fv(tn[3][7]); glVertex3fv(tp[3][7]);
glNormal3fv(tn[2][8]); glVertex3fv(tp[2][8]);
glNormal3fv(tn[3][8]); glVertex3fv(tp[3][8]);
glNormal3fv(tn[2][9]); glVertex3fv(tp[2][9]);
glNormal3fv(tn[3][9]); glVertex3fv(tp[3][9]);
glNormal3fv(tn[2][10]); glVertex3fv(tp[2][10]);
glNormal3fv(tn[3][10]); glVertex3fv(tp[3][10]);
glNormal3fv(tn[2][11]); glVertex3fv(tp[2][11]);
glNormal3fv(tn[3][11]); glVertex3fv(tp[3][11]);
glNormal3fv(tn[2][12]); glVertex3fv(tp[2][12]);
glNormal3fv(tn[3][12]); glVertex3fv(tp[3][12]);
glNormal3fv(tn[2][13]); glVertex3fv(tp[2][13]);
glNormal3fv(tn[3][13]); glVertex3fv(tp[3][13]);
glNormal3fv(tn[2][14]); glVertex3fv(tp[2][14]);
glNormal3fv(tn[3][14]); glVertex3fv(tp[3][14]);
glNormal3fv(tn[2][15]); glVertex3fv(tp[2][15]);
glNormal3fv(tn[3][15]); glVertex3fv(tp[3][15]);
glNormal3fv(tn[2][16]); glVertex3fv(tp[2][16]);
glNormal3fv(tn[3][16]); glVertex3fv(tp[3][16]);
glNormal3fv(tn[2][17]); glVertex3fv(tp[2][17]);
glNormal3fv(tn[3][17]); glVertex3fv(tp[3][17]);
glNormal3fv(tn[2][18]); glVertex3fv(tp[2][18]);
glNormal3fv(tn[3][18]); glVertex3fv(tp[3][18]);
glNormal3fv(tn[2][19]); glVertex3fv(tp[2][19]);
glNormal3fv(tn[3][19]); glVertex3fv(tp[3][19]);
glNormal3fv(tn[2][20]); glVertex3fv(tp[2][20]);
glNormal3fv(tn[3][20]); glVertex3fv(tp[3][20]);
glEnd();
glBegin(GL_TRIANGLE_STRIP);
glNormal3fv(tn[3][0]); glVertex3fv(tp[3][0]);
glNormal3fv(tn[4][0]); glVertex3fv(tp[4][0]);
glNormal3fv(tn[3][1]); glVertex3fv(tp[3][1]);
glNormal3fv(tn[4][1]); glVertex3fv(tp[4][1]);
glNormal3fv(tn[3][2]); glVertex3fv(tp[3][2]);
glNormal3fv(tn[4][2]); glVertex3fv(tp[4][2]);
glNormal3fv(tn[3][3]); glVertex3fv(tp[3][3]);
glNormal3fv(tn[4][3]); glVertex3fv(tp[4][3]);
glNormal3fv(tn[3][4]); glVertex3fv(tp[3][4]);
glNormal3fv(tn[4][4]); glVertex3fv(tp[4][4]);
glNormal3fv(tn[3][5]); glVertex3fv(tp[3][5]);
glNormal3fv(tn[4][5]); glVertex3fv(tp[4][5]);
glNormal3fv(tn[3][6]); glVertex3fv(tp[3][6]);
glNormal3fv(tn[4][6]); glVertex3fv(tp[4][6]);
glNormal3fv(tn[3][7]); glVertex3fv(tp[3][7]);
glNormal3fv(tn[4][7]); glVertex3fv(tp[4][7]);
glNormal3fv(tn[3][8]); glVertex3fv(tp[3][8]);
glNormal3fv(tn[4][8]); glVertex3fv(tp[4][8]);
glNormal3fv(tn[3][9]); glVertex3fv(tp[3][9]);
glNormal3fv(tn[4][9]); glVertex3fv(tp[4][9]);
glNormal3fv(tn[3][10]); glVertex3fv(tp[3][10]);
glNormal3fv(tn[4][10]); glVertex3fv(tp[4][10]);
glNormal3fv(tn[3][11]); glVertex3fv(tp[3][11]);
glNormal3fv(tn[4][11]); glVertex3fv(tp[4][11]);
glNormal3fv(tn[3][12]); glVertex3fv(tp[3][12]);
glNormal3fv(tn[4][12]); glVertex3fv(tp[4][12]);
glNormal3fv(tn[3][13]); glVertex3fv(tp[3][13]);
glNormal3fv(tn[4][13]); glVertex3fv(tp[4][13]);
glNormal3fv(tn[3][14]); glVertex3fv(tp[3][14]);
glNormal3fv(tn[4][14]); glVertex3fv(tp[4][14]);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -