QT5.9.9+PCL1.8.1中读取TXT格式点云

由于TXT格式的点云文件是下图中的样子

因此按行读取即可,核心代码段如下

            std::string file = fileName.toStdString();  //fileName为文件名,QString型数据
            ifstream infile;
            infile.open(file.data());   //将文件流对象与文件连接起来
            assert(infile.is_open());   //若失败,则输出错误消息,并终止程序运行
            string s;
            while(getline(infile,s))
            {
                QString ss,s1,s2,s3;
                ss=QString::fromStdString(s);
                s1=ss.section(" ",0,0);    // 用QString的section()函数提取三维座标
                s2=ss.section(" ",1,1);
                s3=ss.section(" ",2,2);
                pcl::PointXYZRGB current_point;
                current_point.x=s1.toFloat();
                current_point.y=s2.toFloat();
                current_point.z=s3.toFloat();
                pointptr->push_back(current_point);  //pointptr是点云指针
            }
            infile.close();  

读取完之后显示就可以啦,效果如下图

经典的斯坦福兔子!!!交流:QQ:1826380364

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章