|
Open CASCADE Technology
7.5.0
|
Solid Builder is the algorithm for building solids from set of faces. The given faces should be non-intersecting, i.e. all coinciding parts of the faces should be shared among them. More...
#include <BOPAlgo_BuilderSolid.hxx>

Public Member Functions | |
Constructors | |
| BOPAlgo_BuilderSolid () | |
| Empty constructor. More... | |
| virtual | ~BOPAlgo_BuilderSolid () |
| Empty constructor. More... | |
| BOPAlgo_BuilderSolid (const Handle< NCollection_BaseAllocator > &theAllocator) | |
| Constructor with allocator. More... | |
Performing the operation | |
| virtual void | Perform () override |
| Performs the construction of the solids from the given faces. More... | |
Getting the bounding boxes of the created solids | |
| const TopTools_DataMapOfShapeBox & | GetBoxesMap () const |
| For classification purposes the algorithm builds the bounding boxes for all created solids. This method returns the data map of solid - box pairs. More... | |
Public Member Functions inherited from BOPAlgo_BuilderArea | |
| void | SetContext (const Handle< IntTools_Context > &theContext) |
| Sets the context for the algorithms. More... | |
| const TopTools_ListOfShape & | Shapes () const |
| Returns the input shapes. More... | |
| void | SetShapes (const TopTools_ListOfShape &theLS) |
| Sets the shapes for building areas. More... | |
| const TopTools_ListOfShape & | Loops () const |
| Returns the found loops. More... | |
| const TopTools_ListOfShape & | Areas () const |
| Returns the found areas. More... | |
| void | SetAvoidInternalShapes (const Standard_Boolean theAvoidInternal) |
| Defines the preventing of addition of internal parts into result. The default value is FALSE, i.e. the internal parts are added into result. More... | |
| Standard_Boolean | IsAvoidInternalShapes () const |
| Returns the AvoidInternalShapes flag. More... | |
Public Member Functions inherited from BOPAlgo_Options | |
| BOPAlgo_Options () | |
| Empty constructor. More... | |
| BOPAlgo_Options (const Handle< NCollection_BaseAllocator > &theAllocator) | |
| Constructor with allocator. More... | |
| virtual | ~BOPAlgo_Options () |
| Destructor. More... | |
| const Handle< NCollection_BaseAllocator > & | Allocator () const |
| Returns allocator. More... | |
| virtual void | Clear () |
| Clears all warnings and errors, and any data cached by the algorithm. User defined options are not cleared. 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 Message_ProgressScope &theProgress) |
| Set the Progress Indicator object. More... | |
| void | SetUseOBB (const Standard_Boolean theUseOBB) |
| Enables/Disables the usage of OBB. More... | |
| Standard_Boolean | UseOBB () const |
| Returns the flag defining usage of OBB. 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 methods performing the operation | |
| virtual void | PerformShapesToAvoid () override |
| Collect the faces: More... | |
| virtual void | PerformLoops () override |
| Build all possible closed shells from the given faces. The method fills the following maps: More... | |
| virtual void | PerformAreas () override |
| Classifies the created shells on the Holes and Growths. Creates the solids from the Growths shells. Puts the Hole shells into the closest Growths solids. More... | |
| virtual void | PerformInternalShapes () override |
| Classifies the unused faces relatively the created solids. Puts the classified faces into the closest solids as internal shells. Warns the user about unclassified faces if any. 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... | |
Protected Member Functions inherited from BOPAlgo_BuilderArea | |
| BOPAlgo_BuilderArea () | |
| virtual | ~BOPAlgo_BuilderArea () |
| BOPAlgo_BuilderArea (const Handle< NCollection_BaseAllocator > &theAllocator) | |
Protected Member Functions inherited from BOPAlgo_Algo | |
| BOPAlgo_Algo () | |
| Default constructor. More... | |
| virtual | ~BOPAlgo_Algo () |
| BOPAlgo_Algo (const Handle< NCollection_BaseAllocator > &theAllocator) | |
| virtual void | CheckData () |
| Checks input data. More... | |
| 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... | |
Protected Attributes inherited from BOPAlgo_BuilderArea | |
| Handle< IntTools_Context > | myContext |
| TopTools_ListOfShape | myShapes |
| TopTools_ListOfShape | myLoops |
| TopTools_ListOfShape | myLoopsInternal |
| TopTools_ListOfShape | myAreas |
| TopTools_IndexedMapOfOrientedShape | myShapesToAvoid |
| Standard_Boolean | myAvoidInternalShapes |
Protected Attributes inherited from BOPAlgo_Options | |
| Handle< NCollection_BaseAllocator > | myAllocator |
| Enables/Disables the usage of OBB. More... | |
| Handle< Message_Report > | myReport |
| Enables/Disables the usage of OBB. More... | |
| Standard_Boolean | myRunParallel |
| Enables/Disables the usage of OBB. More... | |
| Standard_Real | myFuzzyValue |
| Enables/Disables the usage of OBB. More... | |
| const Message_ProgressScope * | myProgressScope |
| Enables/Disables the usage of OBB. More... | |
| Standard_Boolean | myUseOBB |
| Enables/Disables the usage of OBB. More... | |
Solid Builder is the algorithm for building solids from set of faces. The given faces should be non-intersecting, i.e. all coinciding parts of the faces should be shared among them.
The algorithm performs the following steps to build the solids:
It is possible to avoid all internal shells in the resulting solids. For that it is necessary to use the method SetAvoidInternalShapes(true) of the base class. In this case the steps 5 and 6 will not be performed at all.
The algorithm may return the following warnings:
Example of usage of the algorithm:
| BOPAlgo_BuilderSolid::BOPAlgo_BuilderSolid | ( | ) |
Empty constructor.
|
virtual |
Empty constructor.
| BOPAlgo_BuilderSolid::BOPAlgo_BuilderSolid | ( | const Handle< NCollection_BaseAllocator > & | theAllocator | ) |
Constructor with allocator.
|
inline |
For classification purposes the algorithm builds the bounding boxes for all created solids. This method returns the data map of solid - box pairs.
|
overridevirtual |
Performs the construction of the solids from the given faces.
Implements BOPAlgo_Algo.
|
overrideprotectedvirtual |
Classifies the created shells on the Holes and Growths. Creates the solids from the Growths shells. Puts the Hole shells into the closest Growths solids.
Implements BOPAlgo_BuilderArea.
|
overrideprotectedvirtual |
Classifies the unused faces relatively the created solids. Puts the classified faces into the closest solids as internal shells. Warns the user about unclassified faces if any.
Implements BOPAlgo_BuilderArea.
|
overrideprotectedvirtual |
Build all possible closed shells from the given faces. The method fills the following maps:
Implements BOPAlgo_BuilderArea.
|
overrideprotectedvirtual |
Collect the faces:
Implements BOPAlgo_BuilderArea.
1.8.13