/**************************************************************************
****  EB_MODEL installe un cookie.                                     ****
****                                                                   ****
****              Sa structure est la suivante :                       ****
****                     cookie  : LONG = EBPO                         ****
****                     adresse : LONG adresse des informations       ****
****                                                                   ****
****              Structure de la zone d'informations de 8 octets      ****
****                               UINT Numro de version              ****
****                               UINT Numro du jour                 ****
****                               UINT Numro du mois                 ****
****                               UINT Numro de l'anne              ****
****                                                                   ****
****              Exemple : pour la version 2.01 du 21/3/1995          ****
****                        on a :                                     ****
****                                offset   |  Valeur (HEX)           ****
****                                   0     |     &201                ****
****                                   2     |     &21                 ****
****                                   4     |     &3                  ****
****                                   6     |     &1995               ***/
/**************************************************************************
STRUCTURE D'UN FICHIER *.EBS : Fichier contenant une scne pour EB_MODEL **
BARANGER Emmanuel              Pour version 2.88a et plus     16/09/1996 **
***************************************************************************/
/* Remarque importante
   Toutes les valeurs qui, dans P.O.V., sont comprises entre 0.0 et 1.0 sont
   ici codes sur un octet. Il faut donc faire les conversions ncessaires.
   (0.0  1.0 devient 0  255)
*/
/***********************************************
   Dfinition des termes utiliss :

   CHAR           8 bits non signs (Caractres)      (1 octets)
   BYTE           8 Bits non signs entiers           (1 octets)
   INT            16 Bits signs entiers              (2 octets)
   UINT           16 Bits non signs entiers          (2 octets)
   LONG           32 Bits signs entiers              (4 octets)
   ULONG          32 Bit non signs entiers           (4 octets)
   FLOAT          32 Bit signs flottant (format IEE) (4 octets)
   DOUBLE         64 bit signs flottant              (8 octets)

***********************************************/

/* Structure gnrale */

typedef struct
{

   CHAR[4]  EBPq
   LONG     L1    / Taille de la ligne de commentaire 1 termin par CR LF
   CHAR[L1]       / Commentaire 1
   LONG     L2    / Taille de la ligne de commentaire 2 termin par CR LF
   CHAR[L2]       / Commentaire 2
   LONG     L3    / Taille de la ligne de commentaire 3 termin par CR LF
   CHAR[L3]       / Commentaire 3
   LONG     L4    / Taille de la ligne de commentaire 4 termin par CR LF
   CHAR[L4]       / Commentaire 4
   LONG     L5    / Taille de la ligne de commentaire 5 termin par CR LF
   CHAR[L5]       / Commentaire 5
   LONG     L6    / Taille de la ligne de chemin        termin par CR LF
   CHAR[L6]       / Chemin d'accs au fichier include de textures
   LONG     L7    / Taille de la ligne de chemin        termin par CR LF
   CHAR[L7]       / Chemin d'accs au fichier include de couleurs
   /* termin par CR LF signifie que ces nombres ont t crit dans le
   fichier, non pas par le BPUT du GFA, mais par un PRINT #.
   */

   OBJET    0              // \  Le nombre d'objet tant dfinit avant
   ...                     //  \ la dfinition des zones de mmoire, il
   ...                     //  / et possible d'avoir un nombre d'objets
   OBJET    N-1            // /  diffrent d'un fichier  l'autre.
                           // Pour dtermin le nombre d'objets contenu
                           // dans un fichier, il suffit de faire :
                           // Taille totale du fichier - 7 premieres lignes
                           // - 808. Ce rsultat divis par 380 donne le
                           // nombre d'objets du fichier.
                           // 808 correspond  : camera+sources+defaut+fond

   FLOAT    Camera_X
   FLOAT    Camera_Y
   FLOAT    Camera_Z
   FLOAT    Vers_X
   FLOAT    Vers_Y
   FLOAT    Vers_z
   FLOAT    RotationZ   /* Rotation de la camra en degrs sur Z (l'horizon)
   INT      Objectif    /* Valeur de l'objectif (la focale donc...)
                          48 =   6 mm (objectif dit "FISH-EYE" )
                         144 =  18 mm ( grand angle )
                         224 =  24 mm ( grand angle )
                         280 =  35 mm ( grand angle )
                         400 =  50 mm ( vue normale )
                        1080 = 135 mm ( tlobjectif )
                        2240 = 280 mm ( tlobjectif )
                        3200 = 400 mm ( tlobjectif )

                        Petit calcul simple pour obtenir la valeur de l'angle
                        correspondant en langage GFA :
                              Angle=DEG(ATN(0.5/(FOCALE/400)))*2
                         */

   DEFAULT  Texture par dfaut. Identique  la zone TEXTURE/PIGMENT/NORMAL
            /FINISH avec le drapeau d'activation  l'octet 293

   BYTE     Brouillard_Fond      /*  Bit 0  1 : Brouillard dfinit */
                                 /*  Bit 1  1 : Background dfinit */
   BYTE     Un octet vide pour des adressages sur adresses paires
   INT      Numero_couleur_b     /* pour le brouillard */
   BYTE     Teinte_b
   BYTE     Luminosite_b
   BYTE     Saturation_b
   BYTE     Un octet vide pour des adressages sur adresses paires
   INT      Distance_b
   INT      Numero_couleur_f     /* pour le fond d'cran */
   BYTE     Teinte_f
   BYTE     Luminosite_f
   BYTE     Saturation_f
   BYTE     Un octet vide pour des adressages sur adresses paires

} TOTAL;


