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

 

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