/*! \page using_boolean_operations_page Boolean Operations For a detailed description of Boolean operations refer to this document. It provides a general review of the Partition and Boolean operations algorithms, describes the usage methodology and highlights major limitations of these operations. You can use the following boolean operations for construction of more complex geometrical objects (2D & 3D elements): You can use advanced TUI commands performing these operations independently from each other: \par geompy.MakeFuseList(theShapesList, checkSelfInte), where \em theShapesList is the list of shapes for Fuse operation; \par geompy.MakeCommonList(theShapesList, checkSelfInte), where \em theShapesList is the list of shapes for Common operation; \par geompy.MakeCutList(theMainShape, theShapesList, checkSelfInte), where \em theMainShape is the object of the operation and \em theShapesList is the list of tools for Cut operation; \par geompy.MakeSection(Shape1, Shape2, checkSelfInte), where \em Shape1 is the first argument and \em Shape2 is the second argument of Section operation; There are several TUI commands that can be used to perform boolean operations with only two arguments. There is a general TUI command covering these operations, which can be used alongside with separate commands for each operation. \par geompy.MakeBoolean(Shape1, Shape2, Operation, checkSelfInte), where \em Shape1 is the first argument and \em Shape2 is the second argument of a Boolean operation, \em Operation is the type of a Boolean operation (1 — Common, 2 — Cut, 3 — Fuse, 4 — Section). Besides, you can use advanced TUI commands performing these operations independently from each other: \par geompy.MakeFuse(Shape1, Shape2, checkSelfInte), where \em Shape1 is the first argument and \em Shape2 is the second argument of Fuse operation; \par geompy.MakeCommon(Shape1, Shape2, checkSelfInte), where \em Shape1 is the first argument and \em Shape2 is the second argument of Common operation; \par geompy.MakeCut(Shape1, Shape2, checkSelfInte), where \em Shape1 is the first argument and \em Shape2 is the second argument of Cut operation; The flag \em checkSelfInte indicates whether the arguments should be checked for self-intersection prior to an operation. Its default value is \em False, which means that there is no need to check it. This option is provided to ensure that an operation is performed on not self-intersected shapes as they are not valid for boolean operations. \note This algorithm does not find all types of self-intersections. It is tuned to detect vertex/vertex, vertex/edge, edge/edge, vertex/face and edge/face intersections. Face/face intersections detection is switched off as it is a time-consuming operation that gives an impact on performance. To find all self-intersections use \ref check_self_intersections_page "Detect Self-intersection tool". Our TUI Scripts provide you with useful examples of the use of \ref tui_boolean_operations_page "Boolean Operations". */