A point structure representing Euclidean xyz coordinates, and the RGB color. More...
#include <pcl/impl/point_types.hpp>
Public Member Functions | |
| 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) |
Friends | |
| std::ostream & | operator<< (std::ostream &os, const PointXYZRGB &p) |
Detailed Description
A point structure representing Euclidean xyz coordinates, and the RGB color.
Due to historical reasons (PCL was first developed as a ROS package), the RGB information is packed into an integer and casted to a float. This is something we wish to remove in the near future, but in the meantime, the following code snippet should help you pack and unpack RGB colors in your PointXYZRGB structure:
// 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);
To unpack the data into separate values, use:
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
Alternatively, from 1.1.0 onwards, you can use p.r, p.g, and p.b directly.
Definition at line 593 of file point_types.hpp.
Constructor & Destructor Documentation
PointXYZRGB() [1/5]
| inlineconstexpr |
Definition at line 595 of file point_types.hpp.
PointXYZRGB() [2/5]
| inlineconstexpr |
Definition at line 597 of file point_types.hpp.
PointXYZRGB() [3/5]
| inlineconstexpr |
Definition at line 599 of file point_types.hpp.
PointXYZRGB() [4/5]
| inlineconstexpr |
Definition at line 602 of file point_types.hpp.
PointXYZRGB() [5/5]
| inlineconstexpr |
Definition at line 605 of file point_types.hpp.
Friends And Related Function Documentation
operator<<
| friend |
The documentation for this struct was generated from the following file:
- 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