Структура точки, представляющая евклидовы координаты xyz и цвет RGB. Подробнее...
#include <pcl/impl/point_types.hpp>
Открытые функции-члены | |
| 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]
| inlineconstexpr |
Определение находится в строке 595 файла point_types.hpp.
PointXYZRGB() [2/5]
| inlineconstexpr |
Определение находится в строке 597 файла point_types.hpp.
PointXYZRGB() [3/5]
| inlineconstexpr |
Определение находится в строке 599 файла point_types.hpp.
PointXYZRGB() [4/5]
| inlineconstexpr |
Определение находится в строке 602 файла point_types.hpp.
PointXYZRGB() [5/5]
| inlineconstexpr |
Определение находится в строке 605 файла point_types.hpp.
Описание дружественных функций и связанных функций
operator<<
| 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