CloudCompare 2.13+ 项目编译指南

CloudCompare 2.13+ 项目编译指南

CloudCompare CloudCompare main repository CloudCompare 项目地址: https://gitcode.com/gh_mirrors/cl/CloudCompare

前言

CloudCompare 是一款功能强大的开源点云处理软件,支持多种点云数据处理和分析功能。本文将详细介绍如何从源代码编译 CloudCompare 2.13 及以上版本,帮助开发者或高级用户构建自定义版本。

基础环境准备

1. 必备依赖

编译 CloudCompare 需要以下基础工具和库:

  1. CMake:跨平台的构建工具,版本要求 3.5 及以上
  2. Qt 框架:版本要求 5.12 至 5.15 之间(不包含 6.0)
各平台 Qt 安装建议:
  • Windows:推荐从 Qt 官网下载安装程序
  • macOS:可使用 Qt 官网安装程序或 Homebrew 安装
  • Linux:推荐使用系统包管理器安装

对于 Debian/Ubuntu 系统,需要安装以下包:

sudo apt-get install libqt5svg5-dev libqt5opengl5-dev qt5-default qttools5-dev qttools5-dev-tools libqt5websockets5-dev

获取源代码

CloudCompare 使用 Git 子模块管理外部依赖库和插件,因此克隆时需要添加 --recursive 参数:

git clone --recursive <仓库地址>

CMake 配置

基本配置

基础构建只需要配置 Qt 的安装路径(Windows 和 macOS 需要):

# Windows 示例
mkdir build && cd build
cmake -DCMAKE_PREFIX_PATH=C:\Qt\5.15.2\msvc2019_64 ..

# macOS 示例
mkdir build && cd build
cmake -DCMAKE_PREFIX_PATH=/usr/local/opt/qt@5 ..

# Linux 示例
mkdir build && cd build
cmake ..

安装路径配置

可通过 CMAKE_INSTALL_PREFIX 指定安装路径:

cmake -DCMAKE_INSTALL_PREFIX=/your/install/path ..

编译与安装

编译项目

cmake --build .

安装程序

cmake --install .

可选功能与插件配置

CloudCompare 提供了丰富的可选功能和插件,需要在 CMake 配置阶段通过参数启用。

核心可选功能

| 选项名称 | 默认值 | 功能描述 | |---------|-------|---------| | OPTION_BUILD_CCVIEWER | ON | 是否构建 ccViewer 查看器 | | OPTION_USE_SHAPE_LIB | ON | 启用 SHP 文件支持 | | OPTION_USE_DXF_LIB | ON | 启用 DXF 文件支持 | | OPTION_USE_GDAL | OFF | 通过 GDAL 库支持多种栅格文件 |

Windows 特有选项

| 选项名称 | 默认值 | 功能描述 | |---------|-------|---------| | OPTION_MP_BUILD | OFF | Visual Studio 多进程编译(加快速度但占用更多CPU) | | OPTION_SUPPORT_3D_CONNEXION_DEVICES | OFF | 支持 3D 鼠标设备 | | OPTION_USE_OCULUS_SDK | OFF | 支持 Oculus VR 设备 | | OPTION_USE_VISUAL_LEAK_DETECTOR | OFF | 使用 Visual Leak Detector 检测内存泄漏 |

插件系统

CloudCompare 的插件分为三大类:

1. GL 插件(图形相关)
  • qEDL:Eye Dome Lighting 效果
  • qSSAO:屏幕空间环境光遮蔽
2. IO 插件(文件输入输出)
  • qE57IO:E57 点云格式支持(需要 libE57)
  • qFBXIO:Autodesk FBX 格式支持(需要 FBX SDK)
  • qLASIO:LAS/LAZ 点云格式支持(推荐)
  • qPDALIO:通过 PDAL 支持 LAS/LAZ(已弃用)
  • qStepCADImport:STEP CAD 文件导入
3. 标准插件(功能扩展)
  • q3DMASC:自动点云分类
  • qAnimation:动画制作
  • qBroom:交互式点云清理工具
  • qCanupo:点云分类算法
  • qM3C2:稳健的点云距离计算
  • qPCL:PCL 库算法接口
  • qPoissonRecon:泊松表面重建

特殊插件配置说明

部分插件需要额外依赖库,配置较为复杂:

qE57IO 插件

需要:

  1. Xerces-C++ 静态库
  2. LibE57 库

qFBXIO 插件

需要 Autodesk FBX SDK,配置时需要指定:

  1. FBX SDK 头文件目录
  2. FBX SDK 库文件路径

qPCL 插件

需要安装 Point Cloud Library (PCL),建议参考 PCL 官方文档配置。

GDAL 支持

如需栅格文件支持,需要配置:

  1. GDAL 头文件目录
  2. GDAL 库文件路径
  3. (Windows) GDAL DLL 文件目录

平台特定说明

Linux 系统

较旧版本的 CMake (<3.13) 可能导致程序无法在所有用户环境下运行,建议使用较新版本。

macOS 系统

开发时可添加 -DCC_MAC_DEV_PATHS 标志,使程序从构建目录加载插件而非应用包。

Windows 系统

Visual Studio 用户需注意:

  1. 所有文件(可执行文件、插件、DLL)需复制到安装目录
  2. 默认调试配置可能无法正常工作,需特殊配置

调试技巧

  1. 调试插件时,可能需要注释掉 QT_NO_DEBUG 宏定义
  2. 可通过环境变量指定插件、着色器和翻译文件的搜索路径:
    • CC_PLUGIN_PATH
    • CC_SHADER_PATH
    • CC_TRANSLATION_PATH

结语

本文详细介绍了 CloudCompare 的编译过程和可选功能配置。通过灵活配置插件和功能,用户可以根据需求构建定制化的点云处理工具。对于特定插件的详细使用说明,建议参考 CloudCompare 官方文档和各个插件的专门介绍。

CloudCompare CloudCompare main repository CloudCompare 项目地址: https://gitcode.com/gh_mirrors/cl/CloudCompare

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

孔朦煦

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值