MantisBT
Mantis Bug Tracker Workflow

View Issue Details Jump to Notes ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0032448Open CASCADE[OCCT] OCCT:Modeling Algorithmspublic2021-06-16 18:382021-10-13 19:39
Reporterasuraven 
Assigned Toakaftasev 
PrioritynormalSeverityminor 
StatusassignedResolutionopen 
PlatformOSOS Version
Product Version 
Target Version[OCCT] 7.6.0*Fixed in Version 
Summary0032448: Modeling Algorithms - Provide exact validating (as option) using GeomLib_CheckCurveOnSurface
DescriptionNow checking of a curve on a surface validity processing in finite number of points. At the same time there is an exact method in Geom[Brep]Lib_CheckCurveOnSurface classes. Direct changing an approximate to an exact method entails too many (about 1000) regressions. It is suggested to use the exact method as option for future use.
A path file with implementation of this task form CR29059-6 branch is attached.
Steps To Reproducenot exist
TagsNo tags attached.
Test case number
Attached Filespatch file icon 0029059_6-It-is-necessary-to-have-a-unique-way-of-chec.patch (70,299 bytes) 2021-06-16 18:38
xlsx file icon CR32448_full_compare.xlsx (15,017 bytes) 2021-10-04 17:02
log file icon 32448win.log (14,312 bytes) 2021-10-04 17:02

- Relationships
related to 0029059verifiedbugmaster Open CASCADE Modeling Algorithms - It is necessary to have a unique way of checking of the validity of the edge and its 2D curves 

-  Notes
(0101876)
asuraven (developer)
2021-06-16 18:39

(0102853)
git (administrator)
2021-07-28 17:31

Branch CR32448 has been created by asuraven.

SHA-1: 19e31a08f1fc1f8a230be3dbd571ee67cee27b62


Detailed log of new commits:

Author: asuraven
Date: Wed Jul 28 13:19:22 2021 +0300

    0032448: Modeling Algorithms - Provide exact validating (as option) using GeomLib_CheckCurveOnSurface
    
    Add '-exact' option to checkshape command to use exact method to validate edges using BRepLib_ValidateEdge class. Default mode is calculating in finite number of points.
(0102862)
asuraven (developer)
2021-07-28 20:34

(0102866)
git (administrator)
2021-07-29 12:11

Branch CR32448 has been updated forcibly by asuraven.

SHA-1: 12309bfe70285364999005b3dc342aebba4e2b83
(0102876)
asuraven (developer)
2021-07-29 19:07

(0102900)
git (administrator)
2021-07-30 18:06

Branch CR32448_1 has been created by asuraven.

SHA-1: a70c84226fe3237ee820d0eafd60de253fbfe386


Detailed log of new commits:

Author: asuraven
Date: Wed Jul 28 13:19:22 2021 +0300

    0032448: Modeling Algorithms - Provide exact validating (as option) using GeomLib_CheckCurveOnSurface
    
    Add '-exact' option to checkshape command to use exact method to validate edges using BRepLib_ValidateEdge class. Default mode is calculating in finite number of points.
(0102902)
asuraven (developer)
2021-07-30 18:18

Michael, please make a preliminary review of the code in the CR32448_1 branch. There are no test results in the branch because the server is currently off.
Newly added tests are local OK
(0102943)
msv (developer)
2021-08-02 21:38

src/BRepLib/BRepLib_ValidateEdge.hxx
  //! BRepLib_CheckCurveOnSurface class (if theIsExact is true, slowly, but more correctly. 

Close parenthesis is missed.

  //! Default method is exact

This is not true.
Also, add a note that exact method is used only when edge is SameParameter.

Instead of adding the method SetParallel add the optional parameter theMultiThread in Process method. By the way, myIsParallel is not initialized in the constructor.

src/BRepTest/BRepTest_CheckCommands.cxx
Add option -exact into help.

src/BRepCheck/BRepCheck_Result.hxx
  Standard_Boolean myIsParallel;

No need to add this flag. Check for parallel by myMutex.IsNull().

src/BRepCheck/BRepCheck_Edge.cxx
The field myIsExactMethod is not initialized.

src/BRepCheck/BRepCheck_Analyzer.hxx
Please add description of parameters theIsParallel and theIsExact.

