MantisBT
Mantis Bug Tracker Workflow

View Issue Details Jump to Notes ] Related Changesets ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0024220Open CASCADE[OCCT] OCCT:Modeling Algorithmspublic2013-10-02 10:032013-12-19 13:58
Reporterkgv 
Assigned Tobugmaster 
PrioritynormalSeverityminor 
StatusclosedResolutionfixed 
PlatformAOSLOS VersionL
Product Version[OCCT] 6.6.0 
Target Version[OCCT] 6.7.0Fixed in Version[OCCT] 6.7.0 
Summary0024220: bopargcheck returns valid for C0 shape but results of boolean operations are broken with such shapes
Descriptionbopargcheck command has been introduced to determine shapes which do not supported by boolean operations by design.

However for shapes with C0 curves this command return OK although results of boolean operations are worst.

It should be either - bopargcheck or boolean operations to be fixed.
Steps To Reproducepload ALL
restore A.brep A
box b -25 -25 -10 50 50 12
bopargcheck A
bcut c b A

TagsNo tags attached.
Test case numberbugs modalg_5(010) bug24220
Attached Files? file icon A.brep (7,526 bytes) 2013-10-02 10:03
png file icon cut_broken.png (61,787 bytes) 2013-10-02 10:09
png file icon cut_expected.png (58,505 bytes) 2013-10-02 10:09

- Relationships
related to 0024181closedbugmaster Text to BRep functionality 

-  Notes
(0025853)
ifv (developer)
2013-10-02 18:36

Problem is not in BO, but in intersection algorithm. Intersection algo does not support treating of C0 surfaces by correct way.
Implementation of support of C0 surfaces does not seem to be quick task, so for current moment I prefer to fix bopargcheck, if it is very necessary.

I think that implementation of treating C0 surfaces is useful and can be included in OCCT development plan.
(0025854)
abv (manager)
2013-10-02 19:07

The fact is that BOP do not work well on C0 (or probably it would be better to speak about G0) geometries; and it does not matter that the root-cause is in intersectors. Hence I believe bopargcheck should report C0 geometries as bad for BOP. This would allow the users to recognize the problem and fix it (we have some tools to split C0 shapes in ShapeHealing).

Alternatively, we can declare C0/G0 geometries as valid for BOP and make intersectors to deal with them, but my feeling is that this does not worth the candle taking into account possibility to split.

Peter, could you please give your opinion?
(0025855)
pkv (developer)
2013-10-03 06:50
edited on: 2013-10-03 07:24

IMHO there are several ways:
I.
I agree with Igor.
Just add the option to bopargcheck, and write some code to process will be OK for the moment if unbearable.
But keep in mind that in the case, the check should be provided for
1.all OCC algorithms that do not treat CO cases
2 all algorithms that use OCC algorithms that do not treat CO cases
3.all algorithms that use algorithms that use OCC algorithms that do not treat CO cases
4.and so on...

II.
Write the matter in documentation as limitation case for the algorithm. It is widespread.

III
Find a hero and fix the problem in OCC libraries. It is unpromising.
Though the main thing here is to move this discussion to the TC working
group(ABV, IFV, PKV, AZV, KGV) to define the action plan. ASAP, DL, etc

(0025861)
abv (manager)
2013-10-03 11:05

Eugene, please add check for G0 geometries to bopargcheck command
(0025930)
emv (developer)
2013-10-07 10:56

Git branch CR24220 is ready to be reviewed.
(0025946)
abv (manager)
2013-10-08 09:13

No remarks, please test
(0025981)
mkv (tester)
2013-10-09 10:02

Dear BugMaster,

Branch CR24220 (and products from GIT master) was compiled on Linux and Windows platforms and tested.
SHA-1: a362ec090ae8dc594082917d16c8cfbe69081982

Number of compiler warnings:

occt component :
Linux: 429 (424 on master)
Windows: 9 (9 on master)

products component :
Linux: 190 (189 on master)
Windows: 287 (287 on master)

Regressions/Differences:
No regressions/differences

Testing cases:
http://occt-tests/CR24220-master-occt/Debian60-64/bugs/modalg_5/bug24220.html [^]
http://occt-tests/CR24220-master-occt/Windows-32-VC9/bugs/modalg_5/bug24220.html [^]
bugs modalg_5(010) bug24220: OK

