]> OCCT Git - occt-copy.git/commit
0027878: Development of the Gluing operations based on the new Boolean component
authoremv <emv@opencascade.com>
Wed, 2 Nov 2016 09:47:08 +0000 (12:47 +0300)
committeremv <emv@opencascade.com>
Tue, 6 Dec 2016 09:51:25 +0000 (12:51 +0300)
commitebbe94d4a818df5b4a6f2612e753dcc7eba33be6
tree7a0e9b10fc08e015e27abb5b2f9128415bacd113
parent7107fe81c8a9a206e9c44a0e1fd200606f6940f6
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
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]