写一段代码,使用pcl和eigen,能够将稠密点云绕y轴旋转30度
时间: 2023-02-26 08:46:08 浏览: 64
#include <pcl/point_types.h>
#include <pcl/io/pcd_io.h>
#include <pcl/common/eigen.h>
#include <pcl/common/transforms.h>int main( int argc, char** argv )
{
pcl::PointCloud<pcl::PointXYZ>::Ptr cloud (new pcl::PointCloud<pcl::PointXYZ>);
pcl::io::loadPCDFile("example.pcd", *cloud); Eigen::Matrix4f transform = Eigen::Matrix4f::Identity();
float theta = 30.0;
transform (1,1) = cos (theta);
transform (1,2) = -sin(theta);
transform (2,1) = sin (theta);
transform (2,2) = cos (theta); pcl::PointCloud<pcl::PointXYZ>::Ptr transformed_cloud (new pcl::PointCloud<pcl::PointXYZ> ());
pcl::transformPointCloud (*cloud, *transformed_cloud, transform); pcl::io::savePCDFile ("transformed.pcd", *transformed_cloud);
return (0);
}