KONATA.C   

<

^

>


                                                                    #ifdef/**/N
                                                            /*2008[*/#include<stdlib.h>
                                                /*<>koko_ni_mebuke,<>*/#include<sys/time.h>
                                            /*]>+++++inochi_no_hana++++<[*/#include<GL/glut.h>
                                         typedef double _;typedef int s;typedef void r;struct{_ K
                                       ,S,h,I,R,A,H,i,M,E,_;}W[512],*X;_ m,n[1024][3],o[1024][3],R,
                                     KO,NA,TA,q,p,j,i,h,g,f,e,d,c,b,a,P,O,NM,M,L,K,J,I,H,G,F,E,D,C,B,A,
                                    Q;s Y,Z,k,l;_ T(_ y){return y*((rand()&32767)-16384)/16384.0;}_ U(_
                                  w,_ x,_ y,_ z){e=w+j*(x-w);f=x+j*(y-x);g=y+j*(z-y);h=e+j*(f-e);i=f+j*(
                                 g-f);return(i-h)*j+h;}r zx(r){ glutPostRedisplay();}r xz(){struct timeval
                                t;gettimeofday(&t,NULL);m=1e-6*   t.tv_usec+t.tv_sec;}GLfloat S[4][4]={{1,1
                               ,1,1},{0,1,-1,0},{0,-1,1,0},{1,     .9,.9,.8}};r zy(unsigned char z,s y,s x){
                              glFlush();exit(0);}r xy(s y,s x       ){zx();}_ V(_ w,_ x,_ y,_ z){e=j*j;f=1-j;
                              g=f*f;h=2*j*f;return 3*(-g*w+(g        -h)*x+(h-e)*y+e*z);}r yx(_ t,_ u,_ v,_ w,
                             _ x,_ y){a=u*y-x*v;b=w*v-t*y;c=          t*x-w*u;}r yz(r){xz();if(m>=q){p=q;q=m+.5
                             +(rand()&32767)/8192.;A=D;E=H;I          =L;M=P;B=D+D-C;F=H+H-G;J=L+L-K;NM=P+P-O;D=
                            T(128);H=T(128);L=T(128);C=D+0.4           *T(128);G =H+0.4*T(128);K=L+0.4*T(128);P=T(
                            Q);O=P+0.4*T(Q);}for(j=(m-p)/(q-           p);Z-Y&&m -W[Z].S>=30;Z=(Z+1)&511);if(m-W[Y]
                           .S>=0.06){Y=(Y+1)&0777;W[Y].S=m;}           X=&W[Y];X ->K=U(A,B,C,D);X->M=U(E,F,G,H);X->E
                           =U(I,J,K,L);;X->  R=V(A, B,C,D);X           ->h=V(E,F ,G,H);X->I=V(I,J,K,L);if((d=X->R*X->
                           R+X->h*X->h+X->I  *X->I) >R){X->R=          X->R/( d  =sqrt(d));X->h/=d;X->I/=d;};yx(X->R,X
                          ->h,X->I,0,0,1);X   ->i=1  ;X->A =X          ->H=0  ;  if ((d=a*a+b*b+c*c)>R){;d=sqrt(d);X->
                         i=a/d;X->A=b/d;X->   H=c/d  ;}a=X  ->         R;b=   X  ->  h;c=X->I;e=sin(X->_=U(M,NM,O,P));f
                        =cos(X->_);g=1-f;KO    =a*b;  NA=a   *         c;h       =   X->i;TA=b*c;i=X->A;d=X->H;X->i=(g*a
                       *a+f)*h+(g*KO-c*e)*i     +(g    *NA    +       b*e       )    *d;X->A=(g*KO+c*e)*h+(g*b*b+f)*i+(g*
                      TA-a*e)*d;X->H=(g*NA-      b*    e)*                           h+(g*TA+a*e)*i+(g*c*c+f)*d;n[k=Y*2][0
                     ]=W[Y].K-16*W[Y].i ;n[       k]    [1]              =W[Y].M-16*W[Y].A;n[k][2]=W[Y].E-16*W[Y].H;n[l=k+1
                    ][0]=W[Y].K+16*W[Y]. i;     n  [     l]             [1          ]=W[Y].M+16*W[Y]. A;n[l][2]=W[Y].E+16*W[
                   Y].H;yx(W[Y].R,W[Y].h  ,W[Y].I,W[Y                               ].i,W[Y].A,W[Y].H  );o[l][0]=o[k][0]=a;o[
                 l][1]=o[k][1]=b;o[l][2]=  o[                                       k][2]=c;N(glDraw, Buf,fer)(GL_BACK);N(gl,C
           ,lear)(GL_COLOR_BUFFER_BIT);b=c                                          =1;k=glutGet(GLUT_WINDOW_WIDTH);l=glutGet(
   GLUT_WINDOW_HEIGHT);d=(k>l)?(b=k/(_)l):                                         (c=l/(_)k);glViewport(0,0,k,l);glMatrixMode(
 GL_PROJECTION);glLoadIdentity();glFrustum(                                       -b,b,-c,c,10,12800);gluLookAt(1280*sin(fmod(m*
0.1,2*Q)),0,1280*cos (fmod(m*0.1,2*Q)),0,0,0                                     ,0,1,  0);glLightfv(GL_LIGHT0,GL_DIFFUSE,*S);N(gl
,Light,fv)(GL_LIGHT0,GL_SPECULAR,*S);glLightfv(                                 N(GL    ,_LIGH,T0),GL_POSITION,S[1]);glLightfv(N(G,
L_LIGHT, 0),GL_SPOT_DIRECTION,S[2]);glLightModeli(                             N(      G,L_LIGHT_MODEL_T,WO_SIDE),GL_TRUE);N(glMate,
 rialf,  v)(GL_FRONT_AND_BACK,GL_SPECULAR,S[3])                                     ;glMaterialf(GL_FRONT_AND_BACK,N(GL_ ,SHININ,ESS)
  ,4.);  glEnable(GL_COLOR_MATERIAL);N(glColorMa,            teria,              l)(    GL_FRONT_AND_BACK,GL_AMBIENT_AND_DIFFUSE);N(glMa,
    trix ,Mode)(GL_MODELVIEW);{glEnableClientState(N(          GL_            ,VE       ,RTEX_ARRAY));glLoadIdentity();} ; glEnableClientState(
       GL_NORMAL_ARRAY);glVertexPointer(3,GL_DOUBLE,0,n);                 N(g,          lNormal,Pointer)(GL_DOUBLE,0,o);N(  glBe,
         gi,n)(GL_QUAD_STRIP);glColor4d(a=0,0,0,0.);for(k=Z;k         !=Y;k             =(k+1)&511){glArrayElement(k*2);N(gl  ,Arra
        ,yElement)(k*2+1);if(a<0.8)glColor4d(1,0.53,0.67,a+=0.04);}glEnd               ();N(glut,Swap,Buffers)();glFlush();}s main(s y
       ,char**x){glutInit(&y,x);{N(glut,Init,DisplayMode)(GLUT_RGBA|N(GL,              UT_DO,UBLE));};{y=N(gl, utCreateW, indow)(
      "Konata");};{N(glut,Set,Window)(y);};{Q=atan2(0,-1);};{R=N(0.0,000,             01);};{N(glu ,tDisplay, Func)  (yz   );};{
      N(glut,Idle,Func)(zx);};{N(glut,Reshape,Func)(xy);} ;{N(glutKeyboard,            Fun,c)/*]>[- <[  ++*/(   zy)   ;};    {N(
      gl,Ena,ble)(N(GL_L,IGHT,ING));};{N(gl,Ena, ble)(N(G ,L_LIG ,HT0));  }            ;N(glBlend,  F,  unc)(   N(    GL     ,_
      ,SRC_ALPHA),GL_ONE);glEnable(GL_NORMALIZE); N(glSha ,deMod ,el)(    N           (G ,L_SMOOT,  H)  );
       glEnable(GL_BLEND);xz();srand((s)m);q=W[0].  S=m-1;C= T(  128      )           ; G=T(128);   K
         =T(128);O=T(Q);D=H=L=M=Y =Z=0;glutMainLoop(  );N(   r                       ,  etu,rn)0   ;}
        /*]>>>   +++++++++>++++*/  #else /*++ ++<  <+<  ]>                             >----.++>   */
        /**/#     include<stdio.h>  /*--         -                                     .<+++.++   */
       #/*+*/      include/*.<  +<[  */                                               <math.h>
       #define      N(x,y ,z)      x                                                  ##y##z
        #include       /* ]>        .                                                */\
          __FILE__
              #endif

  NFO RAR ZIP DETAILS SAMPLE /
2016-11-24