亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? olympic.c

?? 詳細介紹c++編程
?? C
字號:
#include <windows.h>
#include <time.h>

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <math.h>
#include <sys/types.h>
#include <GL/glaux.h>

#define M_PI	3.14159265f

#define sinf(x) (float)sin((x))
#define cosf(x) (float)cos((x))
#define XSIZE   100
#define YSIZE   75

#define RINGS 5
#define BLUERING 0
#define BLACKRING 1
#define REDRING 2
#define YELLOWRING 3
#define GREENRING 4

#define BACKGROUND 8

enum {
  BLACK = 0,
  RED,
  GREEN,
  YELLOW,
  BLUE,
  MAGENTA,
  CYAN,
  WHITE
};

typedef short Point[2];

GLenum directRender;

unsigned char rgb_colors[RINGS][3];
int mapped_colors[RINGS];
float dests[RINGS][3];
float offsets[RINGS][3];
float angs[RINGS];
float rotAxis[RINGS][3];
int iters[RINGS];
GLuint theTorus;

void FillTorus(float rc, int numc, float rt, int numt)
{
  int i, j, k;
  float s, t;
  float x, y, z;
  float pi, twopi;

  pi = M_PI;
  twopi = 2 * pi;

  for (i = 0; i < numc; i++) {
    glBegin(GL_QUAD_STRIP);
    for (j = 0; j <= numt; j++) {
      for (k = 1; k >= 0; k--) {
        s = (float)((i + k) % numc + 0.5f);
        t = (float)(j % numt);

        x = cosf(t * twopi / numt) * cosf(s * twopi / numc);
        y = sinf(t * twopi / numt) * cosf(s * twopi / numc);
        z = sinf(s * twopi / numc);
        glNormal3f(x, y, z);

        x = (rt + rc * cosf(s * twopi / numc)) * cosf(t * twopi / numt);
        y = (rt + rc * cosf(s * twopi / numc)) * sinf(t * twopi / numt);
        z = rc * sinf(s * twopi / numc);
        glVertex3f(x, y, z);
      }
    }
    glEnd();
  }
}

float Clamp(int iters_left, float t)
{

  if (iters_left < 3) {
    return 0.0;
  }
  return (iters_left - 2) * t / iters_left;
}

void CALLBACK DrawScene(void)
{
  int i;

  glPushMatrix();

  glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
  gluLookAt(0, 0, 10, 0, 0, 0, 0, 1, 0);

  for (i = 0; i < RINGS; i++) {
    glColor3ubv(rgb_colors[i]);
    glPushMatrix();
    glTranslatef(dests[i][0] + offsets[i][0], 
		         dests[i][1] + offsets[i][1],
                 dests[i][2] + offsets[i][2]);
    glRotatef(angs[i], rotAxis[i][0], rotAxis[i][1], rotAxis[i][2]);
    glCallList(theTorus);
    glPopMatrix();
  }
  glPopMatrix();
  auxSwapBuffers();
}

void CALLBACK Idle(void)
{
  int i, j;
  int more = GL_FALSE;
  for (i = 0; i < RINGS; i++) {
    if (iters[i]) {
      for (j = 0; j < 3; j++) {
        offsets[i][j] = Clamp(iters[i], offsets[i][j]);
      }
      angs[i] = Clamp(iters[i], angs[i]);
      iters[i]--;
	  more = GL_TRUE;
    }
  }
  if(more) {
    DrawScene();
  } else {
	auxIdleFunc(NULL);
  }
}

float MyRand(void)
{
  return 10.0f * ( ((float) rand())/((float) RAND_MAX) - 0.5f);
}

void ReInit(void)
{
  int i;
  float deviation;

  deviation = MyRand() / 2.0f;
  deviation = deviation * deviation;
  for (i = 0; i < RINGS; i++) {
    offsets[i][0] = MyRand();
    offsets[i][1] = MyRand();
    offsets[i][2] = MyRand();
    angs[i] = 260.0f * MyRand();
    rotAxis[i][0] = MyRand();
    rotAxis[i][1] = MyRand();
    rotAxis[i][2] = MyRand();
    iters[i] = (int)(deviation * MyRand() + 60);
  }
}

