Archived issue #0030537
Visualization - wrapping text in font text formatter
Description
Provide a possibility to wrap the text given into Font_TextFormatter.
Public activity
48 archived notes
Participants are labeled by their role within this record.
Branch [archived branch] has been created by Author.
[revision removed]
Detailed log of new commits:
Author: Author
Date: Mon Mar 4 20:04:26 2019 +0300
0030537: Visualization - wrapping text in font text formatter
[revision removed]
Detailed log of new commits:
Author: Author
Date: Mon Mar 4 20:04:26 2019 +0300
0030537: Visualization - wrapping text in font text formatter
Branch [archived branch] has been updated by Author.
[revision removed]
Detailed log of new commits:
Author: Author
Date: Tue Mar 5 06:38:12 2019 +0300
0030537: Visualization - wrapping text in font text formatter
#compilation correction
[revision removed]
Detailed log of new commits:
Author: Author
Date: Tue Mar 5 06:38:12 2019 +0300
0030537: Visualization - wrapping text in font text formatter
#compilation correction
Branch [archived branch] has been updated by Author.
[revision removed]
Detailed log of new commits:
Author: Author
Date: Tue Mar 5 13:52:37 2019 +0300
0030537: Visualization - wrapping text in font text formatter
#LineWidth public method, correction to compute line width in Format()
[revision removed]
Detailed log of new commits:
Author: Author
Date: Tue Mar 5 13:52:37 2019 +0300
0030537: Visualization - wrapping text in font text formatter
#LineWidth public method, correction to compute line width in Format()
Branch [archived branch] has been updated by Author.
[revision removed]
Detailed log of new commits:
Author: Author
Date: Tue Mar 5 18:51:12 2019 +0300
0030537: Visualization - wrapping text in font text formatter
#corners should be arranged around (0,0) point, example of the first point if rect width is 100, symbol has an empty width:
# - left alignment: (-50, 0)
# - center alignment: (0, 0)
# - right alignment: (50, 0)
[revision removed]
Detailed log of new commits:
Author: Author
Date: Tue Mar 5 18:51:12 2019 +0300
0030537: Visualization - wrapping text in font text formatter
#corners should be arranged around (0,0) point, example of the first point if rect width is 100, symbol has an empty width:
# - left alignment: (-50, 0)
# - center alignment: (0, 0)
# - right alignment: (50, 0)
Branch [archived branch] has been updated by Author.
[revision removed]
Detailed log of new commits:
Author: Author
Date: Tue Mar 5 18:54:28 2019 +0300
0030537: Visualization - wrapping text in font text formatter
#corners should be arranged around (0,0) point, example of the first point if rect width is 100, symbol has an empty width:
# - left alignment: (-50, 0)
# - center alignment: (0, 0)
# - right alignment: (50, 0)
(cherry picked from [revision removed])
[revision removed]
Detailed log of new commits:
Author: Author
Date: Tue Mar 5 18:54:28 2019 +0300
0030537: Visualization - wrapping text in font text formatter
#corners should be arranged around (0,0) point, example of the first point if rect width is 100, symbol has an empty width:
# - left alignment: (-50, 0)
# - center alignment: (0, 0)
# - right alignment: (50, 0)
(cherry picked from [revision removed])
Branch [archived branch] has been updated by Author.
[revision removed]
Detailed log of new commits:
Author: Author
Date: Tue Mar 5 19:57:36 2019 +0300
0030537: Visualization - wrapping text in font text formatter
# last row length correction
(cherry picked from [revision removed])
[revision removed]
Detailed log of new commits:
Author: Author
Date: Tue Mar 5 19:57:36 2019 +0300
0030537: Visualization - wrapping text in font text formatter
# last row length correction
(cherry picked from [revision removed])
Branch [archived branch] has been created by Author.
[revision removed]
Detailed log of new commits:
Author: Author
Date: Thu Mar 7 16:28:20 2019 +0300
0030537: Visualization - wrapping text in font text formatter
(cherry picked from [revision removed])
# Conflicts:
# src/Graphic3d/Graphic3d_Group.hxx
# src/OpenGl/OpenGl_Text.hxx
(cherry picked from [revision removed])
(cherry picked from [revision removed])
[revision removed]
Detailed log of new commits:
Author: Author
Date: Thu Mar 7 16:28:20 2019 +0300
0030537: Visualization - wrapping text in font text formatter
(cherry picked from [revision removed])
# Conflicts:
# src/Graphic3d/Graphic3d_Group.hxx
# src/OpenGl/OpenGl_Text.hxx
(cherry picked from [revision removed])
(cherry picked from [revision removed])
+ //! Iterator through light sources.
+ class Iterator
+ {
+ public:
+ //! Constructor with initialization.
+ Iterator (const Handle(Font_TextFormatter)& theFormatter,
+ IterationFilter theFilter = IterationFilter_None)
It looks redundant passing/requiring handle in iterator - usually iterators hold a reference (pointer) to the collection.
+ //! Returns current symbol.
+ const Standard_Utf32Char& Symbol() const { return mySymbolChar; }
+
+ //! Returns the next symbol if exists.
+ const Standard_Utf32Char& SymbolNext() const { return mySymbolCharNext; }
+
+ //! Returns current symbol position.
+ const Standard_Integer& SymbolPosition() const { return mySymbolPosition; }
+
+ //! Returns the next symbol position.
+ const Standard_Integer& SymbolPositionNext() const { return mySymbolNext; }
Please avoid returning/passing primitive types like Standard_Integer, Standard_Utf32Char via reference.
- Font_TextFormatter aFormatter; - aFormatter.SetupAlignment (theAlignX, theAlignY); - aFormatter.Reset(); + Handle(Font_TextFormatter) aFormatter = new Font_TextFormatter();
I would suggest avoiding creation of handle where it is not actually needed.
+ //!< Returns true if the symbol is CR, BEL, FF, NP, BS or VT + Standard_EXPORT static Standard_Boolean IsCommandSymbol (const Standard_Utf32Char& theSymbol);
This expected to be inline.
+void Graphic3d_Group::Text (const Handle(Font_TextFormatter)& theTextFormatter, + const gp_Ax2& theOrientation, + const Standard_Real theHeight,
The expansion of Text() methods should last.
Consider defining a common structure for passing auxiliary parameters and Text representation modes,
and replacing all Text() methods with single one (existing methods to be preserved for a while as deprecated redirections to new method).
- Font_TextFormatter aFormatter; - aFormatter.SetupAlignment (myParams.HAlign, myParams.VAlign); - aFormatter.Reset(); + Handle(Font_TextFormatter) aFormatter = myFormatter; + if (myFormatter.IsNull())
It is preferred putting shared temporary instance of Font_TextFormatter inside OpenGl_Context.
+ //!< Returns internal container of the top left corners of a formatted rectangles.
+ const NCollection_Vector < NCollection_Vec2<Standard_ShortReal> >& GetCorners() const { return myCorners; }
+
+ const NCollection_Vector<Standard_ShortReal>& GetNewLines() const { return myNewLines; }
...
+ //! Returns position of the first symbol in a line using alignment
+ Standard_EXPORT Standard_ShortReal GetFirstPosition() const;
"Get" is unexpected prefix.
+ if (aFirstCornerId >= getRectsNb())
Usage of trivial getter within the class implementation looks dubious.
Branch [archived branch] has been created by Author.
[revision removed]
Detailed log of new commits:
Author: Author
Date: Fri Aug 2 07:11:31 2019 +0300
0030537: Visualization - wrapping text in font text formatter - correction after review
(cherry picked from [revision removed])
Author: Author
Date: Thu Mar 7 16:28:20 2019 +0300
0030537: Visualization - wrapping text in font text formatter
(cherry picked from [revision removed])
# Conflicts:
# src/Graphic3d/Graphic3d_Group.hxx
# src/OpenGl/OpenGl_Text.hxx
(cherry picked from [revision removed])
(cherry picked from [revision removed])
(cherry picked from [revision removed])
[revision removed]
Detailed log of new commits:
Author: Author
Date: Fri Aug 2 07:11:31 2019 +0300
0030537: Visualization - wrapping text in font text formatter - correction after review
(cherry picked from [revision removed])
Author: Author
Date: Thu Mar 7 16:28:20 2019 +0300
0030537: Visualization - wrapping text in font text formatter
(cherry picked from [revision removed])
# Conflicts:
# src/Graphic3d/Graphic3d_Group.hxx
# src/OpenGl/OpenGl_Text.hxx
(cherry picked from [revision removed])
(cherry picked from [revision removed])
(cherry picked from [revision removed])
Branch [archived branch] has been created by Author.
[revision removed]
Detailed log of new commits:
Author: Author
Date: Thu Mar 7 16:28:20 2019 +0300
0030537: Visualization - wrapping text in font text formatter
[revision removed]
Detailed log of new commits:
Author: Author
Date: Thu Mar 7 16:28:20 2019 +0300
0030537: Visualization - wrapping text in font text formatter
Dear Kirill,
please review the branch.
Some remarks are corrected as you recommended.
Remarks NOT corrected:
1. The expansion of Text() methods should last.
-> I propose to implement it in another issue #0030857, if possible (to do not make this integration too thick).
2. It is preferred putting shared temporary instance of Font_TextFormatter inside OpenGl_Context.
-> I'm not sure that correctly understand this recomendation. Do you mean having one instance as default one? If yes, the fix contains it.
On the other hand, I would expect that each text have own text formatter (as it caches calculated positions/sizes) and avoid recompute formatting on each render() call. It seems that it improves performance.
[signature removed]Natalia
please review the branch.
Some remarks are corrected as you recommended.
Remarks NOT corrected:
1. The expansion of Text() methods should last.
-> I propose to implement it in another issue #0030857, if possible (to do not make this integration too thick).
2. It is preferred putting shared temporary instance of Font_TextFormatter inside OpenGl_Context.
-> I'm not sure that correctly understand this recomendation. Do you mean having one instance as default one? If yes, the fix contains it.
On the other hand, I would expect that each text have own text formatter (as it caches calculated positions/sizes) and avoid recompute formatting on each render() call. It seems that it improves performance.
[signature removed]Natalia
> 1. The expansion of Text() methods should last.
> -> I propose to implement it in another issue 0030857, if possible (to do not make this integration too thick).
Then please process the referred issue first.
> 2. It is preferred putting shared temporary instance of Font_TextFormatter inside OpenGl_Context.
> -> I'm not sure that correctly understand this recomendation. Do you mean having one instance as default one? If yes, the fix contains it.
In context of implicitly created formatter, this formatter is created temporarily.
The idea is to create this temporary formatter once and reuse it to avoid extra memory flactuations/keep memory buffers allocated.
> -> I propose to implement it in another issue 0030857, if possible (to do not make this integration too thick).
Then please process the referred issue first.
> 2. It is preferred putting shared temporary instance of Font_TextFormatter inside OpenGl_Context.
> -> I'm not sure that correctly understand this recomendation. Do you mean having one instance as default one? If yes, the fix contains it.
In context of implicitly created formatter, this formatter is created temporarily.
The idea is to create this temporary formatter once and reuse it to avoid extra memory flactuations/keep memory buffers allocated.
Dear Kirill,
thank you for explanation.
1. Ok
2. If several text presentations are shown in the viewer, each one has long text(for example) with own formatter. Don't you think that render() for each will require much time to recompute it? Anyway, it is possible do not use SetTextFormatter for text group, then the default formatter(from Context) will be used(acoording to current implementation) and your case works here.
[signature removed]Natalia
thank you for explanation.
1. Ok
2. If several text presentations are shown in the viewer, each one has long text(for example) with own formatter. Don't you think that render() for each will require much time to recompute it? Anyway, it is possible do not use SetTextFormatter for text group, then the default formatter(from Context) will be used(acoording to current implementation) and your case works here.
[signature removed]Natalia
Branch [archived branch] has been created by Author.
[revision removed]
Detailed log of new commits:
Author: Author
Date: Wed Aug 7 15:23:18 2019 +0300
0030537: Visualization - wrapping text in font text formatter
[revision removed]
Detailed log of new commits:
Author: Author
Date: Wed Aug 7 15:23:18 2019 +0300
0030537: Visualization - wrapping text in font text formatter
Branch [archived branch] has been created by Author.
[revision removed]
Detailed log of new commits:
Author: Author
Date: Fri Aug 23 09:22:27 2019 +0300
0030537: Visualization - wrapping text in font text formatter
Font_TextFormatter inherits Standard_Transient, now it is given as a handle in functions.
Graphic3d_Text - extended with Font_TextFormatter to be able to have it filled out of text render. If it is not defined here, the default text formatter of context is used.
OpenGl_Context - has default Font_TextFormatter for rendering OpenGl_Text.
[revision removed]
Detailed log of new commits:
Author: Author
Date: Fri Aug 23 09:22:27 2019 +0300
0030537: Visualization - wrapping text in font text formatter
Font_TextFormatter inherits Standard_Transient, now it is given as a handle in functions.
Graphic3d_Text - extended with Font_TextFormatter to be able to have it filled out of text render. If it is not defined here, the default text formatter of context is used.
OpenGl_Context - has default Font_TextFormatter for rendering OpenGl_Text.
Branch [archived branch] has been created by Author.
[revision removed]
Detailed log of new commits:
Author: Author
Date: Mon Sep 2 18:44:07 2019 +0300
0030537: Visualization - wrapping text in font text formatter
Font_TextFormatter inherits Standard_Transient, now it is given as a handle in functions.
Graphic3d_Text - extended with Font_TextFormatter to be able to have it filled out of text render. If it is not defined here, the default text formatter of context is used.
OpenGl_Context - has default Font_TextFormatter for rendering OpenGl_Text.
[revision removed]
Detailed log of new commits:
Author: Author
Date: Mon Sep 2 18:44:07 2019 +0300
0030537: Visualization - wrapping text in font text formatter
Font_TextFormatter inherits Standard_Transient, now it is given as a handle in functions.
Graphic3d_Text - extended with Font_TextFormatter to be able to have it filled out of text render. If it is not defined here, the default text formatter of context is used.
OpenGl_Context - has default Font_TextFormatter for rendering OpenGl_Text.
Branch [archived branch] has been created by Author.
[revision removed]
Detailed log of new commits:
Author: Author
Date: Mon Sep 2 18:44:07 2019 +0300
0030537: Visualization - wrapping text in font text formatter
Font_TextFormatter inherits Standard_Transient, now it is given as a handle in functions.
Graphic3d_Text - extended with Font_TextFormatter to be able to have it filled out of text render. If it is not defined here, the default text formatter of context is used.
OpenGl_Context - has default Font_TextFormatter for rendering OpenGl_Text.
[revision removed]
Detailed log of new commits:
Author: Author
Date: Mon Sep 2 18:44:07 2019 +0300
0030537: Visualization - wrapping text in font text formatter
Font_TextFormatter inherits Standard_Transient, now it is given as a handle in functions.
Graphic3d_Text - extended with Font_TextFormatter to be able to have it filled out of text render. If it is not defined here, the default text formatter of context is used.
OpenGl_Context - has default Font_TextFormatter for rendering OpenGl_Text.
Branch [archived branch] has been created by Author.
[revision removed]
Detailed log of new commits:
Author: Author
Date: Mon Sep 2 18:44:07 2019 +0300
0030537: Visualization - wrapping text in font text formatter
Font_TextFormatter inherits Standard_Transient, now it is given as a handle in functions.
Graphic3d_Text - extended with Font_TextFormatter to be able to have it filled out of text render. If it is not defined here, the default text formatter of context is used.
OpenGl_Context - has default Font_TextFormatter for rendering OpenGl_Text.
[revision removed]
Detailed log of new commits:
Author: Author
Date: Mon Sep 2 18:44:07 2019 +0300
0030537: Visualization - wrapping text in font text formatter
Font_TextFormatter inherits Standard_Transient, now it is given as a handle in functions.
Graphic3d_Text - extended with Font_TextFormatter to be able to have it filled out of text render. If it is not defined here, the default text formatter of context is used.
OpenGl_Context - has default Font_TextFormatter for rendering OpenGl_Text.
Branch [archived branch] has been updated by Author.
[revision removed]
Detailed log of new commits:
Author: Author
Date: Fri Jun 26 08:46:06 2020 +0300
0030537: Visualization - wrapping text in font text formatter
Font_TextFormatter inherits Standard_Transient, now it is given as a handle in functions.
Graphic3d_Text - extended with Font_TextFormatter to be able to have it filled out of text render. If it is not defined here, the default text formatter of context is used.
OpenGl_Context - has default Font_TextFormatter for rendering OpenGl_Text.
[revision removed]
Detailed log of new commits:
Author: Author
Date: Fri Jun 26 08:46:06 2020 +0300
0030537: Visualization - wrapping text in font text formatter
Font_TextFormatter inherits Standard_Transient, now it is given as a handle in functions.
Graphic3d_Text - extended with Font_TextFormatter to be able to have it filled out of text render. If it is not defined here, the default text formatter of context is used.
OpenGl_Context - has default Font_TextFormatter for rendering OpenGl_Text.
Branch [archived branch] has been created by Author.
[revision removed]
Detailed log of new commits:
Author: Author
Date: Mon Sep 2 18:44:07 2019 +0300
0030537: Visualization - wrapping text in font text formatter
Font_TextFormatter inherits Standard_Transient, now it is given as a handle in functions.
Graphic3d_Text - extended with Font_TextFormatter to be able to have it filled out of text render. If it is not defined here, the default text formatter of context is used.
OpenGl_Context - has default Font_TextFormatter for rendering OpenGl_Text.
[revision removed]
Detailed log of new commits:
Author: Author
Date: Mon Sep 2 18:44:07 2019 +0300
0030537: Visualization - wrapping text in font text formatter
Font_TextFormatter inherits Standard_Transient, now it is given as a handle in functions.
Graphic3d_Text - extended with Font_TextFormatter to be able to have it filled out of text render. If it is not defined here, the default text formatter of context is used.
OpenGl_Context - has default Font_TextFormatter for rendering OpenGl_Text.
Dear Kirill,
please, review.
Your last comment is also corrected in the proposed patch.
Jenkins job: http://jenkins-test-12.nnov.opencascade.com/view/CR30537-master-NDS/
Thank you in advance, Natalia
please, review.
Your last comment is also corrected in the proposed patch.
Jenkins job: http://jenkins-test-12.nnov.opencascade.com/view/CR30537-master-NDS/
Thank you in advance, Natalia
Branch [archived branch] has been updated by Author.
[revision removed]
Detailed log of new commits:
Author: Author
Date: Thu Sep 3 14:38:02 2020 +0300
0030537: Visualization - wrapping text in font text formatter
AIS_TextLabel extending with Font_TextFormatter to prepare test case for text wrapping
Prs3d_Text returns created graphic text to be able to manage it outside.
Author: Author
Date: Thu Sep 3 08:42:55 2020 +0300
0030537: Visualization - wrapping text in font text formatter
remarks correction.
[revision removed]
Detailed log of new commits:
Author: Author
Date: Thu Sep 3 14:38:02 2020 +0300
0030537: Visualization - wrapping text in font text formatter
AIS_TextLabel extending with Font_TextFormatter to prepare test case for text wrapping
Prs3d_Text returns created graphic text to be able to manage it outside.
Author: Author
Date: Thu Sep 3 08:42:55 2020 +0300
0030537: Visualization - wrapping text in font text formatter
remarks correction.
Branch [archived branch] has been created by Author.
[revision removed]
Detailed log of new commits:
Author: Author
Date: Mon Sep 2 18:44:07 2019 +0300
0030537: Visualization - wrapping text in font text formatter
Font_TextFormatter inherits Standard_Transient, now it is given as a handle in functions.
Graphic3d_Text - extended with Font_TextFormatter to be able to have it filled out of text render. If it is not defined here, the default text formatter of context is used.
OpenGl_Context - has default Font_TextFormatter for rendering OpenGl_Text.
AIS_TextLabel extending with Font_TextFormatter to prepare test case for text wrapping
Prs3d_Text returns created graphic text to be able to manage it outside.
[revision removed]
Detailed log of new commits:
Author: Author
Date: Mon Sep 2 18:44:07 2019 +0300
0030537: Visualization - wrapping text in font text formatter
Font_TextFormatter inherits Standard_Transient, now it is given as a handle in functions.
Graphic3d_Text - extended with Font_TextFormatter to be able to have it filled out of text render. If it is not defined here, the default text formatter of context is used.
OpenGl_Context - has default Font_TextFormatter for rendering OpenGl_Text.
AIS_TextLabel extending with Font_TextFormatter to prepare test case for text wrapping
Prs3d_Text returns created graphic text to be able to manage it outside.
Branch [archived branch] has been updated forcibly by Author.
[revision removed]
[revision removed]
Dear Kirill,
could you please review modifications.
Jenkins job: http://jenkins-test-12.nnov.opencascade.com/view/CR30537-master-nds/
Thank you in advance, Natalia
could you please review modifications.
Jenkins job: http://jenkins-test-12.nnov.opencascade.com/view/CR30537-master-nds/
Thank you in advance, Natalia
Branch [archived branch] has been updated forcibly by Author.
[revision removed]
[revision removed]
- Prs3d_Text::Draw (Prs3d_Root::CurrentGroup (thePrs), anAsp, myText, anOrientation, aHasOwnAnchor); + Handle(Graphic3d_Text) aText = + Prs3d_Text::Draw (Prs3d_Root::CurrentGroup (thePrs), anAsp, myText, anOrientation, aHasOwnAnchor);
Patch has to be rebased onto current master (deprecated Prs3d_Root)...
+ //! @return text formatter
+ const Handle(Font_TextFormatter)& TextFormatter() const { return myFormatter; }
Please put into description "; NULL by default, which means standard text formatter will be used".
+ if (!myFormatter.IsNull()) + aText->SetTextFormatter (myFormatter);
I suppose NULL-check could be skipped.
+//! Example of correspondence of an index to the text symbol in "row_1\n\nrow_2\n": +//! "row_1\n" - 0-5 +//! "\n" - 6 +//! "\n" - 7 +//! "row_2\n" - 8-13
I think that new-line formatting of this section will be screwed by Doxygen generator - consider adding extra tags.
+//! The iterator gives an access to each symbol inside the initial row. Also it's possible +//! to get only significant/writable symbols of the text.
Tip: it is preferable splitting long lines on sentence ending / punctual symbols.
+ Standard_DEPRECATED("BottomLeft should be used instead.")
Tip: most (all?) other Standard_DEPRECATED occurrences have no trailing dot in message - would be nice being consistent.
+ inline const NCollection_Vec2<Standard_ShortReal>& BottomLeft (const Standard_Integer theIndex) const
...
+ inline Standard_ShortReal MaximumSymbolWidth() const { return myMaxSymbolWidth; }
Redundant "inline".
+ //!< Returns horizontal alignment style
+ Graphic3d_HorizontalTextAlignment HorizontalTextAlignment() const { return myAlignX; }
+
+ //!< Returns vertical alignment style
+ Graphic3d_VerticalTextAlignment VerticalTextAlignment() const { return myAlignY; }
...
Here and in other places - please correct unexpected "//!<" tags with "//!".
+ const NCollection_Vector<Standard_ShortReal>& NewLines() const { return myNewLines; }
Missing description.
+ + friend Iterator;
Is it really necessary?
+ //! @return default formatter of text within this context
+ void SetTextFormatter (const Handle(Font_TextFormatter)& theFormatter) { myFormatter = theFormatter; }
Unexpected "@return".
+ + return aText;
Redundant empty line.
+pload ALL +vinit View1
Please load only necessary plugins.
+checkview -screenshot -3d -path ${imagedir}/${test_image}.png
Please use "vdump $imagedir/${casename}.png" directly in new tests.
Branch [archived branch] has been updated forcibly by Author.
[revision removed]
[revision removed]
Branch [archived branch] has been updated by Author.
[revision removed]
Detailed log of new commits:
Author: Author
Date: Sun Sep 6 12:57:04 2020 +0300
remarks correction
[revision removed]
Detailed log of new commits:
Author: Author
Date: Sun Sep 6 12:57:04 2020 +0300
remarks correction
Branch [archived branch] has been updated forcibly by Author.
[revision removed]
[revision removed]
Branch [archived branch] has been created by Author.
[revision removed]
Detailed log of new commits:
Author: Author
Date: Mon Sep 7 11:10:32 2020 +0300
0030537: Visualization - wrapping text in font text formatter
Font_TextFormatter inherits Standard_Transient, now it is given as a handle in functions.
Graphic3d_Text - extended with Font_TextFormatter to be able to have it filled out of text render. If it is not defined here, the default text formatter of context is used.
OpenGl_Context - has default Font_TextFormatter for rendering OpenGl_Text.
AIS_TextLabel extending with Font_TextFormatter to prepare test case for text wrapping.
Prs3d_Text returns created graphic text to be able to manage it outside.
[revision removed]
Detailed log of new commits:
Author: Author
Date: Mon Sep 7 11:10:32 2020 +0300
0030537: Visualization - wrapping text in font text formatter
Font_TextFormatter inherits Standard_Transient, now it is given as a handle in functions.
Graphic3d_Text - extended with Font_TextFormatter to be able to have it filled out of text render. If it is not defined here, the default text formatter of context is used.
OpenGl_Context - has default Font_TextFormatter for rendering OpenGl_Text.
AIS_TextLabel extending with Font_TextFormatter to prepare test case for text wrapping.
Prs3d_Text returns created graphic text to be able to manage it outside.
Corrected, could you please review it once again.
OCCT: CR30537_11,
PRODUCTS: NOT
PRODUCTS: NOT
Combination -
OCCT branch : [archived branch]
master SHA - [revision removed]
[revision removed]
Products branch : [archived branch] SHA - [revision removed]
was compiled on Linux, MacOS and Windows platforms and tested in optimize mode.
Number of compiler warnings:
No new/fixed warnings
Regressions/Differences/Improvements:
No regressions/differences
CPU differences:
Debian80-64:
OCCT
Total CPU difference: 17333.360000000142 / 17325.800000000123 [+0.04%]
Products
Total CPU difference: 12056.720000000096 / 12079.64000000011 [-0.19%]
Windows-64-VC14:
OCCT
Total CPU difference: 18817.921875 / 18792.46875 [+0.14%]
Products
Total CPU difference: 13294.09375 / 13274.75 [+0.15%]
Image differences :
No differences that require special attention
Memory differences :
No differences that require special attention
OCCT branch : [archived branch]
master SHA - [revision removed]
[revision removed]
Products branch : [archived branch] SHA - [revision removed]
was compiled on Linux, MacOS and Windows platforms and tested in optimize mode.
Number of compiler warnings:
No new/fixed warnings
Regressions/Differences/Improvements:
No regressions/differences
CPU differences:
Debian80-64:
OCCT
Total CPU difference: 17333.360000000142 / 17325.800000000123 [+0.04%]
Products
Total CPU difference: 12056.720000000096 / 12079.64000000011 [-0.19%]
Windows-64-VC14:
OCCT
Total CPU difference: 18817.921875 / 18792.46875 [+0.14%]
Products
Total CPU difference: 13294.09375 / 13274.75 [+0.15%]
Image differences :
No differences that require special attention
Memory differences :
No differences that require special attention
Branch [archived branch] has been deleted by Participant.
[revision removed]
[revision removed]
Branch [archived branch] has been deleted by Participant.
[revision removed]
[revision removed]
Branch [archived branch] has been deleted by Participant.
[revision removed]
[revision removed]
Branch [archived branch] has been deleted by Participant.
[revision removed]
[revision removed]
Branch [archived branch] has been deleted by Participant.
[revision removed]
[revision removed]
Branch [archived branch] has been deleted by Participant.
[revision removed]
[revision removed]
Branch [archived branch] has been deleted by Participant.
[revision removed]
[revision removed]
Branch [archived branch] has been deleted by Participant.
[revision removed]
[revision removed]
Branch [archived branch] has been deleted by Participant.
[revision removed]
[revision removed]
Branch [archived branch] has been deleted by Participant.
[revision removed]
[revision removed]
Branch [archived branch] has been deleted by Participant.
[revision removed]
[revision removed]
Branch [archived branch] has been deleted by Participant.
[revision removed]
[revision removed]
Related records
- #0030857 · related to · closedVisualization - using one implementation of Text in graphic group
- #0032992 · parent of · closedVisualization - Font_TextFormatter should wrap words when possible
- #0031762 · related to · closedVisualization, Font_TextFormatter - tabulation length is respected with one extra symbol shift