Texture font. More...
#include <OpenGl_Font.hxx>

Data Structures | |
| struct | RectI |
| struct | Tile |
| Simple structure stores tile rectangle. More... | |
Public Member Functions | |
| OpenGl_Font (const Handle< Font_FTFont > &theFont, const TCollection_AsciiString &theKey="") | |
| Main constructor. | |
| virtual | ~OpenGl_Font () |
| Destroy object. | |
| virtual void | Release (OpenGl_Context *theCtx) override |
| Destroy object - will release GPU memory if any. | |
| virtual Standard_Size | EstimatedDataSize () const override |
| Returns estimated GPU memory usage. | |
| const TCollection_AsciiString & | ResourceKey () const |
| const Handle< Font_FTFont > & | FTFont () const |
| bool | IsValid () const |
| bool | WasInitialized () const |
| Notice that this method doesn't return initialization success state. Use IsValid() instead. | |
| bool | Init (const Handle< OpenGl_Context > &theCtx) |
| Initialize GL resources. FreeType font instance should be already initialized! | |
| float | Ascender () const |
| float | Descender () const |
| bool | RenderGlyph (const Handle< OpenGl_Context > &theCtx, const Standard_Utf32Char theUChar, Tile &theGlyph) |
| Render glyph to texture if not already. | |
| const Handle< OpenGl_Texture > & | Texture () const |
Public Member Functions inherited from OpenGl_Resource | |
| OpenGl_Resource () | |
| Empty constructor. | |
| virtual | ~OpenGl_Resource () |
| Destructor. Inheritors should call Clean (NULL) within it. | |
| virtual void | DumpJson (Standard_OStream &theOStream, Standard_Integer theDepth=-1) const |
| Dumps the content of me into the stream. | |
Public Member Functions inherited from Standard_Transient | |
| Standard_Transient () | |
| Empty constructor. | |
| Standard_Transient (const Standard_Transient &) | |
| Copy constructor – does nothing. | |
| Standard_Transient & | operator= (const Standard_Transient &) |
| Assignment operator, needed to avoid copying reference counter. | |
| virtual | ~Standard_Transient () |
| Destructor must be virtual. | |
| virtual const opencascade::handle< Standard_Type > & | DynamicType () const |
| Returns a type descriptor about this object. | |
| Standard_Boolean | IsInstance (const opencascade::handle< Standard_Type > &theType) const |
| Returns a true value if this is an instance of Type. | |
| Standard_Boolean | IsInstance (const Standard_CString theTypeName) const |
| Returns a true value if this is an instance of TypeName. | |
| Standard_Boolean | IsKind (const opencascade::handle< Standard_Type > &theType) const |
| Returns true if this is an instance of Type or an instance of any class that inherits from Type. Note that multiple inheritance is not supported by OCCT RTTI mechanism. | |
| Standard_Boolean | IsKind (const Standard_CString theTypeName) const |
| Returns true if this is an instance of TypeName or an instance of any class that inherits from TypeName. Note that multiple inheritance is not supported by OCCT RTTI mechanism. | |
| Standard_Transient * | This () const |
| Returns non-const pointer to this object (like const_cast). For protection against creating handle to objects allocated in stack or call from constructor, it will raise exception Standard_ProgramError if reference counter is zero. | |
| Standard_Integer | GetRefCount () const noexcept |
| Get the reference counter of this object. | |
| void | IncrementRefCounter () noexcept |
| Increments the reference counter of this object. | |
| Standard_Integer | DecrementRefCounter () noexcept |
| Decrements the reference counter of this object; returns the decremented value. | |
| virtual void | Delete () const |
| Memory deallocator for transient classes. | |
Protected Member Functions | |
| bool | renderGlyph (const Handle< OpenGl_Context > &theCtx, const Standard_Utf32Char theChar) |
| Render new glyph to the texture. | |
| bool | createTexture (const Handle< OpenGl_Context > &theCtx) |
| Allocate new texture. | |
Protected Attributes | |
| TCollection_AsciiString | myKey |
| key of shared resource | |
| Handle< Font_FTFont > | myFont |
| FreeType font instance. | |
| Standard_ShortReal | myAscender |
| ascender provided my FT font | |
| Standard_ShortReal | myDescender |
| descender provided my FT font | |
| Standard_Integer | myTileSizeY |
| tile height | |
| Standard_Integer | myLastTileId |
| id of last tile | |
| RectI | myLastTilePx |
| Standard_Integer | myTextureFormat |
| texture format | |
| NCollection_Vector< Handle< OpenGl_Texture > > | myTextures |
| array of textures | |
| NCollection_Vector< Tile > | myTiles |
| array of loaded tiles | |
| NCollection_DataMap< Standard_Utf32Char, Standard_Integer > | myGlyphMap |
Additional Inherited Members | |
| typedef void | base_type |
| Returns a type descriptor about this object. | |
| static constexpr const char * | get_type_name () |
| Returns a type descriptor about this object. | |
| static const opencascade::handle< Standard_Type > & | get_type_descriptor () |
| Returns type descriptor of Standard_Transient class. | |
Texture font.
| OpenGl_Font::OpenGl_Font | ( | const Handle< Font_FTFont > & | theFont, |
| const TCollection_AsciiString & | theKey = "" ) |
Main constructor.
|
virtual |
Destroy object.
|
inline |
|
protected |
Allocate new texture.
|
inline |
|
overridevirtual |
Returns estimated GPU memory usage.
Implements OpenGl_Resource.
|
inline |
| bool OpenGl_Font::Init | ( | const Handle< OpenGl_Context > & | theCtx | ) |
Initialize GL resources. FreeType font instance should be already initialized!
|
inline |
|
overridevirtual |
Destroy object - will release GPU memory if any.
Implements OpenGl_Resource.
| bool OpenGl_Font::RenderGlyph | ( | const Handle< OpenGl_Context > & | theCtx, |
| const Standard_Utf32Char | theUChar, | ||
| Tile & | theGlyph ) |
Render glyph to texture if not already.
| theCtx | active context |
| theUChar | unicode symbol to render |
| theGlyph | computed glyph position rectangle, texture ID and UV coordinates |
|
protected |
Render new glyph to the texture.
|
inline |
|
inline |
|
inline |
Notice that this method doesn't return initialization success state. Use IsValid() instead.
|
protected |
ascender provided my FT font
|
protected |
descender provided my FT font
|
protected |
FreeType font instance.
|
protected |
|
protected |
key of shared resource
|
protected |
id of last tile
|
protected |
|
protected |
texture format
|
protected |
array of textures
|
protected |
array of loaded tiles
|
protected |
tile height