File indexing completed on 2026-09-19 09:28:08
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017 #ifndef _HLRAlgo_PolyHidingData_HeaderFile
0018 #define _HLRAlgo_PolyHidingData_HeaderFile
0019
0020 #include <Standard.hxx>
0021 #include <Standard_DefineAlloc.hxx>
0022
0023 #include <Standard_Integer.hxx>
0024
0025
0026 class HLRAlgo_PolyHidingData
0027 {
0028 public:
0029 DEFINE_STANDARD_ALLOC
0030
0031 struct TriangleIndices
0032 {
0033 int Index, Min, Max;
0034 };
0035
0036 struct PlaneT
0037 {
0038 PlaneT()
0039 : D(0.0)
0040 {
0041 }
0042
0043 gp_XYZ Normal;
0044 double D;
0045 };
0046
0047 HLRAlgo_PolyHidingData() = default;
0048
0049 void Set(const int Index,
0050 const int Minim,
0051 const int Maxim,
0052 const double A,
0053 const double B,
0054 const double C,
0055 const double D)
0056 {
0057 myIndices.Index = Index;
0058 myIndices.Min = Minim;
0059 myIndices.Max = Maxim;
0060 myPlane.Normal = gp_XYZ(A, B, C);
0061 myPlane.D = D;
0062 }
0063
0064 TriangleIndices& Indices() { return myIndices; }
0065
0066 PlaneT& Plane() { return myPlane; }
0067
0068 private:
0069 TriangleIndices myIndices;
0070 PlaneT myPlane;
0071 };
0072
0073 #endif