<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/> <title>OpenSceneGraph: osgText::Font3D Class Reference</title> <link href="tabs.css" rel="stylesheet" type="text/css"/> <link href="doxygen.css" rel="stylesheet" type="text/css"/> </head> <body> <!-- Generated by Doxygen 1.7.4 --> <div id="top"> <div id="titlearea"> <table cellspacing="0" cellpadding="0"> <tbody> <tr style="height: 56px;"> <td style="padding-left: 0.5em;"> <div id="projectname">OpenSceneGraph <span id="projectnumber">2.8.4</span></div> </td> </tr> </tbody> </table> </div> <div id="navrow1" class="tabs"> <ul class="tablist"> <li><a href="index.html"><span>Main Page</span></a></li> <li><a href="pages.html"><span>Related Pages</span></a></li> <li><a href="namespaces.html"><span>Namespaces</span></a></li> <li class="current"><a href="annotated.html"><span>Classes</span></a></li> <li><a href="files.html"><span>Files</span></a></li> <li><a href="dirs.html"><span>Directories</span></a></li> </ul> </div> <div id="navrow2" class="tabs2"> <ul class="tablist"> <li><a href="annotated.html"><span>Class List</span></a></li> <li><a href="classes.html"><span>Class Index</span></a></li> <li><a href="inherits.html"><span>Class Hierarchy</span></a></li> <li><a href="functions.html"><span>Class Members</span></a></li> </ul> </div> <div id="nav-path" class="navpath"> <ul> <li class="navelem"><a class="el" href="a01639.html">osgText</a> </li> <li class="navelem"><a class="el" href="a00298.html">Font3D</a> </li> </ul> </div> </div> <div class="header"> <div class="summary"> <a href="#nested-classes">Classes</a> | <a href="#pub-types">Public Types</a> | <a href="#pub-methods">Public Member Functions</a> | <a href="#pro-types">Protected Types</a> | <a href="#pro-methods">Protected Member Functions</a> | <a href="#pro-attribs">Protected Attributes</a> | <a href="#friends">Friends</a> </div> <div class="headertitle"> <div class="title">osgText::Font3D Class Reference</div> </div> </div> <div class="contents"> <!-- doxytag: class="osgText::Font3D" --><!-- doxytag: inherits="osg::Object" --> <p>Pure virtual base class for fonts. <a href="a00298.html#details">More...</a></p> <div class="dynheader"> Inheritance diagram for osgText::Font3D:</div> <div class="dyncontent"> <div class="center"><img src="a03302.png" border="0" usemap="#osgText_1_1Font3D_inherit__map" alt="Inheritance graph"/></div> <map name="osgText_1_1Font3D_inherit__map" id="osgText_1_1Font3D_inherit__map"> <area shape="rect" id="node2" href="a00500.html" title="Base class/standard interface for objects which require IO support, cloning and reference counting..." alt="" coords="21,83,123,112"/><area shape="rect" id="node4" href="a00627.html" title="Base class from providing referencing counted objects." alt="" coords="5,5,139,35"/></map> <center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div> <p><a href="a03303.html">List of all members.</a></p> <table class="memberdecls"> <tr><td colspan="2"><h2><a name="nested-classes"></a> Classes</h2></td></tr> <tr><td class="memItemLeft" align="right" valign="top">class  </td><td class="memItemRight" valign="bottom"><a class="el" href="a00299.html">Font3DImplementation</a></td></tr> <tr><td class="memItemLeft" align="right" valign="top">class  </td><td class="memItemRight" valign="bottom"><a class="el" href="a00324.html">Glyph3D</a></td></tr> <tr><td colspan="2"><h2><a name="pub-types"></a> Public Types</h2></td></tr> <tr><td class="memItemLeft" align="right" valign="top">typedef OpenThreads::Mutex </td><td class="memItemRight" valign="bottom"><a class="el" href="a00298.html#afb4b2508f4b64d222d05f5aef762a4dd">Font3DMutex</a></td></tr> <tr><td colspan="2"><h2><a name="pub-methods"></a> Public Member Functions</h2></td></tr> <tr><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="a00298.html#ad3cabfbb12d9b554be975544a9159259">Font3D</a> (<a class="el" href="a00299.html">Font3DImplementation</a> *implementation=0)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="a00500.html">osg::Object</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="a00298.html#a5a561e10fd5469abb5674ee666f6ce42">cloneType</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Clone the type of an object, with Object* return type. <a href="#a5a561e10fd5469abb5674ee666f6ce42"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="a00500.html">osg::Object</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="a00298.html#a1828b57071a5c6bf546db3549848df5c">clone</a> (const <a class="el" href="a00169.html">osg::CopyOp</a> &) const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Clone an object, with Object* return type. <a href="#a1828b57071a5c6bf546db3549848df5c"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">virtual bool </td><td class="memItemRight" valign="bottom"><a class="el" href="a00298.html#ae944421ac5148c3700052d12e3a9922f">isSameKindAs</a> (const <a class="el" href="a00500.html">osg::Object</a> *obj) const </td></tr> <tr><td class="memItemLeft" align="right" valign="top">virtual const char * </td><td class="memItemRight" valign="bottom"><a class="el" href="a00298.html#aff5b8120831083321f809230c95ecebe">className</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">return the name of the object's class type. <a href="#aff5b8120831083321f809230c95ecebe"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">virtual const char * </td><td class="memItemRight" valign="bottom"><a class="el" href="a00298.html#af12f7b7e3da72db52a7e8321ca9894b4">libraryName</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">return the name of the object's library. <a href="#af12f7b7e3da72db52a7e8321ca9894b4"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">virtual std::string </td><td class="memItemRight" valign="bottom"><a class="el" href="a00298.html#a5b4ba3d66fb9da20c7ba32b342af8ac1">getFileName</a> () const </td></tr> <tr><td class="memItemLeft" align="right" valign="top">unsigned int </td><td class="memItemRight" valign="bottom"><a class="el" href="a00298.html#abcf4923ec218edd47cce65a1e803510c">getFontWidth</a> () const </td></tr> <tr><td class="memItemLeft" align="right" valign="top">unsigned int </td><td class="memItemRight" valign="bottom"><a class="el" href="a00298.html#a90b0019b8153aa8a6f58d1d115beeb63">getFontHeight</a> () const </td></tr> <tr><td class="memItemLeft" align="right" valign="top">unsigned int </td><td class="memItemRight" valign="bottom"><a class="el" href="a00298.html#adf3cf109ba06ab388a9efebf92e7cb72">getFontDepth</a> () const </td></tr> <tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="a01062.html">osg::Vec2</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="a00298.html#a009979a0b47286656c762446ded5b9ca">getKerning</a> (unsigned int leftcharcode, unsigned int rightcharcode, <a class="el" href="a01639.html#a92859cb5d7d316eb6d2b6ac2f5cdf9c1">KerningType</a> kerningType)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get a kerning (adjustment of spacing of two adjacent character) for specified charcodes, w.r.t the current font size hint. <a href="#a009979a0b47286656c762446ded5b9ca"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="a00324.html">Glyph3D</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="a00298.html#a8e9462f525e6e0d3ac102ee42b3fc6ec">getGlyph</a> (unsigned int charcode)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get a Glyph for specified charcode, and the font size nearest to the current font size hint. <a href="#a8e9462f525e6e0d3ac102ee42b3fc6ec"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">virtual bool </td><td class="memItemRight" valign="bottom"><a class="el" href="a00298.html#a6af051f70c89eceb10c235cf79956218">hasVertical</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Return true if this font provides vertical alignments and spacing or glyphs. <a href="#a6af051f70c89eceb10c235cf79956218"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">virtual float </td><td class="memItemRight" valign="bottom"><a class="el" href="a00298.html#a70b19f103b5c926ff2fb38c92212c266">getScale</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Return the scale to apply on the glyph to have a charactere size equal to 1. <a href="#a70b19f103b5c926ff2fb38c92212c266"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00298.html#a01b0c8ba0ad156cc6060081ddb2c1f87">setImplementation</a> (<a class="el" href="a00299.html">Font3DImplementation</a> *implementation)</td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00299.html">Font3DImplementation</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="a00298.html#ad2fb9eae3dd8d4e5b23a05b0423527bc">getImplementation</a> ()</td></tr> <tr><td class="memItemLeft" align="right" valign="top">const <a class="el" href="a00299.html">Font3DImplementation</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="a00298.html#a9c3fca05a5ee59fd3fd0b12ede939014">getImplementation</a> () const </td></tr> <tr><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00298.html#aba73febf97187253b94312887d5766d6">setThreadSafeRefUnref</a> (bool threadSafe)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Set whether to use a mutex to ensure <a class="el" href="a00627.html#acafcbbae9e9d8bfcbc811cc6c36d1cf4" title="Increment the reference count by one, indicating that this object has another pointer which is refere...">ref()</a> and <a class="el" href="a00627.html#a0ee3c1293cceac54bfaabe7c541bcb68" title="Decrement the reference count by one, indicating that a pointer to this object is referencing it...">unref()</a> <a href="#aba73febf97187253b94312887d5766d6"></a><br/></td></tr> <tr><td colspan="2"><h2><a name="pro-types"></a> Protected Types</h2></td></tr> <tr><td class="memItemLeft" align="right" valign="top">typedef std::map< char, <br class="typebreak"/> <a class="el" href="a00624.html">osg::ref_ptr</a>< <a class="el" href="a00324.html">Glyph3D</a> > > </td><td class="memItemRight" valign="bottom"><a class="el" href="a00298.html#a5eb34529faf6b58aef3a04f55e29f564">Glyph3DMap</a></td></tr> <tr><td colspan="2"><h2><a name="pro-methods"></a> Protected Member Functions</h2></td></tr> <tr><td class="memItemLeft" align="right" valign="top">virtual </td><td class="memItemRight" valign="bottom"><a class="el" href="a00298.html#a7ee696da9ae9954ef94c708b591916ac">~Font3D</a> ()</td></tr> <tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00298.html#aa671ef49c89c0822d5f7e3efc2c27cec">addGlyph</a> (unsigned int charcode, <a class="el" href="a00324.html">Glyph3D</a> *glyph)</td></tr> <tr><td colspan="2"><h2><a name="pro-attribs"></a> Protected Attributes</h2></td></tr> <tr><td class="memItemLeft" align="right" valign="top">unsigned int </td><td class="memItemRight" valign="bottom"><a class="el" href="a00298.html#acf4bd800b1620cb4cccfd25c8943a98f">_depth</a></td></tr> <tr><td class="memItemLeft" align="right" valign="top">unsigned int </td><td class="memItemRight" valign="bottom"><a class="el" href="a00298.html#a8d2cb9622162e232e424d595c124168b">_width</a></td></tr> <tr><td class="memItemLeft" align="right" valign="top">unsigned int </td><td class="memItemRight" valign="bottom"><a class="el" href="a00298.html#a08a06bd22e1328c593dd1ebdaed21372">_height</a></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00298.html#a5eb34529faf6b58aef3a04f55e29f564">Glyph3DMap</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="a00298.html#a665d3d96646270bde4d52110d9a21dba">_glyph3DMap</a></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00624.html">osg::ref_ptr</a><br class="typebreak"/> < <a class="el" href="a00299.html">Font3DImplementation</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="a00298.html#a38c5af81780c5d7db90fbc789ec37dbe">_implementation</a></td></tr> <tr><td colspan="2"><h2><a name="friends"></a> Friends</h2></td></tr> <tr><td class="memItemLeft" align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="a00298.html#ac2372543566f55613eb72a18d13ee71e">Font3DImplementation</a></td></tr> </table> <hr/><a name="details" id="details"></a><h2>Detailed Description</h2> <div class="textblock"><p>Pure virtual base class for fonts. </p> <p>Concrete implementation are the DefaultFont found in src/osgText/DefaultFont.cpp and FreeTypeFont found in src/osgPlugins/freetype/FreeTypeFont.cpp </p> </div><hr/><h2>Member Typedef Documentation</h2> <a class="anchor" id="afb4b2508f4b64d222d05f5aef762a4dd"></a><!-- doxytag: member="osgText::Font3D::Font3DMutex" ref="afb4b2508f4b64d222d05f5aef762a4dd" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">typedef OpenThreads::Mutex <a class="el" href="a00298.html#afb4b2508f4b64d222d05f5aef762a4dd">osgText::Font3D::Font3DMutex</a></td> </tr> </table> </div> <div class="memdoc"> </div> </div> <a class="anchor" id="a5eb34529faf6b58aef3a04f55e29f564"></a><!-- doxytag: member="osgText::Font3D::Glyph3DMap" ref="a5eb34529faf6b58aef3a04f55e29f564" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">typedef std::map<char, <a class="el" href="a00624.html">osg::ref_ptr</a><<a class="el" href="a00324.html">Glyph3D</a>> > <a class="el" href="a00298.html#a5eb34529faf6b58aef3a04f55e29f564">osgText::Font3D::Glyph3DMap</a><code> [protected]</code></td> </tr> </table> </div> <div class="memdoc"> </div> </div> <hr/><h2>Constructor & Destructor Documentation</h2> <a class="anchor" id="ad3cabfbb12d9b554be975544a9159259"></a><!-- doxytag: member="osgText::Font3D::Font3D" ref="ad3cabfbb12d9b554be975544a9159259" args="(Font3DImplementation *implementation=0)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">osgText::Font3D::Font3D </td> <td>(</td> <td class="paramtype"><a class="el" href="a00299.html">Font3DImplementation</a> * </td> <td class="paramname"><em>implementation</em> = <code>0</code></td><td>)</td> <td></td> </tr> </table> </div> <div class="memdoc"> </div> </div> <a class="anchor" id="a7ee696da9ae9954ef94c708b591916ac"></a><!-- doxytag: member="osgText::Font3D::~Font3D" ref="a7ee696da9ae9954ef94c708b591916ac" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual osgText::Font3D::~Font3D </td> <td>(</td> <td class="paramname"></td><td>)</td> <td><code> [protected, virtual]</code></td> </tr> </table> </div> <div class="memdoc"> </div> </div> <hr/><h2>Member Function Documentation</h2> <a class="anchor" id="aa671ef49c89c0822d5f7e3efc2c27cec"></a><!-- doxytag: member="osgText::Font3D::addGlyph" ref="aa671ef49c89c0822d5f7e3efc2c27cec" args="(unsigned int charcode, Glyph3D *glyph)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void osgText::Font3D::addGlyph </td> <td>(</td> <td class="paramtype">unsigned int </td> <td class="paramname"><em>charcode</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="a00324.html">Glyph3D</a> * </td> <td class="paramname"><em>glyph</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td><code> [protected]</code></td> </tr> </table> </div> <div class="memdoc"> </div> </div> <a class="anchor" id="aff5b8120831083321f809230c95ecebe"></a><!-- doxytag: member="osgText::Font3D::className" ref="aff5b8120831083321f809230c95ecebe" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual const char* osgText::Font3D::className </td> <td>(</td> <td class="paramname"></td><td>)</td> <td> const<code> [inline, virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p>return the name of the object's class type. </p> <p>Must be defined by derived classes. </p> <p>Implements <a class="el" href="a00500.html#a0a2c199f26fdd9ca9fc60d6c79827187">osg::Object</a>.</p> </div> </div> <a class="anchor" id="a1828b57071a5c6bf546db3549848df5c"></a><!-- doxytag: member="osgText::Font3D::clone" ref="a1828b57071a5c6bf546db3549848df5c" args="(const osg::CopyOp &) const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual <a class="el" href="a00500.html">osg::Object</a>* osgText::Font3D::clone </td> <td>(</td> <td class="paramtype">const <a class="el" href="a00169.html">osg::CopyOp</a> & </td> <td class="paramname"></td><td>)</td> <td> const<code> [inline, virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Clone an object, with Object* return type. </p> <p>Must be defined by derived classes. </p> <p>Implements <a class="el" href="a00500.html#ac20abff68448b9fcd20ab59e5d7a0030">osg::Object</a>.</p> </div> </div> <a class="anchor" id="a5a561e10fd5469abb5674ee666f6ce42"></a><!-- doxytag: member="osgText::Font3D::cloneType" ref="a5a561e10fd5469abb5674ee666f6ce42" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual <a class="el" href="a00500.html">osg::Object</a>* osgText::Font3D::cloneType </td> <td>(</td> <td class="paramname"></td><td>)</td> <td> const<code> [inline, virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Clone the type of an object, with Object* return type. </p> <p>Must be defined by derived classes. </p> <p>Implements <a class="el" href="a00500.html#a837c584d77ae710bb5565f7895f80dbb">osg::Object</a>.</p> </div> </div> <a class="anchor" id="a5b4ba3d66fb9da20c7ba32b342af8ac1"></a><!-- doxytag: member="osgText::Font3D::getFileName" ref="a5b4ba3d66fb9da20c7ba32b342af8ac1" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual std::string osgText::Font3D::getFileName </td> <td>(</td> <td class="paramname"></td><td>)</td> <td> const<code> [virtual]</code></td> </tr> </table> </div> <div class="memdoc"> </div> </div> <a class="anchor" id="adf3cf109ba06ab388a9efebf92e7cb72"></a><!-- doxytag: member="osgText::Font3D::getFontDepth" ref="adf3cf109ba06ab388a9efebf92e7cb72" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">unsigned int osgText::Font3D::getFontDepth </td> <td>(</td> <td class="paramname"></td><td>)</td> <td> const<code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> </div> </div> <a class="anchor" id="a90b0019b8153aa8a6f58d1d115beeb63"></a><!-- doxytag: member="osgText::Font3D::getFontHeight" ref="a90b0019b8153aa8a6f58d1d115beeb63" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">unsigned int osgText::Font3D::getFontHeight </td> <td>(</td> <td class="paramname"></td><td>)</td> <td> const<code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> </div> </div> <a class="anchor" id="abcf4923ec218edd47cce65a1e803510c"></a><!-- doxytag: member="osgText::Font3D::getFontWidth" ref="abcf4923ec218edd47cce65a1e803510c" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">unsigned int osgText::Font3D::getFontWidth </td> <td>(</td> <td class="paramname"></td><td>)</td> <td> const<code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> </div> </div> <a class="anchor" id="a8e9462f525e6e0d3ac102ee42b3fc6ec"></a><!-- doxytag: member="osgText::Font3D::getGlyph" ref="a8e9462f525e6e0d3ac102ee42b3fc6ec" args="(unsigned int charcode)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual <a class="el" href="a00324.html">Glyph3D</a>* osgText::Font3D::getGlyph </td> <td>(</td> <td class="paramtype">unsigned int </td> <td class="paramname"><em>charcode</em></td><td>)</td> <td><code> [virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Get a Glyph for specified charcode, and the font size nearest to the current font size hint. </p> </div> </div> <a class="anchor" id="a9c3fca05a5ee59fd3fd0b12ede939014"></a><!-- doxytag: member="osgText::Font3D::getImplementation" ref="a9c3fca05a5ee59fd3fd0b12ede939014" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">const <a class="el" href="a00299.html">Font3DImplementation</a>* osgText::Font3D::getImplementation </td> <td>(</td> <td class="paramname"></td><td>)</td> <td> const</td> </tr> </table> </div> <div class="memdoc"> </div> </div> <a class="anchor" id="ad2fb9eae3dd8d4e5b23a05b0423527bc"></a><!-- doxytag: member="osgText::Font3D::getImplementation" ref="ad2fb9eae3dd8d4e5b23a05b0423527bc" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="a00299.html">Font3DImplementation</a>* osgText::Font3D::getImplementation </td> <td>(</td> <td class="paramname"></td><td>)</td> <td></td> </tr> </table> </div> <div class="memdoc"> </div> </div> <a class="anchor" id="a009979a0b47286656c762446ded5b9ca"></a><!-- doxytag: member="osgText::Font3D::getKerning" ref="a009979a0b47286656c762446ded5b9ca" args="(unsigned int leftcharcode, unsigned int rightcharcode, KerningType kerningType)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual <a class="el" href="a01062.html">osg::Vec2</a> osgText::Font3D::getKerning </td> <td>(</td> <td class="paramtype">unsigned int </td> <td class="paramname"><em>leftcharcode</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">unsigned int </td> <td class="paramname"><em>rightcharcode</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="a01639.html#a92859cb5d7d316eb6d2b6ac2f5cdf9c1">KerningType</a> </td> <td class="paramname"><em>kerningType</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td><code> [virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Get a kerning (adjustment of spacing of two adjacent character) for specified charcodes, w.r.t the current font size hint. </p> </div> </div> <a class="anchor" id="a70b19f103b5c926ff2fb38c92212c266"></a><!-- doxytag: member="osgText::Font3D::getScale" ref="a70b19f103b5c926ff2fb38c92212c266" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual float osgText::Font3D::getScale </td> <td>(</td> <td class="paramname"></td><td>)</td> <td> const<code> [inline, virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Return the scale to apply on the glyph to have a charactere size equal to 1. </p> </div> </div> <a class="anchor" id="a6af051f70c89eceb10c235cf79956218"></a><!-- doxytag: member="osgText::Font3D::hasVertical" ref="a6af051f70c89eceb10c235cf79956218" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual bool osgText::Font3D::hasVertical </td> <td>(</td> <td class="paramname"></td><td>)</td> <td> const<code> [virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Return true if this font provides vertical alignments and spacing or glyphs. </p> </div> </div> <a class="anchor" id="ae944421ac5148c3700052d12e3a9922f"></a><!-- doxytag: member="osgText::Font3D::isSameKindAs" ref="ae944421ac5148c3700052d12e3a9922f" args="(const osg::Object *obj) const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual bool osgText::Font3D::isSameKindAs </td> <td>(</td> <td class="paramtype">const <a class="el" href="a00500.html">osg::Object</a> * </td> <td class="paramname"><em>obj</em></td><td>)</td> <td> const<code> [inline, virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Reimplemented from <a class="el" href="a00500.html#ac3b05ac28940dda755014a821b699f3a">osg::Object</a>.</p> <p>References <a class="el" href="a01157.html#a070d2ce7b6bb7e5c05602aa8c308d0c4">NULL</a>.</p> </div> </div> <a class="anchor" id="af12f7b7e3da72db52a7e8321ca9894b4"></a><!-- doxytag: member="osgText::Font3D::libraryName" ref="af12f7b7e3da72db52a7e8321ca9894b4" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual const char* osgText::Font3D::libraryName </td> <td>(</td> <td class="paramname"></td><td>)</td> <td> const<code> [inline, virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p>return the name of the object's library. </p> <p>Must be defined by derived classes. The OpenSceneGraph convention is that the namespace of a library is the same as the library name. </p> <p>Implements <a class="el" href="a00500.html#adac3709b960df44030d682dd1336413e">osg::Object</a>.</p> </div> </div> <a class="anchor" id="a01b0c8ba0ad156cc6060081ddb2c1f87"></a><!-- doxytag: member="osgText::Font3D::setImplementation" ref="a01b0c8ba0ad156cc6060081ddb2c1f87" args="(Font3DImplementation *implementation)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void osgText::Font3D::setImplementation </td> <td>(</td> <td class="paramtype"><a class="el" href="a00299.html">Font3DImplementation</a> * </td> <td class="paramname"><em>implementation</em></td><td>)</td> <td></td> </tr> </table> </div> <div class="memdoc"> </div> </div> <a class="anchor" id="aba73febf97187253b94312887d5766d6"></a><!-- doxytag: member="osgText::Font3D::setThreadSafeRefUnref" ref="aba73febf97187253b94312887d5766d6" args="(bool threadSafe)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual void osgText::Font3D::setThreadSafeRefUnref </td> <td>(</td> <td class="paramtype">bool </td> <td class="paramname"><em>threadSafe</em></td><td>)</td> <td><code> [virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Set whether to use a mutex to ensure <a class="el" href="a00627.html#acafcbbae9e9d8bfcbc811cc6c36d1cf4" title="Increment the reference count by one, indicating that this object has another pointer which is refere...">ref()</a> and <a class="el" href="a00627.html#a0ee3c1293cceac54bfaabe7c541bcb68" title="Decrement the reference count by one, indicating that a pointer to this object is referencing it...">unref()</a> </p> <p>Reimplemented from <a class="el" href="a00627.html#aafc0e0779a54c6fbd46bdade701d7fa2">osg::Referenced</a>.</p> </div> </div> <hr/><h2>Friends And Related Function Documentation</h2> <a class="anchor" id="ac2372543566f55613eb72a18d13ee71e"></a><!-- doxytag: member="osgText::Font3D::Font3DImplementation" ref="ac2372543566f55613eb72a18d13ee71e" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">friend class <a class="el" href="a00299.html">Font3DImplementation</a><code> [friend]</code></td> </tr> </table> </div> <div class="memdoc"> </div> </div> <hr/><h2>Member Data Documentation</h2> <a class="anchor" id="acf4bd800b1620cb4cccfd25c8943a98f"></a><!-- doxytag: member="osgText::Font3D::_depth" ref="acf4bd800b1620cb4cccfd25c8943a98f" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">unsigned int <a class="el" href="a00298.html#acf4bd800b1620cb4cccfd25c8943a98f">osgText::Font3D::_depth</a><code> [protected]</code></td> </tr> </table> </div> <div class="memdoc"> </div> </div> <a class="anchor" id="a665d3d96646270bde4d52110d9a21dba"></a><!-- doxytag: member="osgText::Font3D::_glyph3DMap" ref="a665d3d96646270bde4d52110d9a21dba" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="a00298.html#a5eb34529faf6b58aef3a04f55e29f564">Glyph3DMap</a> <a class="el" href="a00298.html#a665d3d96646270bde4d52110d9a21dba">osgText::Font3D::_glyph3DMap</a><code> [protected]</code></td> </tr> </table> </div> <div class="memdoc"> </div> </div> <a class="anchor" id="a08a06bd22e1328c593dd1ebdaed21372"></a><!-- doxytag: member="osgText::Font3D::_height" ref="a08a06bd22e1328c593dd1ebdaed21372" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">unsigned int <a class="el" href="a00298.html#a08a06bd22e1328c593dd1ebdaed21372">osgText::Font3D::_height</a><code> [protected]</code></td> </tr> </table> </div> <div class="memdoc"> </div> </div> <a class="anchor" id="a38c5af81780c5d7db90fbc789ec37dbe"></a><!-- doxytag: member="osgText::Font3D::_implementation" ref="a38c5af81780c5d7db90fbc789ec37dbe" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="a00624.html">osg::ref_ptr</a><<a class="el" href="a00299.html">Font3DImplementation</a>> <a class="el" href="a00298.html#a38c5af81780c5d7db90fbc789ec37dbe">osgText::Font3D::_implementation</a><code> [protected]</code></td> </tr> </table> </div> <div class="memdoc"> </div> </div> <a class="anchor" id="a8d2cb9622162e232e424d595c124168b"></a><!-- doxytag: member="osgText::Font3D::_width" ref="a8d2cb9622162e232e424d595c124168b" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">unsigned int <a class="el" href="a00298.html#a8d2cb9622162e232e424d595c124168b">osgText::Font3D::_width</a><code> [protected]</code></td> </tr> </table> </div> <div class="memdoc"> </div> </div> <hr/>The documentation for this class was generated from the following file:<ul> <li>osgText/<a class="el" href="a01544.html">Font3D</a></li> </ul> </div> <hr> <table border="0"><tr><td> <img src="osg32-32.png" alt="osg logo" /> </td><td> <address><small>Generated at Tue May 31 2011 04:19:37 for the <a href="http://www.openscenegraph.org/">OpenSceneGraph</a> by <a href="http://www.doxygen.org">doxygen</a> 1.7.4.</small></address> <!-- Dimitri van Heesch's e-mail address removed, lest he get messages on the OpenSceneGraph --> </td></tr></table> </body> </html>