OCC Main Page | ModelingAlgorithms | Toolkits | Packages | Class Hierarchy | Data Structures | File List | Data Fields | Globals

ModelingAlgorithms
TKBO
BRepAlgoAPI


BRepAlgoAPI_BooleanOperation Class Reference

The abstract class BooleanOperation is the root
class of Boolean Operations (see Overview).
Boolean Operations algorithm is divided onto two parts.
- The first one is computing interference between arguments.
- The second one is building the result of operation.
The BooleanOperation class provides execution of both parts
of the Boolean Operations algorithm. The second part
(building the result) depends on given type of the Boolean
Operation (see Constructor).
.

#include <BRepAlgoAPI_BooleanOperation.hxx>

Inheritance diagram for BRepAlgoAPI_BooleanOperation:

Inheritance graph
[legend]

Public Member Functions

void * operator new (size_t, void *anAddress)
void * operator new (size_t size)
void operator delete (void *anAddress)
Standard_EXPORT void SetOperation (const BOP_Operation anOp)
 Sets the type of Boolean operation to perform
It can be BOP_SECTION
BOP_COMMON
BOP_FUSE
BOP_CUT
BOP_CUT21

.
virtual Standard_EXPORT void Build ()
 Provides the algorithm of Boolean Operations
- Filling interference Data Structure (if it is necessary)
- Building the result of the operation.
.
Standard_EXPORT const TopoDS_Shape & Shape1 () const
 Returns the first shape involved in this Boolean operation.
.
Standard_EXPORT const TopoDS_Shape & Shape2 () const
 Returns the second shape involved in this Boolean operation.
.
Standard_EXPORT BOP_Operation Operation () const
 Returns the type of Boolean Operation that has been performed.
.
Standard_EXPORT Standard_Boolean FuseEdges () const
 Returns the flag of edge refining
.
Standard_EXPORT void RefineEdges ()
 Fuse C1 edges
.
Standard_EXPORT Standard_Boolean BuilderCanWork () const
Standard_EXPORT Standard_Integer ErrorStatus () const
 Returns the error status of operation.
0 - Ok
1 - The Object is created but Nothing is Done
2 - Null source shapes is not allowed
3 - Check types of the arguments
4 - Can not allocate memory for the DSFiller
5 - The Builder can not work with such types of arguments
6 - Unknown operation is not allowed
7 - Can not allocate memory for the Builder
> 100 - See the Builder's ErrorStatus
.
virtual Standard_EXPORT const
TopTools_ListOfShape & 
Modified (const TopoDS_Shape &aS)
 Returns the list of shapes modified from the shape <s>.
.
virtual Standard_EXPORT Standard_Boolean IsDeleted (const TopoDS_Shape &aS)
 Returns true if the shape S has been deleted. The
result shape of the operation does not contain the shape S.
.
virtual Standard_EXPORT const
TopTools_ListOfShape & 
Modified2 (const TopoDS_Shape &aS)
 Returns the list of shapes modified from the shape <s>.
For use in BRepNaming.
.
virtual Standard_EXPORT const
TopTools_ListOfShape & 
Generated (const TopoDS_Shape &S)
 Returns the list of shapes generated from the shape <s>.
For use in BRepNaming.
.
virtual Standard_EXPORT Standard_Boolean HasModified () const
 Returns true if there is at least one modified shape.
For use in BRepNaming.
.
virtual Standard_EXPORT Standard_Boolean HasGenerated () const
 Returns true if there is at least one generated shape.
For use in BRepNaming.
.
virtual Standard_EXPORT Standard_Boolean HasDeleted () const
 Returns true if there is at least one deleted shape.
For use in BRepNaming.
.
Standard_EXPORT void Destroy ()
virtual Standard_EXPORT ~BRepAlgoAPI_BooleanOperation ()
Standard_EXPORT const TopTools_ListOfShape & SectionEdges ()
 Returns a list of section edges.
