Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Namespace Members | Class Members | File Members | Related Pages

glf.h

Go to the documentation of this file.
00001 /*
00002 ==============================================================================
00003 |  GLF Library
00004 |  Version 1.4
00005 | 
00006 |  Author: Roman Podobedov
00007 |  Email: romka@ut.ee
00008 |  WEB: http://romka.demonews.com
00009 |  Release Date: 18 May 2001
00010 |  
00011 |  Copyright (C) 2000-2001, Romka Graphics
00012 |  This library is freely distributable without any license or permissions
00013 |  for non-commercial usage. You can use this library in any non-commercial
00014 |  program. In each program, where You use this library You should keep 
00015 |  this header (author name and coordinates)!
00016 |  For commercial usage, please contact me: romka@ut.ee
00017 ==============================================================================
00018 */
00019 
00020 #ifndef GLF_H
00021 #define GLF_H
00022 
00023 #ifdef __cplusplus
00024 extern "C" {
00025 #endif
00026 
00027 /* CONSTANTS */
00028 
00029 #define GLF_ERROR           -1
00030 #define GLF_OK               0
00031 #define GLF_YES              1
00032 #define GLF_NO               2
00033 
00034 #define GLF_CONSOLE_MESSAGES 10
00035 #define GLF_TEXTURING        11
00036 #define GLF_CONTOURING       12
00037 
00038 #define GLF_LEFT_UP          20
00039 #define GLF_LEFT_CENTER      21
00040 #define GLF_LEFT_DOWN        22
00041 #define GLF_CENTER_UP        23
00042 #define GLF_CENTER_CENTER    24
00043 #define GLF_CENTER_DOWN      25
00044 #define GLF_RIGHT_UP         26
00045 #define GLF_RIGHT_CENTER     27
00046 #define GLF_RIGHT_DOWN       28
00047 #define GLF_CENTER           24
00048 
00049 #define GLF_LEFT                         1
00050 #define GLF_RIGHT                        2
00051 #define GLF_UP                           3
00052 #define GLF_DOWN                         4
00053 
00054 /* Console constants */
00055 #define GLF_CONSOLE_CURSOR   30
00056 
00057 /* Library initialization (must be called before any usage of library) */
00058 void glfInit(); 
00059 /* Library closing (must be called after usage of library) */
00060 void glfClose();
00061 
00062 /* Font loading/unloading functions */
00063 int     glfLoadFont(char *font_name);                   /* Load Vector font to memory */
00064 int     glfLoadBMFFont(char *FName);                    /* Load Bitmap font to memory */
00065 int     glfUnloadFont();                                                /* Unload font from memory */
00066 int glfUnloadBMFFont();                                         /* Unload current BMF font */
00067 int     glfUnloadFontD(int font_descriptor);    /* Unload font by font_descriptor */
00068 int     glfUnloadBMFFontD(int bmf_descriptor);  /* Unload BMF font by bmf_descriptor */
00069 
00070 /* Text drawing functions */
00071 /* --------- Vector Fonts ---------------- */
00072 void glfDrawWiredSymbol(char s);    /* Draw wired symbol    */
00073 void glfDrawWiredString(char *s);   /* Draw wired string    */
00074 void glfDrawSolidSymbol(char s);    /* Draw solid symbol    */
00075 void glfDrawSolidString(char *s);   /* Draw wired string    */
00076 void glfDraw3DWiredSymbol(char s);  /* Draw 3D wired symbol */
00077 void glfDraw3DWiredString(char *s); /* Draw 3D wired string */
00078 void glfDraw3DSolidSymbol(char s);  /* Draw 3D solid symbol */
00079 void glfDraw3DSolidString(char *s); /* Draw 3D solid string */
00080 
00081 /* --------- Bitmap Fonts ---------------- */
00082 void glfStartBitmapDrawing();       /* Must be called before bitmap text drawing */
00083 void glfStopBitmapDrawing();        /* Must be called after bitmap text drawing */
00084 void glfDrawBSymbol(char s);        /* Draw one symbol by bitmapped font */
00085 void glfDrawBString(char *s);       /* Draw string by bitmapped font */
00086 void glfDrawBMaskSymbol(char s);        /* Draw one symbol by bitmapped font (using mask) */
00087 void glfDrawBMaskString(char *s);       /* Draw string by bitmapped font (using mask) */
00088 
00089 
00090 /* Text drawing functions by specified font */
00091 void glfDrawWiredSymbolF(int font_descriptor, char s);
00092 void glfDrawWiredStringF(int font_descriptor, char *s);
00093 void glfDrawSolidSymbolF(int font_descriptor, char s);
00094 void glfDrawSolidStringF(int font_descriptor, char *s);
00095 void glfDraw3DWiredSymbolF(int font_descriptor, char s);
00096 void glfDraw3DWiredStringF(int font_descriptor, char *s);
00097 void glfDraw3DSolidSymbolF(int font_descriptor, char s);
00098 void glfDraw3DSolidStringF(int font_descriptor, char *s);
00099 
00100 /* Text control functions */
00101 void glfGetStringBoundsF(int fd, char *s, float *minx, float *miny, float *maxx, float *maxy);
00102 void glfGetStringBounds(char *s, float *minx, float *miny, float *maxx, float *maxy);
00103 
00104 void  glfSetSymbolSpace(float sp);   /* Set space between symbols */
00105 float glfGetSymbolSpace();           /* Get space between symbols */
00106 void  glfSetSpaceSize(float sp);     /* Set space size            */
00107 float glfGetSpaceSize();             /* Get current space size    */
00108 
00109 void  glfSetSymbolDepth(float dpth); /* Set depth of 3D symbol */
00110 float glfGetSymbolDepth();           /* Get depth of 3D symbol */
00111 
00112 int   glfSetCurrentFont(int Font_Descriptor);           /* Set current font */
00113 int   glfSetCurrentBMFFont(int Font_Descriptor);        /* Set current bitmap font */
00114 int   glfGetCurrentFont();                                                      /* Get current font descriptor */
00115 int   glfGetCurrentBMFFont();                           /* Get current bitmap font descriptor */
00116 
00117 void  glfSetAnchorPoint(int anchp); /* Set symbol anchor point */
00118 void  glfSetContourColor(float r, float g, float b, float a); /* Contour color */
00119 
00120 /* Enable or Disable GLF features */
00121 
00122 void glfEnable(int what); /* Enable GLF feature 'what' */
00123 void glfDisable(int what); /* Disable GLF feature 'what' */
00124 
00125 /* Console functions */
00126 void glfSetConsoleParam(int width, int height);
00127 int  glfSetConsoleFont(int Font_Descriptor);
00128 void glfConsoleClear();
00129 void glfPrint(char *s, int lenght);
00130 void glfPrintString(char *s);
00131 void glfPrintChar(char s);
00132 
00133 void glfConsoleDraw();
00134 void glfSetCursorBlinkRate(int Rate);
00135 
00136 /* -------- Centering and direction ------------ */
00137 void glfStringCentering(GLboolean center); /* Set string centering for vector fonts */
00138 GLboolean glfGetStringCentering(); /* Get string centering for vector fonts */
00139 
00140 void glfBitmapStringCentering(GLboolean center);  /* Set string centering for bitmap fonts */
00141 GLboolean glfBitmapGetStringCentering();  /* Set string centering for bitmap fonts */
00142 
00143 /* String direction for vector font (GLF_LEFT, GLF_RIGHT, GLF_UP, GLF_DOWN) */
00144 /* GLF_LEFT by default */
00145 void glfStringDirection(GLuint direction);
00146 GLuint glfGetStringDirection();
00147 
00148 /* -------- Rotating ------------ */
00149 void glfSetRotateAngle(float angle); /* Set rotate angle for vector fonts */
00150 void glfSetBRotateAngle(float angle); /* Set rotate angle for bitmap fonts */
00151 
00152 
00153 
00154 #ifdef __cplusplus
00155 }
00156 #endif
00157 
00158 #endif

Generated on Sat Mar 14 22:40:06 2009 for loon by doxygen 1.3.5