軽量べてのtrianguation library(c++)[定休日]
-
22-07-2019 - |
質問
るように頑張りたいと思います周辺の一部(2D)ドローネtriangulations、宿場合には合理的に小さな図書館用することが可能です。私が認識しCGALが破壊も修復もおもしろくないものもかなりなが存在します。
ものをしたいと思ってい:
- を三角測量の任意のセットポイント
- 見つの三角形の任意のポイントは、取得の頂点
- 像を作成する三角(オプション)
う方に。
解決
るべき詳細な目標は、ビットである答えを提供できるもののうち 三角形, 2次元べての世代ツールは、C言語で記述され、どちらにも使用でき、独立したプログラム、またはからご自身のコードです。
その後、約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
2D Delaunay三角形分割に Gnu Triangulated Surfaceライブラリを使用しましたが、うまく機能しました。 OOP-in-C GLibスタイルを使用しているため、呼び出すのは少し奇妙ですが、簡単にまとめ。
所属していません StackOverflow