' Dfinition des zones objets    Version 2.70a du 05/03/96 et plus
' --------------------------------------------------------------------------
' ----------------------- Partie objet         78 octets     |
'                    Numro de l'objet : 2 octets            |   0
'                    Position en X     : 4 octets            |   2
'                    Position en Y     : 4 octets            |   6
'                    Position en Z     : 4 octets            |  10
'                    Largeur           : 4 octets            |  14
'                    Hauteur           : 4 octets            |  18
'                    Profondeur        : 4 octets            |  22
'                    Rotation sur X    : 4 octets            |  26
'                    Rotation sur Y    : 4 octets            |  30
'                    Rotation sur Z    : 4 octets            |  34
'                    Couleur de l'objet: 2 octets            |  38
'                    Type de C.S.G.    : 2 octets            |  40
'                    Relation C.S.G.   : 2 octets            |  42
'                    Nom de l'objet    : 23 octets           |  44
'                    Rapport spciale  :  1 octet            |  67
'                    Nom Height_Field  :  8 octets           |  68
'      Zone des drapeaux               :  2 octets           |  76
'                                   bit     0=OFF / 1=ON     |
'      Ombre (Partie gnrale)            bit 0 = Ombre      | ON/OFF
'      Visualisation de l'objet ON/OFF    bit 1 = Visuel     | ON/OFF
'      Pour les cnes,troncs et tubes     bit 2 = Ouvert     | ON/OFF
'      Drapeau bibliothque OUI/NON       bit 3 = Drapeau    | ON/OFF
'      Indique si c'est un BICUBIC        bit 4 = Bicubic    | ON/OFF
'      Indique si c'est une montagne      bit 5 = Montagne   | ON/OFF
'      Indique un objet facette           bit 6 = Facettes   | ON/OFF
'                                         bit 7 =            |
'                                                            |
'      Indique un objet QUADRIC           bit 0 = Quadric    | ON/OFF
'      Indique un objet QUARTIC           bit 1 = Quartic    | ON/OFF
'      Indique un objet facette en cne   bit 2 = Cne       | ON/OFF
'                                         bit 3 =            |
'                                         bit 4 =            |
'                                         bit 5 =            |
'                                         bit 6 =            |
'                                         bit 7 =            |
'                                                            |
' Zone de mmoire contenant les couleurs et les textures     |
' ----------------------- Partie gnrale      38 octets     |
'      Index de texture prdfinie       2 octets : Texture  |  78   0   0
'      Translate sur X         : 4 octets                    |  80   2   2
'      Translate sur Y         : 4 octets                    |  84   6   6
'      Translate sur Z         : 4 octets                    |  88  10  10
'      Echelle sur X           : 4 octets                    |  92  14  14
'      Echelle sur Y           : 4 octets                    |  96  18  18
'      Echelle sur Z           : 4 octets                    | 100  22  22
'      Rotation sur X          : 4 octets                    | 104  26  26
'      Rotation sur Y          : 4 octets                    | 108  30  30
'      Rotation sur Z          : 4 octets                    | 112  34  34
' ----------------------- Partie PIGMENT      180 octets     |
'      Index de Pigment prdfinie       2 octets : Pigment  | 116   0  38
'      Motifs                  : 1 octet                     | 118   2  40
'                                         bit 0 = Marble     |
'                                         bit 1 = Wood       |
'                                         bit 2 = Onion      |
'                                         bit 3 = Leopard    |
'                                         bit 4 = Granite    |
'                                         bit 5 = Bozo       |
'                                         bit 6 = Spotted    |
'                                         bit 7 = Agate      |
'      Aspect                  : 1 octet                     | 119   3  41
'                                   bit     0=OFF / 1=ON     |
'                                         bit 0 = Gradient   |
'                                         bit 1 = Turbulence |
'                                         bit 2 = Octaves    |
'                                         bit 3 = Lambda     |
'                                         bit 4 = Omega      |
'                                         bit 5 = Frequency  |
'                                         bit 6 = Phase      |
'                                         bit 7 = Color_map  |
'      Divers                  : 1 octet                     | 120   4  42
'                                   bit     0=OFF / 1=ON     |
'                                         bit 0 = Image_map  |
'                                         bit 1 = Checker    |
'                                         bit 2 = Hexagon    |
'                                         bit 3 = Color      |
'                                         bit 4 = Once       |
'                                         bit 5 = Interpolate| (0=2/1=4)
'                                   bit 7 6 Type d'Image_map |
'                                         00 = GIF           |
'                                         01 = TGA           |
'                                         10 = IFF           |
'                                         11 = DIS           |
'      Translate,Rotate,Scale  : 1 octet                     | 121   5  43
'                                   bit     0=OFF / 1=ON     |
'                                         bit 0 = Translate  |
'                                         bit 1 = Rotate     |
'                                         bit 2 = Scale      |
'                                   bit 3  5 Sens du mapping|
'                                         000 = Dessous      |
'                                         001 = Dessus       |
'                                         010 = Gauche       |
'                                         011 = Droite       |
'                                         100 = Devant       |
'                                         101 = Derrire     |
'                                   bit 7 6 Type_map         |
'                                         00 = Plan          |
'                                         01 = Sphre        |
'                                         10 = Cylindre      |
'                                         11 = Tor           |
'     Divers                   : 1 octet                     | 122   6  44
'                                         bit 0 = interpolate|  ON/OFF
'                                         bit 1 = Mandel     |  ON/OFF
'                                         bit 2 = Radial     |  ON/OFF
'                                         bit 3 = vide       |
'      Indique si la texture est multiple bit 4 = Multiple   |
'      Indique filtre image MAP prsents  bit 5 = Filtres    |  ON/OFF
'                                   bit 7 6 Type de gradient |
'                                         00 = sur X         |
'                                         01 = sur Y         |
'                                         10 = sur Z         |
' Valeur turbulence..........................................|..............
'                             : 3 octets                     |
'                                        1 octet : sur X     | 123   7  45
'                                        1 octet : sur Y     | 124   8  46
'                                        1 octet : sur Z     | 125   9  47
' Valeur rotate..............................................|..............
'                             : 12 octets                    |
'                                        4 octet : sur X     | 126  10  48
'                                        4 octet : sur Y     | 130  14  52
'                                        4 octet : sur Z     | 134  18  56
' Valeur translate ..........................................|..............
'                             : 12 octets                    |
'                                        4 octet : sur X     | 138  22  60
'                                        4 octet : sur Y     | 142  26  64
'                                        4 octet : sur Z     | 146  30  68
' Valeur scale...............................................|..............
'                             : 12 octets                    |
'                                        4 octet : sur X     | 150  34  72
'                                        4 octet : sur Y     | 154  38  76
'                                        4 octet : sur Z     | 158  42  80
' ...........................................................|..............
'      Valeur Octaves          : 1 octet                     | 162  46  84
'      Valeur Lambda           : 1 octet                     | 163  47  85
'      Valeur Omega            : 1 octet                     | 164  48  86
'      Valeur Frequency        : 1 octet                     | 165  49  87
'      Valeur Phase            : 1 octet                     | 166  50  88
'      Valeur Agate_Trub       : 1 octet                     | 167  51  89
' ...........................................................|..............
'      Color                   : 2 octets                    | 168  52  90
'      Teinte                  : 1 octet                     | 170  54  92
'      Luminosit              : 1 octet                     | 171  55  93
'      Saturation              : 1 octet                     | 172  56  94
'      Transparence            : 1 octet                     | 173  57  95
' Color_Map : Premire partie................................|..............
'      Color 1                 : 2 octets                    | 174  58  96
'      Teinte                  : 1 octet                     | 176  60  98
'      Luminosit              : 1 octet                     | 177  61  99
'      Saturation              : 1 octet                     | 178  62 100
'      Transparence            : 1 octet                     | 179  63 101
'      Color 2                 : 2 octets                    | 180  64 102
'      Teinte                  : 1 octet                     | 182  66 104
'      Luminosit              : 1 octet                     | 183  67 105
'      Saturation              : 1 octet                     | 184  68 106
'      Transparence            : 1 octet                     | 185  69 107
'      Color 3                 : 2 octets                    | 186  70 108
'      Teinte                  : 1 octet                     | 188  72 110
'      Luminosit              : 1 octet                     | 189  73 111
'      Saturation              : 1 octet                     | 190  74 112
'      Transparence            : 1 octet                     | 191  75 113
'      Color 4                 : 2 octets                    | 192  76 114
'      Teinte                  : 1 octet                     | 194  78 116
'      Luminosit              : 1 octet                     | 195  79 117
'      Saturation              : 1 octet                     | 196  80 118
'      Transparence            : 1 octet                     | 197  81 119
'      Color 5                 : 2 octets                    | 198  82 120
'      Teinte                  : 1 octet                     | 200  84 122
'      Luminosit              : 1 octet                     | 201  85 123
'      Saturation              : 1 octet                     | 202  86 124
'      Transparence            : 1 octet                     | 203  87 125
'      Color 6                 : 2 octets                    | 204  88 126
'      Teinte                  : 1 octet                     | 206  90 128
'      Luminosit              : 1 octet                     | 207  91 129
'      Saturation              : 1 octet                     | 208  92 130
'      Transparence            : 1 octet                     | 209  93 131
' Color_Map : Deuxime partie................................|..............
'      Color 1                 : 2 octets                    | 210  94 132
'      Teinte                  : 1 octet                     | 212  96 134
'      Luminosit              : 1 octet                     | 213  97 135
'      Saturation              : 1 octet                     | 214  98 136
'      Transparence            : 1 octet                     | 215  99 137
'      Color 2                 : 2 octets                    | 216 100 138
'      Teinte                  : 1 octet                     | 218 102 140
'      Luminosit              : 1 octet                     | 219 103 141
'      Saturation              : 1 octet                     | 220 104 142
'      Transparence            : 1 octet                     | 221 105 143
'      Color 3                 : 2 octets                    | 222 106 144
'      Teinte                  : 1 octet                     | 224 108 146
'      Luminosit              : 1 octet                     | 225 109 147
'      Saturation              : 1 octet                     | 226 110 148
'      Transparence            : 1 octet                     | 227 111 149
'      Color 4                 : 2 octets                    | 228 112 150
'      Teinte                  : 1 octet                     | 230 114 152
'      Luminosit              : 1 octet                     | 231 115 153
'      Saturation              : 1 octet                     | 232 116 154
'      Transparence            : 1 octet                     | 233 117 155
'      Color 5                 : 2 octets                    | 234 118 156
'      Teinte                  : 1 octet                     | 236 120 158
'      Luminosit              : 1 octet                     | 237 121 159
'      Saturation              : 1 octet                     | 238 122 160
'      Transparence            : 1 octet                     | 239 123 161
'      Color 6                 : 2 octets                    | 240 124 162
'      Teinte                  : 1 octet                     | 242 126 164
'      Luminosit              : 1 octet                     | 243 127 165
'      Saturation              : 1 octet                     | 244 128 166
'      Transparence            : 1 octet                     | 245 129 167
' ..........................................................................
'      Pourcentage couleur 1 N1: 1 octet                     | 246 130 168
'      Pourcentage couleur 2 N1: 1 octet                     | 247 131 169
'      Pourcentage couleur 3 N1: 1 octet                     | 248 132 170
'      Pourcentage couleur 4 N1: 1 octet                     | 249 133 171
'      Pourcentage couleur 5 N1: 1 octet                     | 250 134 172
'      Pourcentage couleur 6 N1: 1 octet                     | 251 135 173
'      Pourcentage couleur 1 N2: 1 octet                     | 252 136 174
'      Pourcentage couleur 2 N2: 1 octet                     | 253 137 175
'      Pourcentage couleur 3 N2: 1 octet                     | 254 138 176
'      Pourcentage couleur 4 N2: 1 octet                     | 255 139 177
'      Pourcentage couleur 5 N2: 1 octet                     | 256 140 178
'      Pourcentage couleur 6 N2: 1 octet                     | 257 141 179
' Checker color..............................................|..............
'      Color 1                 : 2 octets                    | 258 142 180
'      Teinte                  : 1 octet                     | 260 144 182
'      Luminosit              : 1 octet                     | 261 145 183
'      Saturation              : 1 octet                     | 262 146 184
'      Transparence            : 1 octet                     | 263 147 185
'      Color 2                 : 2 octets                    | 264 148 186
'      Teinte                  : 1 octet                     | 266 150 188
'      Luminosit              : 1 octet                     | 267 151 189
'      Saturation              : 1 octet                     | 268 152 190
'      Transparence            : 1 octet                     | 269 153 191
' Hexagon color..............................................|..............
'      Color 1                 : 2 octets                    | 270 154 192
'      Teinte                  : 1 octet                     | 272 156 194
'      Luminosit              : 1 octet                     | 273 157 195
'      Saturation              : 1 octet                     | 274 158 196
'      Transparence            : 1 octet                     | 275 159 197
'      Color 2                 : 2 octets                    | 276 160 198
'      Teinte                  : 1 octet                     | 278 162 200
'      Luminosit              : 1 octet                     | 279 163 201
'      Saturation              : 1 octet                     | 280 164 202
'      Transparence            : 1 octet                     | 281 165 203
'      Color 3                 : 2 octets                    | 282 166 204
'      Teinte                  : 1 octet                     | 284 168 206
'      Luminosit              : 1 octet                     | 285 169 207
'      Saturation              : 1 octet                     | 286 170 208
'      Transparence            : 1 octet                     | 287 171 209
' ...........................................................|..............
'      Nom de l'Image_map      : 8 octets  code ASCII        | 288 172 210
' ----------------------- Partie NORMAL         60 octets    |
'      Index de Normal prdfinie        2 octets : Normal   | 296   0 218
'      Motifs                  : 1 octet                     | 298   2 220
'                                   bit     0=OFF / 1=ON     |
'                                         bit 0 = Bump       |
'                                         bit 1 = Dents      |
'                                         bit 2 = Ripples    |
'                                         bit 3 = Waves      |
'                                         bit 4 = Wrinkles   |
'      Aspect                             bit 5 = Turbulence |
'                                         bit 6 = Frequency  |
'                                         bit 7 = Phase      |
'      Modification            : 1 octet                     | 299   3 221
'                                   bit     0=OFF / 1=ON     |
'                                         bit 0 = Translate  |
'                                         bit 1 = Rotate     |
'                                         bit 2 = Scale      |
'                                         bit 3 = Once       |
'                                         bit 4 = Interpolate|( 0=2/1=4)
'                                         bit 5 = Bump_map   |
'                                   bit 7 6 Type de Bump_map |
'                                         00 = GIF           |
'                                         01 = TGA           |
'                                         10 = IFF           |
'                                         11 = DIS           |
'      Type de projection      : 1 octet                     | 300   4 222
'                                         bit 0 = use_index  |  ON/OFF
'                                         bit 1 = Interpolate|
'                                         bit 2 = vide       |
'                                   bit 3  5 Sens du relief |
'                                         000 = Dessous      |
'                                         001 = Dessus       |
'                                         010 = Gauche       |
'                                         011 = Droite       |
'                                         100 = Devant       |
'                                         101 = Derrire     |
'                                   bit 6 7 Type_map         |
'                                         00 = Plan          |
'                                         01 = Sphre        |
'                                         10 = Cylindre      |
'                                         11 = Tor           |
'                                                            |
'      Valeur Bump             : 1 octet                     | 301   5 223
'      Valeur Dent             : 1 octet                     | 302   6 224
'      Valeur Ripples          : 1 octet                     | 303   7 225
'      Valeur Waves            : 1 octet                     | 304   8 226
'      Valeur Wrinkles         : 1 octet                     | 305   9 227
' .........................................................................
'      valeur Turbulence       : 3 octets                    |
'                                        1 octet : sur X     | 306  10 228
'                                        1 octet : sur Y     | 307  11 229
'                                        1 octet : sur Z     | 308  12 230
' ..........................................................................
'      Valeur Frequency        : 1 octet                     | 309  13 231
'      Valeur Phase            : 1 octet                     | 310  14 232
'      Valeur BUMP SIZE        : 1 octet                     | 311  15 233
' Valeur rotate .............................................|..............
'                              : 12 octets                   |
'                                        4 octet : sur X     | 312  16 234
'                                        4 octet : sur Y     | 316  20 238
'                                        4 octet : sur Z     | 320  24 242
' Valeur translate ..........................................|...............
'                              : 12 octets                   |
'                                        4 octet : sur X     | 324  28 246
'                                        4 octet : sur Y     | 328  32 250
'                                        4 octet : sur Z     | 332  36 254
' Valeur scale ..............................................|...............
'                              : 12 octets                   |
'                                        4 octet : sur X     | 336  40 258
'                                        4 octet : sur Y     | 340  44 262
'                                        4 octet : sur Z     | 344  48 266
'                                                            |
'      Nom du Bump_map         : 8 octets  code ASCII        | 348  52 270
' ----------------------- Partie FINISH         16 octets    |
'      Index de Finish prdfinie        2 octets : Finish   | 356   0 278
'      Motifs                  : 1 octet                     | 358   2 280
'                                   bit     0=OFF / 1=ON     |
'                                         bit 0 = Diffuse    |
'                                         bit 1 = Reflection |
'                                         bit 2 = Brilliance |
'                                         bit 3 = Crand      |
'                                         bit 4 = Ambient    |
'                                         bit 5 = Specular et Roughness
'                                         bit 6 = Vide       |
'                                         bit 7 = Phong      |
'      Refraction              : 1 octet                     | 359   3 281
'                                   bit     0=OFF / 1=ON     |
'                                         bit 0 = Refraction |
'                                         bit 1 = metalique  |
'                                   bit 2  7 vides          |
'      IOR                     : 1 octet                     | 360   4 282
'                                     0 : Rien               |
'                                   100 : Air                |
'                                   133 : Eau                |
'                                   150 : Verre              |
'                                   240 : Diamant            |
'                                 autre : Valeur libre       |
'    Valeur IOR libre        : 1 octet                       | 361   5 283
'    Valeur Diffuse          : 1 octet                       | 362   6 284
'    Valeur Reflection       : 1 octet                       | 363   7 285
'    Valeur Brilliance       : 1 octet                       | 364   8 286
'    Valeur Crand            : 1 octet                       | 365   9 287
'    Valeur Ambient          : 1 octet                       | 366  10 288
'    Valeur Specular         : 1 octet                       | 367  11 289
'    Valeur Roughness        : 1 octet                       | 368  12 290
'    Valeur Phong            : 1 octet                       | 369  13 291
'    Valeur Phong_Size       : 1 octet                       | 370  14 292
'                                                            |
'    Octet de parit                                         | 371  15 293
'      Indique une texture par dfaut     bit 0 = Multiple   | ON/OFF
'      Indique une texture multiple       bit 1 = Multiple   | ON/OFF
'      Indique un carrelage en textures   bit 7 = TILES      | ON/OFF
'                                                            |
' ----------------------- Paramtrage des BLOBS  8 octets    |
'    Threshold des Blobs      : 4 octets                     | 372   0 294
'    Force du composant Blob  : 4 octets                     | 376   4 298
' -----------------------------------------------------------------------
Taille Totale : 380

