struct EIGEN_ALIGN16 _PointXYZI
{
PCL_ADD_POINT4D; // This adds the members x,y,z which can also be accessed using the point (which is float[4])
union
{
struct
{
float intensity;
};
float data_c[4];
};
PCL_MAKE_ALIGNED_OPERATOR_NEW
};
在union中的结构体中是强度或者原本data中的第四个元素,从中二选一,那就保证了PointXYZ的整体结构保证一致,而rgbd中则是4个uint8_t ,相当于一个float所占用的字节数,所以这样统一了结构。能够在通用算法中做到了通用