View Issue Details

IDProjectCategoryView StatusLast Update
0031424Open CASCADEOCCT:Visualizationpublic2020-12-02 17:12
Reporterkgv Assigned Tokgv  
PrioritynormalSeverityminor 
Status closedResolutionfixed 
Product Version7.0.0 
Target Version7.5.0Fixed in Version7.5.0 
Summary0031424: Visualization - stop using Prs3d_Drawer::HLRAngle() parameter
DescriptionThere is a massive confusion within two Prs3d_Drawer parameters: HLRAngle() and DeviationAngle(). For some reason, HLRAngle() has been used for BRepMesh input parameters, while its name clearly indicates its reference to HLR algorithm.

These parameters have different defaults, so that this substitution is unsafe:
  myDeviationAngle                (12.0 * M_PI / 180.0),
  myHLRAngle                      (20.0 * M_PI / 180.0),


It is desired to break this endless loop and stop using HLRAngle() in wrong places. For smooth porting, it might be necessary:
- Changing default value of DeviationAngle() property to much current HLRAngle.
- Marking HLRAngle()/SetHLRAngle() as deprecated with redirection to DeviationAngle() property.

The main purpose is to allow safe transition of existing projects relying on HLRAngle() property misuse for triangulation algorithm, as actual HLR parameter is much rarely used.
TagsNo tags attached.
Test case number

Relationships

related to 0030598 assignedasuraven Open CASCADE Visualization - redesign Prs3d_Drawer as aspects map 

Activities

git

2020-03-13 00:34

administrator   ~0090921

Branch CR31424_1 has been created by kgv.

SHA-1: 5fb72d899756388c2eaeb24c6d25a37c620aa165


Detailed log of new commits:

Author: kgv
Date: Fri Mar 13 00:35:06 2020 +0300

    0031424: Visualization - stop using Prs3d_Drawer::HLRAngle() parameter
    
    Prs3d_Drawer, AIS_Shape, AIS_InteractiveContext - removed properties HLRDeviationCoefficient() and HLRAngle().
    Prs3d_Drawer::HLRAngle() is kept as alias to Prs3d_Drawer::DeviationAngle() with deprecated flag.
    Prs3d_Drawer::DeviationAngle() default value is changed from 12 to 20 degrees
    to match Prs3d_Drawer::HLRAngle() which has been previously used in majority of cases.
    Removed unused property HLRBRep_PolyAlgo::Angle().

git

2020-03-13 00:36

administrator   ~0090922

Branch CR31424_2 has been created by kgv.

SHA-1: 870dd294658f8fd017eaa9a25fc3ca967e709b19


Detailed log of new commits:

Author: kgv
Date: Fri Mar 13 00:35:06 2020 +0300

    0031424: Visualization - stop using Prs3d_Drawer::HLRAngle() parameter
    
    Prs3d_Drawer, AIS_Shape, AIS_InteractiveContext - removed properties HLRDeviationCoefficient() and HLRAngle().
    Prs3d_Drawer::HLRAngle() is kept as alias to Prs3d_Drawer::DeviationAngle() with deprecated flag.
    Prs3d_Drawer::DeviationAngle() default value is changed from 12 to 20 degrees
    to match Prs3d_Drawer::HLRAngle() which has been previously used in majority of cases.
    Removed unused property HLRBRep_PolyAlgo::Angle().

git

2020-03-13 07:54

administrator   ~0090924

Branch CR31424_2 has been updated forcibly by kgv.

SHA-1: c21f9b1668898904f43e3c5c81892f3750a0d805

kgv

2020-03-13 09:18

developer   ~0090925

Last edited: 2020-03-16 18:44

Patch is ready for review.

http://jenkins-test-12.nnov.opencascade.com:8080/view/CR31424_3-CR31424_3-KGV/

git

2020-03-16 10:02

administrator   ~0090947

Branch CR31424_3 has been created by kgv.

SHA-1: 07c38e683708ac65ff7b5f63cb3c3c13fd27e900


