MantisBT
Mantis Bug Tracker Workflow

View Issue Details Jump to Notes ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0026933Open CASCADE[OCCT] OCCT:Modeling Algorithmspublic2015-11-27 20:212018-07-26 14:29
Reportermsv 
Assigned Tobugmaster 
PrioritynormalSeverityminor 
StatusverifiedResolutionfixed 
PlatformOSOS Version
Product Version[OCCT] 7.0.0 
Target Version[OCCT] 7.4.0*Fixed in Version 
Summary0026933: Section works unstably due to incorrect work of the method IsExistingPaveBlock
DescriptionThis bug was born due to unstable work of the test case "boolean bsection N2". One of edges in the result section line appeared or disappeared from patch to patch.
I have isolated this problem to make section between only two faces.
Really the big planar face is situated nearly the boundary of b-spline face in such way that it has common part with the boundary edge that does not cover the whole edge. So, the expected section should look like in the attached picture N2-OK.png.
Sometimes, depending on the tolerance reached during computation of intersection curve, a small pave block is created on this curve somewhere in the middle in addition to the pave block corresponding to the actual common part. This pave block is compared for coincidence with existing ones and the following method:

Standard_Boolean BOPAlgo_PaveFiller::IsExistingPaveBlock
    (const Handle(BOPDS_PaveBlock)& thePB,
     const BOPDS_Curve& theNC,
     const Standard_Real theTolR3D,
     const BOPDS_IndexedMapOfPaveBlock& theMPBOnIn,
     Handle(BOPDS_PaveBlock)& aPBOut)

tells that this small pave block is coincident with an existing quite big pave block. It occurs because it is not checked in the method if the found pave block has coinciding ends with the input pave block.
As a result, the whole edge is put in the section, even if it has distance to the opposite argument much greater than its tolerance. The picture N2-false.png shows such result.
Steps To Reproducerestore bug26933.brep a
explode a
bclearobjects
bcleartools
baddobjects a_1
baddtools a_2
bfillds
bbop s 4
don a_1 s
TagsNo tags attached.
Test case numberbugs modalg_7 bug26933
Attached Filespng file icon N2-false.PNG (27,350 bytes) 2015-11-27 20:21
png file icon N2-OK.PNG (25,155 bytes) 2015-11-27 20:30
? file icon bug26933.brep (4,435 bytes) 2015-11-27 20:31

- Relationships

-  Notes
(0069423)
mkv (tester)
2017-08-15 19:44

Problem described in issue is reproduced on current state of OCCT.
(0077764)
emv (developer)
2018-07-18 07:58

The problem is not reproduced in current master. Master already contains a test case for the issue without any TODO statements. So, the issue can be just closed.

- Issue History
Date Modified Username Field Change
2015-11-27 20:21 msv New Issue
2015-11-27 20:21 msv Assigned To => msv
2015-11-27 20:21 msv File Added: N2-OK.PNG
2015-11-27 20:21 msv File Added: N2-false.PNG
2015-11-27 20:30 msv File Deleted: N2-OK.PNG
2015-11-27 20:30 msv File Added: N2-OK.PNG
2015-11-27 20:31 msv File Added: bug26933.brep
2015-11-27 20:32 msv Steps to Reproduce Updated View Revisions
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-08-15 19:44 mkv Test case number => bugs modalg_7 bug26933
2017-08-15 19:44 mkv Note Added: 0069423
2017-12-05 17:00 msv Target Version 7.3.0 => 7.4.0*
2018-07-18 07:58 emv Note Added: 0077764
2018-07-18 07:58 emv Assigned To msv => bugmaster
2018-07-18 07:58 emv Status new => feedback
2018-07-26 14:29 bugmaster Status feedback => verified
2018-07-26 14:29 bugmaster Resolution open => fixed


Copyright © 2000 - 2018 MantisBT Team
Powered by Mantis Bugtracker