MeshLab和VCG的开发环境配置

Meshlab和VCGlib都是意大利国立研究院的作品,meshlab提供了大量的模型分析与处理的算法,而VCGlib建立了基础的数据结构及其遍历访问的算法,也提供了模型的基本处理算法。VCGlib是标准C++库写的,其提供了IO与封装OpenGL来显示。Meshlab的界面是用QT来写的,因此需要QT SDK的支持。

各软件的地址链接为:

(1)MeshLab源代码SVN:

https://meshlab.svn.sourceforge.net/svnroot/meshlab/trunk/meshlab

(2)VCGlib源代码SVN:

https://vcg.svn.sourceforge.net/svnroot/vcg/trunk/vcglib

(3)QtSDK

http://qt-project.org/downloads

 

目前由于vcglib的更新较大,与当前的meshlab不兼容了,目前用的是meshlab完整源代码包。如果兼容了,可以直接从SVN上获取meshlab与vcglib的源代码,需要注意的是,将从上面两个svn获取的源代码放在同一目录下,然后用下面介绍的相关步骤来编译就可以了。

 

下面就具体的基本配置介绍如下:

 

1. 准备软件

(1)MeshLab源代码,需要下载MeshLabsrc_AllInc_v1.3.2.tgz文件,由于本人试过分别从SVN上获取最新的meshlab与vcglib,会出现各种错误,vcglib更新变化还是比较大的,所以目前主要是函数的不兼容引起的。所以目前建议下载meshlab源代码完整包,包含外部依赖库、vcglib和meshlab。等meshlab与更新后的vcglib兼容后再用SVN导出两者的源代码。目前的最新整个版本为meshlabv1.3.2,下载地址如下:

http://sourceforge.net/projects/meshlab/files/meshlab

(2)QtSDK

http://qt-project.org/downloads

2. 安装QT SDK并编译MeshLab

由于MeshLab使用了许多开源的代码,都在external目录下,首先需要做的是编译该external工程,生成MeshLab所依赖的库。

(1)安装QTSDK,这就不用讲了,解压下载的meshlab源代码完整包,并解压,在解压的过程中可能会出现文件覆盖的提示,一定要选全否

(2)编译meshlab目录下的external工程,生成依赖库,用QCreator打开external.pro,右键点击“构建”,注意不要点击绿色play符号,因为这是一个库,并不能生成可执行文件,不信你可以试试。

(3)打开meshlab目录下的meshlab_mini.pro,其中还有一个meshlab_full.pro,该工程包含了meshlab的全部功能,确认该mini工程为活动的项目(黑体加粗)。

(4)单击绿色play符号(绿色箭头),开始编译并运行,如果出现以下错误,请把src/distrib/plugins目录下的两个XML文件删掉,filter_measure和filter_mutualinfo。

ERROR:

Invalid parameter passed to C runtime function.

Invalid parameter passed to C runtime function.

terminate called after throwing an instance of'MeshLabXMLParsingException'

  what():  Error While parsing the XML filter plugindescriptors: We are trying to load a xml file that does not correspond to anydll or javascript code; please delete all the spurious xml files

 

如果一切顺利,可以编译通过并运行meshlab了,至少在我这里是遇到了加红的两个可恶的东东。附个图:

MeshLab和VCG的开发环境配置_第1张图片

 

辉辉                                 

(FightingBull Studio)                  

 

 

你可能感兴趣的:(Qt,VCG,MeshLab)