// 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 _ShapeFix_FreeBounds_HeaderFile #define _ShapeFix_FreeBounds_HeaderFile #ifndef _Standard_HeaderFile #include #endif #ifndef _Standard_Macro_HeaderFile #include #endif #ifndef _TopoDS_Compound_HeaderFile #include #endif #ifndef _TopoDS_Shape_HeaderFile #include #endif #ifndef _Standard_Boolean_HeaderFile #include #endif #ifndef _Standard_Real_HeaderFile #include #endif class TopoDS_Shape; class TopoDS_Compound; //! This class is intended to output free bounds of the shape
//! (free bounds are the wires consisting of edges referenced by the
//! only face).
//! For building free bounds it uses ShapeAnalysis_FreeBounds class.
//! This class complements it with the feature to reduce the number
//! of open wires.
//! This reduction is performed with help of connecting several
//! adjacent open wires one to another what can lead to:
//! 1. making an open wire with greater length out of several
//! open wires
//! 2. making closed wire out of several open wires
class ShapeFix_FreeBounds { 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); } //! Empty constructor
Standard_EXPORT ShapeFix_FreeBounds(); //! Builds forecasting free bounds of the and connects
//! open wires with tolerance .
//! should be a compound of faces.
//! Tolerance should be greater than tolerance
//! used for initializing sewing analyzer, otherwise
//! connection of open wires is not performed.
Standard_EXPORT ShapeFix_FreeBounds(const TopoDS_Shape& shape,const Standard_Real sewtoler,const Standard_Real closetoler,const Standard_Boolean splitclosed,const Standard_Boolean splitopen); //! Builds actual free bounds of the and connects
//! open wires with tolerance .
//! should be a compound of shells.
Standard_EXPORT ShapeFix_FreeBounds(const TopoDS_Shape& shape,const Standard_Real closetoler,const Standard_Boolean splitclosed,const Standard_Boolean splitopen); //! Returns compound of closed wires out of free edges.
const TopoDS_Compound& GetClosedWires() const; //! Returns compound of open wires out of free edges.
const TopoDS_Compound& GetOpenWires() const; //! Returns modified source shape.
const TopoDS_Shape& GetShape() const; protected: private: Standard_EXPORT Standard_Boolean Perform() ; TopoDS_Compound myWires; TopoDS_Compound myEdges; TopoDS_Shape myShape; Standard_Boolean myShared; Standard_Real mySewToler; Standard_Real myCloseToler; Standard_Boolean mySplitClosed; Standard_Boolean mySplitOpen; }; #include // other Inline functions and methods (like "C++: function call" methods) #endif