Please add option -exact in user guide.
(0102944)
msv (developer)
2021-08-02 21:38

(0103245)
git (administrator)
2021-08-16 19:09

Branch CR32448_2 has been created by asuraven.

SHA-1: 02d458ee8bb66fa797f5dd4bf35dea7ab7542ab4


Detailed log of new commits:

Author: asuraven
Date: Wed Jul 28 13:19:22 2021 +0300

    0032448: Modeling Algorithms - Provide exact validating (as option) using GeomLib_CheckCurveOnSurface
    
    Add '-exact' option to checkshape command to use exact method to validate edges using BRepLib_ValidateEdge class. Default mode is calculating in finite number of points.
(0103249)
asuraven (developer)
2021-08-17 11:31
edited on: 2021-08-19 13:42



(0103251)
git (administrator)
2021-08-17 11:48

Branch CR32448_2 has been updated forcibly by asuraven.

SHA-1: 4ada7fa227852dbeef2363674bed2f5220f92b56
(0103252)
git (administrator)
2021-08-17 12:07

Branch CR32448_2 has been updated forcibly by asuraven.

SHA-1: 6b3c1edfd557d963b1dc8c220883ba07405fbdb3
(0103256)
git (administrator)
2021-08-17 12:57

Branch CR32448_2 has been updated forcibly by asuraven.

SHA-1: a6d5646cba00963682d9a00ecf9b0290b0da2dda
(0103258)
git (administrator)
2021-08-17 13:20

Branch CR32448_2 has been updated forcibly by asuraven.

SHA-1: fe890dec214cfe2b9d8e63f17607918ebe0c7999
(0103263)
git (administrator)
2021-08-17 16:51

Branch CR32448_2 has been updated forcibly by asuraven.

SHA-1: c45e4527ec19f1e13fe421abd1c95b85b05419a9
(0103531)
git (administrator)
2021-08-30 12:23

Branch CR32448_2 has been updated forcibly by asuraven.

SHA-1: a882d0217fdad7c513d920500e0c0140e566f59b
(0103555)
asuraven (developer)
2021-08-30 18:11

(0103644)
asuraven (developer)
2021-09-01 18:35

(0103663)
git (administrator)
2021-09-02 11:44

Branch CR32448_2 has been updated forcibly by asuraven.

SHA-1: fe14f7d9b6fd204fe06cf09018fdc0c975aab0e2
(0104258)
git (administrator)
2021-09-21 14:22

Branch CR32448_2 has been updated forcibly by asuraven.

SHA-1: 71ec33f371a7a766eb2b8da5392c24b5052a71ae
(0104261)
asuraven (developer)
2021-09-21 15:08

(0104395)
git (administrator)
2021-09-27 13:21

Branch CR32448_2 has been updated forcibly by asuraven.

SHA-1: af03392cc037d3e6a971cc6f81ef00777cc7f5b6
(0104454)
git (administrator)
2021-09-30 17:12

Branch CR32448_2 has been updated by asuraven.

SHA-1: 211028dd269a35df7039079f9290b0cc00b1aeb5


Detailed log of new commits:

Author: asuraven
Date: Thu Sep 30 17:12:13 2021 +0300

    0032448: chrono

(0104505)
asuraven (developer)
2021-10-04 17:03

The task is generally solved, but new tests bug32448_2 bug32448_5 bug32448_10 are killed by CPU limit (300 sec) on Debian80-64. I did a benchmark comparison for test models for windows and Debian in all modes (see CR32448_full_compare.xlsx). Tests showed a decrease in performance on Unix up to 10 times. However, all tests were successful on both sysmems. I assume that the problem of poor performance on Unix is outside of this task, but it is necessary to check which area of the code is causing the slowdown.
The branch CR32448_2 contains, in addition to the main commit, 2 temporary ones: with additional tests and containing the execution time logging. The file 32448win.log contains results of windows time logging, but it is necessary to carry out similar ones for unix, compare the results and make a decision on this issue, for example, just increase cpulimit for failed tests.
(0104510)
msv (developer)
2021-10-04 23:14

I propose to increase CPU limit to pass tests in this bug, and create a new bug to investigate the cause of slow work on Linux in compare to Windows.
(0104587)
git (administrator)
2021-10-11 13:45