void Init(void)
{
  int i;
  float top_y = 1.0f;
  float bottom_y = 0.0f;
  float top_z = 0.15f;
  float bottom_z = 0.69f;
  float spacing = 2.5f;
  static float lmodel_ambient[] = {0.0f, 0.0f, 0.0f, 0.0f};
  static float lmodel_twoside[] = {GL_FALSE};
  static float lmodel_local[] = {GL_FALSE};
  static float light0_ambient[] = {0.1f, 0.1f, 0.1f, 1.0f};
  static float light0_diffuse[] = {1.0f, 1.0f, 1.0f, 0.0f};
  static float light0_position[] = {0.8660254f, 0.5f, 1.0f, 0.0f};
  static float light0_specular[] = {1.0f, 1.0f, 1.0f, 0.0f};
  static float bevel_mat_ambient[] = {0.0f, 0.0f, 0.0f, 1.0f};
  static float bevel_mat_shininess[] = {40.0f};
  static float bevel_mat_specular[] = {1.0f, 1.0f, 1.0f, 0.0f};
  static float bevel_mat_diffuse[] = {1.0f, 0.0f, 0.0f, 0.0f};

  srand(time(NULL));
  ReInit();
  for (i = 0; i < RINGS; i++) {
    rgb_colors[i][0] = rgb_colors[i][1] = rgb_colors[i][2] = 0;
  }
  rgb_colors[BLUERING][2] = 255;
  rgb_colors[REDRING][0] = 255;
  rgb_colors[GREENRING][1] = 255;
  rgb_colors[YELLOWRING][0] = 255;
  rgb_colors[YELLOWRING][1] = 255;
  mapped_colors[BLUERING] = BLUE;
  mapped_colors[REDRING] = RED;
  mapped_colors[GREENRING] = GREEN;
  mapped_colors[YELLOWRING] = YELLOW;
  mapped_colors[BLACKRING] = BLACK;

  dests[BLUERING][0] = -spacing;
  dests[BLUERING][1] = top_y;
  dests[BLUERING][2] = top_z;

  dests[BLACKRING][0] = 0.0;
  dests[BLACKRING][1] = top_y;
  dests[BLACKRING][2] = top_z;

  dests[REDRING][0] = spacing;
  dests[REDRING][1] = top_y;
  dests[REDRING][2] = top_z;

  dests[YELLOWRING][0] = -spacing / 2.0f;
  dests[YELLOWRING][1] = bottom_y;
  dests[YELLOWRING][2] = bottom_z;

  dests[GREENRING][0] = spacing / 2.0f;
  dests[GREENRING][1] = bottom_y;
  dests[GREENRING][2] = bottom_z;

  theTorus = glGenLists(1);
  glNewList(theTorus, GL_COMPILE);
  FillTorus(0.1f, 8, 1.0f, 25);
  glEndList();

  glEnable(GL_CULL_FACE);
  glCullFace(GL_BACK);
  glEnable(GL_DEPTH_TEST);
  glClearDepth(1.0);

  glClearColor(0.5, 0.5, 0.5, 0.0);
  glLightfv(GL_LIGHT0, GL_AMBIENT, light0_ambient);
  glLightfv(GL_LIGHT0, GL_DIFFUSE, light0_diffuse);
  glLightfv(GL_LIGHT0, GL_SPECULAR, light0_specular);
  glLightfv(GL_LIGHT0, GL_POSITION, light0_position);
  glEnable(GL_LIGHT0);

  glLightModelfv(GL_LIGHT_MODEL_LOCAL_VIEWER, lmodel_local);
  glLightModelfv(GL_LIGHT_MODEL_TWO_SIDE, lmodel_twoside);
  glLightModelfv(GL_LIGHT_MODEL_AMBIENT, lmodel_ambient);
  glEnable(GL_LIGHTING);

  glMaterialfv(GL_FRONT, GL_AMBIENT, bevel_mat_ambient);
  glMaterialfv(GL_FRONT, GL_SHININESS, bevel_mat_shininess);
  glMaterialfv(GL_FRONT, GL_SPECULAR, bevel_mat_specular);
  glMaterialfv(GL_FRONT, GL_DIFFUSE, bevel_mat_diffuse);

  glColorMaterial(GL_FRONT_AND_BACK, GL_DIFFUSE);
  glEnable(GL_COLOR_MATERIAL);
  glShadeModel(GL_SMOOTH);
 
  glMatrixMode(GL_PROJECTION);
  gluPerspective(45, 1.33, 0.1, 100.0);
  glMatrixMode(GL_MODELVIEW);
}

