View Issue Details

IDProjectCategoryView StatusLast Update
0023389CommunityOCCT:Modeling Algorithmspublic2012-11-16 13:18
ReporterTimo Assigned Tojgv  
Status closedResolutionfixed 
Product Version6.5.3 
Target Version6.5.4Fixed in Version6.5.4 
Summary0023389: (OCC 6.5.3 regression) BRepAlgoAPI_Cut returns invalid solid
DescriptionThe following cut operation results in an invalid solid in OCCT 6.5.3.
In OCCT 6.5.2 the result is valid.

Draw script:

restore blade3.brep b
explode b
checkshape b_1
checkshape b_2
bopcheck b_1
bopcheck b_2
bopargcheck b_1 b_2
bop b_1 b_2
bopcut r
vdisplay r
vsetdispmode r 1
checkshape r

It was discussed on the forum:

The given test case for boolean cut has valid arguments (checkshape, bopcheck, bopargcheck).

The result is invalid on:
- OCCT 6.5.3
- one-week-old version from the git repository
- modified OCCT 6.5.3 where the code of the whole TKBO-Toolkit (except for the M_PI-macro) was changed back to the state of 6.5.2.

Therefore, I think it has to do with some changes of classes that are used by TKBO.
Additional information
and documentation updates
Modified entities:


modified method:

Standard_Boolean IntPolyh_Intersection::PerformMaillage(IntPolyh_PMaillageAffinage &theMaillageS)

wrong breakdown exit has been deleted.
TagsNo tags attached.
Test case numberboolean bopcut_complex (023) P8

Attached Files

  • blade3.brep (262,532 bytes)
  • blade3_OCC652.brep (245,030 bytes)



2012-08-17 19:30


blade3.brep (262,532 bytes)


2012-08-17 19:31


blade3_OCC652.brep (245,030 bytes)


2012-08-17 19:32

developer   ~0021263

blade3_OCC652.brep is the same test case but it was produced with OCCT 6.5.2 instead of 6.5.3. It shows the same behavior as described above.


2012-09-11 10:34

developer   ~0021452

The branch CR23389 is ready for reviewing


2012-09-11 12:14

developer   ~0021456

No remarks.


2012-09-14 12:30

administrator   ~0021483

Dear BugMaster,
Branch CR23389 (and products from GIT master) was compiled on Linux and Windows platforms and tested.

Not detected

Not detected

Testing case:
boolean bopcut_complex (023) P8 - OK


2012-09-18 16:36

developer   ~0021503

The case

chl 935 R9

is OK if the fix is compiled under the fix to 23388. Please check it.


2012-09-28 16:00

tester   ~0021595

Dear BugMaster,
Test case chl 935 R9 is OK in IR-2012-09-27 (after raising CR23388).


2012-11-06 15:09

developer   ~0022101

Last edited: 2012-11-06 15:23

The test case is OK now.

However, I'm unsure if this fixes really the root cause of the problem.
This problem is actually a regression from 6.5.2 to 6.5.3, but the method where the fix was applied (IntPolyh_Intersection::PerformMaillage) wasn't changed at all from 6.5.2 to 6.5.3.
Therefore, I'm wondering if this really fixes the problem or rather hides / works around it in this special case. I have another test case which is similar but still fails but I cannot report it here because the problem is hidden by another bug (0023375). Shouldn't we look for the root cause somewhere else?

What do you think about my concerns?

Why does the fix just comment the lines out instead of deleting them?

I also debugged the problem myself comparing original 6.5.3 with 6.5.2.
I found out that in 6.5.3 at the second time IntPolyh_Intersection::PerformMaillage is accessed it runs into the code which is commented out by the fix. In 6.5.2 it doesn't run at all into this code. The difference between 6.5.2 and 6.5.3 is already at the start of the method. In 6.5.3 the value of myNbSU2 is very large. Is this correct?

Kind regards,


2012-11-06 15:58

manager   ~0022106

Hello Timo,

I suggest you report the "other" test case in separate issue (hope it should be still possible even if sewing fails -- you could probably save intermediate result of the sewing produced by OCCT 6.5.2).

Please note that we do not promise fixing of the bugs reported by community, thus consider either providing a fix on yourself, or ordering a support services from us to allocate efforts on fixing the problem.



2012-11-06 16:32

developer   ~0022108

I will see concerning the other test case.

This mantis entry was originally reported by the Community but then fixed in the scope of a support service. I understand that your resources are limited. I just thought the expert who fixed it could comment on my concerns, if there might be a bug hidden which it is worth digging for and if his fix is rather a workaround.

Related Changesets

occt: master 3d063ba6

2012-09-14 13:27:38


Details Diff
0023389: (OCC 6.5.3 regression) BRepAlgoAPI_Cut returns invalid solid

Adding test case boolean/bopcut_complex/P8
Affected Issues
mod - src/IntPolyh/IntPolyh_Intersection.cxx Diff File
add - tests/boolean/bopcut_complex/P8 Diff File

Issue History

Date Modified Username Field Change
2012-08-17 19:30 Timo New Issue
2012-08-17 19:30 Timo Assigned To => jgv
2012-08-17 19:30 Timo File Added: blade3.brep
2012-08-17 19:31 Timo File Added: blade3_OCC652.brep
2012-08-17 19:32 Timo Note Added: 0021263
2012-08-20 07:50 abv Assigned To jgv => emv
2012-08-20 07:50 abv Status new => assigned
2012-09-11 10:34 jgv Note Added: 0021452
2012-09-11 10:34 jgv Status assigned => resolved
2012-09-11 10:41 jgv Additional Information Updated
2012-09-11 12:14 emv Note Added: 0021456
2012-09-11 12:14 emv Status resolved => reviewed
2012-09-12 10:28 szy Assigned To emv => mkv
2012-09-13 15:58 bugmaster Project Community => @97@
2012-09-14 12:30 apn Note Added: 0021483
2012-09-14 12:35 apn Test case number => boolean bopcut_complex (023) P8
2012-09-14 12:35 apn Assigned To mkv => bugmaster
2012-09-14 12:35 apn Status reviewed => tested
2012-09-17 17:29 jgv Changeset attached => occt master 3d063ba6
2012-09-17 17:32 jgv Assigned To bugmaster => jgv
2012-09-17 17:32 jgv Status tested => verified
2012-09-17 17:32 jgv Resolution open => fixed
2012-09-18 16:34 jgv Assigned To jgv => mkv
2012-09-18 16:36 jgv Note Added: 0021503
2012-09-18 16:37 jgv Status verified => assigned
2012-09-28 16:00 mkv Note Added: 0021595
2012-10-03 10:41 bugmaster Project @97@ => Community
2012-10-03 10:43 bugmaster Status assigned => resolved
2012-10-03 10:44 bugmaster Status resolved => reviewed
2012-10-03 10:44 bugmaster Status reviewed => verified
2012-10-05 10:19 bugmaster Target Version => 6.5.4
2012-11-06 15:09 Timo Note Added: 0022101
2012-11-06 15:14 Timo Note Edited: 0022101
2012-11-06 15:23 Timo Note Edited: 0022101
2012-11-06 15:58 abv Note Added: 0022106
2012-11-06 16:32 Timo Note Added: 0022108
2012-11-16 13:13 bugmaster Fixed in Version => 6.5.4
2012-11-16 13:18 bugmaster Status verified => closed