Wildmeshing Toolkit
Loading...
Searching...
No Matches
Delaunay.hpp
1#pragma once
2
3#include <array>
4#include <cstddef>
5#include <vector>
6#include <wmtk/Types.hpp>
7
8namespace wmtk::delaunay {
9using Point3D = std::array<double, 3>;
10using Tetrahedron = std::array<size_t, 4>;
11using Point2D = std::array<double, 2>;
12using Triangle = std::array<size_t, 3>;
13
25auto delaunay3D(const std::vector<Point3D>& points)
26 -> std::pair<std::vector<Point3D>, std::vector<Tetrahedron>>;
27
28
40auto delaunay2D(const std::vector<Point2D>& points)
41 -> std::pair<std::vector<Point2D>, std::vector<Triangle>>;
42
55void constrained_delaunay2D(
56 const MatrixXd& V,
57 const MatrixXi& E,
58 MatrixXd& V_out,
59 MatrixXi& F_out,
60 MatrixXi& E_out);
61
62} // namespace wmtk::delaunay