Open CASCADE Technology  6.8.0
Static Public Member Functions
BRepAlgoAPI Class Reference

The BRepAlgoAPI package provides a full range of services to perform Boolean Operations on arguments (shapes that are defined in the BRep data structures). The implemented new algorithm is intended to replace the Old Boolean Operations algorithm in the BRepAlgoAPI package. The New algorithm is free of a large number of weak spots and limitations characteristics of the Old algorithm. It is more powerful and flexible. It can process arguments the Old algorithm was not adapted for. The new algorithm is based on a new approach to operations with interfered shapes. The advantages of the new algorithm include an ability to treat arguments that have shared entities. It can properly process two solids with shared faces (in terms of TopoDS_Shape::IsSame()), two faces that have shared edges and so on. Now the New Boolean Operation algorithm can treat a wide range of shapes while the Old one fails on them. A generalization of treatment of same-domain faces was included into the New algorithm. Two faces that share the same domain are processed according to the common rule even if the underlying surfaces are of different types. This allows to execute Boolean Operations properly for the same domain faces. It also concerns solids and shells that have the same domain faces. It is quite frequent when two faces share the same domain. And the New algorithm successfully copes with it in contrast to the Old one. Generalization oftreatment of degenerated edges gives a possibility to process them properly. Although there are still some difficulties with processing faces in areas close to degenerated edges. Now the processing of arguments having internal sub-shapes gives a correct result. Internal sub-shape means a sub-shape of a shape with the orientation TopAbs_INTERNAL and is located inside the shape boundaries. The New algorithm processes faces with internal edges properly. The new API of the Boolean Operations (in addition to the old API) allows to reuse the already computed interference between arguments in different types of Boolean Operations. It is possible to use once computed interference in FUSE, CUT and COMMON operations on given arguments. So there is no need to re-compute the interference between the arguments. It allows to reduce time for more than one operation on given arguments. The shape type of a Boolean Operation result and types of the arguments: More...

#include <BRepAlgoAPI.hxx>

Static Public Member Functions

static void DumpOper (const Standard_CString theFilePath, const TopoDS_Shape &theShape1, const TopoDS_Shape &theShape2, const TopoDS_Shape &theResult, const BOPAlgo_Operation theOperation, const Standard_Boolean isNonValidArgs)
 Check shapes on validity for boolean operation. Dump arguments and result of boolean operation in the file specified by path. More...
 

Detailed Description

The BRepAlgoAPI package provides a full range of services to perform Boolean Operations on arguments (shapes that are defined in the BRep data structures). The implemented new algorithm is intended to replace the Old Boolean Operations algorithm in the BRepAlgoAPI package. The New algorithm is free of a large number of weak spots and limitations characteristics of the Old algorithm. It is more powerful and flexible. It can process arguments the Old algorithm was not adapted for. The new algorithm is based on a new approach to operations with interfered shapes. The advantages of the new algorithm include an ability to treat arguments that have shared entities. It can properly process two solids with shared faces (in terms of TopoDS_Shape::IsSame()), two faces that have shared edges and so on. Now the New Boolean Operation algorithm can treat a wide range of shapes while the Old one fails on them. A generalization of treatment of same-domain faces was included into the New algorithm. Two faces that share the same domain are processed according to the common rule even if the underlying surfaces are of different types. This allows to execute Boolean Operations properly for the same domain faces. It also concerns solids and shells that have the same domain faces. It is quite frequent when two faces share the same domain. And the New algorithm successfully copes with it in contrast to the Old one. Generalization oftreatment of degenerated edges gives a possibility to process them properly. Although there are still some difficulties with processing faces in areas close to degenerated edges. Now the processing of arguments having internal sub-shapes gives a correct result. Internal sub-shape means a sub-shape of a shape with the orientation TopAbs_INTERNAL and is located inside the shape boundaries. The New algorithm processes faces with internal edges properly. The new API of the Boolean Operations (in addition to the old API) allows to reuse the already computed interference between arguments in different types of Boolean Operations. It is possible to use once computed interference in FUSE, CUT and COMMON operations on given arguments. So there is no need to re-compute the interference between the arguments. It allows to reduce time for more than one operation on given arguments. The shape type of a Boolean Operation result and types of the arguments:

Member Function Documentation

static void BRepAlgoAPI::DumpOper ( const Standard_CString  theFilePath,
const TopoDS_Shape theShape1,
const TopoDS_Shape theShape2,
const TopoDS_Shape theResult,
const BOPAlgo_Operation  theOperation,
const Standard_Boolean  isNonValidArgs 
)
static

Check shapes on validity for boolean operation. Dump arguments and result of boolean operation in the file specified by path.


The documentation for this class was generated from the following file: