MantisBT
Mantis Bug Tracker Workflow

View Issue Details Jump to Notes ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0025589Community[OCCT] OCCT:Meshpublic2014-12-10 16:422019-09-04 15:54
Reporterdrazmyslovich 
Assigned Tooan 
PrioritynormalSeverityminor 
StatusassignedResolutionopen 
PlatformWindowsOSVC++ 2010OS Version64 bit
Product Version[OCCT] 6.8.0 
Target Version[OCCT] 7.5.0*Fixed in Version 
Summary0025589: BRepMesh_WireInterferenceChecker doesn't report all cases of self-intersecting wires
DescriptionBRepMesh_WireInterferenceChecker currently doesn't detected all intersections of edges and therefore some faces couldn't be properly meshed.
Steps To Reproducepload ALL

restore face1507.brep a

tclean a
incmesh a 0.005

restore face3472.brep b

tclean b
incmesh b 0.005
TagsNo tags attached.
Test case number
Attached Files? file icon face1507.brep (4,133 bytes) 2019-08-08 14:57
? file icon face3472.brep (9,299 bytes) 2019-08-08 14:57

- Relationships

-  Notes
(0035272)
git (administrator)
2014-12-10 16:44

Branch CR25589 has been created by drazmyslovich.

SHA-1: 30d665dfb036fce22aae37386e711ac13cde7391


Detailed log of new commits:

Author: razmyslovich
Date: Wed Dec 10 14:43:53 2014 +0100

    0025589: modify the wire interference checker to detect all types of intersections
(0035274)
drazmyslovich (developer)
2014-12-10 16:44

The modification is provided, please, review
(0035331)
oan (developer)
2014-12-11 13:43

Dear Dima,

thank you for this fix! Could you please also provide a test case or problematic shape/face using which the problem can be reproduced?
(0074128)
abv (manager)
2018-02-25 21:10

Apparently we will not get any test data
(0080652)
msv (developer)
2018-11-02 17:50

Dear Dmitry, please check the bug state after integration of the fix for 0026106.
(0085445)
drazmyslovich (developer)
2019-07-05 16:32

I checked the latest state of OCC 7.4. The new FaceChecker class still doesn't report all cases of self-intersecting wires. But as the face and edge discretization logic was improved, the final meshing result is ok.
(0085454)
oan (developer)
2019-07-06 14:30

Hi Dima,

>>> But as the face and edge discretization logic was improved, the final meshing result is ok.
 
that sounds great!

>>> The new FaceChecker class still doesn't report all cases of self-intersecting wires.

Could you please attach some shapes demonstrating this problem?
If we got some, it would be possible to reproduce it and then improve the component.

If it is impossible to provide such use cases due to some reasons or commercial agreements, I suppose the issue can be closed.
(0086005)
drazmyslovich (developer)
2019-08-02 19:29

Hi, Oleg,

Unfortunately, I can't provide you with any reasonable example. Still, I can commit the code changes, which allows to detect the intersections more precisely and you can try to run the tests on your models base.

Should I submit the code changes?

Regards,
Dima
(0086006)
oan (developer)
2019-08-03 13:19

Hello Dima,

>>> Should I submit the code changes?
Surely! You are always welcome to provide patches and/or ideas for possible improvements.

>>> Unfortunately, I can't provide you with any reasonable example.
>>> Still, I can commit the code changes, which allows to detect the intersections more precisely
It is a pity... However, have you tested these changes somehow to check how they work in your environment?
If so, probably, there is some small, maybe synthetic, example shape, or just a face, that you can provide without loss of confidentiality.

>>> and you can try to run the tests on your models base.
That is a good idea.
And it is easy to do, if you have already ported these changes to current code base of BRepMesh.

Best regards,
Oleg.
(0086089)
git (administrator)
2019-08-08 14:57

Branch CR25589_1 has been created by drazmyslovich.

SHA-1: a19922de1857a2741133f0cad1c1455f5e34a592


Detailed log of new commits:

Author: drazmyslovich
Date: Thu Aug 8 13:54:53 2019 +0200

    0025589: Fix the intersection checking for mesh: consider PointOnSegment case as intersection; use the shortest path when calculate the self-intersection area
(0086090)
drazmyslovich (developer)
2019-08-08 15:00
edited on: 2019-08-08 15:00

Hello, Oleg,

