0028189: Result of Boolean operation is non-manifold wire
authoremv <emv@opencascade.com>
Thu, 29 Dec 2016 12:42:08 +0000 (15:42 +0300)
committerapn <apn@opencascade.com>
Thu, 29 Dec 2016 15:32:44 +0000 (18:32 +0300)
commit77a11d3df141427a24d780c4e40d6f823c38cf69
treebe3ad1237612d34bd771f822b07fda61c7a2eae9
parent400af1bcf6f5daf79ed4966b81029a843430d682
0028189: Result of Boolean operation is non-manifold wire

1. The result of Boolean operation on the arguments of collection type, containers WIRE/SHELL/COMPSOLID, is also a collection.
The containers of type WIRE included into result should now also (as the SHELLs) have coherent orientation of its sub-shapes.
For that the new method has been implemented (BOPTools_AlgoTools::OrientEdgesOnWire(TopoDS_Shape&)) which reorients edges for correct ordering.
The duplicating containers, i.e. containers with the contents completely included in other containers, are now avoided in the result of BOP.
2. The result of Fuse operation on Compsolids is now also will be Compsolid.
3. Documentation has been updated.
4. New test cases for the issue.
5. Adjusting test cases to current behavior.

Correction of test case bugs/modalg_4/bug726_2 according to the new behavior
43 files changed:
dox/dev_guides/upgrade/upgrade.md
dox/user_guides/boolean_operations/boolean_operations.md
src/BOPAlgo/BOPAlgo_BOP.cxx
src/BOPTest/BOPTest_UtilityCommands.cxx
src/BOPTools/BOPTools_AlgoTools.cxx
src/BOPTools/BOPTools_AlgoTools.hxx
tests/boolean/bcommon_2d/F3
tests/boolean/bcommon_2d/F4
tests/boolean/bcommon_2d/F5
tests/boolean/bcommon_2d/N8
tests/boolean/bcommon_2d/N9
tests/boolean/bcommon_2d/O1
tests/boolean/bcommon_2d/O7
tests/boolean/bopcommon_2d/F3
tests/boolean/bopcommon_2d/F4
tests/boolean/bopcommon_2d/F5
tests/boolean/bopcommon_2d/N8
tests/boolean/bopcommon_2d/N9
tests/boolean/bopcommon_2d/O1
tests/boolean/bopcommon_2d/O7
tests/boolean/bopcommon_complex/L3
tests/boolean/bopcommon_complex/L6
tests/boolean/bopcommon_complex/L7
tests/boolean/bopcommon_complex/L8
tests/boolean/bopcommon_complex/L9
tests/boolean/bopcommon_complex/M3
tests/boolean/bopcommon_complex/M4
tests/boolean/bopcommon_complex/M5
tests/boolean/bopcommon_complex/M6
tests/boolean/bopfuse_complex/O2
tests/boolean/bopfuse_complex/O3
tests/bugs/modalg_1/bug13538
tests/bugs/modalg_4/bug726_2
tests/bugs/modalg_6/bug26980
tests/bugs/modalg_6/bug28189_1 [new file with mode: 0644]
tests/bugs/modalg_6/bug28189_2 [new file with mode: 0644]
tests/bugs/modalg_6/bug28189_3 [new file with mode: 0644]
tests/bugs/modalg_6/bug28189_4 [new file with mode: 0644]
tests/bugs/modalg_6/bug28189_5 [new file with mode: 0644]
tests/bugs/modalg_6/bug28189_6 [new file with mode: 0644]
tests/bugs/modalg_6/bug28189_7 [new file with mode: 0644]
tests/bugs/modalg_6/bug28189_8 [new file with mode: 0644]
tests/bugs/modalg_6/bug28189_9 [new file with mode: 0644]