ReUseX  0.0.1
3D Point Cloud Processing for Building Reuse
Loading...
Searching...
No Matches
types.hpp
Go to the documentation of this file.
1// SPDX-FileCopyrightText: 2025 Povl Filip Sonne-Frederiksen
2//
3// SPDX-License-Identifier: GPL-3.0-or-later
4
5#pragma once
6#include <pcl/pcl_base.h>
7#include <pcl/point_cloud.h>
8#include <pcl/point_types.h>
9
10namespace ReUseX {
11
12using PointT = pcl::PointXYZRGB;
13using NormalT = pcl::Normal;
14using LabelT = pcl::Label;
15using LocT = pcl::PointXYZ;
16
17using Indices = pcl::Indices;
18using IndicesPtr = pcl::IndicesPtr;
19using IndicesConstPtr = pcl::IndicesConstPtr;
20
21using Cloud = pcl::PointCloud<PointT>;
22using CloudPtr = typename Cloud::Ptr;
23using CloudConstPtr = typename Cloud::ConstPtr;
24
25using CloudN = pcl::PointCloud<NormalT>;
26using CloudNPtr = typename CloudN::Ptr;
27using CloudNConstPtr = typename CloudN::ConstPtr;
28
29using CloudL = pcl::PointCloud<LabelT>;
30using CloudLPtr = typename CloudL::Ptr;
31using CloudLConstPtr = typename CloudL::ConstPtr;
32
33using CloudLoc = pcl::PointCloud<LocT>;
34using CloudLocPtr = typename CloudLoc::Ptr;
35using CloudLocConstPtr = typename CloudLoc::ConstPtr;
36
37template <typename Scalar, int Rows>
39 std::vector<Eigen::Matrix<Scalar, Rows, 1>,
40 Eigen::aligned_allocator<Eigen::Matrix<Scalar, Rows, 1>>>;
41
42using Pair = std::pair<Eigen::Vector4d, Eigen::Vector3d>;
43using PlanePair = std::pair<Pair, Pair>;
44
45} // namespace ReUseX
pcl::PointCloud< NormalT > CloudN
Definition types.hpp:25
typename CloudN::Ptr CloudNPtr
Definition types.hpp:26
typename CloudLoc::ConstPtr CloudLocConstPtr
Definition types.hpp:35
std::vector< Eigen::Matrix< Scalar, Rows, 1 >, Eigen::aligned_allocator< Eigen::Matrix< Scalar, Rows, 1 > > > EigenVectorContainer
Definition types.hpp:38
pcl::PointXYZ LocT
Definition types.hpp:15
pcl::PointXYZRGB PointT
Definition types.hpp:12
pcl::Indices Indices
Definition types.hpp:17
pcl::Normal NormalT
Definition types.hpp:13
typename CloudL::ConstPtr CloudLConstPtr
Definition types.hpp:31
pcl::IndicesPtr IndicesPtr
Definition types.hpp:18
pcl::PointCloud< LocT > CloudLoc
Definition types.hpp:33
typename Cloud::Ptr CloudPtr
Definition types.hpp:22
pcl::Label LabelT
Definition types.hpp:14
std::pair< Pair, Pair > PlanePair
Definition types.hpp:43
pcl::PointCloud< LabelT > CloudL
Definition types.hpp:29
typename CloudN::ConstPtr CloudNConstPtr
Definition types.hpp:27
std::pair< Eigen::Vector4d, Eigen::Vector3d > Pair
Definition types.hpp:42
typename CloudLoc::Ptr CloudLocPtr
Definition types.hpp:34
pcl::IndicesConstPtr IndicesConstPtr
Definition types.hpp:19
pcl::PointCloud< PointT > Cloud
Definition types.hpp:21
typename CloudL::Ptr CloudLPtr
Definition types.hpp:30
typename Cloud::ConstPtr CloudConstPtr
Definition types.hpp:23