Salome HOME
Copyright update 2022
[tools/medcoupling.git] / src / INTERP_KERNEL / Bases / NormalizedGeometricTypes
index 9e2cd6025605aebacecef7b856e9b91996ce72bc..917c41f4932e2f180450e75c379404f982e14dfc 100644 (file)
@@ -1,9 +1,9 @@
-// Copyright (C) 2007-2013  CEA/DEN, EDF R&D
+// Copyright (C) 2007-2022  CEA/DEN, EDF R&D
 //
 // This library is free software; you can redistribute it and/or
 // modify it under the terms of the GNU Lesser General Public
 // License as published by the Free Software Foundation; either
-// version 2.1 of the License.
+// version 2.1 of the License, or (at your option) any later version.
 //
 // This library is distributed in the hope that it will be useful,
 // but WITHOUT ANY WARRANTY; without even the implied warranty of
 //
 // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
-// Author : Anthony Geay (CEA/DEN)
+// Author : Anthony Geay (EDF R&D)
 
-#ifndef __NORMALIZEDGEOMETRICTYPES__
-#define __NORMALIZEDGEOMETRICTYPES__
+#pragma once
 
 namespace INTERP_KERNEL
 {
   typedef enum
-    {
+    {// think to update the following arrays : MEDMEM_ORDER (MEDCouplingUMesh) and MEDCOUPLING2VTKTYPETRADUCER (CellModel.hxx)
       NORM_POINT1  =  0,
       NORM_SEG2    =  1,
       NORM_SEG3    =  2,
@@ -47,6 +46,7 @@ namespace INTERP_KERNEL
       NORM_HEXGP12 = 22,
       NORM_PYRA13  = 23,
       NORM_PENTA15 = 25,
+      NORM_PENTA18 = 28,
       NORM_HEXA20  = 30,
       NORM_HEXA27  = 27,
       NORM_POLYHED = 31,
@@ -54,11 +54,16 @@ namespace INTERP_KERNEL
       NORM_MAXTYPE = 33
     } NormalizedCellType;
 
-  /// Type describing the different ways in which the hexahedron can be split into tetrahedra.
-  /// The PLANAR_* policies persume that each face is to be considered planar, while the general
-  /// policies make no such hypothesis. The integer at the end gives the number of tetrahedra
-  /// that result from the split.
+  /*! Type describing the different ways in which the hexahedron can be split into tetrahedra.
+   * The PLANAR_* policies persume that each face is to be considered planar, while the general
+   * policies make no such hypothesis. The integer at the end gives the number of tetrahedra
+   * that result from the split.
+   * 
+   * The images below illustrates the policies in their respective order.
+   * 
+   * \image html tetra_simplexize_5_6.jpg
+   * \image html tetra_simplexize_24_48.jpg
+   */
   typedef enum  { PLANAR_FACE_5 = 5, PLANAR_FACE_6 = 6, GENERAL_24 = 24, GENERAL_48 = 48 } SplittingPolicy;
 }
 
-#endif