/**************************************************************************
STRUCTURE D'UN FICHIER *.LUM  Fichier contenant les sources de lumires  **
                              Pour version 2.90a et plus     16/09/1996  **
**************************************************************************/
/* Structure SOURCE. Dfinition d'une source de lumire */

{ Structure gnrale

   LONG     NBL   / Nombre de lampes                    termin par CR LF
   SOURCE         \
   .               \
   .                > Autant de fois qu'indiqu dans NBL
   .               /
   SOURCE         /
}

typedef struct
{
   BYTE     Flags                /* =1 si lumire allume   */
                                 /* =0 si lumire teinte   */
   BYTE     Teinte_source        /* de 0  255              */
   BYTE     Luminosite_source    /* de 0  255              */
   BYTE     Saturation_source    /* de 0  255              */
   FLOAT    Source_X
   FLOAT    Source_Y
   FLOAT    Source_Z
   FLOAT    Svers_X
   FLOAT    Svers_Y
   FLOAT    Svers_Z
   INT      Objet_lie
   INT      Radius
   INT      Falloff
   INT      Tightness
   CHAR[22] Nom de la source lumineuse
   FLOAT    Largeur de la surface lumineuse
   FLOAT    Longueur de la surface lumineuse
   FLOAT    Adaptive pour surface lumineuse
   BYTE     Jitter pour surface lumineuse
   BYTE     Flags                         /* Bit 0 = 1 : Un soleil      */
                                          /* Bit 1 = 1 : Un projecteur  */
                                          /* Bit 2 = 1 : Une surface    */
                                          /* Bit 3 = 1 : Un objet li   */
}  SOURCE;