The edges represent the result of intersection between arguments of
Boolean Operation. They are computed during operation execution.
.

Protected Member Functions

Standard_EXPORT BRepAlgoAPI_BooleanOperation (const TopoDS_Shape &S1, const TopoDS_Shape &S2, const BOP_Operation anOperation)
 Prepares the operations for S1 and S2.
.
Standard_EXPORT BRepAlgoAPI_BooleanOperation (const TopoDS_Shape &S1, const TopoDS_Shape &S2, const BOPTools_DSFiller &aDSF, const BOP_Operation anOperation)
 Prepares the operations for S1 and S2.
.
Standard_EXPORT Standard_Boolean PrepareFiller ()

Protected Attributes

TopoDS_Shape myS1
TopoDS_Shape myS2
Standard_Boolean myBuilderCanWork
BOP_Operation myOperation
Standard_Integer myErrorStatus
BOPTools_PDSFiller myDSFiller
BOP_PBuilder myBuilder
Handle_BOP_HistoryCollector myHistory

Private Member Functions

Standard_EXPORT const TopTools_ListOfShape & RefinedList (const TopTools_ListOfShape &theL)
 Returns the list of shapes generated from the shape <s>.
For use in BRepNaming.
.

Private Attributes

Standard_Integer myEntryType
Standard_Boolean myFuseEdges
TopTools_DataMapOfShapeShape myModifFaces
TopTools_DataMapOfShapeShape myEdgeMap

Constructor & Destructor Documentation

virtual Standard_EXPORT BRepAlgoAPI_BooleanOperation::~BRepAlgoAPI_BooleanOperation  )  [inline, virtual]
 

Standard_EXPORT BRepAlgoAPI_BooleanOperation::BRepAlgoAPI_BooleanOperation const TopoDS_Shape &  S1,
const TopoDS_Shape &  S2,
const BOP_Operation  anOperation
[protected]
 

Standard_EXPORT BRepAlgoAPI_BooleanOperation::BRepAlgoAPI_BooleanOperation const TopoDS_Shape &  S1,
const TopoDS_Shape &  S2,
const BOPTools_DSFiller aDSF,
const BOP_Operation  anOperation
[protected]
 


Member Function Documentation

virtual Standard_EXPORT void BRepAlgoAPI_BooleanOperation::Build  )  [virtual]
 

Reimplemented from BRepBuilderAPI_MakeShape.

Reimplemented in BRepAlgoAPI_Section.

Standard_EXPORT Standard_Boolean BRepAlgoAPI_BooleanOperation::BuilderCanWork  )  const
 

Standard_EXPORT void BRepAlgoAPI_BooleanOperation::Destroy  ) 
 

Standard_EXPORT Standard_Integer BRepAlgoAPI_BooleanOperation::ErrorStatus  )  const
 

Standard_EXPORT Standard_Boolean BRepAlgoAPI_BooleanOperation::FuseEdges  )  const
 

virtual Standard_EXPORT const TopTools_ListOfShape& BRepAlgoAPI_BooleanOperation::Generated const TopoDS_Shape &  S  )  [virtual]
 

Reimplemented from BRepBuilderAPI_MakeShape.

virtual Standard_EXPORT Standard_Boolean BRepAlgoAPI_BooleanOperation::HasDeleted  )  const [virtual]
 

virtual Standard_EXPORT Standard_Boolean BRepAlgoAPI_BooleanOperation::HasGenerated  )  const [virtual]
 

virtual Standard_EXPORT Standard_Boolean BRepAlgoAPI_BooleanOperation::HasModified  )  const [virtual]
 

virtual Standard_EXPORT Standard_Boolean BRepAlgoAPI_BooleanOperation::IsDeleted const TopoDS_Shape &  aS  )  [virtual]
 

Reimplemented from BRepBuilderAPI_MakeShape.

