File indexing completed on 2026-09-15 09:17:30
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017 #ifndef _TopOpeBRepBuild_GTopo_HeaderFile
0018 #define _TopOpeBRepBuild_GTopo_HeaderFile
0019
0020 #include <Standard.hxx>
0021 #include <Standard_DefineAlloc.hxx>
0022
0023 #include <TopAbs_ShapeEnum.hxx>
0024 #include <TopOpeBRepDS_Config.hxx>
0025 #include <Standard_Integer.hxx>
0026 #include <TopAbs_State.hxx>
0027 #include <Standard_OStream.hxx>
0028
0029 class TopOpeBRepBuild_GTopo
0030 {
0031 public:
0032 DEFINE_STANDARD_ALLOC
0033
0034 Standard_EXPORT TopOpeBRepBuild_GTopo();
0035
0036 Standard_EXPORT TopOpeBRepBuild_GTopo(const bool II,
0037 const bool IN,
0038 const bool IO,
0039 const bool NI,
0040 const bool NN,
0041 const bool NO,
0042 const bool OI,
0043 const bool ON,
0044 const bool OO,
0045 const TopAbs_ShapeEnum t1,
0046 const TopAbs_ShapeEnum t2,
0047 const TopOpeBRepDS_Config C1,
0048 const TopOpeBRepDS_Config C2);
0049
0050 Standard_EXPORT void Reset();
0051
0052 Standard_EXPORT void Set(const bool II,
0053 const bool IN,
0054 const bool IO,
0055 const bool NI,
0056 const bool NN,
0057 const bool NO,
0058 const bool OI,
0059 const bool ON,
0060 const bool OO);
0061
0062 Standard_EXPORT void Type(TopAbs_ShapeEnum& t1, TopAbs_ShapeEnum& t2) const;
0063
0064 Standard_EXPORT void ChangeType(const TopAbs_ShapeEnum t1, const TopAbs_ShapeEnum t2);
0065
0066 Standard_EXPORT TopOpeBRepDS_Config Config1() const;
0067
0068 Standard_EXPORT TopOpeBRepDS_Config Config2() const;
0069
0070 Standard_EXPORT void ChangeConfig(const TopOpeBRepDS_Config C1, const TopOpeBRepDS_Config C2);
0071
0072 Standard_EXPORT bool Value(const TopAbs_State s1, const TopAbs_State s2) const;
0073
0074 Standard_EXPORT bool Value(const int I1, const int I2) const;
0075
0076 Standard_EXPORT bool Value(const int II) const;
0077
0078 Standard_EXPORT void ChangeValue(const int i1, const int i2, const bool b);
0079
0080 Standard_EXPORT void ChangeValue(const TopAbs_State s1, const TopAbs_State s2, const bool b);
0081
0082 Standard_EXPORT int GIndex(const TopAbs_State S) const;
0083
0084 Standard_EXPORT TopAbs_State GState(const int I) const;
0085
0086 Standard_EXPORT void Index(const int II, int& i1, int& i2) const;
0087
0088 Standard_EXPORT void DumpVal(Standard_OStream& OS,
0089 const TopAbs_State s1,
0090 const TopAbs_State s2) const;
0091
0092 Standard_EXPORT void DumpType(Standard_OStream& OS) const;
0093
0094 Standard_EXPORT static void DumpSSB(Standard_OStream& OS,
0095 const TopAbs_State s1,
0096 const TopAbs_State s2,
0097 const bool b);
0098
0099 Standard_EXPORT virtual void Dump(Standard_OStream& OS, void* const s = nullptr) const;
0100
0101 Standard_EXPORT void StatesON(TopAbs_State& s1, TopAbs_State& s2) const;
0102
0103 Standard_EXPORT bool IsToReverse1() const;
0104
0105 Standard_EXPORT bool IsToReverse2() const;
0106
0107 Standard_EXPORT void SetReverse(const bool rev);
0108
0109 Standard_EXPORT bool Reverse() const;
0110
0111 Standard_EXPORT TopOpeBRepBuild_GTopo CopyPermuted() const;
0112
0113 private:
0114 bool mycases[3][3];
0115 TopAbs_ShapeEnum myt1;
0116 TopAbs_ShapeEnum myt2;
0117 TopOpeBRepDS_Config myConfig1;
0118 TopOpeBRepDS_Config myConfig2;
0119 bool myReverseForce;
0120 bool myReverseValue;
0121 };
0122
0123 #endif