Detailed log of new commits:

Author: kgv
Date: Fri Mar 13 00:35:06 2020 +0300

    0031424: Visualization - stop using Prs3d_Drawer::HLRAngle() parameter
    
    Prs3d_Drawer, AIS_Shape, AIS_InteractiveContext - removed properties HLRDeviationCoefficient() and HLRAngle().
    Prs3d_Drawer::HLRAngle() is kept as alias to Prs3d_Drawer::DeviationAngle() with deprecated flag.
    Prs3d_Drawer::DeviationAngle() default value is changed from 12 to 20 degrees
    to match Prs3d_Drawer::HLRAngle() which has been previously used in majority of cases.
    Removed unused property HLRBRep_PolyAlgo::Angle().

Author: kgv
Date: Sat Mar 14 20:34:46 2020 +0300

    0031431: Visualization, PrsMgr_PresentableObject - simplify HLR computing interface
    
    Multiple PrsMgr_PresentableObject::Compute() methods have been replaced by single one
    PrsMgr_PresentableObject::computeHLR().
    Dummy implementations of previously declared methods have been removed
    from AIS classes not implementng HLR presentation.
    Class Prs3d_Projector has been removed and Graphic3d_Camera is now passed directly,
    so that redundant dependency from HLRAlgo_Projector in Prs3d interfaces has been eliminated.
    StdPrs_HLRShape and StdPrs_HLRPolyShape now implement common interface StdPrs_HLRShapeI.

git

2020-03-16 11:22

administrator   ~0090951

Branch CR31424_3 has been updated forcibly by kgv.

SHA-1: fde078c910ad619590dbb9e47dd358055f3187d8

git

2020-03-16 12:27

administrator   ~0090959

Branch CR31424_3 has been updated forcibly by kgv.

SHA-1: f54ced2b1c3fb2260fadb48e9ba70fb4b6e7de69

git

2020-03-16 12:55

administrator   ~0090963

Branch CR31424_3 has been updated forcibly by kgv.

SHA-1: 9b21895f31f5983bcb4e0190e04e0671fe1188f4

git

2020-03-16 16:56

administrator   ~0090974

Branch CR31424_3 has been updated forcibly by kgv.

SHA-1: 67441d0ca30466eec83edf8e8f87fcfd45c07119

osa

2020-03-17 09:08

developer   ~0090980

The patches in OCCT and Products were reviewed

git

2020-03-22 11:31

administrator   ~0091127

Branch CR31424_3 has been deleted by inv.

SHA-1: 67441d0ca30466eec83edf8e8f87fcfd45c07119

git

2020-03-22 11:31

administrator   ~0091130

Branch CR31424_2 has been deleted by inv.

SHA-1: c21f9b1668898904f43e3c5c81892f3750a0d805

git

2020-03-22 11:31

administrator   ~0091131

Branch CR31424_1 has been deleted by inv.

SHA-1: 5fb72d899756388c2eaeb24c6d25a37c620aa165

bugmaster

2020-03-22 11:42

administrator   ~0091164

Combination -
OCCT branch : IR-2020-03-20
master SHA - 7ef1f9b7c1d9301c158a593dc5facb5a33450318
fe4497f3246e6bc1ced97ac331c148f0809ded15
Products branch : IR-2020-03-20 SHA - f10b867b449ebfa55e0a3c8cb276ae511f9cf7f2
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: 16845.960000000137 / 16685.300000000094 [+0.96%]
Products
Total CPU difference: 11305.960000000074 / 11298.700000000106 [+0.06%]
Windows-64-VC14:
OCCT
Total CPU difference: 18268.609375 / 18088.765625 [+0.99%]
Products
Total CPU difference: 13110.078125 / 13084.390625 [+0.20%]


Image differences :
No differences that require special attention

Memory differences :
No differences that require special attention

Related Changesets

occt: master 67441d0c

2020-03-12 21:35:06

kgv

