summaryrefslogtreecommitdiff
path: root/src/Alpha_complex/include/gudhi/Alpha_complex_3d_options.h
diff options
context:
space:
mode:
authorvrouvrea <vrouvrea@636b058d-ea47-450e-bf9e-a15bfbe3eedb>2018-06-19 21:26:17 +0000
committervrouvrea <vrouvrea@636b058d-ea47-450e-bf9e-a15bfbe3eedb>2018-06-19 21:26:17 +0000
commit82f15e71f43a5547627699b625830126dad1c4ab (patch)
tree95a3e9c17f345d040864d65a1e86be953d6da8bd /src/Alpha_complex/include/gudhi/Alpha_complex_3d_options.h
parent5a2b1b9c0c79ef2b0595cf1f9428596261824b45 (diff)
First create_complex version
weighted periodic option git-svn-id: svn+ssh://scm.gforge.inria.fr/svnroot/gudhi/branches/alpha_complex_3d_module_vincent@3624 636b058d-ea47-450e-bf9e-a15bfbe3eedb Former-commit-id: 7d22e307b12aac1390593541f77cabcccffbc6ad
Diffstat (limited to 'src/Alpha_complex/include/gudhi/Alpha_complex_3d_options.h')
-rw-r--r--src/Alpha_complex/include/gudhi/Alpha_complex_3d_options.h26
1 files changed, 26 insertions, 0 deletions
diff --git a/src/Alpha_complex/include/gudhi/Alpha_complex_3d_options.h b/src/Alpha_complex/include/gudhi/Alpha_complex_3d_options.h
index e05e5a7f..9433afdc 100644
--- a/src/Alpha_complex/include/gudhi/Alpha_complex_3d_options.h
+++ b/src/Alpha_complex/include/gudhi/Alpha_complex_3d_options.h
@@ -28,6 +28,8 @@
#include <CGAL/Delaunay_triangulation_3.h>
#include <CGAL/Periodic_3_Delaunay_triangulation_traits_3.h>
#include <CGAL/Periodic_3_Delaunay_triangulation_3.h>
+#include <CGAL/Periodic_3_regular_triangulation_traits_3.h>
+#include <CGAL/Periodic_3_regular_triangulation_3.h>
#include <CGAL/Regular_triangulation_3.h>
#include <CGAL/Alpha_shape_3.h>
#include <CGAL/Alpha_shape_cell_base_3.h>
@@ -119,6 +121,30 @@ public:
static const bool periodic = true;
};
+class Weighted_periodic_alpha_shapes_3d {
+private:
+ using Kernel = CGAL::Exact_predicates_inexact_constructions_kernel;
+ using Periodic_kernel = CGAL::Periodic_3_regular_triangulation_traits_3<Kernel>;
+ using DsVb = CGAL::Periodic_3_triangulation_ds_vertex_base_3<>;
+ using Vb = CGAL::Regular_triangulation_vertex_base_3<Periodic_kernel, DsVb>;
+ using AsVb = CGAL::Alpha_shape_vertex_base_3<Periodic_kernel, Vb>;
+ using DsCb = CGAL::Periodic_3_triangulation_ds_cell_base_3<>;
+ using Cb = CGAL::Regular_triangulation_cell_base_3<Periodic_kernel, DsCb>;
+ using AsCb = CGAL::Alpha_shape_cell_base_3<Periodic_kernel, Cb>;
+ using Tds = CGAL::Triangulation_data_structure_3<AsVb, AsCb>;
+
+public:
+ using Periodic_delaunay_triangulation_3 = CGAL::Periodic_3_regular_triangulation_3<Periodic_kernel, Tds>;
+ using Alpha_shape_3 = CGAL::Alpha_shape_3<Periodic_delaunay_triangulation_3>;
+ using Point_3 = Periodic_delaunay_triangulation_3::Bare_point;
+ using Weighted_point_3 = Periodic_delaunay_triangulation_3::Weighted_point;
+ using Alpha_value_type = Alpha_shape_3::FT;
+ using Iso_cuboid_3 = Periodic_kernel::Iso_cuboid_3;
+
+ static const bool weighted = true;
+ static const bool periodic = true;
+};
+
} // namespace alpha_complex
} // namespace Gudhi