File indexing completed on 2026-05-25 08:16:03
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017 #ifndef _BRepFill_TrimSurfaceTool_HeaderFile
0018 #define _BRepFill_TrimSurfaceTool_HeaderFile
0019
0020 #include <Standard.hxx>
0021 #include <Standard_DefineAlloc.hxx>
0022 #include <Standard_Handle.hxx>
0023
0024 #include <TopoDS_Face.hxx>
0025 #include <TopoDS_Edge.hxx>
0026 #include <TColgp_SequenceOfPnt.hxx>
0027 #include <GeomAbs_Shape.hxx>
0028 class Geom2d_Curve;
0029 class gp_Pnt2d;
0030 class Geom_Curve;
0031
0032
0033
0034 class BRepFill_TrimSurfaceTool
0035 {
0036 public:
0037 DEFINE_STANDARD_ALLOC
0038
0039 Standard_EXPORT BRepFill_TrimSurfaceTool(const Handle(Geom2d_Curve)& Bis,
0040 const TopoDS_Face& Face1,
0041 const TopoDS_Face& Face2,
0042 const TopoDS_Edge& Edge1,
0043 const TopoDS_Edge& Edge2,
0044 const Standard_Boolean Inv1,
0045 const Standard_Boolean Inv2);
0046
0047
0048
0049
0050
0051
0052
0053
0054 Standard_EXPORT void IntersectWith(const TopoDS_Edge& EdgeOnF1,
0055 const TopoDS_Edge& EdgeOnF2,
0056 TColgp_SequenceOfPnt& Points) const;
0057
0058
0059 Standard_EXPORT Standard_Boolean IsOnFace(const gp_Pnt2d& Point) const;
0060
0061
0062
0063 Standard_EXPORT Standard_Real ProjOn(const gp_Pnt2d& Point, const TopoDS_Edge& Edge) const;
0064
0065 Standard_EXPORT void Project(const Standard_Real U1,
0066 const Standard_Real U2,
0067 Handle(Geom_Curve)& Curve,
0068 Handle(Geom2d_Curve)& PCurve1,
0069 Handle(Geom2d_Curve)& PCurve2,
0070 GeomAbs_Shape& myCont) const;
0071
0072 protected:
0073 private:
0074 TopoDS_Face myFace1;
0075 TopoDS_Face myFace2;
0076 TopoDS_Edge myEdge1;
0077 TopoDS_Edge myEdge2;
0078 Standard_Boolean myInv1;
0079 Standard_Boolean myInv2;
0080 Handle(Geom2d_Curve) myBis;
0081 };
0082
0083 #endif