/*! \page extract_and_rebuild_page Extract and Rebuild This operation allows extraction of sub-shapes from a given shape. To use this operation, select in the Main Menu Operations -> Extract and Rebuild. The following dialog box appears: \image html extract_rebuild.png "Extract and Rebuild Dialog" In this dialog: TUI Command: geompy.MakeExtraction(theShape, theListOfID),
where \em theShape is the main shape, \em theListOfID is a list of sub-shape IDs to be extracted. Our TUI Scripts provide you with useful example of the use of \ref swig_MakeExtraction "Extract and Rebuild" functionality. More details If a sub-shape is extracted, all its ancestors should be modified. An ancestors of extracted sub-shapes can be either: - created anew without extracted sub-shapes, or - extracted if it is not possible to create a valid shape without extracted sub-shape. E.g. it is necessary to extract the vertex from the box: \image html extract_init.png "Extraction of the vertex from the box" In this case 3 ancestor edges are removed as they can't be valid without this vertex. 3 faces that contain these edges are also removed. It is because the wires without edges are not closed and it is not possible to create a valid face on not closed wire. These wires should contain two remaining edges, but they are removed as they are the part of the remaining shell. So these wires become empty that means that they should be removed as well. The shell is replaced by another one that contains 3 not modified faces. As It is not possible to construct a valid solid from not closed shell the solid is removed. So the result of the extraction is a shell that contains 3 faces: \image html extract_result.png "Result shape" Please, refer to this document for a detailed description of Extract and Rebuild operation. */