View Issue Details

IDProjectCategoryView StatusLast Update
0025588CommunityOCCT:Meshpublic2019-09-29 12:36
Reporterdrazmyslovich Assigned Tobugmaster  
PrioritynormalSeverityminor 
Status closedResolutionfixed 
PlatformWindowsOSVC++ 2010 
Product Version6.8.0 
Target Version7.4.0Fixed in Version7.4.0 
Summary0025588: Mesh - BRepMesh_ShapeTool::FindUV check for 2d points to be the same is inconsistent with ShapeAnalysis_Wire::CheckLacking
DescriptionThe current ShapeTool implementation checks 2d points to be same/different using either the distance between the corresponding 3d points or the absolute difference 2d coordinates compared with the surface size. Such check is inconsistent with ShapeAnalysis_Wire::CheckLacking function. This inconsistency results in OpenWire flag, while CheckLacking doesn't report any problems.
Steps To Reproduce# Template to check attached files

restore <face_name>.brep result

tclean result
set log [incmesh result 0.01]

checktrinfo result -tri 0 -nod 0

regexp {Meshing statuses: (\w+)} $log str status
if [string match Failure $status] {
  puts "OK: Failure flag is returned"
} else {
  puts "Error: unexpected flag ($status)"
}

TagsNo tags attached.
Test case number

Attached Files

  • 25588.zip (962,204 bytes)

Relationships

related to 0026106 closedbugmaster Open CASCADE BRepMesh - revision of data model 
related to 0023111 closedbugmaster Open CASCADE Incorrect mesh 

Activities

git

2014-12-10 16:31

administrator   ~0035270

Branch CR25588 has been created by drazmyslovich.

SHA-1: 1a48f67651c699a53b3daddcae8d5462eeed4f73


Detailed log of new commits:

Author: razmyslovich
Date: Wed Dec 10 14:30:42 2014 +0100

    0025588: fix inconsistency in 2d coordinates equality check

drazmyslovich

2014-12-10 16:32

developer   ~0035271

The fix is committed, please, review

oan

2014-12-10 16:44

developer   ~0035273

Dear Dima,

thank you for the fix! Could you please also provide a test case or problematic shape/face using which the problem can be reproduced?

drazmyslovich

2014-12-17 15:11

developer  

25588.zip (962,204 bytes)

drazmyslovich

2014-12-17 15:16

developer   ~0035464

Dear Oleg, I've attached zip file with 32 failing faces. For all these faces the classifier original returns the status OpenWire, while with the provided fix the mesher ends up with too fee vertices status, since all these faces are small and contain only 2 edges... The problem of too few vertices can be solved by decreasing the deflection iteratively like for self-intersected wires. Additionally in the zip file you will find Pulso 1 Main model from grabCAD, which is actually a regression of my fix. So my fix isn't good enough in order to cover both cases... Regards, Dima

abv

2015-04-21 08:41

manager   ~0040070

I have checked the patch on current master (6.9.0.beta1), it produces 16 regressions (on 4 models) and 5 improvements (on 2 models):

Failed
mesh standard_incmesh J4 S8 V4 W5
mesh standard_incmesh_parallel J4 S8 V4 W5
mesh standard_mesh J4 S8 V4 W5
mesh standard_shading J4 S8 V4 W5
Improvements
bugs modalg_2 bug287
mesh standard_incmesh C9
mesh standard_incmesh_parallel C9
mesh standard_mesh C9
mesh standard_shading C9

nbv

2018-11-02 15:41

developer   ~0080634

Currently described algorithm is not actual. So, there is no point in any fix. The issue can be closed.

drazmyslovich

2018-11-02 16:29

developer   ~0080645

I'm not quite sure, what have you meant by the last comment, but ShapeAnalysis_Wire::CheckLacking is still different from BRepMesh_ShapeTool::FindUV in the way these functions evaluate the result, which causes the described problem - no lacking, but an open wire.

nbv

2018-11-02 16:40

developer   ~0080647

Dear drazmyslovich,

Next week the fixes 0026106, #30008, 0030305 and 0030322 will be integrated. As result, architecture of BRepMesh algorithm will be changed significantly.

As result BRepMesh_ShapeTool::FindUV(...) method will be vanished from OCCT.

So, please just clone MASTER version next week (when it will be pushed) and check your tests on new mesh. In case of any problems, please create new corresponding issue.

drazmyslovich

2018-11-02 16:55

developer   ~0080649

Dear nbv,
thank you for the explanation. Maybe, in this case also other issues created once by me do not make some sense anymore. Particularly, 0025044, 0025589 and 0025022

msv

2018-11-02 17:55

developer   ~0080653

Dear Dmitry, please check the bug state after integration of the fix for 0026106.

oan

2018-11-02 17:59

developer   ~0080656

Hello Dima,

