Point Cloud Library (PCL)  1.9.1-dev
List of all members | Public Types | Public Member Functions | Static Public Member Functions | Public Attributes
pcl::PCLPointCloud2 Struct Reference

#include <pcl/PCLPointCloud2.h>

Public Types

using Ptr = boost::shared_ptr< ::pcl::PCLPointCloud2 >
 
using ConstPtr = boost::shared_ptr< const ::pcl::PCLPointCloud2 >
 

Public Member Functions

PCLPointCloud2operator+= (const PCLPointCloud2 &rhs)
 Add a point cloud to the current cloud. More...
 
PCLPointCloud2 operator+ (const PCLPointCloud2 &rhs)
 Add a point cloud to another cloud. More...
 

Static Public Member Functions

static bool concatenate (pcl::PCLPointCloud2 &cloud1, const pcl::PCLPointCloud2 &cloud2)
 Inplace concatenate two pcl::PCLPointCloud2. More...
 
static bool concatenate (const PCLPointCloud2 &cloud1, const PCLPointCloud2 &cloud2, PCLPointCloud2 &cloud_out)
 Concatenate two pcl::PCLPointCloud2. More...
 

Public Attributes

::pcl::PCLHeader header
 
std::uint32_t height = 0
 
std::uint32_t width = 0
 
std::vector<::pcl::PCLPointFieldfields
 
std::uint8_t is_bigendian = BOOST_ENDIAN_BIG_BYTE
 
std::uint32_t point_step = 0
 
std::uint32_t row_step = 0
 
std::vector< std::uint8_t > data
 
std::uint8_t is_dense = 0
 

Detailed Description

Definition at line 19 of file PCLPointCloud2.h.

Member Typedef Documentation

◆ ConstPtr

using pcl::PCLPointCloud2::ConstPtr = boost::shared_ptr<const ::pcl::PCLPointCloud2>

Definition at line 39 of file PCLPointCloud2.h.

◆ Ptr

using pcl::PCLPointCloud2::Ptr = boost::shared_ptr< ::pcl::PCLPointCloud2>

Definition at line 38 of file PCLPointCloud2.h.

Member Function Documentation

◆ concatenate() [1/2]

static bool pcl::PCLPointCloud2::concatenate ( pcl::PCLPointCloud2 cloud1,
const pcl::PCLPointCloud2 cloud2 
)
static

Inplace concatenate two pcl::PCLPointCloud2.

IFF the layout of all the fields in both the clouds is the same, this command doesn't remove any fields named "_" (aka marked as skip). For comparison of field names, "rgb" and "rgba" are considered equivalent However, if the order and/or number of non-skip fields is different, the skip fields are dropped and non-skip fields copied selectively. This function returns an error if

  • the total number of non-skip fields is different
  • the non-skip field names are named differently (excluding "rbg{a}") in serial order
  • the endian-ness of both clouds is different
    Parameters
    [in,out]cloud1the first input and output point cloud dataset
    [in]cloud2the second input point cloud dataset
    Returns
    true if successful, false if failed (e.g., name/number of fields differs)

Referenced by pcl::PolygonMesh::concatenate(), and pcl::concatenate().

◆ concatenate() [2/2]

static bool pcl::PCLPointCloud2::concatenate ( const PCLPointCloud2 cloud1,
const PCLPointCloud2 cloud2,
PCLPointCloud2 cloud_out 
)
inlinestatic

Concatenate two pcl::PCLPointCloud2.

Parameters
[in]cloud1the first input point cloud dataset
[in]cloud2the second input point cloud dataset
[out]cloud_outthe resultant output point cloud dataset
Returns
true if successful, false if failed (e.g., name/number of fields differs)

Definition at line 67 of file PCLPointCloud2.h.

References pcl::concatenate().

◆ operator+()

PCLPointCloud2 pcl::PCLPointCloud2::operator+ ( const PCLPointCloud2 rhs)
inline

Add a point cloud to another cloud.

Parameters
[in]rhsthe cloud to add to the current cloud
Returns
the new cloud as a concatenation of the current cloud and the new given cloud

Definition at line 87 of file PCLPointCloud2.h.

◆ operator+=()

PCLPointCloud2& pcl::PCLPointCloud2::operator+= ( const PCLPointCloud2 rhs)

Add a point cloud to the current cloud.

Parameters
[in]rhsthe cloud to add to the current cloud
Returns
the new cloud as a concatenation of the current cloud and the new given cloud

Member Data Documentation

◆ data

std::vector<std::uint8_t> pcl::PCLPointCloud2::data

◆ fields

std::vector<::pcl::PCLPointField> pcl::PCLPointCloud2::fields

◆ header

::pcl::PCLHeader pcl::PCLPointCloud2::header

Definition at line 21 of file PCLPointCloud2.h.

Referenced by pcl::fromPCLPointCloud2(), and pcl::toPCLPointCloud2().

◆ height

std::uint32_t pcl::PCLPointCloud2::height = 0

◆ is_bigendian

std::uint8_t pcl::PCLPointCloud2::is_bigendian = BOOST_ENDIAN_BIG_BYTE

Definition at line 29 of file PCLPointCloud2.h.

◆ is_dense

std::uint8_t pcl::PCLPointCloud2::is_dense = 0

◆ point_step

std::uint32_t pcl::PCLPointCloud2::point_step = 0

◆ row_step

std::uint32_t pcl::PCLPointCloud2::row_step = 0

Definition at line 31 of file PCLPointCloud2.h.

Referenced by pcl::fromPCLPointCloud2(), and pcl::toPCLPointCloud2().

◆ width

std::uint32_t pcl::PCLPointCloud2::width = 0

The documentation for this struct was generated from the following file: