// This file is generated by WOK (CPPExt). // Please do not edit this file; modify original file instead. // The copyright and license terms as defined for the original file apply to // this header file considered to be the "object code" form of the original source. #ifndef _BOP_Builder_HeaderFile #define _BOP_Builder_HeaderFile #ifndef _Standard_HeaderFile #include #endif #ifndef _Standard_Macro_HeaderFile #include #endif #ifndef _TopoDS_Shape_HeaderFile #include #endif #ifndef _BOP_Operation_HeaderFile #include #endif #ifndef _Standard_Boolean_HeaderFile #include #endif #ifndef _Standard_Integer_HeaderFile #include #endif #ifndef _BOPTools_PDSFiller_HeaderFile #include #endif #ifndef _TopTools_IndexedMapOfShape_HeaderFile #include #endif #ifndef _TopTools_IndexedDataMapOfShapeListOfShape_HeaderFile #include #endif #ifndef _TopTools_ListOfShape_HeaderFile #include #endif #ifndef _Handle_BOP_HistoryCollector_HeaderFile #include #endif #ifndef _TopAbs_ShapeEnum_HeaderFile #include #endif class BOP_HistoryCollector; class TopoDS_Shape; class BOPTools_DSFiller; class TopTools_ListOfShape; class BOP_Builder { public: void* operator new(size_t,void* anAddress) { return anAddress; } void* operator new(size_t size) { return Standard::Allocate(size); } void operator delete(void *anAddress) { if (anAddress) Standard::Free((Standard_Address&)anAddress); } //! Set shapes (arguments) to perform BO
Standard_EXPORT void SetShapes(const TopoDS_Shape& aS1,const TopoDS_Shape& aS2) ; //! Set type of the BO to perform
//!
Standard_EXPORT void SetOperation(const BOP_Operation anOp) ; //! Set the flag to allow the result
//! be manifold or non-manifold (not used)
Standard_EXPORT void SetManifoldFlag(const Standard_Boolean aFlag) ; //! Selector
Standard_EXPORT const TopoDS_Shape& Shape1() const; //! Selector
Standard_EXPORT const TopoDS_Shape& Shape2() const; //! Selector
//!
Standard_EXPORT BOP_Operation Operation() const; //! Selector
//!
Standard_EXPORT Standard_Boolean ManifoldFlag() const; //! Selector
//!
Standard_EXPORT Standard_Boolean IsDone() const; //! Selector
Standard_EXPORT Standard_Integer ErrorStatus() const; //! Returns the result of the BO
//!
Standard_EXPORT const TopoDS_Shape& Result() const; //! Does the BO from the beggining to the end,
//! i.e. create new DataStructure, DSFiller,
//! compute all interferences, compute states,
//! build result etc
Standard_EXPORT virtual void Do() ; //! Does the BO using existing Filler to the end
//!
Standard_EXPORT virtual void DoWithFiller(const BOPTools_DSFiller& aDSF) ; //! Constructs the final result of the BO
//!
Standard_EXPORT virtual void BuildResult() ; //! Destructor
//!
Standard_EXPORT virtual void Destroy() ; Standard_EXPORT virtual ~BOP_Builder(){Destroy();} //! Sort types of shapes as integers in increasing order
//!
Standard_EXPORT static void SortTypes(TopAbs_ShapeEnum& aType1,TopAbs_ShapeEnum& aType2) ; //! Returns the list of shapes modified from the shape aS
//!
Standard_EXPORT const TopTools_ListOfShape& Modified(const TopoDS_Shape& aS) const; //! Returns TRUE if the result does not contain the shape aS
//!
Standard_EXPORT Standard_Boolean IsDeleted(const TopoDS_Shape& aS) const; //! Returns the list of shapes that are parts of BO "Section"
//! for given arguments.
//! For Internal usage
//!
Standard_EXPORT const TopTools_ListOfShape& SectionEdges() const; Standard_EXPORT virtual void SetHistoryCollector(const Handle(BOP_HistoryCollector)& theHistory) ; Standard_EXPORT Handle_BOP_HistoryCollector GetHistoryCollector() const; protected: //! Empty constructor;
//!
Standard_EXPORT BOP_Builder(); //! Fill the list of shapes modified from the shape aS.
//! For Internal usage
//!
Standard_EXPORT void FillModified() ; //! Fill the list of shapes modified from the shape aS.
//! For Internal usage
//!
Standard_EXPORT void FillModified(const TopoDS_Shape& aS,const TopTools_ListOfShape& aL) ; //! Fill the list of shapes modified from the shape aS
//! For Internal usage
//!
Standard_EXPORT void FillModified(const TopoDS_Shape& aE,const TopoDS_Shape& aSp) ; TopoDS_Shape myShape1; TopoDS_Shape myShape2; BOP_Operation myOperation; Standard_Boolean myManifoldFlag; Standard_Boolean myIsDone; Standard_Integer myErrorStatus; TopoDS_Shape myResult; Standard_Integer myDraw; BOPTools_PDSFiller myDSFiller; TopTools_IndexedMapOfShape myResultMap; TopTools_IndexedDataMapOfShapeListOfShape myModifiedMap; TopTools_ListOfShape myEmptyList; TopTools_ListOfShape mySectionEdges; Handle_BOP_HistoryCollector myHistory; private: }; // other Inline functions and methods (like "C++: function call" methods) #endif