]> OCCT Git - occt-copy.git/commit
0027878: Development of the Gluing operations based on the new Boolean component
authoremv <emv@opencascade.com>
Thu, 8 Dec 2016 13:49:29 +0000 (16:49 +0300)
committerrnv <rnv@opencascade.com>
Mon, 13 Mar 2017 08:36:39 +0000 (11:36 +0300)
commitb609dcabc28d2e551672e4a94118536e2e7876bc
tree7e7dc739fb05234511243909191793c635583188
parentbcf8e95ac2e84f7b3c1dcb919f54cbe98c554bc8
0027878: Development of the Gluing operations based on the new Boolean component

The Gluing operation is an additional option for the algorithms in the Boolean Component
such as General Fuse, Boolean operations, Section operation, Maker Volume and Cells Builder algorithms.

The Gluing options have been designed to speed up the computation of the interference among arguments of the operations on special cases,
in which the arguments may be overlapping but do not have real intersections between their sub-shapes.

This option cannot be used on the shapes having real intersections, like intersection vertex between edges,
or intersection vertex between edge and a face or intersection line between faces.

The Gluing option is an enumeration implemented in BOPAlgo_GlueEnum.hxx. There are following items in the enum:
* BOPAlgo_GlueOff - default value for the algorithms, Gluing is switched off;
* BOPAlgo_GlueShift - Glue option for shapes with partial coincidence;
* BOPAlgo_GlueFull - Glue option for shapes with full coincidence.

For setting the Gluing options for the algorithm it is just necessary to call the SetGlue(BOPAlgo_GlueEnum) method with appropriate Glue value.

For using this option in DRAW the command bglue has been implemented:
* 0 - default value, Gluing is off;
* 1 - for partial coincidence;
* 2 - for full coincidence

Elimination of the warnings.
33 files changed:
dox/user_guides/boolean_operations/boolean_operations.md
dox/user_guides/boolean_operations/images/glue_options_image001.PNG [new file with mode: 0644]
dox/user_guides/boolean_operations/images/glue_options_image002.PNG [new file with mode: 0644]
dox/user_guides/boolean_operations/images/glue_options_image003.PNG [new file with mode: 0644]
dox/user_guides/boolean_operations/images/glue_options_image004.PNG [new file with mode: 0644]
dox/user_guides/boolean_operations/images/glue_options_image005.PNG [new file with mode: 0644]
src/BOPAlgo/BOPAlgo_BOP.cxx
src/BOPAlgo/BOPAlgo_Builder.cxx
src/BOPAlgo/BOPAlgo_Builder.hxx
src/BOPAlgo/BOPAlgo_GlueEnum.hxx [new file with mode: 0644]
src/BOPAlgo/BOPAlgo_MakerVolume.cxx
src/BOPAlgo/BOPAlgo_PaveFiller.cxx
src/BOPAlgo/BOPAlgo_PaveFiller.hxx
src/BOPAlgo/BOPAlgo_PaveFiller_4.cxx
src/BOPAlgo/BOPAlgo_PaveFiller_5.cxx
src/BOPAlgo/BOPAlgo_PaveFiller_6.cxx
src/BOPAlgo/FILES
src/BOPTest/BOPTest_APICommands.cxx
src/BOPTest/BOPTest_BOPCommands.cxx
src/BOPTest/BOPTest_CellsCommands.cxx
src/BOPTest/BOPTest_Objects.cxx
src/BOPTest/BOPTest_Objects.hxx
src/BOPTest/BOPTest_OptionCommands.cxx
src/BOPTest/BOPTest_PartitionCommands.cxx
src/BRepAlgoAPI/BRepAlgoAPI_BooleanOperation.cxx
src/BRepAlgoAPI/BRepAlgoAPI_BuilderAlgo.cxx
src/BRepAlgoAPI/BRepAlgoAPI_BuilderAlgo.hxx
tests/bugs/modalg_6/bug27878_1 [new file with mode: 0644]
tests/bugs/modalg_6/bug27878_2 [new file with mode: 0644]
tests/bugs/modalg_6/bug27878_3 [new file with mode: 0644]
tests/bugs/modalg_6/bug27878_4 [new file with mode: 0644]
tests/bugs/modalg_6/bug27878_5 [new file with mode: 0644]
tests/bugs/modalg_6/bug27878_6 [new file with mode: 0644]