一、下載解壓
下載地址 http://lastools.github.io/download/LAStools.zip
解壓地址 G:/LAStools/
二、編譯
2.1 打開
用VS2017打開lastools.dsw。歷史原因,一直點確定就可以。
2.2 移除失敗的項目
2.3 修改代碼
打開LASlib的頭文件mydefs.hpp,定位到69行,只保留 #if defined(_MSC_VER),刪除或註釋該行其它代碼。
2.4 注
Win 10系統需要,右鍵LASlib—屬性—配置屬性—常規—Windows SDK 版本—選擇合適的。
否則可能出現錯誤:找不到Windows SDK 版本8.1。請安裝所需的版本的Windows SDK或者在項目屬性頁中或通過右鍵單擊解決方案並選擇”重定解決方案目標”來更改SDK版本。
2.5 修改輸出目錄
右鍵LASlib—屬性—配置屬性—常規—輸出目錄—修改爲“$(SolutionDir)$(ProjectName)\$(Configuration)\”。
2.6 修改頭文件目錄
右鍵LASlib—配置屬性—C/C++—常規—附加包含目錄—刪除“...\laszip\stl”
2.7 修改運行庫
右鍵LASlib—屬性—C/C++—代碼生成—運行庫—筆者選擇“多線程DLL(/MD)”。(默認應該是多線程/MT)
2.8 生成lib
右鍵LASlib—重新生成。結果在 G:/LAStools/LASlib/Release/LASlib.lib
三、測試
3.1 新建工程
(1)配置屬性—常規—Windows SDK版本,與前者保持一致。
(2)配置屬性—C/C++—代碼生成—運行庫,(默認)選擇多選程DLL(/MD),與前者保持一致。
3.2 頭文件目錄
配置屬性—C/C++—常規——附加包含目錄,添加 G:\LAStools\LASlib\inc 和 G:\LAStools\LASzip\src
3.3 靜態庫
配置屬性—鏈接器—輸入——添加 G:\LAStools\LASlib\Release\LASlib.lib
3.4 測試代碼
#include "lasreader.hpp"
#include "laswriter.hpp"
/* 將las文件轉換爲laz文件 */
void MDtestLASlib::on_pushButton_clicked()
{
LASreadOpener lasreadopener;
lasreadopener.set_file_name("G:/a1.las");
LASreader* lasreader = lasreadopener.open();
LASwriteOpener laswriteopener;
laswriteopener.set_file_name("G:/b2.laz");
LASwriter* laswriter = laswriteopener.open(&lasreader->header);
while (lasreader->read_point())
laswriter->write_point(&lasreader->point);
laswriter->close();
delete laswriter;
lasreader->close();
delete lasreader;
}