as agreed I committed the ported changes for FaceChecker. Also, I was able to extract 2 faces where the changes have an effect, surely, it's not the sole faces in our model database, which are affected.
Please, run your tests and review the code changes.

Regards,
Dima

(0086110)
git (administrator)
2019-08-09 11:42

Branch CR25589_1 has been updated by oan.

SHA-1: 17fc2918cdb165d9a3a5d2bfe8f7134cbed63932


Detailed log of new commits:

Author: oan
Date: Fri Aug 9 11:40:09 2019 +0300

    # Added test cases

Author: oan
Date: Fri Aug 9 11:23:46 2019 +0300

    # Correction of code style

(0086123)
oan (developer)
2019-08-09 15:13

Test reports:
http://occt-tests/CR25589_1-master-OAN-OCCT/Debian80-64/diff_summary.html [^]

Regressions:
bugs moddata_2 bug428 (several faces are missing triangulation)
perf modalg bug25742_1 (several faces are missing triangulation)
bugs modalg_5 bug25847 (several faces are missing triangulation)
bugs moddata_1 bug22761
bugs modalg_2 bug21060

Improvements:
mesh advanced A6
mesh standard U6
mesh standard V2
mesh standard U7
bugs moddata_1 bug54
bugs modalg_1 bug1477_11
(0086124)
oan (developer)
2019-08-09 15:15

Dear Mikhail,

please have a look at the patch and test results and give your opinion.
(0086127)
msv (developer)
2019-08-09 15:40

I think it is needed to complete the patch, so that not to miss faces that earlier were well meshed.

- Issue History
Date Modified Username Field Change
2014-12-10 16:42 drazmyslovich New Issue
2014-12-10 16:42 drazmyslovich Assigned To => oan
2014-12-10 16:44 git Note Added: 0035272
2014-12-10 16:44 drazmyslovich Note Added: 0035274
2014-12-10 16:44 drazmyslovich Status new => resolved
2014-12-10 16:44 drazmyslovich Steps to Reproduce Updated View Revisions
2014-12-11 13:43 oan Note Added: 0035331
2014-12-11 13:43 oan Assigned To oan => drazmyslovich
2014-12-11 13:43 oan Status resolved => feedback
2015-04-17 10:16 oan Target Version 6.9.0 => 7.1.0
2016-10-25 17:40 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-02-25 21:10 abv Note Added: 0074128
2018-02-25 21:10 abv Assigned To drazmyslovich => oan
2018-02-25 21:10 abv Status feedback => resolved
2018-11-02 17:50 msv Note Added: 0080652
2018-11-02 17:50 msv Assigned To oan => drazmyslovich
2018-11-02 17:50 msv Status resolved => feedback
2019-07-05 16:32 drazmyslovich Note Added: 0085445
2019-07-05 16:32 drazmyslovich Assigned To drazmyslovich => oan
2019-07-05 16:32 drazmyslovich Status feedback => resolved
2019-07-06 14:30 oan Note Added: 0085454
2019-07-06 14:30 oan Assigned To oan => drazmyslovich
2019-07-06 14:30 oan Status resolved => feedback
2019-08-02 19:29 drazmyslovich Note Added: 0086005
2019-08-03 13:19 oan Note Added: 0086006
2019-08-08 14:57 git Note Added: 0086089
2019-08-08 14:57 drazmyslovich File Added: face1507.brep
2019-08-08 14:57 drazmyslovich File Added: face3472.brep
2019-08-08 15:00 drazmyslovich Note Added: 0086090
2019-08-08 15:00 drazmyslovich Assigned To drazmyslovich => oan
2019-08-08 15:00 drazmyslovich Status feedback => resolved
2019-08-08 15:00 drazmyslovich Steps to Reproduce Updated View Revisions
2019-08-08 15:00 drazmyslovich Note Edited: 0086090 View Revisions
2019-08-09 11:42 git Note Added: 0086110
2019-08-09 15:13 oan Note Added: 0086123
2019-08-09 15:13 oan Assigned To oan => msv
2019-08-09 15:15 oan Note Added: 0086124
2019-08-09 15:40 msv Note Added: 0086127
2019-08-09 15:40 msv Assigned To msv => oan
2019-08-09 15:40 msv Status resolved => assigned
2019-09-04 15:54 abv Target Version 7.4.0 => 7.5.0*


Copyright © 2000 - 2019 MantisBT Team
Powered by Mantis Bugtracker