В частности, я уже установил первый новый тип как POINTXYZIT (x, y, z, интенсивность, отметка времени, кольцо), чтобы получить данные, в то же время я хотел бы написать еще один новый тип точек как POINTXYZID (x,y, z, интенсивность, расстояние, кольцо). Когда я запускаю, make показывает, что:
my_pointstype.cpp: 29: 2: ошибка: конфликтующее объявление 'PointXYZID EIGEN_ALICN16'} EIGEN_ALICN16;^ my_pointstype.cpp: 13: 2: примечание: предыдущее объявление 'PointXYZIT EIGEN_ALICN16'} EIGEN_ALICN16;
Моя система - Ubuntu16.04 с pcl-1.8 и cmake.следующий код:
struct PointXYZIT {
PCL_ADD_POINT4D
uint8_t intensity;
double timestamp;
uint16_t ring;
EIGEN_MAKE_ALIGNED_OPERATOR_NEW
}EIGEN_ALICN16;
POINT_CLOUD_REGISTER_POINT_STRUCT(PointXYZIT,
(float,x,x)(float,y,y)(float,z,z)(uint8_t,intensity,intensity)
(double,timestamp,timestamp)(uint16_t,ring,ring))
struct PointXYZID {
PCL_ADD_POINT4D
uint8_t intensity;
float distance;
uint16_t ring;
EIGEN_MAKE_ALIGNED_OPERATOR_NEW
}EIGEN_ALICN16;
POINT_CLOUD_REGISTER_POINT_STRUCT(PointXYZID,
(float,x,x)(float,y,y)(float,z,z)(uint8_t,intensity,intensity)
(float,distance,distance)(uint16_t,ring,ring))
Я просто хочу получить данные о расстоянии и записать в другой файл .pcd.