Testing on Linux:
Total MEMORY difference: 365433256 / 367228872
Total CPU difference: 44908.45000000144 / 44590.79000000126

Testing on Windows:
Total MEMORY difference: 432612372 / 433283820
Total CPU difference: 40910.75 / 41888.375

There are not differences in images found by testdiff.

- Related Changesets
occt: master 0e09ee8e
Timestamp: 2013-10-10 10:27:16
Author: emv
Committer: bugmaster
Details ] Diff ]
0024220: bopargcheck returns valid for C0 shape but results of boolean operations are broken with such shapes

Added check for C0 geometries to bopargcheck command.
Test cases for issue CR24220
mod - src/BOPAlgo/BOPAlgo.cdl Diff ] File ]
mod - src/BOPAlgo/BOPAlgo_ArgumentAnalyzer.cdl Diff ] File ]
mod - src/BOPAlgo/BOPAlgo_ArgumentAnalyzer.cxx Diff ] File ]
mod - src/BOPAlgo/BOPAlgo_ArgumentAnalyzer.lxx Diff ] File ]
mod - src/BOPTest/BOPTest_CheckCommands.cxx Diff ] File ]
add - tests/bugs/modalg_5/bug24220 Diff ] File ]

- Issue History
Date Modified Username Field Change
2013-10-02 10:03 kgv New Issue
2013-10-02 10:03 kgv Assigned To => ifv
2013-10-02 10:03 kgv File Added: A.brep
2013-10-02 10:09 kgv File Added: cut_broken.png
2013-10-02 10:09 kgv File Added: cut_expected.png
2013-10-02 10:09 kgv Relationship added related to 0024181
2013-10-02 18:22 ifv Assigned To ifv => abv
2013-10-02 18:22 ifv Status new => feedback
2013-10-02 18:24 ifv Assigned To abv => ifv
2013-10-02 18:24 ifv Status feedback => assigned
2013-10-02 18:36 ifv Note Added: 0025853
2013-10-02 18:36 ifv Assigned To ifv => abv
2013-10-02 18:36 ifv Status assigned => feedback
2013-10-02 19:07 abv Assigned To abv => pkv
2013-10-02 19:07 abv Note Added: 0025854
2013-10-03 06:50 pkv Note Added: 0025855
2013-10-03 06:51 pkv Assigned To pkv => abv
2013-10-03 06:51 pkv Note Edited: 0025855 View Revisions
2013-10-03 07:24 pkv Note Edited: 0025855 View Revisions
2013-10-03 11:05 abv Note Added: 0025861
2013-10-03 11:05 abv Assigned To abv => emv
2013-10-03 11:05 abv Status feedback => assigned
2013-10-07 10:56 emv Note Added: 0025930
2013-10-07 10:56 emv Assigned To emv => abv
2013-10-07 10:56 emv Status assigned => resolved
2013-10-08 07:30 emv Assigned To abv => emv
2013-10-08 07:30 emv Status resolved => assigned
2013-10-08 07:55 emv Assigned To emv => abv
2013-10-08 07:55 emv Status assigned => resolved
2013-10-08 09:13 abv Note Added: 0025946
2013-10-08 09:13 abv Assigned To abv => emv
2013-10-08 09:13 abv Status resolved => reviewed
2013-10-08 10:41 emv Assigned To emv => mkv
2013-10-09 10:02 mkv Note Added: 0025981
2013-10-09 10:03 mkv Test case number => bugs modalg_5(010) bug24220
2013-10-09 10:03 mkv Assigned To mkv => bugmaster
2013-10-09 10:03 mkv Status reviewed => tested
2013-10-11 13:35 bugmaster Changeset attached => occt master 0e09ee8e
2013-10-11 13:35 bugmaster Status tested => verified
2013-10-11 13:35 bugmaster Resolution open => fixed
2013-12-19 13:51 bugmaster Status verified => closed
2013-12-19 13:58 bugmaster Fixed in Version => 6.7.0


Copyright © 2000 - 2020 MantisBT Team
Powered by Mantis Bugtracker