Archived issue #0030854
Visualization, AIS_ViewCube - pack triangulations into common array(s)
Description
AIS_ViewCube creates an independent primitive array per element (6 box sides, 8 corners, 8 edges = 22), which is redundant overcomplication.
Triangulations should be grouped by common aspects.
Triangulations should be grouped by common aspects.
Steps to reproduce
N/A
Public activity
5 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 Aug 5 20:26:11 2019 +0300
0030854: Visualization, AIS_ViewCube - pack triangulations into common array(s)
Presentation computation has been modified to merge triangulations per box part type.
Prs3d_Drawer::FaceBoundaryDraw() flag is now handled for drawing box sides edges.
Graphic3d_ArrayOfPrimitives has been extended by auxiliary methods:
- ::AddSegmentEdges(), ::AddTriangleEdges(), ::AddQuadEdges() raising exception on wrong primitive type.
- ::AddQuadTriangleEdges() splitting quad into indexed triangulation;
- ::AddTriangleStripEdges() splitting triangle strip into indexed triangulation;
- ::AddTriangleFanEdges() splitting triangle fan into indexed triangulation;
- ::AddPolylineEdges() splitting polyline into indexed segments.
[revision removed]
Detailed log of new commits:
Author: Author
Date: Mon Aug 5 20:26:11 2019 +0300
0030854: Visualization, AIS_ViewCube - pack triangulations into common array(s)
Presentation computation has been modified to merge triangulations per box part type.
Prs3d_Drawer::FaceBoundaryDraw() flag is now handled for drawing box sides edges.
Graphic3d_ArrayOfPrimitives has been extended by auxiliary methods:
- ::AddSegmentEdges(), ::AddTriangleEdges(), ::AddQuadEdges() raising exception on wrong primitive type.
- ::AddQuadTriangleEdges() splitting quad into indexed triangulation;
- ::AddTriangleStripEdges() splitting triangle strip into indexed triangulation;
- ::AddTriangleFanEdges() splitting triangle fan into indexed triangulation;
- ::AddPolylineEdges() splitting polyline into indexed segments.
Branch [archived branch] has been updated forcibly by Author.
[revision removed]
[revision removed]
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: 16232.520000000062 / 16237.229999999976 [-0.03%]
Products
Total CPU difference: 10480.390000000032 / 10493.010000000033 [-0.12%]
Windows-64-VC14:
OCCT
Total CPU difference: 17636.71875 / 17592.765625 [+0.25%]
Products
Total CPU difference: 12049.15625 / 12065.453125 [-0.14%]
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: 16232.520000000062 / 16237.229999999976 [-0.03%]
Products
Total CPU difference: 10480.390000000032 / 10493.010000000033 [-0.12%]
Windows-64-VC14:
OCCT
Total CPU difference: 17636.71875 / 17592.765625 [+0.25%]
Products
Total CPU difference: 12049.15625 / 12065.453125 [-0.14%]
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]
Related records