File indexing completed on 2025-01-18 10:03:41
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017 #ifndef _GeomInt_ThePrmPrmSvSurfacesOfWLApprox_HeaderFile
0018 #define _GeomInt_ThePrmPrmSvSurfacesOfWLApprox_HeaderFile
0019
0020 #include <Adaptor3d_Surface.hxx>
0021 #include <gp_Pnt2d.hxx>
0022 #include <gp_Pnt.hxx>
0023 #include <gp_Vec2d.hxx>
0024 #include <gp_Vec.hxx>
0025 #include <GeomInt_TheInt2SOfThePrmPrmSvSurfacesOfWLApprox.hxx>
0026 #include <ApproxInt_SvSurfaces.hxx>
0027
0028 class Adaptor3d_HSurfaceTool;
0029 class IntPatch_WLine;
0030 class GeomInt_TheInt2SOfThePrmPrmSvSurfacesOfWLApprox;
0031 class GeomInt_TheFunctionOfTheInt2SOfThePrmPrmSvSurfacesOfWLApprox;
0032
0033 class GeomInt_ThePrmPrmSvSurfacesOfWLApprox : public ApproxInt_SvSurfaces
0034 {
0035 public:
0036
0037 DEFINE_STANDARD_ALLOC
0038
0039
0040 Standard_EXPORT GeomInt_ThePrmPrmSvSurfacesOfWLApprox(const Handle(Adaptor3d_Surface)& Surf1, const Handle(Adaptor3d_Surface)& Surf2);
0041
0042
0043 Standard_EXPORT Standard_Boolean Compute (Standard_Real& u1, Standard_Real& v1, Standard_Real& u2, Standard_Real& v2,
0044 gp_Pnt& Pt, gp_Vec& Tg, gp_Vec2d& Tguv1, gp_Vec2d& Tguv2);
0045
0046 Standard_EXPORT void Pnt (const Standard_Real u1, const Standard_Real v1, const Standard_Real u2, const Standard_Real v2, gp_Pnt& P);
0047
0048 Standard_EXPORT Standard_Boolean SeekPoint(const Standard_Real u1,
0049 const Standard_Real v1,
0050 const Standard_Real u2,
0051 const Standard_Real v2,
0052 IntSurf_PntOn2S& Point);
0053
0054 Standard_EXPORT Standard_Boolean Tangency (const Standard_Real u1, const Standard_Real v1, const Standard_Real u2, const Standard_Real v2, gp_Vec& Tg);
0055
0056 Standard_EXPORT Standard_Boolean TangencyOnSurf1 (const Standard_Real u1, const Standard_Real v1, const Standard_Real u2, const Standard_Real v2, gp_Vec2d& Tg);
0057
0058 Standard_EXPORT Standard_Boolean TangencyOnSurf2 (const Standard_Real u1, const Standard_Real v1, const Standard_Real u2, const Standard_Real v2, gp_Vec2d& Tg);
0059
0060
0061
0062
0063 protected:
0064
0065
0066
0067
0068
0069 private:
0070
0071
0072
0073 gp_Pnt2d MyParOnS1;
0074 gp_Pnt2d MyParOnS2;
0075 gp_Pnt MyPnt;
0076 gp_Vec2d MyTguv1;
0077 gp_Vec2d MyTguv2;
0078 gp_Vec MyTg;
0079 Standard_Boolean MyIsTangent;
0080 Standard_Boolean MyHasBeenComputed;
0081 gp_Pnt2d MyParOnS1bis;
0082 gp_Pnt2d MyParOnS2bis;
0083 gp_Pnt MyPntbis;
0084 gp_Vec2d MyTguv1bis;
0085 gp_Vec2d MyTguv2bis;
0086 gp_Vec MyTgbis;
0087 Standard_Boolean MyIsTangentbis;
0088 Standard_Boolean MyHasBeenComputedbis;
0089 GeomInt_TheInt2SOfThePrmPrmSvSurfacesOfWLApprox MyIntersectionOn2S;
0090
0091
0092 };
0093
0094
0095
0096
0097
0098
0099
0100 #endif