OpenSceneGraph 2.8.3
|
Classes | |
struct | AutoTransformCache |
Public Types | |
enum | CharacterSizeMode { OBJECT_COORDS, SCREEN_COORDS, OBJECT_COORDS_WITH_MAXIMUM_SCREEN_SIZE_CAPPED_BY_FONT_HEIGHT } |
enum | AlignmentType { LEFT_TOP, LEFT_CENTER, LEFT_BOTTOM, CENTER_TOP, CENTER_CENTER, CENTER_BOTTOM, RIGHT_TOP, RIGHT_CENTER, RIGHT_BOTTOM, LEFT_BASE_LINE, CENTER_BASE_LINE, RIGHT_BASE_LINE, LEFT_BOTTOM_BASE_LINE, CENTER_BOTTOM_BASE_LINE, RIGHT_BOTTOM_BASE_LINE, BASE_LINE = LEFT_BASE_LINE } |
enum | AxisAlignment { XY_PLANE, REVERSED_XY_PLANE, XZ_PLANE, REVERSED_XZ_PLANE, YZ_PLANE, REVERSED_YZ_PLANE, SCREEN, USER_DEFINED_ROTATION } |
enum | Layout { LEFT_TO_RIGHT, RIGHT_TO_LEFT, VERTICAL } |
enum | DrawModeMask { TEXT = 1, BOUNDINGBOX = 2, ALIGNMENT = 4 } |
Public Member Functions | |
TextBase () | |
TextBase (const TextBase &text, const osg::CopyOp ©op=osg::CopyOp::SHALLOW_COPY) | |
virtual bool | isSameKindAs (const osg::Object *obj) const |
virtual const char * | className () const |
return the name of the object's class type. | |
virtual const char * | libraryName () const |
return the name of the object's library. | |
void | setFontResolution (unsigned int width, unsigned int height) |
Set the Font reference width and height resolution in texels. | |
unsigned int | getFontWidth () const |
unsigned int | getFontHeight () const |
void | setText (const String &text) |
Set the text using a osgText::String. | |
void | setText (const std::string &text) |
Set the text using a std::string, which is converted to an internal TextString. | |
void | setText (const std::string &text, String::Encoding encoding) |
Set the text using a Unicode encoded std::string, which is converted to an internal TextString. | |
void | setText (const wchar_t *text) |
Set the text using a wchar_t string, which is converted to an internal TextString. | |
String & | getText () |
Get the text string. | |
const String & | getText () const |
Get the const text string. | |
void | update () |
update internal glyph respresentation used for rendering, and bounding volume. | |
void | setCharacterSize (float height, float aspectRatio=1.0f) |
Set the rendered character size in object coordinates. | |
float | getCharacterHeight () const |
float | getCharacterAspectRatio () const |
void | setCharacterSizeMode (CharacterSizeMode mode) |
Set how the CharacterSize value relates to the final rendered character. | |
CharacterSizeMode | getCharacterSizeMode () const |
Get the CharacterSizeMode. | |
void | setMaximumWidth (float maximumWidth) |
Set the maximum width of the text box. | |
float | getMaximumWidth () const |
Get the maximim width of the text box. | |
void | setMaximumHeight (float maximumHeight) |
Set the maximum height of the text box. | |
float | getMaximumHeight () const |
Get the maximum height of the text box. | |
void | setLineSpacing (float lineSpacing) |
Set the line spacing of the text box, given as a percentage of the character height. | |
float | getLineSpacing () const |
Get the line spacing of the text box. | |
void | setPosition (const osg::Vec3 &pos) |
Set the position of text. | |
const osg::Vec3 & | getPosition () const |
Get the position of text. | |
void | setAlignment (AlignmentType alignment) |
AlignmentType | getAlignment () const |
void | setAxisAlignment (AxisAlignment axis) |
AxisAlignment | getAxisAlignment () const |
void | setRotation (const osg::Quat &quat) |
const osg::Quat & | getRotation () const |
void | setAutoRotateToScreen (bool autoRotateToScreen) |
bool | getAutoRotateToScreen () const |
void | setLayout (Layout layout) |
Layout | getLayout () const |
void | setDrawMode (unsigned int mode) |
unsigned int | getDrawMode () const |
void | setKerningType (KerningType kerningType) |
KerningType | getKerningType () const |
unsigned int | getLineCount () const |
Get the number of wrapped lines - only valid after computeGlyphRepresentation() has been called, returns 0 otherwise. | |
virtual void | setThreadSafeRefUnref (bool threadSafe) |
Set whether to use a mutex to ensure ref() and unref() are thread safe. | |
virtual void | resizeGLObjectBuffers (unsigned int maxSize) |
Resize any per context GLObject buffers to specified size. | |
virtual void | releaseGLObjects (osg::State *state=0) const |
If State is non-zero, this function releases OpenGL objects for the specified graphics context. | |
virtual osg::BoundingBox | computeBound () const |
Compute the bounding box around Drawables's geometry. | |
Protected Member Functions | |
virtual | ~TextBase () |
void | positionCursor (const osg::Vec2 &endOfLine_coords, osg::Vec2 &cursor, unsigned int linelength) |
void | computePositions () |
String::iterator | computeLastCharacterOnLine (osg::Vec2 &cursor, String::iterator first, String::iterator last) |
virtual void | computePositions (unsigned int contextID) const =0 |
virtual void | computeGlyphRepresentation ()=0 |
Protected Attributes | |
FontResolution | _fontSize |
float | _characterHeight |
float | _characterAspectRatio |
CharacterSizeMode | _characterSizeMode |
float | _maximumWidth |
float | _maximumHeight |
float | _lineSpacing |
String | _text |
osg::Vec3 | _position |
AlignmentType | _alignment |
AxisAlignment | _axisAlignment |
osg::Quat | _rotation |
bool | _autoRotateToScreen |
Layout | _layout |
unsigned int | _drawMode |
KerningType | _kerningType |
unsigned int | _lineCount |
osg::buffered_object < AutoTransformCache > | _autoTransformCache |
osg::Vec3 | _offset |
osg::Vec3 | _normal |
osg::BoundingBox | _textBB |
osgText::TextBase::TextBase | ( | ) |
osgText::TextBase::TextBase | ( | const TextBase & | text, |
const osg::CopyOp & | copyop = osg::CopyOp::SHALLOW_COPY |
||
) |
virtual osgText::TextBase::~TextBase | ( | ) | [protected, virtual] |
virtual const char* osgText::TextBase::className | ( | ) | const [inline, virtual] |
return the name of the object's class type.
Must be defined by derived classes.
Reimplemented from osg::Drawable.
Reimplemented in osgText::Text.
virtual osg::BoundingBox osgText::TextBase::computeBound | ( | ) | const [virtual] |
Compute the bounding box around Drawables's geometry.
Reimplemented from osg::Drawable.
Reimplemented in osgText::Text3D.
virtual void osgText::TextBase::computeGlyphRepresentation | ( | ) | [protected, pure virtual] |
Implemented in osgText::Text, and osgText::Text3D.
String::iterator osgText::TextBase::computeLastCharacterOnLine | ( | osg::Vec2 & | cursor, |
String::iterator | first, | ||
String::iterator | last | ||
) | [protected] |
Reimplemented in osgText::Text, and osgText::Text3D.
void osgText::TextBase::computePositions | ( | ) | [protected] |
virtual void osgText::TextBase::computePositions | ( | unsigned int | contextID | ) | const [protected, pure virtual] |
Implemented in osgText::Text, and osgText::Text3D.
AlignmentType osgText::TextBase::getAlignment | ( | ) | const [inline] |
bool osgText::TextBase::getAutoRotateToScreen | ( | ) | const [inline] |
AxisAlignment osgText::TextBase::getAxisAlignment | ( | ) | const [inline] |
float osgText::TextBase::getCharacterAspectRatio | ( | ) | const [inline] |
float osgText::TextBase::getCharacterHeight | ( | ) | const [inline] |
CharacterSizeMode osgText::TextBase::getCharacterSizeMode | ( | ) | const [inline] |
Get the CharacterSizeMode.
unsigned int osgText::TextBase::getDrawMode | ( | ) | const [inline] |
unsigned int osgText::TextBase::getFontHeight | ( | ) | const [inline] |
unsigned int osgText::TextBase::getFontWidth | ( | ) | const [inline] |
KerningType osgText::TextBase::getKerningType | ( | ) | const [inline] |
Layout osgText::TextBase::getLayout | ( | ) | const [inline] |
unsigned int osgText::TextBase::getLineCount | ( | ) | const [inline] |
Get the number of wrapped lines - only valid after computeGlyphRepresentation() has been called, returns 0 otherwise.
float osgText::TextBase::getLineSpacing | ( | ) | const [inline] |
Get the line spacing of the text box.
float osgText::TextBase::getMaximumHeight | ( | ) | const [inline] |
Get the maximum height of the text box.
float osgText::TextBase::getMaximumWidth | ( | ) | const [inline] |
Get the maximim width of the text box.
const osg::Vec3& osgText::TextBase::getPosition | ( | ) | const [inline] |
Get the position of text.
const osg::Quat& osgText::TextBase::getRotation | ( | ) | const [inline] |
const String& osgText::TextBase::getText | ( | ) | const [inline] |
Get the const text string.
String& osgText::TextBase::getText | ( | ) | [inline] |
Get the text string.
Note, if you modify the string you must call Text::update() for the internal glyph reprentation to be updated.
virtual bool osgText::TextBase::isSameKindAs | ( | const osg::Object * | obj | ) | const [inline, virtual] |
virtual const char* osgText::TextBase::libraryName | ( | ) | const [inline, virtual] |
return the name of the object's library.
Must be defined by derived classes. The OpenSceneGraph convention is that the namespace of a library is the same as the library name.
Reimplemented from osg::Drawable.
Reimplemented in osgText::Text.
void osgText::TextBase::positionCursor | ( | const osg::Vec2 & | endOfLine_coords, |
osg::Vec2 & | cursor, | ||
unsigned int | linelength | ||
) | [protected] |
virtual void osgText::TextBase::releaseGLObjects | ( | osg::State * | state = 0 | ) | const [virtual] |
If State is non-zero, this function releases OpenGL objects for the specified graphics context.
Otherwise, releases OpenGL objexts for all graphics contexts.
Reimplemented from osg::Drawable.
Reimplemented in osgText::Text, and osgText::Text3D.
virtual void osgText::TextBase::resizeGLObjectBuffers | ( | unsigned int | maxSize | ) | [virtual] |
Resize any per context GLObject buffers to specified size.
Reimplemented from osg::Drawable.
Reimplemented in osgText::Text, and osgText::Text3D.
void osgText::TextBase::setAlignment | ( | AlignmentType | alignment | ) |
void osgText::TextBase::setAutoRotateToScreen | ( | bool | autoRotateToScreen | ) |
void osgText::TextBase::setAxisAlignment | ( | AxisAlignment | axis | ) |
void osgText::TextBase::setCharacterSize | ( | float | height, |
float | aspectRatio = 1.0f |
||
) |
Set the rendered character size in object coordinates.
void osgText::TextBase::setCharacterSizeMode | ( | CharacterSizeMode | mode | ) | [inline] |
Set how the CharacterSize value relates to the final rendered character.
void osgText::TextBase::setDrawMode | ( | unsigned int | mode | ) |
void osgText::TextBase::setFontResolution | ( | unsigned int | width, |
unsigned int | height | ||
) |
Set the Font reference width and height resolution in texels.
Note, the size may not be supported by current font, the closest supported font size will be selected.
void osgText::TextBase::setKerningType | ( | KerningType | kerningType | ) | [inline] |
void osgText::TextBase::setLayout | ( | Layout | layout | ) |
void osgText::TextBase::setLineSpacing | ( | float | lineSpacing | ) |
Set the line spacing of the text box, given as a percentage of the character height.
The default value is 0 for backward compatibility. For longer paragraphs of text, a value of at least 25% (i.e. set line spacing to 0.25) is recommended.
void osgText::TextBase::setMaximumHeight | ( | float | maximumHeight | ) |
Set the maximum height of the text box.
With horizontal layouts any characters which do not fit are wrapped around. 0 or negative values indicate that no maximum height is set, lines can be as long as they need be to fit the required text
void osgText::TextBase::setMaximumWidth | ( | float | maximumWidth | ) |
Set the maximum width of the text box.
With horizontal layouts any characters which do not fit are wrapped around. 0 or negative values indicate that no maximum width is set, lines can be as long as they need be to fit thre required text
void osgText::TextBase::setPosition | ( | const osg::Vec3 & | pos | ) |
Set the position of text.
void osgText::TextBase::setRotation | ( | const osg::Quat & | quat | ) |
void osgText::TextBase::setText | ( | const String & | text | ) |
Set the text using a osgText::String.
void osgText::TextBase::setText | ( | const std::string & | text, |
String::Encoding | encoding | ||
) |
Set the text using a Unicode encoded std::string, which is converted to an internal TextString.
The encoding parameter specificies which Unicode encodeding is used in the std::string.
void osgText::TextBase::setText | ( | const wchar_t * | text | ) |
Set the text using a wchar_t string, which is converted to an internal TextString.
void osgText::TextBase::setText | ( | const std::string & | text | ) |
Set the text using a std::string, which is converted to an internal TextString.
virtual void osgText::TextBase::setThreadSafeRefUnref | ( | bool | threadSafe | ) | [virtual] |
Set whether to use a mutex to ensure ref() and unref() are thread safe.
Reimplemented from osg::Drawable.
Reimplemented in osgText::Text, and osgText::Text3D.
void osgText::TextBase::update | ( | ) | [inline] |
update internal glyph respresentation used for rendering, and bounding volume.
AlignmentType osgText::TextBase::_alignment [protected] |
bool osgText::TextBase::_autoRotateToScreen [protected] |
osg::buffered_object<AutoTransformCache> osgText::TextBase::_autoTransformCache [mutable, protected] |
AxisAlignment osgText::TextBase::_axisAlignment [protected] |
float osgText::TextBase::_characterAspectRatio [protected] |
float osgText::TextBase::_characterHeight [protected] |
unsigned int osgText::TextBase::_drawMode [protected] |
FontResolution osgText::TextBase::_fontSize [protected] |
KerningType osgText::TextBase::_kerningType [protected] |
Layout osgText::TextBase::_layout [protected] |
unsigned int osgText::TextBase::_lineCount [protected] |
float osgText::TextBase::_lineSpacing [protected] |
float osgText::TextBase::_maximumHeight [protected] |
float osgText::TextBase::_maximumWidth [protected] |
osg::Vec3 osgText::TextBase::_normal [mutable, protected] |
osg::Vec3 osgText::TextBase::_offset [mutable, protected] |
osg::Vec3 osgText::TextBase::_position [protected] |
osg::Quat osgText::TextBase::_rotation [protected] |
String osgText::TextBase::_text [protected] |
osg::BoundingBox osgText::TextBase::_textBB [mutable, protected] |
![]() | Generated at Tue Mar 22 2011 13:20:29 for the OpenSceneGraph by doxygen 1.7.3. |