PCLCommon.jl

PCLCommonModule.

PCL common types, functions and utilities.

Basic usage

The primary export is the PointCloud{PointT} (aliased to PointCloudPtr{PointT}), which represents a shared pointer of a point cloud (i.e. pcl::PointCloud<PointT>::Ptr) in PCL. You can create point clouds as follows:

using PCLCommon
# Create empty point cloud
cloud = PointCloud{PointXYZRGBA}()

which in C++ corresponds to:

pcl::PointCloud<pcl::PointXYZRGBA>::Ptr cloud = pcl::PointCloud<pcl::PointXYZRGBA>::Ptr(
        new pcl::PointCloud<pcl::PointXYZRGBA>);

If you want to load a point cloud from a PCD file, then use PCLIO.jl:

using PCLCommon
using PCLIO
# Create and load point cloud from a PCD file
cloud = PointCloud{PointXYZRGB}("your_pcd_file.pcd")

or

cloud = PointCloud{PointXYZRGB}()
loadPCDFile("your_pcd_file.pcd", cloud)

in C++:

pcl::PointCloud<pcl::PointXYZRGBA>::Ptr cloud = pcl::PointCloud<pcl::PointXYZRGBA>::Ptr(
        new pcl::PointCloud<pcl::PointXYZRGBA>);
pcl::loadPCDFile("your_pcd_file.pcd", *cloud);

If you need a value representation rather than a smart pointer, then use XXXVal (e.g. PointCloudVal) instead:

cloud = PointCloudVal{PointXYZRGBA}()
source

Index

Reference

boost::shared_ptr<T>

source
PCLCommon.PointCloudConstant.

Pointer representation for pcl::PointCloud<PointT> in C++

typealias of PointCloudPtr

source
use_count(s)

Returns reference count

source
PCLCommon.AxisType.

pcl::Axis

source

pcl::BRISKSignature512

source

pcl::Boundary

source

pcl::CPPFSignature

source

Pointer representation for pcl::Correspondence in C++

typealias of CorrespondencePtr

source

Pointer representation for pcl::Correspondences in C++

typealias of CorrespondencesPtr

source

pcl::ESFSignature640

source

pcl::FPFHSignature33

source

pcl::GRSDSignature21

source

pcl::IntensityGradient

source

pcl::InterestPoint

source
PCLCommon.LabelType.

pcl::Label

source

Pointer representation for pcl::ModelCoefficients in C++

typealias of ModelCoefficientsPtr

source

pcl::MomentInvariants

source

pcl::Narf36

source

pcl::Normal

source

pcl::NormalBasedSignature12

source

Similar to pcl::PCLBase, for dispatch

source

Pointer representation for pcl::PCLPointCloud2 in C++

typealias of PCLPointCloud2Ptr

source

pcl::PFHRGBSignature250

source

pcl::PFHSignature125

source

pcl::PPFRGBSignature

source

pcl::PPFSignature

source

pcl::PointDEM

source

Pointer representation for pcl::PointIndices in C++

typealias of PointIndicesPtr

source

pcl::PointNormal

source

pcl::PointSurfel

source

pcl::PointUV

source

pcl::PointWithRange

source

pcl::PointWithScale

source

pcl::PointWithViewpoint

source

pcl::PointXY

source

pcl::PointXYZ

source

pcl::PointXYZHSV

source

pcl::PointXYZI

source

pcl::PointXYZINormal

source

pcl::PointXYZL

source

pcl::PointXYZLNormal

source

pcl::PointXYZRGB

source

pcl::PointXYZRGBA

source

pcl::PointXYZRGBL

source

pcl::PointXYZRGBNormal

source

pcl::PrincipalCurvatures

source

pcl::PrincipalRadiiRSD

source

Pointer representation for pcl::RangeImage in C++

typealias of RangeImagePtr

source

pcl::ReferenceFrame

source

pcl::SHOT1344

source

pcl::SHOT352

source

pcl::ShapeContext1980

source

pcl::UniqueShapeContext1960

source

pcl::VFHSignature308

source
@boostsharedptr(name, args)

creates boost::shared_ptr expression (for package development)

Parameters

  • name : C++ type name

  • args : argments will be passed to constructor

template parameters in 1st argment and embedding expression in 2nd argment must be escaped.

Returns

  • handle : C++ boost shared pointer of a given C++ type name and argments

Example

handle = @boostsharedptr(
    "pcl::visualization::PointCloudColorHandlerRGBField<\$T>",
    "\$(cloud.handle)")
source
@defconstructor(expr, cxxname)

Defines convenient constructor for value types

Parameters

  • expr : Constructor expression

  • cxxname : C++ type name

Examples

@defptrconstructor PointCloudVal{PointT}() "pcl::PointCloud"
source
@defpcltype(expr, cxxname)

A macro to define PCL convenient types. Mostly intended to be used by package development.

Parameters

  • expr : Julia type name (can have type params)

  • cxxname : C++ type name

Example

@defpcltype PointCloud{T} "pcl::PointCloud"

which defines Julia wrapper types for C++ types:

  • PointCloudPtr{T}: boost shared pointer of pcl::PointCloud<T> (i.e. pcl::PointCloud<T>::Ptr) wrapper

  • PointCloudVal{T}: pcl::PointCloud<T> value wrapper

  • PointCloud{T}: type aliased to PointCloudPtr{T}

and also Cxx types:

  • pclPointCloudPtr{T}: pcl::PointCloud<T>::Ptr

  • pclPointCloudVal{T}: pcl::PointCloud<T>

With the combination of @defptrconstructor, you can then use pcl::PointCloud<T>::Ptr (entirely used in PCL tutorials) as follows:

cloud = PointCloud{PointXYZ}()

Note that PointCloud{T} is a Julia wrapper, you can get the C++ representation as PCLCommon.handle(cloud) or use handle = pclPointCloud{PointXYZ}() which returns C++ type.

source
@defptrconstructor(expr, cxxname)

Defines convenient constructor for point types

Parameters

  • expr : Constructor expression

  • cxxname : C++ type name

Examples

@defptrconstructor PointCloud{PointT}() "pcl::PointCloud"
source
Base.convertMethod.
convert(?, cloud)

Converts a point cloud to a different type of point cloud

Examples

cloud = PointCloud{PointXYZRGB}()
xyz_cloud = convert(PointCloud{PointXYZ}, cloud)
source
PCLCommon.deg2radMethod.

pcl::deg2rad

source

Pointer representation for pcl::Correspondence in C++

source

Value representation for pcl::Correspondence in C++

source

Pointer representation for pcl::Correspondences in C++

source

Value representation for pcl::Correspondences in C++

source

Pointer representation for pcl::ModelCoefficients in C++

source

Value representation for pcl::ModelCoefficients in C++

source

Pointer representation for pcl::PCLPointCloud2 in C++

source

Value representation for pcl::PCLPointCloud2 in C++

source

Pointer representation for pcl::PointCloud<PointT> in C++

source

Value representation for pcl::PointCloud<PointT> in C++

source

Pointer representation for pcl::PointIndices in C++

source

Value representation for pcl::PointIndices in C++

source

Pointer representation for pcl::RangeImage in C++

source

Value representation for pcl::RangeImage in C++

source