diff options
Diffstat (limited to 'lib/oldwrappers/opengl/glu.nim')
-rwxr-xr-x | lib/oldwrappers/opengl/glu.nim | 311 |
1 files changed, 0 insertions, 311 deletions
diff --git a/lib/oldwrappers/opengl/glu.nim b/lib/oldwrappers/opengl/glu.nim deleted file mode 100755 index 297f4d354..000000000 --- a/lib/oldwrappers/opengl/glu.nim +++ /dev/null @@ -1,311 +0,0 @@ -# -# -# Adaption of the delphi3d.net OpenGL units to FreePascal -# Sebastian Guenther (sg@freepascal.org) in 2002 -# These units are free to use -#****************************************************************************** -# Converted to Delphi by Tom Nuydens (tom@delphi3d.net) -# For the latest updates, visit Delphi3D: http://www.delphi3d.net -#****************************************************************************** - -import - GL - -when defined(windows): - const dllname = "glu32.dll" -elif defined(macosx): - const dllname = "/System/Library/Frameworks/OpenGL.framework/Libraries/libGLU.dylib" -else: - const dllname = "libGLU.so.1" - -type - TViewPortArray* = array[0..3, TGLint] - T16dArray* = array[0..15, TGLdouble] - TCallBack* = proc () - T3dArray* = array[0..2, TGLdouble] - T4pArray* = array[0..3, Pointer] - T4fArray* = array[0..3, TGLfloat] - PPointer* = ptr Pointer - -type - GLUnurbs*{.final.} = object - PGLUnurbs* = ptr GLUnurbs - GLUquadric*{.final.} = object - PGLUquadric* = ptr GLUquadric - GLUtesselator*{.final.} = object - PGLUtesselator* = ptr GLUtesselator # backwards compatibility: - GLUnurbsObj* = GLUnurbs - PGLUnurbsObj* = PGLUnurbs - GLUquadricObj* = GLUquadric - PGLUquadricObj* = PGLUquadric - GLUtesselatorObj* = GLUtesselator - PGLUtesselatorObj* = PGLUtesselator - GLUtriangulatorObj* = GLUtesselator - PGLUtriangulatorObj* = PGLUtesselator - TGLUnurbs* = GLUnurbs - TGLUquadric* = GLUquadric - TGLUtesselator* = GLUtesselator - TGLUnurbsObj* = GLUnurbsObj - TGLUquadricObj* = GLUquadricObj - TGLUtesselatorObj* = GLUtesselatorObj - TGLUtriangulatorObj* = GLUtriangulatorObj - -proc gluErrorString*(errCode: TGLenum): cstring{.dynlib: dllname, importc.} -proc gluErrorUnicodeStringEXT*(errCode: TGLenum): ptr int16{.dynlib: dllname, - importc.} -proc gluGetString*(name: TGLenum): cstring{.dynlib: dllname, importc.} -proc gluOrtho2D*(left, right, bottom, top: TGLdouble){.dynlib: dllname, importc.} -proc gluPerspective*(fovy, aspect, zNear, zFar: TGLdouble){.dynlib: dllname, - importc.} -proc gluPickMatrix*(x, y, width, height: TGLdouble, viewport: var TViewPortArray){. - dynlib: dllname, importc.} -proc gluLookAt*(eyex, eyey, eyez, centerx, centery, centerz, upx, upy, upz: TGLdouble){. - dynlib: dllname, importc.} -proc gluProject*(objx, objy, objz: TGLdouble, - modelMatrix, projMatrix: var T16dArray, - viewport: var TViewPortArray, winx, winy, winz: PGLdouble): int{. - dynlib: dllname, importc.} -proc gluUnProject*(winx, winy, winz: TGLdouble, - modelMatrix, projMatrix: var T16dArray, - viewport: var TViewPortArray, objx, objy, objz: PGLdouble): int{. - dynlib: dllname, importc.} -proc gluScaleImage*(format: TGLenum, widthin, heightin: TGLint, typein: TGLenum, - datain: Pointer, widthout, heightout: TGLint, - typeout: TGLenum, dataout: Pointer): int{.dynlib: dllname, - importc.} -proc gluBuild1DMipmaps*(target: TGLenum, components, width: TGLint, - format, atype: TGLenum, data: Pointer): int{. - dynlib: dllname, importc.} -proc gluBuild2DMipmaps*(target: TGLenum, components, width, height: TGLint, - format, atype: TGLenum, data: Pointer): int{. - dynlib: dllname, importc.} -proc gluNewQuadric*(): PGLUquadric{.dynlib: dllname, importc.} -proc gluDeleteQuadric*(state: PGLUquadric){.dynlib: dllname, importc.} -proc gluQuadricNormals*(quadObject: PGLUquadric, normals: TGLenum){. - dynlib: dllname, importc.} -proc gluQuadricTexture*(quadObject: PGLUquadric, textureCoords: TGLboolean){. - dynlib: dllname, importc.} -proc gluQuadricOrientation*(quadObject: PGLUquadric, orientation: TGLenum){. - dynlib: dllname, importc.} -proc gluQuadricDrawStyle*(quadObject: PGLUquadric, drawStyle: TGLenum){. - dynlib: dllname, importc.} -proc gluCylinder*(qobj: PGLUquadric, baseRadius, topRadius, height: TGLdouble, - slices, stacks: TGLint){.dynlib: dllname, importc.} -proc gluDisk*(qobj: PGLUquadric, innerRadius, outerRadius: TGLdouble, - slices, loops: TGLint){.dynlib: dllname, importc.} -proc gluPartialDisk*(qobj: PGLUquadric, innerRadius, outerRadius: TGLdouble, - slices, loops: TGLint, startAngle, sweepAngle: TGLdouble){. - dynlib: dllname, importc.} -proc gluSphere*(qobj: PGLuquadric, radius: TGLdouble, slices, stacks: TGLint){. - dynlib: dllname, importc.} -proc gluQuadricCallback*(qobj: PGLUquadric, which: TGLenum, fn: TCallBack){. - dynlib: dllname, importc.} -proc gluNewTess*(): PGLUtesselator{.dynlib: dllname, importc.} -proc gluDeleteTess*(tess: PGLUtesselator){.dynlib: dllname, importc.} -proc gluTessBeginPolygon*(tess: PGLUtesselator, polygon_data: Pointer){. - dynlib: dllname, importc.} -proc gluTessBeginContour*(tess: PGLUtesselator){.dynlib: dllname, importc.} -proc gluTessVertex*(tess: PGLUtesselator, coords: var T3dArray, data: Pointer){. - dynlib: dllname, importc.} -proc gluTessEndContour*(tess: PGLUtesselator){.dynlib: dllname, importc.} -proc gluTessEndPolygon*(tess: PGLUtesselator){.dynlib: dllname, importc.} -proc gluTessProperty*(tess: PGLUtesselator, which: TGLenum, value: TGLdouble){. - dynlib: dllname, importc.} -proc gluTessNormal*(tess: PGLUtesselator, x, y, z: TGLdouble){.dynlib: dllname, - importc.} -proc gluTessCallback*(tess: PGLUtesselator, which: TGLenum, fn: TCallBack){. - dynlib: dllname, importc.} -proc gluGetTessProperty*(tess: PGLUtesselator, which: TGLenum, value: PGLdouble){. - dynlib: dllname, importc.} -proc gluNewNurbsRenderer*(): PGLUnurbs{.dynlib: dllname, importc.} -proc gluDeleteNurbsRenderer*(nobj: PGLUnurbs){.dynlib: dllname, importc.} -proc gluBeginSurface*(nobj: PGLUnurbs){.dynlib: dllname, importc.} -proc gluBeginCurve*(nobj: PGLUnurbs){.dynlib: dllname, importc.} -proc gluEndCurve*(nobj: PGLUnurbs){.dynlib: dllname, importc.} -proc gluEndSurface*(nobj: PGLUnurbs){.dynlib: dllname, importc.} -proc gluBeginTrim*(nobj: PGLUnurbs){.dynlib: dllname, importc.} -proc gluEndTrim*(nobj: PGLUnurbs){.dynlib: dllname, importc.} -proc gluPwlCurve*(nobj: PGLUnurbs, count: TGLint, aarray: PGLfloat, - stride: TGLint, atype: TGLenum){.dynlib: dllname, importc.} -proc gluNurbsCurve*(nobj: PGLUnurbs, nknots: TGLint, knot: PGLfloat, - stride: TGLint, ctlarray: PGLfloat, order: TGLint, - atype: TGLenum){.dynlib: dllname, importc.} -proc gluNurbsSurface*(nobj: PGLUnurbs, sknot_count: TGLint, sknot: PGLfloat, - tknot_count: TGLint, tknot: PGLfloat, - s_stride, t_stride: TGLint, ctlarray: PGLfloat, - sorder, torder: TGLint, atype: TGLenum){.dynlib: dllname, - importc.} -proc gluLoadSamplingMatrices*(nobj: PGLUnurbs, - modelMatrix, projMatrix: var T16dArray, - viewport: var TViewPortArray){.dynlib: dllname, - importc.} -proc gluNurbsProperty*(nobj: PGLUnurbs, aproperty: TGLenum, value: TGLfloat){. - dynlib: dllname, importc.} -proc gluGetNurbsProperty*(nobj: PGLUnurbs, aproperty: TGLenum, value: PGLfloat){. - dynlib: dllname, importc.} -proc gluNurbsCallback*(nobj: PGLUnurbs, which: TGLenum, fn: TCallBack){. - dynlib: dllname, importc.} - #*** Callback function prototypes *** -type # gluQuadricCallback - GLUquadricErrorProc* = proc (p: TGLenum) # gluTessCallback - GLUtessBeginProc* = proc (p: TGLenum) - GLUtessEdgeFlagProc* = proc (p: TGLboolean) - GLUtessVertexProc* = proc (p: Pointer) - GLUtessEndProc* = proc () - GLUtessErrorProc* = proc (p: TGLenum) - GLUtessCombineProc* = proc (p1: var T3dArray, p2: T4pArray, p3: T4fArray, - p4: PPointer) - GLUtessBeginDataProc* = proc (p1: TGLenum, p2: Pointer) - GLUtessEdgeFlagDataProc* = proc (p1: TGLboolean, p2: Pointer) - GLUtessVertexDataProc* = proc (p1, p2: Pointer) - GLUtessEndDataProc* = proc (p: Pointer) - GLUtessErrorDataProc* = proc (p1: TGLenum, p2: Pointer) - GLUtessCombineDataProc* = proc (p1: var T3dArray, p2: var T4pArray, - p3: var T4fArray, p4: PPointer, p5: Pointer) # - # gluNurbsCallback - GLUnurbsErrorProc* = proc (p: TGLenum) #*** Generic constants ****/ - -const # Version - GLU_VERSION_1_1* = 1 - GLU_VERSION_1_2* = 1 # Errors: (return value 0 = no error) - GLU_INVALID_ENUM* = 100900 - GLU_INVALID_VALUE* = 100901 - GLU_OUT_OF_MEMORY* = 100902 - GLU_INCOMPATIBLE_GL_VERSION* = 100903 # StringName - GLU_VERSION* = 100800 - GLU_EXTENSIONS* = 100801 # Boolean - GLU_TRUE* = GL_TRUE - GLU_FALSE* = GL_FALSE #*** Quadric constants ****/ - # QuadricNormal - GLU_SMOOTH* = 100000 - GLU_FLAT* = 100001 - GLU_NONE* = 100002 # QuadricDrawStyle - GLU_POINT* = 100010 - GLU_LINE* = 100011 - GLU_FILL* = 100012 - GLU_SILHOUETTE* = 100013 # QuadricOrientation - GLU_OUTSIDE* = 100020 - GLU_INSIDE* = 100021 # Callback types: - # GLU_ERROR = 100103; - #*** Tesselation constants ****/ - GLU_TESS_MAX_COORD* = 1.00000e+150 # TessProperty - GLU_TESS_WINDING_RULE* = 100140 - GLU_TESS_BOUNDARY_ONLY* = 100141 - GLU_TESS_TOLERANCE* = 100142 # TessWinding - GLU_TESS_WINDING_ODD* = 100130 - GLU_TESS_WINDING_NONZERO* = 100131 - GLU_TESS_WINDING_POSITIVE* = 100132 - GLU_TESS_WINDING_NEGATIVE* = 100133 - GLU_TESS_WINDING_ABS_GEQ_TWO* = 100134 # TessCallback - GLU_TESS_BEGIN* = 100100 # void (CALLBACK*)(TGLenum type) - constGLU_TESS_VERTEX* = 100101 # void (CALLBACK*)(void *data) - GLU_TESS_END* = 100102 # void (CALLBACK*)(void) - GLU_TESS_ERROR* = 100103 # void (CALLBACK*)(TGLenum errno) - GLU_TESS_EDGE_FLAG* = 100104 # void (CALLBACK*)(TGLboolean boundaryEdge) - GLU_TESS_COMBINE* = 100105 # void (CALLBACK*)(TGLdouble coords[3], - # void *data[4], - # TGLfloat weight[4], - # void **dataOut) - GLU_TESS_BEGIN_DATA* = 100106 # void (CALLBACK*)(TGLenum type, - # void *polygon_data) - GLU_TESS_VERTEX_DATA* = 100107 # void (CALLBACK*)(void *data, - # void *polygon_data) - GLU_TESS_END_DATA* = 100108 # void (CALLBACK*)(void *polygon_data) - GLU_TESS_ERROR_DATA* = 100109 # void (CALLBACK*)(TGLenum errno, - # void *polygon_data) - GLU_TESS_EDGE_FLAG_DATA* = 100110 # void (CALLBACK*)(TGLboolean boundaryEdge, - # void *polygon_data) - GLU_TESS_COMBINE_DATA* = 100111 # void (CALLBACK*)(TGLdouble coords[3], - # void *data[4], - # TGLfloat weight[4], - # void **dataOut, - # void *polygon_data) - # TessError - GLU_TESS_ERROR1* = 100151 - GLU_TESS_ERROR2* = 100152 - GLU_TESS_ERROR3* = 100153 - GLU_TESS_ERROR4* = 100154 - GLU_TESS_ERROR5* = 100155 - GLU_TESS_ERROR6* = 100156 - GLU_TESS_ERROR7* = 100157 - GLU_TESS_ERROR8* = 100158 - GLU_TESS_MISSING_BEGIN_POLYGON* = GLU_TESS_ERROR1 - GLU_TESS_MISSING_BEGIN_CONTOUR* = GLU_TESS_ERROR2 - GLU_TESS_MISSING_END_POLYGON* = GLU_TESS_ERROR3 - GLU_TESS_MISSING_END_CONTOUR* = GLU_TESS_ERROR4 - GLU_TESS_COORD_TOO_LARGE* = GLU_TESS_ERROR5 - GLU_TESS_NEED_COMBINE_CALLBACK* = GLU_TESS_ERROR6 #*** NURBS constants ****/ - # NurbsProperty - GLU_AUTO_LOAD_MATRIX* = 100200 - GLU_CULLING* = 100201 - GLU_SAMPLING_TOLERANCE* = 100203 - GLU_DISPLAY_MODE* = 100204 - GLU_PARAMETRIC_TOLERANCE* = 100202 - GLU_SAMPLING_METHOD* = 100205 - GLU_U_STEP* = 100206 - GLU_V_STEP* = 100207 # NurbsSampling - GLU_PATH_LENGTH* = 100215 - GLU_PARAMETRIC_ERROR* = 100216 - GLU_DOMAIN_DISTANCE* = 100217 # NurbsTrim - GLU_MAP1_TRIM_2* = 100210 - GLU_MAP1_TRIM_3* = 100211 # NurbsDisplay - # GLU_FILL = 100012; - GLU_OUTLINE_POLYGON* = 100240 - GLU_OUTLINE_PATCH* = 100241 # NurbsCallback - # GLU_ERROR = 100103; - # NurbsErrors - GLU_NURBS_ERROR1* = 100251 - GLU_NURBS_ERROR2* = 100252 - GLU_NURBS_ERROR3* = 100253 - GLU_NURBS_ERROR4* = 100254 - GLU_NURBS_ERROR5* = 100255 - GLU_NURBS_ERROR6* = 100256 - GLU_NURBS_ERROR7* = 100257 - GLU_NURBS_ERROR8* = 100258 - GLU_NURBS_ERROR9* = 100259 - GLU_NURBS_ERROR10* = 100260 - GLU_NURBS_ERROR11* = 100261 - GLU_NURBS_ERROR12* = 100262 - GLU_NURBS_ERROR13* = 100263 - GLU_NURBS_ERROR14* = 100264 - GLU_NURBS_ERROR15* = 100265 - GLU_NURBS_ERROR16* = 100266 - GLU_NURBS_ERROR17* = 100267 - GLU_NURBS_ERROR18* = 100268 - GLU_NURBS_ERROR19* = 100269 - GLU_NURBS_ERROR20* = 100270 - GLU_NURBS_ERROR21* = 100271 - GLU_NURBS_ERROR22* = 100272 - GLU_NURBS_ERROR23* = 100273 - GLU_NURBS_ERROR24* = 100274 - GLU_NURBS_ERROR25* = 100275 - GLU_NURBS_ERROR26* = 100276 - GLU_NURBS_ERROR27* = 100277 - GLU_NURBS_ERROR28* = 100278 - GLU_NURBS_ERROR29* = 100279 - GLU_NURBS_ERROR30* = 100280 - GLU_NURBS_ERROR31* = 100281 - GLU_NURBS_ERROR32* = 100282 - GLU_NURBS_ERROR33* = 100283 - GLU_NURBS_ERROR34* = 100284 - GLU_NURBS_ERROR35* = 100285 - GLU_NURBS_ERROR36* = 100286 - GLU_NURBS_ERROR37* = 100287 #*** Backwards compatibility for old tesselator ****/ - -proc gluBeginPolygon*(tess: PGLUtesselator){.dynlib: dllname, importc.} -proc gluNextContour*(tess: PGLUtesselator, atype: TGLenum){.dynlib: dllname, - importc.} -proc gluEndPolygon*(tess: PGLUtesselator){.dynlib: dllname, importc.} -const # Contours types -- obsolete! - GLU_CW* = 100120 - GLU_CCW* = 100121 - GLU_INTERIOR* = 100122 - GLU_EXTERIOR* = 100123 - GLU_UNKNOWN* = 100124 # Names without "TESS_" prefix - GLU_BEGIN* = GLU_TESS_BEGIN - GLU_VERTEX* = constGLU_TESS_VERTEX - GLU_END* = GLU_TESS_END - GLU_ERROR* = GLU_TESS_ERROR - GLU_EDGE_FLAG* = GLU_TESS_EDGE_FLAG - -# implementation |