All of these issues are still important, despite of the current state of BRepMesh. Probably, some problems are handled more correctly, but anyway they should not be closed yet, without proper checks.

As for current issue, FindUV functionality has been modified so it has became more complicated and thus changed its name and behavior.

We also waiting for 0025113 and thanks for 0029715.
The last one is included in the updated component.

Best regards.

oan

2018-11-17 23:23

developer   ~0081138

Faces from the attached archive represent cases of open wires where gap is covered by tolerance. These ones should result in closed discrete contours of null area formed by two straight links causing error of meshing algorithm (by default).

However, all of them can be meshed using more fair angular tolerance producing several points along the border edges via

incmesh a 0.1 -a 5

Model "2.stp" is meshed via vdisplay without errors according to tricheck command.

drazmyslovich

2019-08-07 10:36

developer   ~0086048

Last edited: 2019-08-07 10:37

On my point of view, this issue can be considered as closed - using the refactored BRepMesh module I do not experience these art of the problems anymore.

git

2019-08-30 18:45

administrator   ~0086556

Branch CR25588_1 has been created by oan.

SHA-1: a4cddcce4d995f46df90d011332109bfa418e2fe


Detailed log of new commits:

Author: oan
Date: Fri Aug 30 18:10:05 2019 +0300

    0025588: BRepMesh_ShapeTool::FindUV check for 2d points to be the same is inconsistent with ShapeAnalysis_Wire::CheckLacking
    
    Added test scripts

git

2019-09-02 10:53

administrator   ~0086609

Branch CR25588_1 has been updated forcibly by oan.

SHA-1: 1a94c10a86f1684c227f2128cecc4b4da55bb727

oan

2019-09-02 12:36

developer   ~0086611

Dear Mikhail,

please review test cases and close the issue.

Test reports:
http://occt-tests/CR25588-master-OAN-OCCT/Debian80-64/diff_summary.html
http://occt-tests/CR25588-master-OAN-OCCT/Windows-64-VC14/diff_summary.html

msv

2019-09-02 16:59

developer   ~0086619

Dear Oleg and Andrey (APN)

1. Move 2.stp from private to public data repository. It is not confidential as is attached to public bug.
2. Rename data files to add a prefix "bug25588_"
3. Rename the script bug25588 to bug25588_0, otherwise all images from other cases are included into report of this test.

msv

2019-09-02 17:06

developer   ~0086620

4. Re-save data files 1.stp_face*.brep without triangulations. For that do the following in Draw:
 foreach f [glob 1.stp_face*.brep] {
   restore $f a
   tcopy a b
   save b bug25588_$f
 }

oan

2019-09-11 12:44

developer   ~0087004

Dear bugmaster,

please take remarks from Mikhail into account, integrate test scripts and close the issue.

git

2019-09-29 12:36

administrator   ~0087607

Branch CR25588 has been deleted by inv.

SHA-1: 1a48f67651c699a53b3daddcae8d5462eeed4f73

git

2019-09-29 12:36

administrator   ~0087608

Branch CR25588_1 has been deleted by inv.

SHA-1: 1a94c10a86f1684c227f2128cecc4b4da55bb727

Related Changesets

occt: master cc50812d

2019-08-30 15:10:05

oan


Committer: bugmaster Details Diff
0025588: BRepMesh_ShapeTool::FindUV check for 2d points to be the same is inconsistent with ShapeAnalysis_Wire::CheckLacking Affected Issues
0025588
add - tests/bugs/mesh/bug25588 Diff File
add - tests/bugs/mesh/bug25588_1 Diff File
add - tests/bugs/mesh/bug25588_10 Diff File
add - tests/bugs/mesh/bug25588_11 Diff File
add - tests/bugs/mesh/bug25588_12 Diff File
add - tests/bugs/mesh/bug25588_13 Diff File
add - tests/bugs/mesh/bug25588_14 Diff File
add - tests/bugs/mesh/bug25588_15 Diff File
add - tests/bugs/mesh/bug25588_16 Diff File
add - tests/bugs/mesh/bug25588_17 Diff File
add - tests/bugs/mesh/bug25588_18 Diff File
add - tests/bugs/mesh/bug25588_19 Diff File
add - tests/bugs/mesh/bug25588_2 Diff File
add - tests/bugs/mesh/bug25588_20 Diff File
add - tests/bugs/mesh/bug25588_21 Diff File
add - tests/bugs/mesh/bug25588_22 Diff File
add - tests/bugs/mesh/bug25588_23 Diff File
add - tests/bugs/mesh/bug25588_24 Diff File
add - tests/bugs/mesh/bug25588_25 Diff File
add - tests/bugs/mesh/bug25588_26 Diff File
add - tests/bugs/mesh/bug25588_27 Diff File
add - tests/bugs/mesh/bug25588_28 Diff File
add - tests/bugs/mesh/bug25588_29 Diff File
add - tests/bugs/mesh/bug25588_3 Diff File
add - tests/bugs/mesh/bug25588_30 Diff File
add - tests/bugs/mesh/bug25588_31 Diff File
add - tests/bugs/mesh/bug25588_32 Diff File
add - tests/bugs/mesh/bug25588_4 Diff File
add - tests/bugs/mesh/bug25588_5 Diff File
add - tests/bugs/mesh/bug25588_6 Diff File
add - tests/bugs/mesh/bug25588_7 Diff File
add - tests/bugs/mesh/bug25588_8 Diff File
add - tests/bugs/mesh/bug25588_9 Diff File

