File indexing completed on 2026-09-29 09:19:27
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017 #ifndef _IntPatch_InterferencePolyhedron_HeaderFile
0018 #define _IntPatch_InterferencePolyhedron_HeaderFile
0019
0020 #include <Standard.hxx>
0021 #include <Standard_DefineAlloc.hxx>
0022
0023 #include <Standard_Integer.hxx>
0024 #include <gp_XYZ.hxx>
0025 #include <Intf_Interference.hxx>
0026 class IntPatch_Polyhedron;
0027 class Intf_TangentZone;
0028
0029
0030
0031
0032 class IntPatch_InterferencePolyhedron : public Intf_Interference
0033 {
0034 public:
0035 DEFINE_STANDARD_ALLOC
0036
0037
0038 Standard_EXPORT IntPatch_InterferencePolyhedron();
0039
0040
0041
0042 Standard_EXPORT IntPatch_InterferencePolyhedron(const IntPatch_Polyhedron& Obje1,
0043 const IntPatch_Polyhedron& Obje2);
0044
0045
0046
0047 Standard_EXPORT IntPatch_InterferencePolyhedron(const IntPatch_Polyhedron& Obje);
0048
0049
0050 Standard_EXPORT void Perform(const IntPatch_Polyhedron& Obje1, const IntPatch_Polyhedron& Obje2);
0051
0052
0053 Standard_EXPORT void Perform(const IntPatch_Polyhedron& Obje);
0054
0055 private:
0056 Standard_EXPORT void Interference(const IntPatch_Polyhedron& Obje1);
0057
0058
0059
0060
0061 Standard_EXPORT void Interference(const IntPatch_Polyhedron& Obje1,
0062 const IntPatch_Polyhedron& Obje2);
0063
0064
0065
0066 Standard_EXPORT void Intersect(const int TriF,
0067 const IntPatch_Polyhedron& Obje1,
0068 const int TriS,
0069 const IntPatch_Polyhedron& Obje2);
0070
0071
0072
0073 Standard_EXPORT bool TangentZoneValue(Intf_TangentZone& TheTZ,
0074 const IntPatch_Polyhedron& Obje1,
0075 const int Tri1,
0076 const IntPatch_Polyhedron& Obje2,
0077 const int Tri2) const;
0078
0079 Standard_EXPORT void CoupleCharacteristics(const IntPatch_Polyhedron& FirstPol,
0080 const IntPatch_Polyhedron& SeconPol);
0081
0082 int OI[3];
0083 int TI[3];
0084 double dpOpT[3][3];
0085 double dpOeT[3][3];
0086 double deOpT[3][3];
0087 gp_XYZ voo[3];
0088 gp_XYZ vtt[3];
0089 double Incidence;
0090 };
0091
0092 #endif