Archived issue #0024321
Use List collection instead of NCollection_Set for collection of Handle(Graphic3d_ClipPlane)
Description
Currently Graphic3d_SetOfHClipPlane is NCollection_Set. Disadvantage of such approach is that NCollection_Set does not guarantee that the objects will be returned in the order in which they were added. This makes it difficult to reuse the Graphic3d_SetOfHClipPlane in applications.
Additional information
Description:
The NCollection_Set (Graphic3d_SetOfHClipPlane) was replaced by ordered NCollection_Sequence type (Graphic3d_SequenceOfHClipPlane) to manage collections of planes.
List of changes:
1) Graphic3d_SetOfHClipPlane was replaced by Graphic3d_SequenceOfHClipPlane.
2) PrsMgr_PresentableObject::SetClipPlanes(..), GetClipPlanes() now accept Graphic3d_SequenceOfHClipPlane collection type.
3) V3d_View::SetClipPlanes(...), GetClipPlanes() now accept Graphic3d_SequenceOfHClipPlane collection type.
Porting notes:
It might be necessary to revise code of your application which deals with Graphic3d_SetOfHClipPlane collections and replace the occurrences by similar ordered Graphic3d_SequenceOfHClipPlane collection type.
The NCollection_Set (Graphic3d_SetOfHClipPlane) was replaced by ordered NCollection_Sequence type (Graphic3d_SequenceOfHClipPlane) to manage collections of planes.
List of changes:
1) Graphic3d_SetOfHClipPlane was replaced by Graphic3d_SequenceOfHClipPlane.
2) PrsMgr_PresentableObject::SetClipPlanes(..), GetClipPlanes() now accept Graphic3d_SequenceOfHClipPlane collection type.
3) V3d_View::SetClipPlanes(...), GetClipPlanes() now accept Graphic3d_SequenceOfHClipPlane collection type.
Porting notes:
It might be necessary to revise code of your application which deals with Graphic3d_SetOfHClipPlane collections and replace the occurrences by similar ordered Graphic3d_SequenceOfHClipPlane collection type.
Public activity
3 archived notes
Participants are labeled by their role within this record.
Dear dbv,
Could you please review branch CR24321?
Could you please review branch CR24321?
Reviewed without remarks, please test.
Dear Commenter 1,
Branch CR24321 (and products from GIT master) was compiled on Linux and Windows platforms and tested.
[revision removed]
Number of compiler warnings:
occt component :
Linux: 317 (317 on master)
Windows: 0 (0 on master)
products component :
Linux: 188 (189 on master)
Windows: 287 (287 on master)
Regressions/Differences:
No regressions/differences
Testing cases:
Not needed
Testing on Linux:
Total MEMORY difference: 357424944 / 357253212
Total CPU difference: 44814.02000000031 / 43279.94000000018
Testing on Windows:
Total MEMORY difference: 411868556 / 411604936
Total CPU difference: 31403.84375 / 34417.765625
There are not differences in images found by testdiff.
Branch CR24321 (and products from GIT master) was compiled on Linux and Windows platforms and tested.
[revision removed]
Number of compiler warnings:
occt component :
Linux: 317 (317 on master)
Windows: 0 (0 on master)
products component :
Linux: 188 (189 on master)
Windows: 287 (287 on master)
Regressions/Differences:
No regressions/differences
Testing cases:
Not needed
Testing on Linux:
Total MEMORY difference: 357424944 / 357253212
Total CPU difference: 44814.02000000031 / 43279.94000000018
Testing on Windows:
Total MEMORY difference: 411868556 / 411604936
Total CPU difference: 31403.84375 / 34417.765625
There are not differences in images found by testdiff.