0028426: Implementation of the EdgesToFaces function
authoremv <emv@opencascade.com>
Fri, 3 Feb 2017 11:24:28 +0000 (14:24 +0300)
committerapn <apn@opencascade.com>
Thu, 9 Feb 2017 13:16:19 +0000 (16:16 +0300)
commite6ae74fd4206f9bd080c3a7759d97f7fba1051fd
treeebf09ec1f11cc17f22c5122b7ceceddc1a08ced7
parentea3193f52ed74bb5f404d87d98b0639ab4321a15
0028426: Implementation of the EdgesToFaces function

1. The two new methods have been implemented:
a. BOPAlgo_Tools::EdgesToWires - allows creating planar wires from edges.
The input edges may be not shared, but the output wires will be sharing the coinciding vertices and edges.
It is possible to skip the sharing if the input edges are already shared by passing the corresponding flag into the method.
The input edges are expected to be planar, but the method does not check it. Thus, if the input edges are not planar, the output wires will also be not planar.
In general, the output wires will be non-manifold and may contain free vertices.

b. BOPAlgo_Tools::WiresToFaces - allows creating planar faces from the planar wires.
In general, the input wires are non-manifold and may be not closed, but should share the coinciding parts.
The wires located in the same plane and completely included into other wires will create holes in the faces built from bigger wires

These two methods combined allow building faces from set of edges randomly located in 3D space.

2. The DRAW command *edgestofaces* has been implemented.

3. The documentation has been updated with the new section in Modeling Algorithms - Topological Tools.

4. Test cases for the issue.
48 files changed:
dox/user_guides/draw_test_harness/draw_test_harness.md
dox/user_guides/modeling_algos/images/modeling_algos_image062.png [new file with mode: 0644]
dox/user_guides/modeling_algos/images/modeling_algos_image063.png [new file with mode: 0644]
dox/user_guides/modeling_algos/images/modeling_algos_image064.png [new file with mode: 0644]
dox/user_guides/modeling_algos/images/modeling_algos_image065.png [new file with mode: 0644]
dox/user_guides/modeling_algos/modeling_algos.md
src/BOPAlgo/BOPAlgo_Tools.cxx
src/BOPAlgo/BOPAlgo_Tools.hxx
src/BOPTest/BOPTest_UtilityCommands.cxx
tests/mkface/edges_to_faces/A1 [new file with mode: 0644]
tests/mkface/edges_to_faces/A2 [new file with mode: 0644]
tests/mkface/edges_to_faces/A3 [new file with mode: 0644]
tests/mkface/edges_to_faces/A4 [new file with mode: 0644]
tests/mkface/edges_to_faces/A5 [new file with mode: 0644]
tests/mkface/edges_to_faces/A6 [new file with mode: 0644]
tests/mkface/edges_to_faces/A7 [new file with mode: 0644]
tests/mkface/edges_to_faces/A8 [new file with mode: 0644]
tests/mkface/edges_to_faces/A9 [new file with mode: 0644]
tests/mkface/edges_to_faces/B1 [new file with mode: 0644]
tests/mkface/edges_to_faces/B2 [new file with mode: 0644]
tests/mkface/edges_to_faces/B3 [new file with mode: 0644]
tests/mkface/edges_to_faces/B4 [new file with mode: 0644]
tests/mkface/edges_to_faces/B5 [new file with mode: 0644]
tests/mkface/edges_to_faces/B6 [new file with mode: 0644]
tests/mkface/edges_to_faces/B7 [new file with mode: 0644]
tests/mkface/edges_to_faces/B8 [new file with mode: 0644]
tests/mkface/edges_to_faces/B9 [new file with mode: 0644]
tests/mkface/edges_to_faces/C1 [new file with mode: 0644]
tests/mkface/edges_to_faces/C2 [new file with mode: 0644]
tests/mkface/edges_to_faces/C3 [new file with mode: 0644]
tests/mkface/edges_to_faces/C4 [new file with mode: 0644]
tests/mkface/edges_to_faces/C5 [new file with mode: 0644]
tests/mkface/edges_to_faces/C6 [new file with mode: 0644]
tests/mkface/edges_to_faces/C7 [new file with mode: 0644]
tests/mkface/edges_to_faces/C8 [new file with mode: 0644]
tests/mkface/edges_to_faces/C9 [new file with mode: 0644]
tests/mkface/edges_to_faces/D1 [new file with mode: 0644]
tests/mkface/edges_to_faces/D2 [new file with mode: 0644]
tests/mkface/edges_to_faces/D3 [new file with mode: 0644]
tests/mkface/edges_to_faces/D4 [new file with mode: 0644]
tests/mkface/edges_to_faces/D5 [new file with mode: 0644]
tests/mkface/edges_to_faces/D6 [new file with mode: 0644]
tests/mkface/edges_to_faces/D7 [new file with mode: 0644]
tests/mkface/edges_to_faces/D8 [new file with mode: 0644]
tests/mkface/edges_to_faces/D9 [new file with mode: 0644]
tests/mkface/edges_to_faces/E1 [new file with mode: 0644]
tests/mkface/edges_to_faces/E2 [new file with mode: 0644]
tests/mkface/grids.list