/**************************************************************************
STRUCTURE D'UN FICHIER *.EBO  Fichier contenant les objets imports,     **
                              tourns, extruds, quartic, quadric et CSG **
BARANGER Emmanuel             Pour version 2.88a et plus     15/07/1996  **
**************************************************************************/
   LONG  primitive   /* Termin par CR FF
   Le nombre d'objet se trouvant dans le fichier EBO est : (primitive-14)-1
   LONG  taille      /* Termin par CR LF
   Si taille est gale  -1 nous avons une dclaration de C.S.G
      INT      Toujours  zro
      UINT     Nombre d'objets composant la C.S.G (N)
      .
      UINT     Numro de l'objet 1  > Autant de fois que d'objets (N)
      .
      UINT     Numro de l'objet C.S.G
      .
      INT      Toujours  zro
      UINT     Nombre d'objets composant la C.S.G (N)
      .
      UINT     Nombre_de_points-1
      .
      . Les coordonnes sont indiques en LONG car multiplies par 1024
      . ce qui donne une prcision de 3 chiffres aprs la virgule.
      .
      LONG     Coordonne X      \
      LONG     Coordonne Y       > Autant de fois que de points
      LONG     Coordonne Z      /
      .
      UINT     Nombre de faces-1
      .
      INT      Nombre de points de la face-1      \
      INT      Point 1   \                         \
      INT      Point 2    \ Toujours 4 emplacements > Autant de fois que de
      INT      Point 3    / (donc un maximum de 4  /  faces
      INT      Point 4   /  points par face)      /
      .

   Si la taille est gale  -2 nous avons une dclaration de QUARTIC
      UINT     Nombre_de_points-1
      .
      . Les coordonnes sont indiques en LONG car multiplies par 1024
      . ce qui donne une prcision de 3 chiffres aprs la virgule.
      .
      LONG     X premier point   \
      LONG     Y premier point    > Autant de fois que de points
      LONG     Z premier point   /
      .
      UINT     Nombre de faces-1
      .
      INT      Nombre de points de la face-1      \
      INT      Point 1   \                         \
      INT      Point 2    \ Toujours 4 emplacements > Autant de fois que de
      INT      Point 3    / (donc un maximum de 4  /  faces
      INT      Point 4   /  points par face)      /
      .
      . Les paramtres sont indiques en LONG car multiplies par 1024
      . ce qui donne une prcision de 3 chiffres aprs la virgule.
      .
      LONG     Premier paramtre de la formule QUARTIC
      LONG     Second paramtre de la formule QUARTIC
      .
      .
      LONG     Trente quatrime paramtre de la formule QUARTIC
      LONG     Trente cinquime paramtre de la formule QUARTIC
      .
   Si la taille est gale  -3 nous avons une dclaration de QUADRIC
      UINT     Nombre_de_points-1
      .
      . Les coordonnes sont indiques en LONG car multiplies par 1024
      . ce qui donne une prcision de 3 chiffres aprs la virgule.
      .
      LONG     X premier point   \
      LONG     Y premier point    > Autant de fois que de points
      LONG     Z premier point   /
      .
      UINT     Nombre de faces-1
      .
      INT      Nombre de points de la face-1      \
      INT      Point 1   \                         \
      INT      Point 2    \ Toujours 4 emplacements > Autant de fois que de
      INT      Point 3    / (donc un maximum de 4  /  faces
      INT      Point 4   /  points par face)      /

      .
      . Les paramtres sont indiques en LONG car multiplies par 1024
      . ce qui donne une prcision de 3 chiffres aprs la virgule.
      .
      LONG     Premier paramtre de la formule QUADRIC
      LONG     Second paramtre de la formule QUADRIC
      .
      .
      LONG     Neuvime paramtre de la formule QUADRIC
      LONG     Dixime paramtre de la formule QUADRIC
      .
   Si taille est plus grand que 0 nous avons soit un objet import, soit un
   BICUBIC
      UINT     Nombre_de_points-1
      .
      . Les coordonnes sont indiques en LONG car multiplies par 1024
      . ce qui donne une prcision de 3 chiffres aprs la virgule.
      .
      LONG     X premier point   \
      LONG     Y premier point    > Autant de fois que de points
      LONG     Z premier point   /
      .
      UINT     Nombre de faces-1
      .
      INT      Nombre de points de la face-1      \
      INT      Point 1   \                         \
      INT      Point 2    \ Toujours 4 emplacements > Autant de fois que de
      INT      Point 3    / (donc un maximum de 4  /  faces
      INT      Point 4   /  points par face)      /
      .

   Si la taille est gale  1820 et que le nombre de point est de 97 alors,
il y a de grande chance que l'objet dfini soit un BICUBIC. Dans ce cas, il
faut lire se qui suit  la place de ce qui prcede :
      ( Bon, d'accord, le principe est franchement hasardeux, mais, pour le
      moment, je n'ai pas eu le temps de le changer)

      UINT     Nombre_de_points-1   (donc, 97 soit : 81 points pour l'objet
      .                                              16 points pour les
      .                                                 points de contrle
      .                                              1 points pour le reste
      . Les coordonnes sont indiques en LONG car multiplies par 1024
      . ce qui donne une prcision de 3 chiffres aprs la virgule.
      .
      LONG     X premier point   \
      LONG     Y premier point    > Donc 81 fois
      LONG     Z premier point   /
      .
      LONG     X premier point   \
      LONG     Y premier point    > Donc 16 fois (les points de contrle
      LONG     Z premier point   /  enregistr dans l'ordre suivant
      .
      .                              1---- 2---- 3---- 4
      .                              |     |     |     |
      .                              5---- 6---- 7---- 8
      .                              |     |     |     |
      .                              9----10----11----12
      .                              |     |     |     |
      .                             13----14----15----16
      .
      INT      Paramtre TYPE (0 ou 1)
      INT      Valeur de Flatness (de 1  10 => POV : 0.1  1)
      INT      Valeur de U-Steps/V-Steps  (de 1  8)
      INT      Vide pour l'instant
      INT      Vide pour l'instant
      INT      Vide pour l'instant
      .
      UINT     Nombre de faces-1
      .
      INT      Nombre de points de la face-1      \
      INT      Point 1   \                         \
      INT      Point 2    \ Toujours 4 emplacements > Autant de fois que de
      INT      Point 3    / (donc un maximum de 4  /  faces
      INT      Point 4   /  points par face)      /
      .
