From a8e53eec450f8004d5d8b457d72ae35131248ca4 Mon Sep 17 00:00:00 2001 From: Denis Davydov Date: Fri, 6 Jul 2018 08:50:39 +0200 Subject: [PATCH] add GridGenerator::plate_with_a_hole() --- doc/doxygen/images/plate_with_a_hole.png | Bin 0 -> 112820 bytes doc/doxygen/images/plate_with_a_hole_3D.png | Bin 0 -> 124647 bytes doc/news/changes/minor/20180706DenisDavydov | 4 + include/deal.II/grid/grid_generator.h | 86 +++ source/grid/grid_generator.cc | 347 ++++++++++ .../grid/grid_generator_plate_with_a_hole.cc | 121 ++++ .../grid_generator_plate_with_a_hole.output | 469 +++++++++++++ .../grid_generator_plate_with_a_hole_2.cc | 125 ++++ .../grid_generator_plate_with_a_hole_2.output | 641 ++++++++++++++++++ .../grid_generator_plate_with_a_hole_3.cc | 125 ++++ .../grid_generator_plate_with_a_hole_3.output | 365 ++++++++++ 11 files changed, 2283 insertions(+) create mode 100644 doc/doxygen/images/plate_with_a_hole.png create mode 100644 doc/doxygen/images/plate_with_a_hole_3D.png create mode 100644 doc/news/changes/minor/20180706DenisDavydov create mode 100644 tests/grid/grid_generator_plate_with_a_hole.cc create mode 100644 tests/grid/grid_generator_plate_with_a_hole.output create mode 100644 tests/grid/grid_generator_plate_with_a_hole_2.cc create mode 100644 tests/grid/grid_generator_plate_with_a_hole_2.output create mode 100644 tests/grid/grid_generator_plate_with_a_hole_3.cc create mode 100644 tests/grid/grid_generator_plate_with_a_hole_3.output diff --git a/doc/doxygen/images/plate_with_a_hole.png b/doc/doxygen/images/plate_with_a_hole.png new file mode 100644 index 0000000000000000000000000000000000000000..599456ce8a11fc45ba553f9db42744ecf0baf84d GIT binary patch literal 112820 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℘I96 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 literal 0 HcmV?d00001 diff --git a/doc/doxygen/images/plate_with_a_hole_3D.png b/doc/doxygen/images/plate_with_a_hole_3D.png new file mode 100644 index 0000000000000000000000000000000000000000..ff3594c9711a5420f3d971694c5b666f69d05973 GIT binary patch literal 124647 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%0Dl>-D_EWU;-I2V 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 z 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 +(Denis Davydov 2018/06/21) diff --git a/include/deal.II/grid/grid_generator.h b/include/deal.II/grid/grid_generator.h index e9f7e9f214..2ed123b401 100644 --- a/include/deal.II/grid/grid_generator.h +++ b/include/deal.II/grid/grid_generator.h @@ -304,6 +304,63 @@ namespace GridGenerator cheese(Triangulation & tria, const std::vector &holes); + /** + * \brief Rectangular plate with an (offset) cylindrical hole. + * + * Generate a rectangular plate with an (offset) cylindrical hole. The + * geometry consists of 2 regions: + * The first is a square region with length @p outer_radius and a hole of radius @p inner_radius . + * Cells in this regions will have TransfiniteInterpolationManifold with + * manifold id + * @p tfi_manifold_id attached to them. Additionally, the boundary faces of + * the hole will be associated with a PolarManifold (in 2D) or + * CylindricalManifold (in 3D). The center of this + * regions can be prescribed via @p center , namely the axis of the hole will + * be located at @p center . + * The second region describes the remainder of the bulk material. It is + * specified via padding + * parameters @p pad_bottom, @p padding_top, @p padding_left and @padding_right. + * All cells in this regions will have a FlatManifold attached to them. + * The final width of the plate will be padding_left + 2*outer_radius + + * padding_right, where it length is padding_top + 2*outer_radius + * + padding_bottom. Three out of four paddings is allowed to be zero. + * + * Here is the non-symmetric grid (after one global refinement, colored + * according to manifold id) in 2D: + * + * @image html plate_with_a_hole.png + * + * and in 3D: + * + * @image html plate_with_a_hole_3D.png + * + * In 3D, triangulation will be extruded in the z-direction by the total + * height of + * @p L using @p n_slices slices (minimum is 2). + * If the @p colorize flag is true, the boundary_ids of the boundary + * faces are assigned, such that the lower one in the x-direction is 0, the + * upper one is 1. The indicators for the surfaces in the y-direction are 2 + * and 3, and the ones for the z-direction are 5 and 6. The hole boundary has + * indicator 4. + * + * @author Denis Davydov, 2018 + */ + template + void + plate_with_a_hole(Triangulation & tria, + const double inner_radius = 0.4, + const double outer_radius = 1., + const double pad_bottom = 2., + const double pad_top = 2., + const double pad_left = 1., + const double pad_right = 1., + const Point center = Point(), + const types::manifold_id polar_manifold_id = 0, + const types::manifold_id tfi_manifold_id = 1, + const double L = 1., + const unsigned int n_slices = 2, + const bool colorize = false); + /** * A general quadrilateral in 2d or a general hexahedron in 3d. It is the * responsibility of the user to provide the vertices in the right order (see @@ -1310,6 +1367,35 @@ namespace GridGenerator "The input to this function is oriented in a way that will" " cause all cells to have negative measure."); ///@} + +#ifndef DOXYGEN + // These functions are only implemented with specializations; declare them + // here + template <> + void hyper_cube_with_cylindrical_hole(Triangulation<1> &, + const double, + const double, + const double, + const unsigned int, + const bool); + + template <> + void hyper_cube_with_cylindrical_hole(Triangulation<2> &, + const double, + const double, + const double, + const unsigned int, + const bool); + + template <> + void hyper_cube_with_cylindrical_hole(Triangulation<3> &, + const double, + const double, + const double, + const unsigned int, + const bool); +#endif + } // namespace GridGenerator diff --git a/source/grid/grid_generator.cc b/source/grid/grid_generator.cc index 94f28d20fa..ef7af6475b 100644 --- a/source/grid/grid_generator.cc +++ b/source/grid/grid_generator.cc @@ -1910,6 +1910,353 @@ namespace GridGenerator tria.create_triangulation(points, cells, SubCellData()); } + + + template <> + void plate_with_a_hole(Triangulation<1> & /*tria*/, + const double /*inner_radius*/, + const double /*outer_radius*/, + const double /*pad_bottom*/, + const double /*pad_top*/, + const double /*pad_left*/, + const double /*pad_right*/, + const Point<1> /*center*/, + const types::manifold_id /*polar_manifold_id*/, + const types::manifold_id /*tfi_manifold_id*/, + const double /*L*/, + const unsigned int /*n_slices*/, + const bool /*colorize*/) + { + Assert(false, ExcNotImplemented()); + } + + + namespace internal + { + // helper function to check if point is in 2D box + bool inline point_in_box(const Point<2> &p, + const Point<2> &c, + const double radius) + { + return (std::abs(p[0] - c[0]) < radius) && + (std::abs(p[1] - c[1]) < radius); + } + + bool inline point_in_box(const Point<3> &p, + const Point<3> ¢er, + const double radius) + { + return point_in_box(Point<2>(p[0], p[1]), + Point<2>(center[0], center[1]), + radius); + } + + /** + * Keep the main 2D implementation internal as we will use + * material id in 3D case, whereas the actual 2D function + * will reset material id in addition to this one. + */ + void plate_with_a_hole(Triangulation<2> & tria, + const double inner_radius, + const double outer_radius, + const double pad_bottom, + const double pad_top, + const double pad_left, + const double pad_right, + const Point<2> new_center, + const types::manifold_id polar_manifold_id, + const types::manifold_id tfi_manifold_id, + const double L, + const unsigned int /*n_slices*/, + const bool colorize) + { + Assert((pad_bottom > 0 || pad_top > 0 || pad_left > 0 || pad_right > 0), + ExcMessage("At least one padding parameter has to be non-zero.")); + Assert(pad_bottom >= 0., ExcMessage("Negative bottom padding.")); + Assert(pad_top >= 0., ExcMessage("Negative top padding.")); + Assert(pad_left >= 0., ExcMessage("Negative left padding.")); + Assert(pad_right >= 0., ExcMessage("Negative right padding.")); + + const Point<2> center; + + auto min_line_length = [](const Triangulation<2> &tria) -> double { + double length = std::numeric_limits::max(); + for (const auto cell : tria.active_cell_iterators()) + for (unsigned int n = 0; n < GeometryInfo<2>::lines_per_cell; ++n) + length = std::min(length, cell->line(n)->diameter()); + return length; + }; + + // start by setting up the cylinder triangulation + Triangulation<2> cylinder_tria; + GridGenerator::hyper_cube_with_cylindrical_hole(cylinder_tria, + inner_radius, + outer_radius, + L, + /*repetitions*/ 1, + colorize); + + // Mark the cylinder material ids as 2 to distinguish them from the bulk + // cells (these are read again about 40 lines down) + for (const auto &cell : cylinder_tria.active_cell_iterators()) + cell->set_material_id(2); + + // hyper_cube_with_cylindrical_hole will have 2 cells along + // each face, so he element size is outer_radius + + auto add_sizes = [](std::vector &step_sizes, + const double padding, + const double h) -> void { + // use std::round instead of std::ceil to improve aspect ratio + // in case padding is only slightly larger than h. + const unsigned int rounded = std::round(padding / h); + // in case padding is much smaller than h, make sure we + // have at least 1 element + const unsigned int num = (padding > 0. && rounded == 0) ? 1 : rounded; + for (unsigned int i = 0; i < num; ++i) + step_sizes.push_back(padding / num); + }; + + std::vector> step_sizes(2); + // x-coord + // left: + add_sizes(step_sizes[0], pad_left, outer_radius); + // center + step_sizes[0].push_back(outer_radius); + step_sizes[0].push_back(outer_radius); + // right + add_sizes(step_sizes[0], pad_right, outer_radius); + // y-coord + // bottom + add_sizes(step_sizes[1], pad_bottom, outer_radius); + // center + step_sizes[1].push_back(outer_radius); + step_sizes[1].push_back(outer_radius); + // top + add_sizes(step_sizes[1], pad_top, outer_radius); + + // now create bulk + Triangulation<2> bulk_tria; + const Point<2> bl(-outer_radius - pad_left, -outer_radius - pad_bottom); + const Point<2> tr(outer_radius + pad_right, outer_radius + pad_top); + GridGenerator::subdivided_hyper_rectangle( + bulk_tria, step_sizes, bl, tr, colorize); + + // now remove cells reserved from the cylindrical hole + std::set::active_cell_iterator> cells_to_remove; + for (const auto &cell : bulk_tria.active_cell_iterators()) + if (point_in_box(cell->center(), center, outer_radius)) + cells_to_remove.insert(cell); + + Triangulation<2> tria_without_cylinder; + GridGenerator::create_triangulation_with_removed_cells( + bulk_tria, cells_to_remove, tria_without_cylinder); + + const double tolerance = std::min(min_line_length(tria_without_cylinder), + min_line_length(cylinder_tria)) / + 2.0; + + // set material ID in bulk part to something other than 2 + for (const auto &cell : tria_without_cylinder.active_cell_iterators()) + cell->set_material_id(1); + + GridGenerator::merge_triangulations(tria_without_cylinder, + cylinder_tria, + tria, + tolerance); + + // now set manifold ids: + for (const auto &cell : tria.active_cell_iterators()) + { + // set all non-boundary manifold ids on the cells that came from the + // grid around the cylinder to the new TFI manifold id. + if (cell->material_id() == 2) + { + cell->set_manifold_id(tfi_manifold_id); + for (unsigned int face_n = 0; + face_n < GeometryInfo<2>::faces_per_cell; + ++face_n) + { + const auto &face = cell->face(face_n); + if (face->at_boundary() && + point_in_box(face->center(), center, outer_radius)) + face->set_manifold_id(polar_manifold_id); + else + face->set_manifold_id(tfi_manifold_id); + } + } + else + { + // ensure that all other manifold ids (including the faces + // opposite the cylinder) are set to the flat id + cell->set_all_manifold_ids(numbers::flat_manifold_id); + } + } + + static constexpr double tol = + std::numeric_limits::epsilon() * 10000; + if (colorize) + for (auto &cell : tria.active_cell_iterators()) + for (unsigned int face_n = 0; + face_n < GeometryInfo<2>::faces_per_cell; + ++face_n) + { + const auto face = cell->face(face_n); + if (face->at_boundary()) + { + const Point<2> center = face->center(); + // left side + if (std::abs(center[0] - bl[0]) < tol * std::abs(bl[0])) + face->set_boundary_id(0); + // right side + else if (std::abs(center[0] - tr[0]) < tol * std::abs(tr[0])) + face->set_boundary_id(1); + // bottom + else if (std::abs(center[1] - bl[1]) < tol * std::abs(bl[1])) + face->set_boundary_id(2); + // top + else if (std::abs(center[1] - tr[1]) < tol * std::abs(tr[1])) + face->set_boundary_id(3); + // cylinder boundary + else + { + Assert(cell->material_id() == 2, ExcInternalError()); + face->set_boundary_id(4); + } + } + } + + // move to the new center + GridTools::shift(new_center, tria); + + PolarManifold<2> polar_manifold(new_center); + tria.set_manifold(polar_manifold_id, polar_manifold); + TransfiniteInterpolationManifold<2> inner_manifold; + inner_manifold.initialize(tria); + tria.set_manifold(tfi_manifold_id, inner_manifold); + } + + } // namespace internal + + template <> + void plate_with_a_hole(Triangulation<2> & tria, + const double inner_radius, + const double outer_radius, + const double pad_bottom, + const double pad_top, + const double pad_left, + const double pad_right, + const Point<2> new_center, + const types::manifold_id polar_manifold_id, + const types::manifold_id tfi_manifold_id, + const double L, + const unsigned int n_slices, + const bool colorize) + { + internal::plate_with_a_hole(tria, + inner_radius, + outer_radius, + pad_bottom, + pad_top, + pad_left, + pad_right, + new_center, + polar_manifold_id, + tfi_manifold_id, + L, + n_slices, + colorize); + + // reset material id + for (auto &cell : tria.active_cell_iterators()) + cell->set_material_id(0); + } + + + + template <> + void plate_with_a_hole(Triangulation<3> & tria, + const double inner_radius, + const double outer_radius, + const double pad_bottom, + const double pad_top, + const double pad_left, + const double pad_right, + const Point<3> new_center, + const types::manifold_id polar_manifold_id, + const types::manifold_id tfi_manifold_id, + const double L, + const unsigned int n_slices, + const bool colorize) + { + Triangulation<2> tria_2; + internal::plate_with_a_hole(tria_2, + inner_radius, + outer_radius, + pad_bottom, + pad_top, + pad_left, + pad_right, + Point<2>(new_center[0], new_center[1]), + polar_manifold_id, + tfi_manifold_id, + L, + n_slices, + colorize); + + // extrude to 3D + extrude_triangulation(tria_2, n_slices, L, tria); + + // shift in Z direction to match specified center + GridTools::shift(Point<3>(0, 0, new_center[2] - L / 2.), tria); + + // extrude will keep boundary IDs but can not keep manifolds, set them + // below: + const FlatManifold<3> flat_manifold; + for (const auto &cell : tria.active_cell_iterators()) + if (cell->material_id() == 2) + { + cell->set_all_manifold_ids(tfi_manifold_id); + for (unsigned int face_n = 0; + face_n < GeometryInfo<3>::faces_per_cell; + ++face_n) + { + // similar check to 2D version + const auto face = cell->face(face_n); + if (face->at_boundary() && + internal::point_in_box(face->center(), + new_center, + outer_radius) && + std::abs( + flat_manifold.normal_vector(face, face->center())[2]) < + 1.0e-10) + face->set_manifold_id(polar_manifold_id); + else + face->set_manifold_id(tfi_manifold_id); + } + } + else + { + // otherwise set everything to flat manifold + cell->set_all_manifold_ids(numbers::flat_manifold_id); + } + + // set up the new manifolds + const Tensor<1, 3> direction{{0.0, 0.0, 1.0}}; + const CylindricalManifold<3> cylindrical_manifold( + direction, /*axial_point*/ new_center); + TransfiniteInterpolationManifold<3> inner_manifold; + inner_manifold.initialize(tria); + tria.set_manifold(polar_manifold_id, cylindrical_manifold); + tria.set_manifold(tfi_manifold_id, inner_manifold); + + // finally reset material ids + for (auto &cell : tria.active_cell_iterators()) + cell->set_material_id(0); + } + + + template void hyper_cross(Triangulation & tria, diff --git a/tests/grid/grid_generator_plate_with_a_hole.cc b/tests/grid/grid_generator_plate_with_a_hole.cc new file mode 100644 index 0000000000..801405ca1f --- /dev/null +++ b/tests/grid/grid_generator_plate_with_a_hole.cc @@ -0,0 +1,121 @@ +// --------------------------------------------------------------------- +// +// Copyright (C) 2005 - 2018 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. +// +// --------------------------------------------------------------------- + + + +// Test GridGenerator::plate_with_a_hole() + +#include + +#include + +#include +#include + +#include + +#include "../tests.h" + +template +void +test() +{ + Triangulation triangulation; + GridGenerator::plate_with_a_hole( + triangulation, 0.4, 1., 2., 2., 0, 0, Point(), 0, 1, 1., 2, true); + + triangulation.refine_global(1); + + using Tuple = std::tuple, types::boundary_id, types::manifold_id>; + std::vector boundary_faces; + + for (const auto &cell : triangulation.active_cell_iterators()) + for (unsigned int face_n = 0; face_n < GeometryInfo::faces_per_cell; + ++face_n) + if (cell->face(face_n)->at_boundary()) + boundary_faces.push_back( + std::make_tuple(cell->face(face_n)->center(), + cell->face(face_n)->boundary_id(), + cell->face(face_n)->manifold_id())); + + // see dof_tools.cc internal::ComparisonHelper + std::sort(begin(boundary_faces), + end(boundary_faces), + [](const Tuple &t1, const Tuple &t2) { + const auto &b1 = std::get<1>(t1); + const auto &b2 = std::get<1>(t2); + if (b1 != b2) + return b1 < b2; + + const auto &p1 = std::get<0>(t1); + const auto &p2 = std::get<0>(t2); + + for (unsigned int d = 0; d < dim; ++d) + if (std::abs(p1[d] - p2[d]) > 1e-8) + return p1[d] < p2[d]; + + return std::get<2>(t1) < std::get<2>(t2); + }); + + for (const auto el : boundary_faces) + deallog << "center: " << std::get<0>(el) + << " boundary id: " << std::get<1>(el) + << " manifold id: " << std::get<2>(el) << std::endl; + + deallog << std::endl << std::endl; + Vector manifold_id(triangulation.n_active_cells()); + unsigned int index = 0; + for (const auto &cell : triangulation.active_cell_iterators()) + { + deallog << "center: " << cell->center() + << " manifold id: " << cell->manifold_id() << std::endl; + manifold_id[index] = cell->manifold_id(); + index++; + } + + // write in vtk for visual inspection + if (false) + { + DoFHandler dof_handler(triangulation); + FE_Q fe(1); + dof_handler.distribute_dofs(fe); + + DataOut data_out; + + data_out.attach_dof_handler(dof_handler); + data_out.add_data_vector(manifold_id, "manifold_id"); + data_out.build_patches(); + + const std::string filename = + "output_" + Utilities::int_to_string(dim) + ".vtu"; + std::ofstream output(filename.c_str()); + data_out.write_vtu(output); + } +} + + +int +main() +{ + initlog(); + + deallog.push("2d"); + test<2>(); + deallog.pop(); + + deallog.push("3d"); + test<3>(); + deallog.pop(); +} diff --git a/tests/grid/grid_generator_plate_with_a_hole.output b/tests/grid/grid_generator_plate_with_a_hole.output new file mode 100644 index 0000000000..28f5dc6b2b --- /dev/null +++ b/tests/grid/grid_generator_plate_with_a_hole.output @@ -0,0 +1,469 @@ + +DEAL:2d::center: -1.00000 -2.75000 boundary id: 0 manifold id: 4294967295 +DEAL:2d::center: -1.00000 -2.25000 boundary id: 0 manifold id: 4294967295 +DEAL:2d::center: -1.00000 -1.75000 boundary id: 0 manifold id: 4294967295 +DEAL:2d::center: -1.00000 -1.25000 boundary id: 0 manifold id: 4294967295 +DEAL:2d::center: -1.00000 -0.750000 boundary id: 0 manifold id: 1 +DEAL:2d::center: -1.00000 -0.250000 boundary id: 0 manifold id: 1 +DEAL:2d::center: -1.00000 0.250000 boundary id: 0 manifold id: 1 +DEAL:2d::center: -1.00000 0.750000 boundary id: 0 manifold id: 1 +DEAL:2d::center: -1.00000 1.25000 boundary id: 0 manifold id: 4294967295 +DEAL:2d::center: -1.00000 1.75000 boundary id: 0 manifold id: 4294967295 +DEAL:2d::center: -1.00000 2.25000 boundary id: 0 manifold id: 4294967295 +DEAL:2d::center: -1.00000 2.75000 boundary id: 0 manifold id: 4294967295 +DEAL:2d::center: 1.00000 -2.75000 boundary id: 1 manifold id: 4294967295 +DEAL:2d::center: 1.00000 -2.25000 boundary id: 1 manifold id: 4294967295 +DEAL:2d::center: 1.00000 -1.75000 boundary id: 1 manifold id: 4294967295 +DEAL:2d::center: 1.00000 -1.25000 boundary id: 1 manifold id: 4294967295 +DEAL:2d::center: 1.00000 -0.750000 boundary id: 1 manifold id: 1 +DEAL:2d::center: 1.00000 -0.250000 boundary id: 1 manifold id: 1 +DEAL:2d::center: 1.00000 0.250000 boundary id: 1 manifold id: 1 +DEAL:2d::center: 1.00000 0.750000 boundary id: 1 manifold id: 1 +DEAL:2d::center: 1.00000 1.25000 boundary id: 1 manifold id: 4294967295 +DEAL:2d::center: 1.00000 1.75000 boundary id: 1 manifold id: 4294967295 +DEAL:2d::center: 1.00000 2.25000 boundary id: 1 manifold id: 4294967295 +DEAL:2d::center: 1.00000 2.75000 boundary id: 1 manifold id: 4294967295 +DEAL:2d::center: -0.750000 -3.00000 boundary id: 2 manifold id: 4294967295 +DEAL:2d::center: -0.250000 -3.00000 boundary id: 2 manifold id: 4294967295 +DEAL:2d::center: 0.250000 -3.00000 boundary id: 2 manifold id: 4294967295 +DEAL:2d::center: 0.750000 -3.00000 boundary id: 2 manifold id: 4294967295 +DEAL:2d::center: -0.750000 3.00000 boundary id: 3 manifold id: 4294967295 +DEAL:2d::center: -0.250000 3.00000 boundary id: 3 manifold id: 4294967295 +DEAL:2d::center: 0.250000 3.00000 boundary id: 3 manifold id: 4294967295 +DEAL:2d::center: 0.750000 3.00000 boundary id: 3 manifold id: 4294967295 +DEAL:2d::center: -0.384776 -0.0765367 boundary id: 4 manifold id: 0 +DEAL:2d::center: -0.384776 0.0765367 boundary id: 4 manifold id: 0 +DEAL:2d::center: -0.326197 -0.217958 boundary id: 4 manifold id: 0 +DEAL:2d::center: -0.326197 0.217958 boundary id: 4 manifold id: 0 +DEAL:2d::center: -0.217958 -0.326197 boundary id: 4 manifold id: 0 +DEAL:2d::center: -0.217958 0.326197 boundary id: 4 manifold id: 0 +DEAL:2d::center: -0.0765367 -0.384776 boundary id: 4 manifold id: 0 +DEAL:2d::center: -0.0765367 0.384776 boundary id: 4 manifold id: 0 +DEAL:2d::center: 0.0765367 -0.384776 boundary id: 4 manifold id: 0 +DEAL:2d::center: 0.0765367 0.384776 boundary id: 4 manifold id: 0 +DEAL:2d::center: 0.217958 -0.326197 boundary id: 4 manifold id: 0 +DEAL:2d::center: 0.217958 0.326197 boundary id: 4 manifold id: 0 +DEAL:2d::center: 0.326197 -0.217958 boundary id: 4 manifold id: 0 +DEAL:2d::center: 0.326197 0.217958 boundary id: 4 manifold id: 0 +DEAL:2d::center: 0.384776 -0.0765367 boundary id: 4 manifold id: 0 +DEAL:2d::center: 0.384776 0.0765367 boundary id: 4 manifold id: 0 +DEAL:2d:: +DEAL:2d:: +DEAL:2d::center: -0.250000 -2.25000 manifold id: 4294967295 +DEAL:2d::center: -0.750000 -2.25000 manifold id: 4294967295 +DEAL:2d::center: -0.250000 -2.75000 manifold id: 4294967295 +DEAL:2d::center: -0.750000 -2.75000 manifold id: 4294967295 +DEAL:2d::center: 0.750000 -2.25000 manifold id: 4294967295 +DEAL:2d::center: 0.250000 -2.25000 manifold id: 4294967295 +DEAL:2d::center: 0.750000 -2.75000 manifold id: 4294967295 +DEAL:2d::center: 0.250000 -2.75000 manifold id: 4294967295 +DEAL:2d::center: -0.250000 -1.25000 manifold id: 4294967295 +DEAL:2d::center: -0.750000 -1.25000 manifold id: 4294967295 +DEAL:2d::center: -0.250000 -1.75000 manifold id: 4294967295 +DEAL:2d::center: -0.750000 -1.75000 manifold id: 4294967295 +DEAL:2d::center: 0.750000 -1.25000 manifold id: 4294967295 +DEAL:2d::center: 0.250000 -1.25000 manifold id: 4294967295 +DEAL:2d::center: 0.750000 -1.75000 manifold id: 4294967295 +DEAL:2d::center: 0.250000 -1.75000 manifold id: 4294967295 +DEAL:2d::center: -0.250000 1.75000 manifold id: 4294967295 +DEAL:2d::center: -0.750000 1.75000 manifold id: 4294967295 +DEAL:2d::center: -0.250000 1.25000 manifold id: 4294967295 +DEAL:2d::center: -0.750000 1.25000 manifold id: 4294967295 +DEAL:2d::center: 0.750000 1.75000 manifold id: 4294967295 +DEAL:2d::center: 0.250000 1.75000 manifold id: 4294967295 +DEAL:2d::center: 0.750000 1.25000 manifold id: 4294967295 +DEAL:2d::center: 0.250000 1.25000 manifold id: 4294967295 +DEAL:2d::center: -0.250000 2.75000 manifold id: 4294967295 +DEAL:2d::center: -0.750000 2.75000 manifold id: 4294967295 +DEAL:2d::center: -0.250000 2.25000 manifold id: 4294967295 +DEAL:2d::center: -0.750000 2.25000 manifold id: 4294967295 +DEAL:2d::center: 0.750000 2.75000 manifold id: 4294967295 +DEAL:2d::center: 0.250000 2.75000 manifold id: 4294967295 +DEAL:2d::center: 0.750000 2.25000 manifold id: 4294967295 +DEAL:2d::center: 0.250000 2.25000 manifold id: 4294967295 +DEAL:2d::center: 0.494648 0.350969 manifold id: 1 +DEAL:2d::center: 0.538582 0.119903 manifold id: 1 +DEAL:2d::center: 0.831549 0.616990 manifold id: 1 +DEAL:2d::center: 0.846194 0.206634 manifold id: 1 +DEAL:2d::center: 0.350969 0.494648 manifold id: 1 +DEAL:2d::center: 0.616990 0.831549 manifold id: 1 +DEAL:2d::center: 0.119903 0.538582 manifold id: 1 +DEAL:2d::center: 0.206634 0.846194 manifold id: 1 +DEAL:2d::center: -0.119903 0.538582 manifold id: 1 +DEAL:2d::center: -0.206634 0.846194 manifold id: 1 +DEAL:2d::center: -0.350969 0.494648 manifold id: 1 +DEAL:2d::center: -0.616990 0.831549 manifold id: 1 +DEAL:2d::center: -0.538582 0.119903 manifold id: 1 +DEAL:2d::center: -0.494648 0.350969 manifold id: 1 +DEAL:2d::center: -0.846194 0.206634 manifold id: 1 +DEAL:2d::center: -0.831549 0.616990 manifold id: 1 +DEAL:2d::center: -0.494648 -0.350969 manifold id: 1 +DEAL:2d::center: -0.538582 -0.119903 manifold id: 1 +DEAL:2d::center: -0.831549 -0.616990 manifold id: 1 +DEAL:2d::center: -0.846194 -0.206634 manifold id: 1 +DEAL:2d::center: -0.119903 -0.538582 manifold id: 1 +DEAL:2d::center: -0.350969 -0.494648 manifold id: 1 +DEAL:2d::center: -0.206634 -0.846194 manifold id: 1 +DEAL:2d::center: -0.616990 -0.831549 manifold id: 1 +DEAL:2d::center: 0.350969 -0.494648 manifold id: 1 +DEAL:2d::center: 0.119903 -0.538582 manifold id: 1 +DEAL:2d::center: 0.616990 -0.831549 manifold id: 1 +DEAL:2d::center: 0.206634 -0.846194 manifold id: 1 +DEAL:2d::center: 0.538582 -0.119903 manifold id: 1 +DEAL:2d::center: 0.494648 -0.350969 manifold id: 1 +DEAL:2d::center: 0.846194 -0.206634 manifold id: 1 +DEAL:2d::center: 0.831549 -0.616990 manifold id: 1 +DEAL:3d::center: -1.00000 -2.75000 -0.250000 boundary id: 0 manifold id: 4294967295 +DEAL:3d::center: -1.00000 -2.75000 0.250000 boundary id: 0 manifold id: 4294967295 +DEAL:3d::center: -1.00000 -2.25000 -0.250000 boundary id: 0 manifold id: 4294967295 +DEAL:3d::center: -1.00000 -2.25000 0.250000 boundary id: 0 manifold id: 4294967295 +DEAL:3d::center: -1.00000 -1.75000 -0.250000 boundary id: 0 manifold id: 4294967295 +DEAL:3d::center: -1.00000 -1.75000 0.250000 boundary id: 0 manifold id: 4294967295 +DEAL:3d::center: -1.00000 -1.25000 -0.250000 boundary id: 0 manifold id: 4294967295 +DEAL:3d::center: -1.00000 -1.25000 0.250000 boundary id: 0 manifold id: 4294967295 +DEAL:3d::center: -1.00000 -0.750000 -0.250000 boundary id: 0 manifold id: 1 +DEAL:3d::center: -1.00000 -0.750000 0.250000 boundary id: 0 manifold id: 1 +DEAL:3d::center: -1.00000 -0.250000 -0.250000 boundary id: 0 manifold id: 1 +DEAL:3d::center: -1.00000 -0.250000 0.250000 boundary id: 0 manifold id: 1 +DEAL:3d::center: -1.00000 0.250000 -0.250000 boundary id: 0 manifold id: 1 +DEAL:3d::center: -1.00000 0.250000 0.250000 boundary id: 0 manifold id: 1 +DEAL:3d::center: -1.00000 0.750000 -0.250000 boundary id: 0 manifold id: 1 +DEAL:3d::center: -1.00000 0.750000 0.250000 boundary id: 0 manifold id: 1 +DEAL:3d::center: -1.00000 1.25000 -0.250000 boundary id: 0 manifold id: 4294967295 +DEAL:3d::center: -1.00000 1.25000 0.250000 boundary id: 0 manifold id: 4294967295 +DEAL:3d::center: -1.00000 1.75000 -0.250000 boundary id: 0 manifold id: 4294967295 +DEAL:3d::center: -1.00000 1.75000 0.250000 boundary id: 0 manifold id: 4294967295 +DEAL:3d::center: -1.00000 2.25000 -0.250000 boundary id: 0 manifold id: 4294967295 +DEAL:3d::center: -1.00000 2.25000 0.250000 boundary id: 0 manifold id: 4294967295 +DEAL:3d::center: -1.00000 2.75000 -0.250000 boundary id: 0 manifold id: 4294967295 +DEAL:3d::center: -1.00000 2.75000 0.250000 boundary id: 0 manifold id: 4294967295 +DEAL:3d::center: 1.00000 -2.75000 -0.250000 boundary id: 1 manifold id: 4294967295 +DEAL:3d::center: 1.00000 -2.75000 0.250000 boundary id: 1 manifold id: 4294967295 +DEAL:3d::center: 1.00000 -2.25000 -0.250000 boundary id: 1 manifold id: 4294967295 +DEAL:3d::center: 1.00000 -2.25000 0.250000 boundary id: 1 manifold id: 4294967295 +DEAL:3d::center: 1.00000 -1.75000 -0.250000 boundary id: 1 manifold id: 4294967295 +DEAL:3d::center: 1.00000 -1.75000 0.250000 boundary id: 1 manifold id: 4294967295 +DEAL:3d::center: 1.00000 -1.25000 -0.250000 boundary id: 1 manifold id: 4294967295 +DEAL:3d::center: 1.00000 -1.25000 0.250000 boundary id: 1 manifold id: 4294967295 +DEAL:3d::center: 1.00000 -0.750000 -0.250000 boundary id: 1 manifold id: 1 +DEAL:3d::center: 1.00000 -0.750000 0.250000 boundary id: 1 manifold id: 1 +DEAL:3d::center: 1.00000 -0.250000 -0.250000 boundary id: 1 manifold id: 1 +DEAL:3d::center: 1.00000 -0.250000 0.250000 boundary id: 1 manifold id: 1 +DEAL:3d::center: 1.00000 0.250000 -0.250000 boundary id: 1 manifold id: 1 +DEAL:3d::center: 1.00000 0.250000 0.250000 boundary id: 1 manifold id: 1 +DEAL:3d::center: 1.00000 0.750000 -0.250000 boundary id: 1 manifold id: 1 +DEAL:3d::center: 1.00000 0.750000 0.250000 boundary id: 1 manifold id: 1 +DEAL:3d::center: 1.00000 1.25000 -0.250000 boundary id: 1 manifold id: 4294967295 +DEAL:3d::center: 1.00000 1.25000 0.250000 boundary id: 1 manifold id: 4294967295 +DEAL:3d::center: 1.00000 1.75000 -0.250000 boundary id: 1 manifold id: 4294967295 +DEAL:3d::center: 1.00000 1.75000 0.250000 boundary id: 1 manifold id: 4294967295 +DEAL:3d::center: 1.00000 2.25000 -0.250000 boundary id: 1 manifold id: 4294967295 +DEAL:3d::center: 1.00000 2.25000 0.250000 boundary id: 1 manifold id: 4294967295 +DEAL:3d::center: 1.00000 2.75000 -0.250000 boundary id: 1 manifold id: 4294967295 +DEAL:3d::center: 1.00000 2.75000 0.250000 boundary id: 1 manifold id: 4294967295 +DEAL:3d::center: -0.750000 -3.00000 -0.250000 boundary id: 2 manifold id: 4294967295 +DEAL:3d::center: -0.750000 -3.00000 0.250000 boundary id: 2 manifold id: 4294967295 +DEAL:3d::center: -0.250000 -3.00000 -0.250000 boundary id: 2 manifold id: 4294967295 +DEAL:3d::center: -0.250000 -3.00000 0.250000 boundary id: 2 manifold id: 4294967295 +DEAL:3d::center: 0.250000 -3.00000 -0.250000 boundary id: 2 manifold id: 4294967295 +DEAL:3d::center: 0.250000 -3.00000 0.250000 boundary id: 2 manifold id: 4294967295 +DEAL:3d::center: 0.750000 -3.00000 -0.250000 boundary id: 2 manifold id: 4294967295 +DEAL:3d::center: 0.750000 -3.00000 0.250000 boundary id: 2 manifold id: 4294967295 +DEAL:3d::center: -0.750000 3.00000 -0.250000 boundary id: 3 manifold id: 4294967295 +DEAL:3d::center: -0.750000 3.00000 0.250000 boundary id: 3 manifold id: 4294967295 +DEAL:3d::center: -0.250000 3.00000 -0.250000 boundary id: 3 manifold id: 4294967295 +DEAL:3d::center: -0.250000 3.00000 0.250000 boundary id: 3 manifold id: 4294967295 +DEAL:3d::center: 0.250000 3.00000 -0.250000 boundary id: 3 manifold id: 4294967295 +DEAL:3d::center: 0.250000 3.00000 0.250000 boundary id: 3 manifold id: 4294967295 +DEAL:3d::center: 0.750000 3.00000 -0.250000 boundary id: 3 manifold id: 4294967295 +DEAL:3d::center: 0.750000 3.00000 0.250000 boundary id: 3 manifold id: 4294967295 +DEAL:3d::center: -0.384776 -0.0765367 -0.250000 boundary id: 4 manifold id: 0 +DEAL:3d::center: -0.384776 -0.0765367 0.250000 boundary id: 4 manifold id: 0 +DEAL:3d::center: -0.384776 0.0765367 -0.250000 boundary id: 4 manifold id: 0 +DEAL:3d::center: -0.384776 0.0765367 0.250000 boundary id: 4 manifold id: 0 +DEAL:3d::center: -0.326197 -0.217958 -0.250000 boundary id: 4 manifold id: 0 +DEAL:3d::center: -0.326197 -0.217958 0.250000 boundary id: 4 manifold id: 0 +DEAL:3d::center: -0.326197 0.217958 -0.250000 boundary id: 4 manifold id: 0 +DEAL:3d::center: -0.326197 0.217958 0.250000 boundary id: 4 manifold id: 0 +DEAL:3d::center: -0.217958 -0.326197 -0.250000 boundary id: 4 manifold id: 0 +DEAL:3d::center: -0.217958 -0.326197 0.250000 boundary id: 4 manifold id: 0 +DEAL:3d::center: -0.217958 0.326197 -0.250000 boundary id: 4 manifold id: 0 +DEAL:3d::center: -0.217958 0.326197 0.250000 boundary id: 4 manifold id: 0 +DEAL:3d::center: -0.0765367 -0.384776 -0.250000 boundary id: 4 manifold id: 0 +DEAL:3d::center: -0.0765367 -0.384776 0.250000 boundary id: 4 manifold id: 0 +DEAL:3d::center: -0.0765367 0.384776 -0.250000 boundary id: 4 manifold id: 0 +DEAL:3d::center: -0.0765367 0.384776 0.250000 boundary id: 4 manifold id: 0 +DEAL:3d::center: 0.0765367 -0.384776 -0.250000 boundary id: 4 manifold id: 0 +DEAL:3d::center: 0.0765367 -0.384776 0.250000 boundary id: 4 manifold id: 0 +DEAL:3d::center: 0.0765367 0.384776 -0.250000 boundary id: 4 manifold id: 0 +DEAL:3d::center: 0.0765367 0.384776 0.250000 boundary id: 4 manifold id: 0 +DEAL:3d::center: 0.217958 -0.326197 -0.250000 boundary id: 4 manifold id: 0 +DEAL:3d::center: 0.217958 -0.326197 0.250000 boundary id: 4 manifold id: 0 +DEAL:3d::center: 0.217958 0.326197 -0.250000 boundary id: 4 manifold id: 0 +DEAL:3d::center: 0.217958 0.326197 0.250000 boundary id: 4 manifold id: 0 +DEAL:3d::center: 0.326197 -0.217958 -0.250000 boundary id: 4 manifold id: 0 +DEAL:3d::center: 0.326197 -0.217958 0.250000 boundary id: 4 manifold id: 0 +DEAL:3d::center: 0.326197 0.217958 -0.250000 boundary id: 4 manifold id: 0 +DEAL:3d::center: 0.326197 0.217958 0.250000 boundary id: 4 manifold id: 0 +DEAL:3d::center: 0.384776 -0.0765367 -0.250000 boundary id: 4 manifold id: 0 +DEAL:3d::center: 0.384776 -0.0765367 0.250000 boundary id: 4 manifold id: 0 +DEAL:3d::center: 0.384776 0.0765367 -0.250000 boundary id: 4 manifold id: 0 +DEAL:3d::center: 0.384776 0.0765367 0.250000 boundary id: 4 manifold id: 0 +DEAL:3d::center: -0.846194 -0.206634 -0.500000 boundary id: 5 manifold id: 1 +DEAL:3d::center: -0.846194 0.206634 -0.500000 boundary id: 5 manifold id: 1 +DEAL:3d::center: -0.831549 -0.616990 -0.500000 boundary id: 5 manifold id: 1 +DEAL:3d::center: -0.831549 0.616990 -0.500000 boundary id: 5 manifold id: 1 +DEAL:3d::center: -0.750000 -2.75000 -0.500000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: -0.750000 -2.25000 -0.500000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: -0.750000 -1.75000 -0.500000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: -0.750000 -1.25000 -0.500000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: -0.750000 1.25000 -0.500000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: -0.750000 1.75000 -0.500000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: -0.750000 2.25000 -0.500000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: -0.750000 2.75000 -0.500000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: -0.616990 -0.831549 -0.500000 boundary id: 5 manifold id: 1 +DEAL:3d::center: -0.616990 0.831549 -0.500000 boundary id: 5 manifold id: 1 +DEAL:3d::center: -0.538582 -0.119903 -0.500000 boundary id: 5 manifold id: 1 +DEAL:3d::center: -0.538582 0.119903 -0.500000 boundary id: 5 manifold id: 1 +DEAL:3d::center: -0.494648 -0.350969 -0.500000 boundary id: 5 manifold id: 1 +DEAL:3d::center: -0.494648 0.350969 -0.500000 boundary id: 5 manifold id: 1 +DEAL:3d::center: -0.350969 -0.494648 -0.500000 boundary id: 5 manifold id: 1 +DEAL:3d::center: -0.350969 0.494648 -0.500000 boundary id: 5 manifold id: 1 +DEAL:3d::center: -0.250000 -2.75000 -0.500000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: -0.250000 -2.25000 -0.500000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: -0.250000 -1.75000 -0.500000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: -0.250000 -1.25000 -0.500000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: -0.250000 1.25000 -0.500000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: -0.250000 1.75000 -0.500000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: -0.250000 2.25000 -0.500000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: -0.250000 2.75000 -0.500000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: -0.206634 -0.846194 -0.500000 boundary id: 5 manifold id: 1 +DEAL:3d::center: -0.206634 0.846194 -0.500000 boundary id: 5 manifold id: 1 +DEAL:3d::center: -0.119903 -0.538582 -0.500000 boundary id: 5 manifold id: 1 +DEAL:3d::center: -0.119903 0.538582 -0.500000 boundary id: 5 manifold id: 1 +DEAL:3d::center: 0.119903 -0.538582 -0.500000 boundary id: 5 manifold id: 1 +DEAL:3d::center: 0.119903 0.538582 -0.500000 boundary id: 5 manifold id: 1 +DEAL:3d::center: 0.206634 -0.846194 -0.500000 boundary id: 5 manifold id: 1 +DEAL:3d::center: 0.206634 0.846194 -0.500000 boundary id: 5 manifold id: 1 +DEAL:3d::center: 0.250000 -2.75000 -0.500000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: 0.250000 -2.25000 -0.500000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: 0.250000 -1.75000 -0.500000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: 0.250000 -1.25000 -0.500000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: 0.250000 1.25000 -0.500000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: 0.250000 1.75000 -0.500000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: 0.250000 2.25000 -0.500000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: 0.250000 2.75000 -0.500000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: 0.350969 -0.494648 -0.500000 boundary id: 5 manifold id: 1 +DEAL:3d::center: 0.350969 0.494648 -0.500000 boundary id: 5 manifold id: 1 +DEAL:3d::center: 0.494648 -0.350969 -0.500000 boundary id: 5 manifold id: 1 +DEAL:3d::center: 0.494648 0.350969 -0.500000 boundary id: 5 manifold id: 1 +DEAL:3d::center: 0.538582 -0.119903 -0.500000 boundary id: 5 manifold id: 1 +DEAL:3d::center: 0.538582 0.119903 -0.500000 boundary id: 5 manifold id: 1 +DEAL:3d::center: 0.616990 -0.831549 -0.500000 boundary id: 5 manifold id: 1 +DEAL:3d::center: 0.616990 0.831549 -0.500000 boundary id: 5 manifold id: 1 +DEAL:3d::center: 0.750000 -2.75000 -0.500000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: 0.750000 -2.25000 -0.500000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: 0.750000 -1.75000 -0.500000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: 0.750000 -1.25000 -0.500000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: 0.750000 1.25000 -0.500000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: 0.750000 1.75000 -0.500000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: 0.750000 2.25000 -0.500000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: 0.750000 2.75000 -0.500000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: 0.831549 -0.616990 -0.500000 boundary id: 5 manifold id: 1 +DEAL:3d::center: 0.831549 0.616990 -0.500000 boundary id: 5 manifold id: 1 +DEAL:3d::center: 0.846194 -0.206634 -0.500000 boundary id: 5 manifold id: 1 +DEAL:3d::center: 0.846194 0.206634 -0.500000 boundary id: 5 manifold id: 1 +DEAL:3d::center: -0.846194 -0.206634 0.500000 boundary id: 6 manifold id: 1 +DEAL:3d::center: -0.846194 0.206634 0.500000 boundary id: 6 manifold id: 1 +DEAL:3d::center: -0.831549 -0.616990 0.500000 boundary id: 6 manifold id: 1 +DEAL:3d::center: -0.831549 0.616990 0.500000 boundary id: 6 manifold id: 1 +DEAL:3d::center: -0.750000 -2.75000 0.500000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: -0.750000 -2.25000 0.500000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: -0.750000 -1.75000 0.500000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: -0.750000 -1.25000 0.500000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: -0.750000 1.25000 0.500000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: -0.750000 1.75000 0.500000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: -0.750000 2.25000 0.500000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: -0.750000 2.75000 0.500000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: -0.616990 -0.831549 0.500000 boundary id: 6 manifold id: 1 +DEAL:3d::center: -0.616990 0.831549 0.500000 boundary id: 6 manifold id: 1 +DEAL:3d::center: -0.538582 -0.119903 0.500000 boundary id: 6 manifold id: 1 +DEAL:3d::center: -0.538582 0.119903 0.500000 boundary id: 6 manifold id: 1 +DEAL:3d::center: -0.494648 -0.350969 0.500000 boundary id: 6 manifold id: 1 +DEAL:3d::center: -0.494648 0.350969 0.500000 boundary id: 6 manifold id: 1 +DEAL:3d::center: -0.350969 -0.494648 0.500000 boundary id: 6 manifold id: 1 +DEAL:3d::center: -0.350969 0.494648 0.500000 boundary id: 6 manifold id: 1 +DEAL:3d::center: -0.250000 -2.75000 0.500000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: -0.250000 -2.25000 0.500000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: -0.250000 -1.75000 0.500000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: -0.250000 -1.25000 0.500000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: -0.250000 1.25000 0.500000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: -0.250000 1.75000 0.500000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: -0.250000 2.25000 0.500000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: -0.250000 2.75000 0.500000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: -0.206634 -0.846194 0.500000 boundary id: 6 manifold id: 1 +DEAL:3d::center: -0.206634 0.846194 0.500000 boundary id: 6 manifold id: 1 +DEAL:3d::center: -0.119903 -0.538582 0.500000 boundary id: 6 manifold id: 1 +DEAL:3d::center: -0.119903 0.538582 0.500000 boundary id: 6 manifold id: 1 +DEAL:3d::center: 0.119903 -0.538582 0.500000 boundary id: 6 manifold id: 1 +DEAL:3d::center: 0.119903 0.538582 0.500000 boundary id: 6 manifold id: 1 +DEAL:3d::center: 0.206634 -0.846194 0.500000 boundary id: 6 manifold id: 1 +DEAL:3d::center: 0.206634 0.846194 0.500000 boundary id: 6 manifold id: 1 +DEAL:3d::center: 0.250000 -2.75000 0.500000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: 0.250000 -2.25000 0.500000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: 0.250000 -1.75000 0.500000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: 0.250000 -1.25000 0.500000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: 0.250000 1.25000 0.500000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: 0.250000 1.75000 0.500000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: 0.250000 2.25000 0.500000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: 0.250000 2.75000 0.500000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: 0.350969 -0.494648 0.500000 boundary id: 6 manifold id: 1 +DEAL:3d::center: 0.350969 0.494648 0.500000 boundary id: 6 manifold id: 1 +DEAL:3d::center: 0.494648 -0.350969 0.500000 boundary id: 6 manifold id: 1 +DEAL:3d::center: 0.494648 0.350969 0.500000 boundary id: 6 manifold id: 1 +DEAL:3d::center: 0.538582 -0.119903 0.500000 boundary id: 6 manifold id: 1 +DEAL:3d::center: 0.538582 0.119903 0.500000 boundary id: 6 manifold id: 1 +DEAL:3d::center: 0.616990 -0.831549 0.500000 boundary id: 6 manifold id: 1 +DEAL:3d::center: 0.616990 0.831549 0.500000 boundary id: 6 manifold id: 1 +DEAL:3d::center: 0.750000 -2.75000 0.500000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: 0.750000 -2.25000 0.500000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: 0.750000 -1.75000 0.500000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: 0.750000 -1.25000 0.500000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: 0.750000 1.25000 0.500000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: 0.750000 1.75000 0.500000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: 0.750000 2.25000 0.500000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: 0.750000 2.75000 0.500000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: 0.831549 -0.616990 0.500000 boundary id: 6 manifold id: 1 +DEAL:3d::center: 0.831549 0.616990 0.500000 boundary id: 6 manifold id: 1 +DEAL:3d::center: 0.846194 -0.206634 0.500000 boundary id: 6 manifold id: 1 +DEAL:3d::center: 0.846194 0.206634 0.500000 boundary id: 6 manifold id: 1 +DEAL:3d:: +DEAL:3d:: +DEAL:3d::center: -0.250000 -2.25000 -0.250000 manifold id: 4294967295 +DEAL:3d::center: -0.750000 -2.25000 -0.250000 manifold id: 4294967295 +DEAL:3d::center: -0.250000 -2.75000 -0.250000 manifold id: 4294967295 +DEAL:3d::center: -0.750000 -2.75000 -0.250000 manifold id: 4294967295 +DEAL:3d::center: -0.250000 -2.25000 0.250000 manifold id: 4294967295 +DEAL:3d::center: -0.750000 -2.25000 0.250000 manifold id: 4294967295 +DEAL:3d::center: -0.250000 -2.75000 0.250000 manifold id: 4294967295 +DEAL:3d::center: -0.750000 -2.75000 0.250000 manifold id: 4294967295 +DEAL:3d::center: 0.750000 -2.25000 -0.250000 manifold id: 4294967295 +DEAL:3d::center: 0.250000 -2.25000 -0.250000 manifold id: 4294967295 +DEAL:3d::center: 0.750000 -2.75000 -0.250000 manifold id: 4294967295 +DEAL:3d::center: 0.250000 -2.75000 -0.250000 manifold id: 4294967295 +DEAL:3d::center: 0.750000 -2.25000 0.250000 manifold id: 4294967295 +DEAL:3d::center: 0.250000 -2.25000 0.250000 manifold id: 4294967295 +DEAL:3d::center: 0.750000 -2.75000 0.250000 manifold id: 4294967295 +DEAL:3d::center: 0.250000 -2.75000 0.250000 manifold id: 4294967295 +DEAL:3d::center: -0.250000 -1.25000 -0.250000 manifold id: 4294967295 +DEAL:3d::center: -0.750000 -1.25000 -0.250000 manifold id: 4294967295 +DEAL:3d::center: -0.250000 -1.75000 -0.250000 manifold id: 4294967295 +DEAL:3d::center: -0.750000 -1.75000 -0.250000 manifold id: 4294967295 +DEAL:3d::center: -0.250000 -1.25000 0.250000 manifold id: 4294967295 +DEAL:3d::center: -0.750000 -1.25000 0.250000 manifold id: 4294967295 +DEAL:3d::center: -0.250000 -1.75000 0.250000 manifold id: 4294967295 +DEAL:3d::center: -0.750000 -1.75000 0.250000 manifold id: 4294967295 +DEAL:3d::center: 0.750000 -1.25000 -0.250000 manifold id: 4294967295 +DEAL:3d::center: 0.250000 -1.25000 -0.250000 manifold id: 4294967295 +DEAL:3d::center: 0.750000 -1.75000 -0.250000 manifold id: 4294967295 +DEAL:3d::center: 0.250000 -1.75000 -0.250000 manifold id: 4294967295 +DEAL:3d::center: 0.750000 -1.25000 0.250000 manifold id: 4294967295 +DEAL:3d::center: 0.250000 -1.25000 0.250000 manifold id: 4294967295 +DEAL:3d::center: 0.750000 -1.75000 0.250000 manifold id: 4294967295 +DEAL:3d::center: 0.250000 -1.75000 0.250000 manifold id: 4294967295 +DEAL:3d::center: -0.250000 1.75000 -0.250000 manifold id: 4294967295 +DEAL:3d::center: -0.750000 1.75000 -0.250000 manifold id: 4294967295 +DEAL:3d::center: -0.250000 1.25000 -0.250000 manifold id: 4294967295 +DEAL:3d::center: -0.750000 1.25000 -0.250000 manifold id: 4294967295 +DEAL:3d::center: -0.250000 1.75000 0.250000 manifold id: 4294967295 +DEAL:3d::center: -0.750000 1.75000 0.250000 manifold id: 4294967295 +DEAL:3d::center: -0.250000 1.25000 0.250000 manifold id: 4294967295 +DEAL:3d::center: -0.750000 1.25000 0.250000 manifold id: 4294967295 +DEAL:3d::center: 0.750000 1.75000 -0.250000 manifold id: 4294967295 +DEAL:3d::center: 0.250000 1.75000 -0.250000 manifold id: 4294967295 +DEAL:3d::center: 0.750000 1.25000 -0.250000 manifold id: 4294967295 +DEAL:3d::center: 0.250000 1.25000 -0.250000 manifold id: 4294967295 +DEAL:3d::center: 0.750000 1.75000 0.250000 manifold id: 4294967295 +DEAL:3d::center: 0.250000 1.75000 0.250000 manifold id: 4294967295 +DEAL:3d::center: 0.750000 1.25000 0.250000 manifold id: 4294967295 +DEAL:3d::center: 0.250000 1.25000 0.250000 manifold id: 4294967295 +DEAL:3d::center: -0.250000 2.75000 -0.250000 manifold id: 4294967295 +DEAL:3d::center: -0.750000 2.75000 -0.250000 manifold id: 4294967295 +DEAL:3d::center: -0.250000 2.25000 -0.250000 manifold id: 4294967295 +DEAL:3d::center: -0.750000 2.25000 -0.250000 manifold id: 4294967295 +DEAL:3d::center: -0.250000 2.75000 0.250000 manifold id: 4294967295 +DEAL:3d::center: -0.750000 2.75000 0.250000 manifold id: 4294967295 +DEAL:3d::center: -0.250000 2.25000 0.250000 manifold id: 4294967295 +DEAL:3d::center: -0.750000 2.25000 0.250000 manifold id: 4294967295 +DEAL:3d::center: 0.750000 2.75000 -0.250000 manifold id: 4294967295 +DEAL:3d::center: 0.250000 2.75000 -0.250000 manifold id: 4294967295 +DEAL:3d::center: 0.750000 2.25000 -0.250000 manifold id: 4294967295 +DEAL:3d::center: 0.250000 2.25000 -0.250000 manifold id: 4294967295 +DEAL:3d::center: 0.750000 2.75000 0.250000 manifold id: 4294967295 +DEAL:3d::center: 0.250000 2.75000 0.250000 manifold id: 4294967295 +DEAL:3d::center: 0.750000 2.25000 0.250000 manifold id: 4294967295 +DEAL:3d::center: 0.250000 2.25000 0.250000 manifold id: 4294967295 +DEAL:3d::center: 0.494648 0.350969 -0.250000 manifold id: 1 +DEAL:3d::center: 0.538582 0.119903 -0.250000 manifold id: 1 +DEAL:3d::center: 0.831549 0.616990 -0.250000 manifold id: 1 +DEAL:3d::center: 0.846194 0.206634 -0.250000 manifold id: 1 +DEAL:3d::center: 0.494648 0.350969 0.250000 manifold id: 1 +DEAL:3d::center: 0.538582 0.119903 0.250000 manifold id: 1 +DEAL:3d::center: 0.831549 0.616990 0.250000 manifold id: 1 +DEAL:3d::center: 0.846194 0.206634 0.250000 manifold id: 1 +DEAL:3d::center: 0.350969 0.494648 -0.250000 manifold id: 1 +DEAL:3d::center: 0.616990 0.831549 -0.250000 manifold id: 1 +DEAL:3d::center: 0.119903 0.538582 -0.250000 manifold id: 1 +DEAL:3d::center: 0.206634 0.846194 -0.250000 manifold id: 1 +DEAL:3d::center: 0.350969 0.494648 0.250000 manifold id: 1 +DEAL:3d::center: 0.616990 0.831549 0.250000 manifold id: 1 +DEAL:3d::center: 0.119903 0.538582 0.250000 manifold id: 1 +DEAL:3d::center: 0.206634 0.846194 0.250000 manifold id: 1 +DEAL:3d::center: -0.119903 0.538582 -0.250000 manifold id: 1 +DEAL:3d::center: -0.206634 0.846194 -0.250000 manifold id: 1 +DEAL:3d::center: -0.350969 0.494648 -0.250000 manifold id: 1 +DEAL:3d::center: -0.616990 0.831549 -0.250000 manifold id: 1 +DEAL:3d::center: -0.119903 0.538582 0.250000 manifold id: 1 +DEAL:3d::center: -0.206634 0.846194 0.250000 manifold id: 1 +DEAL:3d::center: -0.350969 0.494648 0.250000 manifold id: 1 +DEAL:3d::center: -0.616990 0.831549 0.250000 manifold id: 1 +DEAL:3d::center: -0.538582 0.119903 -0.250000 manifold id: 1 +DEAL:3d::center: -0.494648 0.350969 -0.250000 manifold id: 1 +DEAL:3d::center: -0.846194 0.206634 -0.250000 manifold id: 1 +DEAL:3d::center: -0.831549 0.616990 -0.250000 manifold id: 1 +DEAL:3d::center: -0.538582 0.119903 0.250000 manifold id: 1 +DEAL:3d::center: -0.494648 0.350969 0.250000 manifold id: 1 +DEAL:3d::center: -0.846194 0.206634 0.250000 manifold id: 1 +DEAL:3d::center: -0.831549 0.616990 0.250000 manifold id: 1 +DEAL:3d::center: -0.494648 -0.350969 -0.250000 manifold id: 1 +DEAL:3d::center: -0.538582 -0.119903 -0.250000 manifold id: 1 +DEAL:3d::center: -0.831549 -0.616990 -0.250000 manifold id: 1 +DEAL:3d::center: -0.846194 -0.206634 -0.250000 manifold id: 1 +DEAL:3d::center: -0.494648 -0.350969 0.250000 manifold id: 1 +DEAL:3d::center: -0.538582 -0.119903 0.250000 manifold id: 1 +DEAL:3d::center: -0.831549 -0.616990 0.250000 manifold id: 1 +DEAL:3d::center: -0.846194 -0.206634 0.250000 manifold id: 1 +DEAL:3d::center: -0.119903 -0.538582 -0.250000 manifold id: 1 +DEAL:3d::center: -0.350969 -0.494648 -0.250000 manifold id: 1 +DEAL:3d::center: -0.206634 -0.846194 -0.250000 manifold id: 1 +DEAL:3d::center: -0.616990 -0.831549 -0.250000 manifold id: 1 +DEAL:3d::center: -0.119903 -0.538582 0.250000 manifold id: 1 +DEAL:3d::center: -0.350969 -0.494648 0.250000 manifold id: 1 +DEAL:3d::center: -0.206634 -0.846194 0.250000 manifold id: 1 +DEAL:3d::center: -0.616990 -0.831549 0.250000 manifold id: 1 +DEAL:3d::center: 0.350969 -0.494648 -0.250000 manifold id: 1 +DEAL:3d::center: 0.119903 -0.538582 -0.250000 manifold id: 1 +DEAL:3d::center: 0.616990 -0.831549 -0.250000 manifold id: 1 +DEAL:3d::center: 0.206634 -0.846194 -0.250000 manifold id: 1 +DEAL:3d::center: 0.350969 -0.494648 0.250000 manifold id: 1 +DEAL:3d::center: 0.119903 -0.538582 0.250000 manifold id: 1 +DEAL:3d::center: 0.616990 -0.831549 0.250000 manifold id: 1 +DEAL:3d::center: 0.206634 -0.846194 0.250000 manifold id: 1 +DEAL:3d::center: 0.538582 -0.119903 -0.250000 manifold id: 1 +DEAL:3d::center: 0.494648 -0.350969 -0.250000 manifold id: 1 +DEAL:3d::center: 0.846194 -0.206634 -0.250000 manifold id: 1 +DEAL:3d::center: 0.831549 -0.616990 -0.250000 manifold id: 1 +DEAL:3d::center: 0.538582 -0.119903 0.250000 manifold id: 1 +DEAL:3d::center: 0.494648 -0.350969 0.250000 manifold id: 1 +DEAL:3d::center: 0.846194 -0.206634 0.250000 manifold id: 1 +DEAL:3d::center: 0.831549 -0.616990 0.250000 manifold id: 1 diff --git a/tests/grid/grid_generator_plate_with_a_hole_2.cc b/tests/grid/grid_generator_plate_with_a_hole_2.cc new file mode 100644 index 0000000000..07be393cbf --- /dev/null +++ b/tests/grid/grid_generator_plate_with_a_hole_2.cc @@ -0,0 +1,125 @@ +// --------------------------------------------------------------------- +// +// Copyright (C) 2005 - 2018 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. +// +// --------------------------------------------------------------------- + + + +// Test GridGenerator::plate_with_a_hole() with all padding non-equal + +#include + +#include + +#include +#include + +#include + +#include "../tests.h" + +template +void +test() +{ + Point new_center; + for (unsigned int d = 0; d < dim; ++d) + new_center[d] = 10.; + + Triangulation triangulation; + GridGenerator::plate_with_a_hole( + triangulation, 0.4, 1., 1., 2., 0.8, 1.2, new_center, 2, 3, 1., 2, true); + + triangulation.refine_global(1); + + using Tuple = std::tuple, types::boundary_id, types::manifold_id>; + std::vector boundary_faces; + + for (const auto &cell : triangulation.active_cell_iterators()) + for (unsigned int face_n = 0; face_n < GeometryInfo::faces_per_cell; + ++face_n) + if (cell->face(face_n)->at_boundary()) + boundary_faces.push_back( + std::make_tuple(cell->face(face_n)->center(), + cell->face(face_n)->boundary_id(), + cell->face(face_n)->manifold_id())); + + // see dof_tools.cc internal::ComparisonHelper + std::sort(begin(boundary_faces), + end(boundary_faces), + [](const Tuple &t1, const Tuple &t2) { + const auto &b1 = std::get<1>(t1); + const auto &b2 = std::get<1>(t2); + if (b1 != b2) + return b1 < b2; + + const auto &p1 = std::get<0>(t1); + const auto &p2 = std::get<0>(t2); + + for (unsigned int d = 0; d < dim; ++d) + if (std::abs(p1[d] - p2[d]) > 1e-8) + return p1[d] < p2[d]; + + return std::get<2>(t1) < std::get<2>(t2); + }); + + for (const auto el : boundary_faces) + deallog << "center: " << std::get<0>(el) + << " boundary id: " << std::get<1>(el) + << " manifold id: " << std::get<2>(el) << std::endl; + + deallog << std::endl << std::endl; + Vector manifold_id(triangulation.n_active_cells()); + unsigned int index = 0; + for (const auto &cell : triangulation.active_cell_iterators()) + { + deallog << "center: " << cell->center() + << " manifold id: " << cell->manifold_id() << std::endl; + manifold_id[index] = cell->manifold_id(); + index++; + } + + // write in vtk for visual inspection + if (false) + { + DoFHandler dof_handler(triangulation); + FE_Q fe(1); + dof_handler.distribute_dofs(fe); + + DataOut data_out; + + data_out.attach_dof_handler(dof_handler); + data_out.add_data_vector(manifold_id, "manifold_id"); + data_out.build_patches(); + + const std::string filename = + "output_" + Utilities::int_to_string(dim) + ".vtu"; + std::ofstream output(filename.c_str()); + data_out.write_vtu(output); + } +} + + +int +main() +{ + initlog(); + + deallog.push("2d"); + test<2>(); + deallog.pop(); + + deallog.push("3d"); + test<3>(); + deallog.pop(); +} diff --git a/tests/grid/grid_generator_plate_with_a_hole_2.output b/tests/grid/grid_generator_plate_with_a_hole_2.output new file mode 100644 index 0000000000..c9902aec6e --- /dev/null +++ b/tests/grid/grid_generator_plate_with_a_hole_2.output @@ -0,0 +1,641 @@ + +DEAL:2d::center: 8.20000 8.25000 boundary id: 0 manifold id: 4294967295 +DEAL:2d::center: 8.20000 8.75000 boundary id: 0 manifold id: 4294967295 +DEAL:2d::center: 8.20000 9.25000 boundary id: 0 manifold id: 4294967295 +DEAL:2d::center: 8.20000 9.75000 boundary id: 0 manifold id: 4294967295 +DEAL:2d::center: 8.20000 10.2500 boundary id: 0 manifold id: 4294967295 +DEAL:2d::center: 8.20000 10.7500 boundary id: 0 manifold id: 4294967295 +DEAL:2d::center: 8.20000 11.2500 boundary id: 0 manifold id: 4294967295 +DEAL:2d::center: 8.20000 11.7500 boundary id: 0 manifold id: 4294967295 +DEAL:2d::center: 8.20000 12.2500 boundary id: 0 manifold id: 4294967295 +DEAL:2d::center: 8.20000 12.7500 boundary id: 0 manifold id: 4294967295 +DEAL:2d::center: 12.2000 8.25000 boundary id: 1 manifold id: 4294967295 +DEAL:2d::center: 12.2000 8.75000 boundary id: 1 manifold id: 4294967295 +DEAL:2d::center: 12.2000 9.25000 boundary id: 1 manifold id: 4294967295 +DEAL:2d::center: 12.2000 9.75000 boundary id: 1 manifold id: 4294967295 +DEAL:2d::center: 12.2000 10.2500 boundary id: 1 manifold id: 4294967295 +DEAL:2d::center: 12.2000 10.7500 boundary id: 1 manifold id: 4294967295 +DEAL:2d::center: 12.2000 11.2500 boundary id: 1 manifold id: 4294967295 +DEAL:2d::center: 12.2000 11.7500 boundary id: 1 manifold id: 4294967295 +DEAL:2d::center: 12.2000 12.2500 boundary id: 1 manifold id: 4294967295 +DEAL:2d::center: 12.2000 12.7500 boundary id: 1 manifold id: 4294967295 +DEAL:2d::center: 8.40000 8.00000 boundary id: 2 manifold id: 4294967295 +DEAL:2d::center: 8.80000 8.00000 boundary id: 2 manifold id: 4294967295 +DEAL:2d::center: 9.25000 8.00000 boundary id: 2 manifold id: 4294967295 +DEAL:2d::center: 9.75000 8.00000 boundary id: 2 manifold id: 4294967295 +DEAL:2d::center: 10.2500 8.00000 boundary id: 2 manifold id: 4294967295 +DEAL:2d::center: 10.7500 8.00000 boundary id: 2 manifold id: 4294967295 +DEAL:2d::center: 11.3000 8.00000 boundary id: 2 manifold id: 4294967295 +DEAL:2d::center: 11.9000 8.00000 boundary id: 2 manifold id: 4294967295 +DEAL:2d::center: 8.40000 13.0000 boundary id: 3 manifold id: 4294967295 +DEAL:2d::center: 8.80000 13.0000 boundary id: 3 manifold id: 4294967295 +DEAL:2d::center: 9.25000 13.0000 boundary id: 3 manifold id: 4294967295 +DEAL:2d::center: 9.75000 13.0000 boundary id: 3 manifold id: 4294967295 +DEAL:2d::center: 10.2500 13.0000 boundary id: 3 manifold id: 4294967295 +DEAL:2d::center: 10.7500 13.0000 boundary id: 3 manifold id: 4294967295 +DEAL:2d::center: 11.3000 13.0000 boundary id: 3 manifold id: 4294967295 +DEAL:2d::center: 11.9000 13.0000 boundary id: 3 manifold id: 4294967295 +DEAL:2d::center: 9.61522 9.92346 boundary id: 4 manifold id: 2 +DEAL:2d::center: 9.61522 10.0765 boundary id: 4 manifold id: 2 +DEAL:2d::center: 9.67380 9.78204 boundary id: 4 manifold id: 2 +DEAL:2d::center: 9.67380 10.2180 boundary id: 4 manifold id: 2 +DEAL:2d::center: 9.78204 9.67380 boundary id: 4 manifold id: 2 +DEAL:2d::center: 9.78204 10.3262 boundary id: 4 manifold id: 2 +DEAL:2d::center: 9.92346 9.61522 boundary id: 4 manifold id: 2 +DEAL:2d::center: 9.92346 10.3848 boundary id: 4 manifold id: 2 +DEAL:2d::center: 10.0765 9.61522 boundary id: 4 manifold id: 2 +DEAL:2d::center: 10.0765 10.3848 boundary id: 4 manifold id: 2 +DEAL:2d::center: 10.2180 9.67380 boundary id: 4 manifold id: 2 +DEAL:2d::center: 10.2180 10.3262 boundary id: 4 manifold id: 2 +DEAL:2d::center: 10.3262 9.78204 boundary id: 4 manifold id: 2 +DEAL:2d::center: 10.3262 10.2180 boundary id: 4 manifold id: 2 +DEAL:2d::center: 10.3848 9.92346 boundary id: 4 manifold id: 2 +DEAL:2d::center: 10.3848 10.0765 boundary id: 4 manifold id: 2 +DEAL:2d:: +DEAL:2d:: +DEAL:2d::center: 8.80000 8.75000 manifold id: 4294967295 +DEAL:2d::center: 8.40000 8.75000 manifold id: 4294967295 +DEAL:2d::center: 8.80000 8.25000 manifold id: 4294967295 +DEAL:2d::center: 8.40000 8.25000 manifold id: 4294967295 +DEAL:2d::center: 9.75000 8.75000 manifold id: 4294967295 +DEAL:2d::center: 9.25000 8.75000 manifold id: 4294967295 +DEAL:2d::center: 9.75000 8.25000 manifold id: 4294967295 +DEAL:2d::center: 9.25000 8.25000 manifold id: 4294967295 +DEAL:2d::center: 10.7500 8.75000 manifold id: 4294967295 +DEAL:2d::center: 10.2500 8.75000 manifold id: 4294967295 +DEAL:2d::center: 10.7500 8.25000 manifold id: 4294967295 +DEAL:2d::center: 10.2500 8.25000 manifold id: 4294967295 +DEAL:2d::center: 11.9000 8.75000 manifold id: 4294967295 +DEAL:2d::center: 11.3000 8.75000 manifold id: 4294967295 +DEAL:2d::center: 11.9000 8.25000 manifold id: 4294967295 +DEAL:2d::center: 11.3000 8.25000 manifold id: 4294967295 +DEAL:2d::center: 8.80000 9.75000 manifold id: 4294967295 +DEAL:2d::center: 8.40000 9.75000 manifold id: 4294967295 +DEAL:2d::center: 8.80000 9.25000 manifold id: 4294967295 +DEAL:2d::center: 8.40000 9.25000 manifold id: 4294967295 +DEAL:2d::center: 11.9000 9.75000 manifold id: 4294967295 +DEAL:2d::center: 11.3000 9.75000 manifold id: 4294967295 +DEAL:2d::center: 11.9000 9.25000 manifold id: 4294967295 +DEAL:2d::center: 11.3000 9.25000 manifold id: 4294967295 +DEAL:2d::center: 8.80000 10.7500 manifold id: 4294967295 +DEAL:2d::center: 8.40000 10.7500 manifold id: 4294967295 +DEAL:2d::center: 8.80000 10.2500 manifold id: 4294967295 +DEAL:2d::center: 8.40000 10.2500 manifold id: 4294967295 +DEAL:2d::center: 11.9000 10.7500 manifold id: 4294967295 +DEAL:2d::center: 11.3000 10.7500 manifold id: 4294967295 +DEAL:2d::center: 11.9000 10.2500 manifold id: 4294967295 +DEAL:2d::center: 11.3000 10.2500 manifold id: 4294967295 +DEAL:2d::center: 8.80000 11.7500 manifold id: 4294967295 +DEAL:2d::center: 8.40000 11.7500 manifold id: 4294967295 +DEAL:2d::center: 8.80000 11.2500 manifold id: 4294967295 +DEAL:2d::center: 8.40000 11.2500 manifold id: 4294967295 +DEAL:2d::center: 9.75000 11.7500 manifold id: 4294967295 +DEAL:2d::center: 9.25000 11.7500 manifold id: 4294967295 +DEAL:2d::center: 9.75000 11.2500 manifold id: 4294967295 +DEAL:2d::center: 9.25000 11.2500 manifold id: 4294967295 +DEAL:2d::center: 10.7500 11.7500 manifold id: 4294967295 +DEAL:2d::center: 10.2500 11.7500 manifold id: 4294967295 +DEAL:2d::center: 10.7500 11.2500 manifold id: 4294967295 +DEAL:2d::center: 10.2500 11.2500 manifold id: 4294967295 +DEAL:2d::center: 11.9000 11.7500 manifold id: 4294967295 +DEAL:2d::center: 11.3000 11.7500 manifold id: 4294967295 +DEAL:2d::center: 11.9000 11.2500 manifold id: 4294967295 +DEAL:2d::center: 11.3000 11.2500 manifold id: 4294967295 +DEAL:2d::center: 8.80000 12.7500 manifold id: 4294967295 +DEAL:2d::center: 8.40000 12.7500 manifold id: 4294967295 +DEAL:2d::center: 8.80000 12.2500 manifold id: 4294967295 +DEAL:2d::center: 8.40000 12.2500 manifold id: 4294967295 +DEAL:2d::center: 9.75000 12.7500 manifold id: 4294967295 +DEAL:2d::center: 9.25000 12.7500 manifold id: 4294967295 +DEAL:2d::center: 9.75000 12.2500 manifold id: 4294967295 +DEAL:2d::center: 9.25000 12.2500 manifold id: 4294967295 +DEAL:2d::center: 10.7500 12.7500 manifold id: 4294967295 +DEAL:2d::center: 10.2500 12.7500 manifold id: 4294967295 +DEAL:2d::center: 10.7500 12.2500 manifold id: 4294967295 +DEAL:2d::center: 10.2500 12.2500 manifold id: 4294967295 +DEAL:2d::center: 11.9000 12.7500 manifold id: 4294967295 +DEAL:2d::center: 11.3000 12.7500 manifold id: 4294967295 +DEAL:2d::center: 11.9000 12.2500 manifold id: 4294967295 +DEAL:2d::center: 11.3000 12.2500 manifold id: 4294967295 +DEAL:2d::center: 10.4946 10.3510 manifold id: 3 +DEAL:2d::center: 10.5386 10.1199 manifold id: 3 +DEAL:2d::center: 10.8315 10.6170 manifold id: 3 +DEAL:2d::center: 10.8462 10.2066 manifold id: 3 +DEAL:2d::center: 10.3510 10.4946 manifold id: 3 +DEAL:2d::center: 10.6170 10.8315 manifold id: 3 +DEAL:2d::center: 10.1199 10.5386 manifold id: 3 +DEAL:2d::center: 10.2066 10.8462 manifold id: 3 +DEAL:2d::center: 9.88010 10.5386 manifold id: 3 +DEAL:2d::center: 9.79337 10.8462 manifold id: 3 +DEAL:2d::center: 9.64903 10.4946 manifold id: 3 +DEAL:2d::center: 9.38301 10.8315 manifold id: 3 +DEAL:2d::center: 9.50535 10.3510 manifold id: 3 +DEAL:2d::center: 9.16845 10.6170 manifold id: 3 +DEAL:2d::center: 9.46142 10.1199 manifold id: 3 +DEAL:2d::center: 9.15381 10.2066 manifold id: 3 +DEAL:2d::center: 9.46142 9.88010 manifold id: 3 +DEAL:2d::center: 9.15381 9.79337 manifold id: 3 +DEAL:2d::center: 9.50535 9.64903 manifold id: 3 +DEAL:2d::center: 9.16845 9.38301 manifold id: 3 +DEAL:2d::center: 9.88010 9.46142 manifold id: 3 +DEAL:2d::center: 9.64903 9.50535 manifold id: 3 +DEAL:2d::center: 9.79337 9.15381 manifold id: 3 +DEAL:2d::center: 9.38301 9.16845 manifold id: 3 +DEAL:2d::center: 10.3510 9.50535 manifold id: 3 +DEAL:2d::center: 10.1199 9.46142 manifold id: 3 +DEAL:2d::center: 10.6170 9.16845 manifold id: 3 +DEAL:2d::center: 10.2066 9.15381 manifold id: 3 +DEAL:2d::center: 10.5386 9.88010 manifold id: 3 +DEAL:2d::center: 10.4946 9.64903 manifold id: 3 +DEAL:2d::center: 10.8462 9.79337 manifold id: 3 +DEAL:2d::center: 10.8315 9.38301 manifold id: 3 +DEAL:3d::center: 8.20000 8.25000 9.75000 boundary id: 0 manifold id: 4294967295 +DEAL:3d::center: 8.20000 8.25000 10.2500 boundary id: 0 manifold id: 4294967295 +DEAL:3d::center: 8.20000 8.75000 9.75000 boundary id: 0 manifold id: 4294967295 +DEAL:3d::center: 8.20000 8.75000 10.2500 boundary id: 0 manifold id: 4294967295 +DEAL:3d::center: 8.20000 9.25000 9.75000 boundary id: 0 manifold id: 4294967295 +DEAL:3d::center: 8.20000 9.25000 10.2500 boundary id: 0 manifold id: 4294967295 +DEAL:3d::center: 8.20000 9.75000 9.75000 boundary id: 0 manifold id: 4294967295 +DEAL:3d::center: 8.20000 9.75000 10.2500 boundary id: 0 manifold id: 4294967295 +DEAL:3d::center: 8.20000 10.2500 9.75000 boundary id: 0 manifold id: 4294967295 +DEAL:3d::center: 8.20000 10.2500 10.2500 boundary id: 0 manifold id: 4294967295 +DEAL:3d::center: 8.20000 10.7500 9.75000 boundary id: 0 manifold id: 4294967295 +DEAL:3d::center: 8.20000 10.7500 10.2500 boundary id: 0 manifold id: 4294967295 +DEAL:3d::center: 8.20000 11.2500 9.75000 boundary id: 0 manifold id: 4294967295 +DEAL:3d::center: 8.20000 11.2500 10.2500 boundary id: 0 manifold id: 4294967295 +DEAL:3d::center: 8.20000 11.7500 9.75000 boundary id: 0 manifold id: 4294967295 +DEAL:3d::center: 8.20000 11.7500 10.2500 boundary id: 0 manifold id: 4294967295 +DEAL:3d::center: 8.20000 12.2500 9.75000 boundary id: 0 manifold id: 4294967295 +DEAL:3d::center: 8.20000 12.2500 10.2500 boundary id: 0 manifold id: 4294967295 +DEAL:3d::center: 8.20000 12.7500 9.75000 boundary id: 0 manifold id: 4294967295 +DEAL:3d::center: 8.20000 12.7500 10.2500 boundary id: 0 manifold id: 4294967295 +DEAL:3d::center: 12.2000 8.25000 9.75000 boundary id: 1 manifold id: 4294967295 +DEAL:3d::center: 12.2000 8.25000 10.2500 boundary id: 1 manifold id: 4294967295 +DEAL:3d::center: 12.2000 8.75000 9.75000 boundary id: 1 manifold id: 4294967295 +DEAL:3d::center: 12.2000 8.75000 10.2500 boundary id: 1 manifold id: 4294967295 +DEAL:3d::center: 12.2000 9.25000 9.75000 boundary id: 1 manifold id: 4294967295 +DEAL:3d::center: 12.2000 9.25000 10.2500 boundary id: 1 manifold id: 4294967295 +DEAL:3d::center: 12.2000 9.75000 9.75000 boundary id: 1 manifold id: 4294967295 +DEAL:3d::center: 12.2000 9.75000 10.2500 boundary id: 1 manifold id: 4294967295 +DEAL:3d::center: 12.2000 10.2500 9.75000 boundary id: 1 manifold id: 4294967295 +DEAL:3d::center: 12.2000 10.2500 10.2500 boundary id: 1 manifold id: 4294967295 +DEAL:3d::center: 12.2000 10.7500 9.75000 boundary id: 1 manifold id: 4294967295 +DEAL:3d::center: 12.2000 10.7500 10.2500 boundary id: 1 manifold id: 4294967295 +DEAL:3d::center: 12.2000 11.2500 9.75000 boundary id: 1 manifold id: 4294967295 +DEAL:3d::center: 12.2000 11.2500 10.2500 boundary id: 1 manifold id: 4294967295 +DEAL:3d::center: 12.2000 11.7500 9.75000 boundary id: 1 manifold id: 4294967295 +DEAL:3d::center: 12.2000 11.7500 10.2500 boundary id: 1 manifold id: 4294967295 +DEAL:3d::center: 12.2000 12.2500 9.75000 boundary id: 1 manifold id: 4294967295 +DEAL:3d::center: 12.2000 12.2500 10.2500 boundary id: 1 manifold id: 4294967295 +DEAL:3d::center: 12.2000 12.7500 9.75000 boundary id: 1 manifold id: 4294967295 +DEAL:3d::center: 12.2000 12.7500 10.2500 boundary id: 1 manifold id: 4294967295 +DEAL:3d::center: 8.40000 8.00000 9.75000 boundary id: 2 manifold id: 4294967295 +DEAL:3d::center: 8.40000 8.00000 10.2500 boundary id: 2 manifold id: 4294967295 +DEAL:3d::center: 8.80000 8.00000 9.75000 boundary id: 2 manifold id: 4294967295 +DEAL:3d::center: 8.80000 8.00000 10.2500 boundary id: 2 manifold id: 4294967295 +DEAL:3d::center: 9.25000 8.00000 9.75000 boundary id: 2 manifold id: 4294967295 +DEAL:3d::center: 9.25000 8.00000 10.2500 boundary id: 2 manifold id: 4294967295 +DEAL:3d::center: 9.75000 8.00000 9.75000 boundary id: 2 manifold id: 4294967295 +DEAL:3d::center: 9.75000 8.00000 10.2500 boundary id: 2 manifold id: 4294967295 +DEAL:3d::center: 10.2500 8.00000 9.75000 boundary id: 2 manifold id: 4294967295 +DEAL:3d::center: 10.2500 8.00000 10.2500 boundary id: 2 manifold id: 4294967295 +DEAL:3d::center: 10.7500 8.00000 9.75000 boundary id: 2 manifold id: 4294967295 +DEAL:3d::center: 10.7500 8.00000 10.2500 boundary id: 2 manifold id: 4294967295 +DEAL:3d::center: 11.3000 8.00000 9.75000 boundary id: 2 manifold id: 4294967295 +DEAL:3d::center: 11.3000 8.00000 10.2500 boundary id: 2 manifold id: 4294967295 +DEAL:3d::center: 11.9000 8.00000 9.75000 boundary id: 2 manifold id: 4294967295 +DEAL:3d::center: 11.9000 8.00000 10.2500 boundary id: 2 manifold id: 4294967295 +DEAL:3d::center: 8.40000 13.0000 9.75000 boundary id: 3 manifold id: 4294967295 +DEAL:3d::center: 8.40000 13.0000 10.2500 boundary id: 3 manifold id: 4294967295 +DEAL:3d::center: 8.80000 13.0000 9.75000 boundary id: 3 manifold id: 4294967295 +DEAL:3d::center: 8.80000 13.0000 10.2500 boundary id: 3 manifold id: 4294967295 +DEAL:3d::center: 9.25000 13.0000 9.75000 boundary id: 3 manifold id: 4294967295 +DEAL:3d::center: 9.25000 13.0000 10.2500 boundary id: 3 manifold id: 4294967295 +DEAL:3d::center: 9.75000 13.0000 9.75000 boundary id: 3 manifold id: 4294967295 +DEAL:3d::center: 9.75000 13.0000 10.2500 boundary id: 3 manifold id: 4294967295 +DEAL:3d::center: 10.2500 13.0000 9.75000 boundary id: 3 manifold id: 4294967295 +DEAL:3d::center: 10.2500 13.0000 10.2500 boundary id: 3 manifold id: 4294967295 +DEAL:3d::center: 10.7500 13.0000 9.75000 boundary id: 3 manifold id: 4294967295 +DEAL:3d::center: 10.7500 13.0000 10.2500 boundary id: 3 manifold id: 4294967295 +DEAL:3d::center: 11.3000 13.0000 9.75000 boundary id: 3 manifold id: 4294967295 +DEAL:3d::center: 11.3000 13.0000 10.2500 boundary id: 3 manifold id: 4294967295 +DEAL:3d::center: 11.9000 13.0000 9.75000 boundary id: 3 manifold id: 4294967295 +DEAL:3d::center: 11.9000 13.0000 10.2500 boundary id: 3 manifold id: 4294967295 +DEAL:3d::center: 9.61522 9.92346 9.75000 boundary id: 4 manifold id: 2 +DEAL:3d::center: 9.61522 9.92346 10.2500 boundary id: 4 manifold id: 2 +DEAL:3d::center: 9.61522 10.0765 9.75000 boundary id: 4 manifold id: 2 +DEAL:3d::center: 9.61522 10.0765 10.2500 boundary id: 4 manifold id: 2 +DEAL:3d::center: 9.67380 9.78204 9.75000 boundary id: 4 manifold id: 2 +DEAL:3d::center: 9.67380 9.78204 10.2500 boundary id: 4 manifold id: 2 +DEAL:3d::center: 9.67380 10.2180 9.75000 boundary id: 4 manifold id: 2 +DEAL:3d::center: 9.67380 10.2180 10.2500 boundary id: 4 manifold id: 2 +DEAL:3d::center: 9.78204 9.67380 9.75000 boundary id: 4 manifold id: 2 +DEAL:3d::center: 9.78204 9.67380 10.2500 boundary id: 4 manifold id: 2 +DEAL:3d::center: 9.78204 10.3262 9.75000 boundary id: 4 manifold id: 2 +DEAL:3d::center: 9.78204 10.3262 10.2500 boundary id: 4 manifold id: 2 +DEAL:3d::center: 9.92346 9.61522 9.75000 boundary id: 4 manifold id: 2 +DEAL:3d::center: 9.92346 9.61522 10.2500 boundary id: 4 manifold id: 2 +DEAL:3d::center: 9.92346 10.3848 9.75000 boundary id: 4 manifold id: 2 +DEAL:3d::center: 9.92346 10.3848 10.2500 boundary id: 4 manifold id: 2 +DEAL:3d::center: 10.0765 9.61522 9.75000 boundary id: 4 manifold id: 2 +DEAL:3d::center: 10.0765 9.61522 10.2500 boundary id: 4 manifold id: 2 +DEAL:3d::center: 10.0765 10.3848 9.75000 boundary id: 4 manifold id: 2 +DEAL:3d::center: 10.0765 10.3848 10.2500 boundary id: 4 manifold id: 2 +DEAL:3d::center: 10.2180 9.67380 9.75000 boundary id: 4 manifold id: 2 +DEAL:3d::center: 10.2180 9.67380 10.2500 boundary id: 4 manifold id: 2 +DEAL:3d::center: 10.2180 10.3262 9.75000 boundary id: 4 manifold id: 2 +DEAL:3d::center: 10.2180 10.3262 10.2500 boundary id: 4 manifold id: 2 +DEAL:3d::center: 10.3262 9.78204 9.75000 boundary id: 4 manifold id: 2 +DEAL:3d::center: 10.3262 9.78204 10.2500 boundary id: 4 manifold id: 2 +DEAL:3d::center: 10.3262 10.2180 9.75000 boundary id: 4 manifold id: 2 +DEAL:3d::center: 10.3262 10.2180 10.2500 boundary id: 4 manifold id: 2 +DEAL:3d::center: 10.3848 9.92346 9.75000 boundary id: 4 manifold id: 2 +DEAL:3d::center: 10.3848 9.92346 10.2500 boundary id: 4 manifold id: 2 +DEAL:3d::center: 10.3848 10.0765 9.75000 boundary id: 4 manifold id: 2 +DEAL:3d::center: 10.3848 10.0765 10.2500 boundary id: 4 manifold id: 2 +DEAL:3d::center: 8.40000 8.25000 9.50000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: 8.40000 8.75000 9.50000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: 8.40000 9.25000 9.50000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: 8.40000 9.75000 9.50000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: 8.40000 10.2500 9.50000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: 8.40000 10.7500 9.50000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: 8.40000 11.2500 9.50000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: 8.40000 11.7500 9.50000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: 8.40000 12.2500 9.50000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: 8.40000 12.7500 9.50000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: 8.80000 8.25000 9.50000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: 8.80000 8.75000 9.50000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: 8.80000 9.25000 9.50000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: 8.80000 9.75000 9.50000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: 8.80000 10.2500 9.50000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: 8.80000 10.7500 9.50000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: 8.80000 11.2500 9.50000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: 8.80000 11.7500 9.50000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: 8.80000 12.2500 9.50000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: 8.80000 12.7500 9.50000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: 9.15381 9.79337 9.50000 boundary id: 5 manifold id: 3 +DEAL:3d::center: 9.15381 10.2066 9.50000 boundary id: 5 manifold id: 3 +DEAL:3d::center: 9.16845 9.38301 9.50000 boundary id: 5 manifold id: 3 +DEAL:3d::center: 9.16845 10.6170 9.50000 boundary id: 5 manifold id: 3 +DEAL:3d::center: 9.25000 8.25000 9.50000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: 9.25000 8.75000 9.50000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: 9.25000 11.2500 9.50000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: 9.25000 11.7500 9.50000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: 9.25000 12.2500 9.50000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: 9.25000 12.7500 9.50000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: 9.38301 9.16845 9.50000 boundary id: 5 manifold id: 3 +DEAL:3d::center: 9.38301 10.8315 9.50000 boundary id: 5 manifold id: 3 +DEAL:3d::center: 9.46142 9.88010 9.50000 boundary id: 5 manifold id: 3 +DEAL:3d::center: 9.46142 10.1199 9.50000 boundary id: 5 manifold id: 3 +DEAL:3d::center: 9.50535 9.64903 9.50000 boundary id: 5 manifold id: 3 +DEAL:3d::center: 9.50535 10.3510 9.50000 boundary id: 5 manifold id: 3 +DEAL:3d::center: 9.64903 9.50535 9.50000 boundary id: 5 manifold id: 3 +DEAL:3d::center: 9.64903 10.4946 9.50000 boundary id: 5 manifold id: 3 +DEAL:3d::center: 9.75000 8.25000 9.50000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: 9.75000 8.75000 9.50000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: 9.75000 11.2500 9.50000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: 9.75000 11.7500 9.50000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: 9.75000 12.2500 9.50000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: 9.75000 12.7500 9.50000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: 9.79337 9.15381 9.50000 boundary id: 5 manifold id: 3 +DEAL:3d::center: 9.79337 10.8462 9.50000 boundary id: 5 manifold id: 3 +DEAL:3d::center: 9.88010 9.46142 9.50000 boundary id: 5 manifold id: 3 +DEAL:3d::center: 9.88010 10.5386 9.50000 boundary id: 5 manifold id: 3 +DEAL:3d::center: 10.1199 9.46142 9.50000 boundary id: 5 manifold id: 3 +DEAL:3d::center: 10.1199 10.5386 9.50000 boundary id: 5 manifold id: 3 +DEAL:3d::center: 10.2066 9.15381 9.50000 boundary id: 5 manifold id: 3 +DEAL:3d::center: 10.2066 10.8462 9.50000 boundary id: 5 manifold id: 3 +DEAL:3d::center: 10.2500 8.25000 9.50000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: 10.2500 8.75000 9.50000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: 10.2500 11.2500 9.50000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: 10.2500 11.7500 9.50000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: 10.2500 12.2500 9.50000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: 10.2500 12.7500 9.50000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: 10.3510 9.50535 9.50000 boundary id: 5 manifold id: 3 +DEAL:3d::center: 10.3510 10.4946 9.50000 boundary id: 5 manifold id: 3 +DEAL:3d::center: 10.4946 9.64903 9.50000 boundary id: 5 manifold id: 3 +DEAL:3d::center: 10.4946 10.3510 9.50000 boundary id: 5 manifold id: 3 +DEAL:3d::center: 10.5386 9.88010 9.50000 boundary id: 5 manifold id: 3 +DEAL:3d::center: 10.5386 10.1199 9.50000 boundary id: 5 manifold id: 3 +DEAL:3d::center: 10.6170 9.16845 9.50000 boundary id: 5 manifold id: 3 +DEAL:3d::center: 10.6170 10.8315 9.50000 boundary id: 5 manifold id: 3 +DEAL:3d::center: 10.7500 8.25000 9.50000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: 10.7500 8.75000 9.50000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: 10.7500 11.2500 9.50000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: 10.7500 11.7500 9.50000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: 10.7500 12.2500 9.50000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: 10.7500 12.7500 9.50000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: 10.8315 9.38301 9.50000 boundary id: 5 manifold id: 3 +DEAL:3d::center: 10.8315 10.6170 9.50000 boundary id: 5 manifold id: 3 +DEAL:3d::center: 10.8462 9.79337 9.50000 boundary id: 5 manifold id: 3 +DEAL:3d::center: 10.8462 10.2066 9.50000 boundary id: 5 manifold id: 3 +DEAL:3d::center: 11.3000 8.25000 9.50000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: 11.3000 8.75000 9.50000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: 11.3000 9.25000 9.50000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: 11.3000 9.75000 9.50000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: 11.3000 10.2500 9.50000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: 11.3000 10.7500 9.50000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: 11.3000 11.2500 9.50000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: 11.3000 11.7500 9.50000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: 11.3000 12.2500 9.50000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: 11.3000 12.7500 9.50000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: 11.9000 8.25000 9.50000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: 11.9000 8.75000 9.50000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: 11.9000 9.25000 9.50000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: 11.9000 9.75000 9.50000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: 11.9000 10.2500 9.50000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: 11.9000 10.7500 9.50000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: 11.9000 11.2500 9.50000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: 11.9000 11.7500 9.50000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: 11.9000 12.2500 9.50000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: 11.9000 12.7500 9.50000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: 8.40000 8.25000 10.5000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: 8.40000 8.75000 10.5000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: 8.40000 9.25000 10.5000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: 8.40000 9.75000 10.5000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: 8.40000 10.2500 10.5000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: 8.40000 10.7500 10.5000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: 8.40000 11.2500 10.5000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: 8.40000 11.7500 10.5000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: 8.40000 12.2500 10.5000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: 8.40000 12.7500 10.5000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: 8.80000 8.25000 10.5000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: 8.80000 8.75000 10.5000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: 8.80000 9.25000 10.5000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: 8.80000 9.75000 10.5000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: 8.80000 10.2500 10.5000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: 8.80000 10.7500 10.5000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: 8.80000 11.2500 10.5000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: 8.80000 11.7500 10.5000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: 8.80000 12.2500 10.5000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: 8.80000 12.7500 10.5000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: 9.15381 9.79337 10.5000 boundary id: 6 manifold id: 3 +DEAL:3d::center: 9.15381 10.2066 10.5000 boundary id: 6 manifold id: 3 +DEAL:3d::center: 9.16845 9.38301 10.5000 boundary id: 6 manifold id: 3 +DEAL:3d::center: 9.16845 10.6170 10.5000 boundary id: 6 manifold id: 3 +DEAL:3d::center: 9.25000 8.25000 10.5000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: 9.25000 8.75000 10.5000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: 9.25000 11.2500 10.5000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: 9.25000 11.7500 10.5000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: 9.25000 12.2500 10.5000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: 9.25000 12.7500 10.5000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: 9.38301 9.16845 10.5000 boundary id: 6 manifold id: 3 +DEAL:3d::center: 9.38301 10.8315 10.5000 boundary id: 6 manifold id: 3 +DEAL:3d::center: 9.46142 9.88010 10.5000 boundary id: 6 manifold id: 3 +DEAL:3d::center: 9.46142 10.1199 10.5000 boundary id: 6 manifold id: 3 +DEAL:3d::center: 9.50535 9.64903 10.5000 boundary id: 6 manifold id: 3 +DEAL:3d::center: 9.50535 10.3510 10.5000 boundary id: 6 manifold id: 3 +DEAL:3d::center: 9.64903 9.50535 10.5000 boundary id: 6 manifold id: 3 +DEAL:3d::center: 9.64903 10.4946 10.5000 boundary id: 6 manifold id: 3 +DEAL:3d::center: 9.75000 8.25000 10.5000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: 9.75000 8.75000 10.5000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: 9.75000 11.2500 10.5000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: 9.75000 11.7500 10.5000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: 9.75000 12.2500 10.5000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: 9.75000 12.7500 10.5000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: 9.79337 9.15381 10.5000 boundary id: 6 manifold id: 3 +DEAL:3d::center: 9.79337 10.8462 10.5000 boundary id: 6 manifold id: 3 +DEAL:3d::center: 9.88010 9.46142 10.5000 boundary id: 6 manifold id: 3 +DEAL:3d::center: 9.88010 10.5386 10.5000 boundary id: 6 manifold id: 3 +DEAL:3d::center: 10.1199 9.46142 10.5000 boundary id: 6 manifold id: 3 +DEAL:3d::center: 10.1199 10.5386 10.5000 boundary id: 6 manifold id: 3 +DEAL:3d::center: 10.2066 9.15381 10.5000 boundary id: 6 manifold id: 3 +DEAL:3d::center: 10.2066 10.8462 10.5000 boundary id: 6 manifold id: 3 +DEAL:3d::center: 10.2500 8.25000 10.5000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: 10.2500 8.75000 10.5000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: 10.2500 11.2500 10.5000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: 10.2500 11.7500 10.5000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: 10.2500 12.2500 10.5000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: 10.2500 12.7500 10.5000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: 10.3510 9.50535 10.5000 boundary id: 6 manifold id: 3 +DEAL:3d::center: 10.3510 10.4946 10.5000 boundary id: 6 manifold id: 3 +DEAL:3d::center: 10.4946 9.64903 10.5000 boundary id: 6 manifold id: 3 +DEAL:3d::center: 10.4946 10.3510 10.5000 boundary id: 6 manifold id: 3 +DEAL:3d::center: 10.5386 9.88010 10.5000 boundary id: 6 manifold id: 3 +DEAL:3d::center: 10.5386 10.1199 10.5000 boundary id: 6 manifold id: 3 +DEAL:3d::center: 10.6170 9.16845 10.5000 boundary id: 6 manifold id: 3 +DEAL:3d::center: 10.6170 10.8315 10.5000 boundary id: 6 manifold id: 3 +DEAL:3d::center: 10.7500 8.25000 10.5000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: 10.7500 8.75000 10.5000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: 10.7500 11.2500 10.5000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: 10.7500 11.7500 10.5000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: 10.7500 12.2500 10.5000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: 10.7500 12.7500 10.5000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: 10.8315 9.38301 10.5000 boundary id: 6 manifold id: 3 +DEAL:3d::center: 10.8315 10.6170 10.5000 boundary id: 6 manifold id: 3 +DEAL:3d::center: 10.8462 9.79337 10.5000 boundary id: 6 manifold id: 3 +DEAL:3d::center: 10.8462 10.2066 10.5000 boundary id: 6 manifold id: 3 +DEAL:3d::center: 11.3000 8.25000 10.5000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: 11.3000 8.75000 10.5000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: 11.3000 9.25000 10.5000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: 11.3000 9.75000 10.5000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: 11.3000 10.2500 10.5000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: 11.3000 10.7500 10.5000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: 11.3000 11.2500 10.5000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: 11.3000 11.7500 10.5000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: 11.3000 12.2500 10.5000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: 11.3000 12.7500 10.5000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: 11.9000 8.25000 10.5000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: 11.9000 8.75000 10.5000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: 11.9000 9.25000 10.5000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: 11.9000 9.75000 10.5000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: 11.9000 10.2500 10.5000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: 11.9000 10.7500 10.5000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: 11.9000 11.2500 10.5000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: 11.9000 11.7500 10.5000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: 11.9000 12.2500 10.5000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: 11.9000 12.7500 10.5000 boundary id: 6 manifold id: 4294967295 +DEAL:3d:: +DEAL:3d:: +DEAL:3d::center: 8.80000 8.75000 9.75000 manifold id: 4294967295 +DEAL:3d::center: 8.40000 8.75000 9.75000 manifold id: 4294967295 +DEAL:3d::center: 8.80000 8.25000 9.75000 manifold id: 4294967295 +DEAL:3d::center: 8.40000 8.25000 9.75000 manifold id: 4294967295 +DEAL:3d::center: 8.80000 8.75000 10.2500 manifold id: 4294967295 +DEAL:3d::center: 8.40000 8.75000 10.2500 manifold id: 4294967295 +DEAL:3d::center: 8.80000 8.25000 10.2500 manifold id: 4294967295 +DEAL:3d::center: 8.40000 8.25000 10.2500 manifold id: 4294967295 +DEAL:3d::center: 9.75000 8.75000 9.75000 manifold id: 4294967295 +DEAL:3d::center: 9.25000 8.75000 9.75000 manifold id: 4294967295 +DEAL:3d::center: 9.75000 8.25000 9.75000 manifold id: 4294967295 +DEAL:3d::center: 9.25000 8.25000 9.75000 manifold id: 4294967295 +DEAL:3d::center: 9.75000 8.75000 10.2500 manifold id: 4294967295 +DEAL:3d::center: 9.25000 8.75000 10.2500 manifold id: 4294967295 +DEAL:3d::center: 9.75000 8.25000 10.2500 manifold id: 4294967295 +DEAL:3d::center: 9.25000 8.25000 10.2500 manifold id: 4294967295 +DEAL:3d::center: 10.7500 8.75000 9.75000 manifold id: 4294967295 +DEAL:3d::center: 10.2500 8.75000 9.75000 manifold id: 4294967295 +DEAL:3d::center: 10.7500 8.25000 9.75000 manifold id: 4294967295 +DEAL:3d::center: 10.2500 8.25000 9.75000 manifold id: 4294967295 +DEAL:3d::center: 10.7500 8.75000 10.2500 manifold id: 4294967295 +DEAL:3d::center: 10.2500 8.75000 10.2500 manifold id: 4294967295 +DEAL:3d::center: 10.7500 8.25000 10.2500 manifold id: 4294967295 +DEAL:3d::center: 10.2500 8.25000 10.2500 manifold id: 4294967295 +DEAL:3d::center: 11.9000 8.75000 9.75000 manifold id: 4294967295 +DEAL:3d::center: 11.3000 8.75000 9.75000 manifold id: 4294967295 +DEAL:3d::center: 11.9000 8.25000 9.75000 manifold id: 4294967295 +DEAL:3d::center: 11.3000 8.25000 9.75000 manifold id: 4294967295 +DEAL:3d::center: 11.9000 8.75000 10.2500 manifold id: 4294967295 +DEAL:3d::center: 11.3000 8.75000 10.2500 manifold id: 4294967295 +DEAL:3d::center: 11.9000 8.25000 10.2500 manifold id: 4294967295 +DEAL:3d::center: 11.3000 8.25000 10.2500 manifold id: 4294967295 +DEAL:3d::center: 8.80000 9.75000 9.75000 manifold id: 4294967295 +DEAL:3d::center: 8.40000 9.75000 9.75000 manifold id: 4294967295 +DEAL:3d::center: 8.80000 9.25000 9.75000 manifold id: 4294967295 +DEAL:3d::center: 8.40000 9.25000 9.75000 manifold id: 4294967295 +DEAL:3d::center: 8.80000 9.75000 10.2500 manifold id: 4294967295 +DEAL:3d::center: 8.40000 9.75000 10.2500 manifold id: 4294967295 +DEAL:3d::center: 8.80000 9.25000 10.2500 manifold id: 4294967295 +DEAL:3d::center: 8.40000 9.25000 10.2500 manifold id: 4294967295 +DEAL:3d::center: 11.9000 9.75000 9.75000 manifold id: 4294967295 +DEAL:3d::center: 11.3000 9.75000 9.75000 manifold id: 4294967295 +DEAL:3d::center: 11.9000 9.25000 9.75000 manifold id: 4294967295 +DEAL:3d::center: 11.3000 9.25000 9.75000 manifold id: 4294967295 +DEAL:3d::center: 11.9000 9.75000 10.2500 manifold id: 4294967295 +DEAL:3d::center: 11.3000 9.75000 10.2500 manifold id: 4294967295 +DEAL:3d::center: 11.9000 9.25000 10.2500 manifold id: 4294967295 +DEAL:3d::center: 11.3000 9.25000 10.2500 manifold id: 4294967295 +DEAL:3d::center: 8.80000 10.7500 9.75000 manifold id: 4294967295 +DEAL:3d::center: 8.40000 10.7500 9.75000 manifold id: 4294967295 +DEAL:3d::center: 8.80000 10.2500 9.75000 manifold id: 4294967295 +DEAL:3d::center: 8.40000 10.2500 9.75000 manifold id: 4294967295 +DEAL:3d::center: 8.80000 10.7500 10.2500 manifold id: 4294967295 +DEAL:3d::center: 8.40000 10.7500 10.2500 manifold id: 4294967295 +DEAL:3d::center: 8.80000 10.2500 10.2500 manifold id: 4294967295 +DEAL:3d::center: 8.40000 10.2500 10.2500 manifold id: 4294967295 +DEAL:3d::center: 11.9000 10.7500 9.75000 manifold id: 4294967295 +DEAL:3d::center: 11.3000 10.7500 9.75000 manifold id: 4294967295 +DEAL:3d::center: 11.9000 10.2500 9.75000 manifold id: 4294967295 +DEAL:3d::center: 11.3000 10.2500 9.75000 manifold id: 4294967295 +DEAL:3d::center: 11.9000 10.7500 10.2500 manifold id: 4294967295 +DEAL:3d::center: 11.3000 10.7500 10.2500 manifold id: 4294967295 +DEAL:3d::center: 11.9000 10.2500 10.2500 manifold id: 4294967295 +DEAL:3d::center: 11.3000 10.2500 10.2500 manifold id: 4294967295 +DEAL:3d::center: 8.80000 11.7500 9.75000 manifold id: 4294967295 +DEAL:3d::center: 8.40000 11.7500 9.75000 manifold id: 4294967295 +DEAL:3d::center: 8.80000 11.2500 9.75000 manifold id: 4294967295 +DEAL:3d::center: 8.40000 11.2500 9.75000 manifold id: 4294967295 +DEAL:3d::center: 8.80000 11.7500 10.2500 manifold id: 4294967295 +DEAL:3d::center: 8.40000 11.7500 10.2500 manifold id: 4294967295 +DEAL:3d::center: 8.80000 11.2500 10.2500 manifold id: 4294967295 +DEAL:3d::center: 8.40000 11.2500 10.2500 manifold id: 4294967295 +DEAL:3d::center: 9.75000 11.7500 9.75000 manifold id: 4294967295 +DEAL:3d::center: 9.25000 11.7500 9.75000 manifold id: 4294967295 +DEAL:3d::center: 9.75000 11.2500 9.75000 manifold id: 4294967295 +DEAL:3d::center: 9.25000 11.2500 9.75000 manifold id: 4294967295 +DEAL:3d::center: 9.75000 11.7500 10.2500 manifold id: 4294967295 +DEAL:3d::center: 9.25000 11.7500 10.2500 manifold id: 4294967295 +DEAL:3d::center: 9.75000 11.2500 10.2500 manifold id: 4294967295 +DEAL:3d::center: 9.25000 11.2500 10.2500 manifold id: 4294967295 +DEAL:3d::center: 10.7500 11.7500 9.75000 manifold id: 4294967295 +DEAL:3d::center: 10.2500 11.7500 9.75000 manifold id: 4294967295 +DEAL:3d::center: 10.7500 11.2500 9.75000 manifold id: 4294967295 +DEAL:3d::center: 10.2500 11.2500 9.75000 manifold id: 4294967295 +DEAL:3d::center: 10.7500 11.7500 10.2500 manifold id: 4294967295 +DEAL:3d::center: 10.2500 11.7500 10.2500 manifold id: 4294967295 +DEAL:3d::center: 10.7500 11.2500 10.2500 manifold id: 4294967295 +DEAL:3d::center: 10.2500 11.2500 10.2500 manifold id: 4294967295 +DEAL:3d::center: 11.9000 11.7500 9.75000 manifold id: 4294967295 +DEAL:3d::center: 11.3000 11.7500 9.75000 manifold id: 4294967295 +DEAL:3d::center: 11.9000 11.2500 9.75000 manifold id: 4294967295 +DEAL:3d::center: 11.3000 11.2500 9.75000 manifold id: 4294967295 +DEAL:3d::center: 11.9000 11.7500 10.2500 manifold id: 4294967295 +DEAL:3d::center: 11.3000 11.7500 10.2500 manifold id: 4294967295 +DEAL:3d::center: 11.9000 11.2500 10.2500 manifold id: 4294967295 +DEAL:3d::center: 11.3000 11.2500 10.2500 manifold id: 4294967295 +DEAL:3d::center: 8.80000 12.7500 9.75000 manifold id: 4294967295 +DEAL:3d::center: 8.40000 12.7500 9.75000 manifold id: 4294967295 +DEAL:3d::center: 8.80000 12.2500 9.75000 manifold id: 4294967295 +DEAL:3d::center: 8.40000 12.2500 9.75000 manifold id: 4294967295 +DEAL:3d::center: 8.80000 12.7500 10.2500 manifold id: 4294967295 +DEAL:3d::center: 8.40000 12.7500 10.2500 manifold id: 4294967295 +DEAL:3d::center: 8.80000 12.2500 10.2500 manifold id: 4294967295 +DEAL:3d::center: 8.40000 12.2500 10.2500 manifold id: 4294967295 +DEAL:3d::center: 9.75000 12.7500 9.75000 manifold id: 4294967295 +DEAL:3d::center: 9.25000 12.7500 9.75000 manifold id: 4294967295 +DEAL:3d::center: 9.75000 12.2500 9.75000 manifold id: 4294967295 +DEAL:3d::center: 9.25000 12.2500 9.75000 manifold id: 4294967295 +DEAL:3d::center: 9.75000 12.7500 10.2500 manifold id: 4294967295 +DEAL:3d::center: 9.25000 12.7500 10.2500 manifold id: 4294967295 +DEAL:3d::center: 9.75000 12.2500 10.2500 manifold id: 4294967295 +DEAL:3d::center: 9.25000 12.2500 10.2500 manifold id: 4294967295 +DEAL:3d::center: 10.7500 12.7500 9.75000 manifold id: 4294967295 +DEAL:3d::center: 10.2500 12.7500 9.75000 manifold id: 4294967295 +DEAL:3d::center: 10.7500 12.2500 9.75000 manifold id: 4294967295 +DEAL:3d::center: 10.2500 12.2500 9.75000 manifold id: 4294967295 +DEAL:3d::center: 10.7500 12.7500 10.2500 manifold id: 4294967295 +DEAL:3d::center: 10.2500 12.7500 10.2500 manifold id: 4294967295 +DEAL:3d::center: 10.7500 12.2500 10.2500 manifold id: 4294967295 +DEAL:3d::center: 10.2500 12.2500 10.2500 manifold id: 4294967295 +DEAL:3d::center: 11.9000 12.7500 9.75000 manifold id: 4294967295 +DEAL:3d::center: 11.3000 12.7500 9.75000 manifold id: 4294967295 +DEAL:3d::center: 11.9000 12.2500 9.75000 manifold id: 4294967295 +DEAL:3d::center: 11.3000 12.2500 9.75000 manifold id: 4294967295 +DEAL:3d::center: 11.9000 12.7500 10.2500 manifold id: 4294967295 +DEAL:3d::center: 11.3000 12.7500 10.2500 manifold id: 4294967295 +DEAL:3d::center: 11.9000 12.2500 10.2500 manifold id: 4294967295 +DEAL:3d::center: 11.3000 12.2500 10.2500 manifold id: 4294967295 +DEAL:3d::center: 10.4946 10.3510 9.75000 manifold id: 3 +DEAL:3d::center: 10.5386 10.1199 9.75000 manifold id: 3 +DEAL:3d::center: 10.8315 10.6170 9.75000 manifold id: 3 +DEAL:3d::center: 10.8462 10.2066 9.75000 manifold id: 3 +DEAL:3d::center: 10.4946 10.3510 10.2500 manifold id: 3 +DEAL:3d::center: 10.5386 10.1199 10.2500 manifold id: 3 +DEAL:3d::center: 10.8315 10.6170 10.2500 manifold id: 3 +DEAL:3d::center: 10.8462 10.2066 10.2500 manifold id: 3 +DEAL:3d::center: 10.3510 10.4946 9.75000 manifold id: 3 +DEAL:3d::center: 10.6170 10.8315 9.75000 manifold id: 3 +DEAL:3d::center: 10.1199 10.5386 9.75000 manifold id: 3 +DEAL:3d::center: 10.2066 10.8462 9.75000 manifold id: 3 +DEAL:3d::center: 10.3510 10.4946 10.2500 manifold id: 3 +DEAL:3d::center: 10.6170 10.8315 10.2500 manifold id: 3 +DEAL:3d::center: 10.1199 10.5386 10.2500 manifold id: 3 +DEAL:3d::center: 10.2066 10.8462 10.2500 manifold id: 3 +DEAL:3d::center: 9.88010 10.5386 9.75000 manifold id: 3 +DEAL:3d::center: 9.79337 10.8462 9.75000 manifold id: 3 +DEAL:3d::center: 9.64903 10.4946 9.75000 manifold id: 3 +DEAL:3d::center: 9.38301 10.8315 9.75000 manifold id: 3 +DEAL:3d::center: 9.88010 10.5386 10.2500 manifold id: 3 +DEAL:3d::center: 9.79337 10.8462 10.2500 manifold id: 3 +DEAL:3d::center: 9.64903 10.4946 10.2500 manifold id: 3 +DEAL:3d::center: 9.38301 10.8315 10.2500 manifold id: 3 +DEAL:3d::center: 9.50535 10.3510 9.75000 manifold id: 3 +DEAL:3d::center: 9.16845 10.6170 9.75000 manifold id: 3 +DEAL:3d::center: 9.46142 10.1199 9.75000 manifold id: 3 +DEAL:3d::center: 9.15381 10.2066 9.75000 manifold id: 3 +DEAL:3d::center: 9.50535 10.3510 10.2500 manifold id: 3 +DEAL:3d::center: 9.16845 10.6170 10.2500 manifold id: 3 +DEAL:3d::center: 9.46142 10.1199 10.2500 manifold id: 3 +DEAL:3d::center: 9.15381 10.2066 10.2500 manifold id: 3 +DEAL:3d::center: 9.46142 9.88010 9.75000 manifold id: 3 +DEAL:3d::center: 9.15381 9.79337 9.75000 manifold id: 3 +DEAL:3d::center: 9.50535 9.64903 9.75000 manifold id: 3 +DEAL:3d::center: 9.16845 9.38301 9.75000 manifold id: 3 +DEAL:3d::center: 9.46142 9.88010 10.2500 manifold id: 3 +DEAL:3d::center: 9.15381 9.79337 10.2500 manifold id: 3 +DEAL:3d::center: 9.50535 9.64903 10.2500 manifold id: 3 +DEAL:3d::center: 9.16845 9.38301 10.2500 manifold id: 3 +DEAL:3d::center: 9.88010 9.46142 9.75000 manifold id: 3 +DEAL:3d::center: 9.64903 9.50535 9.75000 manifold id: 3 +DEAL:3d::center: 9.79337 9.15381 9.75000 manifold id: 3 +DEAL:3d::center: 9.38301 9.16845 9.75000 manifold id: 3 +DEAL:3d::center: 9.88010 9.46142 10.2500 manifold id: 3 +DEAL:3d::center: 9.64903 9.50535 10.2500 manifold id: 3 +DEAL:3d::center: 9.79337 9.15381 10.2500 manifold id: 3 +DEAL:3d::center: 9.38301 9.16845 10.2500 manifold id: 3 +DEAL:3d::center: 10.3510 9.50535 9.75000 manifold id: 3 +DEAL:3d::center: 10.1199 9.46142 9.75000 manifold id: 3 +DEAL:3d::center: 10.6170 9.16845 9.75000 manifold id: 3 +DEAL:3d::center: 10.2066 9.15381 9.75000 manifold id: 3 +DEAL:3d::center: 10.3510 9.50535 10.2500 manifold id: 3 +DEAL:3d::center: 10.1199 9.46142 10.2500 manifold id: 3 +DEAL:3d::center: 10.6170 9.16845 10.2500 manifold id: 3 +DEAL:3d::center: 10.2066 9.15381 10.2500 manifold id: 3 +DEAL:3d::center: 10.5386 9.88010 9.75000 manifold id: 3 +DEAL:3d::center: 10.4946 9.64903 9.75000 manifold id: 3 +DEAL:3d::center: 10.8462 9.79337 9.75000 manifold id: 3 +DEAL:3d::center: 10.8315 9.38301 9.75000 manifold id: 3 +DEAL:3d::center: 10.5386 9.88010 10.2500 manifold id: 3 +DEAL:3d::center: 10.4946 9.64903 10.2500 manifold id: 3 +DEAL:3d::center: 10.8462 9.79337 10.2500 manifold id: 3 +DEAL:3d::center: 10.8315 9.38301 10.2500 manifold id: 3 diff --git a/tests/grid/grid_generator_plate_with_a_hole_3.cc b/tests/grid/grid_generator_plate_with_a_hole_3.cc new file mode 100644 index 0000000000..a4894250aa --- /dev/null +++ b/tests/grid/grid_generator_plate_with_a_hole_3.cc @@ -0,0 +1,125 @@ +// --------------------------------------------------------------------- +// +// Copyright (C) 2005 - 2018 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. +// +// --------------------------------------------------------------------- + + + +// Same as GridGenerator::plate_with_a_hole() but with very small padding + +#include + +#include + +#include +#include + +#include + +#include "../tests.h" + +template +void +test() +{ + Point new_center; + for (unsigned int d = 0; d < dim; ++d) + new_center[d] = 0.; + + Triangulation triangulation; + GridGenerator::plate_with_a_hole( + triangulation, 0.4, 1., 0.1, 0.2, 0, 0, new_center, 0, 1, 1., 2, true); + + triangulation.refine_global(1); + + using Tuple = std::tuple, types::boundary_id, types::manifold_id>; + std::vector boundary_faces; + + for (const auto &cell : triangulation.active_cell_iterators()) + for (unsigned int face_n = 0; face_n < GeometryInfo::faces_per_cell; + ++face_n) + if (cell->face(face_n)->at_boundary()) + boundary_faces.push_back( + std::make_tuple(cell->face(face_n)->center(), + cell->face(face_n)->boundary_id(), + cell->face(face_n)->manifold_id())); + + // see dof_tools.cc internal::ComparisonHelper + std::sort(begin(boundary_faces), + end(boundary_faces), + [](const Tuple &t1, const Tuple &t2) { + const auto &b1 = std::get<1>(t1); + const auto &b2 = std::get<1>(t2); + if (b1 != b2) + return b1 < b2; + + const auto &p1 = std::get<0>(t1); + const auto &p2 = std::get<0>(t2); + + for (unsigned int d = 0; d < dim; ++d) + if (std::abs(p1[d] - p2[d]) > 1e-8) + return p1[d] < p2[d]; + + return std::get<2>(t1) < std::get<2>(t2); + }); + + for (const auto el : boundary_faces) + deallog << "center: " << std::get<0>(el) + << " boundary id: " << std::get<1>(el) + << " manifold id: " << std::get<2>(el) << std::endl; + + deallog << std::endl << std::endl; + Vector manifold_id(triangulation.n_active_cells()); + unsigned int index = 0; + for (const auto &cell : triangulation.active_cell_iterators()) + { + deallog << "center: " << cell->center() + << " manifold id: " << cell->manifold_id() << std::endl; + manifold_id[index] = cell->manifold_id(); + index++; + } + + // write in vtk for visual inspection + if (true) + { + DoFHandler dof_handler(triangulation); + FE_Q fe(1); + dof_handler.distribute_dofs(fe); + + DataOut data_out; + + data_out.attach_dof_handler(dof_handler); + data_out.add_data_vector(manifold_id, "manifold_id"); + data_out.build_patches(); + + const std::string filename = + "output_" + Utilities::int_to_string(dim) + ".vtu"; + std::ofstream output(filename.c_str()); + data_out.write_vtu(output); + } +} + + +int +main() +{ + initlog(); + + deallog.push("2d"); + test<2>(); + deallog.pop(); + + deallog.push("3d"); + test<3>(); + deallog.pop(); +} diff --git a/tests/grid/grid_generator_plate_with_a_hole_3.output b/tests/grid/grid_generator_plate_with_a_hole_3.output new file mode 100644 index 0000000000..8979217612 --- /dev/null +++ b/tests/grid/grid_generator_plate_with_a_hole_3.output @@ -0,0 +1,365 @@ + +DEAL:2d::center: -1.00000 -1.07500 boundary id: 0 manifold id: 4294967295 +DEAL:2d::center: -1.00000 -1.02500 boundary id: 0 manifold id: 4294967295 +DEAL:2d::center: -1.00000 -0.750000 boundary id: 0 manifold id: 1 +DEAL:2d::center: -1.00000 -0.250000 boundary id: 0 manifold id: 1 +DEAL:2d::center: -1.00000 0.250000 boundary id: 0 manifold id: 1 +DEAL:2d::center: -1.00000 0.750000 boundary id: 0 manifold id: 1 +DEAL:2d::center: -1.00000 1.05000 boundary id: 0 manifold id: 4294967295 +DEAL:2d::center: -1.00000 1.15000 boundary id: 0 manifold id: 4294967295 +DEAL:2d::center: 1.00000 -1.07500 boundary id: 1 manifold id: 4294967295 +DEAL:2d::center: 1.00000 -1.02500 boundary id: 1 manifold id: 4294967295 +DEAL:2d::center: 1.00000 -0.750000 boundary id: 1 manifold id: 1 +DEAL:2d::center: 1.00000 -0.250000 boundary id: 1 manifold id: 1 +DEAL:2d::center: 1.00000 0.250000 boundary id: 1 manifold id: 1 +DEAL:2d::center: 1.00000 0.750000 boundary id: 1 manifold id: 1 +DEAL:2d::center: 1.00000 1.05000 boundary id: 1 manifold id: 4294967295 +DEAL:2d::center: 1.00000 1.15000 boundary id: 1 manifold id: 4294967295 +DEAL:2d::center: -0.750000 -1.10000 boundary id: 2 manifold id: 4294967295 +DEAL:2d::center: -0.250000 -1.10000 boundary id: 2 manifold id: 4294967295 +DEAL:2d::center: 0.250000 -1.10000 boundary id: 2 manifold id: 4294967295 +DEAL:2d::center: 0.750000 -1.10000 boundary id: 2 manifold id: 4294967295 +DEAL:2d::center: -0.750000 1.20000 boundary id: 3 manifold id: 4294967295 +DEAL:2d::center: -0.250000 1.20000 boundary id: 3 manifold id: 4294967295 +DEAL:2d::center: 0.250000 1.20000 boundary id: 3 manifold id: 4294967295 +DEAL:2d::center: 0.750000 1.20000 boundary id: 3 manifold id: 4294967295 +DEAL:2d::center: -0.384776 -0.0765367 boundary id: 4 manifold id: 0 +DEAL:2d::center: -0.384776 0.0765367 boundary id: 4 manifold id: 0 +DEAL:2d::center: -0.326197 -0.217958 boundary id: 4 manifold id: 0 +DEAL:2d::center: -0.326197 0.217958 boundary id: 4 manifold id: 0 +DEAL:2d::center: -0.217958 -0.326197 boundary id: 4 manifold id: 0 +DEAL:2d::center: -0.217958 0.326197 boundary id: 4 manifold id: 0 +DEAL:2d::center: -0.0765367 -0.384776 boundary id: 4 manifold id: 0 +DEAL:2d::center: -0.0765367 0.384776 boundary id: 4 manifold id: 0 +DEAL:2d::center: 0.0765367 -0.384776 boundary id: 4 manifold id: 0 +DEAL:2d::center: 0.0765367 0.384776 boundary id: 4 manifold id: 0 +DEAL:2d::center: 0.217958 -0.326197 boundary id: 4 manifold id: 0 +DEAL:2d::center: 0.217958 0.326197 boundary id: 4 manifold id: 0 +DEAL:2d::center: 0.326197 -0.217958 boundary id: 4 manifold id: 0 +DEAL:2d::center: 0.326197 0.217958 boundary id: 4 manifold id: 0 +DEAL:2d::center: 0.384776 -0.0765367 boundary id: 4 manifold id: 0 +DEAL:2d::center: 0.384776 0.0765367 boundary id: 4 manifold id: 0 +DEAL:2d:: +DEAL:2d:: +DEAL:2d::center: -0.250000 -1.02500 manifold id: 4294967295 +DEAL:2d::center: -0.750000 -1.02500 manifold id: 4294967295 +DEAL:2d::center: -0.250000 -1.07500 manifold id: 4294967295 +DEAL:2d::center: -0.750000 -1.07500 manifold id: 4294967295 +DEAL:2d::center: 0.750000 -1.02500 manifold id: 4294967295 +DEAL:2d::center: 0.250000 -1.02500 manifold id: 4294967295 +DEAL:2d::center: 0.750000 -1.07500 manifold id: 4294967295 +DEAL:2d::center: 0.250000 -1.07500 manifold id: 4294967295 +DEAL:2d::center: -0.250000 1.15000 manifold id: 4294967295 +DEAL:2d::center: -0.750000 1.15000 manifold id: 4294967295 +DEAL:2d::center: -0.250000 1.05000 manifold id: 4294967295 +DEAL:2d::center: -0.750000 1.05000 manifold id: 4294967295 +DEAL:2d::center: 0.750000 1.15000 manifold id: 4294967295 +DEAL:2d::center: 0.250000 1.15000 manifold id: 4294967295 +DEAL:2d::center: 0.750000 1.05000 manifold id: 4294967295 +DEAL:2d::center: 0.250000 1.05000 manifold id: 4294967295 +DEAL:2d::center: 0.494648 0.350969 manifold id: 1 +DEAL:2d::center: 0.538582 0.119903 manifold id: 1 +DEAL:2d::center: 0.831549 0.616990 manifold id: 1 +DEAL:2d::center: 0.846194 0.206634 manifold id: 1 +DEAL:2d::center: 0.350969 0.494648 manifold id: 1 +DEAL:2d::center: 0.616990 0.831549 manifold id: 1 +DEAL:2d::center: 0.119903 0.538582 manifold id: 1 +DEAL:2d::center: 0.206634 0.846194 manifold id: 1 +DEAL:2d::center: -0.119903 0.538582 manifold id: 1 +DEAL:2d::center: -0.206634 0.846194 manifold id: 1 +DEAL:2d::center: -0.350969 0.494648 manifold id: 1 +DEAL:2d::center: -0.616990 0.831549 manifold id: 1 +DEAL:2d::center: -0.538582 0.119903 manifold id: 1 +DEAL:2d::center: -0.494648 0.350969 manifold id: 1 +DEAL:2d::center: -0.846194 0.206634 manifold id: 1 +DEAL:2d::center: -0.831549 0.616990 manifold id: 1 +DEAL:2d::center: -0.494648 -0.350969 manifold id: 1 +DEAL:2d::center: -0.538582 -0.119903 manifold id: 1 +DEAL:2d::center: -0.831549 -0.616990 manifold id: 1 +DEAL:2d::center: -0.846194 -0.206634 manifold id: 1 +DEAL:2d::center: -0.119903 -0.538582 manifold id: 1 +DEAL:2d::center: -0.350969 -0.494648 manifold id: 1 +DEAL:2d::center: -0.206634 -0.846194 manifold id: 1 +DEAL:2d::center: -0.616990 -0.831549 manifold id: 1 +DEAL:2d::center: 0.350969 -0.494648 manifold id: 1 +DEAL:2d::center: 0.119903 -0.538582 manifold id: 1 +DEAL:2d::center: 0.616990 -0.831549 manifold id: 1 +DEAL:2d::center: 0.206634 -0.846194 manifold id: 1 +DEAL:2d::center: 0.538582 -0.119903 manifold id: 1 +DEAL:2d::center: 0.494648 -0.350969 manifold id: 1 +DEAL:2d::center: 0.846194 -0.206634 manifold id: 1 +DEAL:2d::center: 0.831549 -0.616990 manifold id: 1 +DEAL:3d::center: -1.00000 -1.07500 -0.250000 boundary id: 0 manifold id: 4294967295 +DEAL:3d::center: -1.00000 -1.07500 0.250000 boundary id: 0 manifold id: 4294967295 +DEAL:3d::center: -1.00000 -1.02500 -0.250000 boundary id: 0 manifold id: 4294967295 +DEAL:3d::center: -1.00000 -1.02500 0.250000 boundary id: 0 manifold id: 4294967295 +DEAL:3d::center: -1.00000 -0.750000 -0.250000 boundary id: 0 manifold id: 1 +DEAL:3d::center: -1.00000 -0.750000 0.250000 boundary id: 0 manifold id: 1 +DEAL:3d::center: -1.00000 -0.250000 -0.250000 boundary id: 0 manifold id: 1 +DEAL:3d::center: -1.00000 -0.250000 0.250000 boundary id: 0 manifold id: 1 +DEAL:3d::center: -1.00000 0.250000 -0.250000 boundary id: 0 manifold id: 1 +DEAL:3d::center: -1.00000 0.250000 0.250000 boundary id: 0 manifold id: 1 +DEAL:3d::center: -1.00000 0.750000 -0.250000 boundary id: 0 manifold id: 1 +DEAL:3d::center: -1.00000 0.750000 0.250000 boundary id: 0 manifold id: 1 +DEAL:3d::center: -1.00000 1.05000 -0.250000 boundary id: 0 manifold id: 4294967295 +DEAL:3d::center: -1.00000 1.05000 0.250000 boundary id: 0 manifold id: 4294967295 +DEAL:3d::center: -1.00000 1.15000 -0.250000 boundary id: 0 manifold id: 4294967295 +DEAL:3d::center: -1.00000 1.15000 0.250000 boundary id: 0 manifold id: 4294967295 +DEAL:3d::center: 1.00000 -1.07500 -0.250000 boundary id: 1 manifold id: 4294967295 +DEAL:3d::center: 1.00000 -1.07500 0.250000 boundary id: 1 manifold id: 4294967295 +DEAL:3d::center: 1.00000 -1.02500 -0.250000 boundary id: 1 manifold id: 4294967295 +DEAL:3d::center: 1.00000 -1.02500 0.250000 boundary id: 1 manifold id: 4294967295 +DEAL:3d::center: 1.00000 -0.750000 -0.250000 boundary id: 1 manifold id: 1 +DEAL:3d::center: 1.00000 -0.750000 0.250000 boundary id: 1 manifold id: 1 +DEAL:3d::center: 1.00000 -0.250000 -0.250000 boundary id: 1 manifold id: 1 +DEAL:3d::center: 1.00000 -0.250000 0.250000 boundary id: 1 manifold id: 1 +DEAL:3d::center: 1.00000 0.250000 -0.250000 boundary id: 1 manifold id: 1 +DEAL:3d::center: 1.00000 0.250000 0.250000 boundary id: 1 manifold id: 1 +DEAL:3d::center: 1.00000 0.750000 -0.250000 boundary id: 1 manifold id: 1 +DEAL:3d::center: 1.00000 0.750000 0.250000 boundary id: 1 manifold id: 1 +DEAL:3d::center: 1.00000 1.05000 -0.250000 boundary id: 1 manifold id: 4294967295 +DEAL:3d::center: 1.00000 1.05000 0.250000 boundary id: 1 manifold id: 4294967295 +DEAL:3d::center: 1.00000 1.15000 -0.250000 boundary id: 1 manifold id: 4294967295 +DEAL:3d::center: 1.00000 1.15000 0.250000 boundary id: 1 manifold id: 4294967295 +DEAL:3d::center: -0.750000 -1.10000 -0.250000 boundary id: 2 manifold id: 4294967295 +DEAL:3d::center: -0.750000 -1.10000 0.250000 boundary id: 2 manifold id: 4294967295 +DEAL:3d::center: -0.250000 -1.10000 -0.250000 boundary id: 2 manifold id: 4294967295 +DEAL:3d::center: -0.250000 -1.10000 0.250000 boundary id: 2 manifold id: 4294967295 +DEAL:3d::center: 0.250000 -1.10000 -0.250000 boundary id: 2 manifold id: 4294967295 +DEAL:3d::center: 0.250000 -1.10000 0.250000 boundary id: 2 manifold id: 4294967295 +DEAL:3d::center: 0.750000 -1.10000 -0.250000 boundary id: 2 manifold id: 4294967295 +DEAL:3d::center: 0.750000 -1.10000 0.250000 boundary id: 2 manifold id: 4294967295 +DEAL:3d::center: -0.750000 1.20000 -0.250000 boundary id: 3 manifold id: 4294967295 +DEAL:3d::center: -0.750000 1.20000 0.250000 boundary id: 3 manifold id: 4294967295 +DEAL:3d::center: -0.250000 1.20000 -0.250000 boundary id: 3 manifold id: 4294967295 +DEAL:3d::center: -0.250000 1.20000 0.250000 boundary id: 3 manifold id: 4294967295 +DEAL:3d::center: 0.250000 1.20000 -0.250000 boundary id: 3 manifold id: 4294967295 +DEAL:3d::center: 0.250000 1.20000 0.250000 boundary id: 3 manifold id: 4294967295 +DEAL:3d::center: 0.750000 1.20000 -0.250000 boundary id: 3 manifold id: 4294967295 +DEAL:3d::center: 0.750000 1.20000 0.250000 boundary id: 3 manifold id: 4294967295 +DEAL:3d::center: -0.384776 -0.0765367 -0.250000 boundary id: 4 manifold id: 0 +DEAL:3d::center: -0.384776 -0.0765367 0.250000 boundary id: 4 manifold id: 0 +DEAL:3d::center: -0.384776 0.0765367 -0.250000 boundary id: 4 manifold id: 0 +DEAL:3d::center: -0.384776 0.0765367 0.250000 boundary id: 4 manifold id: 0 +DEAL:3d::center: -0.326197 -0.217958 -0.250000 boundary id: 4 manifold id: 0 +DEAL:3d::center: -0.326197 -0.217958 0.250000 boundary id: 4 manifold id: 0 +DEAL:3d::center: -0.326197 0.217958 -0.250000 boundary id: 4 manifold id: 0 +DEAL:3d::center: -0.326197 0.217958 0.250000 boundary id: 4 manifold id: 0 +DEAL:3d::center: -0.217958 -0.326197 -0.250000 boundary id: 4 manifold id: 0 +DEAL:3d::center: -0.217958 -0.326197 0.250000 boundary id: 4 manifold id: 0 +DEAL:3d::center: -0.217958 0.326197 -0.250000 boundary id: 4 manifold id: 0 +DEAL:3d::center: -0.217958 0.326197 0.250000 boundary id: 4 manifold id: 0 +DEAL:3d::center: -0.0765367 -0.384776 -0.250000 boundary id: 4 manifold id: 0 +DEAL:3d::center: -0.0765367 -0.384776 0.250000 boundary id: 4 manifold id: 0 +DEAL:3d::center: -0.0765367 0.384776 -0.250000 boundary id: 4 manifold id: 0 +DEAL:3d::center: -0.0765367 0.384776 0.250000 boundary id: 4 manifold id: 0 +DEAL:3d::center: 0.0765367 -0.384776 -0.250000 boundary id: 4 manifold id: 0 +DEAL:3d::center: 0.0765367 -0.384776 0.250000 boundary id: 4 manifold id: 0 +DEAL:3d::center: 0.0765367 0.384776 -0.250000 boundary id: 4 manifold id: 0 +DEAL:3d::center: 0.0765367 0.384776 0.250000 boundary id: 4 manifold id: 0 +DEAL:3d::center: 0.217958 -0.326197 -0.250000 boundary id: 4 manifold id: 0 +DEAL:3d::center: 0.217958 -0.326197 0.250000 boundary id: 4 manifold id: 0 +DEAL:3d::center: 0.217958 0.326197 -0.250000 boundary id: 4 manifold id: 0 +DEAL:3d::center: 0.217958 0.326197 0.250000 boundary id: 4 manifold id: 0 +DEAL:3d::center: 0.326197 -0.217958 -0.250000 boundary id: 4 manifold id: 0 +DEAL:3d::center: 0.326197 -0.217958 0.250000 boundary id: 4 manifold id: 0 +DEAL:3d::center: 0.326197 0.217958 -0.250000 boundary id: 4 manifold id: 0 +DEAL:3d::center: 0.326197 0.217958 0.250000 boundary id: 4 manifold id: 0 +DEAL:3d::center: 0.384776 -0.0765367 -0.250000 boundary id: 4 manifold id: 0 +DEAL:3d::center: 0.384776 -0.0765367 0.250000 boundary id: 4 manifold id: 0 +DEAL:3d::center: 0.384776 0.0765367 -0.250000 boundary id: 4 manifold id: 0 +DEAL:3d::center: 0.384776 0.0765367 0.250000 boundary id: 4 manifold id: 0 +DEAL:3d::center: -0.846194 -0.206634 -0.500000 boundary id: 5 manifold id: 1 +DEAL:3d::center: -0.846194 0.206634 -0.500000 boundary id: 5 manifold id: 1 +DEAL:3d::center: -0.831549 -0.616990 -0.500000 boundary id: 5 manifold id: 1 +DEAL:3d::center: -0.831549 0.616990 -0.500000 boundary id: 5 manifold id: 1 +DEAL:3d::center: -0.750000 -1.07500 -0.500000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: -0.750000 -1.02500 -0.500000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: -0.750000 1.05000 -0.500000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: -0.750000 1.15000 -0.500000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: -0.616990 -0.831549 -0.500000 boundary id: 5 manifold id: 1 +DEAL:3d::center: -0.616990 0.831549 -0.500000 boundary id: 5 manifold id: 1 +DEAL:3d::center: -0.538582 -0.119903 -0.500000 boundary id: 5 manifold id: 1 +DEAL:3d::center: -0.538582 0.119903 -0.500000 boundary id: 5 manifold id: 1 +DEAL:3d::center: -0.494648 -0.350969 -0.500000 boundary id: 5 manifold id: 1 +DEAL:3d::center: -0.494648 0.350969 -0.500000 boundary id: 5 manifold id: 1 +DEAL:3d::center: -0.350969 -0.494648 -0.500000 boundary id: 5 manifold id: 1 +DEAL:3d::center: -0.350969 0.494648 -0.500000 boundary id: 5 manifold id: 1 +DEAL:3d::center: -0.250000 -1.07500 -0.500000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: -0.250000 -1.02500 -0.500000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: -0.250000 1.05000 -0.500000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: -0.250000 1.15000 -0.500000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: -0.206634 -0.846194 -0.500000 boundary id: 5 manifold id: 1 +DEAL:3d::center: -0.206634 0.846194 -0.500000 boundary id: 5 manifold id: 1 +DEAL:3d::center: -0.119903 -0.538582 -0.500000 boundary id: 5 manifold id: 1 +DEAL:3d::center: -0.119903 0.538582 -0.500000 boundary id: 5 manifold id: 1 +DEAL:3d::center: 0.119903 -0.538582 -0.500000 boundary id: 5 manifold id: 1 +DEAL:3d::center: 0.119903 0.538582 -0.500000 boundary id: 5 manifold id: 1 +DEAL:3d::center: 0.206634 -0.846194 -0.500000 boundary id: 5 manifold id: 1 +DEAL:3d::center: 0.206634 0.846194 -0.500000 boundary id: 5 manifold id: 1 +DEAL:3d::center: 0.250000 -1.07500 -0.500000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: 0.250000 -1.02500 -0.500000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: 0.250000 1.05000 -0.500000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: 0.250000 1.15000 -0.500000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: 0.350969 -0.494648 -0.500000 boundary id: 5 manifold id: 1 +DEAL:3d::center: 0.350969 0.494648 -0.500000 boundary id: 5 manifold id: 1 +DEAL:3d::center: 0.494648 -0.350969 -0.500000 boundary id: 5 manifold id: 1 +DEAL:3d::center: 0.494648 0.350969 -0.500000 boundary id: 5 manifold id: 1 +DEAL:3d::center: 0.538582 -0.119903 -0.500000 boundary id: 5 manifold id: 1 +DEAL:3d::center: 0.538582 0.119903 -0.500000 boundary id: 5 manifold id: 1 +DEAL:3d::center: 0.616990 -0.831549 -0.500000 boundary id: 5 manifold id: 1 +DEAL:3d::center: 0.616990 0.831549 -0.500000 boundary id: 5 manifold id: 1 +DEAL:3d::center: 0.750000 -1.07500 -0.500000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: 0.750000 -1.02500 -0.500000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: 0.750000 1.05000 -0.500000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: 0.750000 1.15000 -0.500000 boundary id: 5 manifold id: 4294967295 +DEAL:3d::center: 0.831549 -0.616990 -0.500000 boundary id: 5 manifold id: 1 +DEAL:3d::center: 0.831549 0.616990 -0.500000 boundary id: 5 manifold id: 1 +DEAL:3d::center: 0.846194 -0.206634 -0.500000 boundary id: 5 manifold id: 1 +DEAL:3d::center: 0.846194 0.206634 -0.500000 boundary id: 5 manifold id: 1 +DEAL:3d::center: -0.846194 -0.206634 0.500000 boundary id: 6 manifold id: 1 +DEAL:3d::center: -0.846194 0.206634 0.500000 boundary id: 6 manifold id: 1 +DEAL:3d::center: -0.831549 -0.616990 0.500000 boundary id: 6 manifold id: 1 +DEAL:3d::center: -0.831549 0.616990 0.500000 boundary id: 6 manifold id: 1 +DEAL:3d::center: -0.750000 -1.07500 0.500000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: -0.750000 -1.02500 0.500000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: -0.750000 1.05000 0.500000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: -0.750000 1.15000 0.500000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: -0.616990 -0.831549 0.500000 boundary id: 6 manifold id: 1 +DEAL:3d::center: -0.616990 0.831549 0.500000 boundary id: 6 manifold id: 1 +DEAL:3d::center: -0.538582 -0.119903 0.500000 boundary id: 6 manifold id: 1 +DEAL:3d::center: -0.538582 0.119903 0.500000 boundary id: 6 manifold id: 1 +DEAL:3d::center: -0.494648 -0.350969 0.500000 boundary id: 6 manifold id: 1 +DEAL:3d::center: -0.494648 0.350969 0.500000 boundary id: 6 manifold id: 1 +DEAL:3d::center: -0.350969 -0.494648 0.500000 boundary id: 6 manifold id: 1 +DEAL:3d::center: -0.350969 0.494648 0.500000 boundary id: 6 manifold id: 1 +DEAL:3d::center: -0.250000 -1.07500 0.500000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: -0.250000 -1.02500 0.500000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: -0.250000 1.05000 0.500000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: -0.250000 1.15000 0.500000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: -0.206634 -0.846194 0.500000 boundary id: 6 manifold id: 1 +DEAL:3d::center: -0.206634 0.846194 0.500000 boundary id: 6 manifold id: 1 +DEAL:3d::center: -0.119903 -0.538582 0.500000 boundary id: 6 manifold id: 1 +DEAL:3d::center: -0.119903 0.538582 0.500000 boundary id: 6 manifold id: 1 +DEAL:3d::center: 0.119903 -0.538582 0.500000 boundary id: 6 manifold id: 1 +DEAL:3d::center: 0.119903 0.538582 0.500000 boundary id: 6 manifold id: 1 +DEAL:3d::center: 0.206634 -0.846194 0.500000 boundary id: 6 manifold id: 1 +DEAL:3d::center: 0.206634 0.846194 0.500000 boundary id: 6 manifold id: 1 +DEAL:3d::center: 0.250000 -1.07500 0.500000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: 0.250000 -1.02500 0.500000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: 0.250000 1.05000 0.500000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: 0.250000 1.15000 0.500000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: 0.350969 -0.494648 0.500000 boundary id: 6 manifold id: 1 +DEAL:3d::center: 0.350969 0.494648 0.500000 boundary id: 6 manifold id: 1 +DEAL:3d::center: 0.494648 -0.350969 0.500000 boundary id: 6 manifold id: 1 +DEAL:3d::center: 0.494648 0.350969 0.500000 boundary id: 6 manifold id: 1 +DEAL:3d::center: 0.538582 -0.119903 0.500000 boundary id: 6 manifold id: 1 +DEAL:3d::center: 0.538582 0.119903 0.500000 boundary id: 6 manifold id: 1 +DEAL:3d::center: 0.616990 -0.831549 0.500000 boundary id: 6 manifold id: 1 +DEAL:3d::center: 0.616990 0.831549 0.500000 boundary id: 6 manifold id: 1 +DEAL:3d::center: 0.750000 -1.07500 0.500000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: 0.750000 -1.02500 0.500000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: 0.750000 1.05000 0.500000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: 0.750000 1.15000 0.500000 boundary id: 6 manifold id: 4294967295 +DEAL:3d::center: 0.831549 -0.616990 0.500000 boundary id: 6 manifold id: 1 +DEAL:3d::center: 0.831549 0.616990 0.500000 boundary id: 6 manifold id: 1 +DEAL:3d::center: 0.846194 -0.206634 0.500000 boundary id: 6 manifold id: 1 +DEAL:3d::center: 0.846194 0.206634 0.500000 boundary id: 6 manifold id: 1 +DEAL:3d:: +DEAL:3d:: +DEAL:3d::center: -0.250000 -1.02500 -0.250000 manifold id: 4294967295 +DEAL:3d::center: -0.750000 -1.02500 -0.250000 manifold id: 4294967295 +DEAL:3d::center: -0.250000 -1.07500 -0.250000 manifold id: 4294967295 +DEAL:3d::center: -0.750000 -1.07500 -0.250000 manifold id: 4294967295 +DEAL:3d::center: -0.250000 -1.02500 0.250000 manifold id: 4294967295 +DEAL:3d::center: -0.750000 -1.02500 0.250000 manifold id: 4294967295 +DEAL:3d::center: -0.250000 -1.07500 0.250000 manifold id: 4294967295 +DEAL:3d::center: -0.750000 -1.07500 0.250000 manifold id: 4294967295 +DEAL:3d::center: 0.750000 -1.02500 -0.250000 manifold id: 4294967295 +DEAL:3d::center: 0.250000 -1.02500 -0.250000 manifold id: 4294967295 +DEAL:3d::center: 0.750000 -1.07500 -0.250000 manifold id: 4294967295 +DEAL:3d::center: 0.250000 -1.07500 -0.250000 manifold id: 4294967295 +DEAL:3d::center: 0.750000 -1.02500 0.250000 manifold id: 4294967295 +DEAL:3d::center: 0.250000 -1.02500 0.250000 manifold id: 4294967295 +DEAL:3d::center: 0.750000 -1.07500 0.250000 manifold id: 4294967295 +DEAL:3d::center: 0.250000 -1.07500 0.250000 manifold id: 4294967295 +DEAL:3d::center: -0.250000 1.15000 -0.250000 manifold id: 4294967295 +DEAL:3d::center: -0.750000 1.15000 -0.250000 manifold id: 4294967295 +DEAL:3d::center: -0.250000 1.05000 -0.250000 manifold id: 4294967295 +DEAL:3d::center: -0.750000 1.05000 -0.250000 manifold id: 4294967295 +DEAL:3d::center: -0.250000 1.15000 0.250000 manifold id: 4294967295 +DEAL:3d::center: -0.750000 1.15000 0.250000 manifold id: 4294967295 +DEAL:3d::center: -0.250000 1.05000 0.250000 manifold id: 4294967295 +DEAL:3d::center: -0.750000 1.05000 0.250000 manifold id: 4294967295 +DEAL:3d::center: 0.750000 1.15000 -0.250000 manifold id: 4294967295 +DEAL:3d::center: 0.250000 1.15000 -0.250000 manifold id: 4294967295 +DEAL:3d::center: 0.750000 1.05000 -0.250000 manifold id: 4294967295 +DEAL:3d::center: 0.250000 1.05000 -0.250000 manifold id: 4294967295 +DEAL:3d::center: 0.750000 1.15000 0.250000 manifold id: 4294967295 +DEAL:3d::center: 0.250000 1.15000 0.250000 manifold id: 4294967295 +DEAL:3d::center: 0.750000 1.05000 0.250000 manifold id: 4294967295 +DEAL:3d::center: 0.250000 1.05000 0.250000 manifold id: 4294967295 +DEAL:3d::center: 0.494648 0.350969 -0.250000 manifold id: 1 +DEAL:3d::center: 0.538582 0.119903 -0.250000 manifold id: 1 +DEAL:3d::center: 0.831549 0.616990 -0.250000 manifold id: 1 +DEAL:3d::center: 0.846194 0.206634 -0.250000 manifold id: 1 +DEAL:3d::center: 0.494648 0.350969 0.250000 manifold id: 1 +DEAL:3d::center: 0.538582 0.119903 0.250000 manifold id: 1 +DEAL:3d::center: 0.831549 0.616990 0.250000 manifold id: 1 +DEAL:3d::center: 0.846194 0.206634 0.250000 manifold id: 1 +DEAL:3d::center: 0.350969 0.494648 -0.250000 manifold id: 1 +DEAL:3d::center: 0.616990 0.831549 -0.250000 manifold id: 1 +DEAL:3d::center: 0.119903 0.538582 -0.250000 manifold id: 1 +DEAL:3d::center: 0.206634 0.846194 -0.250000 manifold id: 1 +DEAL:3d::center: 0.350969 0.494648 0.250000 manifold id: 1 +DEAL:3d::center: 0.616990 0.831549 0.250000 manifold id: 1 +DEAL:3d::center: 0.119903 0.538582 0.250000 manifold id: 1 +DEAL:3d::center: 0.206634 0.846194 0.250000 manifold id: 1 +DEAL:3d::center: -0.119903 0.538582 -0.250000 manifold id: 1 +DEAL:3d::center: -0.206634 0.846194 -0.250000 manifold id: 1 +DEAL:3d::center: -0.350969 0.494648 -0.250000 manifold id: 1 +DEAL:3d::center: -0.616990 0.831549 -0.250000 manifold id: 1 +DEAL:3d::center: -0.119903 0.538582 0.250000 manifold id: 1 +DEAL:3d::center: -0.206634 0.846194 0.250000 manifold id: 1 +DEAL:3d::center: -0.350969 0.494648 0.250000 manifold id: 1 +DEAL:3d::center: -0.616990 0.831549 0.250000 manifold id: 1 +DEAL:3d::center: -0.538582 0.119903 -0.250000 manifold id: 1 +DEAL:3d::center: -0.494648 0.350969 -0.250000 manifold id: 1 +DEAL:3d::center: -0.846194 0.206634 -0.250000 manifold id: 1 +DEAL:3d::center: -0.831549 0.616990 -0.250000 manifold id: 1 +DEAL:3d::center: -0.538582 0.119903 0.250000 manifold id: 1 +DEAL:3d::center: -0.494648 0.350969 0.250000 manifold id: 1 +DEAL:3d::center: -0.846194 0.206634 0.250000 manifold id: 1 +DEAL:3d::center: -0.831549 0.616990 0.250000 manifold id: 1 +DEAL:3d::center: -0.494648 -0.350969 -0.250000 manifold id: 1 +DEAL:3d::center: -0.538582 -0.119903 -0.250000 manifold id: 1 +DEAL:3d::center: -0.831549 -0.616990 -0.250000 manifold id: 1 +DEAL:3d::center: -0.846194 -0.206634 -0.250000 manifold id: 1 +DEAL:3d::center: -0.494648 -0.350969 0.250000 manifold id: 1 +DEAL:3d::center: -0.538582 -0.119903 0.250000 manifold id: 1 +DEAL:3d::center: -0.831549 -0.616990 0.250000 manifold id: 1 +DEAL:3d::center: -0.846194 -0.206634 0.250000 manifold id: 1 +DEAL:3d::center: -0.119903 -0.538582 -0.250000 manifold id: 1 +DEAL:3d::center: -0.350969 -0.494648 -0.250000 manifold id: 1 +DEAL:3d::center: -0.206634 -0.846194 -0.250000 manifold id: 1 +DEAL:3d::center: -0.616990 -0.831549 -0.250000 manifold id: 1 +DEAL:3d::center: -0.119903 -0.538582 0.250000 manifold id: 1 +DEAL:3d::center: -0.350969 -0.494648 0.250000 manifold id: 1 +DEAL:3d::center: -0.206634 -0.846194 0.250000 manifold id: 1 +DEAL:3d::center: -0.616990 -0.831549 0.250000 manifold id: 1 +DEAL:3d::center: 0.350969 -0.494648 -0.250000 manifold id: 1 +DEAL:3d::center: 0.119903 -0.538582 -0.250000 manifold id: 1 +DEAL:3d::center: 0.616990 -0.831549 -0.250000 manifold id: 1 +DEAL:3d::center: 0.206634 -0.846194 -0.250000 manifold id: 1 +DEAL:3d::center: 0.350969 -0.494648 0.250000 manifold id: 1 +DEAL:3d::center: 0.119903 -0.538582 0.250000 manifold id: 1 +DEAL:3d::center: 0.616990 -0.831549 0.250000 manifold id: 1 +DEAL:3d::center: 0.206634 -0.846194 0.250000 manifold id: 1 +DEAL:3d::center: 0.538582 -0.119903 -0.250000 manifold id: 1 +DEAL:3d::center: 0.494648 -0.350969 -0.250000 manifold id: 1 +DEAL:3d::center: 0.846194 -0.206634 -0.250000 manifold id: 1 +DEAL:3d::center: 0.831549 -0.616990 -0.250000 manifold id: 1 +DEAL:3d::center: 0.538582 -0.119903 0.250000 manifold id: 1 +DEAL:3d::center: 0.494648 -0.350969 0.250000 manifold id: 1 +DEAL:3d::center: 0.846194 -0.206634 0.250000 manifold id: 1 +DEAL:3d::center: 0.831549 -0.616990 0.250000 manifold id: 1 -- 2.39.5