File indexing completed on 2025-01-18 10:04:09
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017 #ifndef _IntPatch_HInterTool_HeaderFile
0018 #define _IntPatch_HInterTool_HeaderFile
0019
0020 #include <Adaptor2d_Curve2d.hxx>
0021 #include <Adaptor3d_Surface.hxx>
0022
0023 class gp_Pnt2d;
0024 class Adaptor3d_HVertex;
0025 class gp_Pnt;
0026
0027
0028
0029 class IntPatch_HInterTool
0030 {
0031 public:
0032
0033 DEFINE_STANDARD_ALLOC
0034
0035
0036 Standard_EXPORT IntPatch_HInterTool();
0037
0038 static Standard_Boolean SingularOnUMin (const Handle(Adaptor3d_Surface)& S);
0039
0040 static Standard_Boolean SingularOnUMax (const Handle(Adaptor3d_Surface)& S);
0041
0042 static Standard_Boolean SingularOnVMin (const Handle(Adaptor3d_Surface)& S);
0043
0044 static Standard_Boolean SingularOnVMax (const Handle(Adaptor3d_Surface)& S);
0045
0046 Standard_EXPORT static Standard_Integer NbSamplesU (const Handle(Adaptor3d_Surface)& S, const Standard_Real u1, const Standard_Real u2);
0047
0048 Standard_EXPORT static Standard_Integer NbSamplesV (const Handle(Adaptor3d_Surface)& S, const Standard_Real v1, const Standard_Real v2);
0049
0050 Standard_EXPORT Standard_Integer NbSamplePoints (const Handle(Adaptor3d_Surface)& S);
0051
0052 Standard_EXPORT void SamplePoint (const Handle(Adaptor3d_Surface)& S, const Standard_Integer Index, Standard_Real& U, Standard_Real& V) const;
0053
0054
0055
0056
0057
0058
0059 Standard_EXPORT static Standard_Boolean HasBeenSeen (const Handle(Adaptor2d_Curve2d)& C);
0060
0061
0062
0063
0064 Standard_EXPORT static Standard_Integer NbSamplesOnArc (const Handle(Adaptor2d_Curve2d)& A);
0065
0066
0067
0068
0069
0070 Standard_EXPORT static void Bounds (const Handle(Adaptor2d_Curve2d)& C, Standard_Real& Ufirst, Standard_Real& Ulast);
0071
0072
0073
0074
0075
0076
0077
0078 Standard_EXPORT static Standard_Boolean Project (const Handle(Adaptor2d_Curve2d)& C, const gp_Pnt2d& P, Standard_Real& Paramproj, gp_Pnt2d& Ptproj);
0079
0080
0081
0082
0083
0084 Standard_EXPORT static Standard_Real Tolerance (const Handle(Adaptor3d_HVertex)& V, const Handle(Adaptor2d_Curve2d)& C);
0085
0086
0087 Standard_EXPORT static Standard_Real Parameter (const Handle(Adaptor3d_HVertex)& V, const Handle(Adaptor2d_Curve2d)& C);
0088
0089
0090 Standard_EXPORT static Standard_Integer NbPoints (const Handle(Adaptor2d_Curve2d)& C);
0091
0092
0093
0094
0095 Standard_EXPORT static void Value (const Handle(Adaptor2d_Curve2d)& C, const Standard_Integer Index, gp_Pnt& Pt, Standard_Real& Tol, Standard_Real& U);
0096
0097
0098
0099 Standard_EXPORT static Standard_Boolean IsVertex (const Handle(Adaptor2d_Curve2d)& C, const Standard_Integer Index);
0100
0101
0102
0103 Standard_EXPORT static void Vertex (const Handle(Adaptor2d_Curve2d)& C, const Standard_Integer Index, Handle(Adaptor3d_HVertex)& V);
0104
0105
0106
0107 Standard_EXPORT static Standard_Integer NbSegments (const Handle(Adaptor2d_Curve2d)& C);
0108
0109
0110
0111
0112
0113
0114
0115 Standard_EXPORT static Standard_Boolean HasFirstPoint (const Handle(Adaptor2d_Curve2d)& C, const Standard_Integer Index, Standard_Integer& IndFirst);
0116
0117
0118
0119
0120
0121
0122
0123 Standard_EXPORT static Standard_Boolean HasLastPoint (const Handle(Adaptor2d_Curve2d)& C, const Standard_Integer Index, Standard_Integer& IndLast);
0124
0125
0126
0127 Standard_EXPORT static Standard_Boolean IsAllSolution (const Handle(Adaptor2d_Curve2d)& C);
0128
0129
0130
0131
0132 protected:
0133
0134
0135
0136
0137
0138 private:
0139
0140
0141
0142 Standard_Real uinf;
0143 Standard_Real vinf;
0144 Standard_Real usup;
0145 Standard_Real vsup;
0146
0147
0148 };
0149
0150
0151 #include <IntPatch_HInterTool.lxx>
0152
0153
0154
0155
0156
0157 #endif