Main Page Namespace List Class Hierarchy Compound List File List Namespace Members Compound Members
OGLFT::Filled Class Reference
Render text as a filled polygons.
More...
#include <OGLFT.h>
Inheritance diagram for OGLFT::Filled::
List of all members.
Public Methods |
| Filled (const char *filename, float point_size=12, FT_UInt resolution=100) |
| Filled (FT_Face face, float point_size=12, FT_UInt resolution=100) |
virtual | ~Filled (void) |
VertexInfoList& | extraVertices (void) |
Protected Methods |
void | renderGlyph (FT_Face face, FT_UInt glyph_index) |
| Each style implements its own glyph rendering routine. -
Parameters:
-
face
|
the FT_Face containing the glyph. |
glyph_index
|
the index of the glyph in face. |
|
Protected Attributes |
GLfloat | depth_offset_ |
| Offset the glyph in the Z direction. Solely for the Solid subclass. Until I can figure out how to shift the glyph outside the context of this class, I guess this has got to stay (but it is redundant to extrusion_.depth_).
|
Detailed Description
Render text as a filled polygons.
Each glyph is drawn as a filled polygon. The contours are extracted from the font file through FreeType. FreeType is used to scale the contours to the given size. Then the GLU tessellation routines are used to tessellate the contours into polygons (well, triangles). By default, these are drawn in GL_FILL polygon mode, but any other polygon mode can be specified.
Usually, the polygons are drawn only in the foreground color, however, you may supply ColorTess and TextureTess objects which can alter the color or texture coordinates of each vertex individually. You can also use the per-glyph display list functionality to alter the attributes of each glyph.
The only complexity to this style is selecting the point size. Since the glyphs are drawn as polygons, they are subject to the viewing and modeling transformations. The point size is nominally chosen to be the same as a raster image generated at the given resolution. Some experimentation with point size and resolution may be necessary to achieve the desired results.
Constructor & Destructor Documentation
OGLFT::Filled::Filled (
|
const char * filename,
|
|
float point_size = 12,
|
|
FT_UInt resolution = 100 )
|
|
|
-
Parameters:
-
file
|
the filename which contains the font face. |
point_size
|
the initial point size of the font to generate. A point is essentially 1/72th of an inch. Defaults to 12. |
resolution
|
the pixel density of the display in dots per inch (DPI). Defaults to 100 DPI. |
|
OGLFT::Filled::Filled (
|
FT_Face face,
|
|
float point_size = 12,
|
|
FT_UInt resolution = 100 )
|
|
|
-
Parameters:
-
face
|
open FreeType FT_Face. |
point_size
|
the initial point size of the font to generate. A point is essentially 1/72th of an inch. Defaults to 12. |
resolution
|
the pixel density of the display in dots per inch (DPI). Defaults to 100 DPI. |
|
OGLFT::Filled::~Filled (
|
void ) [virtual]
|
|
|
The destructor deletes the GLU tessellation object allocated in in the constructor. |
Member Function Documentation
|
-
Returns:
-
the list of extra vertices created by the GLU tessellation combine callback.
|
The documentation for this class was generated from the following files:
Generated at Fri Jul 12 10:47:15 2002 for OGLFT by
1.2.8.1 written by Dimitri van Heesch,
© 1997-2001