occt: master a174a3c5

Author Committer Branch Timestamp Parent
kgv kgv master 2013-02-08 11:05:16 master 163ef250
Affected Issues  0023457: Slow text rendering
Changeset 0023457: Slow text rendering

Added class Font_FTFont wrapper over FreeType face

Unify collections methods NCollection_Array1, NCollection_Sequence, NCollection_Vector:
declare Upper, Lower, First, Last, ChangeFirst, ChangeLast methods for all these collections.

Added method NCollection_DataMap::Find() with check key is bound + retrieve value within single call interface.

OpenGl_Context::ReleaseResource() method now supports lazy release of shared resources.

Added class OpenGl_Font which implements textured fonts support.
Added class OpenGl_TextFormatter for text formatting using OpenGl_Font.

OpenGl_Text was redesigned to use OpenGl_FontFormatter.

OpenGl_FontMgr class was removed.
All methods related to text rendered removed from OpenGl_Display class.

OpenGl_Trihedron and OpenGl_GraduatedTrihedron classes were redesigned
to use OpenGl_Text.

OpenGl_PrinterContext instance was moved to OpenGl_GraphicDriver fields
(eliminated usage of global instance).

Added test cases into 3rdparty/fonts grid to check different font styles
and perform FPS tests (no automated results - requires manual analysis
or snapshots comparisons).

Removed unused CSF_FTGL dependency.
OpenGl_Text::setupMatrix - do not apply floor for myWinZ
mod - src/Font/FILES Diff File
mod - src/Font/Font.cdl Diff File
add - src/Font/Font_FTFont.cxx Diff File
add - src/Font/Font_FTFont.hxx Diff File
add - src/Font/Font_FTLibrary.hxx Diff File
mod - src/Font/Font_SystemFont.cxx Diff File
mod - src/NCollection/FILES Diff File
mod - src/NCollection/NCollection_Array1.hxx Diff File
mod - src/NCollection/NCollection_DataMap.hxx Diff File
mod - src/NCollection/NCollection_Sequence.hxx Diff File
add - src/NCollection/NCollection_UtfIterator.hxx Diff File
add - src/NCollection/NCollection_UtfIterator.lxx Diff File
add - src/NCollection/NCollection_UtfString.hxx Diff File
add - src/NCollection/NCollection_UtfString.lxx Diff File
mod - src/NCollection/NCollection_Vector.hxx Diff File
mod - src/NIS/NIS_TriangulatedDrawer.cxx Diff File
mod - src/OpenGl/EXTERNLIB Diff File
mod - src/OpenGl/FILES Diff File
mod - src/OpenGl/OpenGl_AspectText.cxx Diff File
mod - src/OpenGl/OpenGl_AspectText.hxx Diff File
mod - src/OpenGl/OpenGl_Context.cxx Diff File
mod - src/OpenGl/OpenGl_Context.hxx Diff File
mod - src/OpenGl/OpenGl_Display.cxx Diff File
mod - src/OpenGl/OpenGl_Display.hxx Diff File
rm - src/OpenGl/OpenGl_Display_1.cxx Diff File
mod - src/OpenGl/OpenGl_Element.hxx Diff File
add - src/OpenGl/OpenGl_Font.cxx Diff File
add - src/OpenGl/OpenGl_Font.hxx Diff File
rm - src/OpenGl/OpenGl_FontMgr.cxx Diff File
rm - src/OpenGl/OpenGl_FontMgr.hxx Diff File
mod - src/OpenGl/OpenGl_FrameBuffer.cxx Diff File
mod - src/OpenGl/OpenGl_GraduatedTrihedron.cxx Diff File
mod - src/OpenGl/OpenGl_GraduatedTrihedron.hxx Diff File
mod - src/OpenGl/OpenGl_GraphicDriver.cxx Diff File
mod - src/OpenGl/OpenGl_GraphicDriver.hxx Diff File
rm - src/OpenGl/OpenGl_GraphicDriver_705.cxx Diff File
rm - src/OpenGl/OpenGl_GraphicDriver_710.cxx Diff File
rm - src/OpenGl/OpenGl_GraphicDriver_9.cxx Diff File
mod - src/OpenGl/OpenGl_GraphicDriver_Layer.cxx Diff File
mod - src/OpenGl/OpenGl_PrinterContext.cxx Diff File
mod - src/OpenGl/OpenGl_PrinterContext.hxx Diff File
mod - src/OpenGl/OpenGl_Text.cxx Diff File
mod - src/OpenGl/OpenGl_Text.hxx Diff File
add - src/OpenGl/OpenGl_TextFormatter.cxx Diff File
add - src/OpenGl/OpenGl_TextFormatter.hxx Diff File
mod - src/OpenGl/OpenGl_Texture.cxx Diff File
mod - src/OpenGl/OpenGl_Texture.hxx Diff File
mod - src/OpenGl/OpenGl_Trihedron.cxx Diff File
mod - src/OpenGl/OpenGl_Trihedron.hxx Diff File
mod - src/OpenGl/OpenGl_VertexBufferEditor.hxx Diff File
mod - src/OpenGl/OpenGl_View.cxx Diff File
mod - src/OpenGl/OpenGl_View.hxx Diff File
mod - src/OpenGl/OpenGl_View_2.cxx Diff File
mod - src/OpenGl/OpenGl_Workspace.cxx Diff File
mod - src/OpenGl/OpenGl_Workspace.hxx Diff File
mod - src/OpenGl/OpenGl_Workspace_2.cxx Diff File
rm - src/OpenGl/OpenGl_Workspace_4.cxx Diff File
mod - src/OpenGl/OpenGl_Workspace_5.cxx Diff File
mod - src/Standard/Standard.cdl Diff File
mod - src/Standard/Standard_Integer.hxx Diff File
mod - src/Standard/Standard_TypeDef.hxx Diff File
mod - src/TKOpenGl/EXTERNLIB Diff File
mod - src/ViewerTest/ViewerTest_OpenGlCommands.cxx Diff File
add - tests/3rdparty/fonts/A3 Diff File
add - tests/3rdparty/fonts/A4 Diff File
add - tests/3rdparty/fonts/A5 Diff File
add - tests/3rdparty/fonts/A6 Diff File
add - tests/3rdparty/fonts/A7 Diff File