Open CASCADE Technology
7.2.0
|
The class represents the Building part of the Boolean Operations algorithm.
The arguments of the algorithms are divided in two groups - Objects and Tools.
The algorithm builds the splits of the given arguments using the intersection results and combines the result of Boolean Operation of given type:
More...
#include <BOPAlgo_BOP.hxx>
Public Member Functions | |
BOPAlgo_BOP () | |
Empty constructor. More... | |
virtual | ~BOPAlgo_BOP () |
BOPAlgo_BOP (const BOPCol_BaseAllocator &theAllocator) | |
virtual void | Clear () override |
Clears internal fields and arguments. More... | |
virtual void | AddTool (const TopoDS_Shape &theShape) |
Adds Tool argument of the operation. More... | |
virtual void | SetTools (const BOPCol_ListOfShape &theShapes) |
void | SetOperation (const BOPAlgo_Operation theOperation) |
BOPAlgo_Operation | Operation () const |
virtual void | Perform () override |
Public Member Functions inherited from BOPAlgo_Builder | |
BOPAlgo_Builder () | |
virtual | ~BOPAlgo_Builder () |
BOPAlgo_Builder (const BOPCol_BaseAllocator &theAllocator) | |
BOPAlgo_PPaveFiller | PPaveFiller () |
BOPDS_PDS | PDS () |
virtual void | AddArgument (const TopoDS_Shape &theShape) |
virtual void | SetArguments (const BOPCol_ListOfShape &theLS) |
const BOPCol_ListOfShape & | Arguments () const |
virtual void | PerformWithFiller (const BOPAlgo_PaveFiller &theFiller) |
virtual const TopTools_ListOfShape & | Generated (const TopoDS_Shape &theS) override |
Returns the list of shapes generated from the shape theS. More... | |
virtual const TopTools_ListOfShape & | Modified (const TopoDS_Shape &theS) override |
Returns the list of shapes modified from the shape theS. More... | |
virtual Standard_Boolean | IsDeleted (const TopoDS_Shape &theS) override |
Returns true if the shape theS has been deleted. More... | |
const BOPCol_DataMapOfShapeListOfShape & | Images () const |
Standard_Boolean | IsInterferred (const TopoDS_Shape &theS) const |
const BOPCol_DataMapOfShapeListOfShape & | Origins () const |
Returns myOrigins. More... | |
const BOPCol_DataMapOfShapeShape & | ShapesSD () const |
Returns myShapesSD. More... | |
const BOPCol_DataMapOfShapeListOfShape & | Splits () const |
Returns mySplits. More... | |
void | SetNonDestructive (const Standard_Boolean theFlag) |
Sets the flag that defines the mode of treatment. In non-destructive mode the argument shapes are not modified. Instead a copy of a sub-shape is created in the result if it is needed to be updated. This flag is taken into account if internal PaveFiller is used only. In the case of calling PerformWithFiller the corresponding flag of that PaveFiller is in force. More... | |
Standard_Boolean | NonDestructive () const |
Returns the flag that defines the mode of treatment. In non-destructive mode the argument shapes are not modified. Instead a copy of a sub-shape is created in the result if it is needed to be updated. More... | |
void | SetGlue (const BOPAlgo_GlueEnum theGlue) |
Sets the glue option for the algorithm. More... | |
BOPAlgo_GlueEnum | Glue () const |
Returns the glue option of the algorithm. More... | |
Public Member Functions inherited from BOPAlgo_BuilderShape | |
const TopoDS_Shape & | Shape () const |
Returns the result of algorithm. More... | |
Standard_Boolean | HasDeleted () const |
Returns true if the at least one shape(or subshape) of arguments has been deleted. More... | |
Standard_Boolean | HasGenerated () const |
Returns true if the at least one shape(or subshape) of arguments has generated shapes. More... | |
Standard_Boolean | HasModified () const |
Returns true if the at least one shape(or subshape) of arguments has modified shapes. More... | |
const BOPCol_IndexedDataMapOfShapeListOfShape & | ImagesResult () const |
Public Member Functions inherited from BOPAlgo_Options | |
BOPAlgo_Options () | |
Empty constructor. More... | |
BOPAlgo_Options (const BOPCol_BaseAllocator &theAllocator) | |
Constructor with allocator. More... | |
virtual | ~BOPAlgo_Options () |
Destructor. More... | |
const BOPCol_BaseAllocator & | Allocator () const |
Returns allocator. More... | |
void | AddError (const Handle< Message_Alert > &theAlert) |
Adds the alert as error (fail) More... | |
void | AddWarning (const Handle< Message_Alert > &theAlert) |
Adds the alert as warning. More... | |
Standard_Boolean | HasErrors () const |
Returns true if algorithm has failed. More... | |
Standard_Boolean | HasError (const Handle< Standard_Type > &theType) const |
Returns true if algorithm has generated error of specified type. More... | |
Standard_Boolean | HasWarnings () const |
Returns true if algorithm has generated some warning alerts. More... | |
Standard_Boolean | HasWarning (const Handle< Standard_Type > &theType) const |
Returns true if algorithm has generated warning of specified type. More... | |
const Handle< Message_Report > & | GetReport () const |
Returns report collecting all errors and warnings. More... | |
void | DumpErrors (Standard_OStream &theOS) const |
Dumps the error status into the given stream. More... | |
void | DumpWarnings (Standard_OStream &theOS) const |
Dumps the warning statuses into the given stream. More... | |
void | ClearWarnings () |
Clears the warnings of the algorithm. More... | |
void | SetFuzzyValue (const Standard_Real theFuzz) |
Sets the additional tolerance. More... | |
Standard_Real | FuzzyValue () const |
Returns the additional tolerance. More... | |
void | SetProgressIndicator (const Handle< Message_ProgressIndicator > &theObj) |
Set the Progress Indicator object. More... | |
void | SetRunParallel (const Standard_Boolean theFlag) |
Set the flag of parallel processing if <theFlag> is true the parallel processing is switched on if <theFlag> is false the parallel processing is switched off. More... | |
Standard_Boolean | RunParallel () const |
Returns the flag of parallel processing. More... | |
Protected Member Functions | |
virtual void | CheckData () override |
Checks input data. More... | |
virtual void | PerformInternal1 (const BOPAlgo_PaveFiller &thePF) override |
Performs calculations using prepared Filler object <thePF> More... | |
virtual void | BuildResult (const TopAbs_ShapeEnum theType) override |
void | BuildShape () |
void | BuildRC () |
void | BuildSolid () |
Standard_Boolean | IsBoundSplits (const TopoDS_Shape &theS, BOPCol_IndexedDataMapOfShapeListOfShape &theMEF) |
Standard_Boolean | TreatEmptyShape () |
Treatment of the cases with empty shapes. It returns TRUE if there is nothing to do, i.e. all shapes in one of the groups are empty shapes. More... | |
Protected Member Functions inherited from BOPAlgo_Builder | |
virtual void | PrepareHistory () override |
Prepare information for history support. More... | |
virtual void | PerformInternal (const BOPAlgo_PaveFiller &thePF) |
void | CheckFiller () |
Checks if the intersection algorithm has Errors/Warnings. More... | |
virtual void | Prepare () |
void | FillImagesVertices () |
void | FillImagesEdges () |
void | FillImagesContainers (const TopAbs_ShapeEnum theType) |
void | FillImagesCompounds () |
void | FillImagesContainer (const TopoDS_Shape &theS, const TopAbs_ShapeEnum theType) |
void | FillImagesCompound (const TopoDS_Shape &theS, BOPCol_MapOfShape &theMF) |
void | FillImagesFaces () |
virtual void | BuildSplitFaces () |
void | FillSameDomainFaces () |
void | FillImagesFaces1 () |
void | FillImagesSolids () |
void | BuildDraftSolid (const TopoDS_Shape &theSolid, TopoDS_Shape &theDraftSolid, BOPCol_ListOfShape &theLIF) |
virtual void | FillIn3DParts (BOPCol_DataMapOfShapeListOfShape &theInParts, BOPCol_DataMapOfShapeShape &theDraftSolids, const BOPCol_BaseAllocator &theAllocator) |
void | BuildSplitSolids (BOPCol_DataMapOfShapeListOfShape &theInParts, BOPCol_DataMapOfShapeShape &theDraftSolids, const BOPCol_BaseAllocator &theAllocator) |
void | FillInternalShapes () |
virtual void | PostTreat () |
Protected Member Functions inherited from BOPAlgo_BuilderShape | |
BOPAlgo_BuilderShape () | |
virtual | ~BOPAlgo_BuilderShape () |
BOPAlgo_BuilderShape (const BOPCol_BaseAllocator &theAllocator) | |
Protected Member Functions inherited from BOPAlgo_Algo | |
BOPAlgo_Algo () | |
Default constructor. More... | |
virtual | ~BOPAlgo_Algo () |
BOPAlgo_Algo (const BOPCol_BaseAllocator &theAllocator) | |
virtual void | CheckResult () |
Checks the obtained result. More... | |
Protected Member Functions inherited from BOPAlgo_Options | |
void | UserBreak () const |
Breaks the execution if the break signal is indicated by myProgressIndicator. More... | |
Additional Inherited Members | |
Static Public Member Functions inherited from BOPAlgo_Options | |
static Standard_Boolean | GetParallelMode () |
Gets the global parallel mode. More... | |
static void | SetParallelMode (const Standard_Boolean theNewMode) |
Sets the global parallel mode. More... | |
The class represents the Building part of the Boolean Operations algorithm.
The arguments of the algorithms are divided in two groups - Objects and Tools.
The algorithm builds the splits of the given arguments using the intersection results and combines the result of Boolean Operation of given type:
The rules for the arguments and type of the operation are the following:
The class is a General Fuse based algorithm. Thus, all options of the General Fuse algorithm such as Fuzzy mode, safe processing mode, parallel processing mode, gluing mode and history support are also available in this algorithm.
Additionally to the Warnings of the parent class the algorithm returns the following warnings:
Additionally to Errors of the parent class the algorithm returns the following Error statuses:
BOPAlgo_BOP::BOPAlgo_BOP | ( | ) |
Empty constructor.
|
virtual |
BOPAlgo_BOP::BOPAlgo_BOP | ( | const BOPCol_BaseAllocator & | theAllocator | ) |
|
virtual |
Adds Tool argument of the operation.
|
protected |
|
overrideprotectedvirtual |
Reimplemented from BOPAlgo_Builder.
|
protected |
|
protected |
|
overrideprotectedvirtual |
Checks input data.
Reimplemented from BOPAlgo_Builder.
|
overridevirtual |
Clears internal fields and arguments.
Reimplemented from BOPAlgo_Builder.
Reimplemented in BRepFeat_Builder.
|
protected |
BOPAlgo_Operation BOPAlgo_BOP::Operation | ( | ) | const |
|
overridevirtual |
Reimplemented from BOPAlgo_Builder.
|
overrideprotectedvirtual |
Performs calculations using prepared Filler object <thePF>
Reimplemented from BOPAlgo_Builder.
void BOPAlgo_BOP::SetOperation | ( | const BOPAlgo_Operation | theOperation | ) |
|
virtual |
|
protected |
Treatment of the cases with empty shapes.
It returns TRUE if there is nothing to do, i.e. all shapes in one of the groups are empty shapes.
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |