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

资源简介

演示一个不断旋转、缩放和移动的正三棱锥。要求正三棱锥 4 个面 的颜色各不相同。

资源截图

代码片段和文件信息

#include
#include
#include
#include
#include

float pi = 3.1415926;
float time;

void Timer(int millis)
{
float dtime = 5;
time = fmod(time + dtime 360);
glutPostRedisplay();
glutTimerFunc(millis Timer millis);
}
void Reshape(int w int h)
{
glViewport(0 0 w h);
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
gluPerspective(30 (float)w / h 1 1000);
glTranslatef(0 0 -8);
glRotatef(30 1 0 0);
glMatrixMode(GL_MODELVIEW);
glLoadIdentity();
}
void triangle(float r)
{
glPushMatrix();
glColor3f(1 0 0);
glTranslatef(0 0 r*sin(pi / 3) / 3);
glRotatef(-19.47 1 0 0);
glBegin(GL_TRIANGLES);
{
glVertex2f(-r / 2 0);
glVertex2f(r / 2 0);
glVertex2f(0 r*sin(pi / 3));
}
glEnd();
glPopMatrix();


glPushMatrix();
glColor3f(0 1 0);
glRotatef(120 0 1 0);
glTranslatef(0 0 r*sin(pi / 3) / 3);
glRotatef(-19.47 1 0 0);
glBegin(GL_TRIANGLES);
{
glVertex2f(-r / 2 0);
glVertex2f(r / 2 0);
glVertex2f(0 r*sin(pi / 3));
}
glEnd();
glPopMatrix();

glPush

评论

共有 条评论