macOS + PCL + CLion + CloudCompare 生成点云数据

参考文章:https://blog.csdn.net/qq_44324181/article/details/119426786

一、环境

系统:macOS Monterey 12.3.1 (21E258)
CPU:2.3 GHz 四核Intel Core i5
brew:

brew install pcl

/usr/local/Cellar/pcl/1.12.1_2

brew install qt

/usr/local/Cellar/qt/6.2.3_1

二、CMakeLists.txt

cmake_minimum_required(VERSION 3.22)
project(pcd_write) # 给工程命名

set(CMAKE_CXX_STANDARD 14)
set(CMAKE_PREFIX_PATH ${CMAKE_PREFIX_PATH} "/usr/local/Cellar/qt/6.2.3_1/lib/cmake/Qt6")
find_package(PCL 1.12 REQUIRED COMPONENTS common io) # 使用find_package寻找指定版本PCL的指定模块
include_directories(${PCL_INCLUDE_DIRS})
link_directories(${PCL_LIBRARY_DIRS})
add_definitions(${PCL_DEFINITIONS})

add_executable(pcd_write pcd_write.cpp)
target_link_libraries(pcd_write ${PCL_LIBRARIES})

三、pcd_write.cpp


#include <iostream>
#include <pcl/io/pcd_io.h>
#include <pcl/point_types.h>

int main ()
{
    pcl::PointCloud<pcl::PointXYZ> cloud;

    // Fill in the cloud data
    cloud.width    = 200;
    cloud.height   = 200;
    cloud.is_dense = false;
    cloud.resize (cloud.width * cloud.height);

    for (auto& point: cloud)
    {
        point.x = 1024 * rand () / (RAND_MAX + 1.0f);
        point.y = 1024 * rand () / (RAND_MAX + 1.0f);
        point.z = 1024 * rand () / (RAND_MAX + 1.0f);
    }

    pcl::io::savePCDFileASCII ("test_pcd.pcd", cloud);
    std::cerr << "Saved " << cloud.size () << " data points to test_pcd.pcd." << std::endl;

    for (const auto& point: cloud)
        std::cerr << "    " << point.x << " " << point.y << " " << point.z << std::endl;

    return (0);
}

运行结果:
在这里插入图片描述

使用CC打开:test_pcd.pcd
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值