📄 glu.pas
字号:
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 ****/
var
gluBeginPolygon: procedure(tess: PGLUtesselator); stdcall;
gluNextContour: procedure(tess: PGLUtesselator; atype: GLenum); stdcall;
gluEndPolygon: procedure(tess: PGLUtesselator); stdcall;
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 = GLU_TESS_VERTEX;
GLU_END = GLU_TESS_END;
GLU_ERROR = GLU_TESS_ERROR;
GLU_EDGE_FLAG = GLU_TESS_EDGE_FLAG;
procedure LoadGLu(const dll: String);
procedure FreeGLu;
implementation
var
hDLL: THandle;
procedure FreeGLu;
begin
@gluErrorString := nil;
@gluErrorUnicodeStringEXT := nil;
@gluGetString := nil;
@gluOrtho2D := nil;
@gluPerspective := nil;
@gluPickMatrix := nil;
@gluLookAt := nil;
@gluProject := nil;
@gluUnProject := nil;
@gluScaleImage := nil;
@gluBuild1DMipmaps := nil;
@gluBuild2DMipmaps := nil;
@gluNewQuadric := nil;
@gluDeleteQuadric := nil;
@gluQuadricNormals := nil;
@gluQuadricTexture := nil;
@gluQuadricOrientation := nil;
@gluQuadricDrawStyle := nil;
@gluCylinder := nil;
@gluDisk := nil;
@gluPartialDisk := nil;
@gluSphere := nil;
@gluQuadricCallback := nil;
@gluNewTess := nil;
@gluDeleteTess := nil;
@gluTessBeginPolygon := nil;
@gluTessBeginContour := nil;
@gluTessVertex := nil;
@gluTessEndContour := nil;
@gluTessEndPolygon := nil;
@gluTessProperty := nil;
@gluTessNormal := nil;
@gluTessCallback := nil;
@gluGetTessProperty := nil;
@gluNewNurbsRenderer := nil;
@gluDeleteNurbsRenderer := nil;
@gluBeginSurface := nil;
@gluBeginCurve := nil;
@gluEndCurve := nil;
@gluEndSurface := nil;
@gluBeginTrim := nil;
@gluEndTrim := nil;
@gluPwlCurve := nil;
@gluNurbsCurve := nil;
@gluNurbsSurface := nil;
@gluLoadSamplingMatrices := nil;
@gluNurbsProperty := nil;
@gluGetNurbsProperty := nil;
@gluNurbsCallback := nil;
@gluBeginPolygon := nil;
@gluNextContour := nil;
@gluEndPolygon := nil;
FreeLibrary(hDLL);
end;
procedure LoadGLu(const dll: String);
begin
FreeGLu;
hDLL := LoadLibrary(PChar(dll));
if hDLL = 0 then raise Exception.Create('Could not load GLu from ' + dll);
@gluErrorString := GetProcAddress(hDLL, 'gluErrorString');
@gluErrorUnicodeStringEXT := GetProcAddress(hDLL, 'gluErrorUnicodeStringEXT');
@gluGetString := GetProcAddress(hDLL, 'gluGetString');
@gluOrtho2D := GetProcAddress(hDLL, 'gluOrtho2D');
@gluPerspective := GetProcAddress(hDLL, 'gluPerspective');
@gluPickMatrix := GetProcAddress(hDLL, 'gluPickMatrix');
@gluLookAt := GetProcAddress(hDLL, 'gluLookAt');
@gluProject := GetProcAddress(hDLL, 'gluProject');
@gluUnProject := GetProcAddress(hDLL, 'gluUnProject');
@gluScaleImage := GetProcAddress(hDLL, 'gluScaleImage');
@gluBuild1DMipmaps := GetProcAddress(hDLL, 'gluBuild1DMipmaps');
@gluBuild2DMipmaps := GetProcAddress(hDLL, 'gluBuild2DMipmaps');
@gluNewQuadric := GetProcAddress(hDLL, 'gluNewQuadric: PGLUquadric');
@gluDeleteQuadric := GetProcAddress(hDLL, 'gluDeleteQuadric');
@gluQuadricNormals := GetProcAddress(hDLL, 'gluQuadricNormals');
@gluQuadricTexture := GetProcAddress(hDLL, 'gluQuadricTexture');
@gluQuadricOrientation := GetProcAddress(hDLL, 'gluQuadricOrientation');
@gluQuadricDrawStyle := GetProcAddress(hDLL, 'gluQuadricDrawStyle');
@gluCylinder := GetProcAddress(hDLL, 'gluCylinder');
@gluDisk := GetProcAddress(hDLL, 'gluDisk');
@gluPartialDisk := GetProcAddress(hDLL, 'gluPartialDisk');
@gluSphere := GetProcAddress(hDLL, 'gluSphere');
@gluQuadricCallback := GetProcAddress(hDLL, 'gluQuadricCallback');
@gluNewTess := GetProcAddress(hDLL, 'gluNewTess: PGLUtesselator');
@gluDeleteTess := GetProcAddress(hDLL, 'gluDeleteTess');
@gluTessBeginPolygon := GetProcAddress(hDLL, 'gluTessBeginPolygon');
@gluTessBeginContour := GetProcAddress(hDLL, 'gluTessBeginContour');
@gluTessVertex := GetProcAddress(hDLL, 'gluTessVertex');
@gluTessEndContour := GetProcAddress(hDLL, 'gluTessEndContour');
@gluTessEndPolygon := GetProcAddress(hDLL, 'gluTessEndPolygon');
@gluTessProperty := GetProcAddress(hDLL, 'gluTessProperty');
@gluTessNormal := GetProcAddress(hDLL, 'gluTessNormal');
@gluTessCallback := GetProcAddress(hDLL, 'gluTessCallback');
@gluGetTessProperty := GetProcAddress(hDLL, 'gluGetTessProperty');
@gluNewNurbsRenderer := GetProcAddress(hDLL, 'gluNewNurbsRenderer: PGLUnurbs');
@gluDeleteNurbsRenderer := GetProcAddress(hDLL, 'gluDeleteNurbsRenderer');
@gluBeginSurface := GetProcAddress(hDLL, 'gluBeginSurface');
@gluBeginCurve := GetProcAddress(hDLL, 'gluBeginCurve');
@gluEndCurve := GetProcAddress(hDLL, 'gluEndCurve');
@gluEndSurface := GetProcAddress(hDLL, 'gluEndSurface');
@gluBeginTrim := GetProcAddress(hDLL, 'gluBeginTrim');
@gluEndTrim := GetProcAddress(hDLL, 'gluEndTrim');
@gluPwlCurve := GetProcAddress(hDLL, 'gluPwlCurve');
@gluNurbsCurve := GetProcAddress(hDLL, 'gluNurbsCurve');
@gluNurbsSurface := GetProcAddress(hDLL, 'gluNurbsSurface');
@gluLoadSamplingMatrices := GetProcAddress(hDLL, 'gluLoadSamplingMatrices');
@gluNurbsProperty := GetProcAddress(hDLL, 'gluNurbsProperty');
@gluGetNurbsProperty := GetProcAddress(hDLL, 'gluGetNurbsProperty');
@gluNurbsCallback := GetProcAddress(hDLL, 'gluNurbsCallback');
@gluBeginPolygon := GetProcAddress(hDLL, 'gluBeginPolygon');
@gluNextContour := GetProcAddress(hDLL, 'gluNextContour');
@gluEndPolygon := GetProcAddress(hDLL, 'gluEndPolygon');
end;
initialization
try
LoadGLu('glu32.dll');
except end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -