File indexing completed on 2025-01-18 10:03:51
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
0027 class HLRAlgo_PolyHidingData
0028 {
0029 public:
0030 DEFINE_STANDARD_ALLOC
0031
0032 struct TriangleIndices
0033 {
0034 Standard_Integer Index, Min, Max;
0035 };
0036
0037 struct PlaneT
0038 {
0039 PlaneT() : D(0.0) {}
0040 gp_XYZ Normal;
0041 Standard_Real D;
0042 };
0043
0044 HLRAlgo_PolyHidingData()
0045 {
0046 }
0047
0048 void Set (
0049 const Standard_Integer Index,
0050 const Standard_Integer Minim,
0051 const Standard_Integer Maxim,
0052 const Standard_Real A,
0053 const Standard_Real B,
0054 const Standard_Real C,
0055 const Standard_Real 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()
0065 {
0066 return myIndices;
0067 }
0068
0069 PlaneT& Plane()
0070 {
0071 return myPlane;
0072 }
0073
0074 private:
0075 TriangleIndices myIndices;
0076 PlaneT myPlane;
0077 };
0078
0079 #endif