Tengo un conjunto de puntos 2D cada uno con un id. Asociado. (por ejemplo, si los puntos se almacenan en una matriz, la identificación es el índice en cada punto 0, ...., n-1).Triangulación CGAL 2D Delaunay: Cómo obtener bordes como pares de id. De vértice
Ahora creo una triangulación Delaunay de estos puntos y quiero enumerar todos los bordes finitos. Para cada borde, me gustaría tener los identificadores de los puntos representados por los 2 vértices correspondientes. Ejemplo: si hay un borde entre el punto 0 y el punto 2, entonces (0,2). es posible?
#include <vector>
#include <CGAL\Exact_predicates_inexact_constructions_kernel.h>
#include <CGAL\Delaunay_triangulation_2.h>
typedef CGAL::Exact_predicates_inexact_constructions_kernel K;
typedef CGAL::Delaunay_triangulation_2<K> Delaunay;
typedef K::Point_2 Point;
void load_points(std::vector<Point>& rPoints)
{
rPoints.push_back(Point(10,10)); // first point
rPoints.push_back(Point(60,10)); // second point
rPoints.push_back(Point(30,40)); // third point
rPoints.push_back(Point(40,80)); // fourth point
}
void main()
{
std::vector<Point> points;
load_points(points);
Delaunay dt;
dt.insert(points.begin(),points.end());
for(Delaunay::Finite_edges_iterator it = dt.finite_edges_begin(); it != dt.finite_edges_end(); ++it)
{
}
}
sloriot: muy útil. Gracias. – 911
¡Tan claro! gracias. – LoveMeow