Branch CR32448_3 has been created by andrey.kaftasev_159541.

SHA-1: ed7394c324d3057f03a1f9322394592e5a3ad618


Detailed log of new commits:

Author: akaftasev
Date: Mon Oct 11 13:44:57 2021 +0300

    increase cpulimit

Author: asuraven
Date: Wed Jul 28 13:19:22 2021 +0300

    0032448: Modeling Algorithms - Provide exact validating (as option) using GeomLib_CheckCurveOnSurface
    
    Add '-exact' option to checkshape command to use exact method to validate edges using BRepLib_ValidateEdge class. Default mode is calculating in finite number of points.

Author: asuraven
Date: Thu Sep 2 11:41:49 2021 +0300

    0032448: temporary tests

Author: asuraven
Date: Thu Sep 30 17:12:13 2021 +0300

    0032448: chrono
(0104589)
git (administrator)
2021-10-11 16:16

Branch CR32448_3 has been updated by andrey.kaftasev_159541.

SHA-1: 3a57936933e97c14ad2a460578ad57d95bd402aa


Detailed log of new commits:

Author: akaftasev
Date: Mon Oct 11 16:16:35 2021 +0300

    update tests for use only short info

(0104613)
git (administrator)
2021-10-12 16:15

Branch CR32448_3 has been updated forcibly by andrey.kaftasev_159541.

SHA-1: 7bc098c075e047877d96b6aecb921a5b79b4a415

- Issue History
Date Modified Username Field Change
2021-06-16 18:38 asuraven New Issue
2021-06-16 18:38 asuraven Assigned To => msv
2021-06-16 18:38 asuraven File Added: 0029059_6-It-is-necessary-to-have-a-unique-way-of-chec.patch
2021-06-16 18:38 asuraven Relationship added related to 0029059
2021-06-16 18:39 asuraven Note Added: 0101876
2021-07-28 17:31 git Note Added: 0102853
2021-07-28 20:34 asuraven Note Added: 0102862
2021-07-29 12:11 git Note Added: 0102866
2021-07-29 19:07 asuraven Note Added: 0102876
2021-07-30 18:06 git Note Added: 0102900
2021-07-30 18:18 asuraven Note Added: 0102902
2021-07-30 18:18 asuraven Status new => resolved
2021-07-30 18:18 asuraven Steps to Reproduce Updated View Revisions
2021-08-02 21:38 msv Note Added: 0102943
2021-08-02 21:38 msv Note Added: 0102944
2021-08-02 21:38 msv Assigned To msv => asuraven
2021-08-02 21:38 msv Status resolved => assigned
2021-08-16 19:09 git Note Added: 0103245
2021-08-17 11:31 asuraven Note Added: 0103249
2021-08-17 11:48 git Note Added: 0103251
2021-08-17 12:07 git Note Added: 0103252
2021-08-17 12:57 git Note Added: 0103256
2021-08-17 13:20 git Note Added: 0103258
2021-08-17 16:51 git Note Added: 0103263
2021-08-19 13:42 asuraven Note Edited: 0103249 View Revisions
2021-08-30 12:23 git Note Added: 0103531
2021-08-30 18:11 asuraven Note Added: 0103555
2021-09-01 18:35 asuraven Note Added: 0103644
2021-09-02 11:44 git Note Added: 0103663
2021-09-21 14:22 git Note Added: 0104258
2021-09-21 15:08 asuraven Note Added: 0104261
2021-09-27 13:21 git Note Added: 0104395
2021-09-30 17:12 git Note Added: 0104454
2021-10-04 17:02 asuraven File Added: CR32448_full_compare.xlsx
2021-10-04 17:02 asuraven File Added: 32448win.log
2021-10-04 17:03 asuraven Note Added: 0104505
2021-10-04 23:14 msv Note Added: 0104510
2021-10-07 15:03 szy Assigned To asuraven => akaftasev
2021-10-11 13:45 git Note Added: 0104587
2021-10-11 16:16 git Note Added: 0104589
2021-10-12 16:15 git Note Added: 0104613
2021-10-13 14:28 akaftasev Relationship added related to 0032620


Copyright © 2000 - 2021 MantisBT Team
Powered by Mantis Bugtracker