View Issue Details

IDProjectCategoryView StatusLast Update
0026204Open CASCADEOCCT:Modeling Algorithmspublic2023-08-01 15:08
ReporterakzAssigned Tomsv 
PrioritynormalSeverityminor 
Status assignedResolutionopen 
Product Version6.7.1 
Target VersionUnscheduled 
Summary0026204: Modeling Algorithms - artifact on a result of Boolean operation "Cut"
DescriptionTwo attached shapes Cut135S1 and Cut135S2 are processed by Cut operation.
Resultant shape Cut135SR has an artifact which was not cut.

Steps To Reproducerestore Cut135S1.brep s1
restore Cut135S2.brep s2
bcut sr s1 s2

TagsNo tags attached.
Test case number

Attached Files

  • Cut135S1.brep (28,027 bytes)
  • Cut135SR.brep (37,319 bytes)
  • 1.png (28,325 bytes)
  • 2.png (9,320 bytes)
  • Cut135S2.brep (13,446 bytes)
  • too_close_edges.PNG (18,183 bytes)
  • Report_01.doc (60,416 bytes)

Activities

akz

2015-05-08 14:09

developer  

Cut135S1.brep (28,027 bytes)

akz

2015-05-08 14:10

developer  

Cut135SR.brep (37,319 bytes)

akz

2015-05-08 14:12

developer  

1.png (28,325 bytes)

akz

2015-05-08 14:51

developer  

2.png (9,320 bytes)

pkv

2015-05-25 09:47

developer   ~0041476

The shape Cut135S2.brep is self-interfered shape.

# Use the followind DRAW commands to confirm:
# ---------------------------------
restore Cut135S2.brep b2
bopargcheck b2 #f
# ---------------------------------
# The result of bopargcheck is:
Made faulty shape: s1si_1
Made faulty shape: s1si_2
Made faulty shape: s1si_3
Made faulty shape: s1se_1
Made faulty shape: s1se_2
Made faulty shape: s1se_3
Made faulty shape: s1se_4
Faulties for FIRST shape found : 7
 ---------------------------------
Shapes are not suppotrted by BOP: NO
Self-Intersections : YES Cases(3) Total shapes(6)
Check for SI has been aborted : NO
Too small edges : YES Cases(4) Total shapes(4)
Bad faces : NO
Too close vertices : DISABLED
Too close edges : DISABLED
Shapes with Continuity C0 : NO
Invalid Curve on Surface : NO
 ---------------------------------

The self-interfered shape should not be used as an argument for
the Boolean Operation Algorithm.
See
http://dev.opencascade.org/doc/overview/html/occt_user_guides__boolean_operations.html#occt_algorithms_4
for more details

akz

2015-05-25 13:28

developer  

Cut135S2.brep (13,446 bytes)

akz

2015-05-25 13:30

developer   ~0041490

Last edited: 2015-05-25 13:56

I've uploaded the fixed shape s2. Bad tolerance was a reason for GFA to consider two close edges as intersected.

msv

2015-05-25 14:50

developer   ~0041496

The command bopargcheck reports issue of too close edges when analyzing these two shapes together. The picture too_close_edges.png shows the shapes and problematic edges.

Draw[246]> bopargcheck s1 s2 #F
Made faulty shape: s1be_1
Made faulty shape: s2be_1
Faulties for FIRST shape found : 1
---------------------------------
Shapes are not suppotrted by BOP: NO
Self-Intersections : NO
Check for SI has been aborted : NO
Too small edges : NO
Bad faces : NO
Too close vertices : NO
Too close edges : YES Cases(1) Total shapes(1)
Shapes with Continuity C0 : NO
Invalid Curve on Surface : NO

Faulties for SECOND shape found : 1
---------------------------------
Shapes are not suppotrted by BOP: NO
Self-Intersections : NO
Check for SI has been aborted : NO
Too small edges : NO
Bad faces : NO
Too close vertices : NO
Too close edges : YES Cases(1) Total shapes(2)
Shapes with Continuity C0 : NO
Invalid Curve on Surface : NO

