MantisBT
Mantis Bug Tracker Workflow

View Issue Details Jump to Notes ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0026814Open CASCADE[OCCT] OCCT:Modeling Algorithmspublic2015-10-27 10:202017-08-15 15:10
Reporternbv 
Assigned Tomsv 
PrioritynormalSeverityminor 
StatusclosedResolutionfixed 
PlatformOSOS Version
Product Version 
Target Version[OCCT] 7.3.0Fixed in Version[OCCT] 7.1.0 
Summary0026814: Strange result of Boolean operation in "boolean bsection N2" test case
DescriptionThis bug has been detected while fixing bug 0026675.

In short, algorithm of Boolean operation (BOP) rejects an edge, which is the intersection line of two faces (see Steps to reproduce for more detail information).

This situation cannot be reproduced before integration of the fix for bug 0026675. The reason is that the intersection edge has greater tolerance (3.5545925001212765e-005) on MASTER than on the FIX. Therefore, on the MASTER this edge is shared with a_135_1. Nevertheless, on the FIX intersection curve is obtained with greater precision.

-----------------------------------------
Try the following script to reproduce.
The main question is Why bsection result does not contain any edges?

Draw[]> restore [locate_data_file lh3d_px1.brep] a
Draw[]> plane p 0 0 0 1 0 0
Draw[]> mkface f p
Draw[]> explode a f
Draw[]> donly a_135
Draw[]> bopcurves a_135 f -2d
#c_1 (c2d1_1, c2d2_1): Tolerance Reached=3.7239063406803231e-006

Draw[]> explode a_135 e
Draw[]> donly a_135 a_135_1 c_1
Draw[]> toler a_135_1
# Max tolerance for the EDGE is 1.0e-7
# 1.0e-7 + 3.7239063406803231e-006 = 3.8239063406803231e-006

## SCRIPT 1 (begin)
for {set tpar 0.0} {$tpar <= 1.0} {set tpar [expr $tpar+0.1]} {
  cvalue c_1 $tpar xx yy zz
  vertex vv xx yy zz
  distmini dd vv a_135_1
  
  puts "$tpar : [dval dd_val]"
}
## SCRIPT 1 (end)

## OUTPUT (begin)

0.0 : 5.4193376082637118e-006
0.1 : 5.2303380702458479e-006
...
0.9999999999999999 : 7.1504370893251456e-010

## OUTPUT (end)

I.e. there are some points in the intersection edge, which are so far (distance is greater than 3.8239063406803231e-006) from a_135_1. Consequently, the intersection edge must have failed to share with a_135_1.

However,

Draw[]> bsection rr135 a_135 f
Draw[]> donly a_135 rr135
Draw[]> nbshapes rr135
#VERTEX : 2, EDGE : 0


Steps To Reproducetest boolean bsection N2
TagsNo tags attached.
Test case numberboolean bsection N2
Attached Files

- Relationships
related to 0026675closedbugmaster Open CASCADE Eliminate normalization of coordinates in ApproxInt package 

-  Notes
(0047617)
nbv (developer)
2015-10-29 16:40

Ask to pay attention to the messages 0026675:0047612 and 0026815:0047546 while fixing.
(0047794)
nbv (developer)
2015-11-05 11:07

In bug #0026842 analogical problem is described. However, it reproduces on the current MASTER (different from this issue).
(0051127)
nbv (developer)
2016-02-25 16:27

DC,

The problem described in this issue is not reproduced on the current MASTER.

However, for getting correct result,two conditions must be satisfied:

1. The edge a_135_1 must be shared with section edge (with c_1 curve);
2. The edge a_135_1 must form common block with face f.

If at least one condition is not satisfied the section result will not contain any edge (only vertices as it is described).
(0069399)
mkv (tester)
2017-08-15 15:10

Problem described in issue is not reproduced on current state of OCCT. Fixed in OCCT7.1.0.

- Issue History
Date Modified Username Field Change
2015-10-27 10:20 nbv New Issue
2015-10-27 10:20 nbv Assigned To => msv
2015-10-27 10:20 nbv Relationship added related to 0026675
2015-10-27 10:21 nbv Steps to Reproduce Updated View Revisions
2015-10-27 15:18 nbv Description Updated View Revisions
2015-10-27 15:18 nbv Steps to Reproduce Updated View Revisions
2015-10-28 17:35 msv Target Version 7.0.0 => 7.1.0
2015-10-29 16:40 nbv Note Added: 0047617
2015-11-05 11:05 nbv Relationship added related to 0026842
2015-11-05 11:07 nbv Note Added: 0047794
2016-02-25 16:27 nbv Note Added: 0051127
2016-10-28 17:03 msv Target Version 7.1.0 => 7.2.0
2017-07-24 09:32 msv Target Version 7.2.0 => 7.3.0
2017-08-15 15:10 mkv Test case number => boolean bsection N2
2017-08-15 15:10 mkv Note Added: 0069399
2017-08-15 15:10 mkv Status new => closed
2017-08-15 15:10 mkv Resolution open => fixed
2017-08-15 15:10 mkv Fixed in Version => 7.1.0


Copyright © 2000 - 2018 MantisBT Team
Powered by Mantis Bugtracker