soglyph(3)

NAME

SoGlyph

SYNOPSIS

#include <Inventor/misc/SoGlyph.h>

Detailed Description

The SoGlyph class is used to generate and reuse font glyph bitmaps and outlines.

This class is now obsolete, and will be removed from a later version of Coin.

SoGlyph is the public interface all text nodes (both built-in and extensions) should use to generate bitmaps and outlines for font
glyphs. It maintains an internal cache of previously requested glyphs
to avoid needless calls into the font library.

Primer: a glyph is the graphical representation of a given character of a given font at a given size and orientation. It can be either a bitmap (pixel aligned with the viewport) or an outline (polygonal representation) that can be transformed or extruded like any other 3D
geometry. Bitmaps are used by SoText2, while the other text nodes uses outlines.

Be aware that this class is an extension for Coin, and it is not
available in the original SGI Open Inventor v2.1 API.

Since:
Coin 2.0
See also:
SoText2, SoText3, SoAsciiText
Public Types
enum Fonttype { FONT2D = 1, FONT3D = 2 }
Public Member Functions
void unref (void) const
const SbVec2f * getCoords (void) const const int * getFaceIndices (void) const
const int * getEdgeIndices (void) const
const int * getNextCWEdge (const int edgeidx) const const int * getNextCCWEdge (const int edgeidx) const float getWidth (void) const
const SbBox2f & getBoundingBox (void) const SbVec2s getAdvance (void) const
SbVec2s getKerning (const SoGlyph &rightglyph) const unsigned char * getBitmap (SbVec2s &size, SbVec2s &pos, const SbBool
antialiased) const
Static Public Member Functions
static const SoGlyph * getGlyph (const char character, const SbName
&font)
static const SoGlyph * getGlyph (SoState *state, const unsigned int
character, const SbVec2s &size, const float angle)
Protected Member Functions
SoGlyph (void)
~SoGlyph ()
void setCoords (SbVec2f *coords, int numcoords=-1) void setFaceIndices (int *indices, int numindices=-1) void setEdgeIndices (int *indices, int numindices=-1)
Friends
class SoGlyphP

Constructor & Destructor Documentation

SoGlyph::SoGlyph (void) [protected]
Constructor.
Referenced by getGlyph().
SoGlyph::~SoGlyph () [protected]
Destructor.

Member Function Documentation

void SoGlyph::unref (void) const
Should be called when a node no longer will use a glyph. Will free
memory used by this glyph when it is no longer used by any node.
const SoGlyph * SoGlyph::getGlyph (const char character, const SbName &
font) [static]
Returns a character of the specified font, suitable for polygonal
rendering.
References SbList< Type >::append(), SbList< Type >::getLength(),
setCoords(), setEdgeIndices(), and setFaceIndices().
const SbVec2f * SoGlyph::getCoords (void) const
Returns coordinates for this glyph.
const int * SoGlyph::getFaceIndices (void) const
Returns face indices for this glyph.
const int * SoGlyph::getEdgeIndices (void) const
Returns edge indices for this glyph.
const int * SoGlyph::getNextCWEdge (const int edgeidx) const
Returns a pointer to the next clockwise edge. Returns NULL if none
could be found.
const int * SoGlyph::getNextCCWEdge (const int edgeidx) const
Returns a pointer to the next counter clockwise edge. NULL if none
could be found.
float SoGlyph::getWidth (void) const
Convenience method which returns the exact width of the glyph.
References getBoundingBox(), SbBox2f::getMax(), and SbBox2f::getMin().
const SbBox2f & SoGlyph::getBoundingBox (void) const
Returns the bounding box of this glyph. This value is cached for
performance.
Referenced by getWidth().
const SoGlyph * SoGlyph::getGlyph (SoState * state, const unsigned int
character, const SbVec2s & size, const float angle) [static] Returns a character of the specified font, suitable for bitmap
rendering. The size parameter overrides state's SoFontSizeElement (if
!= SbVec2s(0,0))
References SbList< Type >::append(), SbList< Type >::getLength(),
SbString::getString(), SbName::getString(), and SoGlyph().
unsigned char * SoGlyph::getBitmap (SbVec2s & size, SbVec2s & pos, const
SbBool antialiased) const Bitmap for glyph. size and pos are return parameters. Antialiased bitmap graphics not yet supported.
Note that this function may return NULL if the glyph has no visible
pixels (as for e.g. the space character).
The returned buffer should not be deallocated by the caller.
void SoGlyph::setCoords (SbVec2f * coords, int numcoords = -1) [protected]
Sets the coordinates for this glyph.
Referenced by getGlyph().
void SoGlyph::setFaceIndices (int * indices, int numindices = -1)
[protected]
Sets the face indices for this glyph.
Referenced by getGlyph().
void SoGlyph::setEdgeIndices (int * indices, int numindices = -1)
[protected]
Sets the edge indices for this glyph.
Referenced by getGlyph().

Author

Generated automatically by Doxygen for Coin from the source code.
Copyright © 2010-2025 Platon Technologies, s.r.o.           Home | Man pages | tLDP | Documents | Utilities | About
Design by styleshout