Hex Artifact Content
Not logged in

Artifact 8200e1174cb38c63c68d171685e8f0327d611f5b:


0000: 0a 3b 3b 3b 20 59 70 73 69 6c 6f 6e 20 53 63 68  .;;; Ypsilon Sch
0010: 65 6d 65 20 53 79 73 74 65 6d 0a 3b 3b 3b 20 43  eme System.;;; C
0020: 6f 70 79 72 69 67 68 74 20 28 63 29 20 32 30 30  opyright (c) 200
0030: 34 2d 32 30 30 39 20 59 2e 46 55 4a 49 54 41 20  4-2009 Y.FUJITA 
0040: 2f 20 4c 69 74 74 6c 65 57 69 6e 67 20 43 6f 6d  / LittleWing Com
0050: 70 61 6e 79 20 4c 69 6d 69 74 65 64 2e 0a 3b 3b  pany Limited..;;
0060: 3b 20 53 65 65 20 6c 69 63 65 6e 73 65 2e 74 78  ; See license.tx
0070: 74 20 66 6f 72 20 74 65 72 6d 73 20 61 6e 64 20  t for terms and 
0080: 63 6f 6e 64 69 74 69 6f 6e 73 20 6f 66 20 75 73  conditions of us
0090: 65 2e 0a 0a 3b 3b 3b 20 50 6f 72 74 65 64 20 74  e...;;; Ported t
00a0: 6f 20 43 68 65 7a 20 53 63 68 65 6d 65 20 62 79  o Chez Scheme by
00b0: 20 45 64 20 43 61 76 61 7a 6f 73 20 28 77 61 79   Ed Cavazos (way
00c0: 6f 2e 63 61 76 61 7a 6f 73 40 67 6d 61 69 6c 2e  o.cavazos@gmail.
00d0: 63 6f 6d 29 0a 0a 28 6c 69 62 72 61 72 79 20 28  com)..(library (
00e0: 67 6c 75 29 0a 0a 20 20 28 65 78 70 6f 72 74 20  glu)..  (export 
00f0: 47 4c 55 5f 45 58 54 5f 6f 62 6a 65 63 74 5f 73  GLU_EXT_object_s
0100: 70 61 63 65 5f 74 65 73 73 0a 20 20 20 20 20 20  pace_tess.      
0110: 20 20 20 20 47 4c 55 5f 45 58 54 5f 6e 75 72 62      GLU_EXT_nurb
0120: 73 5f 74 65 73 73 65 6c 6c 61 74 6f 72 0a 20 20  s_tessellator.  
0130: 20 20 20 20 20 20 20 20 47 4c 55 5f 46 41 4c 53          GLU_FALS
0140: 45 0a 20 20 20 20 20 20 20 20 20 20 47 4c 55 5f  E.          GLU_
0150: 54 52 55 45 0a 20 20 20 20 20 20 20 20 20 20 47  TRUE.          G
0160: 4c 55 5f 56 45 52 53 49 4f 4e 5f 31 5f 31 0a 20  LU_VERSION_1_1. 
0170: 20 20 20 20 20 20 20 20 20 47 4c 55 5f 56 45 52           GLU_VER
0180: 53 49 4f 4e 5f 31 5f 32 0a 20 20 20 20 20 20 20  SION_1_2.       
0190: 20 20 20 47 4c 55 5f 56 45 52 53 49 4f 4e 5f 31     GLU_VERSION_1
01a0: 5f 33 0a 20 20 20 20 20 20 20 20 20 20 47 4c 55  _3.          GLU
01b0: 5f 56 45 52 53 49 4f 4e 0a 20 20 20 20 20 20 20  _VERSION.       
01c0: 20 20 20 47 4c 55 5f 45 58 54 45 4e 53 49 4f 4e     GLU_EXTENSION
01d0: 53 0a 20 20 20 20 20 20 20 20 20 20 47 4c 55 5f  S.          GLU_
01e0: 49 4e 56 41 4c 49 44 5f 45 4e 55 4d 0a 20 20 20  INVALID_ENUM.   
01f0: 20 20 20 20 20 20 20 47 4c 55 5f 49 4e 56 41 4c         GLU_INVAL
0200: 49 44 5f 56 41 4c 55 45 0a 20 20 20 20 20 20 20  ID_VALUE.       
0210: 20 20 20 47 4c 55 5f 4f 55 54 5f 4f 46 5f 4d 45     GLU_OUT_OF_ME
0220: 4d 4f 52 59 0a 20 20 20 20 20 20 20 20 20 20 47  MORY.          G
0230: 4c 55 5f 49 4e 43 4f 4d 50 41 54 49 42 4c 45 5f  LU_INCOMPATIBLE_
0240: 47 4c 5f 56 45 52 53 49 4f 4e 0a 20 20 20 20 20  GL_VERSION.     
0250: 20 20 20 20 20 47 4c 55 5f 49 4e 56 41 4c 49 44       GLU_INVALID
0260: 5f 4f 50 45 52 41 54 49 4f 4e 0a 20 20 20 20 20  _OPERATION.     
0270: 20 20 20 20 20 47 4c 55 5f 4f 55 54 4c 49 4e 45       GLU_OUTLINE
0280: 5f 50 4f 4c 59 47 4f 4e 0a 20 20 20 20 20 20 20  _POLYGON.       
0290: 20 20 20 47 4c 55 5f 4f 55 54 4c 49 4e 45 5f 50     GLU_OUTLINE_P
02a0: 41 54 43 48 0a 20 20 20 20 20 20 20 20 20 20 47  ATCH.          G
02b0: 4c 55 5f 4e 55 52 42 53 5f 45 52 52 4f 52 0a 20  LU_NURBS_ERROR. 
02c0: 20 20 20 20 20 20 20 20 20 47 4c 55 5f 45 52 52           GLU_ERR
02d0: 4f 52 0a 20 20 20 20 20 20 20 20 20 20 47 4c 55  OR.          GLU
02e0: 5f 4e 55 52 42 53 5f 42 45 47 49 4e 0a 20 20 20  _NURBS_BEGIN.   
02f0: 20 20 20 20 20 20 20 47 4c 55 5f 4e 55 52 42 53         GLU_NURBS
0300: 5f 42 45 47 49 4e 5f 45 58 54 0a 20 20 20 20 20  _BEGIN_EXT.     
0310: 20 20 20 20 20 47 4c 55 5f 4e 55 52 42 53 5f 56       GLU_NURBS_V
0320: 45 52 54 45 58 0a 20 20 20 20 20 20 20 20 20 20  ERTEX.          
0330: 47 4c 55 5f 4e 55 52 42 53 5f 56 45 52 54 45 58  GLU_NURBS_VERTEX
0340: 5f 45 58 54 0a 20 20 20 20 20 20 20 20 20 20 47  _EXT.          G
0350: 4c 55 5f 4e 55 52 42 53 5f 4e 4f 52 4d 41 4c 0a  LU_NURBS_NORMAL.
0360: 20 20 20 20 20 20 20 20 20 20 47 4c 55 5f 4e 55            GLU_NU
0370: 52 42 53 5f 4e 4f 52 4d 41 4c 5f 45 58 54 0a 20  RBS_NORMAL_EXT. 
0380: 20 20 20 20 20 20 20 20 20 47 4c 55 5f 4e 55 52           GLU_NUR
0390: 42 53 5f 43 4f 4c 4f 52 0a 20 20 20 20 20 20 20  BS_COLOR.       
03a0: 20 20 20 47 4c 55 5f 4e 55 52 42 53 5f 43 4f 4c     GLU_NURBS_COL
03b0: 4f 52 5f 45 58 54 0a 20 20 20 20 20 20 20 20 20  OR_EXT.         
03c0: 20 47 4c 55 5f 4e 55 52 42 53 5f 54 45 58 54 55   GLU_NURBS_TEXTU
03d0: 52 45 5f 43 4f 4f 52 44 0a 20 20 20 20 20 20 20  RE_COORD.       
03e0: 20 20 20 47 4c 55 5f 4e 55 52 42 53 5f 54 45 58     GLU_NURBS_TEX
03f0: 5f 43 4f 4f 52 44 5f 45 58 54 0a 20 20 20 20 20  _COORD_EXT.     
0400: 20 20 20 20 20 47 4c 55 5f 4e 55 52 42 53 5f 45       GLU_NURBS_E
0410: 4e 44 0a 20 20 20 20 20 20 20 20 20 20 47 4c 55  ND.          GLU
0420: 5f 4e 55 52 42 53 5f 45 4e 44 5f 45 58 54 0a 20  _NURBS_END_EXT. 
0430: 20 20 20 20 20 20 20 20 20 47 4c 55 5f 4e 55 52           GLU_NUR
0440: 42 53 5f 42 45 47 49 4e 5f 44 41 54 41 0a 20 20  BS_BEGIN_DATA.  
0450: 20 20 20 20 20 20 20 20 47 4c 55 5f 4e 55 52 42          GLU_NURB
0460: 53 5f 42 45 47 49 4e 5f 44 41 54 41 5f 45 58 54  S_BEGIN_DATA_EXT
0470: 0a 20 20 20 20 20 20 20 20 20 20 47 4c 55 5f 4e  .          GLU_N
0480: 55 52 42 53 5f 56 45 52 54 45 58 5f 44 41 54 41  URBS_VERTEX_DATA
0490: 0a 20 20 20 20 20 20 20 20 20 20 47 4c 55 5f 4e  .          GLU_N
04a0: 55 52 42 53 5f 56 45 52 54 45 58 5f 44 41 54 41  URBS_VERTEX_DATA
04b0: 5f 45 58 54 0a 20 20 20 20 20 20 20 20 20 20 47  _EXT.          G
04c0: 4c 55 5f 4e 55 52 42 53 5f 4e 4f 52 4d 41 4c 5f  LU_NURBS_NORMAL_
04d0: 44 41 54 41 0a 20 20 20 20 20 20 20 20 20 20 47  DATA.          G
04e0: 4c 55 5f 4e 55 52 42 53 5f 4e 4f 52 4d 41 4c 5f  LU_NURBS_NORMAL_
04f0: 44 41 54 41 5f 45 58 54 0a 20 20 20 20 20 20 20  DATA_EXT.       
0500: 20 20 20 47 4c 55 5f 4e 55 52 42 53 5f 43 4f 4c     GLU_NURBS_COL
0510: 4f 52 5f 44 41 54 41 0a 20 20 20 20 20 20 20 20  OR_DATA.        
0520: 20 20 47 4c 55 5f 4e 55 52 42 53 5f 43 4f 4c 4f    GLU_NURBS_COLO
0530: 52 5f 44 41 54 41 5f 45 58 54 0a 20 20 20 20 20  R_DATA_EXT.     
0540: 20 20 20 20 20 47 4c 55 5f 4e 55 52 42 53 5f 54       GLU_NURBS_T
0550: 45 58 54 55 52 45 5f 43 4f 4f 52 44 5f 44 41 54  EXTURE_COORD_DAT
0560: 41 0a 20 20 20 20 20 20 20 20 20 20 47 4c 55 5f  A.          GLU_
0570: 4e 55 52 42 53 5f 54 45 58 5f 43 4f 4f 52 44 5f  NURBS_TEX_COORD_
0580: 44 41 54 41 5f 45 58 54 0a 20 20 20 20 20 20 20  DATA_EXT.       
0590: 20 20 20 47 4c 55 5f 4e 55 52 42 53 5f 45 4e 44     GLU_NURBS_END
05a0: 5f 44 41 54 41 0a 20 20 20 20 20 20 20 20 20 20  _DATA.          
05b0: 47 4c 55 5f 4e 55 52 42 53 5f 45 4e 44 5f 44 41  GLU_NURBS_END_DA
05c0: 54 41 5f 45 58 54 0a 20 20 20 20 20 20 20 20 20  TA_EXT.         
05d0: 20 47 4c 55 5f 4e 55 52 42 53 5f 45 52 52 4f 52   GLU_NURBS_ERROR
05e0: 31 0a 20 20 20 20 20 20 20 20 20 20 47 4c 55 5f  1.          GLU_
05f0: 4e 55 52 42 53 5f 45 52 52 4f 52 32 0a 20 20 20  NURBS_ERROR2.   
0600: 20 20 20 20 20 20 20 47 4c 55 5f 4e 55 52 42 53         GLU_NURBS
0610: 5f 45 52 52 4f 52 33 0a 20 20 20 20 20 20 20 20  _ERROR3.        
0620: 20 20 47 4c 55 5f 4e 55 52 42 53 5f 45 52 52 4f    GLU_NURBS_ERRO
0630: 52 34 0a 20 20 20 20 20 20 20 20 20 20 47 4c 55  R4.          GLU
0640: 5f 4e 55 52 42 53 5f 45 52 52 4f 52 35 0a 20 20  _NURBS_ERROR5.  
0650: 20 20 20 20 20 20 20 20 47 4c 55 5f 4e 55 52 42          GLU_NURB
0660: 53 5f 45 52 52 4f 52 36 0a 20 20 20 20 20 20 20  S_ERROR6.       
0670: 20 20 20 47 4c 55 5f 4e 55 52 42 53 5f 45 52 52     GLU_NURBS_ERR
0680: 4f 52 37 0a 20 20 20 20 20 20 20 20 20 20 47 4c  OR7.          GL
0690: 55 5f 4e 55 52 42 53 5f 45 52 52 4f 52 38 0a 20  U_NURBS_ERROR8. 
06a0: 20 20 20 20 20 20 20 20 20 47 4c 55 5f 4e 55 52           GLU_NUR
06b0: 42 53 5f 45 52 52 4f 52 39 0a 20 20 20 20 20 20  BS_ERROR9.      
06c0: 20 20 20 20 47 4c 55 5f 4e 55 52 42 53 5f 45 52      GLU_NURBS_ER
06d0: 52 4f 52 31 30 0a 20 20 20 20 20 20 20 20 20 20  ROR10.          
06e0: 47 4c 55 5f 4e 55 52 42 53 5f 45 52 52 4f 52 31  GLU_NURBS_ERROR1
06f0: 31 0a 20 20 20 20 20 20 20 20 20 20 47 4c 55 5f  1.          GLU_
0700: 4e 55 52 42 53 5f 45 52 52 4f 52 31 32 0a 20 20  NURBS_ERROR12.  
0710: 20 20 20 20 20 20 20 20 47 4c 55 5f 4e 55 52 42          GLU_NURB
0720: 53 5f 45 52 52 4f 52 31 33 0a 20 20 20 20 20 20  S_ERROR13.      
0730: 20 20 20 20 47 4c 55 5f 4e 55 52 42 53 5f 45 52      GLU_NURBS_ER
0740: 52 4f 52 31 34 0a 20 20 20 20 20 20 20 20 20 20  ROR14.          
0750: 47 4c 55 5f 4e 55 52 42 53 5f 45 52 52 4f 52 31  GLU_NURBS_ERROR1
0760: 35 0a 20 20 20 20 20 20 20 20 20 20 47 4c 55 5f  5.          GLU_
0770: 4e 55 52 42 53 5f 45 52 52 4f 52 31 36 0a 20 20  NURBS_ERROR16.  
0780: 20 20 20 20 20 20 20 20 47 4c 55 5f 4e 55 52 42          GLU_NURB
0790: 53 5f 45 52 52 4f 52 31 37 0a 20 20 20 20 20 20  S_ERROR17.      
07a0: 20 20 20 20 47 4c 55 5f 4e 55 52 42 53 5f 45 52      GLU_NURBS_ER
07b0: 52 4f 52 31 38 0a 20 20 20 20 20 20 20 20 20 20  ROR18.          
07c0: 47 4c 55 5f 4e 55 52 42 53 5f 45 52 52 4f 52 31  GLU_NURBS_ERROR1
07d0: 39 0a 20 20 20 20 20 20 20 20 20 20 47 4c 55 5f  9.          GLU_
07e0: 4e 55 52 42 53 5f 45 52 52 4f 52 32 30 0a 20 20  NURBS_ERROR20.  
07f0: 20 20 20 20 20 20 20 20 47 4c 55 5f 4e 55 52 42          GLU_NURB
0800: 53 5f 45 52 52 4f 52 32 31 0a 20 20 20 20 20 20  S_ERROR21.      
0810: 20 20 20 20 47 4c 55 5f 4e 55 52 42 53 5f 45 52      GLU_NURBS_ER
0820: 52 4f 52 32 32 0a 20 20 20 20 20 20 20 20 20 20  ROR22.          
0830: 47 4c 55 5f 4e 55 52 42 53 5f 45 52 52 4f 52 32  GLU_NURBS_ERROR2
0840: 33 0a 20 20 20 20 20 20 20 20 20 20 47 4c 55 5f  3.          GLU_
0850: 4e 55 52 42 53 5f 45 52 52 4f 52 32 34 0a 20 20  NURBS_ERROR24.  
0860: 20 20 20 20 20 20 20 20 47 4c 55 5f 4e 55 52 42          GLU_NURB
0870: 53 5f 45 52 52 4f 52 32 35 0a 20 20 20 20 20 20  S_ERROR25.      
0880: 20 20 20 20 47 4c 55 5f 4e 55 52 42 53 5f 45 52      GLU_NURBS_ER
0890: 52 4f 52 32 36 0a 20 20 20 20 20 20 20 20 20 20  ROR26.          
08a0: 47 4c 55 5f 4e 55 52 42 53 5f 45 52 52 4f 52 32  GLU_NURBS_ERROR2
08b0: 37 0a 20 20 20 20 20 20 20 20 20 20 47 4c 55 5f  7.          GLU_
08c0: 4e 55 52 42 53 5f 45 52 52 4f 52 32 38 0a 20 20  NURBS_ERROR28.  
08d0: 20 20 20 20 20 20 20 20 47 4c 55 5f 4e 55 52 42          GLU_NURB
08e0: 53 5f 45 52 52 4f 52 32 39 0a 20 20 20 20 20 20  S_ERROR29.      
08f0: 20 20 20 20 47 4c 55 5f 4e 55 52 42 53 5f 45 52      GLU_NURBS_ER
0900: 52 4f 52 33 30 0a 20 20 20 20 20 20 20 20 20 20  ROR30.          
0910: 47 4c 55 5f 4e 55 52 42 53 5f 45 52 52 4f 52 33  GLU_NURBS_ERROR3
0920: 31 0a 20 20 20 20 20 20 20 20 20 20 47 4c 55 5f  1.          GLU_
0930: 4e 55 52 42 53 5f 45 52 52 4f 52 33 32 0a 20 20  NURBS_ERROR32.  
0940: 20 20 20 20 20 20 20 20 47 4c 55 5f 4e 55 52 42          GLU_NURB
0950: 53 5f 45 52 52 4f 52 33 33 0a 20 20 20 20 20 20  S_ERROR33.      
0960: 20 20 20 20 47 4c 55 5f 4e 55 52 42 53 5f 45 52      GLU_NURBS_ER
0970: 52 4f 52 33 34 0a 20 20 20 20 20 20 20 20 20 20  ROR34.          
0980: 47 4c 55 5f 4e 55 52 42 53 5f 45 52 52 4f 52 33  GLU_NURBS_ERROR3
0990: 35 0a 20 20 20 20 20 20 20 20 20 20 47 4c 55 5f  5.          GLU_
09a0: 4e 55 52 42 53 5f 45 52 52 4f 52 33 36 0a 20 20  NURBS_ERROR36.  
09b0: 20 20 20 20 20 20 20 20 47 4c 55 5f 4e 55 52 42          GLU_NURB
09c0: 53 5f 45 52 52 4f 52 33 37 0a 20 20 20 20 20 20  S_ERROR37.      
09d0: 20 20 20 20 47 4c 55 5f 41 55 54 4f 5f 4c 4f 41      GLU_AUTO_LOA
09e0: 44 5f 4d 41 54 52 49 58 0a 20 20 20 20 20 20 20  D_MATRIX.       
09f0: 20 20 20 47 4c 55 5f 43 55 4c 4c 49 4e 47 0a 20     GLU_CULLING. 
0a00: 20 20 20 20 20 20 20 20 20 47 4c 55 5f 53 41 4d           GLU_SAM
0a10: 50 4c 49 4e 47 5f 54 4f 4c 45 52 41 4e 43 45 0a  PLING_TOLERANCE.
0a20: 20 20 20 20 20 20 20 20 20 20 47 4c 55 5f 44 49            GLU_DI
0a30: 53 50 4c 41 59 5f 4d 4f 44 45 0a 20 20 20 20 20  SPLAY_MODE.     
0a40: 20 20 20 20 20 47 4c 55 5f 50 41 52 41 4d 45 54       GLU_PARAMET
0a50: 52 49 43 5f 54 4f 4c 45 52 41 4e 43 45 0a 20 20  RIC_TOLERANCE.  
0a60: 20 20 20 20 20 20 20 20 47 4c 55 5f 53 41 4d 50          GLU_SAMP
0a70: 4c 49 4e 47 5f 4d 45 54 48 4f 44 0a 20 20 20 20  LING_METHOD.    
0a80: 20 20 20 20 20 20 47 4c 55 5f 55 5f 53 54 45 50        GLU_U_STEP
0a90: 0a 20 20 20 20 20 20 20 20 20 20 47 4c 55 5f 56  .          GLU_V
0aa0: 5f 53 54 45 50 0a 20 20 20 20 20 20 20 20 20 20  _STEP.          
0ab0: 47 4c 55 5f 4e 55 52 42 53 5f 4d 4f 44 45 0a 20  GLU_NURBS_MODE. 
0ac0: 20 20 20 20 20 20 20 20 20 47 4c 55 5f 4e 55 52           GLU_NUR
0ad0: 42 53 5f 4d 4f 44 45 5f 45 58 54 0a 20 20 20 20  BS_MODE_EXT.    
0ae0: 20 20 20 20 20 20 47 4c 55 5f 4e 55 52 42 53 5f        GLU_NURBS_
0af0: 54 45 53 53 45 4c 4c 41 54 4f 52 0a 20 20 20 20  TESSELLATOR.    
0b00: 20 20 20 20 20 20 47 4c 55 5f 4e 55 52 42 53 5f        GLU_NURBS_
0b10: 54 45 53 53 45 4c 4c 41 54 4f 52 5f 45 58 54 0a  TESSELLATOR_EXT.
0b20: 20 20 20 20 20 20 20 20 20 20 47 4c 55 5f 4e 55            GLU_NU
0b30: 52 42 53 5f 52 45 4e 44 45 52 45 52 0a 20 20 20  RBS_RENDERER.   
0b40: 20 20 20 20 20 20 20 47 4c 55 5f 4e 55 52 42 53         GLU_NURBS
0b50: 5f 52 45 4e 44 45 52 45 52 5f 45 58 54 0a 20 20  _RENDERER_EXT.  
0b60: 20 20 20 20 20 20 20 20 47 4c 55 5f 4f 42 4a 45          GLU_OBJE
0b70: 43 54 5f 50 41 52 41 4d 45 54 52 49 43 5f 45 52  CT_PARAMETRIC_ER
0b80: 52 4f 52 0a 20 20 20 20 20 20 20 20 20 20 47 4c  ROR.          GL
0b90: 55 5f 4f 42 4a 45 43 54 5f 50 41 52 41 4d 45 54  U_OBJECT_PARAMET
0ba0: 52 49 43 5f 45 52 52 4f 52 5f 45 58 54 0a 20 20  RIC_ERROR_EXT.  
0bb0: 20 20 20 20 20 20 20 20 47 4c 55 5f 4f 42 4a 45          GLU_OBJE
0bc0: 43 54 5f 50 41 54 48 5f 4c 45 4e 47 54 48 0a 20  CT_PATH_LENGTH. 
0bd0: 20 20 20 20 20 20 20 20 20 47 4c 55 5f 4f 42 4a           GLU_OBJ
0be0: 45 43 54 5f 50 41 54 48 5f 4c 45 4e 47 54 48 5f  ECT_PATH_LENGTH_
0bf0: 45 58 54 0a 20 20 20 20 20 20 20 20 20 20 47 4c  EXT.          GL
0c00: 55 5f 50 41 54 48 5f 4c 45 4e 47 54 48 0a 20 20  U_PATH_LENGTH.  
0c10: 20 20 20 20 20 20 20 20 47 4c 55 5f 50 41 52 41          GLU_PARA
0c20: 4d 45 54 52 49 43 5f 45 52 52 4f 52 0a 20 20 20  METRIC_ERROR.   
0c30: 20 20 20 20 20 20 20 47 4c 55 5f 44 4f 4d 41 49         GLU_DOMAI
0c40: 4e 5f 44 49 53 54 41 4e 43 45 0a 20 20 20 20 20  N_DISTANCE.     
0c50: 20 20 20 20 20 47 4c 55 5f 4d 41 50 31 5f 54 52       GLU_MAP1_TR
0c60: 49 4d 5f 32 0a 20 20 20 20 20 20 20 20 20 20 47  IM_2.          G
0c70: 4c 55 5f 4d 41 50 31 5f 54 52 49 4d 5f 33 0a 20  LU_MAP1_TRIM_3. 
0c80: 20 20 20 20 20 20 20 20 20 47 4c 55 5f 50 4f 49           GLU_POI
0c90: 4e 54 0a 20 20 20 20 20 20 20 20 20 20 47 4c 55  NT.          GLU
0ca0: 5f 4c 49 4e 45 0a 20 20 20 20 20 20 20 20 20 20  _LINE.          
0cb0: 47 4c 55 5f 46 49 4c 4c 0a 20 20 20 20 20 20 20  GLU_FILL.       
0cc0: 20 20 20 47 4c 55 5f 53 49 4c 48 4f 55 45 54 54     GLU_SILHOUETT
0cd0: 45 0a 20 20 20 20 20 20 20 20 20 20 47 4c 55 5f  E.          GLU_
0ce0: 53 4d 4f 4f 54 48 0a 20 20 20 20 20 20 20 20 20  SMOOTH.         
0cf0: 20 47 4c 55 5f 46 4c 41 54 0a 20 20 20 20 20 20   GLU_FLAT.      
0d00: 20 20 20 20 47 4c 55 5f 4e 4f 4e 45 0a 20 20 20      GLU_NONE.   
0d10: 20 20 20 20 20 20 20 47 4c 55 5f 4f 55 54 53 49         GLU_OUTSI
0d20: 44 45 0a 20 20 20 20 20 20 20 20 20 20 47 4c 55  DE.          GLU
0d30: 5f 49 4e 53 49 44 45 0a 20 20 20 20 20 20 20 20  _INSIDE.        
0d40: 20 20 47 4c 55 5f 54 45 53 53 5f 42 45 47 49 4e    GLU_TESS_BEGIN
0d50: 0a 20 20 20 20 20 20 20 20 20 20 47 4c 55 5f 42  .          GLU_B
0d60: 45 47 49 4e 0a 20 20 20 20 20 20 20 20 20 20 47  EGIN.          G
0d70: 4c 55 5f 54 45 53 53 5f 56 45 52 54 45 58 0a 20  LU_TESS_VERTEX. 
0d80: 20 20 20 20 20 20 20 20 20 47 4c 55 5f 56 45 52           GLU_VER
0d90: 54 45 58 0a 20 20 20 20 20 20 20 20 20 20 47 4c  TEX.          GL
0da0: 55 5f 54 45 53 53 5f 45 4e 44 0a 20 20 20 20 20  U_TESS_END.     
0db0: 20 20 20 20 20 47 4c 55 5f 45 4e 44 0a 20 20 20       GLU_END.   
0dc0: 20 20 20 20 20 20 20 47 4c 55 5f 54 45 53 53 5f         GLU_TESS_
0dd0: 45 52 52 4f 52 0a 20 20 20 20 20 20 20 20 20 20  ERROR.          
0de0: 47 4c 55 5f 54 45 53 53 5f 45 44 47 45 5f 46 4c  GLU_TESS_EDGE_FL
0df0: 41 47 0a 20 20 20 20 20 20 20 20 20 20 47 4c 55  AG.          GLU
0e00: 5f 45 44 47 45 5f 46 4c 41 47 0a 20 20 20 20 20  _EDGE_FLAG.     
0e10: 20 20 20 20 20 47 4c 55 5f 54 45 53 53 5f 43 4f       GLU_TESS_CO
0e20: 4d 42 49 4e 45 0a 20 20 20 20 20 20 20 20 20 20  MBINE.          
0e30: 47 4c 55 5f 54 45 53 53 5f 42 45 47 49 4e 5f 44  GLU_TESS_BEGIN_D
0e40: 41 54 41 0a 20 20 20 20 20 20 20 20 20 20 47 4c  ATA.          GL
0e50: 55 5f 54 45 53 53 5f 56 45 52 54 45 58 5f 44 41  U_TESS_VERTEX_DA
0e60: 54 41 0a 20 20 20 20 20 20 20 20 20 20 47 4c 55  TA.          GLU
0e70: 5f 54 45 53 53 5f 45 4e 44 5f 44 41 54 41 0a 20  _TESS_END_DATA. 
0e80: 20 20 20 20 20 20 20 20 20 47 4c 55 5f 54 45 53           GLU_TES
0e90: 53 5f 45 52 52 4f 52 5f 44 41 54 41 0a 20 20 20  S_ERROR_DATA.   
0ea0: 20 20 20 20 20 20 20 47 4c 55 5f 54 45 53 53 5f         GLU_TESS_
0eb0: 45 44 47 45 5f 46 4c 41 47 5f 44 41 54 41 0a 20  EDGE_FLAG_DATA. 
0ec0: 20 20 20 20 20 20 20 20 20 47 4c 55 5f 54 45 53           GLU_TES
0ed0: 53 5f 43 4f 4d 42 49 4e 45 5f 44 41 54 41 0a 20  S_COMBINE_DATA. 
0ee0: 20 20 20 20 20 20 20 20 20 47 4c 55 5f 43 57 0a           GLU_CW.
0ef0: 20 20 20 20 20 20 20 20 20 20 47 4c 55 5f 43 43            GLU_CC
0f00: 57 0a 20 20 20 20 20 20 20 20 20 20 47 4c 55 5f  W.          GLU_
0f10: 49 4e 54 45 52 49 4f 52 0a 20 20 20 20 20 20 20  INTERIOR.       
0f20: 20 20 20 47 4c 55 5f 45 58 54 45 52 49 4f 52 0a     GLU_EXTERIOR.
0f30: 20 20 20 20 20 20 20 20 20 20 47 4c 55 5f 55 4e            GLU_UN
0f40: 4b 4e 4f 57 4e 0a 20 20 20 20 20 20 20 20 20 20  KNOWN.          
0f50: 47 4c 55 5f 54 45 53 53 5f 57 49 4e 44 49 4e 47  GLU_TESS_WINDING
0f60: 5f 52 55 4c 45 0a 20 20 20 20 20 20 20 20 20 20  _RULE.          
0f70: 47 4c 55 5f 54 45 53 53 5f 42 4f 55 4e 44 41 52  GLU_TESS_BOUNDAR
0f80: 59 5f 4f 4e 4c 59 0a 20 20 20 20 20 20 20 20 20  Y_ONLY.         
0f90: 20 47 4c 55 5f 54 45 53 53 5f 54 4f 4c 45 52 41   GLU_TESS_TOLERA
0fa0: 4e 43 45 0a 20 20 20 20 20 20 20 20 20 20 47 4c  NCE.          GL
0fb0: 55 5f 54 45 53 53 5f 45 52 52 4f 52 31 0a 20 20  U_TESS_ERROR1.  
0fc0: 20 20 20 20 20 20 20 20 47 4c 55 5f 54 45 53 53          GLU_TESS
0fd0: 5f 45 52 52 4f 52 32 0a 20 20 20 20 20 20 20 20  _ERROR2.        
0fe0: 20 20 47 4c 55 5f 54 45 53 53 5f 45 52 52 4f 52    GLU_TESS_ERROR
0ff0: 33 0a 20 20 20 20 20 20 20 20 20 20 47 4c 55 5f  3.          GLU_
1000: 54 45 53 53 5f 45 52 52 4f 52 34 0a 20 20 20 20  TESS_ERROR4.    
1010: 20 20 20 20 20 20 47 4c 55 5f 54 45 53 53 5f 45        GLU_TESS_E
1020: 52 52 4f 52 35 0a 20 20 20 20 20 20 20 20 20 20  RROR5.          
1030: 47 4c 55 5f 54 45 53 53 5f 45 52 52 4f 52 36 0a  GLU_TESS_ERROR6.
1040: 20 20 20 20 20 20 20 20 20 20 47 4c 55 5f 54 45            GLU_TE
1050: 53 53 5f 45 52 52 4f 52 37 0a 20 20 20 20 20 20  SS_ERROR7.      
1060: 20 20 20 20 47 4c 55 5f 54 45 53 53 5f 45 52 52      GLU_TESS_ERR
1070: 4f 52 38 0a 20 20 20 20 20 20 20 20 20 20 47 4c  OR8.          GL
1080: 55 5f 54 45 53 53 5f 4d 49 53 53 49 4e 47 5f 42  U_TESS_MISSING_B
1090: 45 47 49 4e 5f 50 4f 4c 59 47 4f 4e 0a 20 20 20  EGIN_POLYGON.   
10a0: 20 20 20 20 20 20 20 47 4c 55 5f 54 45 53 53 5f         GLU_TESS_
10b0: 4d 49 53 53 49 4e 47 5f 42 45 47 49 4e 5f 43 4f  MISSING_BEGIN_CO
10c0: 4e 54 4f 55 52 0a 20 20 20 20 20 20 20 20 20 20  NTOUR.          
10d0: 47 4c 55 5f 54 45 53 53 5f 4d 49 53 53 49 4e 47  GLU_TESS_MISSING
10e0: 5f 45 4e 44 5f 50 4f 4c 59 47 4f 4e 0a 20 20 20  _END_POLYGON.   
10f0: 20 20 20 20 20 20 20 47 4c 55 5f 54 45 53 53 5f         GLU_TESS_
1100: 4d 49 53 53 49 4e 47 5f 45 4e 44 5f 43 4f 4e 54  MISSING_END_CONT
1110: 4f 55 52 0a 20 20 20 20 20 20 20 20 20 20 47 4c  OUR.          GL
1120: 55 5f 54 45 53 53 5f 43 4f 4f 52 44 5f 54 4f 4f  U_TESS_COORD_TOO
1130: 5f 4c 41 52 47 45 0a 20 20 20 20 20 20 20 20 20  _LARGE.         
1140: 20 47 4c 55 5f 54 45 53 53 5f 4e 45 45 44 5f 43   GLU_TESS_NEED_C
1150: 4f 4d 42 49 4e 45 5f 43 41 4c 4c 42 41 43 4b 0a  OMBINE_CALLBACK.
1160: 20 20 20 20 20 20 20 20 20 20 47 4c 55 5f 54 45            GLU_TE
1170: 53 53 5f 57 49 4e 44 49 4e 47 5f 4f 44 44 0a 20  SS_WINDING_ODD. 
1180: 20 20 20 20 20 20 20 20 20 47 4c 55 5f 54 45 53           GLU_TES
1190: 53 5f 57 49 4e 44 49 4e 47 5f 4e 4f 4e 5a 45 52  S_WINDING_NONZER
11a0: 4f 0a 20 20 20 20 20 20 20 20 20 20 47 4c 55 5f  O.          GLU_
11b0: 54 45 53 53 5f 57 49 4e 44 49 4e 47 5f 50 4f 53  TESS_WINDING_POS
11c0: 49 54 49 56 45 0a 20 20 20 20 20 20 20 20 20 20  ITIVE.          
11d0: 47 4c 55 5f 54 45 53 53 5f 57 49 4e 44 49 4e 47  GLU_TESS_WINDING
11e0: 5f 4e 45 47 41 54 49 56 45 0a 20 20 20 20 20 20  _NEGATIVE.      
11f0: 20 20 20 20 47 4c 55 5f 54 45 53 53 5f 57 49 4e      GLU_TESS_WIN
1200: 44 49 4e 47 5f 41 42 53 5f 47 45 51 5f 54 57 4f  DING_ABS_GEQ_TWO
1210: 0a 20 20 20 20 20 20 20 20 20 20 47 4c 55 5f 54  .          GLU_T
1220: 45 53 53 5f 4d 41 58 5f 43 4f 4f 52 44 0a 20 20  ESS_MAX_COORD.  
1230: 20 20 20 20 20 20 20 20 67 6c 75 42 65 67 69 6e          gluBegin
1240: 43 75 72 76 65 0a 20 20 20 20 20 20 20 20 20 20  Curve.          
1250: 67 6c 75 42 65 67 69 6e 50 6f 6c 79 67 6f 6e 0a  gluBeginPolygon.
1260: 20 20 20 20 20 20 20 20 20 20 67 6c 75 42 65 67            gluBeg
1270: 69 6e 53 75 72 66 61 63 65 0a 20 20 20 20 20 20  inSurface.      
1280: 20 20 20 20 67 6c 75 42 65 67 69 6e 54 72 69 6d      gluBeginTrim
1290: 0a 20 20 20 20 20 20 20 20 20 20 67 6c 75 42 75  .          gluBu
12a0: 69 6c 64 31 44 4d 69 70 6d 61 70 4c 65 76 65 6c  ild1DMipmapLevel
12b0: 73 0a 20 20 20 20 20 20 20 20 20 20 67 6c 75 42  s.          gluB
12c0: 75 69 6c 64 31 44 4d 69 70 6d 61 70 73 0a 20 20  uild1DMipmaps.  
12d0: 20 20 20 20 20 20 20 20 67 6c 75 42 75 69 6c 64          gluBuild
12e0: 32 44 4d 69 70 6d 61 70 4c 65 76 65 6c 73 0a 20  2DMipmapLevels. 
12f0: 20 20 20 20 20 20 20 20 20 67 6c 75 42 75 69 6c           gluBuil
1300: 64 32 44 4d 69 70 6d 61 70 73 0a 20 20 20 20 20  d2DMipmaps.     
1310: 20 20 20 20 20 67 6c 75 42 75 69 6c 64 33 44 4d       gluBuild3DM
1320: 69 70 6d 61 70 4c 65 76 65 6c 73 0a 20 20 20 20  ipmapLevels.    
1330: 20 20 20 20 20 20 67 6c 75 42 75 69 6c 64 33 44        gluBuild3D
1340: 4d 69 70 6d 61 70 73 0a 20 20 20 20 20 20 20 20  Mipmaps.        
1350: 20 20 67 6c 75 43 68 65 63 6b 45 78 74 65 6e 73    gluCheckExtens
1360: 69 6f 6e 0a 20 20 20 20 20 20 20 20 20 20 67 6c  ion.          gl
1370: 75 43 79 6c 69 6e 64 65 72 0a 20 20 20 20 20 20  uCylinder.      
1380: 20 20 20 20 67 6c 75 44 65 6c 65 74 65 4e 75 72      gluDeleteNur
1390: 62 73 52 65 6e 64 65 72 65 72 0a 20 20 20 20 20  bsRenderer.     
13a0: 20 20 20 20 20 67 6c 75 44 65 6c 65 74 65 51 75       gluDeleteQu
13b0: 61 64 72 69 63 0a 20 20 20 20 20 20 20 20 20 20  adric.          
13c0: 67 6c 75 44 65 6c 65 74 65 54 65 73 73 0a 20 20  gluDeleteTess.  
13d0: 20 20 20 20 20 20 20 20 67 6c 75 44 69 73 6b 0a          gluDisk.
13e0: 20 20 20 20 20 20 20 20 20 20 67 6c 75 45 6e 64            gluEnd
13f0: 43 75 72 76 65 0a 20 20 20 20 20 20 20 20 20 20  Curve.          
1400: 67 6c 75 45 6e 64 50 6f 6c 79 67 6f 6e 0a 20 20  gluEndPolygon.  
1410: 20 20 20 20 20 20 20 20 67 6c 75 45 6e 64 53 75          gluEndSu
1420: 72 66 61 63 65 0a 20 20 20 20 20 20 20 20 20 20  rface.          
1430: 67 6c 75 45 6e 64 54 72 69 6d 0a 20 20 20 20 20  gluEndTrim.     
1440: 20 20 20 20 20 67 6c 75 45 72 72 6f 72 53 74 72       gluErrorStr
1450: 69 6e 67 0a 20 20 20 20 20 20 20 20 20 20 67 6c  ing.          gl
1460: 75 47 65 74 4e 75 72 62 73 50 72 6f 70 65 72 74  uGetNurbsPropert
1470: 79 0a 20 20 20 20 20 20 20 20 20 20 67 6c 75 47  y.          gluG
1480: 65 74 53 74 72 69 6e 67 0a 20 20 20 20 20 20 20  etString.       
1490: 20 20 20 67 6c 75 47 65 74 54 65 73 73 50 72 6f     gluGetTessPro
14a0: 70 65 72 74 79 0a 20 20 20 20 20 20 20 20 20 20  perty.          
14b0: 67 6c 75 4c 6f 61 64 53 61 6d 70 6c 69 6e 67 4d  gluLoadSamplingM
14c0: 61 74 72 69 63 65 73 0a 20 20 20 20 20 20 20 20  atrices.        
14d0: 20 20 67 6c 75 4c 6f 6f 6b 41 74 0a 20 20 20 20    gluLookAt.    
14e0: 20 20 20 20 20 20 67 6c 75 4e 65 77 4e 75 72 62        gluNewNurb
14f0: 73 52 65 6e 64 65 72 65 72 0a 20 20 20 20 20 20  sRenderer.      
1500: 20 20 20 20 67 6c 75 4e 65 77 51 75 61 64 72 69      gluNewQuadri
1510: 63 0a 20 20 20 20 20 20 20 20 20 20 67 6c 75 4e  c.          gluN
1520: 65 77 54 65 73 73 0a 20 20 20 20 20 20 20 20 20  ewTess.         
1530: 20 67 6c 75 4e 65 78 74 43 6f 6e 74 6f 75 72 0a   gluNextContour.
1540: 0a 20 20 20 20 20 20 20 20 20 20 3b 3b 20 67 6c  .          ;; gl
1550: 75 4e 75 72 62 73 43 61 6c 6c 62 61 63 6b 0a 0a  uNurbsCallback..
1560: 20 20 20 20 20 20 20 20 20 20 67 6c 75 4e 75 72            gluNur
1570: 62 73 43 61 6c 6c 62 61 63 6b 44 61 74 61 0a 20  bsCallbackData. 
1580: 20 20 20 20 20 20 20 20 20 67 6c 75 4e 75 72 62           gluNurb
1590: 73 43 61 6c 6c 62 61 63 6b 44 61 74 61 45 58 54  sCallbackDataEXT
15a0: 0a 20 20 20 20 20 20 20 20 20 20 67 6c 75 4e 75  .          gluNu
15b0: 72 62 73 43 75 72 76 65 0a 20 20 20 20 20 20 20  rbsCurve.       
15c0: 20 20 20 67 6c 75 4e 75 72 62 73 50 72 6f 70 65     gluNurbsPrope
15d0: 72 74 79 0a 20 20 20 20 20 20 20 20 20 20 67 6c  rty.          gl
15e0: 75 4e 75 72 62 73 53 75 72 66 61 63 65 0a 20 20  uNurbsSurface.  
15f0: 20 20 20 20 20 20 20 20 67 6c 75 4f 72 74 68 6f          gluOrtho
1600: 32 44 0a 20 20 20 20 20 20 20 20 20 20 67 6c 75  2D.          glu
1610: 50 61 72 74 69 61 6c 44 69 73 6b 0a 20 20 20 20  PartialDisk.    
1620: 20 20 20 20 20 20 67 6c 75 50 65 72 73 70 65 63        gluPerspec
1630: 74 69 76 65 0a 20 20 20 20 20 20 20 20 20 20 67  tive.          g
1640: 6c 75 50 69 63 6b 4d 61 74 72 69 78 0a 20 20 20  luPickMatrix.   
1650: 20 20 20 20 20 20 20 67 6c 75 50 72 6f 6a 65 63         gluProjec
1660: 74 0a 20 20 20 20 20 20 20 20 20 20 67 6c 75 50  t.          gluP
1670: 77 6c 43 75 72 76 65 0a 0a 20 20 20 20 20 20 20  wlCurve..       
1680: 20 20 20 3b 3b 20 67 6c 75 51 75 61 64 72 69 63     ;; gluQuadric
1690: 43 61 6c 6c 62 61 63 6b 0a 0a 20 20 20 20 20 20  Callback..      
16a0: 20 20 20 20 67 6c 75 51 75 61 64 72 69 63 44 72      gluQuadricDr
16b0: 61 77 53 74 79 6c 65 0a 20 20 20 20 20 20 20 20  awStyle.        
16c0: 20 20 67 6c 75 51 75 61 64 72 69 63 4e 6f 72 6d    gluQuadricNorm
16d0: 61 6c 73 0a 20 20 20 20 20 20 20 20 20 20 67 6c  als.          gl
16e0: 75 51 75 61 64 72 69 63 4f 72 69 65 6e 74 61 74  uQuadricOrientat
16f0: 69 6f 6e 0a 20 20 20 20 20 20 20 20 20 20 67 6c  ion.          gl
1700: 75 51 75 61 64 72 69 63 54 65 78 74 75 72 65 0a  uQuadricTexture.
1710: 20 20 20 20 20 20 20 20 20 20 67 6c 75 53 63 61            gluSca
1720: 6c 65 49 6d 61 67 65 0a 20 20 20 20 20 20 20 20  leImage.        
1730: 20 20 67 6c 75 53 70 68 65 72 65 0a 20 20 20 20    gluSphere.    
1740: 20 20 20 20 20 20 67 6c 75 54 65 73 73 42 65 67        gluTessBeg
1750: 69 6e 43 6f 6e 74 6f 75 72 0a 20 20 20 20 20 20  inContour.      
1760: 20 20 20 20 67 6c 75 54 65 73 73 42 65 67 69 6e      gluTessBegin
1770: 50 6f 6c 79 67 6f 6e 0a 0a 20 20 20 20 20 20 20  Polygon..       
1780: 20 20 20 3b 3b 20 67 6c 75 54 65 73 73 43 61 6c     ;; gluTessCal
1790: 6c 62 61 63 6b 0a 20 20 20 20 20 20 20 20 20 20  lback.          
17a0: 0a 20 20 20 20 20 20 20 20 20 20 67 6c 75 54 65  .          gluTe
17b0: 73 73 45 6e 64 43 6f 6e 74 6f 75 72 0a 20 20 20  ssEndContour.   
17c0: 20 20 20 20 20 20 20 67 6c 75 54 65 73 73 45 6e         gluTessEn
17d0: 64 50 6f 6c 79 67 6f 6e 0a 20 20 20 20 20 20 20  dPolygon.       
17e0: 20 20 20 67 6c 75 54 65 73 73 4e 6f 72 6d 61 6c     gluTessNormal
17f0: 0a 20 20 20 20 20 20 20 20 20 20 67 6c 75 54 65  .          gluTe
1800: 73 73 50 72 6f 70 65 72 74 79 0a 20 20 20 20 20  ssProperty.     
1810: 20 20 20 20 20 67 6c 75 54 65 73 73 56 65 72 74       gluTessVert
1820: 65 78 0a 20 20 20 20 20 20 20 20 20 20 67 6c 75  ex.          glu
1830: 55 6e 50 72 6f 6a 65 63 74 0a 20 20 20 20 20 20  UnProject.      
1840: 20 20 20 20 67 6c 75 55 6e 50 72 6f 6a 65 63 74      gluUnProject
1850: 34 29 0a 20 20 0a 20 20 28 69 6d 70 6f 72 74 20  4).  .  (import 
1860: 28 63 68 65 7a 73 63 68 65 6d 65 29 29 0a 0a 20  (chezscheme)).. 
1870: 20 3b 3b 20 28 64 65 66 69 6e 65 20 6c 69 62 2d   ;; (define lib-
1880: 6e 61 6d 65 0a 20 20 3b 3b 20 20 20 28 63 6f 6e  name.  ;;   (con
1890: 64 20 28 6f 6e 2d 6c 69 6e 75 78 20 20 20 22 6c  d (on-linux   "l
18a0: 69 62 47 4c 55 2e 73 6f 2e 31 22 29 0a 20 20 3b  ibGLU.so.1").  ;
18b0: 3b 20 20 20 20 20 20 20 20 20 28 6f 6e 2d 73 75  ;         (on-su
18c0: 6e 6f 73 20 20 20 22 6c 69 62 47 4c 55 2e 73 6f  nos   "libGLU.so
18d0: 2e 31 22 29 0a 20 20 3b 3b 20 20 20 20 20 20 20  .1").  ;;       
18e0: 20 20 28 6f 6e 2d 66 72 65 65 62 73 64 20 22 6c    (on-freebsd "l
18f0: 69 62 47 4c 55 2e 73 6f 22 29 0a 20 20 3b 3b 20  ibGLU.so").  ;; 
1900: 20 20 20 20 20 20 20 20 28 6f 6e 2d 6f 70 65 6e          (on-open
1910: 62 73 64 20 22 6c 69 62 47 4c 55 2e 73 6f 2e 37  bsd "libGLU.so.7
1920: 2e 30 22 29 0a 20 20 3b 3b 20 20 20 20 20 20 20  .0").  ;;       
1930: 20 20 28 6f 6e 2d 64 61 72 77 69 6e 20 20 22 4f    (on-darwin  "O
1940: 70 65 6e 47 4c 2e 66 72 61 6d 65 77 6f 72 6b 2f  penGL.framework/
1950: 4f 70 65 6e 47 4c 22 29 0a 20 20 3b 3b 20 20 20  OpenGL").  ;;   
1960: 20 20 20 20 20 20 28 6f 6e 2d 77 69 6e 64 6f 77        (on-window
1970: 73 20 22 67 6c 75 33 32 2e 64 6c 6c 22 29 0a 20  s "glu32.dll"). 
1980: 20 3b 3b 20 20 20 20 20 20 20 20 20 28 65 6c 73   ;;         (els
1990: 65 0a 20 20 3b 3b 20 20 20 20 20 20 20 20 20 20  e.  ;;          
19a0: 28 61 73 73 65 72 74 69 6f 6e 2d 76 69 6f 6c 61  (assertion-viola
19b0: 74 69 6f 6e 0a 20 20 3b 3b 20 20 20 20 20 20 20  tion.  ;;       
19c0: 20 20 20 20 23 66 0a 20 20 3b 3b 20 20 20 20 20      #f.  ;;     
19d0: 20 20 20 20 20 20 22 63 61 6e 20 6e 6f 74 20 6c        "can not l
19e0: 6f 63 61 74 65 20 47 4c 55 20 6c 69 62 72 61 72  ocate GLU librar
19f0: 79 2c 20 75 6e 6b 6e 6f 77 6e 20 6f 70 65 72 61  y, unknown opera
1a00: 74 69 6e 67 20 73 79 73 74 65 6d 22 29 29 29 29  ting system"))))
1a10: 0a 0a 20 20 3b 3b 20 28 64 65 66 69 6e 65 20 6c  ..  ;; (define l
1a20: 69 62 20 28 6c 6f 61 64 2d 73 68 61 72 65 64 2d  ib (load-shared-
1a30: 6f 62 6a 65 63 74 20 6c 69 62 2d 6e 61 6d 65 29  object lib-name)
1a40: 29 0a 0a 20 20 28 64 65 66 69 6e 65 20 6e 6f 2d  )..  (define no-
1a50: 6f 70 20 28 6c 6f 61 64 2d 73 68 61 72 65 64 2d  op (load-shared-
1a60: 6f 62 6a 65 63 74 20 22 6c 69 62 47 4c 55 2e 73  object "libGLU.s
1a70: 6f 2e 31 22 29 29 0a 0a 20 20 3b 3b 20 28 64 65  o.1"))..  ;; (de
1a80: 66 69 6e 65 2d 73 79 6e 74 61 78 20 64 65 66 69  fine-syntax defi
1a90: 6e 65 2d 66 75 6e 63 74 69 6f 6e 0a 20 20 3b 3b  ne-function.  ;;
1aa0: 20 20 20 28 73 79 6e 74 61 78 2d 72 75 6c 65 73     (syntax-rules
1ab0: 20 28 29 0a 20 20 3b 3b 20 20 20 20 20 28 28 5f   ().  ;;     ((_
1ac0: 20 72 65 74 20 6e 61 6d 65 20 61 72 67 73 29 0a   ret name args).
1ad0: 20 20 3b 3b 20 20 20 20 20 20 28 64 65 66 69 6e    ;;      (defin
1ae0: 65 20 6e 61 6d 65 20 28 63 2d 66 75 6e 63 74 69  e name (c-functi
1af0: 6f 6e 20 6c 69 62 20 6c 69 62 2d 6e 61 6d 65 20  on lib lib-name 
1b00: 72 65 74 20 5f 5f 73 74 64 63 61 6c 6c 20 6e 61  ret __stdcall na
1b10: 6d 65 20 61 72 67 73 29 29 29 29 29 0a 0a 20 20  me args)))))..  
1b20: 28 64 65 66 69 6e 65 2d 73 79 6e 74 61 78 20 64  (define-syntax d
1b30: 65 66 69 6e 65 2d 66 75 6e 63 74 69 6f 6e 0a 20  efine-function. 
1b40: 20 20 20 28 73 79 6e 74 61 78 2d 72 75 6c 65 73     (syntax-rules
1b50: 20 28 29 0a 20 20 20 20 20 20 28 28 5f 20 72 65   ().      ((_ re
1b60: 74 20 6e 61 6d 65 20 61 72 67 73 29 0a 20 20 20  t name args).   
1b70: 20 20 20 20 28 64 65 66 69 6e 65 20 6e 61 6d 65      (define name
1b80: 0a 20 20 20 20 20 20 20 20 20 28 66 6f 72 65 69  .         (forei
1b90: 67 6e 2d 70 72 6f 63 65 64 75 72 65 20 28 73 79  gn-procedure (sy
1ba0: 6d 62 6f 6c 2d 3e 73 74 72 69 6e 67 20 27 6e 61  mbol->string 'na
1bb0: 6d 65 29 20 61 72 67 73 20 72 65 74 29 29 29 29  me) args ret))))
1bc0: 29 0a 0a 20 20 3b 3b 3b 3b 20 45 78 74 65 6e 73  )..  ;;;; Extens
1bd0: 69 6f 6e 73 0a 20 20 28 64 65 66 69 6e 65 20 47  ions.  (define G
1be0: 4c 55 5f 45 58 54 5f 6f 62 6a 65 63 74 5f 73 70  LU_EXT_object_sp
1bf0: 61 63 65 5f 74 65 73 73 20 20 20 20 20 20 20 20  ace_tess        
1c00: 20 20 31 29 0a 20 20 28 64 65 66 69 6e 65 20 47    1).  (define G
1c10: 4c 55 5f 45 58 54 5f 6e 75 72 62 73 5f 74 65 73  LU_EXT_nurbs_tes
1c20: 73 65 6c 6c 61 74 6f 72 20 20 20 20 20 20 20 20  sellator        
1c30: 20 20 31 29 0a 20 20 3b 3b 3b 3b 20 42 6f 6f 6c    1).  ;;;; Bool
1c40: 65 61 6e 0a 20 20 28 64 65 66 69 6e 65 20 47 4c  ean.  (define GL
1c50: 55 5f 46 41 4c 53 45 20 20 20 20 20 20 20 20 20  U_FALSE         
1c60: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
1c70: 20 30 29 0a 20 20 28 64 65 66 69 6e 65 20 47 4c   0).  (define GL
1c80: 55 5f 54 52 55 45 20 20 20 20 20 20 20 20 20 20  U_TRUE          
1c90: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
1ca0: 20 31 29 0a 20 20 3b 3b 3b 3b 20 56 65 72 73 69   1).  ;;;; Versi
1cb0: 6f 6e 0a 20 20 28 64 65 66 69 6e 65 20 47 4c 55  on.  (define GLU
1cc0: 5f 56 45 52 53 49 4f 4e 5f 31 5f 31 20 20 20 20  _VERSION_1_1    
1cd0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
1ce0: 31 29 0a 20 20 28 64 65 66 69 6e 65 20 47 4c 55  1).  (define GLU
1cf0: 5f 56 45 52 53 49 4f 4e 5f 31 5f 32 20 20 20 20  _VERSION_1_2    
1d00: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
1d10: 31 29 0a 20 20 28 64 65 66 69 6e 65 20 47 4c 55  1).  (define GLU
1d20: 5f 56 45 52 53 49 4f 4e 5f 31 5f 33 20 20 20 20  _VERSION_1_3    
1d30: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
1d40: 31 29 0a 20 20 3b 3b 3b 3b 20 53 74 72 69 6e 67  1).  ;;;; String
1d50: 4e 61 6d 65 0a 20 20 28 64 65 66 69 6e 65 20 47  Name.  (define G
1d60: 4c 55 5f 56 45 52 53 49 4f 4e 20 20 20 20 20 20  LU_VERSION      
1d70: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
1d80: 20 20 31 30 30 38 30 30 29 0a 20 20 28 64 65 66    100800).  (def
1d90: 69 6e 65 20 47 4c 55 5f 45 58 54 45 4e 53 49 4f  ine GLU_EXTENSIO
1da0: 4e 53 20 20 20 20 20 20 20 20 20 20 20 20 20 20  NS              
1db0: 20 20 20 20 20 20 20 31 30 30 38 30 31 29 0a 20         100801). 
1dc0: 20 3b 3b 3b 3b 20 45 72 72 6f 72 43 6f 64 65 0a   ;;;; ErrorCode.
1dd0: 20 20 28 64 65 66 69 6e 65 20 47 4c 55 5f 49 4e    (define GLU_IN
1de0: 56 41 4c 49 44 5f 45 4e 55 4d 20 20 20 20 20 20  VALID_ENUM      
1df0: 20 20 20 20 20 20 20 20 20 20 20 20 20 31 30 30               100
1e00: 39 30 30 29 0a 20 20 28 64 65 66 69 6e 65 20 47  900).  (define G
1e10: 4c 55 5f 49 4e 56 41 4c 49 44 5f 56 41 4c 55 45  LU_INVALID_VALUE
1e20: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
1e30: 20 20 31 30 30 39 30 31 29 0a 20 20 28 64 65 66    100901).  (def
1e40: 69 6e 65 20 47 4c 55 5f 4f 55 54 5f 4f 46 5f 4d  ine GLU_OUT_OF_M
1e50: 45 4d 4f 52 59 20 20 20 20 20 20 20 20 20 20 20  EMORY           
1e60: 20 20 20 20 20 20 20 31 30 30 39 30 32 29 0a 20         100902). 
1e70: 20 28 64 65 66 69 6e 65 20 47 4c 55 5f 49 4e 43   (define GLU_INC
1e80: 4f 4d 50 41 54 49 42 4c 45 5f 47 4c 5f 56 45 52  OMPATIBLE_GL_VER
1e90: 53 49 4f 4e 20 20 20 20 20 20 20 20 31 30 30 39  SION        1009
1ea0: 30 33 29 0a 20 20 28 64 65 66 69 6e 65 20 47 4c  03).  (define GL
1eb0: 55 5f 49 4e 56 41 4c 49 44 5f 4f 50 45 52 41 54  U_INVALID_OPERAT
1ec0: 49 4f 4e 20 20 20 20 20 20 20 20 20 20 20 20 20  ION             
1ed0: 20 31 30 30 39 30 34 29 0a 20 20 3b 3b 3b 3b 20   100904).  ;;;; 
1ee0: 4e 75 72 62 73 44 69 73 70 6c 61 79 0a 20 20 3b  NurbsDisplay.  ;
1ef0: 3b 3b 3b 20 20 20 20 47 4c 55 5f 46 49 4c 4c 0a  ;;;    GLU_FILL.
1f00: 20 20 28 64 65 66 69 6e 65 20 47 4c 55 5f 4f 55    (define GLU_OU
1f10: 54 4c 49 4e 45 5f 50 4f 4c 59 47 4f 4e 20 20 20  TLINE_POLYGON   
1f20: 20 20 20 20 20 20 20 20 20 20 20 20 20 31 30 30               100
1f30: 32 34 30 29 0a 20 20 28 64 65 66 69 6e 65 20 47  240).  (define G
1f40: 4c 55 5f 4f 55 54 4c 49 4e 45 5f 50 41 54 43 48  LU_OUTLINE_PATCH
1f50: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
1f60: 20 20 31 30 30 32 34 31 29 0a 20 20 3b 3b 3b 3b    100241).  ;;;;
1f70: 20 4e 75 72 62 73 43 61 6c 6c 62 61 63 6b 0a 20   NurbsCallback. 
1f80: 20 28 64 65 66 69 6e 65 20 47 4c 55 5f 4e 55 52   (define GLU_NUR
1f90: 42 53 5f 45 52 52 4f 52 20 20 20 20 20 20 20 20  BS_ERROR        
1fa0: 20 20 20 20 20 20 20 20 20 20 20 20 31 30 30 31              1001
1fb0: 30 33 29 0a 20 20 28 64 65 66 69 6e 65 20 47 4c  03).  (define GL
1fc0: 55 5f 45 52 52 4f 52 20 20 20 20 20 20 20 20 20  U_ERROR         
1fd0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
1fe0: 20 31 30 30 31 30 33 29 0a 20 20 28 64 65 66 69   100103).  (defi
1ff0: 6e 65 20 47 4c 55 5f 4e 55 52 42 53 5f 42 45 47  ne GLU_NURBS_BEG
2000: 49 4e 20 20 20 20 20 20 20 20 20 20 20 20 20 20  IN              
2010: 20 20 20 20 20 20 31 30 30 31 36 34 29 0a 20 20        100164).  
2020: 28 64 65 66 69 6e 65 20 47 4c 55 5f 4e 55 52 42  (define GLU_NURB
2030: 53 5f 42 45 47 49 4e 5f 45 58 54 20 20 20 20 20  S_BEGIN_EXT     
2040: 20 20 20 20 20 20 20 20 20 20 20 31 30 30 31 36             10016
2050: 34 29 0a 20 20 28 64 65 66 69 6e 65 20 47 4c 55  4).  (define GLU
2060: 5f 4e 55 52 42 53 5f 56 45 52 54 45 58 20 20 20  _NURBS_VERTEX   
2070: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
2080: 31 30 30 31 36 35 29 0a 20 20 28 64 65 66 69 6e  100165).  (defin
2090: 65 20 47 4c 55 5f 4e 55 52 42 53 5f 56 45 52 54  e GLU_NURBS_VERT
20a0: 45 58 5f 45 58 54 20 20 20 20 20 20 20 20 20 20  EX_EXT          
20b0: 20 20 20 20 20 31 30 30 31 36 35 29 0a 20 20 28       100165).  (
20c0: 64 65 66 69 6e 65 20 47 4c 55 5f 4e 55 52 42 53  define GLU_NURBS
20d0: 5f 4e 4f 52 4d 41 4c 20 20 20 20 20 20 20 20 20  _NORMAL         
20e0: 20 20 20 20 20 20 20 20 20 20 31 30 30 31 36 36            100166
20f0: 29 0a 20 20 28 64 65 66 69 6e 65 20 47 4c 55 5f  ).  (define GLU_
2100: 4e 55 52 42 53 5f 4e 4f 52 4d 41 4c 5f 45 58 54  NURBS_NORMAL_EXT
2110: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 31                 1
2120: 30 30 31 36 36 29 0a 20 20 28 64 65 66 69 6e 65  00166).  (define
2130: 20 47 4c 55 5f 4e 55 52 42 53 5f 43 4f 4c 4f 52   GLU_NURBS_COLOR
2140: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
2150: 20 20 20 20 31 30 30 31 36 37 29 0a 20 20 28 64      100167).  (d
2160: 65 66 69 6e 65 20 47 4c 55 5f 4e 55 52 42 53 5f  efine GLU_NURBS_
2170: 43 4f 4c 4f 52 5f 45 58 54 20 20 20 20 20 20 20  COLOR_EXT       
2180: 20 20 20 20 20 20 20 20 20 31 30 30 31 36 37 29           100167)
2190: 0a 20 20 28 64 65 66 69 6e 65 20 47 4c 55 5f 4e  .  (define GLU_N
21a0: 55 52 42 53 5f 54 45 58 54 55 52 45 5f 43 4f 4f  URBS_TEXTURE_COO
21b0: 52 44 20 20 20 20 20 20 20 20 20 20 20 20 31 30  RD            10
21c0: 30 31 36 38 29 0a 20 20 28 64 65 66 69 6e 65 20  0168).  (define 
21d0: 47 4c 55 5f 4e 55 52 42 53 5f 54 45 58 5f 43 4f  GLU_NURBS_TEX_CO
21e0: 4f 52 44 5f 45 58 54 20 20 20 20 20 20 20 20 20  ORD_EXT         
21f0: 20 20 20 31 30 30 31 36 38 29 0a 20 20 28 64 65     100168).  (de
2200: 66 69 6e 65 20 47 4c 55 5f 4e 55 52 42 53 5f 45  fine GLU_NURBS_E
2210: 4e 44 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ND              
2220: 20 20 20 20 20 20 20 20 31 30 30 31 36 39 29 0a          100169).
2230: 20 20 28 64 65 66 69 6e 65 20 47 4c 55 5f 4e 55    (define GLU_NU
2240: 52 42 53 5f 45 4e 44 5f 45 58 54 20 20 20 20 20  RBS_END_EXT     
2250: 20 20 20 20 20 20 20 20 20 20 20 20 20 31 30 30               100
2260: 31 36 39 29 0a 20 20 28 64 65 66 69 6e 65 20 47  169).  (define G
2270: 4c 55 5f 4e 55 52 42 53 5f 42 45 47 49 4e 5f 44  LU_NURBS_BEGIN_D
2280: 41 54 41 20 20 20 20 20 20 20 20 20 20 20 20 20  ATA             
2290: 20 20 31 30 30 31 37 30 29 0a 20 20 28 64 65 66    100170).  (def
22a0: 69 6e 65 20 47 4c 55 5f 4e 55 52 42 53 5f 42 45  ine GLU_NURBS_BE
22b0: 47 49 4e 5f 44 41 54 41 5f 45 58 54 20 20 20 20  GIN_DATA_EXT    
22c0: 20 20 20 20 20 20 20 31 30 30 31 37 30 29 0a 20         100170). 
22d0: 20 28 64 65 66 69 6e 65 20 47 4c 55 5f 4e 55 52   (define GLU_NUR
22e0: 42 53 5f 56 45 52 54 45 58 5f 44 41 54 41 20 20  BS_VERTEX_DATA  
22f0: 20 20 20 20 20 20 20 20 20 20 20 20 31 30 30 31              1001
2300: 37 31 29 0a 20 20 28 64 65 66 69 6e 65 20 47 4c  71).  (define GL
2310: 55 5f 4e 55 52 42 53 5f 56 45 52 54 45 58 5f 44  U_NURBS_VERTEX_D
2320: 41 54 41 5f 45 58 54 20 20 20 20 20 20 20 20 20  ATA_EXT         
2330: 20 31 30 30 31 37 31 29 0a 20 20 28 64 65 66 69   100171).  (defi
2340: 6e 65 20 47 4c 55 5f 4e 55 52 42 53 5f 4e 4f 52  ne GLU_NURBS_NOR
2350: 4d 41 4c 5f 44 41 54 41 20 20 20 20 20 20 20 20  MAL_DATA        
2360: 20 20 20 20 20 20 31 30 30 31 37 32 29 0a 20 20        100172).  
2370: 28 64 65 66 69 6e 65 20 47 4c 55 5f 4e 55 52 42  (define GLU_NURB
2380: 53 5f 4e 4f 52 4d 41 4c 5f 44 41 54 41 5f 45 58  S_NORMAL_DATA_EX
2390: 54 20 20 20 20 20 20 20 20 20 20 31 30 30 31 37  T          10017
23a0: 32 29 0a 20 20 28 64 65 66 69 6e 65 20 47 4c 55  2).  (define GLU
23b0: 5f 4e 55 52 42 53 5f 43 4f 4c 4f 52 5f 44 41 54  _NURBS_COLOR_DAT
23c0: 41 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  A               
23d0: 31 30 30 31 37 33 29 0a 20 20 28 64 65 66 69 6e  100173).  (defin
23e0: 65 20 47 4c 55 5f 4e 55 52 42 53 5f 43 4f 4c 4f  e GLU_NURBS_COLO
23f0: 52 5f 44 41 54 41 5f 45 58 54 20 20 20 20 20 20  R_DATA_EXT      
2400: 20 20 20 20 20 31 30 30 31 37 33 29 0a 20 20 28       100173).  (
2410: 64 65 66 69 6e 65 20 47 4c 55 5f 4e 55 52 42 53  define GLU_NURBS
2420: 5f 54 45 58 54 55 52 45 5f 43 4f 4f 52 44 5f 44  _TEXTURE_COORD_D
2430: 41 54 41 20 20 20 20 20 20 20 31 30 30 31 37 34  ATA       100174
2440: 29 0a 20 20 28 64 65 66 69 6e 65 20 47 4c 55 5f  ).  (define GLU_
2450: 4e 55 52 42 53 5f 54 45 58 5f 43 4f 4f 52 44 5f  NURBS_TEX_COORD_
2460: 44 41 54 41 5f 45 58 54 20 20 20 20 20 20 20 31  DATA_EXT       1
2470: 30 30 31 37 34 29 0a 20 20 28 64 65 66 69 6e 65  00174).  (define
2480: 20 47 4c 55 5f 4e 55 52 42 53 5f 45 4e 44 5f 44   GLU_NURBS_END_D
2490: 41 54 41 20 20 20 20 20 20 20 20 20 20 20 20 20  ATA             
24a0: 20 20 20 20 31 30 30 31 37 35 29 0a 20 20 28 64      100175).  (d
24b0: 65 66 69 6e 65 20 47 4c 55 5f 4e 55 52 42 53 5f  efine GLU_NURBS_
24c0: 45 4e 44 5f 44 41 54 41 5f 45 58 54 20 20 20 20  END_DATA_EXT    
24d0: 20 20 20 20 20 20 20 20 20 31 30 30 31 37 35 29           100175)
24e0: 0a 20 20 3b 3b 3b 3b 20 4e 75 72 62 73 45 72 72  .  ;;;; NurbsErr
24f0: 6f 72 0a 20 20 28 64 65 66 69 6e 65 20 47 4c 55  or.  (define GLU
2500: 5f 4e 55 52 42 53 5f 45 52 52 4f 52 31 20 20 20  _NURBS_ERROR1   
2510: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
2520: 31 30 30 32 35 31 29 0a 20 20 28 64 65 66 69 6e  100251).  (defin
2530: 65 20 47 4c 55 5f 4e 55 52 42 53 5f 45 52 52 4f  e GLU_NURBS_ERRO
2540: 52 32 20 20 20 20 20 20 20 20 20 20 20 20 20 20  R2              
2550: 20 20 20 20 20 31 30 30 32 35 32 29 0a 20 20 28       100252).  (
2560: 64 65 66 69 6e 65 20 47 4c 55 5f 4e 55 52 42 53  define GLU_NURBS
2570: 5f 45 52 52 4f 52 33 20 20 20 20 20 20 20 20 20  _ERROR3         
2580: 20 20 20 20 20 20 20 20 20 20 31 30 30 32 35 33            100253
2590: 29 0a 20 20 28 64 65 66 69 6e 65 20 47 4c 55 5f  ).  (define GLU_
25a0: 4e 55 52 42 53 5f 45 52 52 4f 52 34 20 20 20 20  NURBS_ERROR4    
25b0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 31                 1
25c0: 30 30 32 35 34 29 0a 20 20 28 64 65 66 69 6e 65  00254).  (define
25d0: 20 47 4c 55 5f 4e 55 52 42 53 5f 45 52 52 4f 52   GLU_NURBS_ERROR
25e0: 35 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  5               
25f0: 20 20 20 20 31 30 30 32 35 35 29 0a 20 20 28 64      100255).  (d
2600: 65 66 69 6e 65 20 47 4c 55 5f 4e 55 52 42 53 5f  efine GLU_NURBS_
2610: 45 52 52 4f 52 36 20 20 20 20 20 20 20 20 20 20  ERROR6          
2620: 20 20 20 20 20 20 20 20 20 31 30 30 32 35 36 29           100256)
2630: 0a 20 20 28 64 65 66 69 6e 65 20 47 4c 55 5f 4e  .  (define GLU_N
2640: 55 52 42 53 5f 45 52 52 4f 52 37 20 20 20 20 20  URBS_ERROR7     
2650: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 31 30                10
2660: 30 32 35 37 29 0a 20 20 28 64 65 66 69 6e 65 20  0257).  (define 
2670: 47 4c 55 5f 4e 55 52 42 53 5f 45 52 52 4f 52 38  GLU_NURBS_ERROR8
2680: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
2690: 20 20 20 31 30 30 32 35 38 29 0a 20 20 28 64 65     100258).  (de
26a0: 66 69 6e 65 20 47 4c 55 5f 4e 55 52 42 53 5f 45  fine GLU_NURBS_E
26b0: 52 52 4f 52 39 20 20 20 20 20 20 20 20 20 20 20  RROR9           
26c0: 20 20 20 20 20 20 20 20 31 30 30 32 35 39 29 0a          100259).
26d0: 20 20 28 64 65 66 69 6e 65 20 47 4c 55 5f 4e 55    (define GLU_NU
26e0: 52 42 53 5f 45 52 52 4f 52 31 30 20 20 20 20 20  RBS_ERROR10     
26f0: 20 20 20 20 20 20 20 20 20 20 20 20 20 31 30 30               100
2700: 32 36 30 29 0a 20 20 28 64 65 66 69 6e 65 20 47  260).  (define G
2710: 4c 55 5f 4e 55 52 42 53 5f 45 52 52 4f 52 31 31  LU_NURBS_ERROR11
2720: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
2730: 20 20 31 30 30 32 36 31 29 0a 20 20 28 64 65 66    100261).  (def
2740: 69 6e 65 20 47 4c 55 5f 4e 55 52 42 53 5f 45 52  ine GLU_NURBS_ER
2750: 52 4f 52 31 32 20 20 20 20 20 20 20 20 20 20 20  ROR12           
2760: 20 20 20 20 20 20 20 31 30 30 32 36 32 29 0a 20         100262). 
2770: 20 28 64 65 66 69 6e 65 20 47 4c 55 5f 4e 55 52   (define GLU_NUR
2780: 42 53 5f 45 52 52 4f 52 31 33 20 20 20 20 20 20  BS_ERROR13      
2790: 20 20 20 20 20 20 20 20 20 20 20 20 31 30 30 32              1002
27a0: 36 33 29 0a 20 20 28 64 65 66 69 6e 65 20 47 4c  63).  (define GL
27b0: 55 5f 4e 55 52 42 53 5f 45 52 52 4f 52 31 34 20  U_NURBS_ERROR14 
27c0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
27d0: 20 31 30 30 32 36 34 29 0a 20 20 28 64 65 66 69   100264).  (defi
27e0: 6e 65 20 47 4c 55 5f 4e 55 52 42 53 5f 45 52 52  ne GLU_NURBS_ERR
27f0: 4f 52 31 35 20 20 20 20 20 20 20 20 20 20 20 20  OR15            
2800: 20 20 20 20 20 20 31 30 30 32 36 35 29 0a 20 20        100265).  
2810: 28 64 65 66 69 6e 65 20 47 4c 55 5f 4e 55 52 42  (define GLU_NURB
2820: 53 5f 45 52 52 4f 52 31 36 20 20 20 20 20 20 20  S_ERROR16       
2830: 20 20 20 20 20 20 20 20 20 20 20 31 30 30 32 36             10026
2840: 36 29 0a 20 20 28 64 65 66 69 6e 65 20 47 4c 55  6).  (define GLU
2850: 5f 4e 55 52 42 53 5f 45 52 52 4f 52 31 37 20 20  _NURBS_ERROR17  
2860: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
2870: 31 30 30 32 36 37 29 0a 20 20 28 64 65 66 69 6e  100267).  (defin
2880: 65 20 47 4c 55 5f 4e 55 52 42 53 5f 45 52 52 4f  e GLU_NURBS_ERRO
2890: 52 31 38 20 20 20 20 20 20 20 20 20 20 20 20 20  R18             
28a0: 20 20 20 20 20 31 30 30 32 36 38 29 0a 20 20 28       100268).  (
28b0: 64 65 66 69 6e 65 20 47 4c 55 5f 4e 55 52 42 53  define GLU_NURBS
28c0: 5f 45 52 52 4f 52 31 39 20 20 20 20 20 20 20 20  _ERROR19        
28d0: 20 20 20 20 20 20 20 20 20 20 31 30 30 32 36 39            100269
28e0: 29 0a 20 20 28 64 65 66 69 6e 65 20 47 4c 55 5f  ).  (define GLU_
28f0: 4e 55 52 42 53 5f 45 52 52 4f 52 32 30 20 20 20  NURBS_ERROR20   
2900: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 31                 1
2910: 30 30 32 37 30 29 0a 20 20 28 64 65 66 69 6e 65  00270).  (define
2920: 20 47 4c 55 5f 4e 55 52 42 53 5f 45 52 52 4f 52   GLU_NURBS_ERROR
2930: 32 31 20 20 20 20 20 20 20 20 20 20 20 20 20 20  21              
2940: 20 20 20 20 31 30 30 32 37 31 29 0a 20 20 28 64      100271).  (d
2950: 65 66 69 6e 65 20 47 4c 55 5f 4e 55 52 42 53 5f  efine GLU_NURBS_
2960: 45 52 52 4f 52 32 32 20 20 20 20 20 20 20 20 20  ERROR22         
2970: 20 20 20 20 20 20 20 20 20 31 30 30 32 37 32 29           100272)
2980: 0a 20 20 28 64 65 66 69 6e 65 20 47 4c 55 5f 4e  .  (define GLU_N
2990: 55 52 42 53 5f 45 52 52 4f 52 32 33 20 20 20 20  URBS_ERROR23    
29a0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 31 30                10
29b0: 30 32 37 33 29 0a 20 20 28 64 65 66 69 6e 65 20  0273).  (define 
29c0: 47 4c 55 5f 4e 55 52 42 53 5f 45 52 52 4f 52 32  GLU_NURBS_ERROR2
29d0: 34 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  4               
29e0: 20 20 20 31 30 30 32 37 34 29 0a 20 20 28 64 65     100274).  (de
29f0: 66 69 6e 65 20 47 4c 55 5f 4e 55 52 42 53 5f 45  fine GLU_NURBS_E
2a00: 52 52 4f 52 32 35 20 20 20 20 20 20 20 20 20 20  RROR25          
2a10: 20 20 20 20 20 20 20 20 31 30 30 32 37 35 29 0a          100275).
2a20: 20 20 28 64 65 66 69 6e 65 20 47 4c 55 5f 4e 55    (define GLU_NU
2a30: 52 42 53 5f 45 52 52 4f 52 32 36 20 20 20 20 20  RBS_ERROR26     
2a40: 20 20 20 20 20 20 20 20 20 20 20 20 20 31 30 30               100
2a50: 32 37 36 29 0a 20 20 28 64 65 66 69 6e 65 20 47  276).  (define G
2a60: 4c 55 5f 4e 55 52 42 53 5f 45 52 52 4f 52 32 37  LU_NURBS_ERROR27
2a70: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
2a80: 20 20 31 30 30 32 37 37 29 0a 20 20 28 64 65 66    100277).  (def
2a90: 69 6e 65 20 47 4c 55 5f 4e 55 52 42 53 5f 45 52  ine GLU_NURBS_ER
2aa0: 52 4f 52 32 38 20 20 20 20 20 20 20 20 20 20 20  ROR28           
2ab0: 20 20 20 20 20 20 20 31 30 30 32 37 38 29 0a 20         100278). 
2ac0: 20 28 64 65 66 69 6e 65 20 47 4c 55 5f 4e 55 52   (define GLU_NUR
2ad0: 42 53 5f 45 52 52 4f 52 32 39 20 20 20 20 20 20  BS_ERROR29      
2ae0: 20 20 20 20 20 20 20 20 20 20 20 20 31 30 30 32              1002
2af0: 37 39 29 0a 20 20 28 64 65 66 69 6e 65 20 47 4c  79).  (define GL
2b00: 55 5f 4e 55 52 42 53 5f 45 52 52 4f 52 33 30 20  U_NURBS_ERROR30 
2b10: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
2b20: 20 31 30 30 32 38 30 29 0a 20 20 28 64 65 66 69   100280).  (defi
2b30: 6e 65 20 47 4c 55 5f 4e 55 52 42 53 5f 45 52 52  ne GLU_NURBS_ERR
2b40: 4f 52 33 31 20 20 20 20 20 20 20 20 20 20 20 20  OR31            
2b50: 20 20 20 20 20 20 31 30 30 32 38 31 29 0a 20 20        100281).  
2b60: 28 64 65 66 69 6e 65 20 47 4c 55 5f 4e 55 52 42  (define GLU_NURB
2b70: 53 5f 45 52 52 4f 52 33 32 20 20 20 20 20 20 20  S_ERROR32       
2b80: 20 20 20 20 20 20 20 20 20 20 20 31 30 30 32 38             10028
2b90: 32 29 0a 20 20 28 64 65 66 69 6e 65 20 47 4c 55  2).  (define GLU
2ba0: 5f 4e 55 52 42 53 5f 45 52 52 4f 52 33 33 20 20  _NURBS_ERROR33  
2bb0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
2bc0: 31 30 30 32 38 33 29 0a 20 20 28 64 65 66 69 6e  100283).  (defin
2bd0: 65 20 47 4c 55 5f 4e 55 52 42 53 5f 45 52 52 4f  e GLU_NURBS_ERRO
2be0: 52 33 34 20 20 20 20 20 20 20 20 20 20 20 20 20  R34             
2bf0: 20 20 20 20 20 31 30 30 32 38 34 29 0a 20 20 28       100284).  (
2c00: 64 65 66 69 6e 65 20 47 4c 55 5f 4e 55 52 42 53  define GLU_NURBS
2c10: 5f 45 52 52 4f 52 33 35 20 20 20 20 20 20 20 20  _ERROR35        
2c20: 20 20 20 20 20 20 20 20 20 20 31 30 30 32 38 35            100285
2c30: 29 0a 20 20 28 64 65 66 69 6e 65 20 47 4c 55 5f  ).  (define GLU_
2c40: 4e 55 52 42 53 5f 45 52 52 4f 52 33 36 20 20 20  NURBS_ERROR36   
2c50: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 31                 1
2c60: 30 30 32 38 36 29 0a 20 20 28 64 65 66 69 6e 65  00286).  (define
2c70: 20 47 4c 55 5f 4e 55 52 42 53 5f 45 52 52 4f 52   GLU_NURBS_ERROR
2c80: 33 37 20 20 20 20 20 20 20 20 20 20 20 20 20 20  37              
2c90: 20 20 20 20 31 30 30 32 38 37 29 0a 20 20 3b 3b      100287).  ;;
2ca0: 3b 3b 20 4e 75 72 62 73 50 72 6f 70 65 72 74 79  ;; NurbsProperty
2cb0: 0a 20 20 28 64 65 66 69 6e 65 20 47 4c 55 5f 41  .  (define GLU_A
2cc0: 55 54 4f 5f 4c 4f 41 44 5f 4d 41 54 52 49 58 20  UTO_LOAD_MATRIX 
2cd0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 31 30                10
2ce0: 30 32 30 30 29 0a 20 20 28 64 65 66 69 6e 65 20  0200).  (define 
2cf0: 47 4c 55 5f 43 55 4c 4c 49 4e 47 20 20 20 20 20  GLU_CULLING     
2d00: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
2d10: 20 20 20 31 30 30 32 30 31 29 0a 20 20 28 64 65     100201).  (de
2d20: 66 69 6e 65 20 47 4c 55 5f 53 41 4d 50 4c 49 4e  fine GLU_SAMPLIN
2d30: 47 5f 54 4f 4c 45 52 41 4e 43 45 20 20 20 20 20  G_TOLERANCE     
2d40: 20 20 20 20 20 20 20 20 31 30 30 32 30 33 29 0a          100203).
2d50: 20 20 28 64 65 66 69 6e 65 20 47 4c 55 5f 44 49    (define GLU_DI
2d60: 53 50 4c 41 59 5f 4d 4f 44 45 20 20 20 20 20 20  SPLAY_MODE      
2d70: 20 20 20 20 20 20 20 20 20 20 20 20 20 31 30 30               100
2d80: 32 30 34 29 0a 20 20 28 64 65 66 69 6e 65 20 47  204).  (define G
2d90: 4c 55 5f 50 41 52 41 4d 45 54 52 49 43 5f 54 4f  LU_PARAMETRIC_TO
2da0: 4c 45 52 41 4e 43 45 20 20 20 20 20 20 20 20 20  LERANCE         
2db0: 20 20 31 30 30 32 30 32 29 0a 20 20 28 64 65 66    100202).  (def
2dc0: 69 6e 65 20 47 4c 55 5f 53 41 4d 50 4c 49 4e 47  ine GLU_SAMPLING
2dd0: 5f 4d 45 54 48 4f 44 20 20 20 20 20 20 20 20 20  _METHOD         
2de0: 20 20 20 20 20 20 20 31 30 30 32 30 35 29 0a 20         100205). 
2df0: 20 28 64 65 66 69 6e 65 20 47 4c 55 5f 55 5f 53   (define GLU_U_S
2e00: 54 45 50 20 20 20 20 20 20 20 20 20 20 20 20 20  TEP             
2e10: 20 20 20 20 20 20 20 20 20 20 20 20 31 30 30 32              1002
2e20: 30 36 29 0a 20 20 28 64 65 66 69 6e 65 20 47 4c  06).  (define GL
2e30: 55 5f 56 5f 53 54 45 50 20 20 20 20 20 20 20 20  U_V_STEP        
2e40: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
2e50: 20 31 30 30 32 30 37 29 0a 20 20 28 64 65 66 69   100207).  (defi
2e60: 6e 65 20 47 4c 55 5f 4e 55 52 42 53 5f 4d 4f 44  ne GLU_NURBS_MOD
2e70: 45 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  E               
2e80: 20 20 20 20 20 20 31 30 30 31 36 30 29 0a 20 20        100160).  
2e90: 28 64 65 66 69 6e 65 20 47 4c 55 5f 4e 55 52 42  (define GLU_NURB
2ea0: 53 5f 4d 4f 44 45 5f 45 58 54 20 20 20 20 20 20  S_MODE_EXT      
2eb0: 20 20 20 20 20 20 20 20 20 20 20 31 30 30 31 36             10016
2ec0: 30 29 0a 20 20 28 64 65 66 69 6e 65 20 47 4c 55  0).  (define GLU
2ed0: 5f 4e 55 52 42 53 5f 54 45 53 53 45 4c 4c 41 54  _NURBS_TESSELLAT
2ee0: 4f 52 20 20 20 20 20 20 20 20 20 20 20 20 20 20  OR              
2ef0: 31 30 30 31 36 31 29 0a 20 20 28 64 65 66 69 6e  100161).  (defin
2f00: 65 20 47 4c 55 5f 4e 55 52 42 53 5f 54 45 53 53  e GLU_NURBS_TESS
2f10: 45 4c 4c 41 54 4f 52 5f 45 58 54 20 20 20 20 20  ELLATOR_EXT     
2f20: 20 20 20 20 20 31 30 30 31 36 31 29 0a 20 20 28       100161).  (
2f30: 64 65 66 69 6e 65 20 47 4c 55 5f 4e 55 52 42 53  define GLU_NURBS
2f40: 5f 52 45 4e 44 45 52 45 52 20 20 20 20 20 20 20  _RENDERER       
2f50: 20 20 20 20 20 20 20 20 20 20 31 30 30 31 36 32            100162
2f60: 29 0a 20 20 28 64 65 66 69 6e 65 20 47 4c 55 5f  ).  (define GLU_
2f70: 4e 55 52 42 53 5f 52 45 4e 44 45 52 45 52 5f 45  NURBS_RENDERER_E
2f80: 58 54 20 20 20 20 20 20 20 20 20 20 20 20 20 31  XT             1
2f90: 30 30 31 36 32 29 0a 20 20 3b 3b 3b 3b 20 4e 75  00162).  ;;;; Nu
2fa0: 72 62 73 53 61 6d 70 6c 69 6e 67 0a 20 20 28 64  rbsSampling.  (d
2fb0: 65 66 69 6e 65 20 47 4c 55 5f 4f 42 4a 45 43 54  efine GLU_OBJECT
2fc0: 5f 50 41 52 41 4d 45 54 52 49 43 5f 45 52 52 4f  _PARAMETRIC_ERRO
2fd0: 52 20 20 20 20 20 20 20 20 31 30 30 32 30 38 29  R        100208)
2fe0: 0a 20 20 28 64 65 66 69 6e 65 20 47 4c 55 5f 4f  .  (define GLU_O
2ff0: 42 4a 45 43 54 5f 50 41 52 41 4d 45 54 52 49 43  BJECT_PARAMETRIC
3000: 5f 45 52 52 4f 52 5f 45 58 54 20 20 20 20 31 30  _ERROR_EXT    10
3010: 30 32 30 38 29 0a 20 20 28 64 65 66 69 6e 65 20  0208).  (define 
3020: 47 4c 55 5f 4f 42 4a 45 43 54 5f 50 41 54 48 5f  GLU_OBJECT_PATH_
3030: 4c 45 4e 47 54 48 20 20 20 20 20 20 20 20 20 20  LENGTH          
3040: 20 20 20 31 30 30 32 30 39 29 0a 20 20 28 64 65     100209).  (de
3050: 66 69 6e 65 20 47 4c 55 5f 4f 42 4a 45 43 54 5f  fine GLU_OBJECT_
3060: 50 41 54 48 5f 4c 45 4e 47 54 48 5f 45 58 54 20  PATH_LENGTH_EXT 
3070: 20 20 20 20 20 20 20 20 31 30 30 32 30 39 29 0a          100209).
3080: 20 20 28 64 65 66 69 6e 65 20 47 4c 55 5f 50 41    (define GLU_PA
3090: 54 48 5f 4c 45 4e 47 54 48 20 20 20 20 20 20 20  TH_LENGTH       
30a0: 20 20 20 20 20 20 20 20 20 20 20 20 20 31 30 30               100
30b0: 32 31 35 29 0a 20 20 28 64 65 66 69 6e 65 20 47  215).  (define G
30c0: 4c 55 5f 50 41 52 41 4d 45 54 52 49 43 5f 45 52  LU_PARAMETRIC_ER
30d0: 52 4f 52 20 20 20 20 20 20 20 20 20 20 20 20 20  ROR             
30e0: 20 20 31 30 30 32 31 36 29 0a 20 20 28 64 65 66    100216).  (def
30f0: 69 6e 65 20 47 4c 55 5f 44 4f 4d 41 49 4e 5f 44  ine GLU_DOMAIN_D
3100: 49 53 54 41 4e 43 45 20 20 20 20 20 20 20 20 20  ISTANCE         
3110: 20 20 20 20 20 20 20 31 30 30 32 31 37 29 0a 20         100217). 
3120: 20 3b 3b 3b 3b 20 4e 75 72 62 73 54 72 69 6d 0a   ;;;; NurbsTrim.
3130: 20 20 28 64 65 66 69 6e 65 20 47 4c 55 5f 4d 41    (define GLU_MA
3140: 50 31 5f 54 52 49 4d 5f 32 20 20 20 20 20 20 20  P1_TRIM_2       
3150: 20 20 20 20 20 20 20 20 20 20 20 20 20 31 30 30               100
3160: 32 31 30 29 0a 20 20 28 64 65 66 69 6e 65 20 47  210).  (define G
3170: 4c 55 5f 4d 41 50 31 5f 54 52 49 4d 5f 33 20 20  LU_MAP1_TRIM_3  
3180: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
3190: 20 20 31 30 30 32 31 31 29 0a 20 20 3b 3b 3b 3b    100211).  ;;;;
31a0: 20 51 75 61 64 72 69 63 44 72 61 77 53 74 79 6c   QuadricDrawStyl
31b0: 65 0a 20 20 28 64 65 66 69 6e 65 20 47 4c 55 5f  e.  (define GLU_
31c0: 50 4f 49 4e 54 20 20 20 20 20 20 20 20 20 20 20  POINT           
31d0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 31                 1
31e0: 30 30 30 31 30 29 0a 20 20 28 64 65 66 69 6e 65  00010).  (define
31f0: 20 47 4c 55 5f 4c 49 4e 45 20 20 20 20 20 20 20   GLU_LINE       
3200: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
3210: 20 20 20 20 31 30 30 30 31 31 29 0a 20 20 28 64      100011).  (d
3220: 65 66 69 6e 65 20 47 4c 55 5f 46 49 4c 4c 20 20  efine GLU_FILL  
3230: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
3240: 20 20 20 20 20 20 20 20 20 31 30 30 30 31 32 29           100012)
3250: 0a 20 20 28 64 65 66 69 6e 65 20 47 4c 55 5f 53  .  (define GLU_S
3260: 49 4c 48 4f 55 45 54 54 45 20 20 20 20 20 20 20  ILHOUETTE       
3270: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 31 30                10
3280: 30 30 31 33 29 0a 20 20 3b 3b 3b 3b 20 51 75 61  0013).  ;;;; Qua
3290: 64 72 69 63 43 61 6c 6c 62 61 63 6b 0a 20 20 3b  dricCallback.  ;
32a0: 3b 3b 3b 20 20 20 20 47 4c 55 5f 45 52 52 4f 52  ;;;    GLU_ERROR
32b0: 0a 20 20 3b 3b 3b 3b 20 51 75 61 64 72 69 63 4e  .  ;;;; QuadricN
32c0: 6f 72 6d 61 6c 0a 20 20 28 64 65 66 69 6e 65 20  ormal.  (define 
32d0: 47 4c 55 5f 53 4d 4f 4f 54 48 20 20 20 20 20 20  GLU_SMOOTH      
32e0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
32f0: 20 20 20 31 30 30 30 30 30 29 0a 20 20 28 64 65     100000).  (de
3300: 66 69 6e 65 20 47 4c 55 5f 46 4c 41 54 20 20 20  fine GLU_FLAT   
3310: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
3320: 20 20 20 20 20 20 20 20 31 30 30 30 30 31 29 0a          100001).
3330: 20 20 28 64 65 66 69 6e 65 20 47 4c 55 5f 4e 4f    (define GLU_NO
3340: 4e 45 20 20 20 20 20 20 20 20 20 20 20 20 20 20  NE              
3350: 20 20 20 20 20 20 20 20 20 20 20 20 20 31 30 30               100
3360: 30 30 32 29 0a 20 20 3b 3b 3b 3b 20 51 75 61 64  002).  ;;;; Quad
3370: 72 69 63 4f 72 69 65 6e 74 61 74 69 6f 6e 0a 20  ricOrientation. 
3380: 20 28 64 65 66 69 6e 65 20 47 4c 55 5f 4f 55 54   (define GLU_OUT
3390: 53 49 44 45 20 20 20 20 20 20 20 20 20 20 20 20  SIDE            
33a0: 20 20 20 20 20 20 20 20 20 20 20 20 31 30 30 30              1000
33b0: 32 30 29 0a 20 20 28 64 65 66 69 6e 65 20 47 4c  20).  (define GL
33c0: 55 5f 49 4e 53 49 44 45 20 20 20 20 20 20 20 20  U_INSIDE        
33d0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
33e0: 20 31 30 30 30 32 31 29 0a 20 20 3b 3b 3b 3b 20   100021).  ;;;; 
33f0: 54 65 73 73 43 61 6c 6c 62 61 63 6b 0a 20 20 28  TessCallback.  (
3400: 64 65 66 69 6e 65 20 47 4c 55 5f 54 45 53 53 5f  define GLU_TESS_
3410: 42 45 47 49 4e 20 20 20 20 20 20 20 20 20 20 20  BEGIN           
3420: 20 20 20 20 20 20 20 20 20 20 31 30 30 31 30 30            100100
3430: 29 0a 20 20 28 64 65 66 69 6e 65 20 47 4c 55 5f  ).  (define GLU_
3440: 42 45 47 49 4e 20 20 20 20 20 20 20 20 20 20 20  BEGIN           
3450: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 31                 1
3460: 30 30 31 30 30 29 0a 20 20 28 64 65 66 69 6e 65  00100).  (define
3470: 20 47 4c 55 5f 54 45 53 53 5f 56 45 52 54 45 58   GLU_TESS_VERTEX
3480: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
3490: 20 20 20 20 31 30 30 31 30 31 29 0a 20 20 28 64      100101).  (d
34a0: 65 66 69 6e 65 20 47 4c 55 5f 56 45 52 54 45 58  efine GLU_VERTEX
34b0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
34c0: 20 20 20 20 20 20 20 20 20 31 30 30 31 30 31 29           100101)
34d0: 0a 20 20 28 64 65 66 69 6e 65 20 47 4c 55 5f 54  .  (define GLU_T
34e0: 45 53 53 5f 45 4e 44 20 20 20 20 20 20 20 20 20  ESS_END         
34f0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 31 30                10
3500: 30 31 30 32 29 0a 20 20 28 64 65 66 69 6e 65 20  0102).  (define 
3510: 47 4c 55 5f 45 4e 44 20 20 20 20 20 20 20 20 20  GLU_END         
3520: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
3530: 20 20 20 31 30 30 31 30 32 29 0a 20 20 28 64 65     100102).  (de
3540: 66 69 6e 65 20 47 4c 55 5f 54 45 53 53 5f 45 52  fine GLU_TESS_ER
3550: 52 4f 52 20 20 20 20 20 20 20 20 20 20 20 20 20  ROR             
3560: 20 20 20 20 20 20 20 20 31 30 30 31 30 33 29 0a          100103).
3570: 20 20 28 64 65 66 69 6e 65 20 47 4c 55 5f 54 45    (define GLU_TE
3580: 53 53 5f 45 44 47 45 5f 46 4c 41 47 20 20 20 20  SS_EDGE_FLAG    
3590: 20 20 20 20 20 20 20 20 20 20 20 20 20 31 30 30               100
35a0: 31 30 34 29 0a 20 20 28 64 65 66 69 6e 65 20 47  104).  (define G
35b0: 4c 55 5f 45 44 47 45 5f 46 4c 41 47 20 20 20 20  LU_EDGE_FLAG    
35c0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
35d0: 20 20 31 30 30 31 30 34 29 0a 20 20 28 64 65 66    100104).  (def
35e0: 69 6e 65 20 47 4c 55 5f 54 45 53 53 5f 43 4f 4d  ine GLU_TESS_COM
35f0: 42 49 4e 45 20 20 20 20 20 20 20 20 20 20 20 20  BINE            
3600: 20 20 20 20 20 20 20 31 30 30 31 30 35 29 0a 20         100105). 
3610: 20 28 64 65 66 69 6e 65 20 47 4c 55 5f 54 45 53   (define GLU_TES
3620: 53 5f 42 45 47 49 4e 5f 44 41 54 41 20 20 20 20  S_BEGIN_DATA    
3630: 20 20 20 20 20 20 20 20 20 20 20 20 31 30 30 31              1001
3640: 30 36 29 0a 20 20 28 64 65 66 69 6e 65 20 47 4c  06).  (define GL
3650: 55 5f 54 45 53 53 5f 56 45 52 54 45 58 5f 44 41  U_TESS_VERTEX_DA
3660: 54 41 20 20 20 20 20 20 20 20 20 20 20 20 20 20  TA              
3670: 20 31 30 30 31 30 37 29 0a 20 20 28 64 65 66 69   100107).  (defi
3680: 6e 65 20 47 4c 55 5f 54 45 53 53 5f 45 4e 44 5f  ne GLU_TESS_END_
3690: 44 41 54 41 20 20 20 20 20 20 20 20 20 20 20 20  DATA            
36a0: 20 20 20 20 20 20 31 30 30 31 30 38 29 0a 20 20        100108).  
36b0: 28 64 65 66 69 6e 65 20 47 4c 55 5f 54 45 53 53  (define GLU_TESS
36c0: 5f 45 52 52 4f 52 5f 44 41 54 41 20 20 20 20 20  _ERROR_DATA     
36d0: 20 20 20 20 20 20 20 20 20 20 20 31 30 30 31 30             10010
36e0: 39 29 0a 20 20 28 64 65 66 69 6e 65 20 47 4c 55  9).  (define GLU
36f0: 5f 54 45 53 53 5f 45 44 47 45 5f 46 4c 41 47 5f  _TESS_EDGE_FLAG_
3700: 44 41 54 41 20 20 20 20 20 20 20 20 20 20 20 20  DATA            
3710: 31 30 30 31 31 30 29 0a 20 20 28 64 65 66 69 6e  100110).  (defin
3720: 65 20 47 4c 55 5f 54 45 53 53 5f 43 4f 4d 42 49  e GLU_TESS_COMBI
3730: 4e 45 5f 44 41 54 41 20 20 20 20 20 20 20 20 20  NE_DATA         
3740: 20 20 20 20 20 31 30 30 31 31 31 29 0a 20 20 3b       100111).  ;
3750: 3b 3b 3b 20 54 65 73 73 43 6f 6e 74 6f 75 72 0a  ;;; TessContour.
3760: 20 20 28 64 65 66 69 6e 65 20 47 4c 55 5f 43 57    (define GLU_CW
3770: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
3780: 20 20 20 20 20 20 20 20 20 20 20 20 20 31 30 30               100
3790: 31 32 30 29 0a 20 20 28 64 65 66 69 6e 65 20 47  120).  (define G
37a0: 4c 55 5f 43 43 57 20 20 20 20 20 20 20 20 20 20  LU_CCW          
37b0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
37c0: 20 20 31 30 30 31 32 31 29 0a 20 20 28 64 65 66    100121).  (def
37d0: 69 6e 65 20 47 4c 55 5f 49 4e 54 45 52 49 4f 52  ine GLU_INTERIOR
37e0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
37f0: 20 20 20 20 20 20 20 31 30 30 31 32 32 29 0a 20         100122). 
3800: 20 28 64 65 66 69 6e 65 20 47 4c 55 5f 45 58 54   (define GLU_EXT
3810: 45 52 49 4f 52 20 20 20 20 20 20 20 20 20 20 20  ERIOR           
3820: 20 20 20 20 20 20 20 20 20 20 20 20 31 30 30 31              1001
3830: 32 33 29 0a 20 20 28 64 65 66 69 6e 65 20 47 4c  23).  (define GL
3840: 55 5f 55 4e 4b 4e 4f 57 4e 20 20 20 20 20 20 20  U_UNKNOWN       
3850: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
3860: 20 31 30 30 31 32 34 29 0a 20 20 3b 3b 3b 3b 20   100124).  ;;;; 
3870: 54 65 73 73 50 72 6f 70 65 72 74 79 0a 20 20 28  TessProperty.  (
3880: 64 65 66 69 6e 65 20 47 4c 55 5f 54 45 53 53 5f  define GLU_TESS_
3890: 57 49 4e 44 49 4e 47 5f 52 55 4c 45 20 20 20 20  WINDING_RULE    
38a0: 20 20 20 20 20 20 20 20 20 20 31 30 30 31 34 30            100140
38b0: 29 0a 20 20 28 64 65 66 69 6e 65 20 47 4c 55 5f  ).  (define GLU_
38c0: 54 45 53 53 5f 42 4f 55 4e 44 41 52 59 5f 4f 4e  TESS_BOUNDARY_ON
38d0: 4c 59 20 20 20 20 20 20 20 20 20 20 20 20 20 31  LY             1
38e0: 30 30 31 34 31 29 0a 20 20 28 64 65 66 69 6e 65  00141).  (define
38f0: 20 47 4c 55 5f 54 45 53 53 5f 54 4f 4c 45 52 41   GLU_TESS_TOLERA
3900: 4e 43 45 20 20 20 20 20 20 20 20 20 20 20 20 20  NCE             
3910: 20 20 20 20 31 30 30 31 34 32 29 0a 20 20 3b 3b      100142).  ;;
3920: 3b 3b 20 54 65 73 73 45 72 72 6f 72 0a 20 20 28  ;; TessError.  (
3930: 64 65 66 69 6e 65 20 47 4c 55 5f 54 45 53 53 5f  define GLU_TESS_
3940: 45 52 52 4f 52 31 20 20 20 20 20 20 20 20 20 20  ERROR1          
3950: 20 20 20 20 20 20 20 20 20 20 31 30 30 31 35 31            100151
3960: 29 0a 20 20 28 64 65 66 69 6e 65 20 47 4c 55 5f  ).  (define GLU_
3970: 54 45 53 53 5f 45 52 52 4f 52 32 20 20 20 20 20  TESS_ERROR2     
3980: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 31                 1
3990: 30 30 31 35 32 29 0a 20 20 28 64 65 66 69 6e 65  00152).  (define
39a0: 20 47 4c 55 5f 54 45 53 53 5f 45 52 52 4f 52 33   GLU_TESS_ERROR3
39b0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
39c0: 20 20 20 20 31 30 30 31 35 33 29 0a 20 20 28 64      100153).  (d
39d0: 65 66 69 6e 65 20 47 4c 55 5f 54 45 53 53 5f 45  efine GLU_TESS_E
39e0: 52 52 4f 52 34 20 20 20 20 20 20 20 20 20 20 20  RROR4           
39f0: 20 20 20 20 20 20 20 20 20 31 30 30 31 35 34 29           100154)
3a00: 0a 20 20 28 64 65 66 69 6e 65 20 47 4c 55 5f 54  .  (define GLU_T
3a10: 45 53 53 5f 45 52 52 4f 52 35 20 20 20 20 20 20  ESS_ERROR5      
3a20: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 31 30                10
3a30: 30 31 35 35 29 0a 20 20 28 64 65 66 69 6e 65 20  0155).  (define 
3a40: 47 4c 55 5f 54 45 53 53 5f 45 52 52 4f 52 36 20  GLU_TESS_ERROR6 
3a50: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
3a60: 20 20 20 31 30 30 31 35 36 29 0a 20 20 28 64 65     100156).  (de
3a70: 66 69 6e 65 20 47 4c 55 5f 54 45 53 53 5f 45 52  fine GLU_TESS_ER
3a80: 52 4f 52 37 20 20 20 20 20 20 20 20 20 20 20 20  ROR7            
3a90: 20 20 20 20 20 20 20 20 31 30 30 31 35 37 29 0a          100157).
3aa0: 20 20 28 64 65 66 69 6e 65 20 47 4c 55 5f 54 45    (define GLU_TE
3ab0: 53 53 5f 45 52 52 4f 52 38 20 20 20 20 20 20 20  SS_ERROR8       
3ac0: 20 20 20 20 20 20 20 20 20 20 20 20 20 31 30 30               100
3ad0: 31 35 38 29 0a 20 20 28 64 65 66 69 6e 65 20 47  158).  (define G
3ae0: 4c 55 5f 54 45 53 53 5f 4d 49 53 53 49 4e 47 5f  LU_TESS_MISSING_
3af0: 42 45 47 49 4e 5f 50 4f 4c 59 47 4f 4e 20 20 20  BEGIN_POLYGON   
3b00: 20 20 31 30 30 31 35 31 29 0a 20 20 28 64 65 66    100151).  (def
3b10: 69 6e 65 20 47 4c 55 5f 54 45 53 53 5f 4d 49 53  ine GLU_TESS_MIS
3b20: 53 49 4e 47 5f 42 45 47 49 4e 5f 43 4f 4e 54 4f  SING_BEGIN_CONTO
3b30: 55 52 20 20 20 20 20 31 30 30 31 35 32 29 0a 20  UR     100152). 
3b40: 20 28 64 65 66 69 6e 65 20 47 4c 55 5f 54 45 53   (define GLU_TES
3b50: 53 5f 4d 49 53 53 49 4e 47 5f 45 4e 44 5f 50 4f  S_MISSING_END_PO
3b60: 4c 59 47 4f 4e 20 20 20 20 20 20 20 31 30 30 31  LYGON       1001
3b70: 35 33 29 0a 20 20 28 64 65 66 69 6e 65 20 47 4c  53).  (define GL
3b80: 55 5f 54 45 53 53 5f 4d 49 53 53 49 4e 47 5f 45  U_TESS_MISSING_E
3b90: 4e 44 5f 43 4f 4e 54 4f 55 52 20 20 20 20 20 20  ND_CONTOUR      
3ba0: 20 31 30 30 31 35 34 29 0a 20 20 28 64 65 66 69   100154).  (defi
3bb0: 6e 65 20 47 4c 55 5f 54 45 53 53 5f 43 4f 4f 52  ne GLU_TESS_COOR
3bc0: 44 5f 54 4f 4f 5f 4c 41 52 47 45 20 20 20 20 20  D_TOO_LARGE     
3bd0: 20 20 20 20 20 20 31 30 30 31 35 35 29 0a 20 20        100155).  
3be0: 28 64 65 66 69 6e 65 20 47 4c 55 5f 54 45 53 53  (define GLU_TESS
3bf0: 5f 4e 45 45 44 5f 43 4f 4d 42 49 4e 45 5f 43 41  _NEED_COMBINE_CA
3c00: 4c 4c 42 41 43 4b 20 20 20 20 20 31 30 30 31 35  LLBACK     10015
3c10: 36 29 0a 20 20 3b 3b 3b 3b 20 54 65 73 73 57 69  6).  ;;;; TessWi
3c20: 6e 64 69 6e 67 0a 20 20 28 64 65 66 69 6e 65 20  nding.  (define 
3c30: 47 4c 55 5f 54 45 53 53 5f 57 49 4e 44 49 4e 47  GLU_TESS_WINDING
3c40: 5f 4f 44 44 20 20 20 20 20 20 20 20 20 20 20 20  _ODD            
3c50: 20 20 20 31 30 30 31 33 30 29 0a 20 20 28 64 65     100130).  (de
3c60: 66 69 6e 65 20 47 4c 55 5f 54 45 53 53 5f 57 49  fine GLU_TESS_WI
3c70: 4e 44 49 4e 47 5f 4e 4f 4e 5a 45 52 4f 20 20 20  NDING_NONZERO   
3c80: 20 20 20 20 20 20 20 20 31 30 30 31 33 31 29 0a          100131).
3c90: 20 20 28 64 65 66 69 6e 65 20 47 4c 55 5f 54 45    (define GLU_TE
3ca0: 53 53 5f 57 49 4e 44 49 4e 47 5f 50 4f 53 49 54  SS_WINDING_POSIT
3cb0: 49 56 45 20 20 20 20 20 20 20 20 20 20 31 30 30  IVE          100
3cc0: 31 33 32 29 0a 20 20 28 64 65 66 69 6e 65 20 47  132).  (define G
3cd0: 4c 55 5f 54 45 53 53 5f 57 49 4e 44 49 4e 47 5f  LU_TESS_WINDING_
3ce0: 4e 45 47 41 54 49 56 45 20 20 20 20 20 20 20 20  NEGATIVE        
3cf0: 20 20 31 30 30 31 33 33 29 0a 20 20 28 64 65 66    100133).  (def
3d00: 69 6e 65 20 47 4c 55 5f 54 45 53 53 5f 57 49 4e  ine GLU_TESS_WIN
3d10: 44 49 4e 47 5f 41 42 53 5f 47 45 51 5f 54 57 4f  DING_ABS_GEQ_TWO
3d20: 20 20 20 20 20 20 20 31 30 30 31 33 34 29 0a 20         100134). 
3d30: 20 28 64 65 66 69 6e 65 20 47 4c 55 5f 54 45 53   (define GLU_TES
3d40: 53 5f 4d 41 58 5f 43 4f 4f 52 44 20 20 20 20 20  S_MAX_COORD     
3d50: 20 20 20 20 20 20 20 20 20 20 20 20 31 2e 30 65              1.0e
3d60: 31 35 30 29 0a 0a 20 20 3b 3b 20 76 6f 69 64 20  150)..  ;; void 
3d70: 67 6c 75 42 65 67 69 6e 43 75 72 76 65 20 28 47  gluBeginCurve (G
3d80: 4c 55 6e 75 72 62 73 2a 20 6e 75 72 62 29 0a 20  LUnurbs* nurb). 
3d90: 20 28 64 65 66 69 6e 65 2d 66 75 6e 63 74 69 6f   (define-functio
3da0: 6e 20 76 6f 69 64 20 67 6c 75 42 65 67 69 6e 43  n void gluBeginC
3db0: 75 72 76 65 20 28 76 6f 69 64 2a 29 29 0a 0a 20  urve (void*)).. 
3dc0: 20 3b 3b 20 76 6f 69 64 20 67 6c 75 42 65 67 69   ;; void gluBegi
3dd0: 6e 50 6f 6c 79 67 6f 6e 20 28 47 4c 55 74 65 73  nPolygon (GLUtes
3de0: 73 65 6c 61 74 6f 72 2a 20 74 65 73 73 29 0a 20  selator* tess). 
3df0: 20 28 64 65 66 69 6e 65 2d 66 75 6e 63 74 69 6f   (define-functio
3e00: 6e 20 76 6f 69 64 20 67 6c 75 42 65 67 69 6e 50  n void gluBeginP
3e10: 6f 6c 79 67 6f 6e 20 28 76 6f 69 64 2a 29 29 0a  olygon (void*)).
3e20: 0a 20 20 3b 3b 20 76 6f 69 64 20 67 6c 75 42 65  .  ;; void gluBe
3e30: 67 69 6e 53 75 72 66 61 63 65 20 28 47 4c 55 6e  ginSurface (GLUn
3e40: 75 72 62 73 2a 20 6e 75 72 62 29 0a 20 20 28 64  urbs* nurb).  (d
3e50: 65 66 69 6e 65 2d 66 75 6e 63 74 69 6f 6e 20 76  efine-function v
3e60: 6f 69 64 20 67 6c 75 42 65 67 69 6e 53 75 72 66  oid gluBeginSurf
3e70: 61 63 65 20 28 76 6f 69 64 2a 29 29 0a 0a 20 20  ace (void*))..  
3e80: 3b 3b 20 76 6f 69 64 20 67 6c 75 42 65 67 69 6e  ;; void gluBegin
3e90: 54 72 69 6d 20 28 47 4c 55 6e 75 72 62 73 2a 20  Trim (GLUnurbs* 
3ea0: 6e 75 72 62 29 0a 20 20 28 64 65 66 69 6e 65 2d  nurb).  (define-
3eb0: 66 75 6e 63 74 69 6f 6e 20 76 6f 69 64 20 67 6c  function void gl
3ec0: 75 42 65 67 69 6e 54 72 69 6d 20 28 76 6f 69 64  uBeginTrim (void
3ed0: 2a 29 29 0a 0a 20 20 3b 3b 20 47 4c 69 6e 74 20  *))..  ;; GLint 
3ee0: 67 6c 75 42 75 69 6c 64 31 44 4d 69 70 6d 61 70  gluBuild1DMipmap
3ef0: 4c 65 76 65 6c 73 20 28 47 4c 65 6e 75 6d 20 74  Levels (GLenum t
3f00: 61 72 67 65 74 2c 20 47 4c 69 6e 74 20 69 6e 74  arget, GLint int
3f10: 65 72 6e 61 6c 46 6f 72 6d 61 74 2c 20 47 4c 73  ernalFormat, GLs
3f20: 69 7a 65 69 20 77 69 64 74 68 2c 20 47 4c 65 6e  izei width, GLen
3f30: 75 6d 20 66 6f 72 6d 61 74 2c 20 47 4c 65 6e 75  um format, GLenu
3f40: 6d 20 74 79 70 65 2c 20 47 4c 69 6e 74 20 6c 65  m type, GLint le
3f50: 76 65 6c 2c 20 47 4c 69 6e 74 20 62 61 73 65 2c  vel, GLint base,
3f60: 20 47 4c 69 6e 74 20 6d 61 78 2c 20 63 6f 6e 73   GLint max, cons
3f70: 74 20 76 6f 69 64 2a 20 64 61 74 61 29 0a 20 20  t void* data).  
3f80: 28 64 65 66 69 6e 65 2d 66 75 6e 63 74 69 6f 6e  (define-function
3f90: 20 69 6e 74 20 67 6c 75 42 75 69 6c 64 31 44 4d   int gluBuild1DM
3fa0: 69 70 6d 61 70 4c 65 76 65 6c 73 20 28 75 6e 73  ipmapLevels (uns
3fb0: 69 67 6e 65 64 2d 69 6e 74 20 69 6e 74 20 69 6e  igned-int int in
3fc0: 74 20 75 6e 73 69 67 6e 65 64 2d 69 6e 74 20 75  t unsigned-int u
3fd0: 6e 73 69 67 6e 65 64 2d 69 6e 74 20 69 6e 74 20  nsigned-int int 
3fe0: 69 6e 74 20 69 6e 74 20 76 6f 69 64 2a 29 29 0a  int int void*)).
3ff0: 0a 20 20 3b 3b 20 47 4c 69 6e 74 20 67 6c 75 42  .  ;; GLint gluB
4000: 75 69 6c 64 31 44 4d 69 70 6d 61 70 73 20 28 47  uild1DMipmaps (G
4010: 4c 65 6e 75 6d 20 74 61 72 67 65 74 2c 20 47 4c  Lenum target, GL
4020: 69 6e 74 20 69 6e 74 65 72 6e 61 6c 46 6f 72 6d  int internalForm
4030: 61 74 2c 20 47 4c 73 69 7a 65 69 20 77 69 64 74  at, GLsizei widt
4040: 68 2c 20 47 4c 65 6e 75 6d 20 66 6f 72 6d 61 74  h, GLenum format
4050: 2c 20 47 4c 65 6e 75 6d 20 74 79 70 65 2c 20 63  , GLenum type, c
4060: 6f 6e 73 74 20 76 6f 69 64 2a 20 64 61 74 61 29  onst void* data)
4070: 0a 20 20 28 64 65 66 69 6e 65 2d 66 75 6e 63 74  .  (define-funct
4080: 69 6f 6e 20 69 6e 74 20 67 6c 75 42 75 69 6c 64  ion int gluBuild
4090: 31 44 4d 69 70 6d 61 70 73 20 28 75 6e 73 69 67  1DMipmaps (unsig
40a0: 6e 65 64 2d 69 6e 74 20 69 6e 74 20 69 6e 74 20  ned-int int int 
40b0: 75 6e 73 69 67 6e 65 64 2d 69 6e 74 20 75 6e 73  unsigned-int uns
40c0: 69 67 6e 65 64 2d 69 6e 74 20 76 6f 69 64 2a 29  igned-int void*)
40d0: 29 0a 0a 20 20 3b 3b 20 47 4c 69 6e 74 20 67 6c  )..  ;; GLint gl
40e0: 75 42 75 69 6c 64 32 44 4d 69 70 6d 61 70 4c 65  uBuild2DMipmapLe
40f0: 76 65 6c 73 20 28 47 4c 65 6e 75 6d 20 74 61 72  vels (GLenum tar
4100: 67 65 74 2c 20 47 4c 69 6e 74 20 69 6e 74 65 72  get, GLint inter
4110: 6e 61 6c 46 6f 72 6d 61 74 2c 20 47 4c 73 69 7a  nalFormat, GLsiz
4120: 65 69 20 77 69 64 74 68 2c 20 47 4c 73 69 7a 65  ei width, GLsize
4130: 69 20 68 65 69 67 68 74 2c 20 47 4c 65 6e 75 6d  i height, GLenum
4140: 20 66 6f 72 6d 61 74 2c 20 47 4c 65 6e 75 6d 20   format, GLenum 
4150: 74 79 70 65 2c 20 47 4c 69 6e 74 20 6c 65 76 65  type, GLint leve
4160: 6c 2c 20 47 4c 69 6e 74 20 62 61 73 65 2c 20 47  l, GLint base, G
4170: 4c 69 6e 74 20 6d 61 78 2c 20 63 6f 6e 73 74 20  Lint max, const 
4180: 76 6f 69 64 2a 20 64 61 74 61 29 0a 20 20 28 64  void* data).  (d
4190: 65 66 69 6e 65 2d 66 75 6e 63 74 69 6f 6e 20 69  efine-function i
41a0: 6e 74 20 67 6c 75 42 75 69 6c 64 32 44 4d 69 70  nt gluBuild2DMip
41b0: 6d 61 70 4c 65 76 65 6c 73 20 28 75 6e 73 69 67  mapLevels (unsig
41c0: 6e 65 64 2d 69 6e 74 20 69 6e 74 20 69 6e 74 20  ned-int int int 
41d0: 69 6e 74 20 75 6e 73 69 67 6e 65 64 2d 69 6e 74  int unsigned-int
41e0: 20 75 6e 73 69 67 6e 65 64 2d 69 6e 74 20 69 6e   unsigned-int in
41f0: 74 20 69 6e 74 20 69 6e 74 20 76 6f 69 64 2a 29  t int int void*)
4200: 29 0a 0a 20 20 3b 3b 20 47 4c 69 6e 74 20 67 6c  )..  ;; GLint gl
4210: 75 42 75 69 6c 64 32 44 4d 69 70 6d 61 70 73 20  uBuild2DMipmaps 
4220: 28 47 4c 65 6e 75 6d 20 74 61 72 67 65 74 2c 20  (GLenum target, 
4230: 47 4c 69 6e 74 20 69 6e 74 65 72 6e 61 6c 46 6f  GLint internalFo
4240: 72 6d 61 74 2c 20 47 4c 73 69 7a 65 69 20 77 69  rmat, GLsizei wi
4250: 64 74 68 2c 20 47 4c 73 69 7a 65 69 20 68 65 69  dth, GLsizei hei
4260: 67 68 74 2c 20 47 4c 65 6e 75 6d 20 66 6f 72 6d  ght, GLenum form
4270: 61 74 2c 20 47 4c 65 6e 75 6d 20 74 79 70 65 2c  at, GLenum type,
4280: 20 63 6f 6e 73 74 20 76 6f 69 64 2a 20 64 61 74   const void* dat
4290: 61 29 0a 20 20 28 64 65 66 69 6e 65 2d 66 75 6e  a).  (define-fun
42a0: 63 74 69 6f 6e 20 69 6e 74 20 67 6c 75 42 75 69  ction int gluBui
42b0: 6c 64 32 44 4d 69 70 6d 61 70 73 20 28 75 6e 73  ld2DMipmaps (uns
42c0: 69 67 6e 65 64 2d 69 6e 74 20 69 6e 74 20 69 6e  igned-int int in
42d0: 74 20 69 6e 74 20 75 6e 73 69 67 6e 65 64 2d 69  t int unsigned-i
42e0: 6e 74 20 75 6e 73 69 67 6e 65 64 2d 69 6e 74 20  nt unsigned-int 
42f0: 76 6f 69 64 2a 29 29 0a 0a 20 20 3b 3b 20 47 4c  void*))..  ;; GL
4300: 69 6e 74 20 67 6c 75 42 75 69 6c 64 33 44 4d 69  int gluBuild3DMi
4310: 70 6d 61 70 4c 65 76 65 6c 73 20 28 47 4c 65 6e  pmapLevels (GLen
4320: 75 6d 20 74 61 72 67 65 74 2c 20 47 4c 69 6e 74  um target, GLint
4330: 20 69 6e 74 65 72 6e 61 6c 46 6f 72 6d 61 74 2c   internalFormat,
4340: 20 47 4c 73 69 7a 65 69 20 77 69 64 74 68 2c 20   GLsizei width, 
4350: 47 4c 73 69 7a 65 69 20 68 65 69 67 68 74 2c 20  GLsizei height, 
4360: 47 4c 73 69 7a 65 69 20 64 65 70 74 68 2c 20 47  GLsizei depth, G
4370: 4c 65 6e 75 6d 20 66 6f 72 6d 61 74 2c 20 47 4c  Lenum format, GL
4380: 65 6e 75 6d 20 74 79 70 65 2c 20 47 4c 69 6e 74  enum type, GLint
4390: 20 6c 65 76 65 6c 2c 20 47 4c 69 6e 74 20 62 61   level, GLint ba
43a0: 73 65 2c 20 47 4c 69 6e 74 20 6d 61 78 2c 20 63  se, GLint max, c
43b0: 6f 6e 73 74 20 76 6f 69 64 2a 20 64 61 74 61 29  onst void* data)
43c0: 0a 20 20 28 64 65 66 69 6e 65 2d 66 75 6e 63 74  .  (define-funct
43d0: 69 6f 6e 20 69 6e 74 20 67 6c 75 42 75 69 6c 64  ion int gluBuild
43e0: 33 44 4d 69 70 6d 61 70 4c 65 76 65 6c 73 20 28  3DMipmapLevels (
43f0: 75 6e 73 69 67 6e 65 64 2d 69 6e 74 20 69 6e 74  unsigned-int int
4400: 20 69 6e 74 20 69 6e 74 20 69 6e 74 20 75 6e 73   int int int uns
4410: 69 67 6e 65 64 2d 69 6e 74 20 75 6e 73 69 67 6e  igned-int unsign
4420: 65 64 2d 69 6e 74 20 69 6e 74 20 69 6e 74 20 69  ed-int int int i
4430: 6e 74 20 76 6f 69 64 2a 29 29 0a 0a 20 20 3b 3b  nt void*))..  ;;
4440: 20 47 4c 69 6e 74 20 67 6c 75 42 75 69 6c 64 33   GLint gluBuild3
4450: 44 4d 69 70 6d 61 70 73 20 28 47 4c 65 6e 75 6d  DMipmaps (GLenum
4460: 20 74 61 72 67 65 74 2c 20 47 4c 69 6e 74 20 69   target, GLint i
4470: 6e 74 65 72 6e 61 6c 46 6f 72 6d 61 74 2c 20 47  nternalFormat, G
4480: 4c 73 69 7a 65 69 20 77 69 64 74 68 2c 20 47 4c  Lsizei width, GL
4490: 73 69 7a 65 69 20 68 65 69 67 68 74 2c 20 47 4c  sizei height, GL
44a0: 73 69 7a 65 69 20 64 65 70 74 68 2c 20 47 4c 65  sizei depth, GLe
44b0: 6e 75 6d 20 66 6f 72 6d 61 74 2c 20 47 4c 65 6e  num format, GLen
44c0: 75 6d 20 74 79 70 65 2c 20 63 6f 6e 73 74 20 76  um type, const v
44d0: 6f 69 64 2a 20 64 61 74 61 29 0a 20 20 28 64 65  oid* data).  (de
44e0: 66 69 6e 65 2d 66 75 6e 63 74 69 6f 6e 20 69 6e  fine-function in
44f0: 74 20 67 6c 75 42 75 69 6c 64 33 44 4d 69 70 6d  t gluBuild3DMipm
4500: 61 70 73 20 28 75 6e 73 69 67 6e 65 64 2d 69 6e  aps (unsigned-in
4510: 74 20 69 6e 74 20 69 6e 74 20 69 6e 74 20 69 6e  t int int int in
4520: 74 20 75 6e 73 69 67 6e 65 64 2d 69 6e 74 20 75  t unsigned-int u
4530: 6e 73 69 67 6e 65 64 2d 69 6e 74 20 76 6f 69 64  nsigned-int void
4540: 2a 29 29 0a 0a 20 20 3b 3b 20 47 4c 62 6f 6f 6c  *))..  ;; GLbool
4550: 65 61 6e 20 67 6c 75 43 68 65 63 6b 45 78 74 65  ean gluCheckExte
4560: 6e 73 69 6f 6e 20 28 63 6f 6e 73 74 20 47 4c 75  nsion (const GLu
4570: 62 79 74 65 2a 20 65 78 74 4e 61 6d 65 2c 20 63  byte* extName, c
4580: 6f 6e 73 74 20 47 4c 75 62 79 74 65 2a 20 65 78  onst GLubyte* ex
4590: 74 53 74 72 69 6e 67 29 0a 0a 20 20 28 64 65 66  tString)..  (def
45a0: 69 6e 65 2d 66 75 6e 63 74 69 6f 6e 20 75 6e 73  ine-function uns
45b0: 69 67 6e 65 64 2d 38 20 67 6c 75 43 68 65 63 6b  igned-8 gluCheck
45c0: 45 78 74 65 6e 73 69 6f 6e 20 28 76 6f 69 64 2a  Extension (void*
45d0: 20 76 6f 69 64 2a 29 29 0a 0a 20 20 3b 3b 20 76   void*))..  ;; v
45e0: 6f 69 64 20 67 6c 75 43 79 6c 69 6e 64 65 72 20  oid gluCylinder 
45f0: 28 47 4c 55 71 75 61 64 72 69 63 2a 20 71 75 61  (GLUquadric* qua
4600: 64 2c 20 47 4c 64 6f 75 62 6c 65 20 62 61 73 65  d, GLdouble base
4610: 2c 20 47 4c 64 6f 75 62 6c 65 20 74 6f 70 2c 20  , GLdouble top, 
4620: 47 4c 64 6f 75 62 6c 65 20 68 65 69 67 68 74 2c  GLdouble height,
4630: 20 47 4c 69 6e 74 20 73 6c 69 63 65 73 2c 20 47   GLint slices, G
4640: 4c 69 6e 74 20 73 74 61 63 6b 73 29 0a 20 20 28  Lint stacks).  (
4650: 64 65 66 69 6e 65 2d 66 75 6e 63 74 69 6f 6e 20  define-function 
4660: 76 6f 69 64 20 67 6c 75 43 79 6c 69 6e 64 65 72  void gluCylinder
4670: 20 28 76 6f 69 64 2a 20 64 6f 75 62 6c 65 20 64   (void* double d
4680: 6f 75 62 6c 65 20 64 6f 75 62 6c 65 20 69 6e 74  ouble double int
4690: 20 69 6e 74 29 29 0a 0a 20 20 3b 3b 20 76 6f 69   int))..  ;; voi
46a0: 64 20 67 6c 75 44 65 6c 65 74 65 4e 75 72 62 73  d gluDeleteNurbs
46b0: 52 65 6e 64 65 72 65 72 20 28 47 4c 55 6e 75 72  Renderer (GLUnur
46c0: 62 73 2a 20 6e 75 72 62 29 0a 20 20 28 64 65 66  bs* nurb).  (def
46d0: 69 6e 65 2d 66 75 6e 63 74 69 6f 6e 20 76 6f 69  ine-function voi
46e0: 64 20 67 6c 75 44 65 6c 65 74 65 4e 75 72 62 73  d gluDeleteNurbs
46f0: 52 65 6e 64 65 72 65 72 20 28 76 6f 69 64 2a 29  Renderer (void*)
4700: 29 0a 0a 20 20 3b 3b 20 76 6f 69 64 20 67 6c 75  )..  ;; void glu
4710: 44 65 6c 65 74 65 51 75 61 64 72 69 63 20 28 47  DeleteQuadric (G
4720: 4c 55 71 75 61 64 72 69 63 2a 20 71 75 61 64 29  LUquadric* quad)
4730: 0a 20 20 28 64 65 66 69 6e 65 2d 66 75 6e 63 74  .  (define-funct
4740: 69 6f 6e 20 76 6f 69 64 20 67 6c 75 44 65 6c 65  ion void gluDele
4750: 74 65 51 75 61 64 72 69 63 20 28 76 6f 69 64 2a  teQuadric (void*
4760: 29 29 0a 0a 20 20 3b 3b 20 76 6f 69 64 20 67 6c  ))..  ;; void gl
4770: 75 44 65 6c 65 74 65 54 65 73 73 20 28 47 4c 55  uDeleteTess (GLU
4780: 74 65 73 73 65 6c 61 74 6f 72 2a 20 74 65 73 73  tesselator* tess
4790: 29 0a 20 20 28 64 65 66 69 6e 65 2d 66 75 6e 63  ).  (define-func
47a0: 74 69 6f 6e 20 76 6f 69 64 20 67 6c 75 44 65 6c  tion void gluDel
47b0: 65 74 65 54 65 73 73 20 28 76 6f 69 64 2a 29 29  eteTess (void*))
47c0: 0a 0a 20 20 3b 3b 20 76 6f 69 64 20 67 6c 75 44  ..  ;; void gluD
47d0: 69 73 6b 20 28 47 4c 55 71 75 61 64 72 69 63 2a  isk (GLUquadric*
47e0: 20 71 75 61 64 2c 20 47 4c 64 6f 75 62 6c 65 20   quad, GLdouble 
47f0: 69 6e 6e 65 72 2c 20 47 4c 64 6f 75 62 6c 65 20  inner, GLdouble 
4800: 6f 75 74 65 72 2c 20 47 4c 69 6e 74 20 73 6c 69  outer, GLint sli
4810: 63 65 73 2c 20 47 4c 69 6e 74 20 6c 6f 6f 70 73  ces, GLint loops
4820: 29 0a 20 20 28 64 65 66 69 6e 65 2d 66 75 6e 63  ).  (define-func
4830: 74 69 6f 6e 20 76 6f 69 64 20 67 6c 75 44 69 73  tion void gluDis
4840: 6b 20 28 76 6f 69 64 2a 20 64 6f 75 62 6c 65 20  k (void* double 
4850: 64 6f 75 62 6c 65 20 69 6e 74 20 69 6e 74 29 29  double int int))
4860: 0a 0a 20 20 3b 3b 20 76 6f 69 64 20 67 6c 75 45  ..  ;; void gluE
4870: 6e 64 43 75 72 76 65 20 28 47 4c 55 6e 75 72 62  ndCurve (GLUnurb
4880: 73 2a 20 6e 75 72 62 29 0a 20 20 28 64 65 66 69  s* nurb).  (defi
4890: 6e 65 2d 66 75 6e 63 74 69 6f 6e 20 76 6f 69 64  ne-function void
48a0: 20 67 6c 75 45 6e 64 43 75 72 76 65 20 28 76 6f   gluEndCurve (vo
48b0: 69 64 2a 29 29 0a 0a 20 20 3b 3b 20 76 6f 69 64  id*))..  ;; void
48c0: 20 67 6c 75 45 6e 64 50 6f 6c 79 67 6f 6e 20 28   gluEndPolygon (
48d0: 47 4c 55 74 65 73 73 65 6c 61 74 6f 72 2a 20 74  GLUtesselator* t
48e0: 65 73 73 29 0a 20 20 28 64 65 66 69 6e 65 2d 66  ess).  (define-f
48f0: 75 6e 63 74 69 6f 6e 20 76 6f 69 64 20 67 6c 75  unction void glu
4900: 45 6e 64 50 6f 6c 79 67 6f 6e 20 28 76 6f 69 64  EndPolygon (void
4910: 2a 29 29 0a 0a 20 20 3b 3b 20 76 6f 69 64 20 67  *))..  ;; void g
4920: 6c 75 45 6e 64 53 75 72 66 61 63 65 20 28 47 4c  luEndSurface (GL
4930: 55 6e 75 72 62 73 2a 20 6e 75 72 62 29 0a 20 20  Unurbs* nurb).  
4940: 28 64 65 66 69 6e 65 2d 66 75 6e 63 74 69 6f 6e  (define-function
4950: 20 76 6f 69 64 20 67 6c 75 45 6e 64 53 75 72 66   void gluEndSurf
4960: 61 63 65 20 28 76 6f 69 64 2a 29 29 0a 0a 20 20  ace (void*))..  
4970: 3b 3b 20 76 6f 69 64 20 67 6c 75 45 6e 64 54 72  ;; void gluEndTr
4980: 69 6d 20 28 47 4c 55 6e 75 72 62 73 2a 20 6e 75  im (GLUnurbs* nu
4990: 72 62 29 0a 20 20 28 64 65 66 69 6e 65 2d 66 75  rb).  (define-fu
49a0: 6e 63 74 69 6f 6e 20 76 6f 69 64 20 67 6c 75 45  nction void gluE
49b0: 6e 64 54 72 69 6d 20 28 76 6f 69 64 2a 29 29 0a  ndTrim (void*)).
49c0: 0a 20 20 3b 3b 20 63 6f 6e 73 74 20 47 4c 75 62  .  ;; const GLub
49d0: 79 74 65 2a 20 67 6c 75 45 72 72 6f 72 53 74 72  yte* gluErrorStr
49e0: 69 6e 67 20 28 47 4c 65 6e 75 6d 20 65 72 72 6f  ing (GLenum erro
49f0: 72 29 0a 20 20 28 64 65 66 69 6e 65 2d 66 75 6e  r).  (define-fun
4a00: 63 74 69 6f 6e 20 76 6f 69 64 2a 20 67 6c 75 45  ction void* gluE
4a10: 72 72 6f 72 53 74 72 69 6e 67 20 28 75 6e 73 69  rrorString (unsi
4a20: 67 6e 65 64 2d 69 6e 74 29 29 0a 0a 20 20 3b 3b  gned-int))..  ;;
4a30: 20 76 6f 69 64 20 67 6c 75 47 65 74 4e 75 72 62   void gluGetNurb
4a40: 73 50 72 6f 70 65 72 74 79 20 28 47 4c 55 6e 75  sProperty (GLUnu
4a50: 72 62 73 2a 20 6e 75 72 62 2c 20 47 4c 65 6e 75  rbs* nurb, GLenu
4a60: 6d 20 70 72 6f 70 65 72 74 79 2c 20 47 4c 66 6c  m property, GLfl
4a70: 6f 61 74 2a 20 64 61 74 61 29 0a 20 20 28 64 65  oat* data).  (de
4a80: 66 69 6e 65 2d 66 75 6e 63 74 69 6f 6e 20 76 6f  fine-function vo
4a90: 69 64 20 67 6c 75 47 65 74 4e 75 72 62 73 50 72  id gluGetNurbsPr
4aa0: 6f 70 65 72 74 79 20 28 76 6f 69 64 2a 20 75 6e  operty (void* un
4ab0: 73 69 67 6e 65 64 2d 69 6e 74 20 76 6f 69 64 2a  signed-int void*
4ac0: 29 29 0a 0a 20 20 3b 3b 20 63 6f 6e 73 74 20 47  ))..  ;; const G
4ad0: 4c 75 62 79 74 65 2a 20 67 6c 75 47 65 74 53 74  Lubyte* gluGetSt
4ae0: 72 69 6e 67 20 28 47 4c 65 6e 75 6d 20 6e 61 6d  ring (GLenum nam
4af0: 65 29 0a 20 20 28 64 65 66 69 6e 65 2d 66 75 6e  e).  (define-fun
4b00: 63 74 69 6f 6e 20 76 6f 69 64 2a 20 67 6c 75 47  ction void* gluG
4b10: 65 74 53 74 72 69 6e 67 20 28 75 6e 73 69 67 6e  etString (unsign
4b20: 65 64 2d 69 6e 74 29 29 0a 0a 20 20 3b 3b 20 76  ed-int))..  ;; v
4b30: 6f 69 64 20 67 6c 75 47 65 74 54 65 73 73 50 72  oid gluGetTessPr
4b40: 6f 70 65 72 74 79 20 28 47 4c 55 74 65 73 73 65  operty (GLUtesse
4b50: 6c 61 74 6f 72 2a 20 74 65 73 73 2c 20 47 4c 65  lator* tess, GLe
4b60: 6e 75 6d 20 77 68 69 63 68 2c 20 47 4c 64 6f 75  num which, GLdou
4b70: 62 6c 65 2a 20 64 61 74 61 29 0a 20 20 28 64 65  ble* data).  (de
4b80: 66 69 6e 65 2d 66 75 6e 63 74 69 6f 6e 20 76 6f  fine-function vo
4b90: 69 64 20 67 6c 75 47 65 74 54 65 73 73 50 72 6f  id gluGetTessPro
4ba0: 70 65 72 74 79 20 28 76 6f 69 64 2a 20 75 6e 73  perty (void* uns
4bb0: 69 67 6e 65 64 2d 69 6e 74 20 76 6f 69 64 2a 29  igned-int void*)
4bc0: 29 0a 0a 20 20 3b 3b 20 76 6f 69 64 20 67 6c 75  )..  ;; void glu
4bd0: 4c 6f 61 64 53 61 6d 70 6c 69 6e 67 4d 61 74 72  LoadSamplingMatr
4be0: 69 63 65 73 20 28 47 4c 55 6e 75 72 62 73 2a 20  ices (GLUnurbs* 
4bf0: 6e 75 72 62 2c 20 63 6f 6e 73 74 20 47 4c 66 6c  nurb, const GLfl
4c00: 6f 61 74 2a 20 6d 6f 64 65 6c 2c 20 63 6f 6e 73  oat* model, cons
4c10: 74 20 47 4c 66 6c 6f 61 74 2a 20 70 65 72 73 70  t GLfloat* persp
4c20: 65 63 74 69 76 65 2c 20 63 6f 6e 73 74 20 47 4c  ective, const GL
4c30: 69 6e 74 2a 20 76 69 65 77 29 0a 20 20 28 64 65  int* view).  (de
4c40: 66 69 6e 65 2d 66 75 6e 63 74 69 6f 6e 20 76 6f  fine-function vo
4c50: 69 64 20 67 6c 75 4c 6f 61 64 53 61 6d 70 6c 69  id gluLoadSampli
4c60: 6e 67 4d 61 74 72 69 63 65 73 20 28 76 6f 69 64  ngMatrices (void
4c70: 2a 20 76 6f 69 64 2a 20 76 6f 69 64 2a 20 76 6f  * void* void* vo
4c80: 69 64 2a 29 29 0a 0a 20 20 3b 3b 20 76 6f 69 64  id*))..  ;; void
4c90: 20 67 6c 75 4c 6f 6f 6b 41 74 20 28 47 4c 64 6f   gluLookAt (GLdo
4ca0: 75 62 6c 65 20 65 79 65 58 2c 20 47 4c 64 6f 75  uble eyeX, GLdou
4cb0: 62 6c 65 20 65 79 65 59 2c 20 47 4c 64 6f 75 62  ble eyeY, GLdoub
4cc0: 6c 65 20 65 79 65 5a 2c 20 47 4c 64 6f 75 62 6c  le eyeZ, GLdoubl
4cd0: 65 20 63 65 6e 74 65 72 58 2c 20 47 4c 64 6f 75  e centerX, GLdou
4ce0: 62 6c 65 20 63 65 6e 74 65 72 59 2c 20 47 4c 64  ble centerY, GLd
4cf0: 6f 75 62 6c 65 20 63 65 6e 74 65 72 5a 2c 20 47  ouble centerZ, G
4d00: 4c 64 6f 75 62 6c 65 20 75 70 58 2c 20 47 4c 64  Ldouble upX, GLd
4d10: 6f 75 62 6c 65 20 75 70 59 2c 20 47 4c 64 6f 75  ouble upY, GLdou
4d20: 62 6c 65 20 75 70 5a 29 0a 20 20 28 64 65 66 69  ble upZ).  (defi
4d30: 6e 65 2d 66 75 6e 63 74 69 6f 6e 20 76 6f 69 64  ne-function void
4d40: 20 67 6c 75 4c 6f 6f 6b 41 74 20 28 64 6f 75 62   gluLookAt (doub
4d50: 6c 65 20 64 6f 75 62 6c 65 20 64 6f 75 62 6c 65  le double double
4d60: 20 64 6f 75 62 6c 65 20 64 6f 75 62 6c 65 20 64   double double d
4d70: 6f 75 62 6c 65 20 64 6f 75 62 6c 65 20 64 6f 75  ouble double dou
4d80: 62 6c 65 20 64 6f 75 62 6c 65 29 29 0a 0a 20 20  ble double))..  
4d90: 3b 3b 20 47 4c 55 6e 75 72 62 73 2a 20 67 6c 75  ;; GLUnurbs* glu
4da0: 4e 65 77 4e 75 72 62 73 52 65 6e 64 65 72 65 72  NewNurbsRenderer
4db0: 20 28 76 6f 69 64 29 0a 20 20 28 64 65 66 69 6e   (void).  (defin
4dc0: 65 2d 66 75 6e 63 74 69 6f 6e 20 76 6f 69 64 2a  e-function void*
4dd0: 20 67 6c 75 4e 65 77 4e 75 72 62 73 52 65 6e 64   gluNewNurbsRend
4de0: 65 72 65 72 20 28 29 29 0a 0a 20 20 3b 3b 20 47  erer ())..  ;; G
4df0: 4c 55 71 75 61 64 72 69 63 2a 20 67 6c 75 4e 65  LUquadric* gluNe
4e00: 77 51 75 61 64 72 69 63 20 28 76 6f 69 64 29 0a  wQuadric (void).
4e10: 20 20 28 64 65 66 69 6e 65 2d 66 75 6e 63 74 69    (define-functi
4e20: 6f 6e 20 76 6f 69 64 2a 20 67 6c 75 4e 65 77 51  on void* gluNewQ
4e30: 75 61 64 72 69 63 20 28 29 29 0a 0a 20 20 3b 3b  uadric ())..  ;;
4e40: 20 47 4c 55 74 65 73 73 65 6c 61 74 6f 72 2a 20   GLUtesselator* 
4e50: 67 6c 75 4e 65 77 54 65 73 73 20 28 76 6f 69 64  gluNewTess (void
4e60: 29 0a 20 20 28 64 65 66 69 6e 65 2d 66 75 6e 63  ).  (define-func
4e70: 74 69 6f 6e 20 76 6f 69 64 2a 20 67 6c 75 4e 65  tion void* gluNe
4e80: 77 54 65 73 73 20 28 29 29 0a 0a 20 20 3b 3b 20  wTess ())..  ;; 
4e90: 76 6f 69 64 20 67 6c 75 4e 65 78 74 43 6f 6e 74  void gluNextCont
4ea0: 6f 75 72 20 28 47 4c 55 74 65 73 73 65 6c 61 74  our (GLUtesselat
4eb0: 6f 72 2a 20 74 65 73 73 2c 20 47 4c 65 6e 75 6d  or* tess, GLenum
4ec0: 20 74 79 70 65 29 0a 20 20 28 64 65 66 69 6e 65   type).  (define
4ed0: 2d 66 75 6e 63 74 69 6f 6e 20 76 6f 69 64 20 67  -function void g
4ee0: 6c 75 4e 65 78 74 43 6f 6e 74 6f 75 72 20 28 76  luNextContour (v
4ef0: 6f 69 64 2a 20 75 6e 73 69 67 6e 65 64 2d 69 6e  oid* unsigned-in
4f00: 74 29 29 0a 0a 20 20 3b 3b 20 76 6f 69 64 20 67  t))..  ;; void g
4f10: 6c 75 4e 75 72 62 73 43 61 6c 6c 62 61 63 6b 44  luNurbsCallbackD
4f20: 61 74 61 20 28 47 4c 55 6e 75 72 62 73 2a 20 6e  ata (GLUnurbs* n
4f30: 75 72 62 2c 20 47 4c 76 6f 69 64 2a 20 75 73 65  urb, GLvoid* use
4f40: 72 44 61 74 61 29 0a 20 20 28 64 65 66 69 6e 65  rData).  (define
4f50: 2d 66 75 6e 63 74 69 6f 6e 20 76 6f 69 64 20 67  -function void g
4f60: 6c 75 4e 75 72 62 73 43 61 6c 6c 62 61 63 6b 44  luNurbsCallbackD
4f70: 61 74 61 20 28 76 6f 69 64 2a 20 76 6f 69 64 2a  ata (void* void*
4f80: 29 29 0a 0a 20 20 3b 3b 20 76 6f 69 64 20 67 6c  ))..  ;; void gl
4f90: 75 4e 75 72 62 73 43 61 6c 6c 62 61 63 6b 44 61  uNurbsCallbackDa
4fa0: 74 61 45 58 54 20 28 47 4c 55 6e 75 72 62 73 2a  taEXT (GLUnurbs*
4fb0: 20 6e 75 72 62 2c 20 47 4c 76 6f 69 64 2a 20 75   nurb, GLvoid* u
4fc0: 73 65 72 44 61 74 61 29 0a 20 20 28 64 65 66 69  serData).  (defi
4fd0: 6e 65 2d 66 75 6e 63 74 69 6f 6e 20 76 6f 69 64  ne-function void
4fe0: 20 67 6c 75 4e 75 72 62 73 43 61 6c 6c 62 61 63   gluNurbsCallbac
4ff0: 6b 44 61 74 61 45 58 54 20 28 76 6f 69 64 2a 20  kDataEXT (void* 
5000: 76 6f 69 64 2a 29 29 0a 0a 20 20 3b 3b 20 76 6f  void*))..  ;; vo
5010: 69 64 20 67 6c 75 4e 75 72 62 73 43 75 72 76 65  id gluNurbsCurve
5020: 20 28 47 4c 55 6e 75 72 62 73 2a 20 6e 75 72 62   (GLUnurbs* nurb
5030: 2c 20 47 4c 69 6e 74 20 6b 6e 6f 74 43 6f 75 6e  , GLint knotCoun
5040: 74 2c 20 47 4c 66 6c 6f 61 74 2a 20 6b 6e 6f 74  t, GLfloat* knot
5050: 73 2c 20 47 4c 69 6e 74 20 73 74 72 69 64 65 2c  s, GLint stride,
5060: 20 47 4c 66 6c 6f 61 74 2a 20 63 6f 6e 74 72 6f   GLfloat* contro
5070: 6c 2c 20 47 4c 69 6e 74 20 6f 72 64 65 72 2c 20  l, GLint order, 
5080: 47 4c 65 6e 75 6d 20 74 79 70 65 29 0a 20 20 28  GLenum type).  (
5090: 64 65 66 69 6e 65 2d 66 75 6e 63 74 69 6f 6e 20  define-function 
50a0: 76 6f 69 64 20 67 6c 75 4e 75 72 62 73 43 75 72  void gluNurbsCur
50b0: 76 65 20 28 76 6f 69 64 2a 20 69 6e 74 20 76 6f  ve (void* int vo
50c0: 69 64 2a 20 69 6e 74 20 76 6f 69 64 2a 20 69 6e  id* int void* in
50d0: 74 20 75 6e 73 69 67 6e 65 64 2d 69 6e 74 29 29  t unsigned-int))
50e0: 0a 0a 20 20 3b 3b 20 76 6f 69 64 20 67 6c 75 4e  ..  ;; void gluN
50f0: 75 72 62 73 50 72 6f 70 65 72 74 79 20 28 47 4c  urbsProperty (GL
5100: 55 6e 75 72 62 73 2a 20 6e 75 72 62 2c 20 47 4c  Unurbs* nurb, GL
5110: 65 6e 75 6d 20 70 72 6f 70 65 72 74 79 2c 20 47  enum property, G
5120: 4c 66 6c 6f 61 74 20 76 61 6c 75 65 29 0a 20 20  Lfloat value).  
5130: 28 64 65 66 69 6e 65 2d 66 75 6e 63 74 69 6f 6e  (define-function
5140: 20 76 6f 69 64 20 67 6c 75 4e 75 72 62 73 50 72   void gluNurbsPr
5150: 6f 70 65 72 74 79 20 28 76 6f 69 64 2a 20 75 6e  operty (void* un
5160: 73 69 67 6e 65 64 2d 69 6e 74 20 66 6c 6f 61 74  signed-int float
5170: 29 29 0a 0a 20 20 3b 3b 20 76 6f 69 64 20 67 6c  ))..  ;; void gl
5180: 75 4e 75 72 62 73 53 75 72 66 61 63 65 20 28 47  uNurbsSurface (G
5190: 4c 55 6e 75 72 62 73 2a 20 6e 75 72 62 2c 20 47  LUnurbs* nurb, G
51a0: 4c 69 6e 74 20 73 4b 6e 6f 74 43 6f 75 6e 74 2c  Lint sKnotCount,
51b0: 20 47 4c 66 6c 6f 61 74 2a 20 73 4b 6e 6f 74 73   GLfloat* sKnots
51c0: 2c 20 47 4c 69 6e 74 20 74 4b 6e 6f 74 43 6f 75  , GLint tKnotCou
51d0: 6e 74 2c 20 47 4c 66 6c 6f 61 74 2a 20 74 4b 6e  nt, GLfloat* tKn
51e0: 6f 74 73 2c 20 47 4c 69 6e 74 20 73 53 74 72 69  ots, GLint sStri
51f0: 64 65 2c 20 47 4c 69 6e 74 20 74 53 74 72 69 64  de, GLint tStrid
5200: 65 2c 20 47 4c 66 6c 6f 61 74 2a 20 63 6f 6e 74  e, GLfloat* cont
5210: 72 6f 6c 2c 20 47 4c 69 6e 74 20 73 4f 72 64 65  rol, GLint sOrde
5220: 72 2c 20 47 4c 69 6e 74 20 74 4f 72 64 65 72 2c  r, GLint tOrder,
5230: 20 47 4c 65 6e 75 6d 20 74 79 70 65 29 0a 20 20   GLenum type).  
5240: 28 64 65 66 69 6e 65 2d 66 75 6e 63 74 69 6f 6e  (define-function
5250: 20 76 6f 69 64 20 67 6c 75 4e 75 72 62 73 53 75   void gluNurbsSu
5260: 72 66 61 63 65 20 28 76 6f 69 64 2a 20 69 6e 74  rface (void* int
5270: 20 76 6f 69 64 2a 20 69 6e 74 20 76 6f 69 64 2a   void* int void*
5280: 20 69 6e 74 20 69 6e 74 20 76 6f 69 64 2a 20 69   int int void* i
5290: 6e 74 20 69 6e 74 20 75 6e 73 69 67 6e 65 64 2d  nt int unsigned-
52a0: 69 6e 74 29 29 0a 0a 20 20 3b 3b 20 76 6f 69 64  int))..  ;; void
52b0: 20 67 6c 75 4f 72 74 68 6f 32 44 20 28 47 4c 64   gluOrtho2D (GLd
52c0: 6f 75 62 6c 65 20 6c 65 66 74 2c 20 47 4c 64 6f  ouble left, GLdo
52d0: 75 62 6c 65 20 72 69 67 68 74 2c 20 47 4c 64 6f  uble right, GLdo
52e0: 75 62 6c 65 20 62 6f 74 74 6f 6d 2c 20 47 4c 64  uble bottom, GLd
52f0: 6f 75 62 6c 65 20 74 6f 70 29 0a 20 20 28 64 65  ouble top).  (de
5300: 66 69 6e 65 2d 66 75 6e 63 74 69 6f 6e 20 76 6f  fine-function vo
5310: 69 64 20 67 6c 75 4f 72 74 68 6f 32 44 20 28 64  id gluOrtho2D (d
5320: 6f 75 62 6c 65 20 64 6f 75 62 6c 65 20 64 6f 75  ouble double dou
5330: 62 6c 65 20 64 6f 75 62 6c 65 29 29 0a 0a 20 20  ble double))..  
5340: 3b 3b 20 76 6f 69 64 20 67 6c 75 50 61 72 74 69  ;; void gluParti
5350: 61 6c 44 69 73 6b 20 28 47 4c 55 71 75 61 64 72  alDisk (GLUquadr
5360: 69 63 2a 20 71 75 61 64 2c 20 47 4c 64 6f 75 62  ic* quad, GLdoub
5370: 6c 65 20 69 6e 6e 65 72 2c 20 47 4c 64 6f 75 62  le inner, GLdoub
5380: 6c 65 20 6f 75 74 65 72 2c 20 47 4c 69 6e 74 20  le outer, GLint 
5390: 73 6c 69 63 65 73 2c 20 47 4c 69 6e 74 20 6c 6f  slices, GLint lo
53a0: 6f 70 73 2c 20 47 4c 64 6f 75 62 6c 65 20 73 74  ops, GLdouble st
53b0: 61 72 74 2c 20 47 4c 64 6f 75 62 6c 65 20 73 77  art, GLdouble sw
53c0: 65 65 70 29 0a 20 20 28 64 65 66 69 6e 65 2d 66  eep).  (define-f
53d0: 75 6e 63 74 69 6f 6e 20 76 6f 69 64 20 67 6c 75  unction void glu
53e0: 50 61 72 74 69 61 6c 44 69 73 6b 20 28 76 6f 69  PartialDisk (voi
53f0: 64 2a 20 64 6f 75 62 6c 65 20 64 6f 75 62 6c 65  d* double double
5400: 20 69 6e 74 20 69 6e 74 20 64 6f 75 62 6c 65 20   int int double 
5410: 64 6f 75 62 6c 65 29 29 0a 0a 20 20 3b 3b 20 76  double))..  ;; v
5420: 6f 69 64 20 67 6c 75 50 65 72 73 70 65 63 74 69  oid gluPerspecti
5430: 76 65 20 28 47 4c 64 6f 75 62 6c 65 20 66 6f 76  ve (GLdouble fov
5440: 79 2c 20 47 4c 64 6f 75 62 6c 65 20 61 73 70 65  y, GLdouble aspe
5450: 63 74 2c 20 47 4c 64 6f 75 62 6c 65 20 7a 4e 65  ct, GLdouble zNe
5460: 61 72 2c 20 47 4c 64 6f 75 62 6c 65 20 7a 46 61  ar, GLdouble zFa
5470: 72 29 0a 20 20 28 64 65 66 69 6e 65 2d 66 75 6e  r).  (define-fun
5480: 63 74 69 6f 6e 20 76 6f 69 64 20 67 6c 75 50 65  ction void gluPe
5490: 72 73 70 65 63 74 69 76 65 20 28 64 6f 75 62 6c  rspective (doubl
54a0: 65 20 64 6f 75 62 6c 65 20 64 6f 75 62 6c 65 20  e double double 
54b0: 64 6f 75 62 6c 65 29 29 0a 0a 20 20 3b 3b 20 76  double))..  ;; v
54c0: 6f 69 64 20 67 6c 75 50 69 63 6b 4d 61 74 72 69  oid gluPickMatri
54d0: 78 20 28 47 4c 64 6f 75 62 6c 65 20 78 2c 20 47  x (GLdouble x, G
54e0: 4c 64 6f 75 62 6c 65 20 79 2c 20 47 4c 64 6f 75  Ldouble y, GLdou
54f0: 62 6c 65 20 64 65 6c 58 2c 20 47 4c 64 6f 75 62  ble delX, GLdoub
5500: 6c 65 20 64 65 6c 59 2c 20 47 4c 69 6e 74 20 2a  le delY, GLint *
5510: 76 69 65 77 70 6f 72 74 29 0a 20 20 28 64 65 66  viewport).  (def
5520: 69 6e 65 2d 66 75 6e 63 74 69 6f 6e 20 76 6f 69  ine-function voi
5530: 64 20 67 6c 75 50 69 63 6b 4d 61 74 72 69 78 20  d gluPickMatrix 
5540: 28 64 6f 75 62 6c 65 20 64 6f 75 62 6c 65 20 64  (double double d
5550: 6f 75 62 6c 65 20 64 6f 75 62 6c 65 20 69 6e 74  ouble double int
5560: 29 29 0a 0a 20 20 3b 3b 20 47 4c 69 6e 74 20 67  ))..  ;; GLint g
5570: 6c 75 50 72 6f 6a 65 63 74 20 28 47 4c 64 6f 75  luProject (GLdou
5580: 62 6c 65 20 6f 62 6a 58 2c 20 47 4c 64 6f 75 62  ble objX, GLdoub
5590: 6c 65 20 6f 62 6a 59 2c 20 47 4c 64 6f 75 62 6c  le objY, GLdoubl
55a0: 65 20 6f 62 6a 5a 2c 20 63 6f 6e 73 74 20 47 4c  e objZ, const GL
55b0: 64 6f 75 62 6c 65 2a 20 6d 6f 64 65 6c 2c 20 63  double* model, c
55c0: 6f 6e 73 74 20 47 4c 64 6f 75 62 6c 65 2a 20 70  onst GLdouble* p
55d0: 72 6f 6a 2c 20 63 6f 6e 73 74 20 47 4c 69 6e 74  roj, const GLint
55e0: 20 2a 76 69 65 77 2c 20 47 4c 64 6f 75 62 6c 65   *view, GLdouble
55f0: 2a 20 77 69 6e 58 2c 20 47 4c 64 6f 75 62 6c 65  * winX, GLdouble
5600: 2a 20 77 69 6e 59 2c 20 47 4c 64 6f 75 62 6c 65  * winY, GLdouble
5610: 2a 20 77 69 6e 5a 29 0a 20 20 28 64 65 66 69 6e  * winZ).  (defin
5620: 65 2d 66 75 6e 63 74 69 6f 6e 20 69 6e 74 20 67  e-function int g
5630: 6c 75 50 72 6f 6a 65 63 74 20 28 64 6f 75 62 6c  luProject (doubl
5640: 65 20 64 6f 75 62 6c 65 20 64 6f 75 62 6c 65 20  e double double 
5650: 76 6f 69 64 2a 20 76 6f 69 64 2a 20 69 6e 74 20  void* void* int 
5660: 76 6f 69 64 2a 20 76 6f 69 64 2a 20 76 6f 69 64  void* void* void
5670: 2a 29 29 0a 0a 20 20 3b 3b 20 76 6f 69 64 20 67  *))..  ;; void g
5680: 6c 75 50 77 6c 43 75 72 76 65 20 28 47 4c 55 6e  luPwlCurve (GLUn
5690: 75 72 62 73 2a 20 6e 75 72 62 2c 20 47 4c 69 6e  urbs* nurb, GLin
56a0: 74 20 63 6f 75 6e 74 2c 20 47 4c 66 6c 6f 61 74  t count, GLfloat
56b0: 2a 20 64 61 74 61 2c 20 47 4c 69 6e 74 20 73 74  * data, GLint st
56c0: 72 69 64 65 2c 20 47 4c 65 6e 75 6d 20 74 79 70  ride, GLenum typ
56d0: 65 29 0a 20 20 28 64 65 66 69 6e 65 2d 66 75 6e  e).  (define-fun
56e0: 63 74 69 6f 6e 20 76 6f 69 64 20 67 6c 75 50 77  ction void gluPw
56f0: 6c 43 75 72 76 65 20 28 76 6f 69 64 2a 20 69 6e  lCurve (void* in
5700: 74 20 76 6f 69 64 2a 20 69 6e 74 20 75 6e 73 69  t void* int unsi
5710: 67 6e 65 64 2d 69 6e 74 29 29 0a 0a 20 20 3b 3b  gned-int))..  ;;
5720: 20 76 6f 69 64 20 67 6c 75 51 75 61 64 72 69 63   void gluQuadric
5730: 44 72 61 77 53 74 79 6c 65 20 28 47 4c 55 71 75  DrawStyle (GLUqu
5740: 61 64 72 69 63 2a 20 71 75 61 64 2c 20 47 4c 65  adric* quad, GLe
5750: 6e 75 6d 20 64 72 61 77 29 0a 20 20 28 64 65 66  num draw).  (def
5760: 69 6e 65 2d 66 75 6e 63 74 69 6f 6e 20 76 6f 69  ine-function voi
5770: 64 20 67 6c 75 51 75 61 64 72 69 63 44 72 61 77  d gluQuadricDraw
5780: 53 74 79 6c 65 20 28 76 6f 69 64 2a 20 75 6e 73  Style (void* uns
5790: 69 67 6e 65 64 2d 69 6e 74 29 29 0a 0a 20 20 3b  igned-int))..  ;
57a0: 3b 20 76 6f 69 64 20 67 6c 75 51 75 61 64 72 69  ; void gluQuadri
57b0: 63 4e 6f 72 6d 61 6c 73 20 28 47 4c 55 71 75 61  cNormals (GLUqua
57c0: 64 72 69 63 2a 20 71 75 61 64 2c 20 47 4c 65 6e  dric* quad, GLen
57d0: 75 6d 20 6e 6f 72 6d 61 6c 29 0a 20 20 28 64 65  um normal).  (de
57e0: 66 69 6e 65 2d 66 75 6e 63 74 69 6f 6e 20 76 6f  fine-function vo
57f0: 69 64 20 67 6c 75 51 75 61 64 72 69 63 4e 6f 72  id gluQuadricNor
5800: 6d 61 6c 73 20 28 76 6f 69 64 2a 20 75 6e 73 69  mals (void* unsi
5810: 67 6e 65 64 2d 69 6e 74 29 29 0a 0a 20 20 3b 3b  gned-int))..  ;;
5820: 20 76 6f 69 64 20 67 6c 75 51 75 61 64 72 69 63   void gluQuadric
5830: 4f 72 69 65 6e 74 61 74 69 6f 6e 20 28 47 4c 55  Orientation (GLU
5840: 71 75 61 64 72 69 63 2a 20 71 75 61 64 2c 20 47  quadric* quad, G
5850: 4c 65 6e 75 6d 20 6f 72 69 65 6e 74 61 74 69 6f  Lenum orientatio
5860: 6e 29 0a 20 20 28 64 65 66 69 6e 65 2d 66 75 6e  n).  (define-fun
5870: 63 74 69 6f 6e 20 76 6f 69 64 20 67 6c 75 51 75  ction void gluQu
5880: 61 64 72 69 63 4f 72 69 65 6e 74 61 74 69 6f 6e  adricOrientation
5890: 20 28 76 6f 69 64 2a 20 75 6e 73 69 67 6e 65 64   (void* unsigned
58a0: 2d 69 6e 74 29 29 0a 0a 20 20 3b 3b 20 76 6f 69  -int))..  ;; voi
58b0: 64 20 67 6c 75 51 75 61 64 72 69 63 54 65 78 74  d gluQuadricText
58c0: 75 72 65 20 28 47 4c 55 71 75 61 64 72 69 63 2a  ure (GLUquadric*
58d0: 20 71 75 61 64 2c 20 47 4c 62 6f 6f 6c 65 61 6e   quad, GLboolean
58e0: 20 74 65 78 74 75 72 65 29 0a 20 20 28 64 65 66   texture).  (def
58f0: 69 6e 65 2d 66 75 6e 63 74 69 6f 6e 20 76 6f 69  ine-function voi
5900: 64 20 67 6c 75 51 75 61 64 72 69 63 54 65 78 74  d gluQuadricText
5910: 75 72 65 20 28 76 6f 69 64 2a 20 75 6e 73 69 67  ure (void* unsig
5920: 6e 65 64 2d 38 29 29 0a 0a 20 20 3b 3b 20 47 4c  ned-8))..  ;; GL
5930: 69 6e 74 20 67 6c 75 53 63 61 6c 65 49 6d 61 67  int gluScaleImag
5940: 65 20 28 47 4c 65 6e 75 6d 20 66 6f 72 6d 61 74  e (GLenum format
5950: 2c 20 47 4c 73 69 7a 65 69 20 77 49 6e 2c 20 47  , GLsizei wIn, G
5960: 4c 73 69 7a 65 69 20 68 49 6e 2c 20 47 4c 65 6e  Lsizei hIn, GLen
5970: 75 6d 20 74 79 70 65 49 6e 2c 20 63 6f 6e 73 74  um typeIn, const
5980: 20 76 6f 69 64 2a 20 64 61 74 61 49 6e 2c 20 47   void* dataIn, G
5990: 4c 73 69 7a 65 69 20 77 4f 75 74 2c 20 47 4c 73  Lsizei wOut, GLs
59a0: 69 7a 65 69 20 68 4f 75 74 2c 20 47 4c 65 6e 75  izei hOut, GLenu
59b0: 6d 20 74 79 70 65 4f 75 74 2c 20 47 4c 76 6f 69  m typeOut, GLvoi
59c0: 64 2a 20 64 61 74 61 4f 75 74 29 0a 20 20 28 64  d* dataOut).  (d
59d0: 65 66 69 6e 65 2d 66 75 6e 63 74 69 6f 6e 20 69  efine-function i
59e0: 6e 74 20 67 6c 75 53 63 61 6c 65 49 6d 61 67 65  nt gluScaleImage
59f0: 20 28 75 6e 73 69 67 6e 65 64 2d 69 6e 74 20 69   (unsigned-int i
5a00: 6e 74 20 69 6e 74 20 75 6e 73 69 67 6e 65 64 2d  nt int unsigned-
5a10: 69 6e 74 20 76 6f 69 64 2a 20 69 6e 74 20 69 6e  int void* int in
5a20: 74 20 75 6e 73 69 67 6e 65 64 2d 69 6e 74 20 76  t unsigned-int v
5a30: 6f 69 64 2a 29 29 0a 0a 20 20 3b 3b 20 76 6f 69  oid*))..  ;; voi
5a40: 64 20 67 6c 75 53 70 68 65 72 65 20 28 47 4c 55  d gluSphere (GLU
5a50: 71 75 61 64 72 69 63 2a 20 71 75 61 64 2c 20 47  quadric* quad, G
5a60: 4c 64 6f 75 62 6c 65 20 72 61 64 69 75 73 2c 20  Ldouble radius, 
5a70: 47 4c 69 6e 74 20 73 6c 69 63 65 73 2c 20 47 4c  GLint slices, GL
5a80: 69 6e 74 20 73 74 61 63 6b 73 29 0a 20 20 28 64  int stacks).  (d
5a90: 65 66 69 6e 65 2d 66 75 6e 63 74 69 6f 6e 20 76  efine-function v
5aa0: 6f 69 64 20 67 6c 75 53 70 68 65 72 65 20 28 76  oid gluSphere (v
5ab0: 6f 69 64 2a 20 64 6f 75 62 6c 65 20 69 6e 74 20  oid* double int 
5ac0: 69 6e 74 29 29 0a 0a 20 20 3b 3b 20 76 6f 69 64  int))..  ;; void
5ad0: 20 67 6c 75 54 65 73 73 42 65 67 69 6e 43 6f 6e   gluTessBeginCon
5ae0: 74 6f 75 72 20 28 47 4c 55 74 65 73 73 65 6c 61  tour (GLUtessela
5af0: 74 6f 72 2a 20 74 65 73 73 29 0a 20 20 28 64 65  tor* tess).  (de
5b00: 66 69 6e 65 2d 66 75 6e 63 74 69 6f 6e 20 76 6f  fine-function vo
5b10: 69 64 20 67 6c 75 54 65 73 73 42 65 67 69 6e 43  id gluTessBeginC
5b20: 6f 6e 74 6f 75 72 20 28 76 6f 69 64 2a 29 29 0a  ontour (void*)).
5b30: 0a 20 20 3b 3b 20 76 6f 69 64 20 67 6c 75 54 65  .  ;; void gluTe
5b40: 73 73 42 65 67 69 6e 50 6f 6c 79 67 6f 6e 20 28  ssBeginPolygon (
5b50: 47 4c 55 74 65 73 73 65 6c 61 74 6f 72 2a 20 74  GLUtesselator* t
5b60: 65 73 73 2c 20 47 4c 76 6f 69 64 2a 20 64 61 74  ess, GLvoid* dat
5b70: 61 29 0a 20 20 28 64 65 66 69 6e 65 2d 66 75 6e  a).  (define-fun
5b80: 63 74 69 6f 6e 20 76 6f 69 64 20 67 6c 75 54 65  ction void gluTe
5b90: 73 73 42 65 67 69 6e 50 6f 6c 79 67 6f 6e 20 28  ssBeginPolygon (
5ba0: 76 6f 69 64 2a 20 76 6f 69 64 2a 29 29 0a 0a 20  void* void*)).. 
5bb0: 20 3b 3b 20 76 6f 69 64 20 67 6c 75 54 65 73 73   ;; void gluTess
5bc0: 45 6e 64 43 6f 6e 74 6f 75 72 20 28 47 4c 55 74  EndContour (GLUt
5bd0: 65 73 73 65 6c 61 74 6f 72 2a 20 74 65 73 73 29  esselator* tess)
5be0: 0a 20 20 28 64 65 66 69 6e 65 2d 66 75 6e 63 74  .  (define-funct
5bf0: 69 6f 6e 20 76 6f 69 64 20 67 6c 75 54 65 73 73  ion void gluTess
5c00: 45 6e 64 43 6f 6e 74 6f 75 72 20 28 76 6f 69 64  EndContour (void
5c10: 2a 29 29 0a 0a 20 20 3b 3b 20 76 6f 69 64 20 67  *))..  ;; void g
5c20: 6c 75 54 65 73 73 45 6e 64 50 6f 6c 79 67 6f 6e  luTessEndPolygon
5c30: 20 28 47 4c 55 74 65 73 73 65 6c 61 74 6f 72 2a   (GLUtesselator*
5c40: 20 74 65 73 73 29 0a 20 20 28 64 65 66 69 6e 65   tess).  (define
5c50: 2d 66 75 6e 63 74 69 6f 6e 20 76 6f 69 64 20 67  -function void g
5c60: 6c 75 54 65 73 73 45 6e 64 50 6f 6c 79 67 6f 6e  luTessEndPolygon
5c70: 20 28 76 6f 69 64 2a 29 29 0a 0a 20 20 3b 3b 20   (void*))..  ;; 
5c80: 76 6f 69 64 20 67 6c 75 54 65 73 73 4e 6f 72 6d  void gluTessNorm
5c90: 61 6c 20 28 47 4c 55 74 65 73 73 65 6c 61 74 6f  al (GLUtesselato
5ca0: 72 2a 20 74 65 73 73 2c 20 47 4c 64 6f 75 62 6c  r* tess, GLdoubl
5cb0: 65 20 76 61 6c 75 65 58 2c 20 47 4c 64 6f 75 62  e valueX, GLdoub
5cc0: 6c 65 20 76 61 6c 75 65 59 2c 20 47 4c 64 6f 75  le valueY, GLdou
5cd0: 62 6c 65 20 76 61 6c 75 65 5a 29 0a 20 20 28 64  ble valueZ).  (d
5ce0: 65 66 69 6e 65 2d 66 75 6e 63 74 69 6f 6e 20 76  efine-function v
5cf0: 6f 69 64 20 67 6c 75 54 65 73 73 4e 6f 72 6d 61  oid gluTessNorma
5d00: 6c 20 28 76 6f 69 64 2a 20 64 6f 75 62 6c 65 20  l (void* double 
5d10: 64 6f 75 62 6c 65 20 64 6f 75 62 6c 65 29 29 0a  double double)).
5d20: 0a 20 20 3b 3b 20 76 6f 69 64 20 67 6c 75 54 65  .  ;; void gluTe
5d30: 73 73 50 72 6f 70 65 72 74 79 20 28 47 4c 55 74  ssProperty (GLUt
5d40: 65 73 73 65 6c 61 74 6f 72 2a 20 74 65 73 73 2c  esselator* tess,
5d50: 20 47 4c 65 6e 75 6d 20 77 68 69 63 68 2c 20 47   GLenum which, G
5d60: 4c 64 6f 75 62 6c 65 20 64 61 74 61 29 0a 20 20  Ldouble data).  
5d70: 28 64 65 66 69 6e 65 2d 66 75 6e 63 74 69 6f 6e  (define-function
5d80: 20 76 6f 69 64 20 67 6c 75 54 65 73 73 50 72 6f   void gluTessPro
5d90: 70 65 72 74 79 20 28 76 6f 69 64 2a 20 75 6e 73  perty (void* uns
5da0: 69 67 6e 65 64 2d 69 6e 74 20 64 6f 75 62 6c 65  igned-int double
5db0: 29 29 0a 0a 20 20 3b 3b 20 76 6f 69 64 20 67 6c  ))..  ;; void gl
5dc0: 75 54 65 73 73 56 65 72 74 65 78 20 28 47 4c 55  uTessVertex (GLU
5dd0: 74 65 73 73 65 6c 61 74 6f 72 2a 20 74 65 73 73  tesselator* tess
5de0: 2c 20 47 4c 64 6f 75 62 6c 65 2a 20 6c 6f 63 61  , GLdouble* loca
5df0: 74 69 6f 6e 2c 20 47 4c 76 6f 69 64 2a 20 64 61  tion, GLvoid* da
5e00: 74 61 29 0a 20 20 28 64 65 66 69 6e 65 2d 66 75  ta).  (define-fu
5e10: 6e 63 74 69 6f 6e 20 76 6f 69 64 20 67 6c 75 54  nction void gluT
5e20: 65 73 73 56 65 72 74 65 78 20 28 76 6f 69 64 2a  essVertex (void*
5e30: 20 76 6f 69 64 2a 20 76 6f 69 64 2a 29 29 0a 0a   void* void*))..
5e40: 20 20 3b 3b 20 47 4c 69 6e 74 20 67 6c 75 55 6e    ;; GLint gluUn
5e50: 50 72 6f 6a 65 63 74 20 28 47 4c 64 6f 75 62 6c  Project (GLdoubl
5e60: 65 20 77 69 6e 58 2c 20 47 4c 64 6f 75 62 6c 65  e winX, GLdouble
5e70: 20 77 69 6e 59 2c 20 47 4c 64 6f 75 62 6c 65 20   winY, GLdouble 
5e80: 77 69 6e 5a 2c 20 63 6f 6e 73 74 20 47 4c 64 6f  winZ, const GLdo
5e90: 75 62 6c 65 2a 20 6d 6f 64 65 6c 2c 20 63 6f 6e  uble* model, con
5ea0: 73 74 20 47 4c 64 6f 75 62 6c 65 2a 20 70 72 6f  st GLdouble* pro
5eb0: 6a 2c 20 63 6f 6e 73 74 20 47 4c 69 6e 74 20 2a  j, const GLint *
5ec0: 76 69 65 77 2c 20 47 4c 64 6f 75 62 6c 65 2a 20  view, GLdouble* 
5ed0: 6f 62 6a 58 2c 20 47 4c 64 6f 75 62 6c 65 2a 20  objX, GLdouble* 
5ee0: 6f 62 6a 59 2c 20 47 4c 64 6f 75 62 6c 65 2a 20  objY, GLdouble* 
5ef0: 6f 62 6a 5a 29 0a 20 20 28 64 65 66 69 6e 65 2d  objZ).  (define-
5f00: 66 75 6e 63 74 69 6f 6e 20 69 6e 74 20 67 6c 75  function int glu
5f10: 55 6e 50 72 6f 6a 65 63 74 20 28 64 6f 75 62 6c  UnProject (doubl
5f20: 65 20 64 6f 75 62 6c 65 20 64 6f 75 62 6c 65 20  e double double 
5f30: 76 6f 69 64 2a 20 76 6f 69 64 2a 20 69 6e 74 20  void* void* int 
5f40: 76 6f 69 64 2a 20 76 6f 69 64 2a 20 76 6f 69 64  void* void* void
5f50: 2a 29 29 0a 0a 20 20 3b 3b 20 47 4c 69 6e 74 20  *))..  ;; GLint 
5f60: 67 6c 75 55 6e 50 72 6f 6a 65 63 74 34 20 28 47  gluUnProject4 (G
5f70: 4c 64 6f 75 62 6c 65 20 77 69 6e 58 2c 20 47 4c  Ldouble winX, GL
5f80: 64 6f 75 62 6c 65 20 77 69 6e 59 2c 20 47 4c 64  double winY, GLd
5f90: 6f 75 62 6c 65 20 77 69 6e 5a 2c 20 47 4c 64 6f  ouble winZ, GLdo
5fa0: 75 62 6c 65 20 63 6c 69 70 57 2c 20 63 6f 6e 73  uble clipW, cons
5fb0: 74 20 47 4c 64 6f 75 62 6c 65 2a 20 6d 6f 64 65  t GLdouble* mode
5fc0: 6c 2c 20 63 6f 6e 73 74 20 47 4c 64 6f 75 62 6c  l, const GLdoubl
5fd0: 65 2a 20 70 72 6f 6a 2c 20 63 6f 6e 73 74 20 47  e* proj, const G
5fe0: 4c 69 6e 74 20 2a 76 69 65 77 2c 20 47 4c 64 6f  Lint *view, GLdo
5ff0: 75 62 6c 65 20 6e 65 61 72 56 61 6c 2c 20 47 4c  uble nearVal, GL
6000: 64 6f 75 62 6c 65 20 66 61 72 56 61 6c 2c 20 47  double farVal, G
6010: 4c 64 6f 75 62 6c 65 2a 20 6f 62 6a 58 2c 20 47  Ldouble* objX, G
6020: 4c 64 6f 75 62 6c 65 2a 20 6f 62 6a 59 2c 20 47  Ldouble* objY, G
6030: 4c 64 6f 75 62 6c 65 2a 20 6f 62 6a 5a 2c 20 47  Ldouble* objZ, G
6040: 4c 64 6f 75 62 6c 65 2a 20 6f 62 6a 57 29 0a 20  Ldouble* objW). 
6050: 20 28 64 65 66 69 6e 65 2d 66 75 6e 63 74 69 6f   (define-functio
6060: 6e 20 69 6e 74 20 67 6c 75 55 6e 50 72 6f 6a 65  n int gluUnProje
6070: 63 74 34 20 28 64 6f 75 62 6c 65 20 64 6f 75 62  ct4 (double doub
6080: 6c 65 20 64 6f 75 62 6c 65 20 64 6f 75 62 6c 65  le double double
6090: 20 76 6f 69 64 2a 20 76 6f 69 64 2a 20 69 6e 74   void* void* int
60a0: 20 64 6f 75 62 6c 65 20 64 6f 75 62 6c 65 20 76   double double v
60b0: 6f 69 64 2a 20 76 6f 69 64 2a 20 76 6f 69 64 2a  oid* void* void*
60c0: 20 76 6f 69 64 2a 29 29 0a 0a 20 20 3b 3b 20 76   void*))..  ;; v
60d0: 6f 69 64 20 67 6c 75 4e 75 72 62 73 43 61 6c 6c  oid gluNurbsCall
60e0: 62 61 63 6b 20 28 47 4c 55 6e 75 72 62 73 2a 20  back (GLUnurbs* 
60f0: 6e 75 72 62 2c 20 47 4c 65 6e 75 6d 20 77 68 69  nurb, GLenum whi
6100: 63 68 2c 20 5f 47 4c 55 66 75 6e 63 70 74 72 20  ch, _GLUfuncptr 
6110: 43 61 6c 6c 42 61 63 6b 46 75 6e 63 29 0a 0a 20  CallBackFunc).. 
6120: 20 3b 3b 20 28 64 65 66 69 6e 65 20 67 6c 75 4e   ;; (define gluN
6130: 75 72 62 73 43 61 6c 6c 62 61 63 6b 0a 20 20 3b  urbsCallback.  ;
6140: 3b 20 20 20 28 6c 65 74 20 28 28 74 68 75 6e 6b  ;   (let ((thunk
6150: 20 28 63 2d 66 75 6e 63 74 69 6f 6e 20 6c 69 62   (c-function lib
6160: 20 6c 69 62 2d 6e 61 6d 65 20 76 6f 69 64 20 5f   lib-name void _
6170: 5f 73 74 64 63 61 6c 6c 20 67 6c 75 4e 75 72 62  _stdcall gluNurb
6180: 73 43 61 6c 6c 62 61 63 6b 20 28 76 6f 69 64 2a  sCallback (void*
6190: 20 75 6e 73 69 67 6e 65 64 2d 69 6e 74 20 76 6f   unsigned-int vo
61a0: 69 64 2a 29 29 29 0a 20 20 3b 3b 20 20 20 20 20  id*))).  ;;     
61b0: 20 20 20 20 28 61 6c 69 73 74 20 60 28 28 2c 47      (alist `((,G
61c0: 4c 55 5f 4e 55 52 42 53 5f 42 45 47 49 4e 20 69  LU_NURBS_BEGIN i
61d0: 6e 74 29 0a 20 20 3b 3b 20 20 20 20 20 20 20 20  nt).  ;;        
61e0: 20 20 20 20 20 20 20 20 20 20 28 2c 47 4c 55 5f            (,GLU_
61f0: 4e 55 52 42 53 5f 56 45 52 54 45 58 20 66 6c 6f  NURBS_VERTEX flo
6200: 61 74 29 0a 20 20 3b 3b 20 20 20 20 20 20 20 20  at).  ;;        
6210: 20 20 20 20 20 20 20 20 20 20 28 2c 47 4c 55 5f            (,GLU_
6220: 4e 55 52 42 53 5f 4e 4f 52 4d 41 4c 20 66 6c 6f  NURBS_NORMAL flo
6230: 61 74 29 0a 20 20 3b 3b 20 20 20 20 20 20 20 20  at).  ;;        
6240: 20 20 20 20 20 20 20 20 20 20 28 2c 47 4c 55 5f            (,GLU_
6250: 4e 55 52 42 53 5f 43 4f 4c 4f 52 20 66 6c 6f 61  NURBS_COLOR floa
6260: 74 29 0a 20 20 3b 3b 20 20 20 20 20 20 20 20 20  t).  ;;         
6270: 20 20 20 20 20 20 20 20 20 28 2c 47 4c 55 5f 4e           (,GLU_N
6280: 55 52 42 53 5f 54 45 58 54 55 52 45 5f 43 4f 4f  URBS_TEXTURE_COO
6290: 52 44 20 66 6c 6f 61 74 29 0a 20 20 3b 3b 20 20  RD float).  ;;  
62a0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
62b0: 28 2c 47 4c 55 5f 4e 55 52 42 53 5f 45 4e 44 29  (,GLU_NURBS_END)
62c0: 0a 20 20 3b 3b 20 20 20 20 20 20 20 20 20 20 20  .  ;;           
62d0: 20 20 20 20 20 20 20 28 2c 47 4c 55 5f 4e 55 52         (,GLU_NUR
62e0: 42 53 5f 42 45 47 49 4e 5f 44 41 54 41 20 69 6e  BS_BEGIN_DATA in
62f0: 74 20 76 6f 69 64 2a 29 0a 20 20 3b 3b 20 20 20  t void*).  ;;   
6300: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28                 (
6310: 2c 47 4c 55 5f 4e 55 52 42 53 5f 56 45 52 54 45  ,GLU_NURBS_VERTE
6320: 58 5f 44 41 54 41 20 66 6c 6f 61 74 20 76 6f 69  X_DATA float voi
6330: 64 2a 29 0a 20 20 3b 3b 20 20 20 20 20 20 20 20  d*).  ;;        
6340: 20 20 20 20 20 20 20 20 20 20 28 2c 47 4c 55 5f            (,GLU_
6350: 4e 55 52 42 53 5f 4e 4f 52 4d 41 4c 5f 44 41 54  NURBS_NORMAL_DAT
6360: 41 20 66 6c 6f 61 74 20 76 6f 69 64 2a 29 0a 20  A float void*). 
6370: 20 3b 3b 20 20 20 20 20 20 20 20 20 20 20 20 20   ;;             
6380: 20 20 20 20 20 28 2c 47 4c 55 5f 4e 55 52 42 53       (,GLU_NURBS
6390: 5f 43 4f 4c 4f 52 5f 44 41 54 41 20 66 6c 6f 61  _COLOR_DATA floa
63a0: 74 20 76 6f 69 64 2a 29 0a 20 20 3b 3b 20 20 20  t void*).  ;;   
63b0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28                 (
63c0: 2c 47 4c 55 5f 4e 55 52 42 53 5f 54 45 58 54 55  ,GLU_NURBS_TEXTU
63d0: 52 45 5f 43 4f 4f 52 44 5f 44 41 54 41 20 66 6c  RE_COORD_DATA fl
63e0: 6f 61 74 20 76 6f 69 64 2a 29 0a 20 20 3b 3b 20  oat void*).  ;; 
63f0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
6400: 20 28 2c 47 4c 55 5f 4e 55 52 42 53 5f 45 4e 44   (,GLU_NURBS_END
6410: 5f 44 41 54 41 20 76 6f 69 64 2a 29 0a 20 20 3b  _DATA void*).  ;
6420: 3b 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ;               
6430: 20 20 20 28 2c 47 4c 55 5f 4e 55 52 42 53 5f 45     (,GLU_NURBS_E
6440: 52 52 4f 52 20 69 6e 74 29 29 29 29 0a 20 20 3b  RROR int)))).  ;
6450: 3b 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 6e  ;     (lambda (n
6460: 75 72 62 20 77 68 69 63 68 20 63 61 6c 6c 62 61  urb which callba
6470: 63 6b 29 0a 20 20 3b 3b 20 20 20 20 20 20 20 28  ck).  ;;       (
6480: 69 66 20 28 70 72 6f 63 65 64 75 72 65 3f 20 63  if (procedure? c
6490: 61 6c 6c 62 61 63 6b 29 0a 20 20 3b 3b 20 20 20  allback).  ;;   
64a0: 20 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 6c          (let ((l
64b0: 73 74 20 28 61 73 73 76 20 77 68 69 63 68 20 61  st (assv which a
64c0: 6c 69 73 74 29 29 29 0a 20 20 3b 3b 20 20 20 20  list))).  ;;    
64d0: 20 20 20 20 20 20 20 20 20 28 6f 72 20 6c 73 74           (or lst
64e0: 20 28 61 73 73 65 72 74 69 6f 6e 2d 76 69 6f 6c   (assertion-viol
64f0: 61 74 69 6f 6e 20 27 67 6c 75 4e 75 72 62 73 43  ation 'gluNurbsC
6500: 61 6c 6c 62 61 63 6b 20 22 69 6e 76 61 6c 69 64  allback "invalid
6510: 20 76 61 6c 75 65 20 69 6e 20 61 72 67 75 6d 65   value in argume
6520: 6e 74 20 32 22 20 28 6c 69 73 74 20 6e 75 72 62  nt 2" (list nurb
6530: 20 77 68 69 63 68 20 63 61 6c 6c 62 61 63 6b 29   which callback)
6540: 29 29 0a 20 20 3b 3b 20 20 20 20 20 20 20 20 20  )).  ;;         
6550: 20 20 20 20 28 74 68 75 6e 6b 20 6e 75 72 62 20      (thunk nurb 
6560: 77 68 69 63 68 20 28 6d 61 6b 65 2d 73 74 64 63  which (make-stdc
6570: 61 6c 6c 2d 63 61 6c 6c 62 61 63 6b 20 27 76 6f  all-callback 'vo
6580: 69 64 20 28 63 64 72 20 6c 73 74 29 20 63 61 6c  id (cdr lst) cal
6590: 6c 62 61 63 6b 29 29 29 0a 20 20 3b 3b 20 20 20  lback))).  ;;   
65a0: 20 20 20 20 20 20 20 20 28 74 68 75 6e 6b 20 6e          (thunk n
65b0: 75 72 62 20 77 68 69 63 68 20 63 61 6c 6c 62 61  urb which callba
65c0: 63 6b 29 29 29 29 29 0a 0a 20 20 3b 3b 20 76 6f  ck)))))..  ;; vo
65d0: 69 64 20 67 6c 75 51 75 61 64 72 69 63 43 61 6c  id gluQuadricCal
65e0: 6c 62 61 63 6b 20 28 47 4c 55 71 75 61 64 72 69  lback (GLUquadri
65f0: 63 2a 20 71 75 61 64 2c 20 47 4c 65 6e 75 6d 20  c* quad, GLenum 
6600: 77 68 69 63 68 2c 20 5f 47 4c 55 66 75 6e 63 70  which, _GLUfuncp
6610: 74 72 20 43 61 6c 6c 42 61 63 6b 46 75 6e 63 29  tr CallBackFunc)
6620: 0a 0a 20 20 3b 3b 20 28 64 65 66 69 6e 65 20 67  ..  ;; (define g
6630: 6c 75 51 75 61 64 72 69 63 43 61 6c 6c 62 61 63  luQuadricCallbac
6640: 6b 0a 20 20 3b 3b 20 20 20 28 6c 65 74 20 28 28  k.  ;;   (let ((
6650: 74 68 75 6e 6b 20 28 63 2d 66 75 6e 63 74 69 6f  thunk (c-functio
6660: 6e 20 6c 69 62 20 6c 69 62 2d 6e 61 6d 65 20 76  n lib lib-name v
6670: 6f 69 64 20 5f 5f 73 74 64 63 61 6c 6c 20 67 6c  oid __stdcall gl
6680: 75 51 75 61 64 72 69 63 43 61 6c 6c 62 61 63 6b  uQuadricCallback
6690: 20 28 76 6f 69 64 2a 20 75 6e 73 69 67 6e 65 64   (void* unsigned
66a0: 2d 69 6e 74 20 76 6f 69 64 2a 29 29 29 29 0a 20  -int void*)))). 
66b0: 20 3b 3b 20 20 20 20 20 28 6c 61 6d 62 64 61 20   ;;     (lambda 
66c0: 28 71 75 61 64 20 77 68 69 63 68 20 63 61 6c 6c  (quad which call
66d0: 62 61 63 6b 29 0a 20 20 3b 3b 20 20 20 20 20 20  back).  ;;      
66e0: 20 28 6f 72 20 28 65 71 76 3f 20 77 68 69 63 68   (or (eqv? which
66f0: 20 47 4c 55 5f 45 52 52 4f 52 29 0a 20 20 3b 3b   GLU_ERROR).  ;;
6700: 20 20 20 20 20 20 20 20 20 20 20 28 61 73 73 65             (asse
6710: 72 74 69 6f 6e 2d 76 69 6f 6c 61 74 69 6f 6e 20  rtion-violation 
6720: 27 67 6c 75 51 75 61 64 72 69 63 43 61 6c 6c 62  'gluQuadricCallb
6730: 61 63 6b 20 22 69 6e 76 61 6c 69 64 20 76 61 6c  ack "invalid val
6740: 75 65 20 69 6e 20 61 72 67 75 6d 65 6e 74 20 32  ue in argument 2
6750: 22 20 28 6c 69 73 74 20 71 75 61 64 20 77 68 69  " (list quad whi
6760: 63 68 20 63 61 6c 6c 62 61 63 6b 29 29 29 0a 20  ch callback))). 
6770: 20 3b 3b 20 20 20 20 20 20 20 28 69 66 20 28 70   ;;       (if (p
6780: 72 6f 63 65 64 75 72 65 3f 20 63 61 6c 6c 62 61  rocedure? callba
6790: 63 6b 29 0a 20 20 3b 3b 20 20 20 20 20 20 20 20  ck).  ;;        
67a0: 20 20 20 28 74 68 75 6e 6b 20 71 75 61 64 20 77     (thunk quad w
67b0: 68 69 63 68 20 28 6d 61 6b 65 2d 73 74 64 63 61  hich (make-stdca
67c0: 6c 6c 2d 63 61 6c 6c 62 61 63 6b 20 27 76 6f 69  ll-callback 'voi
67d0: 64 20 27 28 75 6e 73 69 67 6e 65 64 2d 69 6e 74  d '(unsigned-int
67e0: 29 20 63 61 6c 6c 62 61 63 6b 29 29 0a 20 20 3b  ) callback)).  ;
67f0: 3b 20 20 20 20 20 20 20 20 20 20 20 28 74 68 75  ;           (thu
6800: 6e 6b 20 71 75 61 64 20 77 68 69 63 68 20 63 61  nk quad which ca
6810: 6c 6c 62 61 63 6b 29 29 29 29 29 0a 0a 20 20 3b  llback)))))..  ;
6820: 3b 20 76 6f 69 64 20 67 6c 75 54 65 73 73 43 61  ; void gluTessCa
6830: 6c 6c 62 61 63 6b 20 28 47 4c 55 74 65 73 73 65  llback (GLUtesse
6840: 6c 61 74 6f 72 2a 20 74 65 73 73 2c 20 47 4c 65  lator* tess, GLe
6850: 6e 75 6d 20 77 68 69 63 68 2c 20 5f 47 4c 55 66  num which, _GLUf
6860: 75 6e 63 70 74 72 20 43 61 6c 6c 42 61 63 6b 46  uncptr CallBackF
6870: 75 6e 63 29 0a 20 20 3b 3b 20 28 64 65 66 69 6e  unc).  ;; (defin
6880: 65 20 67 6c 75 54 65 73 73 43 61 6c 6c 62 61 63  e gluTessCallbac
6890: 6b 0a 20 20 3b 3b 20 20 20 28 6c 65 74 20 28 28  k.  ;;   (let ((
68a0: 74 68 75 6e 6b 20 28 63 2d 66 75 6e 63 74 69 6f  thunk (c-functio
68b0: 6e 20 6c 69 62 20 6c 69 62 2d 6e 61 6d 65 20 76  n lib lib-name v
68c0: 6f 69 64 20 5f 5f 73 74 64 63 61 6c 6c 20 67 6c  oid __stdcall gl
68d0: 75 54 65 73 73 43 61 6c 6c 62 61 63 6b 20 28 76  uTessCallback (v
68e0: 6f 69 64 2a 20 75 6e 73 69 67 6e 65 64 2d 69 6e  oid* unsigned-in
68f0: 74 20 76 6f 69 64 2a 29 29 29 0a 20 20 3b 3b 20  t void*))).  ;; 
6900: 20 20 20 20 20 20 20 20 28 61 6c 69 73 74 20 60          (alist `
6910: 28 28 2c 47 4c 55 5f 54 45 53 53 5f 42 45 47 49  ((,GLU_TESS_BEGI
6920: 4e 20 75 6e 73 69 67 6e 65 64 2d 69 6e 74 29 0a  N unsigned-int).
6930: 20 20 3b 3b 20 20 20 20 20 20 20 20 20 20 20 20    ;;            
6940: 20 20 20 20 20 20 28 2c 47 4c 55 5f 54 45 53 53        (,GLU_TESS
6950: 5f 42 45 47 49 4e 5f 44 41 54 41 20 75 6e 73 69  _BEGIN_DATA unsi
6960: 67 6e 65 64 2d 69 6e 74 20 76 6f 69 64 2a 29 0a  gned-int void*).
6970: 20 20 3b 3b 20 20 20 20 20 20 20 20 20 20 20 20    ;;            
6980: 20 20 20 20 20 20 28 2c 47 4c 55 5f 54 45 53 53        (,GLU_TESS
6990: 5f 45 44 47 45 5f 46 4c 41 47 20 75 69 6e 74 38  _EDGE_FLAG uint8
69a0: 5f 74 29 0a 20 20 3b 3b 20 20 20 20 20 20 20 20  _t).  ;;        
69b0: 20 20 20 20 20 20 20 20 20 20 28 2c 47 4c 55 5f            (,GLU_
69c0: 54 45 53 53 5f 45 44 47 45 5f 46 4c 41 47 5f 44  TESS_EDGE_FLAG_D
69d0: 41 54 41 20 75 69 6e 74 38 5f 74 20 76 6f 69 64  ATA uint8_t void
69e0: 2a 29 0a 20 20 3b 3b 20 20 20 20 20 20 20 20 20  *).  ;;         
69f0: 20 20 20 20 20 20 20 20 20 28 2c 47 4c 55 5f 54           (,GLU_T
6a00: 45 53 53 5f 56 45 52 54 45 58 20 76 6f 69 64 2a  ESS_VERTEX void*
6a10: 29 0a 20 20 3b 3b 20 20 20 20 20 20 20 20 20 20  ).  ;;          
6a20: 20 20 20 20 20 20 20 20 28 2c 47 4c 55 5f 54 45          (,GLU_TE
6a30: 53 53 5f 56 45 52 54 45 58 5f 44 41 54 41 20 76  SS_VERTEX_DATA v
6a40: 6f 69 64 2a 20 76 6f 69 64 2a 29 0a 20 20 3b 3b  oid* void*).  ;;
6a50: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
6a60: 20 20 28 2c 47 4c 55 5f 54 45 53 53 5f 45 4e 44    (,GLU_TESS_END
6a70: 29 0a 20 20 3b 3b 20 20 20 20 20 20 20 20 20 20  ).  ;;          
6a80: 20 20 20 20 20 20 20 20 28 2c 47 4c 55 5f 54 45          (,GLU_TE
6a90: 53 53 5f 45 4e 44 5f 44 41 54 41 20 76 6f 69 64  SS_END_DATA void
6aa0: 2a 29 0a 20 20 3b 3b 20 20 20 20 20 20 20 20 20  *).  ;;         
6ab0: 20 20 20 20 20 20 20 20 20 28 2c 47 4c 55 5f 54           (,GLU_T
6ac0: 45 53 53 5f 43 4f 4d 42 49 4e 45 20 76 6f 69 64  ESS_COMBINE void
6ad0: 2a 20 76 6f 69 64 2a 20 76 6f 69 64 2a 20 76 6f  * void* void* vo
6ae0: 69 64 2a 29 0a 20 20 3b 3b 20 20 20 20 20 20 20  id*).  ;;       
6af0: 20 20 20 20 20 20 20 20 20 20 20 28 2c 47 4c 55             (,GLU
6b00: 5f 54 45 53 53 5f 43 4f 4d 42 49 4e 45 5f 44 41  _TESS_COMBINE_DA
6b10: 54 41 20 76 6f 69 64 2a 20 76 6f 69 64 2a 20 76  TA void* void* v
6b20: 6f 69 64 2a 20 76 6f 69 64 2a 20 76 6f 69 64 2a  oid* void* void*
6b30: 29 0a 20 20 3b 3b 20 20 20 20 20 20 20 20 20 20  ).  ;;          
6b40: 20 20 20 20 20 20 20 20 28 2c 47 4c 55 5f 54 45          (,GLU_TE
6b50: 53 53 5f 45 52 52 4f 52 20 75 6e 73 69 67 6e 65  SS_ERROR unsigne
6b60: 64 2d 69 6e 74 29 0a 20 20 3b 3b 20 20 20 20 20  d-int).  ;;     
6b70: 20 20 20 20 20 20 20 20 20 20 20 20 20 28 2c 47               (,G
6b80: 4c 55 5f 54 45 53 53 5f 45 52 52 4f 52 5f 44 41  LU_TESS_ERROR_DA
6b90: 54 41 20 75 6e 73 69 67 6e 65 64 2d 69 6e 74 20  TA unsigned-int 
6ba0: 76 6f 69 64 2a 29 29 29 29 0a 20 20 3b 3b 20 20  void*)))).  ;;  
6bb0: 20 20 20 28 6c 61 6d 62 64 61 20 28 74 65 73 73     (lambda (tess
6bc0: 20 77 68 69 63 68 20 63 61 6c 6c 62 61 63 6b 29   which callback)
6bd0: 0a 20 20 3b 3b 20 20 20 20 20 20 20 28 69 66 20  .  ;;       (if 
6be0: 28 70 72 6f 63 65 64 75 72 65 3f 20 63 61 6c 6c  (procedure? call
6bf0: 62 61 63 6b 29 0a 20 20 3b 3b 20 20 20 20 20 20  back).  ;;      
6c00: 20 20 20 20 20 28 6c 65 74 20 28 28 6c 73 74 20       (let ((lst 
6c10: 28 61 73 73 76 20 77 68 69 63 68 20 61 6c 69 73  (assv which alis
6c20: 74 29 29 29 0a 20 20 3b 3b 20 20 20 20 20 20 20  t))).  ;;       
6c30: 20 20 20 20 20 20 28 6f 72 20 6c 73 74 20 28 61        (or lst (a
6c40: 73 73 65 72 74 69 6f 6e 2d 76 69 6f 6c 61 74 69  ssertion-violati
6c50: 6f 6e 20 27 67 6c 75 54 65 73 73 43 61 6c 6c 62  on 'gluTessCallb
6c60: 61 63 6b 20 22 69 6e 76 61 6c 69 64 20 76 61 6c  ack "invalid val
6c70: 75 65 20 69 6e 20 61 72 67 75 6d 65 6e 74 20 32  ue in argument 2
6c80: 22 20 28 6c 69 73 74 20 74 65 73 73 20 77 68 69  " (list tess whi
6c90: 63 68 20 63 61 6c 6c 62 61 63 6b 29 29 29 0a 20  ch callback))). 
6ca0: 20 3b 3b 20 20 20 20 20 20 20 20 20 20 20 20 20   ;;             
6cb0: 28 74 68 75 6e 6b 20 74 65 73 73 20 77 68 69 63  (thunk tess whic
6cc0: 68 20 28 6d 61 6b 65 2d 73 74 64 63 61 6c 6c 2d  h (make-stdcall-
6cd0: 63 61 6c 6c 62 61 63 6b 20 27 76 6f 69 64 20 28  callback 'void (
6ce0: 63 64 72 20 6c 73 74 29 20 63 61 6c 6c 62 61 63  cdr lst) callbac
6cf0: 6b 29 29 29 0a 20 20 3b 3b 20 20 20 20 20 20 20  k))).  ;;       
6d00: 20 20 20 20 28 74 68 75 6e 6b 20 74 65 73 73 20      (thunk tess 
6d10: 77 68 69 63 68 20 63 61 6c 6c 62 61 63 6b 29 29  which callback))
6d20: 29 29 29 0a 0a 20 20 29 20 3b 5b 65 6e 64 5d 0a  )))..  ) ;[end].