A..15 14_g_def_scale_3D_1.c

14_g_def_scale_3D_1.c

   1 #include<stdio.h>
   2 #include<glsc3d_3.h>
   3 #define WX     (600)
   4 #define WY     (600)
   5 
   6 #define XLEN    (2.0 * M_PI)
   7 #define YLEN    (2.0 * M_PI)
   8 #define ZLEN    (2.0 * M_PI)
   9 #define Imax    (100)
  10 #define Jmax    (100)
  11 
  12 int main()
  13 {
  14     g_init("Window", WX, WY);
  15     g_def_scale_3D_fix(0,
  16                        -XLEN / 2, XLEN / 2,
  17                        -YLEN / 2, YLEN / 2,
  18                        -ZLEN / 2, ZLEN / 2,
  19                        20.0, 20.0,
  20                        WX - 40.0, WY - 40.0);
  21     double u[Imax][Jmax];
  22     double dx = XLEN / Imax, dy = YLEN / Jmax,rx,ry;
  23 
  24     for(int i = 0;i < Imax;i ++)
  25     {
  26         rx = (i + 0.5) * dx - XLEN / 2;
  27         for(int j = 0;j < Jmax;j ++)
  28         {
  29             ry = (j + 0.5) * dy - YLEN / 2;
  30             u[i][j] = sin(rx * ry) * 0.5;
  31         }
  32     }
  33     for (int i_time = 0;; i_time++)
  34     {
  35         g_cls();
  36         g_sel_scale(0);
  37         g_boundary();
  38         g_box_center_3D_core(0, 0, 0, XLEN, YLEN, ZLEN*0.5, 0, 1, 0);
  39         g_bird_view_3D(-XLEN / 2, XLEN / 2,
  40                        -YLEN / 2, YLEN / 2,
  41                        Imax, Jmax,
  42                        u, 0, 1);
  43         g_finish();
  44     }
  45     return 0;
  46 }



桂田 祐史