// 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_WireEdgeSet_HeaderFile #define _BOP_WireEdgeSet_HeaderFile #ifndef _Standard_HeaderFile #include #endif #ifndef _Standard_Macro_HeaderFile #include #endif #ifndef _TopoDS_Face_HeaderFile #include #endif #ifndef _Standard_Integer_HeaderFile #include #endif #ifndef _BOP_ShapeSet_HeaderFile #include #endif #ifndef _Standard_Boolean_HeaderFile #include #endif #ifndef _TopAbs_Orientation_HeaderFile #include #endif class TopoDS_Face; class TopoDS_Shape; class TopTools_ListOfShape; class TopoDS_Edge; class TopoDS_Vertex; class gp_Pnt2d; class gp_Vec2d; //! The class containing data and methods
//! for a set of edges and wires
class BOP_WireEdgeSet : public BOP_ShapeSet { 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 BOP_WireEdgeSet(); //! Creates a WES to build edges connected by vertices
//! on face F. Edges of the WireEdgeSet must have a representation
//! on surface of face F.
Standard_EXPORT BOP_WireEdgeSet(const TopoDS_Face& F); //! Initialize a WES to build edges connected by vertices
//! on face F. Edges of the WireEdgeSet must have a representation
//! on surface of face F.
Standard_EXPORT void Initialize(const TopoDS_Face& F) ; //! Selector
Standard_EXPORT const TopoDS_Face& Face() const; //! See in base class, please
Standard_EXPORT virtual void AddShape(const TopoDS_Shape& S) ; //! See in base class, please
Standard_EXPORT virtual void AddStartElement(const TopoDS_Shape& S) ; //! See in base class, please
Standard_EXPORT virtual void AddElement(const TopoDS_Shape& S) ; //! Internal usage
Standard_EXPORT virtual void InitNeighbours(const TopoDS_Shape& E) ; //! Build the list of neighbour edges of edge myCurrentShape
//! Initialize iterator of neighbour edges to edge myCurrentShape
Standard_EXPORT virtual void FindNeighbours() ; Standard_EXPORT virtual const TopTools_ListOfShape& MakeNeighboursList(const TopoDS_Shape& E,const TopoDS_Shape& V) ; //! Internal usage
Standard_EXPORT static void IsUVISO(const TopoDS_Edge& E,const TopoDS_Face& F,Standard_Boolean& uiso,Standard_Boolean& viso) ; //! Removes the edge aE from the WES
Standard_EXPORT void RemoveEdgeFromWES(const TopoDS_Edge& aE) ; //! Returns TRUE if the edge aE has been kept twice
//! in the WES
Standard_EXPORT Standard_Boolean KeptTwice(const TopoDS_Edge& aE) const; protected: private: //! Indicates whether vertex V is a good connexity vertex between
//! edges E1 and E2.
//! i.e, returns True if V is shared by E1 and E2 and if V has different
//! orientations on E1 and E2.
//! If V is shared by E1 and E2, returns the orientation of V on E1 and E2
Standard_EXPORT Standard_Boolean VertexConnectsEdges(const TopoDS_Shape& V,const TopoDS_Shape& E1,const TopoDS_Shape& E2,TopAbs_Orientation& O1,TopAbs_Orientation& O2) const; //! Internal usage
Standard_EXPORT Standard_Boolean VertexConnectsEdgesClosing(const TopoDS_Shape& V,const TopoDS_Shape& E1,const TopoDS_Shape& E2) const; //! Internal usage
Standard_EXPORT Standard_Integer NbClosingShapes(const TopTools_ListOfShape& L) const; //! Internal usage
Standard_EXPORT void LocalD1(const TopoDS_Face& F,const TopoDS_Edge& E,const TopoDS_Vertex& V,gp_Pnt2d& P2,gp_Vec2d& V2) const; //! indicates if the edge is a closing edge of myFace
//! Internal usage
Standard_EXPORT Standard_Boolean IsClosed(const TopoDS_Shape& E) const; //! indicates if the edge is a closing edge on U of myFace
//! Internal usage
Standard_EXPORT Standard_Boolean IsUClosed(const TopoDS_Shape& E) const; //! indicates if the edge is a closing edge on V of myFace
//! Internal usage
Standard_EXPORT Standard_Boolean IsVClosed(const TopoDS_Shape& E) const; TopoDS_Face myFace; Standard_Integer myDEBVertexIndex; }; // other Inline functions and methods (like "C++: function call" methods) #endif