View Issue Details

IDProjectCategoryView StatusLast Update
0022971Open CASCADEOCCT:Visualizationpublic2012-12-12 18:06
Reporterkgv Assigned Tokgv  
PrioritynormalSeverityminor 
Status closedResolutionfixed 
PlatformAOSL 
Product Version6.5.2 
Target Version6.5.3Fixed in Version6.5.3 
Summary0022971: TKOpenGl clean up obsolete functionality
DescriptionThis is required to clean up TKOpenGl from obsoleted code.
Current targets:

1) Rendering primitives that duplicates functionality: TriangleMesh, TriangleSet, Bezier, Polyline, Polygon, PolygonHoles, QuadrangleMesh, QuadrangleSet duplicates functionality of PrimitiveArray and should be removed from classes OpenGl_GraphicDriver, Graphic3d_GraphicDriver and Graphic3d_Group; appearances in OCCT should be updated to use PrimitiveArray. Notice that some primitives are already removed during 0022819 task (QuadrangleSet, Bezier) and for some of them no more provided implementation.

2) Merge OpenGl_GraphicDriver_*.cxx files into OpenGl_GraphicDriver.cxx. There no (more) need for such splitting and currently it just complicates code navigation.
TagsNo tags attached.
Test case numberTest case is not required

Relationships

related to 0022819 closedbugmaster Open CASCADE Redesign of OpenGl driver 
related to 0023093 closedatp Open CASCADE Update Visualization User's Guide to reflect removal of some graphic primitive types 
related to 0023385 closedbugmaster Community Bug in AIS_TexturedShape::Compute() 
related to 0023634 closedkgv Open CASCADE Eliminate Polyline and Polygon usage in drawers 

Activities

kgv

2012-03-16 11:25

developer   ~0020010

in bug branch CR22971 of git repository:
- Completely removed PolygonHoles, QuadrangleMesh, TriangleMesh, TriangleSet, Bezier,
- Leaved one (still used) Polygon interface.
- Polyline redirected to primitives array on Graphic3d_Group layer.
- Removed unused StdPrs_ShadedPoleSurface class.
- AIS_TexturedShape now uses primitive arrays (Texture coordinates functionality added StdPrs_ShadedShape to eliminate code duplication; Prs3d_ShadedShape template code movied to StdPrs_ShadedShape).

Pending changes:
- Replace TriangleSet usage from products (SMDSInter_OBJDisplayer, critical).
- InterfaceGraphic_Cextern.hxx contains declarations for no more implemented/exported functions call_togl_XXX. This header should probably removed at all to avoid confusion.
- Remove usage of Graphic3d_ArrayOfPrimitives::IsEnable() which is now meaningless.
- Completely remove Polygon and Polyline primitives.
- Replace OpenGl_Polyline (used inside the OpenGl package) within primitive arrays to completely remove OpenGl_Polyline class.
- Graphic3d_VertexXXX, Graphic3d_Array1OfVertexXXX classes series are subject for removal (previously used by TriangleSet and so on).
- Merge OpenGl_GraphicDriver_*.cxx files into OpenGl_GraphicDriver.cxx.

Hidden points:
- BUC60720 command probably doesn't test now the same thing.

If TriangleSet will be replaced in products then intermediate progress could be tested / integrated.

szv

2012-03-16 11:42

manager   ~0020011

Please note that package SMDSInter is obsolete and is not included in OMF product anymore. So we should not care about its updating.

kgv

2012-03-16 11:52

developer   ~0020012

Last edited: 2012-03-16 11:52

2 san,
please review the patch.

san

2012-03-23 06:48

developer   ~0020109

CR22971 branch reviewed without remarks, ready for testing.

apn

2012-03-23 17:07

administrator   ~0020123

Dear san,
    I have merged branch CR22971 with master to solve problems with compilation.
Please review this patch.

apn

2012-03-26 10:18

administrator   ~0020130

Dear BugMaster,
     Workbench KAS:dev:apn-22971-occt was created from git branch CR22971 (and apn-22971-products from svn trunk) and compiled on Linux platform.
     
     There is compilation error:

Info : -------> StdPrs_ShadedSurface.cxx
Error : Errors occured in Shell
/dn47/KAS/dev/apn-22971-occt/src/StdPrs/StdPrs_ShadedSurface.cxx: In static member function 'static void StdPrs_ShadedSurface::Add(const Handle_Prs3d_Presentation&, const Adaptor3d_Surface&, const Handle_Prs3d_Drawer&)':

/dn47/KAS/dev/apn-22971-occt/src/StdPrs/StdPrs_ShadedSurface.cxx:174: error: 'class Graphic3d_Group' has no member named 'TriangleMesh'

Error : Failed : StdPrs_ShadedSurface.cxx
Info : ----------------------- Compilation Report -----------------------
Info : Failed : :KAS:dev:apn-22971-occt:StdPrs:source:StdPrs_ShadedSurface.cxx
Info : -----------------------------------------------------------------

kgv

2012-03-26 11:43

developer   ~0020132

Dear apn,
your merge killed changes from patch and this caused compilation errors.

