// 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 _BRepOffset_Tool_HeaderFile #define _BRepOffset_Tool_HeaderFile #ifndef _Standard_HeaderFile #include #endif #ifndef _Standard_Macro_HeaderFile #include #endif #ifndef _TopAbs_Orientation_HeaderFile #include #endif #ifndef _Standard_Boolean_HeaderFile #include #endif #ifndef _TopAbs_State_HeaderFile #include #endif #ifndef _Standard_Real_HeaderFile #include #endif #ifndef _Handle_BRepAlgo_AsDes_HeaderFile #include #endif #ifndef _Handle_Geom_Curve_HeaderFile #include #endif class TopoDS_Edge; class TopoDS_Vertex; class TopoDS_Face; class TopTools_ListOfShape; class BRepOffset_Analyse; class TopTools_DataMapOfShapeShape; class TopoDS_Wire; class TopoDS_Shape; class TopTools_DataMapOfShapeListOfShape; class TopTools_MapOfShape; class BRepAlgo_AsDes; class BRepAlgo_Image; class Geom_Curve; class BRepOffset_Tool { 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); } //! is the FirstVertex , is the Last Vertex of
//! taking account the orientation of Edge.
Standard_EXPORT static void EdgeVertices(const TopoDS_Edge& E,TopoDS_Vertex& V1,TopoDS_Vertex& V2) ; //! returns the cumul of the orientation of
//! and thc containing wire in
Standard_EXPORT static TopAbs_Orientation OriEdgeInFace(const TopoDS_Edge& E,const TopoDS_Face& F) ; //! is a section between and . Computes
//! the orientation of in influenced by .
//! idem for .
Standard_EXPORT static void OrientSection(const TopoDS_Edge& E,const TopoDS_Face& F1,const TopoDS_Face& F2,TopAbs_Orientation& O1,TopAbs_Orientation& O2) ; //! Returns True if and has common Vertices
//! or edges , contains the common edges. the
//! common vertices.
Standard_EXPORT static Standard_Boolean HasCommonShapes(const TopoDS_Face& F1,const TopoDS_Face& F2,TopTools_ListOfShape& LE,TopTools_ListOfShape& LV) ; //! Computes the Section betwwen and the
//! edges solution are stored in with the
//! orientation on , the sames edges are stored in
//! with the orientation on .
Standard_EXPORT static void Inter3D(const TopoDS_Face& F1,const TopoDS_Face& F2,TopTools_ListOfShape& LInt1,TopTools_ListOfShape& LInt2,const TopAbs_State Side,const TopoDS_Edge& RefEdge,const Standard_Boolean IsRefEdgeDefined = Standard_False) ; //! Find if the edges of the face are on
//! the face .
//! Set in the updated edges.
//! If all the edges are computed, returns true.
//!
Standard_EXPORT static Standard_Boolean TryProject(const TopoDS_Face& F1,const TopoDS_Face& F2,const TopTools_ListOfShape& Edges,TopTools_ListOfShape& LInt1,TopTools_ListOfShape& LInt2,const TopAbs_State Side,const Standard_Real TolConf) ; Standard_EXPORT static void PipeInter(const TopoDS_Face& F1,const TopoDS_Face& F2,TopTools_ListOfShape& LInt1,TopTools_ListOfShape& LInt2,const TopAbs_State Side) ; Standard_EXPORT static void Inter2d(const TopoDS_Face& F,const TopoDS_Edge& E1,const TopoDS_Edge& E2,TopTools_ListOfShape& LV,const Standard_Real Tol) ; Standard_EXPORT static void InterOrExtent(const TopoDS_Face& F1,const TopoDS_Face& F2,TopTools_ListOfShape& LInt1,TopTools_ListOfShape& LInt2,const TopAbs_State Side) ; Standard_EXPORT static void CheckBounds(const TopoDS_Face& F,const BRepOffset_Analyse& Analyse,Standard_Boolean& enlargeU,Standard_Boolean& enlargeVfirst,Standard_Boolean& enlargeVlast) ; //! if is TRUE , the surface can be
//! changed .
//! if is TRUE, update the pcurves of the
//! edges of on the new surface.if the surface has been changed,
//! Returns True if The Surface of has changed.
//!
Standard_EXPORT static Standard_Boolean EnLargeFace(const TopoDS_Face& F,TopoDS_Face& NF,const Standard_Boolean ChangeGeom,const Standard_Boolean UpDatePCurve = Standard_False,const Standard_Boolean enlargeU = Standard_True,const Standard_Boolean enlargeVfirst = Standard_True,const Standard_Boolean enlargeVlast = Standard_True) ; Standard_EXPORT static void ExtentFace(const TopoDS_Face& F,TopTools_DataMapOfShapeShape& ConstShapes,TopTools_DataMapOfShapeShape& ToBuild,const TopAbs_State Side,const Standard_Real TolConf,TopoDS_Face& NF) ; //! Via the wire explorer store in for
//! an Edge of his Edge neighbour on the first
//! vertex of .
//! Store in NOnV2 the Neighbour of on the last
//! vertex of .
Standard_EXPORT static void BuildNeighbour(const TopoDS_Wire& W,const TopoDS_Face& F,TopTools_DataMapOfShapeShape& NOnV1,TopTools_DataMapOfShapeShape& NOnV2) ; //! Store in MVE for a vertex in the incident
//! edges in .
//! An Edge is Store only one Time for a vertex.
Standard_EXPORT static void MapVertexEdges(const TopoDS_Shape& S,TopTools_DataMapOfShapeListOfShape& MVE) ; //! Remove the non valid part of an offsetshape
//! 1 - Remove all the free boundary and the faces
//! connex to such edges.
//! 2 - Remove all the shapes not valid in the result
//! (according to the side of offseting)
//! in this verion only the first point is implemented.
Standard_EXPORT static TopoDS_Shape Deboucle3D(const TopoDS_Shape& S,const TopTools_MapOfShape& Boundary) ; Standard_EXPORT static void CorrectOrientation(const TopoDS_Shape& SI,const TopTools_MapOfShape& NewEdges,Handle(BRepAlgo_AsDes)& AsDes,BRepAlgo_Image& InitOffset,const Standard_Real Offset) ; Standard_EXPORT static Standard_Real Gabarit(const Handle(Geom_Curve)& aCurve) ; protected: private: }; // other Inline functions and methods (like "C++: function call" methods) #endif