wangsh 2011-11-16
CGAL是比较经典的计算几何库,算法经典,稳定高效。
本文介绍编译CGAl情况,
前期准备:
BOOST:http://www.boost.org 下载boost_1_38_0.zip
Cmake:http://www.cmake.org/files/v2.8/cmake-2.8.2-win32-x86.exe
QT: 安装Qt(qt-win-opensource-4.5.0-vs2008.exe)
LibQGLviewer:http://www.libqglviewer.com/installWindows.html
CGAL: https://gforge.inria.fr/frs/?group_id=52 下载CGAL3.9即可。
前期编译:参考6编译boost,安装Qt4.5(不需SDK库),编译LibQGLviewer,这里不做详细说明,具体参考链接。
编译LibQGLviewer,在参考3下载源码,
QGLViewer的源文件,然后你会看到libQGLViewer/ libQGLViewer-2.3.10.pro,用vs2008的Qt助手打开这个文件(跟CMAKE同样的功能),编译QGLViewer,在vs2008下编译Debug和Release版本。
安装cgal3.9.exe,保持网络连接状态,需要下载安装gmp等库。
打开cmake-gui,配置cgal路径,需要指定boost、qt、QGLViewer等库路径。
点击Configure,等待若干秒,点击Generate
编译src、demo、examples代码时(主要是demo),二维显示用的是QT的图像框架,三维浏览是用了QT的第三方库QGLViewer,所以编译代码时,需要在相关选项中勾选。
如果出现gmp-vc90-mt-gd.lib找不到的问题,进入你把C:\CGAL-3.9\auxiliary\gmp\lib\中的libgmp10.lib和对应的.dll改成gmp-vc90-gd并在VS依赖项中填上gmp-vc90-mt-gd.lib就可以解决问题。
Cmake中设置为debug版本,那么vs2008中也只能debug版本编译,如果不匹配(发布版本对发布版本,测试版本对测试版本),那么将在命令行出现:"QWidget: Must construct a QApplication before a QPaintDevice"的问题,这个在编译使用Qgis时也遇到过。
注意编译的时候,留够足够空间,需要
耐心等待,编译成功,enjoy it!
Demo:
参考资料
1. CGAL(Computational Geometry Algorithms Library)主页 http://www.cgal.org/
2. 下载CGAL https://gforge.inria.fr/frs/?group_id=52
3. libqglviewer http://www.libqglviewer.com/installWindows.html
4. 简单介绍早期版本 http://www.math.tau.ac.il/~theoren/CGAL/
5. 斯坦福大学图形课介绍 http://graphics.stanford.edu/courses/cs368-00-spring/TA/manuals/CGAL/frameset/fsSTLex.html
6. 参考编译boost1.38 http://blog.csdn.net/augusdi/article/details/5971023
7. CGAL课程2004 http://www.loria.fr/~lazard/CGAL/2004/
8. 介绍三角网 http://blog.csdn.net/liujunzstu/article/details/2107631
9. VS2008安装CGAL3.4 http://blog.csdn.net/scarletty/article/details/4212703
10. VS2008安装CGAL3.8 http://www.qtsir.com/thread-2602-1-1.html
11. 安装CGAL3.7 http://blog.csdn.net/mnorst/article/details/6617465
12. VS2008 CGAL3.7安装 http://www.cnblogs.com/goryu/
13. CGAL3.8编译 http://www.qtcn.org/bbs/apps.php?q=diary&uid=111650&a=detail&did=52
14. 编译应用CGAL(点集的Delaunay三角剖分,voronoi图) http://www.cnblogs.com/sudoleo/archive/2010/07/20/1781617.html
15. CGAl安装 http://blog.csdn.net/yunzaitian163/article/details/6724725
16. Win7 安装CGAL http://blog.sina.com.cn/s/blog_6d68e6090100m6rc.html
17. VS2008安装与编译CGAL http://hi.baidu.com/ganwf85/blog/item/45483710fe67ced6c2fd7869.html
18. 编译CGAL步骤 http://hi.baidu.com/litterbug23/blog/item/9297ec216652bf7734a80f8d.html
19. VS2005编译CGAL支持库 http://hi.baidu.com/yhdzw_ming_cheng/blog/item/cb36d40beb403d1795ca6b7e.html
20. 生成CGAL计算凸包DLL http://blog.csdn.net/wrx_2009/article/details/4242685