LASlib在VS2010平台下的完美编译

LASlib在VS2010平台下的完美编译
1. 简要介绍
LASlib是进行点云数据读写的理想工具,由北卡计算机学院的Martine isenburg编写。基于该开源库,作者同时开发了LASTool,包含了一系列点云数据处理的工具。具体参见项目官方网站。LASlib在官网上的描述如下:

We provide an easy-to-use, ultra-light-weight, very efficient C++ programming API called LASlib (with LASzip DLL) that implements reading and writing of LiDAR points from and to the ASPRS LAS format (version 1.0-1.3) as well as its — losslessly compressed, but otherwise identical twin — the LAZ format (see below). All source code (LGPL) is included.

从介绍可以看出,LASlib提供了LAS格式的LiDAR点云数据的高效读写接口。因此,对于一些常用的LAS格式的数据操作,LASlib的开源、高效等特性,无疑使其成为一个重要的开发库。
由于作者习惯基于早期的VC 6.0平台进行开发。因此,官方网站的LASlib源码包仅仅提供了VC 6.0版本的工程文件。如果需要在其他平台开发或者考虑编译64位版本开发库,如VS 2010或者VS2013,那么就需要进行工程转换。但是,实际转换过程中会造成一些意想不到的错误。本文就基于实际操作,分享LASlib在VS2010上的64位开发库的编译配置经验。
2. 工具与源码
开发工具:VS 2010
源码:建议从逛网下载LASTool, 其包含了LASlib和LASzip库
http://www.cs.unc.edu/~isenburg/lastools/
3. 配置与编译
1) 下载源码后,解压源码到任意目录。
这里写图片描述
2) 启动VS 2010,打开LASlib目录下的LASlib.dsw工程文件。由于原始工程在VC 6.0下创建。因此,提示需要进行版本转换。点击确认进行转换。
这里写图片描述

3) 右键点击LASlib工程,在属性对话框中选择configuration manager 按钮,新建x64的配置。同时,设置当前配置为x64。
这里写图片描述
4) 右键点击LASlib工程,在属性对话框 - C/C++ - preprocessor下增加LASZIPDLL_EXPORTS预编译宏。
这里写图片描述

5) 打开LASlib工程下的头文件mydefs.hpp,进行如下修改。

    //#if defined(_MSC_VER) && (_MSC_VER < 1300)
    //typedef int                BOOL;
    //#else
    //typedef bool               BOOL;
    //#endif
    typedef int                BOOL;

6) 删除LASlib目录下的stl目录。同时,编译相应的工程文件。最终得到基于VS 2010平台的64位开发库。
这里写图片描述
这里写图片描述
4. 参考资料
http://www.cs.unc.edu/~isenburg/lastools/
https://groups.google.com/forum/#!topic/lastools/beQ4FoxT3Qk
https://groups.google.com/forum/#!topic/lastools/zDfLAcbSR7o/discussion

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值