Spec-Zone.ru › PointCloudLibrary

Структура точки, представляющая евклидовы координаты xyz и цвет RGB. Подробнее...

#include <pcl/impl/point_types.hpp>

Inheritance graph
[условные обозначения]
Collaboration graph
[условные обозначения]

Открытые функции-члены

constexpr PointXYZRGB (const _PointXYZRGB &p)
constexpr PointXYZRGB ()
constexpr PointXYZRGB (std::uint8_t _r, std::uint8_t _g, std::uint8_t _b)
constexpr PointXYZRGB (float _x, float _y, float _z)
constexpr PointXYZRGB (float _x, float _y, float _z, std::uint8_t _r, std::uint8_t _g, std::uint8_t _b)

Дружественные функции

std::ostream & operator<< (std::ostream &os, const PointXYZRGB &p)

Подробное описание

Структура точки, представляющая евклидовы координаты xyz и цвет RGB.

По историческим причинам (PCL изначально разрабатывалась как пакет ROS) информация RGB упаковывается в целое число, а затем преобразуется во float. В ближайшем будущем мы планируем отказаться от этого, но пока следующий фрагмент кода поможет упаковывать и распаковывать цвета RGB в структуре PointXYZRGB:

// pack r/g/b into rgb
std::uint8_t r = 255, g = 0, b = 0; // Example: Red color
std::uint32_t rgb = ((std::uint32_t)r << 16 | (std::uint32_t)g << 8 | (std::uint32_t)b);
p.rgb = *reinterpret_cast<float*>(&rgb);

Чтобы распаковать данные в отдельные значения, используйте:

PointXYZRGB p;
// unpack rgb into r/g/b
std::uint32_t rgb = *reinterpret_cast<int*>(&p.rgb);
std::uint8_t r = (rgb >> 16) & 0x0000ff;
std::uint8_t g = (rgb >> 8) & 0x0000ff;
std::uint8_t b = (rgb) & 0x0000ff;
pcl::PointXYZRGB::PointXYZRGBconstexpr PointXYZRGB()Definition: point_types.hpp:597
pcl::PointXYZRGB::PointXYZRGB
constexpr PointXYZRGB()
Definition: point_types.hpp:597

Начиная с версии 1.1.0, также можно напрямую использовать p.r, p.g и p.b.

Определение находится в строке 593 файла point_types.hpp.

Описание конструктора и деструктора

PointXYZRGB() [1/5]

constexpr pcl::PointXYZRGB::PointXYZRGB ( const _PointXYZRGB & p )
inlineconstexpr

Определение находится в строке 595 файла point_types.hpp.

PointXYZRGB() [2/5]

constexpr pcl::PointXYZRGB::PointXYZRGB ( )
inlineconstexpr

Определение находится в строке 597 файла point_types.hpp.

PointXYZRGB() [3/5]

constexpr pcl::PointXYZRGB::PointXYZRGB ( std::uint8_t _r,
std::uint8_t _g,
std::uint8_t _b
)
inlineconstexpr

Определение находится в строке 599 файла point_types.hpp.

PointXYZRGB() [4/5]

constexpr pcl::PointXYZRGB::PointXYZRGB ( float _x,
float _y,
float _z
)
inlineconstexpr

Определение находится в строке 602 файла point_types.hpp.

PointXYZRGB() [5/5]

constexpr pcl::PointXYZRGB::PointXYZRGB ( float _x,
float _y,
float _z,
std::uint8_t _r,
std::uint8_t _g,
std::uint8_t _b
)
inlineconstexpr

Определение находится в строке 605 файла point_types.hpp.

Описание дружественных функций и связанных функций

operator<<

std::ostream& operator<< ( std::ostream & os,
const PointXYZRGB & p
)
friend

Документация этой структуры создана на основе следующего файла:
  • pcl/impl/point_types.hpp

© 2009–2012, Willow Garage, Inc.
© 2012–, Open Perception, Inc.
Licensed under the BSD License.
https://pointclouds.org/documentation/structpcl_1_1_point_x_y_z_r_g_b.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API