Patch was rebased against current master and placed in CR22971_1 branch.
Please test it.

apn

2012-03-27 15:35

administrator   ~0020163

Last edited: 2012-03-27 18:00

My mistake. Git branch CR22971_2 will be tested and analyzed.

apn

2012-03-29 18:24

administrator   ~0020208

Last edited: 2012-03-29 18:25

Dear BugMaster,
      Workbench KAS:dev:apn-22971-occt was created from git branch CR22971_2 (and apn-22971-products from svn trunk) and compiled on Linux platform.
      
      There are following regressions in apn-22971-products regarding to KAS:dev:products-20120323-opt:
      
      chl 928 R8 T7 T8 T9 U1 U2 U3 U4 U5 U6 U7 U8 U9 (different gif)

      See results in /QADisk/occttests/results/KAS/dev/apn-22971-products_29032012/lin
      See reference results in /QADisk/OCCTtests/KAS/dev/products-20120323-opt_23032012/lin
      See test cases in /QADisk/occttests/tests/ED

kgv

2012-03-30 12:04

developer   ~0020220

OpenGl_PrimitiveArray rendered polyline primitives twice if Face Aspect has Edge option turned on (default value). This is meaningless and disabled in patch.
Also vgrid command was added to activate grid in 3D Viewer.

CR22971_2 is ready for review.

san

2012-03-30 12:10

developer   ~0020221

CR22971_2 reviewed without remarks, ready for testing.

apn

2012-03-30 17:02

administrator   ~0020228

Dear BugMaster,
       Workbench KAS:dev:apn-22971-occt was created from git branch CR22971_2 (and apn-22971-products from svn trunk) and compiled on Linux platform.
       
       There are not regressions in apn-22971-products regarding to KAS:dev:products-20120326-opt
       
       See results in /QADisk/occttests/results/KAS/dev/apn-22971-products_30032012/lin
       See reference results in /QADisk/occttests/results/KAS/dev/products-20120326-opt_26032012/lin
       See test cases in /QADisk/occttests/tests/ED

Related Changesets

occt: master 2bd4c032

2012-03-30 13:25:28

kgv

Details Diff
0022971: TKOpenGl clean up obsolete functionality

Added native handles to OpenGl_Context
Removed unused and unimplemented PolygonHoles
Removed unimplemented Polygon functions
Removed unused QuadrangleMesh functions
Removed unused TriangleMesh functions
Removed dead Bezier function declarations
Redirect Graphic3d_Group::Polyline() to primitives array

Move Prs3d_ShadedShape template code to StdPrs_ShadedShape
where it is only used before.

Remove TriangleSet usage from AIS_TexturedShape

Texture coordinates functionality added StdPrs_ShadedShape
to eliminate code duplication.

Eliminated usage of TriangleSet from QABugs_PresentableObject
Eliminated usage of TriangleMesh from StdPrs_ShadedSurface

Removed TriangleMesh and TriangleSet support
OpenGl_PrimitiveArray - render Edges only for primitives > GL_LINE_STRIP
Added vgrid command to show grid in 3D Viewer
Affected Issues
0022971
mod - src/AIS/AIS_TexturedShape.cdl Diff File
mod - src/AIS/AIS_TexturedShape.cxx Diff File
mod - src/Graphic3d/FILES Diff File
mod - src/Graphic3d/Graphic3d_GraphicDriver.cdl Diff File
mod - src/Graphic3d/Graphic3d_Group.cdl Diff File
rm - src/Graphic3d/Graphic3d_Group_11.cxx Diff File
mod - src/Graphic3d/Graphic3d_Group_5.cxx Diff File
mod - src/Graphic3d/Graphic3d_Group_7.cxx Diff File
rm - src/Graphic3d/Graphic3d_Group_9.cxx Diff File
mod - src/OpenGl/FILES Diff File
mod - src/OpenGl/OpenGl_Context.cxx Diff File
mod - src/OpenGl/OpenGl_Context.hxx Diff File
mod - src/OpenGl/OpenGl_GraphicDriver.hxx Diff File
mod - src/OpenGl/OpenGl_GraphicDriver_705.cxx Diff File
rm - src/OpenGl/OpenGl_GraphicDriver_707.cxx Diff File
rm - src/OpenGl/OpenGl_GraphicDriver_709.cxx Diff File
rm - src/OpenGl/OpenGl_GraphicDriver_711.cxx Diff File
rm - src/OpenGl/OpenGl_Mesh.cxx Diff File
rm - src/OpenGl/OpenGl_Mesh.hxx Diff File
mod - src/OpenGl/OpenGl_Polyline.cxx Diff File
mod - src/OpenGl/OpenGl_Polyline.hxx Diff File
mod - src/OpenGl/OpenGl_PrimitiveArray.cxx Diff File
rm - src/OpenGl/OpenGl_QuadrangleStrip.cxx Diff File
rm - src/OpenGl/OpenGl_QuadrangleStrip.hxx Diff File
rm - src/OpenGl/OpenGl_TriangleStrip.cxx Diff File
rm - src/OpenGl/OpenGl_TriangleStrip.hxx Diff File
mod - src/Prs3d/Prs3d.cdl Diff File
rm - src/Prs3d/Prs3d_ShadedShape.cdl Diff File
rm - src/Prs3d/Prs3d_ShadedShape.gxx Diff File
mod - src/QABugs/QABugs_PresentableObject.cxx Diff File
mod - src/StdPrs/StdPrs.cdl Diff File
rm - src/StdPrs/StdPrs_ShadedPoleSurface.cdl Diff File
rm - src/StdPrs/StdPrs_ShadedPoleSurface.cxx Diff File
add - src/StdPrs/StdPrs_ShadedShape.cdl Diff File
add - src/StdPrs/StdPrs_ShadedShape.cxx Diff File
mod - src/StdPrs/StdPrs_ShadedSurface.cxx Diff File
mod - src/ViewerTest/ViewerTest_ViewerCommands.cxx Diff File