msv

2015-05-25 14:51

developer  

too_close_edges.PNG (18,183 bytes)

msv

2015-05-25 14:57

developer   ~0041498

Last edited: 2015-05-25 14:57

Now the middle edge (it is from s1 shape) has the tolerance (0.001) that makes it coinciding with both (left and right) edges from s2 shape.
Dear Peter, is it possible to get a valid result with such input shapes?
If no, what is the cost to make the algorithm well working with such cases? What idea can be implemented?

pkv

2015-05-27 10:44

developer  

Report_01.doc (60,416 bytes)

pkv

2015-05-27 10:45

developer   ~0041589

Please, have a look Report_01.doc for the details.

msv

2015-05-27 12:28

developer   ~0041599

Dear Sergey,
According to Peter's analysis, this problem is a limitation of the Boolean operations algorithm. We can leave this bug for reconsidering in the future.

Issue History

Date Modified Username Field Change
2015-05-08 14:09 akz New Issue
2015-05-08 14:09 akz Assigned To => msv
2015-05-08 14:09 akz File Added: Cut135S1.brep
2015-05-08 14:09 akz File Added: Cut135S2.brep
2015-05-08 14:10 akz File Added: Cut135SR.brep
2015-05-08 14:12 akz File Added: 1.png
2015-05-08 14:51 akz File Added: 2.png
2015-05-08 15:59 msv Assigned To msv => pkv
2015-05-08 15:59 msv Status new => assigned
2015-05-08 16:11 akz Steps to Reproduce Updated
2015-05-25 09:47 pkv Note Added: 0041476
2015-05-25 09:48 pkv Assigned To pkv => msv
2015-05-25 13:28 akz File Deleted: Cut135S2.brep
2015-05-25 13:28 akz File Added: Cut135S2.brep
2015-05-25 13:30 akz Note Added: 0041490
2015-05-25 13:31 akz Note Edited: 0041490
2015-05-25 13:33 akz Note Edited: 0041490
2015-05-25 13:56 akz Note Edited: 0041490
2015-05-25 14:50 msv Note Added: 0041496
2015-05-25 14:51 msv File Added: too_close_edges.PNG
2015-05-25 14:57 msv Note Added: 0041498
2015-05-25 14:57 msv Assigned To msv => pkv
2015-05-25 14:57 msv Status assigned => feedback
2015-05-25 14:57 msv Note Edited: 0041498
2015-05-27 10:44 pkv File Added: Report_01.doc
2015-05-27 10:45 pkv Note Added: 0041589
2015-05-27 10:45 pkv Assigned To pkv => msv
2015-05-27 10:45 pkv Status feedback => assigned
2015-05-27 12:28 msv Note Added: 0041599
2015-05-27 12:28 msv Assigned To msv => ssv
2015-05-27 12:28 msv Status assigned => feedback
2015-12-18 12:27 abv Assigned To ssv => msv
2015-12-18 12:27 abv Status feedback => assigned
2015-12-18 12:27 abv Target Version => 7.1.0
2016-10-28 17:03 msv Target Version 7.1.0 => 7.2.0
2017-07-24 09:22 msv Target Version 7.2.0 => 7.3.0
2017-12-05 17:09 msv Target Version 7.3.0 => 7.4.0
2019-08-12 16:45 msv Target Version 7.4.0 => 7.5.0
2020-09-14 22:54 msv Target Version 7.5.0 => 7.6.0
2020-11-18 11:30 kgv Summary Artifact on a result of Boolean operation "Cut" => Modeling Algorithms - artifact on a result of Boolean operation "Cut"
2021-08-29 19:08 msv Target Version 7.6.0 => 7.7.0
2022-10-24 10:41 szy Target Version 7.7.0 => 7.8.0
2023-08-01 15:08 dpasukhi Target Version 7.8.0 => Unscheduled