문제

나는 (2d) delaunay 삼각형과 함께 놀고 싶습니다. 그리고 함께 일할 합리적으로 작은 도서관을 찾고 있습니다. 나는 CGAL을 알고 있지만 상당히 간단하고 간단한 것이 있는지 궁금합니다.

내가하고 싶은 일 :

  • 임의의 포인트 세트의 삼각 측량을 만듭니다
  • 삼각형을 찾으십시오. 임의의 지점이 있습니다.
  • 삼각 측량 이미지 만들기 (선택 사항)

제안?

도움이 되었습니까?

해결책

더 많은 관련 답변이 제공 될 수 있도록 목표를 약간 상세하게해야 할 것입니다. 그러나 먼저 언급하겠습니다. 삼각형, C로 작성되어 독립형 프로그램으로 사용되거나 자신의 코드에서 호출 될 수있는 2D Delaunay Generation Tool.

그런 다음 CGAL에 관해서는 여기에 여전히 고려할 경우 전형적인 작은 예가 있습니다.

#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 >& points)
{
  points.push_back(Point(1., 1.));
  points.push_back(Point(2., 1.));
  points.push_back(Point(2., 2.));
  points.push_back(Point(1., 2.));      
}

int main()
{
  std::vector< Point > points;
  load_points(points);
  Delaunay dt;
  dt.insert(points.begin(), points.end());
  std::cout << dt.number_of_vertices() << std::endl;
  return 0;
}

다른 팁

Poly2Tri도 참조하십시오. 멋져 보입니다. https://github.com/greenm01/poly2tri

나는 그것을 사용했다 GNU 삼각형 표면 라이브러리 2D Delaunay 삼각 측량의 경우 잘 작동했습니다. oop-in-c glib 스타일을 사용하기 때문에 전화하는 것이 약간 이상하지만 쉽게 싸서.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top