View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0028674 | Open CASCADE | OCCT:Modeling Algorithms | public | 2017-04-21 16:34 | 2023-08-01 15:08 |
Reporter | Assigned To | ||||
Priority | normal | Severity | minor | ||
Status | assigned | Resolution | open | ||
Platform | Win | OS | VS 12 (2013) | ||
Product Version | 7.1.0 | ||||
Target Version | Unscheduled | ||||
Summary | 0028674: BRepTools_WireExplorer works unstable and does not return several edges | ||||
Description | Source face contains 14 edges (please check by "nbshapes ff"). However, script (see Steps To Reproduce) returns 3 edges or 11 edges from time to time. Additionally, Please pay attention to the message 0028211:0071726. There, BRepTools_WireExplorer works stable but after the fix, test bugs moddata_1 bug22761 will change its behavior -- P.S. This bug results in unstable work of test case "bugs moddata_2 bug22746_3" after integration the fix for issue #28211. | ||||
Steps To Reproduce | Face is obtained from the test case "bugs moddata_2 bug22746_3" binrestore d:/ff.brep ff explode ff w nbshapes ff_1 -t # VERTEX : 16; EDGE : 14 wexplo ff_1 f set n [llength [directory WEDGE_*]] puts "$n edge(s) found" ######################################################### Another script: See message 0028211:0071639. | ||||
Tags | No tags attached. | ||||
Test case number | |||||
related to | 0021968 | assigned | Open CASCADE | BRepTools_WireExplorer gives different number of edges in dependance of order of edges in wire. | |
related to | 0029121 | new | Open CASCADE | Iges-reader reads invalid shape | |
related to | 0008546 | assigned | Open CASCADE | The algorithm BRepTools_WireExplorer works wrong for the face attached | |
child of | 0029133 | closed | bugmaster | Open CASCADE | Unstable test cases |
2017-04-21 16:34 developer |
ff.brep (48,993 bytes) |
|
The script in steps to reproduce gives always 3 edges on OCCT built with VC12 and always 11 edges with VC10. |
|
It is needed to take into account that WireExplorer produces correct result (returns all edges in proper order) only for well-defined manifold wires. The wire in this face in unclosed and non-manifold. However, it is strange that it behaves differently on different platforms. |
2017-04-21 17:51 developer |
bad_wire.PNG (12,636 bytes) |
|
The wire has two disconnections. One is between edges 1 and 14, and another is between edges 11 and 12. Thus, there are two chains of connected edges. One chain consists of 3 edges, and another is of 11. So, it is needed to understand why the starting edge is different on various platforms. |
|
I was wrong saying "it gives always 3 edges on OCCT built with VC12 and always 11 edges with VC10". It really returns 3 or 11 on the same platform from run to run. The cause is iteration on a map with TopoDS_Shape key. To solve this bug it is needed to revise the class BRepTools_WireExplorer to get rid of dependence on map iterations. |
|
After discussion with ABV, we have elaborated the following vision on how this algorithm must work on bad cases. 1) If the wire is not manifold or contains more than one connected chain the algorithm must raise warning status, so that the calling algorithm was aware of the problem with this wire. Further iteration on such wire may return not all edges. 2) If initialized with a face it means the wire serves as the face boundary and must be topologically closed. In this case if the wire is open the algorithm must raise warning status. E.g., if the wire explorer is called from the face classifier, and it raises the warning status the classifier must take decision that this wire cannot be used in classification, so any point must be classified as if there was no this wire in the face. |
Date Modified | Username | Field | Change |
---|---|---|---|
2017-04-21 16:34 |
|
New Issue | |
2017-04-21 16:34 |
|
Assigned To | => msv |
2017-04-21 16:34 |
|
File Added: ff.brep | |
2017-04-21 16:36 |
|
OS | => Win 10 |
2017-04-21 16:36 |
|
Platform | => x64 |
2017-04-21 16:36 |
|
Product Version | => 7.1.0 |
2017-04-21 16:36 |
|
Steps to Reproduce Updated | |
2017-04-21 16:40 |
|
Description Updated | |
2017-04-21 16:40 |
|
Steps to Reproduce Updated | |
2017-04-21 16:43 |
|
Summary | BRepTools_WireExplorer works unstable and does not retur several edges => BRepTools_WireExplorer works unstable and does not return several edges |
2017-04-21 16:43 |
|
Steps to Reproduce Updated | |
2017-04-21 16:43 |
|
Steps to Reproduce Updated | |
2017-04-21 17:08 |
|
OS | Win 10 => VS 12 (2013) |
2017-04-21 17:08 |
|
OS Version | => Win64 |
2017-04-21 17:08 |
|
Platform | x64 => Win |
2017-04-21 17:47 |
|
Note Added: 0065441 | |
2017-04-21 17:51 |
|
Note Added: 0065442 | |
2017-04-21 17:51 |
|
File Added: bad_wire.PNG | |
2017-04-21 18:09 |
|
Note Added: 0065446 | |
2017-04-21 18:32 |
|
Steps to Reproduce Updated | |
2017-04-21 18:43 |
|
Note Added: 0065448 | |
2017-04-21 19:31 |
|
Note Added: 0065449 | |
2017-04-21 19:32 |
|
Assigned To | msv => nbv |
2017-04-21 19:32 |
|
Status | new => assigned |
2017-04-24 18:01 |
|
Note Edited: 0065449 | |
2017-07-24 09:22 |
|
Target Version | 7.2.0 => 7.3.0 |
2017-09-18 13:42 |
|
Relationship added | related to 0021968 |
2017-10-11 09:23 |
|
Relationship added | related to 0008546 |
2017-10-13 11:03 |
|
Relationship added | related to 0029121 |
2017-10-19 15:21 |
|
Relationship added | child of 0029133 |
2017-10-19 15:25 |
|
Steps to Reproduce Updated | |
2017-11-07 10:48 |
|
Description Updated | |
2017-12-05 17:08 |
|
Target Version | 7.3.0 => 7.4.0 |
2019-08-12 16:37 |
|
Target Version | 7.4.0 => 7.5.0 |
2020-09-14 22:56 |
|
Target Version | 7.5.0 => 7.6.0 |
2021-08-29 18:53 |
|
Target Version | 7.6.0 => 7.7.0 |
2022-10-24 10:42 |
|
Target Version | 7.7.0 => 7.8.0 |
2023-08-01 15:08 | dpasukhi | Target Version | 7.8.0 => Unscheduled |