Xcode/TemplatesForXcodeTiger/SDL OpenGL Application/atlantis/dolphin.c
branchSDL-1.2
changeset 5895 402eac854030
equal deleted inserted replaced
5894:414b2fa01526 5895:402eac854030
       
     1 /**
       
     2  * (c) Copyright 1993, 1994, Silicon Graphics, Inc.
       
     3  * ALL RIGHTS RESERVED
       
     4  * Permission to use, copy, modify, and distribute this software for
       
     5  * any purpose and without fee is hereby granted, provided that the above
       
     6  * copyright notice appear in all copies and that both the copyright notice
       
     7  * and this permission notice appear in supporting documentation, and that
       
     8  * the name of Silicon Graphics, Inc. not be used in advertising
       
     9  * or publicity pertaining to distribution of the software without specific,
       
    10  * written prior permission.
       
    11  *
       
    12  * THE MATERIAL EMBODIED ON THIS SOFTWARE IS PROVIDED TO YOU "AS-IS"
       
    13  * AND WITHOUT WARRANTY OF ANY KIND, EXPRESS, IMPLIED OR OTHERWISE,
       
    14  * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY OR
       
    15  * FITNESS FOR A PARTICULAR PURPOSE.  IN NO EVENT SHALL SILICON
       
    16  * GRAPHICS, INC.  BE LIABLE TO YOU OR ANYONE ELSE FOR ANY DIRECT,
       
    17  * SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY
       
    18  * KIND, OR ANY DAMAGES WHATSOEVER, INCLUDING WITHOUT LIMITATION,
       
    19  * LOSS OF PROFIT, LOSS OF USE, SAVINGS OR REVENUE, OR THE CLAIMS OF
       
    20  * THIRD PARTIES, WHETHER OR NOT SILICON GRAPHICS, INC.  HAS BEEN
       
    21  * ADVISED OF THE POSSIBILITY OF SUCH LOSS, HOWEVER CAUSED AND ON
       
    22  * ANY THEORY OF LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE
       
    23  * POSSESSION, USE OR PERFORMANCE OF THIS SOFTWARE.
       
    24  *
       
    25  * US Government Users Restricted Rights
       
    26  * Use, duplication, or disclosure by the Government is subject to
       
    27  * restrictions set forth in FAR 52.227.19(c)(2) or subparagraph
       
    28  * (c)(1)(ii) of the Rights in Technical Data and Computer Software
       
    29  * clause at DFARS 252.227-7013 and/or in similar or successor
       
    30  * clauses in the FAR or the DOD or NASA FAR Supplement.
       
    31  * Unpublished-- rights reserved under the copyright laws of the
       
    32  * United States.  Contractor/manufacturer is Silicon Graphics,
       
    33  * Inc., 2011 N.  Shoreline Blvd., Mountain View, CA 94039-7311.
       
    34  *
       
    35  * OpenGL(TM) is a trademark of Silicon Graphics, Inc.
       
    36  */
       
    37 #include <math.h>
       
    38 #include <GLUT/glut.h>
       
    39 #include "atlantis.h"
       
    40 /* *INDENT-OFF* */
       
    41 static float N001[3] = {-0.005937 ,-0.101998 ,-0.994767};
       
    42 static float N002[3] = {0.936780 ,-0.200803 ,0.286569};
       
    43 static float N003[3] = {-0.233062 ,0.972058 ,0.028007};
       
    44 static float N005[3] = {0.898117 ,0.360171 ,0.252315};
       
    45 static float N006[3] = {-0.915437 ,0.348456 ,0.201378};
       
    46 static float N007[3] = {0.602263 ,-0.777527 ,0.180920};
       
    47 static float N008[3] = {-0.906912 ,-0.412015 ,0.088061};
       
    48 static float N012[3] = {0.884408 ,-0.429417 ,-0.182821};
       
    49 static float N013[3] = {0.921121 ,0.311084 ,-0.234016};
       
    50 static float N014[3] = {0.382635 ,0.877882 ,-0.287948};
       
    51 static float N015[3] = {-0.380046 ,0.888166 ,-0.258316};
       
    52 static float N016[3] = {-0.891515 ,0.392238 ,-0.226607};
       
    53 static float N017[3] = {-0.901419 ,-0.382002 ,-0.203763};
       
    54 static float N018[3] = {-0.367225 ,-0.911091 ,-0.187243};
       
    55 static float N019[3] = {0.339539 ,-0.924846 ,-0.171388};
       
    56 static float N020[3] = {0.914706 ,-0.378617 ,-0.141290};
       
    57 static float N021[3] = {0.950662 ,0.262713 ,-0.164994};
       
    58 static float N022[3] = {0.546359 ,0.801460 ,-0.243218};
       
    59 static float N023[3] = {-0.315796 ,0.917068 ,-0.243431};
       
    60 static float N024[3] = {-0.825687 ,0.532277 ,-0.186875};
       
    61 static float N025[3] = {-0.974763 ,-0.155232 ,-0.160435};
       
    62 static float N026[3] = {-0.560596 ,-0.816658 ,-0.137119};
       
    63 static float N027[3] = {0.380210 ,-0.910817 ,-0.160786};
       
    64 static float N028[3] = {0.923772 ,-0.358322 ,-0.135093};
       
    65 static float N029[3] = {0.951202 ,0.275053 ,-0.139859};
       
    66 static float N030[3] = {0.686099 ,0.702548 ,-0.188932};
       
    67 static float N031[3] = {-0.521865 ,0.826719 ,-0.210220};
       
    68 static float N032[3] = {-0.923820 ,0.346739 ,-0.162258};
       
    69 static float N033[3] = {-0.902095 ,-0.409995 ,-0.134646};
       
    70 static float N034[3] = {-0.509115 ,-0.848498 ,-0.144404};
       
    71 static float N035[3] = {0.456469 ,-0.880293 ,-0.129305};
       
    72 static float N036[3] = {0.873401 ,-0.475489 ,-0.105266};
       
    73 static float N037[3] = {0.970825 ,0.179861 ,-0.158584};
       
    74 static float N038[3] = {0.675609 ,0.714187 ,-0.183004};
       
    75 static float N039[3] = {-0.523574 ,0.830212 ,-0.191360};
       
    76 static float N040[3] = {-0.958895 ,0.230808 ,-0.165071};
       
    77 static float N041[3] = {-0.918285 ,-0.376803 ,-0.121542};
       
    78 static float N042[3] = {-0.622467 ,-0.774167 ,-0.114888};
       
    79 static float N043[3] = {0.404497 ,-0.908807 ,-0.102231};
       
    80 static float N044[3] = {0.930538 ,-0.365155 ,-0.027588};
       
    81 static float N045[3] = {0.921920 ,0.374157 ,-0.100345};
       
    82 static float N046[3] = {0.507346 ,0.860739 ,0.041562};
       
    83 static float N047[3] = {-0.394646 ,0.918815 ,-0.005730};
       
    84 static float N048[3] = {-0.925411 ,0.373024 ,-0.066837};
       
    85 static float N049[3] = {-0.945337 ,-0.322309 ,-0.049551};
       
    86 static float N050[3] = {-0.660437 ,-0.750557 ,-0.022072};
       
    87 static float N051[3] = {0.488835 ,-0.871950 ,-0.027261};
       
    88 static float N052[3] = {0.902599 ,-0.421397 ,0.087969};
       
    89 static float N053[3] = {0.938636 ,0.322606 ,0.122020};
       
    90 static float N054[3] = {0.484605 ,0.871078 ,0.079878};
       
    91 static float N055[3] = {-0.353607 ,0.931559 ,0.084619};
       
    92 static float N056[3] = {-0.867759 ,0.478564 ,0.134054};
       
    93 static float N057[3] = {-0.951583 ,-0.296030 ,0.082794};
       
    94 static float N058[3] = {-0.672355 ,-0.730209 ,0.121384};
       
    95 static float N059[3] = {0.528336 ,-0.842452 ,0.105525};
       
    96 static float N060[3] = {0.786913 ,-0.564760 ,0.248627};
       
    97 static float N062[3] = {0.622098 ,0.765230 ,0.165584};
       
    98 static float N063[3] = {-0.631711 ,0.767816 ,0.106773};
       
    99 static float N064[3] = {-0.687886 ,0.606351 ,0.398938};
       
   100 static float N065[3] = {-0.946327 ,-0.281623 ,0.158598};
       
   101 static float N066[3] = {-0.509549 ,-0.860437 ,0.002776};
       
   102 static float N067[3] = {0.462594 ,-0.876692 ,0.131977};
       
   103 static float N071[3] = {0.000000 ,1.000000 ,0.000000};
       
   104 static float N077[3] = {-0.880770 ,0.461448 ,0.106351};
       
   105 static float N078[3] = {-0.880770 ,0.461448 ,0.106351};
       
   106 static float N079[3] = {-0.880770 ,0.461448 ,0.106351};
       
   107 static float N080[3] = {-0.880770 ,0.461448 ,0.106351};
       
   108 static float N081[3] = {-0.571197 ,0.816173 ,0.087152};
       
   109 static float N082[3] = {-0.880770 ,0.461448 ,0.106351};
       
   110 static float N083[3] = {-0.571197 ,0.816173 ,0.087152};
       
   111 static float N084[3] = {-0.571197 ,0.816173 ,0.087152};
       
   112 static float N085[3] = {-0.880770 ,0.461448 ,0.106351};
       
   113 static float N086[3] = {-0.571197 ,0.816173 ,0.087152};
       
   114 static float N087[3] = {-0.880770 ,0.461448 ,0.106351};
       
   115 static float N088[3] = {-0.880770 ,0.461448 ,0.106351};
       
   116 static float N089[3] = {-0.880770 ,0.461448 ,0.106351};
       
   117 static float N090[3] = {-0.880770 ,0.461448 ,0.106351};
       
   118 static float N091[3] = {0.000000 ,1.000000 ,0.000000};
       
   119 static float N092[3] = {0.000000 ,1.000000 ,0.000000};
       
   120 static float N093[3] = {0.000000 ,1.000000 ,0.000000};
       
   121 static float N094[3] = {1.000000 ,0.000000 ,0.000000};
       
   122 static float N095[3] = {-1.000000 ,0.000000 ,0.000000};
       
   123 static float N097[3] = {-0.697296 ,0.702881 ,0.140491};
       
   124 static float N098[3] = {0.918864 ,0.340821 ,0.198819};
       
   125 static float N099[3] = {-0.932737 ,0.201195 ,0.299202};
       
   126 static float N100[3] = {0.029517 ,0.981679 ,0.188244};
       
   127 static float N102[3] = {0.813521 ,-0.204936 ,0.544229};
       
   128 static float N110[3] = {-0.781480 ,-0.384779 ,0.491155};
       
   129 static float N111[3] = {-0.722243 ,0.384927 ,0.574627};
       
   130 static float N112[3] = {-0.752278 ,0.502679 ,0.425901};
       
   131 static float N113[3] = {0.547257 ,0.367910 ,0.751766};
       
   132 static float N114[3] = {0.725949 ,-0.232568 ,0.647233};
       
   133 static float N115[3] = {-0.747182 ,-0.660786 ,0.071280};
       
   134 static float N116[3] = {0.931519 ,0.200748 ,0.303270};
       
   135 static float N117[3] = {-0.828928 ,0.313757 ,0.463071};
       
   136 static float N118[3] = {0.902554 ,-0.370967 ,0.218587};
       
   137 static float N119[3] = {-0.879257 ,-0.441851 ,0.177973};
       
   138 static float N120[3] = {0.642327 ,0.611901 ,0.461512};
       
   139 static float N121[3] = {0.964817 ,-0.202322 ,0.167910};
       
   140 static float N122[3] = {0.000000 ,1.000000 ,0.000000};
       
   141 static float P001[3] = {5.68, -300.95, 1324.70};
       
   142 static float P002[3] = {338.69, -219.63, 9677.03};
       
   143 static float P003[3] = {12.18, 474.59, 9138.14};
       
   144 static float P005[3] = {487.51, 198.05, 9350.78};
       
   145 static float P006[3] = {-457.61, 68.74, 9427.85};
       
   146 static float P007[3] = {156.52, -266.72, 10311.68};
       
   147 static float P008[3] = {-185.56, -266.51, 10310.47};
       
   148 static float P009[3] = {124.39, -261.46, 1942.34};
       
   149 static float P010[3] = {-130.05, -261.46, 1946.03};
       
   150 static float P011[3] = {141.07, -320.11, 1239.38};
       
   151 static float P012[3] = {156.48, -360.12, 2073.41};
       
   152 static float P013[3] = {162.00, -175.88, 2064.44};
       
   153 static float P014[3] = {88.16, -87.72, 2064.02};
       
   154 static float P015[3] = {-65.21, -96.13, 2064.02};
       
   155 static float P016[3] = {-156.48, -180.96, 2064.44};
       
   156 static float P017[3] = {-162.00, -368.93, 2082.39};
       
   157 static float P018[3] = {-88.16, -439.22, 2082.39};
       
   158 static float P019[3] = {65.21, -440.32, 2083.39};
       
   159 static float P020[3] = {246.87, -356.02, 2576.95};
       
   160 static float P021[3] = {253.17, -111.15, 2567.15};
       
   161 static float P022[3] = {132.34, 51.41, 2559.84};
       
   162 static float P023[3] = {-97.88, 40.44, 2567.15};
       
   163 static float P024[3] = {-222.97, -117.49, 2567.15};
       
   164 static float P025[3] = {-252.22, -371.53, 2569.92};
       
   165 static float P026[3] = {-108.44, -518.19, 2586.75};
       
   166 static float P027[3] = {97.88, -524.79, 2586.75};
       
   167 static float P028[3] = {370.03, -421.19, 3419.70};
       
   168 static float P029[3] = {351.15, -16.98, 3423.17};
       
   169 static float P030[3] = {200.66, 248.46, 3430.37};
       
   170 static float P031[3] = {-148.42, 235.02, 3417.91};
       
   171 static float P032[3] = {-360.21, -30.27, 3416.84};
       
   172 static float P033[3] = {-357.90, -414.89, 3407.04};
       
   173 static float P034[3] = {-148.88, -631.35, 3409.90};
       
   174 static float P035[3] = {156.38, -632.59, 3419.70};
       
   175 static float P036[3] = {462.61, -469.21, 4431.51};
       
   176 static float P037[3] = {466.60, 102.25, 4434.98};
       
   177 static float P038[3] = {243.05, 474.34, 4562.02};
       
   178 static float P039[3] = {-191.23, 474.40, 4554.42};
       
   179 static float P040[3] = {-476.12, 111.05, 4451.11};
       
   180 static float P041[3] = {-473.36, -470.74, 4444.78};
       
   181 static float P042[3] = {-266.95, -748.41, 4447.78};
       
   182 static float P043[3] = {211.14, -749.91, 4429.73};
       
   183 static float P044[3] = {680.57, -370.27, 5943.46};
       
   184 static float P045[3] = {834.01, 363.09, 6360.63};
       
   185 static float P046[3] = {371.29, 804.51, 6486.26};
       
   186 static float P047[3] = {-291.43, 797.22, 6494.28};
       
   187 static float P048[3] = {-784.13, 370.75, 6378.01};
       
   188 static float P049[3] = {-743.29, -325.82, 5943.46};
       
   189 static float P050[3] = {-383.24, -804.77, 5943.46};
       
   190 static float P051[3] = {283.47, -846.09, 5943.46};
       
   191 static float iP001[3] = {5.68, -300.95, 1324.70};
       
   192 static float iP009[3] = {124.39, -261.46, 1942.34};
       
   193 static float iP010[3] = {-130.05, -261.46, 1946.03};
       
   194 static float iP011[3] = {141.07, -320.11, 1239.38};
       
   195 static float iP012[3] = {156.48, -360.12, 2073.41};
       
   196 static float iP013[3] = {162.00, -175.88, 2064.44};
       
   197 static float iP014[3] = {88.16, -87.72, 2064.02};
       
   198 static float iP015[3] = {-65.21, -96.13, 2064.02};
       
   199 static float iP016[3] = {-156.48, -180.96, 2064.44};
       
   200 static float iP017[3] = {-162.00, -368.93, 2082.39};
       
   201 static float iP018[3] = {-88.16, -439.22, 2082.39};
       
   202 static float iP019[3] = {65.21, -440.32, 2083.39};
       
   203 static float iP020[3] = {246.87, -356.02, 2576.95};
       
   204 static float iP021[3] = {253.17, -111.15, 2567.15};
       
   205 static float iP022[3] = {132.34, 51.41, 2559.84};
       
   206 static float iP023[3] = {-97.88, 40.44, 2567.15};
       
   207 static float iP024[3] = {-222.97, -117.49, 2567.15};
       
   208 static float iP025[3] = {-252.22, -371.53, 2569.92};
       
   209 static float iP026[3] = {-108.44, -518.19, 2586.75};
       
   210 static float iP027[3] = {97.88, -524.79, 2586.75};
       
   211 static float iP028[3] = {370.03, -421.19, 3419.70};
       
   212 static float iP029[3] = {351.15, -16.98, 3423.17};
       
   213 static float iP030[3] = {200.66, 248.46, 3430.37};
       
   214 static float iP031[3] = {-148.42, 235.02, 3417.91};
       
   215 static float iP032[3] = {-360.21, -30.27, 3416.84};
       
   216 static float iP033[3] = {-357.90, -414.89, 3407.04};
       
   217 static float iP034[3] = {-148.88, -631.35, 3409.90};
       
   218 static float iP035[3] = {156.38, -632.59, 3419.70};
       
   219 static float iP036[3] = {462.61, -469.21, 4431.51};
       
   220 static float iP037[3] = {466.60, 102.25, 4434.98};
       
   221 static float iP038[3] = {243.05, 474.34, 4562.02};
       
   222 static float iP039[3] = {-191.23, 474.40, 4554.42};
       
   223 static float iP040[3] = {-476.12, 111.05, 4451.11};
       
   224 static float iP041[3] = {-473.36, -470.74, 4444.78};
       
   225 static float iP042[3] = {-266.95, -748.41, 4447.78};
       
   226 static float iP043[3] = {211.14, -749.91, 4429.73};
       
   227 static float iP044[3] = {680.57, -370.27, 5943.46};
       
   228 static float iP045[3] = {834.01, 363.09, 6360.63};
       
   229 static float iP046[3] = {371.29, 804.51, 6486.26};
       
   230 static float iP047[3] = {-291.43, 797.22, 6494.28};
       
   231 static float iP048[3] = {-784.13, 370.75, 6378.01};
       
   232 static float iP049[3] = {-743.29, -325.82, 5943.46};
       
   233 static float iP050[3] = {-383.24, -804.77, 5943.46};
       
   234 static float iP051[3] = {283.47, -846.09, 5943.46};
       
   235 static float P052[3] = {599.09, -300.15, 7894.03};
       
   236 static float P053[3] = {735.48, 306.26, 7911.92};
       
   237 static float P054[3] = {246.22, 558.53, 8460.50};
       
   238 static float P055[3] = {-230.41, 559.84, 8473.23};
       
   239 static float P056[3] = {-698.66, 320.83, 7902.59};
       
   240 static float P057[3] = {-643.29, -299.16, 7902.59};
       
   241 static float P058[3] = {-341.47, -719.30, 7902.59};
       
   242 static float P059[3] = {252.57, -756.12, 7902.59};
       
   243 static float P060[3] = {458.39, -265.31, 9355.44};
       
   244 static float P062[3] = {224.04, 338.75, 9450.30};
       
   245 static float P063[3] = {-165.71, 341.04, 9462.35};
       
   246 static float P064[3] = {-298.11, 110.13, 10180.37};
       
   247 static float P065[3] = {-473.99, -219.71, 9355.44};
       
   248 static float P066[3] = {-211.97, -479.87, 9355.44};
       
   249 static float P067[3] = {192.86, -491.45, 9348.73};
       
   250 static float P068[3] = {-136.29, -319.84, 1228.73};
       
   251 static float P069[3] = {1111.17, -314.14, 1314.19};
       
   252 static float P070[3] = {-1167.34, -321.61, 1319.45};
       
   253 static float P071[3] = {1404.86, -306.66, 1235.45};
       
   254 static float P072[3] = {-1409.73, -314.14, 1247.66};
       
   255 static float P073[3] = {1254.01, -296.87, 1544.58};
       
   256 static float P074[3] = {-1262.09, -291.70, 1504.26};
       
   257 static float P075[3] = {965.71, -269.26, 1742.65};
       
   258 static float P076[3] = {-900.97, -276.74, 1726.07};
       
   259 static float iP068[3] = {-136.29, -319.84, 1228.73};
       
   260 static float iP069[3] = {1111.17, -314.14, 1314.19};
       
   261 static float iP070[3] = {-1167.34, -321.61, 1319.45};
       
   262 static float iP071[3] = {1404.86, -306.66, 1235.45};
       
   263 static float iP072[3] = {-1409.73, -314.14, 1247.66};
       
   264 static float iP073[3] = {1254.01, -296.87, 1544.58};
       
   265 static float iP074[3] = {-1262.09, -291.70, 1504.26};
       
   266 static float iP075[3] = {965.71, -269.26, 1742.65};
       
   267 static float iP076[3] = {-900.97, -276.74, 1726.07};
       
   268 static float P077[3] = {1058.00, -448.81, 8194.66};
       
   269 static float P078[3] = {-1016.51, -456.43, 8190.62};
       
   270 static float P079[3] = {-1515.96, -676.45, 7754.93};
       
   271 static float P080[3] = {1856.75, -830.34, 7296.56};
       
   272 static float P081[3] = {1472.16, -497.38, 7399.68};
       
   273 static float P082[3] = {-1775.26, -829.51, 7298.46};
       
   274 static float P083[3] = {911.09, -252.51, 7510.99};
       
   275 static float P084[3] = {-1451.94, -495.62, 7384.30};
       
   276 static float P085[3] = {1598.75, -669.26, 7769.90};
       
   277 static float P086[3] = {-836.53, -250.08, 7463.25};
       
   278 static float P087[3] = {722.87, -158.18, 8006.41};
       
   279 static float P088[3] = {-688.86, -162.28, 7993.89};
       
   280 static float P089[3] = {-626.92, -185.30, 8364.98};
       
   281 static float P090[3] = {647.72, -189.46, 8354.99};
       
   282 static float P091[3] = {0.00, 835.01, 5555.62};
       
   283 static float P092[3] = {0.00, 1350.18, 5220.86};
       
   284 static float P093[3] = {0.00, 1422.94, 5285.27};
       
   285 static float P094[3] = {0.00, 1296.75, 5650.19};
       
   286 static float P095[3] = {0.00, 795.63, 6493.88};
       
   287 static float iP091[3] = {0.00, 835.01, 5555.62};
       
   288 static float iP092[3] = {0.00, 1350.18, 5220.86};
       
   289 static float iP093[3] = {0.00, 1422.94, 5285.27};
       
   290 static float iP094[3] = {0.00, 1296.75, 5650.19};
       
   291 static float iP095[3] = {0.00, 795.63, 6493.88};
       
   292 static float P097[3] = {-194.91, -357.14, 10313.32};
       
   293 static float P098[3] = {135.35, -357.66, 10307.94};
       
   294 static float iP097[3] = {-194.91, -357.14, 10313.32};
       
   295 static float iP098[3] = {135.35, -357.66, 10307.94};
       
   296 static float P099[3] = {-380.53, -221.14, 9677.98};
       
   297 static float P100[3] = {0.00, 412.99, 9629.33};
       
   298 static float P102[3] = {59.51, -412.55, 10677.58};
       
   299 static float iP102[3] = {59.51, -412.55, 10677.58};
       
   300 static float P103[3] = {6.50, 484.74, 9009.94};
       
   301 static float P105[3] = {-41.86, 476.51, 9078.17};
       
   302 static float P108[3] = {49.20, 476.83, 9078.24};
       
   303 static float P110[3] = {-187.62, -410.04, 10674.12};
       
   304 static float iP110[3] = {-187.62, -410.04, 10674.12};
       
   305 static float P111[3] = {-184.25, -318.70, 10723.88};
       
   306 static float iP111[3] = {-184.25, -318.70, 10723.88};
       
   307 static float P112[3] = {-179.61, -142.81, 10670.26};
       
   308 static float P113[3] = {57.43, -147.94, 10675.26};
       
   309 static float P114[3] = {54.06, -218.90, 10712.44};
       
   310 static float P115[3] = {-186.35, -212.09, 10713.76};
       
   311 static float P116[3] = {205.90, -84.61, 10275.97};
       
   312 static float P117[3] = {-230.96, -83.26, 10280.09};
       
   313 static float iP118[3] = {216.78, -509.17, 10098.94};
       
   314 static float iP119[3] = {-313.21, -510.79, 10102.62};
       
   315 static float P118[3] = {216.78, -509.17, 10098.94};
       
   316 static float P119[3] = {-313.21, -510.79, 10102.62};
       
   317 static float P120[3] = {217.95, 96.34, 10161.62};
       
   318 static float P121[3] = {71.99, -319.74, 10717.70};
       
   319 static float iP121[3] = {71.99, -319.74, 10717.70};
       
   320 static float P122[3] = {0.00, 602.74, 5375.84};
       
   321 static float iP122[3] = {0.00, 602.74, 5375.84};
       
   322 static float P123[3] = {-448.94, -203.14, 9499.60};
       
   323 static float P124[3] = {-442.64, -185.20, 9528.07};
       
   324 static float P125[3] = {-441.07, -148.05, 9528.07};
       
   325 static float P126[3] = {-443.43, -128.84, 9499.60};
       
   326 static float P127[3] = {-456.87, -146.78, 9466.67};
       
   327 static float P128[3] = {-453.68, -183.93, 9466.67};
       
   328 static float P129[3] = {428.43, -124.08, 9503.03};
       
   329 static float P130[3] = {419.73, -142.14, 9534.56};
       
   330 static float P131[3] = {419.92, -179.96, 9534.56};
       
   331 static float P132[3] = {431.20, -199.73, 9505.26};
       
   332 static float P133[3] = {442.28, -181.67, 9475.96};
       
   333 static float P134[3] = {442.08, -143.84, 9475.96};
       
   334 /* *INDENT-ON* */
       
   335 
       
   336 void
       
   337 Dolphin001(void)
       
   338 {
       
   339     glNormal3fv(N071);
       
   340     glBegin(GL_POLYGON);
       
   341     glVertex3fv(P001);
       
   342     glVertex3fv(P068);
       
   343     glVertex3fv(P010);
       
   344     glEnd();
       
   345     glBegin(GL_POLYGON);
       
   346     glVertex3fv(P068);
       
   347     glVertex3fv(P076);
       
   348     glVertex3fv(P010);
       
   349     glEnd();
       
   350     glBegin(GL_POLYGON);
       
   351     glVertex3fv(P068);
       
   352     glVertex3fv(P070);
       
   353     glVertex3fv(P076);
       
   354     glEnd();
       
   355     glBegin(GL_POLYGON);
       
   356     glVertex3fv(P076);
       
   357     glVertex3fv(P070);
       
   358     glVertex3fv(P074);
       
   359     glEnd();
       
   360     glBegin(GL_POLYGON);
       
   361     glVertex3fv(P070);
       
   362     glVertex3fv(P072);
       
   363     glVertex3fv(P074);
       
   364     glEnd();
       
   365     glNormal3fv(N119);
       
   366     glBegin(GL_POLYGON);
       
   367     glVertex3fv(P072);
       
   368     glVertex3fv(P070);
       
   369     glVertex3fv(P074);
       
   370     glEnd();
       
   371     glBegin(GL_POLYGON);
       
   372     glVertex3fv(P074);
       
   373     glVertex3fv(P070);
       
   374     glVertex3fv(P076);
       
   375     glEnd();
       
   376     glBegin(GL_POLYGON);
       
   377     glVertex3fv(P070);
       
   378     glVertex3fv(P068);
       
   379     glVertex3fv(P076);
       
   380     glEnd();
       
   381     glBegin(GL_POLYGON);
       
   382     glVertex3fv(P076);
       
   383     glVertex3fv(P068);
       
   384     glVertex3fv(P010);
       
   385     glEnd();
       
   386     glBegin(GL_POLYGON);
       
   387     glVertex3fv(P068);
       
   388     glVertex3fv(P001);
       
   389     glVertex3fv(P010);
       
   390     glEnd();
       
   391 }
       
   392 
       
   393 void
       
   394 Dolphin002(void)
       
   395 {
       
   396     glNormal3fv(N071);
       
   397     glBegin(GL_POLYGON);
       
   398     glVertex3fv(P011);
       
   399     glVertex3fv(P001);
       
   400     glVertex3fv(P009);
       
   401     glEnd();
       
   402     glBegin(GL_POLYGON);
       
   403     glVertex3fv(P075);
       
   404     glVertex3fv(P011);
       
   405     glVertex3fv(P009);
       
   406     glEnd();
       
   407     glBegin(GL_POLYGON);
       
   408     glVertex3fv(P069);
       
   409     glVertex3fv(P011);
       
   410     glVertex3fv(P075);
       
   411     glEnd();
       
   412     glBegin(GL_POLYGON);
       
   413     glVertex3fv(P069);
       
   414     glVertex3fv(P075);
       
   415     glVertex3fv(P073);
       
   416     glEnd();
       
   417     glBegin(GL_POLYGON);
       
   418     glVertex3fv(P071);
       
   419     glVertex3fv(P069);
       
   420     glVertex3fv(P073);
       
   421     glEnd();
       
   422     glNormal3fv(N119);
       
   423     glBegin(GL_POLYGON);
       
   424     glVertex3fv(P001);
       
   425     glVertex3fv(P011);
       
   426     glVertex3fv(P009);
       
   427     glEnd();
       
   428     glBegin(GL_POLYGON);
       
   429     glVertex3fv(P009);
       
   430     glVertex3fv(P011);
       
   431     glVertex3fv(P075);
       
   432     glEnd();
       
   433     glBegin(GL_POLYGON);
       
   434     glVertex3fv(P011);
       
   435     glVertex3fv(P069);
       
   436     glVertex3fv(P075);
       
   437     glEnd();
       
   438     glBegin(GL_POLYGON);
       
   439     glVertex3fv(P069);
       
   440     glVertex3fv(P073);
       
   441     glVertex3fv(P075);
       
   442     glEnd();
       
   443     glBegin(GL_POLYGON);
       
   444     glVertex3fv(P069);
       
   445     glVertex3fv(P071);
       
   446     glVertex3fv(P073);
       
   447     glEnd();
       
   448 }
       
   449 
       
   450 void
       
   451 Dolphin003(void)
       
   452 {
       
   453     glBegin(GL_POLYGON);
       
   454     glNormal3fv(N018);
       
   455     glVertex3fv(P018);
       
   456     glNormal3fv(N001);
       
   457     glVertex3fv(P001);
       
   458     glNormal3fv(N019);
       
   459     glVertex3fv(P019);
       
   460     glEnd();
       
   461     glBegin(GL_POLYGON);
       
   462     glNormal3fv(N019);
       
   463     glVertex3fv(P019);
       
   464     glNormal3fv(N001);
       
   465     glVertex3fv(P001);
       
   466     glNormal3fv(N012);
       
   467     glVertex3fv(P012);
       
   468     glEnd();
       
   469     glBegin(GL_POLYGON);
       
   470     glNormal3fv(N017);
       
   471     glVertex3fv(P017);
       
   472     glNormal3fv(N001);
       
   473     glVertex3fv(P001);
       
   474     glNormal3fv(N018);
       
   475     glVertex3fv(P018);
       
   476     glEnd();
       
   477     glBegin(GL_POLYGON);
       
   478     glNormal3fv(N001);
       
   479     glVertex3fv(P001);
       
   480     glNormal3fv(N017);
       
   481     glVertex3fv(P017);
       
   482     glNormal3fv(N016);
       
   483     glVertex3fv(P016);
       
   484     glEnd();
       
   485     glBegin(GL_POLYGON);
       
   486     glNormal3fv(N001);
       
   487     glVertex3fv(P001);
       
   488     glNormal3fv(N013);
       
   489     glVertex3fv(P013);
       
   490     glNormal3fv(N012);
       
   491     glVertex3fv(P012);
       
   492     glEnd();
       
   493     glBegin(GL_POLYGON);
       
   494     glNormal3fv(N001);
       
   495     glVertex3fv(P001);
       
   496     glNormal3fv(N016);
       
   497     glVertex3fv(P016);
       
   498     glNormal3fv(N015);
       
   499     glVertex3fv(P015);
       
   500     glEnd();
       
   501     glBegin(GL_POLYGON);
       
   502     glNormal3fv(N001);
       
   503     glVertex3fv(P001);
       
   504     glNormal3fv(N014);
       
   505     glVertex3fv(P014);
       
   506     glNormal3fv(N013);
       
   507     glVertex3fv(P013);
       
   508     glEnd();
       
   509     glBegin(GL_POLYGON);
       
   510     glNormal3fv(N001);
       
   511     glVertex3fv(P001);
       
   512     glNormal3fv(N015);
       
   513     glVertex3fv(P015);
       
   514     glNormal3fv(N014);
       
   515     glVertex3fv(P014);
       
   516     glEnd();
       
   517 }
       
   518 
       
   519 void
       
   520 Dolphin004(void)
       
   521 {
       
   522     glBegin(GL_POLYGON);
       
   523     glNormal3fv(N014);
       
   524     glVertex3fv(P014);
       
   525     glNormal3fv(N015);
       
   526     glVertex3fv(P015);
       
   527     glNormal3fv(N023);
       
   528     glVertex3fv(P023);
       
   529     glNormal3fv(N022);
       
   530     glVertex3fv(P022);
       
   531     glEnd();
       
   532     glBegin(GL_POLYGON);
       
   533     glNormal3fv(N015);
       
   534     glVertex3fv(P015);
       
   535     glNormal3fv(N016);
       
   536     glVertex3fv(P016);
       
   537     glNormal3fv(N024);
       
   538     glVertex3fv(P024);
       
   539     glNormal3fv(N023);
       
   540     glVertex3fv(P023);
       
   541     glEnd();
       
   542     glBegin(GL_POLYGON);
       
   543     glNormal3fv(N016);
       
   544     glVertex3fv(P016);
       
   545     glNormal3fv(N017);
       
   546     glVertex3fv(P017);
       
   547     glNormal3fv(N025);
       
   548     glVertex3fv(P025);
       
   549     glNormal3fv(N024);
       
   550     glVertex3fv(P024);
       
   551     glEnd();
       
   552     glBegin(GL_POLYGON);
       
   553     glNormal3fv(N017);
       
   554     glVertex3fv(P017);
       
   555     glNormal3fv(N018);
       
   556     glVertex3fv(P018);
       
   557     glNormal3fv(N026);
       
   558     glVertex3fv(P026);
       
   559     glNormal3fv(N025);
       
   560     glVertex3fv(P025);
       
   561     glEnd();
       
   562     glBegin(GL_POLYGON);
       
   563     glNormal3fv(N013);
       
   564     glVertex3fv(P013);
       
   565     glNormal3fv(N014);
       
   566     glVertex3fv(P014);
       
   567     glNormal3fv(N022);
       
   568     glVertex3fv(P022);
       
   569     glNormal3fv(N021);
       
   570     glVertex3fv(P021);
       
   571     glEnd();
       
   572     glBegin(GL_POLYGON);
       
   573     glNormal3fv(N012);
       
   574     glVertex3fv(P012);
       
   575     glNormal3fv(N013);
       
   576     glVertex3fv(P013);
       
   577     glNormal3fv(N021);
       
   578     glVertex3fv(P021);
       
   579     glNormal3fv(N020);
       
   580     glVertex3fv(P020);
       
   581     glEnd();
       
   582     glBegin(GL_POLYGON);
       
   583     glNormal3fv(N018);
       
   584     glVertex3fv(P018);
       
   585     glNormal3fv(N019);
       
   586     glVertex3fv(P019);
       
   587     glNormal3fv(N027);
       
   588     glVertex3fv(P027);
       
   589     glNormal3fv(N026);
       
   590     glVertex3fv(P026);
       
   591     glEnd();
       
   592     glBegin(GL_POLYGON);
       
   593     glNormal3fv(N019);
       
   594     glVertex3fv(P019);
       
   595     glNormal3fv(N012);
       
   596     glVertex3fv(P012);
       
   597     glNormal3fv(N020);
       
   598     glVertex3fv(P020);
       
   599     glNormal3fv(N027);
       
   600     glVertex3fv(P027);
       
   601     glEnd();
       
   602 }
       
   603 
       
   604 void
       
   605 Dolphin005(void)
       
   606 {
       
   607     glBegin(GL_POLYGON);
       
   608     glNormal3fv(N022);
       
   609     glVertex3fv(P022);
       
   610     glNormal3fv(N023);
       
   611     glVertex3fv(P023);
       
   612     glNormal3fv(N031);
       
   613     glVertex3fv(P031);
       
   614     glNormal3fv(N030);
       
   615     glVertex3fv(P030);
       
   616     glEnd();
       
   617     glBegin(GL_POLYGON);
       
   618     glNormal3fv(N021);
       
   619     glVertex3fv(P021);
       
   620     glNormal3fv(N022);
       
   621     glVertex3fv(P022);
       
   622     glNormal3fv(N030);
       
   623     glVertex3fv(P030);
       
   624     glEnd();
       
   625     glBegin(GL_POLYGON);
       
   626     glNormal3fv(N021);
       
   627     glVertex3fv(P021);
       
   628     glNormal3fv(N030);
       
   629     glVertex3fv(P030);
       
   630     glNormal3fv(N029);
       
   631     glVertex3fv(P029);
       
   632     glEnd();
       
   633     glBegin(GL_POLYGON);
       
   634     glNormal3fv(N023);
       
   635     glVertex3fv(P023);
       
   636     glNormal3fv(N024);
       
   637     glVertex3fv(P024);
       
   638     glNormal3fv(N031);
       
   639     glVertex3fv(P031);
       
   640     glEnd();
       
   641     glBegin(GL_POLYGON);
       
   642     glNormal3fv(N024);
       
   643     glVertex3fv(P024);
       
   644     glNormal3fv(N032);
       
   645     glVertex3fv(P032);
       
   646     glNormal3fv(N031);
       
   647     glVertex3fv(P031);
       
   648     glEnd();
       
   649     glBegin(GL_POLYGON);
       
   650     glNormal3fv(N024);
       
   651     glVertex3fv(P024);
       
   652     glNormal3fv(N025);
       
   653     glVertex3fv(P025);
       
   654     glNormal3fv(N032);
       
   655     glVertex3fv(P032);
       
   656     glEnd();
       
   657     glBegin(GL_POLYGON);
       
   658     glNormal3fv(N025);
       
   659     glVertex3fv(P025);
       
   660     glNormal3fv(N033);
       
   661     glVertex3fv(P033);
       
   662     glNormal3fv(N032);
       
   663     glVertex3fv(P032);
       
   664     glEnd();
       
   665     glBegin(GL_POLYGON);
       
   666     glNormal3fv(N020);
       
   667     glVertex3fv(P020);
       
   668     glNormal3fv(N021);
       
   669     glVertex3fv(P021);
       
   670     glNormal3fv(N029);
       
   671     glVertex3fv(P029);
       
   672     glEnd();
       
   673     glBegin(GL_POLYGON);
       
   674     glNormal3fv(N020);
       
   675     glVertex3fv(P020);
       
   676     glNormal3fv(N029);
       
   677     glVertex3fv(P029);
       
   678     glNormal3fv(N028);
       
   679     glVertex3fv(P028);
       
   680     glEnd();
       
   681     glBegin(GL_POLYGON);
       
   682     glNormal3fv(N027);
       
   683     glVertex3fv(P027);
       
   684     glNormal3fv(N020);
       
   685     glVertex3fv(P020);
       
   686     glNormal3fv(N028);
       
   687     glVertex3fv(P028);
       
   688     glEnd();
       
   689     glBegin(GL_POLYGON);
       
   690     glNormal3fv(N027);
       
   691     glVertex3fv(P027);
       
   692     glNormal3fv(N028);
       
   693     glVertex3fv(P028);
       
   694     glNormal3fv(N035);
       
   695     glVertex3fv(P035);
       
   696     glEnd();
       
   697     glBegin(GL_POLYGON);
       
   698     glNormal3fv(N025);
       
   699     glVertex3fv(P025);
       
   700     glNormal3fv(N026);
       
   701     glVertex3fv(P026);
       
   702     glNormal3fv(N033);
       
   703     glVertex3fv(P033);
       
   704     glEnd();
       
   705     glBegin(GL_POLYGON);
       
   706     glNormal3fv(N033);
       
   707     glVertex3fv(P033);
       
   708     glNormal3fv(N026);
       
   709     glVertex3fv(P026);
       
   710     glNormal3fv(N034);
       
   711     glVertex3fv(P034);
       
   712     glEnd();
       
   713     glBegin(GL_POLYGON);
       
   714     glNormal3fv(N026);
       
   715     glVertex3fv(P026);
       
   716     glNormal3fv(N027);
       
   717     glVertex3fv(P027);
       
   718     glNormal3fv(N035);
       
   719     glVertex3fv(P035);
       
   720     glNormal3fv(N034);
       
   721     glVertex3fv(P034);
       
   722     glEnd();
       
   723 }
       
   724 
       
   725 void
       
   726 Dolphin006(void)
       
   727 {
       
   728     glBegin(GL_POLYGON);
       
   729     glNormal3fv(N092);
       
   730     glVertex3fv(P092);
       
   731     glNormal3fv(N093);
       
   732     glVertex3fv(P093);
       
   733     glNormal3fv(N094);
       
   734     glVertex3fv(P094);
       
   735     glEnd();
       
   736     glBegin(GL_POLYGON);
       
   737     glNormal3fv(N093);
       
   738     glVertex3fv(P093);
       
   739     glNormal3fv(N092);
       
   740     glVertex3fv(P092);
       
   741     glNormal3fv(N094);
       
   742     glVertex3fv(P094);
       
   743     glEnd();
       
   744     glBegin(GL_POLYGON);
       
   745     glNormal3fv(N092);
       
   746     glVertex3fv(P092);
       
   747     glNormal3fv(N091);
       
   748     glVertex3fv(P091);
       
   749     glNormal3fv(N095);
       
   750     glVertex3fv(P095);
       
   751     glNormal3fv(N094);
       
   752     glVertex3fv(P094);
       
   753     glEnd();
       
   754     glBegin(GL_POLYGON);
       
   755     glNormal3fv(N091);
       
   756     glVertex3fv(P091);
       
   757     glNormal3fv(N092);
       
   758     glVertex3fv(P092);
       
   759     glNormal3fv(N094);
       
   760     glVertex3fv(P094);
       
   761     glNormal3fv(N095);
       
   762     glVertex3fv(P095);
       
   763     glEnd();
       
   764     glBegin(GL_POLYGON);
       
   765     glNormal3fv(N122);
       
   766     glVertex3fv(P122);
       
   767     glNormal3fv(N095);
       
   768     glVertex3fv(P095);
       
   769     glNormal3fv(N091);
       
   770     glVertex3fv(P091);
       
   771     glEnd();
       
   772     glBegin(GL_POLYGON);
       
   773     glNormal3fv(N122);
       
   774     glVertex3fv(P122);
       
   775     glNormal3fv(N091);
       
   776     glVertex3fv(P091);
       
   777     glNormal3fv(N095);
       
   778     glVertex3fv(P095);
       
   779     glEnd();
       
   780 }
       
   781 
       
   782 void
       
   783 Dolphin007(void)
       
   784 {
       
   785     glBegin(GL_POLYGON);
       
   786     glNormal3fv(N030);
       
   787     glVertex3fv(P030);
       
   788     glNormal3fv(N031);
       
   789     glVertex3fv(P031);
       
   790     glNormal3fv(N039);
       
   791     glVertex3fv(P039);
       
   792     glNormal3fv(N038);
       
   793     glVertex3fv(P038);
       
   794     glEnd();
       
   795     glBegin(GL_POLYGON);
       
   796     glNormal3fv(N029);
       
   797     glVertex3fv(P029);
       
   798     glNormal3fv(N030);
       
   799     glVertex3fv(P030);
       
   800     glNormal3fv(N038);
       
   801     glVertex3fv(P038);
       
   802     glEnd();
       
   803     glBegin(GL_POLYGON);
       
   804     glNormal3fv(N029);
       
   805     glVertex3fv(P029);
       
   806     glNormal3fv(N038);
       
   807     glVertex3fv(P038);
       
   808     glNormal3fv(N037);
       
   809     glVertex3fv(P037);
       
   810     glEnd();
       
   811     glBegin(GL_POLYGON);
       
   812     glNormal3fv(N028);
       
   813     glVertex3fv(P028);
       
   814     glNormal3fv(N029);
       
   815     glVertex3fv(P029);
       
   816     glNormal3fv(N037);
       
   817     glVertex3fv(P037);
       
   818     glEnd();
       
   819     glBegin(GL_POLYGON);
       
   820     glNormal3fv(N028);
       
   821     glVertex3fv(P028);
       
   822     glNormal3fv(N037);
       
   823     glVertex3fv(P037);
       
   824     glNormal3fv(N036);
       
   825     glVertex3fv(P036);
       
   826     glEnd();
       
   827     glBegin(GL_POLYGON);
       
   828     glNormal3fv(N035);
       
   829     glVertex3fv(P035);
       
   830     glNormal3fv(N028);
       
   831     glVertex3fv(P028);
       
   832     glNormal3fv(N036);
       
   833     glVertex3fv(P036);
       
   834     glEnd();
       
   835     glBegin(GL_POLYGON);
       
   836     glNormal3fv(N035);
       
   837     glVertex3fv(P035);
       
   838     glNormal3fv(N036);
       
   839     glVertex3fv(P036);
       
   840     glNormal3fv(N043);
       
   841     glVertex3fv(P043);
       
   842     glEnd();
       
   843     glBegin(GL_POLYGON);
       
   844     glNormal3fv(N034);
       
   845     glVertex3fv(P034);
       
   846     glNormal3fv(N035);
       
   847     glVertex3fv(P035);
       
   848     glNormal3fv(N043);
       
   849     glVertex3fv(P043);
       
   850     glNormal3fv(N042);
       
   851     glVertex3fv(P042);
       
   852     glEnd();
       
   853     glBegin(GL_POLYGON);
       
   854     glNormal3fv(N033);
       
   855     glVertex3fv(P033);
       
   856     glNormal3fv(N034);
       
   857     glVertex3fv(P034);
       
   858     glNormal3fv(N042);
       
   859     glVertex3fv(P042);
       
   860     glEnd();
       
   861     glBegin(GL_POLYGON);
       
   862     glNormal3fv(N033);
       
   863     glVertex3fv(P033);
       
   864     glNormal3fv(N042);
       
   865     glVertex3fv(P042);
       
   866     glNormal3fv(N041);
       
   867     glVertex3fv(P041);
       
   868     glEnd();
       
   869     glBegin(GL_POLYGON);
       
   870     glNormal3fv(N031);
       
   871     glVertex3fv(P031);
       
   872     glNormal3fv(N032);
       
   873     glVertex3fv(P032);
       
   874     glNormal3fv(N039);
       
   875     glVertex3fv(P039);
       
   876     glEnd();
       
   877     glBegin(GL_POLYGON);
       
   878     glNormal3fv(N039);
       
   879     glVertex3fv(P039);
       
   880     glNormal3fv(N032);
       
   881     glVertex3fv(P032);
       
   882     glNormal3fv(N040);
       
   883     glVertex3fv(P040);
       
   884     glEnd();
       
   885     glBegin(GL_POLYGON);
       
   886     glNormal3fv(N032);
       
   887     glVertex3fv(P032);
       
   888     glNormal3fv(N033);
       
   889     glVertex3fv(P033);
       
   890     glNormal3fv(N040);
       
   891     glVertex3fv(P040);
       
   892     glEnd();
       
   893     glBegin(GL_POLYGON);
       
   894     glNormal3fv(N040);
       
   895     glVertex3fv(P040);
       
   896     glNormal3fv(N033);
       
   897     glVertex3fv(P033);
       
   898     glNormal3fv(N041);
       
   899     glVertex3fv(P041);
       
   900     glEnd();
       
   901 }
       
   902 
       
   903 void
       
   904 Dolphin008(void)
       
   905 {
       
   906     glBegin(GL_POLYGON);
       
   907     glNormal3fv(N042);
       
   908     glVertex3fv(P042);
       
   909     glNormal3fv(N043);
       
   910     glVertex3fv(P043);
       
   911     glNormal3fv(N051);
       
   912     glVertex3fv(P051);
       
   913     glNormal3fv(N050);
       
   914     glVertex3fv(P050);
       
   915     glEnd();
       
   916     glBegin(GL_POLYGON);
       
   917     glNormal3fv(N043);
       
   918     glVertex3fv(P043);
       
   919     glNormal3fv(N036);
       
   920     glVertex3fv(P036);
       
   921     glNormal3fv(N051);
       
   922     glVertex3fv(P051);
       
   923     glEnd();
       
   924     glBegin(GL_POLYGON);
       
   925     glNormal3fv(N051);
       
   926     glVertex3fv(P051);
       
   927     glNormal3fv(N036);
       
   928     glVertex3fv(P036);
       
   929     glNormal3fv(N044);
       
   930     glVertex3fv(P044);
       
   931     glEnd();
       
   932     glBegin(GL_POLYGON);
       
   933     glNormal3fv(N041);
       
   934     glVertex3fv(P041);
       
   935     glNormal3fv(N042);
       
   936     glVertex3fv(P042);
       
   937     glNormal3fv(N050);
       
   938     glVertex3fv(P050);
       
   939     glEnd();
       
   940     glBegin(GL_POLYGON);
       
   941     glNormal3fv(N041);
       
   942     glVertex3fv(P041);
       
   943     glNormal3fv(N050);
       
   944     glVertex3fv(P050);
       
   945     glNormal3fv(N049);
       
   946     glVertex3fv(P049);
       
   947     glEnd();
       
   948     glBegin(GL_POLYGON);
       
   949     glNormal3fv(N036);
       
   950     glVertex3fv(P036);
       
   951     glNormal3fv(N037);
       
   952     glVertex3fv(P037);
       
   953     glNormal3fv(N044);
       
   954     glVertex3fv(P044);
       
   955     glEnd();
       
   956     glBegin(GL_POLYGON);
       
   957     glNormal3fv(N044);
       
   958     glVertex3fv(P044);
       
   959     glNormal3fv(N037);
       
   960     glVertex3fv(P037);
       
   961     glNormal3fv(N045);
       
   962     glVertex3fv(P045);
       
   963     glEnd();
       
   964     glBegin(GL_POLYGON);
       
   965     glNormal3fv(N040);
       
   966     glVertex3fv(P040);
       
   967     glNormal3fv(N041);
       
   968     glVertex3fv(P041);
       
   969     glNormal3fv(N049);
       
   970     glVertex3fv(P049);
       
   971     glEnd();
       
   972     glBegin(GL_POLYGON);
       
   973     glNormal3fv(N040);
       
   974     glVertex3fv(P040);
       
   975     glNormal3fv(N049);
       
   976     glVertex3fv(P049);
       
   977     glNormal3fv(N048);
       
   978     glVertex3fv(P048);
       
   979     glEnd();
       
   980     glBegin(GL_POLYGON);
       
   981     glNormal3fv(N039);
       
   982     glVertex3fv(P039);
       
   983     glNormal3fv(N040);
       
   984     glVertex3fv(P040);
       
   985     glNormal3fv(N048);
       
   986     glVertex3fv(P048);
       
   987     glEnd();
       
   988     glBegin(GL_POLYGON);
       
   989     glNormal3fv(N039);
       
   990     glVertex3fv(P039);
       
   991     glNormal3fv(N048);
       
   992     glVertex3fv(P048);
       
   993     glNormal3fv(N047);
       
   994     glVertex3fv(P047);
       
   995     glEnd();
       
   996     glBegin(GL_POLYGON);
       
   997     glNormal3fv(N037);
       
   998     glVertex3fv(P037);
       
   999     glNormal3fv(N038);
       
  1000     glVertex3fv(P038);
       
  1001     glNormal3fv(N045);
       
  1002     glVertex3fv(P045);
       
  1003     glEnd();
       
  1004     glBegin(GL_POLYGON);
       
  1005     glNormal3fv(N038);
       
  1006     glVertex3fv(P038);
       
  1007     glNormal3fv(N046);
       
  1008     glVertex3fv(P046);
       
  1009     glNormal3fv(N045);
       
  1010     glVertex3fv(P045);
       
  1011     glEnd();
       
  1012     glBegin(GL_POLYGON);
       
  1013     glNormal3fv(N038);
       
  1014     glVertex3fv(P038);
       
  1015     glNormal3fv(N039);
       
  1016     glVertex3fv(P039);
       
  1017     glNormal3fv(N047);
       
  1018     glVertex3fv(P047);
       
  1019     glNormal3fv(N046);
       
  1020     glVertex3fv(P046);
       
  1021     glEnd();
       
  1022 }
       
  1023 
       
  1024 void
       
  1025 Dolphin009(void)
       
  1026 {
       
  1027     glBegin(GL_POLYGON);
       
  1028     glNormal3fv(N050);
       
  1029     glVertex3fv(P050);
       
  1030     glNormal3fv(N051);
       
  1031     glVertex3fv(P051);
       
  1032     glNormal3fv(N059);
       
  1033     glVertex3fv(P059);
       
  1034     glNormal3fv(N058);
       
  1035     glVertex3fv(P058);
       
  1036     glEnd();
       
  1037     glBegin(GL_POLYGON);
       
  1038     glNormal3fv(N051);
       
  1039     glVertex3fv(P051);
       
  1040     glNormal3fv(N044);
       
  1041     glVertex3fv(P044);
       
  1042     glNormal3fv(N059);
       
  1043     glVertex3fv(P059);
       
  1044     glEnd();
       
  1045     glBegin(GL_POLYGON);
       
  1046     glNormal3fv(N059);
       
  1047     glVertex3fv(P059);
       
  1048     glNormal3fv(N044);
       
  1049     glVertex3fv(P044);
       
  1050     glNormal3fv(N052);
       
  1051     glVertex3fv(P052);
       
  1052     glEnd();
       
  1053     glBegin(GL_POLYGON);
       
  1054     glNormal3fv(N044);
       
  1055     glVertex3fv(P044);
       
  1056     glNormal3fv(N045);
       
  1057     glVertex3fv(P045);
       
  1058     glNormal3fv(N053);
       
  1059     glVertex3fv(P053);
       
  1060     glEnd();
       
  1061     glBegin(GL_POLYGON);
       
  1062     glNormal3fv(N044);
       
  1063     glVertex3fv(P044);
       
  1064     glNormal3fv(N053);
       
  1065     glVertex3fv(P053);
       
  1066     glNormal3fv(N052);
       
  1067     glVertex3fv(P052);
       
  1068     glEnd();
       
  1069     glBegin(GL_POLYGON);
       
  1070     glNormal3fv(N049);
       
  1071     glVertex3fv(P049);
       
  1072     glNormal3fv(N050);
       
  1073     glVertex3fv(P050);
       
  1074     glNormal3fv(N058);
       
  1075     glVertex3fv(P058);
       
  1076     glEnd();
       
  1077     glBegin(GL_POLYGON);
       
  1078     glNormal3fv(N049);
       
  1079     glVertex3fv(P049);
       
  1080     glNormal3fv(N058);
       
  1081     glVertex3fv(P058);
       
  1082     glNormal3fv(N057);
       
  1083     glVertex3fv(P057);
       
  1084     glEnd();
       
  1085     glBegin(GL_POLYGON);
       
  1086     glNormal3fv(N048);
       
  1087     glVertex3fv(P048);
       
  1088     glNormal3fv(N049);
       
  1089     glVertex3fv(P049);
       
  1090     glNormal3fv(N057);
       
  1091     glVertex3fv(P057);
       
  1092     glEnd();
       
  1093     glBegin(GL_POLYGON);
       
  1094     glNormal3fv(N048);
       
  1095     glVertex3fv(P048);
       
  1096     glNormal3fv(N057);
       
  1097     glVertex3fv(P057);
       
  1098     glNormal3fv(N056);
       
  1099     glVertex3fv(P056);
       
  1100     glEnd();
       
  1101     glBegin(GL_POLYGON);
       
  1102     glNormal3fv(N047);
       
  1103     glVertex3fv(P047);
       
  1104     glNormal3fv(N048);
       
  1105     glVertex3fv(P048);
       
  1106     glNormal3fv(N056);
       
  1107     glVertex3fv(P056);
       
  1108     glEnd();
       
  1109     glBegin(GL_POLYGON);
       
  1110     glNormal3fv(N047);
       
  1111     glVertex3fv(P047);
       
  1112     glNormal3fv(N056);
       
  1113     glVertex3fv(P056);
       
  1114     glNormal3fv(N055);
       
  1115     glVertex3fv(P055);
       
  1116     glEnd();
       
  1117     glBegin(GL_POLYGON);
       
  1118     glNormal3fv(N045);
       
  1119     glVertex3fv(P045);
       
  1120     glNormal3fv(N046);
       
  1121     glVertex3fv(P046);
       
  1122     glNormal3fv(N053);
       
  1123     glVertex3fv(P053);
       
  1124     glEnd();
       
  1125     glBegin(GL_POLYGON);
       
  1126     glNormal3fv(N046);
       
  1127     glVertex3fv(P046);
       
  1128     glNormal3fv(N054);
       
  1129     glVertex3fv(P054);
       
  1130     glNormal3fv(N053);
       
  1131     glVertex3fv(P053);
       
  1132     glEnd();
       
  1133     glBegin(GL_POLYGON);
       
  1134     glNormal3fv(N046);
       
  1135     glVertex3fv(P046);
       
  1136     glNormal3fv(N047);
       
  1137     glVertex3fv(P047);
       
  1138     glNormal3fv(N055);
       
  1139     glVertex3fv(P055);
       
  1140     glNormal3fv(N054);
       
  1141     glVertex3fv(P054);
       
  1142     glEnd();
       
  1143 }
       
  1144 
       
  1145 void
       
  1146 Dolphin010(void)
       
  1147 {
       
  1148     glBegin(GL_POLYGON);
       
  1149     glNormal3fv(N080);
       
  1150     glVertex3fv(P080);
       
  1151     glNormal3fv(N081);
       
  1152     glVertex3fv(P081);
       
  1153     glNormal3fv(N085);
       
  1154     glVertex3fv(P085);
       
  1155     glEnd();
       
  1156     glBegin(GL_POLYGON);
       
  1157     glNormal3fv(N081);
       
  1158     glVertex3fv(P081);
       
  1159     glNormal3fv(N083);
       
  1160     glVertex3fv(P083);
       
  1161     glNormal3fv(N085);
       
  1162     glVertex3fv(P085);
       
  1163     glEnd();
       
  1164     glBegin(GL_POLYGON);
       
  1165     glNormal3fv(N085);
       
  1166     glVertex3fv(P085);
       
  1167     glNormal3fv(N083);
       
  1168     glVertex3fv(P083);
       
  1169     glNormal3fv(N077);
       
  1170     glVertex3fv(P077);
       
  1171     glEnd();
       
  1172     glBegin(GL_POLYGON);
       
  1173     glNormal3fv(N083);
       
  1174     glVertex3fv(P083);
       
  1175     glNormal3fv(N087);
       
  1176     glVertex3fv(P087);
       
  1177     glNormal3fv(N077);
       
  1178     glVertex3fv(P077);
       
  1179     glEnd();
       
  1180     glBegin(GL_POLYGON);
       
  1181     glNormal3fv(N077);
       
  1182     glVertex3fv(P077);
       
  1183     glNormal3fv(N087);
       
  1184     glVertex3fv(P087);
       
  1185     glNormal3fv(N090);
       
  1186     glVertex3fv(P090);
       
  1187     glEnd();
       
  1188     glBegin(GL_POLYGON);
       
  1189     glNormal3fv(N081);
       
  1190     glVertex3fv(P081);
       
  1191     glNormal3fv(N080);
       
  1192     glVertex3fv(P080);
       
  1193     glNormal3fv(N085);
       
  1194     glVertex3fv(P085);
       
  1195     glEnd();
       
  1196     glBegin(GL_POLYGON);
       
  1197     glNormal3fv(N083);
       
  1198     glVertex3fv(P083);
       
  1199     glNormal3fv(N081);
       
  1200     glVertex3fv(P081);
       
  1201     glNormal3fv(N085);
       
  1202     glVertex3fv(P085);
       
  1203     glEnd();
       
  1204     glBegin(GL_POLYGON);
       
  1205     glNormal3fv(N083);
       
  1206     glVertex3fv(P083);
       
  1207     glNormal3fv(N085);
       
  1208     glVertex3fv(P085);
       
  1209     glNormal3fv(N077);
       
  1210     glVertex3fv(P077);
       
  1211     glEnd();
       
  1212     glBegin(GL_POLYGON);
       
  1213     glNormal3fv(N087);
       
  1214     glVertex3fv(P087);
       
  1215     glNormal3fv(N083);
       
  1216     glVertex3fv(P083);
       
  1217     glNormal3fv(N077);
       
  1218     glVertex3fv(P077);
       
  1219     glEnd();
       
  1220     glBegin(GL_POLYGON);
       
  1221     glNormal3fv(N087);
       
  1222     glVertex3fv(P087);
       
  1223     glNormal3fv(N077);
       
  1224     glVertex3fv(P077);
       
  1225     glNormal3fv(N090);
       
  1226     glVertex3fv(P090);
       
  1227     glEnd();
       
  1228 }
       
  1229 
       
  1230 void
       
  1231 Dolphin011(void)
       
  1232 {
       
  1233     glBegin(GL_POLYGON);
       
  1234     glNormal3fv(N082);
       
  1235     glVertex3fv(P082);
       
  1236     glNormal3fv(N084);
       
  1237     glVertex3fv(P084);
       
  1238     glNormal3fv(N079);
       
  1239     glVertex3fv(P079);
       
  1240     glEnd();
       
  1241     glBegin(GL_POLYGON);
       
  1242     glNormal3fv(N084);
       
  1243     glVertex3fv(P084);
       
  1244     glNormal3fv(N086);
       
  1245     glVertex3fv(P086);
       
  1246     glNormal3fv(N079);
       
  1247     glVertex3fv(P079);
       
  1248     glEnd();
       
  1249     glBegin(GL_POLYGON);
       
  1250     glNormal3fv(N079);
       
  1251     glVertex3fv(P079);
       
  1252     glNormal3fv(N086);
       
  1253     glVertex3fv(P086);
       
  1254     glNormal3fv(N078);
       
  1255     glVertex3fv(P078);
       
  1256     glEnd();
       
  1257     glBegin(GL_POLYGON);
       
  1258     glNormal3fv(N086);
       
  1259     glVertex3fv(P086);
       
  1260     glNormal3fv(N088);
       
  1261     glVertex3fv(P088);
       
  1262     glNormal3fv(N078);
       
  1263     glVertex3fv(P078);
       
  1264     glEnd();
       
  1265     glBegin(GL_POLYGON);
       
  1266     glNormal3fv(N078);
       
  1267     glVertex3fv(P078);
       
  1268     glNormal3fv(N088);
       
  1269     glVertex3fv(P088);
       
  1270     glNormal3fv(N089);
       
  1271     glVertex3fv(P089);
       
  1272     glEnd();
       
  1273     glBegin(GL_POLYGON);
       
  1274     glNormal3fv(N088);
       
  1275     glVertex3fv(P088);
       
  1276     glNormal3fv(N086);
       
  1277     glVertex3fv(P086);
       
  1278     glNormal3fv(N089);
       
  1279     glVertex3fv(P089);
       
  1280     glEnd();
       
  1281     glBegin(GL_POLYGON);
       
  1282     glNormal3fv(N089);
       
  1283     glVertex3fv(P089);
       
  1284     glNormal3fv(N086);
       
  1285     glVertex3fv(P086);
       
  1286     glNormal3fv(N078);
       
  1287     glVertex3fv(P078);
       
  1288     glEnd();
       
  1289     glBegin(GL_POLYGON);
       
  1290     glNormal3fv(N086);
       
  1291     glVertex3fv(P086);
       
  1292     glNormal3fv(N084);
       
  1293     glVertex3fv(P084);
       
  1294     glNormal3fv(N078);
       
  1295     glVertex3fv(P078);
       
  1296     glEnd();
       
  1297     glBegin(GL_POLYGON);
       
  1298     glNormal3fv(N078);
       
  1299     glVertex3fv(P078);
       
  1300     glNormal3fv(N084);
       
  1301     glVertex3fv(P084);
       
  1302     glNormal3fv(N079);
       
  1303     glVertex3fv(P079);
       
  1304     glEnd();
       
  1305     glBegin(GL_POLYGON);
       
  1306     glNormal3fv(N084);
       
  1307     glVertex3fv(P084);
       
  1308     glNormal3fv(N082);
       
  1309     glVertex3fv(P082);
       
  1310     glNormal3fv(N079);
       
  1311     glVertex3fv(P079);
       
  1312     glEnd();
       
  1313 }
       
  1314 
       
  1315 void
       
  1316 Dolphin012(void)
       
  1317 {
       
  1318     glBegin(GL_POLYGON);
       
  1319     glNormal3fv(N058);
       
  1320     glVertex3fv(P058);
       
  1321     glNormal3fv(N059);
       
  1322     glVertex3fv(P059);
       
  1323     glNormal3fv(N067);
       
  1324     glVertex3fv(P067);
       
  1325     glNormal3fv(N066);
       
  1326     glVertex3fv(P066);
       
  1327     glEnd();
       
  1328     glBegin(GL_POLYGON);
       
  1329     glNormal3fv(N059);
       
  1330     glVertex3fv(P059);
       
  1331     glNormal3fv(N052);
       
  1332     glVertex3fv(P052);
       
  1333     glNormal3fv(N060);
       
  1334     glVertex3fv(P060);
       
  1335     glEnd();
       
  1336     glBegin(GL_POLYGON);
       
  1337     glNormal3fv(N059);
       
  1338     glVertex3fv(P059);
       
  1339     glNormal3fv(N060);
       
  1340     glVertex3fv(P060);
       
  1341     glNormal3fv(N067);
       
  1342     glVertex3fv(P067);
       
  1343     glEnd();
       
  1344     glBegin(GL_POLYGON);
       
  1345     glNormal3fv(N058);
       
  1346     glVertex3fv(P058);
       
  1347     glNormal3fv(N066);
       
  1348     glVertex3fv(P066);
       
  1349     glNormal3fv(N065);
       
  1350     glVertex3fv(P065);
       
  1351     glEnd();
       
  1352     glBegin(GL_POLYGON);
       
  1353     glNormal3fv(N058);
       
  1354     glVertex3fv(P058);
       
  1355     glNormal3fv(N065);
       
  1356     glVertex3fv(P065);
       
  1357     glNormal3fv(N057);
       
  1358     glVertex3fv(P057);
       
  1359     glEnd();
       
  1360     glBegin(GL_POLYGON);
       
  1361     glNormal3fv(N056);
       
  1362     glVertex3fv(P056);
       
  1363     glNormal3fv(N057);
       
  1364     glVertex3fv(P057);
       
  1365     glNormal3fv(N065);
       
  1366     glVertex3fv(P065);
       
  1367     glEnd();
       
  1368     glBegin(GL_POLYGON);
       
  1369     glNormal3fv(N056);
       
  1370     glVertex3fv(P056);
       
  1371     glNormal3fv(N065);
       
  1372     glVertex3fv(P065);
       
  1373     glNormal3fv(N006);
       
  1374     glVertex3fv(P006);
       
  1375     glEnd();
       
  1376     glBegin(GL_POLYGON);
       
  1377     glNormal3fv(N056);
       
  1378     glVertex3fv(P056);
       
  1379     glNormal3fv(N006);
       
  1380     glVertex3fv(P006);
       
  1381     glNormal3fv(N063);
       
  1382     glVertex3fv(P063);
       
  1383     glEnd();
       
  1384     glBegin(GL_POLYGON);
       
  1385     glNormal3fv(N056);
       
  1386     glVertex3fv(P056);
       
  1387     glNormal3fv(N063);
       
  1388     glVertex3fv(P063);
       
  1389     glNormal3fv(N055);
       
  1390     glVertex3fv(P055);
       
  1391     glEnd();
       
  1392     glBegin(GL_POLYGON);
       
  1393     glNormal3fv(N054);
       
  1394     glVertex3fv(P054);
       
  1395     glNormal3fv(N062);
       
  1396     glVertex3fv(P062);
       
  1397     glNormal3fv(N005);
       
  1398     glVertex3fv(P005);
       
  1399     glEnd();
       
  1400     glBegin(GL_POLYGON);
       
  1401     glNormal3fv(N054);
       
  1402     glVertex3fv(P054);
       
  1403     glNormal3fv(N005);
       
  1404     glVertex3fv(P005);
       
  1405     glNormal3fv(N053);
       
  1406     glVertex3fv(P053);
       
  1407     glEnd();
       
  1408     glBegin(GL_POLYGON);
       
  1409     glNormal3fv(N052);
       
  1410     glVertex3fv(P052);
       
  1411     glNormal3fv(N053);
       
  1412     glVertex3fv(P053);
       
  1413     glNormal3fv(N005);
       
  1414     glVertex3fv(P005);
       
  1415     glNormal3fv(N060);
       
  1416     glVertex3fv(P060);
       
  1417     glEnd();
       
  1418 }
       
  1419 
       
  1420 void
       
  1421 Dolphin013(void)
       
  1422 {
       
  1423     glBegin(GL_POLYGON);
       
  1424     glNormal3fv(N116);
       
  1425     glVertex3fv(P116);
       
  1426     glNormal3fv(N117);
       
  1427     glVertex3fv(P117);
       
  1428     glNormal3fv(N112);
       
  1429     glVertex3fv(P112);
       
  1430     glNormal3fv(N113);
       
  1431     glVertex3fv(P113);
       
  1432     glEnd();
       
  1433     glBegin(GL_POLYGON);
       
  1434     glNormal3fv(N114);
       
  1435     glVertex3fv(P114);
       
  1436     glNormal3fv(N113);
       
  1437     glVertex3fv(P113);
       
  1438     glNormal3fv(N112);
       
  1439     glVertex3fv(P112);
       
  1440     glNormal3fv(N115);
       
  1441     glVertex3fv(P115);
       
  1442     glEnd();
       
  1443     glBegin(GL_POLYGON);
       
  1444     glNormal3fv(N114);
       
  1445     glVertex3fv(P114);
       
  1446     glNormal3fv(N116);
       
  1447     glVertex3fv(P116);
       
  1448     glNormal3fv(N113);
       
  1449     glVertex3fv(P113);
       
  1450     glEnd();
       
  1451     glBegin(GL_POLYGON);
       
  1452     glNormal3fv(N114);
       
  1453     glVertex3fv(P114);
       
  1454     glNormal3fv(N007);
       
  1455     glVertex3fv(P007);
       
  1456     glNormal3fv(N116);
       
  1457     glVertex3fv(P116);
       
  1458     glEnd();
       
  1459     glBegin(GL_POLYGON);
       
  1460     glNormal3fv(N007);
       
  1461     glVertex3fv(P007);
       
  1462     glNormal3fv(N002);
       
  1463     glVertex3fv(P002);
       
  1464     glNormal3fv(N116);
       
  1465     glVertex3fv(P116);
       
  1466     glEnd();
       
  1467     glBegin(GL_POLYGON);
       
  1468     glVertex3fv(P002);
       
  1469     glVertex3fv(P007);
       
  1470     glVertex3fv(P008);
       
  1471     glVertex3fv(P099);
       
  1472     glEnd();
       
  1473     glBegin(GL_POLYGON);
       
  1474     glVertex3fv(P007);
       
  1475     glVertex3fv(P114);
       
  1476     glVertex3fv(P115);
       
  1477     glVertex3fv(P008);
       
  1478     glEnd();
       
  1479     glBegin(GL_POLYGON);
       
  1480     glNormal3fv(N117);
       
  1481     glVertex3fv(P117);
       
  1482     glNormal3fv(N099);
       
  1483     glVertex3fv(P099);
       
  1484     glNormal3fv(N008);
       
  1485     glVertex3fv(P008);
       
  1486     glEnd();
       
  1487     glBegin(GL_POLYGON);
       
  1488     glNormal3fv(N117);
       
  1489     glVertex3fv(P117);
       
  1490     glNormal3fv(N008);
       
  1491     glVertex3fv(P008);
       
  1492     glNormal3fv(N112);
       
  1493     glVertex3fv(P112);
       
  1494     glEnd();
       
  1495     glBegin(GL_POLYGON);
       
  1496     glNormal3fv(N112);
       
  1497     glVertex3fv(P112);
       
  1498     glNormal3fv(N008);
       
  1499     glVertex3fv(P008);
       
  1500     glNormal3fv(N115);
       
  1501     glVertex3fv(P115);
       
  1502     glEnd();
       
  1503 }
       
  1504 
       
  1505 void
       
  1506 Dolphin014(void)
       
  1507 {
       
  1508     glBegin(GL_POLYGON);
       
  1509     glNormal3fv(N111);
       
  1510     glVertex3fv(P111);
       
  1511     glNormal3fv(N110);
       
  1512     glVertex3fv(P110);
       
  1513     glNormal3fv(N102);
       
  1514     glVertex3fv(P102);
       
  1515     glNormal3fv(N121);
       
  1516     glVertex3fv(P121);
       
  1517     glEnd();
       
  1518     glBegin(GL_POLYGON);
       
  1519     glNormal3fv(N111);
       
  1520     glVertex3fv(P111);
       
  1521     glNormal3fv(N097);
       
  1522     glVertex3fv(P097);
       
  1523     glNormal3fv(N110);
       
  1524     glVertex3fv(P110);
       
  1525     glEnd();
       
  1526     glBegin(GL_POLYGON);
       
  1527     glNormal3fv(N097);
       
  1528     glVertex3fv(P097);
       
  1529     glNormal3fv(N119);
       
  1530     glVertex3fv(P119);
       
  1531     glNormal3fv(N110);
       
  1532     glVertex3fv(P110);
       
  1533     glEnd();
       
  1534     glBegin(GL_POLYGON);
       
  1535     glNormal3fv(N097);
       
  1536     glVertex3fv(P097);
       
  1537     glNormal3fv(N099);
       
  1538     glVertex3fv(P099);
       
  1539     glNormal3fv(N119);
       
  1540     glVertex3fv(P119);
       
  1541     glEnd();
       
  1542     glBegin(GL_POLYGON);
       
  1543     glNormal3fv(N099);
       
  1544     glVertex3fv(P099);
       
  1545     glNormal3fv(N065);
       
  1546     glVertex3fv(P065);
       
  1547     glNormal3fv(N119);
       
  1548     glVertex3fv(P119);
       
  1549     glEnd();
       
  1550     glBegin(GL_POLYGON);
       
  1551     glNormal3fv(N065);
       
  1552     glVertex3fv(P065);
       
  1553     glNormal3fv(N066);
       
  1554     glVertex3fv(P066);
       
  1555     glNormal3fv(N119);
       
  1556     glVertex3fv(P119);
       
  1557     glEnd();
       
  1558     glBegin(GL_POLYGON);
       
  1559     glVertex3fv(P098);
       
  1560     glVertex3fv(P097);
       
  1561     glVertex3fv(P111);
       
  1562     glVertex3fv(P121);
       
  1563     glEnd();
       
  1564     glBegin(GL_POLYGON);
       
  1565     glVertex3fv(P002);
       
  1566     glVertex3fv(P099);
       
  1567     glVertex3fv(P097);
       
  1568     glVertex3fv(P098);
       
  1569     glEnd();
       
  1570     glBegin(GL_POLYGON);
       
  1571     glNormal3fv(N110);
       
  1572     glVertex3fv(P110);
       
  1573     glNormal3fv(N119);
       
  1574     glVertex3fv(P119);
       
  1575     glNormal3fv(N118);
       
  1576     glVertex3fv(P118);
       
  1577     glNormal3fv(N102);
       
  1578     glVertex3fv(P102);
       
  1579     glEnd();
       
  1580     glBegin(GL_POLYGON);
       
  1581     glNormal3fv(N119);
       
  1582     glVertex3fv(P119);
       
  1583     glNormal3fv(N066);
       
  1584     glVertex3fv(P066);
       
  1585     glNormal3fv(N067);
       
  1586     glVertex3fv(P067);
       
  1587     glNormal3fv(N118);
       
  1588     glVertex3fv(P118);
       
  1589     glEnd();
       
  1590     glBegin(GL_POLYGON);
       
  1591     glNormal3fv(N067);
       
  1592     glVertex3fv(P067);
       
  1593     glNormal3fv(N060);
       
  1594     glVertex3fv(P060);
       
  1595     glNormal3fv(N002);
       
  1596     glVertex3fv(P002);
       
  1597     glEnd();
       
  1598     glBegin(GL_POLYGON);
       
  1599     glNormal3fv(N067);
       
  1600     glVertex3fv(P067);
       
  1601     glNormal3fv(N002);
       
  1602     glVertex3fv(P002);
       
  1603     glNormal3fv(N118);
       
  1604     glVertex3fv(P118);
       
  1605     glEnd();
       
  1606     glBegin(GL_POLYGON);
       
  1607     glNormal3fv(N118);
       
  1608     glVertex3fv(P118);
       
  1609     glNormal3fv(N002);
       
  1610     glVertex3fv(P002);
       
  1611     glNormal3fv(N098);
       
  1612     glVertex3fv(P098);
       
  1613     glEnd();
       
  1614     glBegin(GL_POLYGON);
       
  1615     glNormal3fv(N118);
       
  1616     glVertex3fv(P118);
       
  1617     glNormal3fv(N098);
       
  1618     glVertex3fv(P098);
       
  1619     glNormal3fv(N102);
       
  1620     glVertex3fv(P102);
       
  1621     glEnd();
       
  1622     glBegin(GL_POLYGON);
       
  1623     glNormal3fv(N102);
       
  1624     glVertex3fv(P102);
       
  1625     glNormal3fv(N098);
       
  1626     glVertex3fv(P098);
       
  1627     glNormal3fv(N121);
       
  1628     glVertex3fv(P121);
       
  1629     glEnd();
       
  1630 }
       
  1631 
       
  1632 void
       
  1633 Dolphin015(void)
       
  1634 {
       
  1635     glBegin(GL_POLYGON);
       
  1636     glNormal3fv(N055);
       
  1637     glVertex3fv(P055);
       
  1638     glNormal3fv(N003);
       
  1639     glVertex3fv(P003);
       
  1640     glNormal3fv(N054);
       
  1641     glVertex3fv(P054);
       
  1642     glEnd();
       
  1643     glBegin(GL_POLYGON);
       
  1644     glNormal3fv(N003);
       
  1645     glVertex3fv(P003);
       
  1646     glNormal3fv(N055);
       
  1647     glVertex3fv(P055);
       
  1648     glNormal3fv(N063);
       
  1649     glVertex3fv(P063);
       
  1650     glEnd();
       
  1651     glBegin(GL_POLYGON);
       
  1652     glNormal3fv(N003);
       
  1653     glVertex3fv(P003);
       
  1654     glNormal3fv(N063);
       
  1655     glVertex3fv(P063);
       
  1656     glNormal3fv(N100);
       
  1657     glVertex3fv(P100);
       
  1658     glEnd();
       
  1659     glBegin(GL_POLYGON);
       
  1660     glNormal3fv(N003);
       
  1661     glVertex3fv(P003);
       
  1662     glNormal3fv(N100);
       
  1663     glVertex3fv(P100);
       
  1664     glNormal3fv(N054);
       
  1665     glVertex3fv(P054);
       
  1666     glEnd();
       
  1667     glBegin(GL_POLYGON);
       
  1668     glNormal3fv(N054);
       
  1669     glVertex3fv(P054);
       
  1670     glNormal3fv(N100);
       
  1671     glVertex3fv(P100);
       
  1672     glNormal3fv(N062);
       
  1673     glVertex3fv(P062);
       
  1674     glEnd();
       
  1675     glBegin(GL_POLYGON);
       
  1676     glNormal3fv(N100);
       
  1677     glVertex3fv(P100);
       
  1678     glNormal3fv(N064);
       
  1679     glVertex3fv(P064);
       
  1680     glNormal3fv(N120);
       
  1681     glVertex3fv(P120);
       
  1682     glEnd();
       
  1683     glBegin(GL_POLYGON);
       
  1684     glNormal3fv(N100);
       
  1685     glVertex3fv(P100);
       
  1686     glNormal3fv(N063);
       
  1687     glVertex3fv(P063);
       
  1688     glNormal3fv(N064);
       
  1689     glVertex3fv(P064);
       
  1690     glEnd();
       
  1691     glBegin(GL_POLYGON);
       
  1692     glNormal3fv(N063);
       
  1693     glVertex3fv(P063);
       
  1694     glNormal3fv(N006);
       
  1695     glVertex3fv(P006);
       
  1696     glNormal3fv(N064);
       
  1697     glVertex3fv(P064);
       
  1698     glEnd();
       
  1699     glBegin(GL_POLYGON);
       
  1700     glNormal3fv(N064);
       
  1701     glVertex3fv(P064);
       
  1702     glNormal3fv(N006);
       
  1703     glVertex3fv(P006);
       
  1704     glNormal3fv(N099);
       
  1705     glVertex3fv(P099);
       
  1706     glEnd();
       
  1707     glBegin(GL_POLYGON);
       
  1708     glNormal3fv(N064);
       
  1709     glVertex3fv(P064);
       
  1710     glNormal3fv(N099);
       
  1711     glVertex3fv(P099);
       
  1712     glNormal3fv(N117);
       
  1713     glVertex3fv(P117);
       
  1714     glEnd();
       
  1715     glBegin(GL_POLYGON);
       
  1716     glNormal3fv(N120);
       
  1717     glVertex3fv(P120);
       
  1718     glNormal3fv(N064);
       
  1719     glVertex3fv(P064);
       
  1720     glNormal3fv(N117);
       
  1721     glVertex3fv(P117);
       
  1722     glNormal3fv(N116);
       
  1723     glVertex3fv(P116);
       
  1724     glEnd();
       
  1725     glBegin(GL_POLYGON);
       
  1726     glNormal3fv(N006);
       
  1727     glVertex3fv(P006);
       
  1728     glNormal3fv(N065);
       
  1729     glVertex3fv(P065);
       
  1730     glNormal3fv(N099);
       
  1731     glVertex3fv(P099);
       
  1732     glEnd();
       
  1733     glBegin(GL_POLYGON);
       
  1734     glNormal3fv(N062);
       
  1735     glVertex3fv(P062);
       
  1736     glNormal3fv(N100);
       
  1737     glVertex3fv(P100);
       
  1738     glNormal3fv(N120);
       
  1739     glVertex3fv(P120);
       
  1740     glEnd();
       
  1741     glBegin(GL_POLYGON);
       
  1742     glNormal3fv(N005);
       
  1743     glVertex3fv(P005);
       
  1744     glNormal3fv(N062);
       
  1745     glVertex3fv(P062);
       
  1746     glNormal3fv(N120);
       
  1747     glVertex3fv(P120);
       
  1748     glEnd();
       
  1749     glBegin(GL_POLYGON);
       
  1750     glNormal3fv(N005);
       
  1751     glVertex3fv(P005);
       
  1752     glNormal3fv(N120);
       
  1753     glVertex3fv(P120);
       
  1754     glNormal3fv(N002);
       
  1755     glVertex3fv(P002);
       
  1756     glEnd();
       
  1757     glBegin(GL_POLYGON);
       
  1758     glNormal3fv(N002);
       
  1759     glVertex3fv(P002);
       
  1760     glNormal3fv(N120);
       
  1761     glVertex3fv(P120);
       
  1762     glNormal3fv(N116);
       
  1763     glVertex3fv(P116);
       
  1764     glEnd();
       
  1765     glBegin(GL_POLYGON);
       
  1766     glNormal3fv(N060);
       
  1767     glVertex3fv(P060);
       
  1768     glNormal3fv(N005);
       
  1769     glVertex3fv(P005);
       
  1770     glNormal3fv(N002);
       
  1771     glVertex3fv(P002);
       
  1772     glEnd();
       
  1773 }
       
  1774 
       
  1775 void
       
  1776 Dolphin016(void)
       
  1777 {
       
  1778 
       
  1779     glDisable(GL_DEPTH_TEST);
       
  1780     glBegin(GL_POLYGON);
       
  1781     glVertex3fv(P123);
       
  1782     glVertex3fv(P124);
       
  1783     glVertex3fv(P125);
       
  1784     glVertex3fv(P126);
       
  1785     glVertex3fv(P127);
       
  1786     glVertex3fv(P128);
       
  1787     glEnd();
       
  1788     glBegin(GL_POLYGON);
       
  1789     glVertex3fv(P129);
       
  1790     glVertex3fv(P130);
       
  1791     glVertex3fv(P131);
       
  1792     glVertex3fv(P132);
       
  1793     glVertex3fv(P133);
       
  1794     glVertex3fv(P134);
       
  1795     glEnd();
       
  1796     glBegin(GL_POLYGON);
       
  1797     glVertex3fv(P103);
       
  1798     glVertex3fv(P105);
       
  1799     glVertex3fv(P108);
       
  1800     glEnd();
       
  1801     glEnable(GL_DEPTH_TEST);
       
  1802 }
       
  1803 
       
  1804 void
       
  1805 DrawDolphin(fishRec * fish)
       
  1806 {
       
  1807     float seg0, seg1, seg2, seg3, seg4, seg5, seg6, seg7;
       
  1808     float pitch, thrash, chomp;
       
  1809 
       
  1810     fish->htail = (int) (fish->htail - (int) (10.0 * fish->v)) % 360;
       
  1811 
       
  1812     thrash = 70.0 * fish->v;
       
  1813 
       
  1814     seg0 = 1.0 * thrash * sin((fish->htail) * RRAD);
       
  1815     seg3 = 1.0 * thrash * sin((fish->htail) * RRAD);
       
  1816     seg1 = 2.0 * thrash * sin((fish->htail + 4.0) * RRAD);
       
  1817     seg2 = 3.0 * thrash * sin((fish->htail + 6.0) * RRAD);
       
  1818     seg4 = 4.0 * thrash * sin((fish->htail + 10.0) * RRAD);
       
  1819     seg5 = 4.5 * thrash * sin((fish->htail + 15.0) * RRAD);
       
  1820     seg6 = 5.0 * thrash * sin((fish->htail + 20.0) * RRAD);
       
  1821     seg7 = 6.0 * thrash * sin((fish->htail + 30.0) * RRAD);
       
  1822 
       
  1823     pitch = fish->v * sin((fish->htail + 180.0) * RRAD);
       
  1824 
       
  1825     if (fish->v > 2.0) {
       
  1826         chomp = -(fish->v - 2.0) * 200.0;
       
  1827     }
       
  1828     chomp = 100.0;
       
  1829 
       
  1830     P012[1] = iP012[1] + seg5;
       
  1831     P013[1] = iP013[1] + seg5;
       
  1832     P014[1] = iP014[1] + seg5;
       
  1833     P015[1] = iP015[1] + seg5;
       
  1834     P016[1] = iP016[1] + seg5;
       
  1835     P017[1] = iP017[1] + seg5;
       
  1836     P018[1] = iP018[1] + seg5;
       
  1837     P019[1] = iP019[1] + seg5;
       
  1838 
       
  1839     P020[1] = iP020[1] + seg4;
       
  1840     P021[1] = iP021[1] + seg4;
       
  1841     P022[1] = iP022[1] + seg4;
       
  1842     P023[1] = iP023[1] + seg4;
       
  1843     P024[1] = iP024[1] + seg4;
       
  1844     P025[1] = iP025[1] + seg4;
       
  1845     P026[1] = iP026[1] + seg4;
       
  1846     P027[1] = iP027[1] + seg4;
       
  1847 
       
  1848     P028[1] = iP028[1] + seg2;
       
  1849     P029[1] = iP029[1] + seg2;
       
  1850     P030[1] = iP030[1] + seg2;
       
  1851     P031[1] = iP031[1] + seg2;
       
  1852     P032[1] = iP032[1] + seg2;
       
  1853     P033[1] = iP033[1] + seg2;
       
  1854     P034[1] = iP034[1] + seg2;
       
  1855     P035[1] = iP035[1] + seg2;
       
  1856 
       
  1857     P036[1] = iP036[1] + seg1;
       
  1858     P037[1] = iP037[1] + seg1;
       
  1859     P038[1] = iP038[1] + seg1;
       
  1860     P039[1] = iP039[1] + seg1;
       
  1861     P040[1] = iP040[1] + seg1;
       
  1862     P041[1] = iP041[1] + seg1;
       
  1863     P042[1] = iP042[1] + seg1;
       
  1864     P043[1] = iP043[1] + seg1;
       
  1865 
       
  1866     P044[1] = iP044[1] + seg0;
       
  1867     P045[1] = iP045[1] + seg0;
       
  1868     P046[1] = iP046[1] + seg0;
       
  1869     P047[1] = iP047[1] + seg0;
       
  1870     P048[1] = iP048[1] + seg0;
       
  1871     P049[1] = iP049[1] + seg0;
       
  1872     P050[1] = iP050[1] + seg0;
       
  1873     P051[1] = iP051[1] + seg0;
       
  1874 
       
  1875     P009[1] = iP009[1] + seg6;
       
  1876     P010[1] = iP010[1] + seg6;
       
  1877     P075[1] = iP075[1] + seg6;
       
  1878     P076[1] = iP076[1] + seg6;
       
  1879 
       
  1880     P001[1] = iP001[1] + seg7;
       
  1881     P011[1] = iP011[1] + seg7;
       
  1882     P068[1] = iP068[1] + seg7;
       
  1883     P069[1] = iP069[1] + seg7;
       
  1884     P070[1] = iP070[1] + seg7;
       
  1885     P071[1] = iP071[1] + seg7;
       
  1886     P072[1] = iP072[1] + seg7;
       
  1887     P073[1] = iP073[1] + seg7;
       
  1888     P074[1] = iP074[1] + seg7;
       
  1889 
       
  1890     P091[1] = iP091[1] + seg3;
       
  1891     P092[1] = iP092[1] + seg3;
       
  1892     P093[1] = iP093[1] + seg3;
       
  1893     P094[1] = iP094[1] + seg3;
       
  1894     P095[1] = iP095[1] + seg3;
       
  1895     P122[1] = iP122[1] + seg3 * 1.5;
       
  1896 
       
  1897     P097[1] = iP097[1] + chomp;
       
  1898     P098[1] = iP098[1] + chomp;
       
  1899     P102[1] = iP102[1] + chomp;
       
  1900     P110[1] = iP110[1] + chomp;
       
  1901     P111[1] = iP111[1] + chomp;
       
  1902     P121[1] = iP121[1] + chomp;
       
  1903     P118[1] = iP118[1] + chomp;
       
  1904     P119[1] = iP119[1] + chomp;
       
  1905 
       
  1906     glPushMatrix();
       
  1907 
       
  1908     glRotatef(pitch, 1.0, 0.0, 0.0);
       
  1909 
       
  1910     glTranslatef(0.0, 0.0, 7000.0);
       
  1911 
       
  1912     glRotatef(180.0, 0.0, 1.0, 0.0);
       
  1913 
       
  1914     glEnable(GL_CULL_FACE);
       
  1915     Dolphin014();
       
  1916     Dolphin010();
       
  1917     Dolphin009();
       
  1918     Dolphin012();
       
  1919     Dolphin013();
       
  1920     Dolphin006();
       
  1921     Dolphin002();
       
  1922     Dolphin001();
       
  1923     Dolphin003();
       
  1924     Dolphin015();
       
  1925     Dolphin004();
       
  1926     Dolphin005();
       
  1927     Dolphin007();
       
  1928     Dolphin008();
       
  1929     Dolphin011();
       
  1930     Dolphin016();
       
  1931     glDisable(GL_CULL_FACE);
       
  1932 
       
  1933     glPopMatrix();
       
  1934 }