File indexing completed on 2025-01-18 10:02:58
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017 #ifndef _Approx_CurvilinearParameter_HeaderFile
0018 #define _Approx_CurvilinearParameter_HeaderFile
0019
0020 #include <Adaptor2d_Curve2d.hxx>
0021 #include <Adaptor3d_Surface.hxx>
0022 #include <GeomAbs_Shape.hxx>
0023 #include <Standard_OStream.hxx>
0024
0025
0026
0027
0028
0029
0030
0031
0032
0033
0034
0035
0036 class Approx_CurvilinearParameter
0037 {
0038 public:
0039
0040 DEFINE_STANDARD_ALLOC
0041
0042
0043
0044 Standard_EXPORT Approx_CurvilinearParameter(const Handle(Adaptor3d_Curve)& C3D, const Standard_Real Tol, const GeomAbs_Shape Order, const Standard_Integer MaxDegree, const Standard_Integer MaxSegments);
0045
0046
0047 Standard_EXPORT Approx_CurvilinearParameter(const Handle(Adaptor2d_Curve2d)& C2D, const Handle(Adaptor3d_Surface)& Surf, const Standard_Real Tol, const GeomAbs_Shape Order, const Standard_Integer MaxDegree, const Standard_Integer MaxSegments);
0048
0049
0050 Standard_EXPORT Approx_CurvilinearParameter(const Handle(Adaptor2d_Curve2d)& C2D1, const Handle(Adaptor3d_Surface)& Surf1, const Handle(Adaptor2d_Curve2d)& C2D2, const Handle(Adaptor3d_Surface)& Surf2, const Standard_Real Tol, const GeomAbs_Shape Order, const Standard_Integer MaxDegree, const Standard_Integer MaxSegments);
0051
0052 Standard_EXPORT Standard_Boolean IsDone() const;
0053
0054 Standard_EXPORT Standard_Boolean HasResult() const;
0055
0056
0057 Standard_EXPORT Handle(Geom_BSplineCurve) Curve3d() const;
0058
0059
0060 Standard_EXPORT Standard_Real MaxError3d() const;
0061
0062
0063
0064 Standard_EXPORT Handle(Geom2d_BSplineCurve) Curve2d1() const;
0065
0066
0067 Standard_EXPORT Standard_Real MaxError2d1() const;
0068
0069
0070
0071 Standard_EXPORT Handle(Geom2d_BSplineCurve) Curve2d2() const;
0072
0073
0074 Standard_EXPORT Standard_Real MaxError2d2() const;
0075
0076
0077 Standard_EXPORT void Dump (Standard_OStream& o) const;
0078
0079 private:
0080
0081 Standard_EXPORT static void ToleranceComputation (const Handle(Adaptor2d_Curve2d)& C2D, const Handle(Adaptor3d_Surface)& S, const Standard_Integer MaxNumber, const Standard_Real Tol, Standard_Real& TolV, Standard_Real& TolW);
0082
0083 private:
0084
0085 Standard_Integer myCase;
0086 Standard_Boolean myDone;
0087 Standard_Boolean myHasResult;
0088 Handle(Geom_BSplineCurve) myCurve3d;
0089 Standard_Real myMaxError3d;
0090 Handle(Geom2d_BSplineCurve) myCurve2d1;
0091 Standard_Real myMaxError2d1;
0092 Handle(Geom2d_BSplineCurve) myCurve2d2;
0093 Standard_Real myMaxError2d2;
0094
0095 };
0096
0097 #endif