--- /dev/null
+// ---------------------------------------------------------------------
+//
+// Copyright (C) 2022 by the deal.II authors
+//
+// This file is part of the deal.II library.
+//
+// The deal.II library is free software; you can use it, 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, or (at your option) any later version.
+// The full text of the license can be found in the file LICENSE.md at
+// the top level directory of deal.II.
+//
+// ---------------------------------------------------------------------
+
+// Convert a vector of deal.II points to a cgal Triangulation
+
+#include <deal.II/base/config.h>
+
+#include <deal.II/grid/grid_generator.h>
+#include <deal.II/grid/tria.h>
+
+#include <CGAL/IO/io.h>
+#include <CGAL/Triangulation_3.h>
+#include <deal.II/cgal/triangulation.h>
+
+#include "../tests.h"
+
+using namespace CGALWrappers;
+
+using K = CGAL::Simple_cartesian<double>;
+using CGALTriangulation = CGAL::Triangulation_3<K>;
+
+template <int dim, int spacedim>
+void
+test()
+{
+ Triangulation<dim, spacedim> tria;
+ GridGenerator::hyper_cube(tria);
+ CGALTriangulation tr;
+ add_points_to_cgal_triangulation(tria.get_vertices(), tr);
+ deallog << "dim " << dim << ", spacedim " << spacedim << std::endl
+ << tr << std::endl;
+}
+
+int
+main()
+{
+ initlog();
+ test<1, 1>();
+ test<1, 2>();
+ test<1, 3>();
+ test<2, 2>();
+ test<2, 3>();
+ test<3, 3>();
+}
--- /dev/null
+
+DEAL::dim 1, spacedim 1
+DEAL::1
+2
+0.00000 0.00000 0.00000
+1.00000 0.00000 0.00000
+3
+0 1
+1 2
+2 0
+1 2
+2 0
+0 1
+
+
+
+
+DEAL::dim 1, spacedim 2
+DEAL::1
+2
+0.00000 0.00000 0.00000
+1.00000 0.00000 0.00000
+3
+0 1
+1 2
+2 0
+1 2
+2 0
+0 1
+
+
+
+
+DEAL::dim 1, spacedim 3
+DEAL::1
+2
+0.00000 0.00000 0.00000
+1.00000 0.00000 0.00000
+3
+0 1
+1 2
+2 0
+1 2
+2 0
+0 1
+
+
+
+
+DEAL::dim 2, spacedim 2
+DEAL::2
+4
+0.00000 0.00000 0.00000
+1.00000 0.00000 0.00000
+0.00000 1.00000 0.00000
+1.00000 1.00000 0.00000
+6
+0 1 3
+1 2 3
+2 1 0
+4 2 0
+4 0 3
+4 3 2
+1 4 2
+5 0 2
+0 3 1
+2 4 5
+0 5 3
+1 3 4
+
+
+
+
+
+
+
+DEAL::dim 2, spacedim 3
+DEAL::2
+4
+0.00000 0.00000 0.00000
+1.00000 0.00000 0.00000
+0.00000 1.00000 0.00000
+1.00000 1.00000 0.00000
+6
+0 1 3
+1 2 3
+2 1 0
+4 2 0
+4 0 3
+4 3 2
+1 4 2
+5 0 2
+0 3 1
+2 4 5
+0 5 3
+1 3 4
+
+
+
+
+
+
+
+DEAL::dim 3, spacedim 3
+DEAL::3
+8
+0.00000 0.00000 0.00000
+1.00000 0.00000 0.00000
+0.00000 1.00000 0.00000
+1.00000 1.00000 0.00000
+0.00000 0.00000 1.00000
+1.00000 0.00000 1.00000
+0.00000 1.00000 1.00000
+1.00000 1.00000 1.00000
+18
+0 1 3 5
+1 2 3 5
+1 3 2 0
+2 1 0 5
+4 0 3 7
+4 6 0 8
+4 3 2 5
+4 2 3 0
+4 2 0 6
+6 2 0 5
+8 6 0 7
+4 2 6 5
+7 0 3 5
+4 7 3 5
+4 6 7 5
+7 6 0 5
+4 8 0 7
+4 6 8 7
+1 12 3 2
+6 0 3 2
+7 3 0 1
+0 9 1 2
+12 13 16 7
+10 16 17 8
+1 11 13 7
+2 4 8 6
+9 5 11 7
+3 15 11 8
+15 16 17 5
+9 14 6 8
+0 13 15 4
+12 6 14 4
+15 13 11 17
+9 12 14 10
+10 4 17 5
+10 16 14 5
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
--- /dev/null
+// ---------------------------------------------------------------------
+//
+// Copyright (C) 2022 by the deal.II authors
+//
+// This file is part of the deal.II library.
+//
+// The deal.II library is free software; you can use it, 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, or (at your option) any later version.
+// The full text of the license can be found in the file LICENSE.md at
+// the top level directory of deal.II.
+//
+// ---------------------------------------------------------------------
+
+// Convert a vector of deal.II points to a cgal Triangulation_2
+
+#include <deal.II/base/config.h>
+
+#include <deal.II/grid/grid_generator.h>
+#include <deal.II/grid/tria.h>
+
+#include <CGAL/IO/io.h>
+#include <CGAL/Triangulation_2.h>
+#include <deal.II/cgal/triangulation.h>
+
+#include "../tests.h"
+
+using namespace CGALWrappers;
+
+using K = CGAL::Simple_cartesian<double>;
+using CGALTriangulation = CGAL::Triangulation_2<K>;
+
+template <int dim, int spacedim>
+void
+test()
+{
+ Triangulation<dim, spacedim> tria;
+ GridGenerator::hyper_cube(tria);
+ CGALTriangulation tr;
+ add_points_to_cgal_triangulation(tria.get_vertices(), tr);
+ deallog << "dim " << dim << ", spacedim " << spacedim << std::endl
+ << tr << std::endl;
+}
+
+int
+main()
+{
+ initlog();
+ test<1, 1>();
+ test<1, 2>();
+ test<2, 2>();
+}
--- /dev/null
+
+DEAL::dim 1, spacedim 1
+DEAL::3 3 1
+0.00000 0.00000
+1.00000 0.00000
+
+2 0
+1 2
+0 1
+
+2 1
+0 2
+1 0
+
+DEAL::dim 1, spacedim 2
+DEAL::3 3 1
+0.00000 0.00000
+1.00000 0.00000
+
+2 0
+1 2
+0 1
+
+2 1
+0 2
+1 0
+
+DEAL::dim 2, spacedim 2
+DEAL::5 6 2
+0.00000 0.00000
+1.00000 0.00000
+0.00000 1.00000
+1.00000 1.00000
+
+4 0 3
+1 2 3
+2 0 4
+0 1 3
+2 1 0
+2 4 3
+
+3 5 2
+5 3 4
+0 5 4
+1 0 4
+3 2 1
+0 1 2
+
--- /dev/null
+// ---------------------------------------------------------------------
+//
+// Copyright (C) 2022 by the deal.II authors
+//
+// This file is part of the deal.II library.
+//
+// The deal.II library is free software; you can use it, 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, or (at your option) any later version.
+// The full text of the license can be found in the file LICENSE.md at
+// the top level directory of deal.II.
+//
+// ---------------------------------------------------------------------
+
+// Convert a cgal Triangulation_2 to a dealii::Triangulation<2, ...>
+
+#include <deal.II/base/config.h>
+
+#include <deal.II/grid/grid_generator.h>
+#include <deal.II/grid/grid_out.h>
+#include <deal.II/grid/tria.h>
+
+#include <CGAL/IO/io.h>
+#include <CGAL/Triangulation_2.h>
+#include <deal.II/cgal/triangulation.h>
+
+#include "../tests.h"
+
+using namespace CGALWrappers;
+
+using K = CGAL::Simple_cartesian<double>;
+using CGALTriangulation = CGAL::Triangulation_2<K>;
+
+template <int dim, int spacedim>
+void
+test()
+{
+ Triangulation<dim, spacedim> tria;
+ GridGenerator::hyper_cube(tria);
+ CGALTriangulation tr;
+ add_points_to_cgal_triangulation(tria.get_vertices(), tr);
+
+ tria.clear();
+ // Test the other way around
+ cgal_triangulation_to_dealii_triangulation(tr, tria);
+ deallog << "dim " << dim << ", spacedim " << spacedim << std::endl;
+ GridOut go;
+ go.write_vtk(tria, deallog.get_file_stream());
+}
+
+int
+main()
+{
+ initlog();
+ test<1, 1>();
+ test<1, 2>();
+ test<2, 2>();
+}
--- /dev/null
+
+DEAL::dim 1, spacedim 1
+# vtk DataFile Version 3.0
+Triangulation generated with deal.II
+ASCII
+DATASET UNSTRUCTURED_GRID
+POINTS 2 double
+0.00000 0 0
+1.00000 0 0
+
+CELLS 1 3
+2 0 1
+
+CELL_TYPES 1
+3
+
+
+
+CELL_DATA 1
+SCALARS MaterialID int 1
+LOOKUP_TABLE default
+0
+
+
+
+SCALARS ManifoldID int 1
+LOOKUP_TABLE default
+-1
+
+
+DEAL::dim 1, spacedim 2
+# vtk DataFile Version 3.0
+Triangulation generated with deal.II
+ASCII
+DATASET UNSTRUCTURED_GRID
+POINTS 2 double
+0.00000 0.00000 0
+1.00000 0.00000 0
+
+CELLS 1 3
+2 0 1
+
+CELL_TYPES 1
+3
+
+
+
+CELL_DATA 1
+SCALARS MaterialID int 1
+LOOKUP_TABLE default
+0
+
+
+
+SCALARS ManifoldID int 1
+LOOKUP_TABLE default
+-1
+
+
+DEAL::dim 2, spacedim 2
+# vtk DataFile Version 3.0
+Triangulation generated with deal.II
+ASCII
+DATASET UNSTRUCTURED_GRID
+POINTS 4 double
+0.00000 0.00000 0
+1.00000 0.00000 0
+0.00000 1.00000 0
+1.00000 1.00000 0
+
+CELLS 2 8
+3 0 1 2
+3 1 3 2
+
+CELL_TYPES 2
+5 5
+
+
+
+CELL_DATA 2
+SCALARS MaterialID int 1
+LOOKUP_TABLE default
+0 0
+
+
+
+SCALARS ManifoldID int 1
+LOOKUP_TABLE default
+-1 -1
+
+
--- /dev/null
+// ---------------------------------------------------------------------
+//
+// Copyright (C) 2022 by the deal.II authors
+//
+// This file is part of the deal.II library.
+//
+// The deal.II library is free software; you can use it, 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, or (at your option) any later version.
+// The full text of the license can be found in the file LICENSE.md at
+// the top level directory of deal.II.
+//
+// ---------------------------------------------------------------------
+
+// Convert a cgal Triangulation_3 to a dealii::Triangulation<dim, spacedim>
+
+#include <deal.II/base/config.h>
+
+#include <deal.II/grid/grid_generator.h>
+#include <deal.II/grid/grid_out.h>
+#include <deal.II/grid/tria.h>
+
+#include <CGAL/IO/io.h>
+#include <CGAL/Triangulation_2.h>
+#include <deal.II/cgal/triangulation.h>
+
+#include "../tests.h"
+
+using namespace CGALWrappers;
+
+using K = CGAL::Simple_cartesian<double>;
+using CGALTriangulation = CGAL::Triangulation_3<K>;
+
+template <int dim, int spacedim>
+void
+test()
+{
+ Triangulation<dim, spacedim> tria;
+ GridGenerator::hyper_cube(tria);
+ CGALTriangulation tr;
+ add_points_to_cgal_triangulation(tria.get_vertices(), tr);
+
+ tria.clear();
+ // Test the other way around
+ cgal_triangulation_to_dealii_triangulation(tr, tria);
+ deallog << "dim " << dim << ", spacedim " << spacedim << std::endl;
+ GridOut go;
+ go.write_vtk(tria, deallog.get_file_stream());
+}
+
+int
+main()
+{
+ initlog();
+ test<1, 3>();
+ test<2, 3>();
+ test<3, 3>();
+}
--- /dev/null
+
+DEAL::dim 1, spacedim 3
+# vtk DataFile Version 3.0
+Triangulation generated with deal.II
+ASCII
+DATASET UNSTRUCTURED_GRID
+POINTS 2 double
+0.00000 0.00000 0.00000
+1.00000 0.00000 0.00000
+
+CELLS 1 3
+2 0 1
+
+CELL_TYPES 1
+3
+
+
+
+CELL_DATA 1
+SCALARS MaterialID int 1
+LOOKUP_TABLE default
+0
+
+
+
+SCALARS ManifoldID int 1
+LOOKUP_TABLE default
+-1
+
+
+DEAL::dim 2, spacedim 3
+# vtk DataFile Version 3.0
+Triangulation generated with deal.II
+ASCII
+DATASET UNSTRUCTURED_GRID
+POINTS 4 double
+0.00000 0.00000 0.00000
+1.00000 0.00000 0.00000
+0.00000 1.00000 0.00000
+1.00000 1.00000 0.00000
+
+CELLS 2 8
+3 0 1 2
+3 3 2 1
+
+CELL_TYPES 2
+5 5
+
+
+
+CELL_DATA 2
+SCALARS MaterialID int 1
+LOOKUP_TABLE default
+0 0
+
+
+
+SCALARS ManifoldID int 1
+LOOKUP_TABLE default
+-1 -1
+
+
+DEAL::dim 3, spacedim 3
+# vtk DataFile Version 3.0
+Triangulation generated with deal.II
+ASCII
+DATASET UNSTRUCTURED_GRID
+POINTS 8 double
+0.00000 0.00000 0.00000
+1.00000 0.00000 0.00000
+0.00000 1.00000 0.00000
+1.00000 1.00000 0.00000
+0.00000 0.00000 1.00000
+1.00000 0.00000 1.00000
+0.00000 1.00000 1.00000
+1.00000 1.00000 1.00000
+
+CELLS 6 30
+4 0 1 2 4
+4 3 2 1 4
+4 3 1 5 4
+4 3 6 2 4
+4 3 5 6 4
+4 3 5 7 6
+
+CELL_TYPES 6
+10 10 10 10 10 10
+
+
+
+CELL_DATA 6
+SCALARS MaterialID int 1
+LOOKUP_TABLE default
+0 0 0 0 0 0
+
+
+
+SCALARS ManifoldID int 1
+LOOKUP_TABLE default
+-1 -1 -1 -1 -1 -1
+
+
--- /dev/null
+// ---------------------------------------------------------------------
+//
+// Copyright (C) 2022 by the deal.II authors
+//
+// This file is part of the deal.II library.
+//
+// The deal.II library is free software; you can use it, 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, or (at your option) any later version.
+// The full text of the license can be found in the file LICENSE.md at
+// the top level directory of deal.II.
+//
+// ---------------------------------------------------------------------
+
+// Convert a cgal Delaunay_triangulation_3 to a
+// dealii::Triangulation<dim, spacedim>
+// Non trivial case of a sphere. We need Exact predicates, inexact construction
+// kernel here, since Simple_cartesian will throw an exception when trying to
+// add some almost coplanar points.
+
+#include <deal.II/base/config.h>
+
+#include <deal.II/grid/grid_generator.h>
+#include <deal.II/grid/grid_out.h>
+#include <deal.II/grid/tria.h>
+
+#include <CGAL/Delaunay_triangulation_3.h>
+#include <CGAL/Exact_predicates_inexact_constructions_kernel.h>
+#include <CGAL/IO/io.h>
+#include <deal.II/cgal/triangulation.h>
+
+#include "../tests.h"
+
+using namespace CGALWrappers;
+
+using K = CGAL::Exact_predicates_inexact_constructions_kernel;
+using CGALTriangulation = CGAL::Delaunay_triangulation_3<K>;
+
+template <int dim, int spacedim>
+void
+test()
+{
+ // Build a deal.II triangulation
+ Triangulation<dim, spacedim> tria;
+ GridGenerator::hyper_ball(tria);
+ tria.refine_global(1);
+
+ // Use its vertices to build a Delaunay_triangulation_3
+ CGALTriangulation tr;
+ add_points_to_cgal_triangulation(tria.get_vertices(), tr);
+
+ // Transform the Dealaunay_triangulation_3 to a deal.II triangulation
+ tria.clear();
+ cgal_triangulation_to_dealii_triangulation(tr, tria);
+ deallog << "dim " << dim << ", spacedim " << spacedim << std::endl;
+ GridOut go;
+ go.write_vtk(tria, deallog.get_file_stream());
+}
+
+int
+main()
+{
+ initlog();
+ test<3, 3>();
+}
--- /dev/null
+
+DEAL::dim 3, spacedim 3
+# vtk DataFile Version 3.0
+Triangulation generated with deal.II
+ASCII
+DATASET UNSTRUCTURED_GRID
+POINTS 79 double
+0.211325 0.00000 -0.211325
+-0.394338 -0.394338 0.394338
+-0.459216 0.00000 0.459216
+0.00000 0.00000 0.211325
+0.707107 0.00000 -0.707107
+0.577350 0.577350 -0.577350
+0.394338 -0.394338 0.394338
+0.211325 -0.211325 -0.211325
+0.394338 -0.394338 -0.394338
+0.00000 -0.211325 -0.211325
+-0.707107 0.00000 -0.707107
+0.00000 -0.459216 -0.459216
+-0.394338 -0.394338 -0.394338
+-0.577350 -0.577350 -0.577350
+-0.211325 -0.211325 -0.211325
+-0.211325 0.00000 -0.211325
+-0.211325 -0.211325 0.00000
+-0.707107 -0.707107 0.00000
+-0.459216 -0.459216 0.00000
+-0.211325 -0.211325 0.211325
+-0.577350 -0.577350 0.577350
+-0.707107 0.00000 0.707107
+0.00000 0.00000 1.00000
+-2.77556e-17 -2.77556e-17 0.605662
+-0.211325 0.00000 0.211325
+-0.605662 0.00000 1.11022e-16
+-1.00000 0.00000 0.00000
+0.00000 0.211325 0.211325
+-0.211325 0.211325 0.211325
+-0.394338 0.394338 0.394338
+-0.577350 0.577350 0.577350
+0.00000 0.707107 0.707107
+0.00000 1.00000 0.00000
+-0.459216 0.459216 0.00000
+-0.707107 0.707107 0.00000
+-0.394338 0.394338 -0.394338
+-0.577350 0.577350 -0.577350
+-0.459216 0.00000 -0.459216
+-0.211325 0.211325 -0.211325
+-0.211325 0.00000 0.00000
+0.00000 0.00000 -1.00000
+0.00000 0.707107 -0.707107
+0.00000 0.211325 -0.211325
+-0.211325 0.211325 0.00000
+0.211325 0.211325 -0.211325
+0.394338 0.394338 -0.394338
+0.00000 0.00000 -0.211325
+0.459216 0.00000 -0.459216
+0.00000 0.459216 -0.459216
+0.707107 0.707107 0.00000
+0.605662 0.00000 -2.77556e-17
+0.211325 0.211325 0.00000
+0.459216 0.459216 0.00000
+2.77556e-17 0.605662 5.55112e-17
+0.00000 0.459216 0.459216
+0.577350 0.577350 0.577350
+0.459216 0.00000 0.459216
+0.394338 0.394338 0.394338
+0.00000 0.211325 0.00000
+0.211325 0.211325 0.211325
+0.211325 0.00000 0.00000
+0.211325 -0.211325 0.211325
+0.211325 0.00000 0.211325
+0.00000 -0.211325 0.211325
+0.707107 0.00000 0.707107
+0.577350 -0.577350 0.577350
+0.00000 -0.707107 0.707107
+0.00000 -0.459216 0.459216
+0.00000 -0.211325 0.00000
+0.00000 -1.00000 0.00000
+0.707107 -0.707107 0.00000
+1.00000 0.00000 0.00000
+0.211325 -0.211325 0.00000
+0.459216 -0.459216 0.00000
+0.00000 -0.707107 -0.707107
+0.00000 0.00000 -1.38778e-17
+0.00000 0.00000 -0.605662
+0.577350 -0.577350 -0.577350
+2.77556e-17 -0.605662 -5.55112e-17
+
+CELLS 340 1700
+4 28 3 24 43
+4 60 61 3 72
+4 12 17 18 26
+4 61 23 56 62
+4 50 7 8 73
+4 9 68 16 78
+4 59 51 50 62
+4 3 23 27 28
+4 2 24 25 28
+4 0 7 46 76
+4 22 1 2 23
+4 53 43 42 58
+4 63 68 72 78
+4 40 4 5 45
+4 1 19 23 67
+4 53 52 32 57
+4 68 3 63 72
+4 60 50 51 62
+4 60 51 27 62
+4 23 3 24 28
+4 29 26 21 30
+4 65 22 6 66
+4 43 33 28 53
+4 11 14 12 78
+4 61 3 23 62
+4 8 70 69 77
+4 25 26 29 33
+4 9 11 7 78
+4 48 32 35 53
+4 59 50 56 62
+4 1 2 25 26
+4 71 8 4 77
+4 26 34 35 36
+4 10 26 35 36
+4 61 50 60 62
+4 39 19 16 68
+4 43 39 38 75
+4 15 38 39 75
+4 50 47 45 71
+4 46 42 38 75
+4 35 37 40 76
+4 1 17 18 69
+4 59 27 51 62
+4 12 18 25 26
+4 61 56 50 62
+4 22 20 1 66
+4 9 14 11 78
+4 33 28 25 43
+4 38 48 42 76
+4 63 3 61 72
+4 21 20 1 22
+4 50 45 52 71
+4 15 38 46 76
+4 72 7 73 78
+4 12 13 17 26
+4 23 3 27 62
+4 53 51 52 59
+4 18 16 14 25
+4 37 25 15 38
+4 21 1 2 22
+4 50 61 60 72
+4 26 2 25 29
+4 12 10 13 26
+4 18 14 12 25
+4 25 16 15 39
+4 16 15 14 25
+4 29 21 22 30
+4 29 22 23 54
+4 51 27 53 58
+4 19 2 1 23
+4 15 37 38 76
+4 27 53 54 59
+4 2 23 24 28
+4 25 24 19 39
+4 20 21 1 26
+4 59 56 23 62
+4 17 1 18 26
+4 1 21 2 26
+4 20 1 17 26
+4 25 18 1 26
+4 23 19 2 24
+4 35 33 25 38
+4 37 10 35 40
+4 19 16 18 25
+4 24 19 2 25
+4 2 19 1 25
+4 19 18 1 25
+4 37 35 25 38
+4 25 19 16 39
+4 68 19 16 78
+4 66 1 67 69
+4 23 54 57 59
+4 25 2 28 29
+4 14 11 12 76
+4 43 28 3 58
+4 2 22 23 29
+4 28 2 23 29
+4 26 21 2 29
+4 18 1 69 78
+4 54 23 27 59
+4 32 49 55 57
+4 2 21 22 29
+4 45 5 32 49
+4 61 72 73 78
+4 32 31 29 54
+4 53 32 29 54
+4 35 34 32 36
+4 0 47 7 76
+4 28 25 29 33
+4 41 40 45 48
+4 47 40 8 76
+4 22 29 30 31
+4 46 42 0 76
+4 23 22 6 56
+4 29 32 33 34
+4 38 33 25 43
+4 30 29 26 34
+4 33 26 29 34
+4 32 29 30 34
+4 8 71 70 77
+4 58 39 43 75
+4 31 29 30 32
+4 41 32 35 48
+4 59 23 27 62
+4 39 25 24 43
+4 46 15 9 75
+4 42 46 38 76
+4 56 22 6 64
+4 39 24 3 43
+4 28 24 25 43
+4 6 64 65 71
+4 32 35 36 41
+4 33 25 26 35
+4 39 38 25 43
+4 34 33 26 35
+4 36 35 40 41
+4 34 32 33 35
+4 63 19 68 78
+4 25 15 14 37
+4 25 14 12 37
+4 26 12 10 37
+4 25 12 26 37
+4 26 10 35 37
+4 35 25 26 37
+4 28 53 27 58
+4 38 37 35 76
+4 53 44 51 58
+4 6 56 64 71
+4 27 51 53 59
+4 68 60 3 72
+4 27 3 28 58
+4 7 47 8 76
+4 28 43 53 58
+4 14 15 9 76
+4 38 25 15 39
+4 57 54 53 59
+4 74 8 69 77
+4 16 19 18 78
+4 73 7 8 78
+4 37 15 14 76
+4 8 7 11 78
+4 37 12 10 40
+4 19 63 67 78
+4 3 58 60 75
+4 10 12 13 40
+4 64 56 57 71
+4 56 50 57 71
+4 57 55 64 71
+4 35 10 36 40
+4 32 29 33 53
+4 40 8 74 77
+4 13 12 17 69
+4 8 11 40 74
+4 8 40 4 77
+4 5 32 41 45
+4 41 35 40 48
+4 47 7 8 50
+4 40 5 41 45
+4 29 28 33 53
+4 35 32 33 53
+4 16 14 9 78
+4 48 35 40 76
+4 67 1 19 78
+4 18 19 1 78
+4 55 22 57 64
+4 69 1 67 78
+4 38 35 48 76
+4 67 61 6 78
+4 6 61 73 78
+4 40 8 4 47
+4 24 3 63 68
+4 47 0 7 50
+4 45 40 4 47
+4 57 52 50 59
+4 53 42 44 58
+4 45 32 41 48
+4 23 28 29 54
+4 60 27 3 62
+4 55 31 32 57
+4 54 53 32 57
+4 14 9 11 76
+4 3 39 43 58
+4 45 44 50 52
+4 47 44 0 50
+4 51 50 44 52
+4 44 47 45 50
+4 11 9 7 76
+4 46 7 9 76
+4 69 13 12 74
+4 40 11 12 74
+4 8 69 11 74
+4 53 28 27 54
+4 28 23 27 54
+4 31 22 29 54
+4 53 29 28 54
+4 32 45 49 52
+4 35 38 48 53
+4 38 35 33 53
+4 48 38 42 53
+4 38 43 42 53
+4 43 38 33 53
+4 47 8 4 71
+4 44 51 52 53
+4 57 53 52 59
+4 48 42 44 53
+4 52 45 44 53
+4 48 44 45 53
+4 52 32 45 53
+4 48 45 32 53
+4 49 32 52 57
+4 37 14 12 76
+4 7 8 11 76
+4 22 56 57 64
+4 16 18 14 78
+4 54 32 31 57
+4 22 31 55 57
+4 54 31 22 57
+4 54 22 23 57
+4 56 23 22 57
+4 63 23 19 67
+4 15 46 9 76
+4 8 47 50 71
+4 52 51 50 59
+4 50 56 57 59
+4 57 56 23 59
+4 61 60 3 62
+4 58 3 39 75
+4 40 37 12 76
+4 11 40 12 76
+4 58 51 27 60
+4 58 27 3 60
+4 66 20 1 69
+4 50 51 44 60
+4 50 44 0 60
+4 17 12 18 69
+4 50 56 6 71
+4 6 23 56 61
+4 49 45 5 71
+4 56 50 6 61
+4 19 24 63 68
+4 1 20 17 69
+4 24 39 3 68
+4 70 69 6 73
+4 52 45 49 71
+4 39 24 19 68
+4 6 65 66 69
+4 4 45 47 71
+4 24 23 19 63
+4 3 23 24 63
+4 3 61 23 63
+4 50 0 7 72
+4 64 22 6 65
+4 52 49 57 71
+4 57 49 55 71
+4 52 57 50 71
+4 70 6 65 71
+4 72 50 61 73
+4 68 7 72 78
+4 0 50 60 72
+4 1 22 66 67
+4 23 22 1 67
+4 66 22 6 67
+4 22 23 6 67
+4 63 61 23 67
+4 61 6 23 67
+4 71 8 70 73
+4 43 38 42 75
+4 50 8 71 73
+4 7 50 72 73
+4 14 18 12 78
+4 60 68 3 75
+4 40 12 13 74
+4 38 15 46 75
+4 69 6 65 70
+4 6 50 71 73
+4 69 12 11 74
+4 45 4 5 71
+4 71 70 6 73
+4 6 66 67 69
+4 39 16 15 75
+4 9 7 68 78
+4 61 50 6 73
+4 70 8 69 73
+4 14 16 9 75
+4 15 16 14 75
+4 15 14 9 75
+4 16 39 68 75
+4 68 9 16 75
+4 7 9 68 75
+4 7 46 9 75
+4 7 68 72 75
+4 72 0 7 75
+4 7 0 46 75
+4 60 0 72 75
+4 58 43 42 75
+4 42 46 0 75
+4 58 42 44 75
+4 0 44 42 75
+4 60 44 0 75
+4 60 51 44 75
+4 60 58 51 75
+4 58 44 51 75
+4 72 68 60 75
+4 68 39 3 75
+4 11 8 40 76
+4 44 47 0 76
+4 44 0 42 76
+4 48 40 45 76
+4 47 45 40 76
+4 44 48 45 76
+4 47 44 45 76
+4 42 48 44 76
+4 73 69 6 78
+4 67 6 69 78
+4 61 63 72 78
+4 67 63 61 78
+4 69 12 18 78
+4 12 69 11 78
+4 73 8 69 78
+4 69 8 11 78
+
+CELL_TYPES 340
+10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10
+
+
+
+CELL_DATA 340
+SCALARS MaterialID int 1
+LOOKUP_TABLE default
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+
+
+
+SCALARS ManifoldID int 1
+LOOKUP_TABLE default
+-1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1
+
+