void CALLBACK Reshape(int width, int height)
{
  glViewport(0, 0, width, height);
}

void main(int argc, char **argv)
{
  auxInitPosition(0, 0, 400, 300);
  auxInitDisplayMode(AUX_RGB|AUX_DOUBLE);
  auxInitWindow("Olympic");
  Init();
  auxReshapeFunc(Reshape);
  auxIdleFunc(Idle);
  auxMainLoop(DrawScene);
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
中文字幕乱码久久午夜不卡| 91精品国产欧美一区二区18| 3d动漫精品啪啪一区二区竹菊| 欧美日韩精品电影| 日本国产一区二区| 欧美岛国在线观看| 麻豆一区二区99久久久久| 欧美一区二区三区视频在线 | 最新久久zyz资源站| 国产精品自拍三区| 欧美韩国一区二区| 粉嫩欧美一区二区三区高清影视| 久久久夜色精品亚洲| 国产麻豆一精品一av一免费| 久久网站热最新地址| 国产成人精品一区二区三区网站观看| 日韩精品专区在线影院观看| 久久精品国产99国产| 精品国产精品网麻豆系列| 激情综合色综合久久| 中文字幕乱码日本亚洲一区二区 | 欧美老肥妇做.爰bbww| 午夜av一区二区三区| 亚洲精品一区二区三区影院| 粉嫩av一区二区三区| 亚洲午夜av在线| 久久亚洲二区三区| 在线欧美一区二区| 国产老女人精品毛片久久| 亚洲国产精品视频| 91麻豆精品国产自产在线观看一区| 日产国产高清一区二区三区| 欧美岛国在线观看| 欧美三级视频在线| 懂色av中文字幕一区二区三区| 一区二区三区欧美日韩| 亚洲精品一区在线观看| 欧美日韩在线播放一区| 国产久卡久卡久卡久卡视频精品| 亚洲天天做日日做天天谢日日欢| 欧美色国产精品| gogo大胆日本视频一区| 麻豆精品视频在线观看免费| 国产精品卡一卡二卡三| 精品国产免费一区二区三区香蕉| 欧亚一区二区三区| 91美女片黄在线观看| 国产91丝袜在线观看| 黄网站免费久久| 美腿丝袜亚洲色图| 日日骚欧美日韩| 亚洲一二三四久久| 国产视频一区二区在线| 欧美日韩一区成人| 欧美日韩第一区日日骚| 欧美三级日韩三级| 亚洲色图视频网站| 日本道在线观看一区二区| 极品少妇xxxx精品少妇| 秋霞电影网一区二区| 轻轻草成人在线| 日本欧美加勒比视频| 老鸭窝一区二区久久精品| 国产乱子伦视频一区二区三区| 久久99久久久欧美国产| 国产大片一区二区| 99久久综合狠狠综合久久| 色综合天天在线| 在线观看91视频| 日韩免费高清视频| 日本一区二区三区四区在线视频| 久久久亚洲午夜电影| 亚洲精品成a人| 免费成人小视频| 色素色在线综合| 精品1区2区在线观看| 亚洲精品高清在线观看| 激情欧美一区二区三区在线观看| 国产精品中文字幕日韩精品| 在线观看视频欧美| 国产亚洲欧美一级| 日本亚洲视频在线| 在线日韩国产精品| 国产午夜一区二区三区| 天天操天天色综合| 国产精品小仙女| 日韩精品一区二区三区四区视频 | 老司机精品视频线观看86| 不卡视频一二三| 久久精品视频在线看| 午夜亚洲国产au精品一区二区| 国产精品综合一区二区三区| 在线观看亚洲成人| 亚洲狠狠丁香婷婷综合久久久| 国产一区二区在线免费观看| 884aa四虎影成人精品一区| 国产精品不卡一区| av高清不卡在线| 国产精品护士白丝一区av| 国产精品456露脸| 欧美精品一区二区三区蜜臀 | 国产精品全国免费观看高清| 韩国精品主播一区二区在线观看 | eeuss国产一区二区三区| 久久综合九色综合97婷婷女人| 久久国产剧场电影| 国产欧美视频一区二区三区| 成人做爰69片免费看网站| 亚洲国产精品国自产拍av| 99精品欧美一区二区三区小说| 欧美韩国一区二区| 91麻豆免费看| 亚洲高清免费视频| 欧美精品一区二区三区蜜桃| 国产一区视频在线看| 国产精品视频一二| 欧美美女bb生活片| 韩国v欧美v亚洲v日本v| 国产精品久久久久久久午夜片| a美女胸又www黄视频久久| 亚洲第一精品在线| 久久久精品国产免大香伊| 99久久综合色| 国产白丝精品91爽爽久久| 国产偷国产偷精品高清尤物| 成人av午夜影院| 日韩电影在线看| 日韩欧美一卡二卡| 91免费国产在线| 久久99国产精品尤物| 亚洲欧洲一区二区三区| 欧美成人官网二区| 欧美日韩精品免费| 成人av综合在线| 国产精品69毛片高清亚洲| 亚洲午夜精品17c| 日韩美女啊v在线免费观看| 精品久久人人做人人爽| 欧美日韩在线免费视频| 99精品在线免费| 丁香桃色午夜亚洲一区二区三区| 亚洲第一主播视频| 亚洲成在人线在线播放| 亚洲丝袜另类动漫二区| 日本一区二区三区电影| 日韩精品在线网站| 日韩精品一区国产麻豆| 日韩欧美视频一区| 日韩欧美视频在线| 精品美女一区二区三区| 在线不卡免费欧美| 337p亚洲精品色噜噜| 91精品欧美福利在线观看| 在线观看日韩毛片| 欧美日韩国产在线播放网站| 777奇米四色成人影色区| 极品少妇xxxx精品少妇| 蜜臀av一区二区在线免费观看| 日韩精品国产欧美| 色婷婷综合五月| 97se亚洲国产综合在线| 日韩电影在线看| 亚洲综合久久av| 中文字幕在线视频一区| 欧美va亚洲va国产综合| 欧美日韩三级一区二区| 99国产精品久久| 成人av在线电影| 国产成人自拍在线| 极品销魂美女一区二区三区| 亚洲女性喷水在线观看一区| 久久亚洲二区三区| 久久久久久影视| 精品日韩一区二区| 久久伊人中文字幕| 久久综合久久综合久久综合| 9191久久久久久久久久久| 91黄色免费观看| 色屁屁一区二区| 精品视频1区2区| 欧美撒尿777hd撒尿| 欧美男人的天堂一二区| 欧美日本在线视频| 欧美一区二区日韩| 91精品久久久久久蜜臀| 精品久久国产老人久久综合| 日韩一卡二卡三卡四卡| 日韩欧美黄色影院| 欧美激情在线观看视频免费| 国产精品视频麻豆| 亚洲一区二区三区在线看| 日韩av在线播放中文字幕| 国产一区二区三区免费播放| 成人ar影院免费观看视频| 欧美日韩一本到| 久久久美女毛片| 亚洲mv大片欧洲mv大片精品| 国产伦精一区二区三区| 在线欧美小视频| 欧美国产日本韩|