Issue History

Date Modified Username Field Change
2012-02-02 09:22 kgv New Issue
2012-02-02 09:22 kgv Assigned To => san
2012-02-02 09:44 kgv Relationship added related to 0022819
2012-02-09 09:50 abv Target Version 6.5.3 => 6.5.4
2012-03-16 11:25 kgv Note Added: 0020010
2012-03-16 11:42 szv Note Added: 0020011
2012-03-16 11:52 kgv Assigned To san => kgv
2012-03-16 11:52 kgv Note Added: 0020012
2012-03-16 11:52 kgv Assigned To kgv => san
2012-03-16 11:52 kgv Status new => resolved
2012-03-16 11:52 kgv Note Edited: 0020012
2012-03-21 14:42 abv Target Version 6.5.4 => 6.5.3
2012-03-23 06:48 san Note Added: 0020109
2012-03-23 06:48 san Assigned To san => bugmaster
2012-03-23 06:48 san Status resolved => reviewed
2012-03-23 12:09 mkv Assigned To bugmaster => apn
2012-03-23 17:07 apn Note Added: 0020123
2012-03-23 17:08 apn Assigned To apn => san
2012-03-23 17:08 apn Status reviewed => assigned
2012-03-23 17:09 apn Status assigned => resolved
2012-03-23 18:26 san Assigned To san => bugmaster
2012-03-23 18:26 san Status resolved => reviewed
2012-03-26 09:54 apn Assigned To bugmaster => apn
2012-03-26 10:18 apn Note Added: 0020130
2012-03-26 10:19 apn Assigned To apn => kgv
2012-03-26 10:19 apn Status reviewed => assigned
2012-03-26 11:43 kgv Note Added: 0020132
2012-03-26 11:43 kgv Status assigned => resolved
2012-03-26 11:43 kgv Assigned To kgv => apn
2012-03-26 11:43 kgv Status resolved => reviewed
2012-03-27 15:35 apn Note Added: 0020163
2012-03-27 15:36 apn Assigned To apn => dbv
2012-03-27 15:36 apn Status reviewed => assigned
2012-03-27 15:47 apn Assigned To dbv => apn
2012-03-27 15:47 apn Status assigned => resolved
2012-03-27 15:47 apn Status resolved => reviewed
2012-03-27 15:58 apn Note Edited: 0020163
2012-03-27 15:59 apn Test case number => Test case is not required
2012-03-27 15:59 apn Assigned To apn => bugmaster
2012-03-27 15:59 apn Status reviewed => tested
2012-03-27 17:58 apn Assigned To bugmaster => apl
2012-03-27 17:58 apn Status tested => assigned
2012-03-27 17:58 apn Status assigned => resolved
2012-03-27 17:58 apn Status resolved => reviewed
2012-03-27 17:58 apn Assigned To apl => apn
2012-03-27 18:00 apn Note Edited: 0020163
2012-03-29 18:24 apn Note Added: 0020208
2012-03-29 18:25 apn Note Edited: 0020208
2012-03-29 18:25 apn Assigned To apn => kgv
2012-03-29 18:25 apn Status reviewed => assigned
2012-03-30 12:04 kgv Note Added: 0020220
2012-03-30 12:04 kgv Assigned To kgv => san
2012-03-30 12:04 kgv Status assigned => resolved
2012-03-30 12:10 san Note Added: 0020221
2012-03-30 12:10 san Assigned To san => bugmaster
2012-03-30 12:10 san Status resolved => reviewed
2012-03-30 12:12 apn Assigned To bugmaster => apn
2012-03-30 17:02 apn Note Added: 0020228
2012-03-30 17:02 apn Assigned To apn => bugmaster
2012-03-30 17:02 apn Status reviewed => tested
2012-04-02 12:34 kgv Changeset attached => occt master 2bd4c032
2012-04-02 12:35 kgv Assigned To bugmaster => kgv
2012-04-02 12:35 kgv Status tested => verified
2012-04-02 12:35 kgv Resolution open => fixed
2012-04-10 17:16 san Relationship added related to 0023093
2012-08-16 17:53 san Relationship added related to 0023385
2012-12-12 18:06 kgv Relationship added related to 0023634