Issue History

Date Modified Username Field Change
2014-12-10 16:29 drazmyslovich New Issue
2014-12-10 16:29 drazmyslovich Assigned To => oan
2014-12-10 16:31 git Note Added: 0035270
2014-12-10 16:32 drazmyslovich Note Added: 0035271
2014-12-10 16:32 drazmyslovich Status new => resolved
2014-12-10 16:32 drazmyslovich Steps to Reproduce Updated
2014-12-10 16:44 oan Note Added: 0035273
2014-12-10 16:44 oan Assigned To oan => drazmyslovich
2014-12-10 16:44 oan Status resolved => feedback
2014-12-17 15:11 drazmyslovich File Added: 25588.zip
2014-12-17 15:16 drazmyslovich Note Added: 0035464
2014-12-17 15:16 drazmyslovich Assigned To drazmyslovich => oan
2014-12-17 15:16 drazmyslovich Status feedback => resolved
2014-12-17 15:16 drazmyslovich Steps to Reproduce Updated
2014-12-23 16:06 oan Relationship added related to 0023111
2015-04-21 08:41 abv Note Added: 0040070
2015-04-21 08:41 abv Status resolved => assigned
2015-04-21 08:41 abv Target Version 6.9.0 => 7.1.0
2016-02-16 12:27 oan Steps to Reproduce Updated
2016-10-25 17:42 oan Relationship added related to 0026106
2016-10-25 17:42 oan Target Version 7.1.0 => 7.2.0
2017-07-20 12:43 oan Target Version 7.2.0 => 7.3.0
2018-02-25 21:09 abv Target Version 7.3.0 => 7.4.0
2018-11-02 15:41 nbv Note Added: 0080634
2018-11-02 15:42 nbv Assigned To oan => msv
2018-11-02 15:42 nbv Status assigned => feedback
2018-11-02 16:29 drazmyslovich Note Added: 0080645
2018-11-02 16:40 nbv Note Added: 0080647
2018-11-02 16:55 drazmyslovich Note Added: 0080649
2018-11-02 17:55 msv Note Added: 0080653
2018-11-02 17:55 msv Assigned To msv => drazmyslovich
2018-11-02 17:59 oan Note Added: 0080656
2018-11-17 23:23 oan Note Added: 0081138
2019-08-07 10:36 drazmyslovich Note Added: 0086048
2019-08-07 10:36 drazmyslovich Assigned To drazmyslovich => oan
2019-08-07 10:36 drazmyslovich Status feedback => resolved
2019-08-07 10:37 drazmyslovich Note Edited: 0086048
2019-08-30 18:45 git Note Added: 0086556
2019-09-02 10:53 git Note Added: 0086609
2019-09-02 12:36 oan Note Added: 0086611
2019-09-02 12:36 oan Assigned To oan => msv
2019-09-02 16:59 msv Note Added: 0086619
2019-09-02 17:00 msv Assigned To msv => oan
2019-09-02 17:00 msv Status resolved => assigned
2019-09-02 17:06 msv Note Added: 0086620
2019-09-02 18:14 oan Assigned To oan => apn
2019-09-04 16:14 kgv Summary BRepMesh_ShapeTool::FindUV check for 2d points to be the same is inconsistent with ShapeAnalysis_Wire::CheckLacking => Mesh - BRepMesh_ShapeTool::FindUV check for 2d points to be the same is inconsistent with ShapeAnalysis_Wire::CheckLacking
2019-09-04 22:04 abv Assigned To apn => bugmaster
2019-09-11 12:44 oan Note Added: 0087004
2019-09-25 07:45 bugmaster Assigned To bugmaster => oan
2019-09-25 07:45 bugmaster Status assigned => resolved
2019-09-25 07:45 bugmaster Assigned To oan => bugmaster
2019-09-25 07:45 bugmaster Status resolved => reviewed
2019-09-25 16:25 bugmaster Status reviewed => tested
2019-09-29 12:19 bugmaster Changeset attached => occt master cc50812d
2019-09-29 12:19 bugmaster Status tested => verified
2019-09-29 12:19 bugmaster Resolution open => fixed
2019-09-29 12:36 git Note Added: 0087607
2019-09-29 12:36 git Note Added: 0087608