virtual Standard_EXPORT const TopTools_ListOfShape& BRepAlgoAPI_BooleanOperation::Modified const TopoDS_Shape &  aS  )  [virtual]
 

Reimplemented from BRepBuilderAPI_MakeShape.

virtual Standard_EXPORT const TopTools_ListOfShape& BRepAlgoAPI_BooleanOperation::Modified2 const TopoDS_Shape &  aS  )  [virtual]
 

Standard_EXPORT BOP_Operation BRepAlgoAPI_BooleanOperation::Operation  )  const
 

void BRepAlgoAPI_BooleanOperation::operator delete void *  anAddress  )  [inline]
 

Reimplemented from BRepBuilderAPI_MakeShape.

Reimplemented in BRepAlgoAPI_Common, BRepAlgoAPI_Cut, BRepAlgoAPI_Fuse, and BRepAlgoAPI_Section.

void* BRepAlgoAPI_BooleanOperation::operator new size_t  size  )  [inline]
 

Reimplemented from BRepBuilderAPI_MakeShape.

Reimplemented in BRepAlgoAPI_Common, BRepAlgoAPI_Cut, BRepAlgoAPI_Fuse, and BRepAlgoAPI_Section.

void* BRepAlgoAPI_BooleanOperation::operator new size_t  ,
void *  anAddress
[inline]
 

Reimplemented from BRepBuilderAPI_MakeShape.

Reimplemented in BRepAlgoAPI_Common, BRepAlgoAPI_Cut, BRepAlgoAPI_Fuse, and BRepAlgoAPI_Section.

Standard_EXPORT Standard_Boolean BRepAlgoAPI_BooleanOperation::PrepareFiller  )  [protected]
 

Standard_EXPORT const TopTools_ListOfShape& BRepAlgoAPI_BooleanOperation::RefinedList const TopTools_ListOfShape &  theL  )  [private]
 

Standard_EXPORT void BRepAlgoAPI_BooleanOperation::RefineEdges  ) 
 

Standard_EXPORT const TopTools_ListOfShape& BRepAlgoAPI_BooleanOperation::SectionEdges  ) 
 

Standard_EXPORT void BRepAlgoAPI_BooleanOperation::SetOperation const BOP_Operation  anOp  ) 
 

Standard_EXPORT const TopoDS_Shape& BRepAlgoAPI_BooleanOperation::Shape1  )  const
 

Standard_EXPORT const TopoDS_Shape& BRepAlgoAPI_BooleanOperation::Shape2  )  const
 


Field Documentation

BOP_PBuilder BRepAlgoAPI_BooleanOperation::myBuilder [protected]
 

Standard_Boolean BRepAlgoAPI_BooleanOperation::myBuilderCanWork [protected]
 

BOPTools_PDSFiller BRepAlgoAPI_BooleanOperation::myDSFiller [protected]
 

TopTools_DataMapOfShapeShape BRepAlgoAPI_BooleanOperation::myEdgeMap [private]
 

Standard_Integer BRepAlgoAPI_BooleanOperation::myEntryType [private]
 

Standard_Integer BRepAlgoAPI_BooleanOperation::myErrorStatus [protected]
 

Standard_Boolean BRepAlgoAPI_BooleanOperation::myFuseEdges [private]
 

Handle_BOP_HistoryCollector BRepAlgoAPI_BooleanOperation::myHistory [protected]
 

TopTools_DataMapOfShapeShape BRepAlgoAPI_BooleanOperation::myModifFaces [private]
 

BOP_Operation BRepAlgoAPI_BooleanOperation::myOperation [protected]
 

TopoDS_Shape BRepAlgoAPI_BooleanOperation::myS1 [protected]
 

TopoDS_Shape BRepAlgoAPI_BooleanOperation::myS2 [protected]
 


The documentation for this class was generated from the following file:
Generated on Mon Aug 25 13:40:51 2008 for OpenCASCADE by  doxygen 1.4.1