摘要:cgal是1个开源的计算几何库, 博文记录了其编译、安装和使用方法。
1 库下载
站点:http://www.cgal.org/
下载:https://gforge.inria.fr/frs/download.php/file/34514/CGAL⑷.5.2.zip
2 解紧缩、编译与安装
shell下进入解压文件夹
1)库配置文件生成命令:
cmake .
提示缺少gmp和mpfr库
安装缺少的库:
sudo apt-get install libgmp-dev libmpfr-dev
然后cmake .
提示成功
2)编译
make
约5秒编译完成
3)安装
sudo make install
头文件安装位置:/usr/local/include/CGAL/
库文件位置:/usr/local/lib/
相应的库有:libCGAL.so, libCGAL_ImageIO.so, libCGAL_Qt4.so, libCGAL_Core.so
3 程序测试
//编译: g++ test.cpp -lCGAL -lCGAL_Core -lgmp
//-lmpfr
#include <CGAL/Exact_predicates_inexact_constructions_kernel.h>
#include <CGAL/convex_hull_2.h>
#include <vector>
typedef CGAL::Exact_predicates_inexact_constructions_kernel K;
typedef K::Point_2 Point_2;
typedef std::vector<Point_2> Points;
int main()
{
Points points, result;
points.push_back(Point_2(0,0));
points.push_back(Point_2(10,0));
points.push_back(Point_2(10,10));
points.push_back(Point_2(6,5));
points.push_back(Point_2(4,1));
CGAL::convex_hull_2( points.begin(), points.end(), std::back_inserter(result) );
std::cout << result.size() << " points on the convex hull" << std::endl;
return 0;
}
//编译: g++ test.cpp -lCGAL -lCGAL_Core -lgmp