Warning, file /include/opencascade/StdPrs_ToolRFace.hxx was not indexed
or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017 #ifndef _StdPrs_ToolRFace_HeaderFile
0018 #define _StdPrs_ToolRFace_HeaderFile
0019
0020 #include <BRepAdaptor_Surface.hxx>
0021 #include <Geom2dAdaptor_Curve.hxx>
0022 #include <TopAbs_Orientation.hxx>
0023 #include <TopExp_Explorer.hxx>
0024 #include <TopoDS_Face.hxx>
0025
0026 class TopoDS_Edge;
0027
0028
0029
0030 class StdPrs_ToolRFace
0031 {
0032 public:
0033
0034 DEFINE_STANDARD_ALLOC
0035
0036
0037 Standard_EXPORT StdPrs_ToolRFace();
0038
0039
0040 Standard_EXPORT StdPrs_ToolRFace(const Handle(BRepAdaptor_Surface)& aSurface);
0041
0042
0043 Standard_Boolean IsOriented() const { return Standard_True; }
0044
0045
0046 void Init()
0047 {
0048 myExplorer.Init (myFace, TopAbs_EDGE);
0049 next();
0050 }
0051
0052
0053 Standard_Boolean More() const { return myExplorer.More(); }
0054
0055
0056 void Next()
0057 {
0058 myExplorer.Next();
0059 next();
0060 }
0061
0062
0063 const Adaptor2d_Curve2d& Value() const { return myCurve; }
0064
0065
0066 Standard_EXPORT const TopoDS_Edge& Edge() const;
0067
0068
0069 TopAbs_Orientation Orientation() const { return myExplorer.Current().Orientation(); }
0070
0071
0072 Standard_Boolean IsInvalidGeometry() const { return myHasNullCurves; }
0073
0074 private:
0075
0076
0077 Standard_EXPORT void next();
0078
0079 private:
0080
0081 TopoDS_Face myFace;
0082 TopExp_Explorer myExplorer;
0083 Geom2dAdaptor_Curve myCurve;
0084 Standard_Boolean myHasNullCurves;
0085
0086 };
0087
0088 #endif