12#ifndef __VoroInterface_H
13#define __VoroInterface_H
15#include "Gedim_Macro.hpp"
56 std::vector<unsigned int>
edges;
66 std::vector<unsigned int>
faces;
Eigen column vector.
Definition Eigen_Array.hpp:23
The GeometryUtilities class intersects 3D segments.
Definition GeometryUtilities.hpp:37
The IMeshDAO (mesh data access object) class to read and write mesh data.
Definition IMeshDAO.hpp:24
static unsigned int RandomSeed()
Definition CommonUtilities.hpp:32
Definition VoroInterface.hpp:30
void GenerateVoronoiTassellations2D(const Eigen::MatrixXd &polygonVertices, const unsigned int &numIterations, Eigen::MatrixXd &VoronoiPoints, Gedim::IMeshDAO &mesh)
Generate a 2D centroidal Voronoi tessellation from prescribed seeds. The function computes a centroid...
void GenerateVoronoiTassellations3D(const Eigen::MatrixXd &domain_vertices, const Eigen::MatrixXi &domain_edges, const std::vector< Eigen::MatrixXi > &domain_faces, const unsigned int &num_iterations, Eigen::MatrixXd &VoronoiPoints, Gedim::IMeshDAO &mesh)
Generate a 3D centroidal Voronoi tessellation from prescribed seeds. The function computes a centroid...
Eigen::MatrixXd GenerateRandomPoints(const Eigen::MatrixXd &domainVertices, const unsigned int &numPoints, const unsigned int random_seed=Gedim::Utilities::RandomSeed())
Generate a set of random points inside a parallelepipedal/parallelogram domain.
void GenerateVoronoiTassellations2D(const Eigen::MatrixXd &polygonVertices, const unsigned int &numPoints, const unsigned int &numIterations, Gedim::IMeshDAO &mesh, const unsigned int random_seed=Gedim::Utilities::RandomSeed())
Definition VoroInterface.cpp:50
void GenerateVoronoiTassellations3D(const Eigen::MatrixXd &polyhedronVertices, const Eigen::MatrixXi &polyhedronEdges, const std::vector< Eigen::MatrixXi > &polyhedronFaces, const unsigned int &numPoints, const unsigned int &numIterations, Gedim::IMeshDAO &mesh, const unsigned int random_seed=Gedim::Utilities::RandomSeed())
Definition VoroInterface.cpp:32
Definition Eigen_Array.cpp:22
Definition VoroInterface.hpp:33
unsigned int marker
Definition VoroInterface.hpp:35
bool active
Definition VoroInterface.hpp:36
const Eigen::VectorXd coordinates
Definition VoroInterface.hpp:34
std::vector< unsigned int > neighbors_1D
Definition VoroInterface.hpp:37
std::vector< unsigned int > neighbors_2D
Definition VoroInterface.hpp:38
Cell0D(const Eigen::VectorXd &coordinates)
Definition VoroInterface.hpp:40
Definition VoroInterface.hpp:44
unsigned int marker
Definition VoroInterface.hpp:45
std::vector< unsigned int > neighbors_2D
Definition VoroInterface.hpp:49
bool active
Definition VoroInterface.hpp:48
unsigned int origin
Definition VoroInterface.hpp:46
unsigned int end
Definition VoroInterface.hpp:47
Definition VoroInterface.hpp:53
unsigned int marker
Definition VoroInterface.hpp:54
std::vector< int > neighbors_of_related_3D_cells
Definition VoroInterface.hpp:58
std::vector< unsigned int > vertices
Definition VoroInterface.hpp:55
bool active
Definition VoroInterface.hpp:57
std::vector< unsigned int > edges
Definition VoroInterface.hpp:56
Definition VoroInterface.hpp:62
std::set< unsigned int > edges
Definition VoroInterface.hpp:65
std::vector< int > neighbors
Definition VoroInterface.hpp:67
std::vector< unsigned int > vertices
Definition VoroInterface.hpp:64
std::vector< unsigned int > faces
Definition VoroInterface.hpp:66
bool active
Definition VoroInterface.hpp:68
unsigned int marker
Definition VoroInterface.hpp:63