zoukankan      html  css  js  c++  java
  • OPenGL 画球代码

     1 #include <GL/glut.h>
     2 #include<cstdio>
     3 #include<cmath>
     4 
     5 #define PI 3.14159265358979323846
     6 #define PI2 6.28318530717958647692
     7 #define r 80
     8 
     9 GLsizei width = 600,height = 600;
    10 
    11 int uStepsNum = 25;
    12 
    13 
    14 void Init()
    15 {
    16       glClearColor(1,1,1,1);
    17       glClearDepth(1);
    18       glClear(GL_COLOR_BUFFER_BIT|GL_DEPTH_BUFFER_BIT);
    19       glOrtho(100.0, -100.0 ,100.0, -100.0, 100.0, -100.0);
    20 
    21 
    22       glRotated(30,1,0,0);
    23       glRotated(60,0,1,0);
    24       glRotated(0,0,0,1);
    25 
    26 }
    27 
    28 void displayFunc()
    29 {
    30 
    31     double i,j;
    32     double w = 1/(double)uStepsNum;    
    33     glColor3f(1.0,0.0,0.0);
    34     for(i=0;i<=1;i+=w)
    35     {
    36         glBegin(GL_LINE_LOOP);
    37         for(j=0;j<=1;j+=w)
    38         {     
    39            double x=r*sin(PI*i)*cos(PI2*j);
    40            double y=r*sin(PI*i)*sin(PI2*j);
    41            double z=r*cos(PI*i);
    42            glVertex3d(x,y,z);   
    43         }
    44         glEnd();
    45     }
    46     glColor3f(0.0,1.0,0.0);
    47     glBegin(GL_LINE_LOOP);
    48    for(i=0;i<=1+w;i+=w)
    49     {
    50         
    51         for(j=0;j<=1+w;j+=w)
    52         {     
    53            double x=r*sin(PI*j)*cos(PI2*i);
    54            double y=r*sin(PI*j)*sin(PI2*i);
    55            double z=r*cos(PI*j);
    56            glVertex3d(x,y,z);   
    57         }
    58         
    59     }
    60     glEnd();
    61 
    62     glutSwapBuffers();
    63 }
    64 
    65 
    66 int main(int argc,char* argv[])
    67 {
    68     glutInit(&argc,argv);
    69     glutInitDisplayMode(GLUT_DOUBLE|GLUT_RGB);
    70     glutInitWindowPosition(100,100);
    71     glutInitWindowSize(width,height);
    72     glutCreateWindow("球体");
    73     Init();
    74     glutDisplayFunc(displayFunc);
    75     glutMainLoop();
    76 }
  • 相关阅读:
    day 15 小结
    python中的数据类型以及格式化输出
    编程语言简介
    计算机简介
    堆排
    Lock锁
    JVM入门
    Java中反射调用私有方法出现NoSuchMethodException
    1248. 统计「优美子数组」
    注解
  • 原文地址:https://www.cnblogs.com/pblr/p/5583916.html
Copyright © 2011-2022 走看看