Details Diff
0031424: Visualization - stop using Prs3d_Drawer::HLRAngle() parameter

Prs3d_Drawer, AIS_Shape, AIS_InteractiveContext - removed properties HLRDeviationCoefficient() and HLRAngle().
Prs3d_Drawer::HLRAngle() is kept as alias to Prs3d_Drawer::DeviationAngle() with deprecated flag.
Prs3d_Drawer::DeviationAngle() default value is changed from 12 to 20 degrees
to match Prs3d_Drawer::HLRAngle() which has been previously used in majority of cases.
Removed unused property HLRBRep_PolyAlgo::Angle().
Affected Issues
0031424
mod - dox/dev_guides/upgrade/upgrade.md Diff File
mod - samples/ios/UIKitSample/UIKitSample/OcctViewer.mm Diff File
mod - src/AIS/AIS_ColoredShape.cxx Diff File
mod - src/AIS/AIS_InteractiveContext.cxx Diff File
mod - src/AIS/AIS_InteractiveContext.hxx Diff File
mod - src/AIS/AIS_Shape.cxx Diff File
mod - src/AIS/AIS_Shape.hxx Diff File
mod - src/DBRep/DBRep_HideData.cxx Diff File
mod - src/DBRep/DBRep_HideData.hxx Diff File
rm - src/DBRep/DBRep_HideData.lxx Diff File
mod - src/DBRep/FILES Diff File
mod - src/HLRBRep/FILES Diff File
mod - src/HLRBRep/HLRBRep_PolyAlgo.cxx Diff File
mod - src/HLRBRep/HLRBRep_PolyAlgo.hxx Diff File
rm - src/HLRBRep/HLRBRep_PolyAlgo.lxx Diff File
mod - src/Prs3d/Prs3d_Drawer.cxx Diff File
mod - src/Prs3d/Prs3d_Drawer.hxx Diff File
mod - src/StdPrs/StdPrs_HLRPolyShape.cxx Diff File
mod - src/StdPrs/StdPrs_ToolTriangulatedShape.cxx Diff File
mod - src/ViewerTest/ViewerTest_ViewerCommands.cxx Diff File
mod - tests/bugs/vis/bug26014 Diff File

Issue History

Date Modified Username Field Change
2020-03-11 15:15 kgv New Issue
2020-03-11 15:15 kgv Assigned To => kgv
2020-03-13 00:34 git Note Added: 0090921
2020-03-13 00:36 git Note Added: 0090922
2020-03-13 00:36 kgv Description Updated
2020-03-13 07:54 git Note Added: 0090924
2020-03-13 09:18 kgv Note Added: 0090925
2020-03-13 09:18 kgv Assigned To kgv => osa
2020-03-13 09:18 kgv Status new => resolved
2020-03-13 09:20 kgv Relationship added related to 0030598
2020-03-16 10:02 git Note Added: 0090947
2020-03-16 11:22 git Note Added: 0090951
2020-03-16 12:27 git Note Added: 0090959
2020-03-16 12:55 git Note Added: 0090963
2020-03-16 16:56 git Note Added: 0090974
2020-03-16 18:44 kgv Note Edited: 0090925
2020-03-17 09:08 osa Note Added: 0090980
2020-03-17 09:08 osa Assigned To osa => bugmaster
2020-03-17 09:08 osa Status resolved => reviewed
2020-03-19 16:31 kgv Changeset attached => occt master 67441d0c
2020-03-19 16:31 kgv Assigned To bugmaster => kgv
2020-03-19 16:31 kgv Status reviewed => verified
2020-03-19 16:31 kgv Resolution open => fixed
2020-03-22 11:31 git Note Added: 0091127
2020-03-22 11:31 git Note Added: 0091130
2020-03-22 11:31 git Note Added: 0091131
2020-03-22 11:42 bugmaster Note Added: 0091164
2020-12-02 16:43 emo Fixed in Version => 7.5.0
2020-12-02 17:12 emo Status verified => closed