本文整理汇总了C++中pointcloud::Ptr::get方法的典型用法代码示例。如果您正苦于以下问题:C++ Ptr::get方法的具体用法?C++ Ptr::get怎么用?C++ Ptr::get使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类pointcloud::Ptr
的用法示例。
在下文中一共展示了Ptr::get方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: main
int main( int argc, char* argv[] )
{
if( argc < 3 )
{
usage();
exit(0);
}
string asc_file = argv[1];
string ply_file = argv[2];
int sampling = 1;
float cell_size = 0;
if( argc >= 4 )
sampling = lexical_cast<int>( argv[3] );
if( argc >= 5 )
cell_size = lexical_cast<float>( argv[4] );
Environment env;
Pointcloud::Ptr pc = new Pointcloud();
env.attachItem( pc.get() );
env.setFrameNode( pc.get(), env.getRootNode() );
ifstream asc( asc_file.c_str() );
pc->readText( asc, sampling, Pointcloud::XYZR );
if( cell_size > 0 )
{
#ifdef ENVIRE_USE_CGAL
Pointcloud::Ptr pc_simp = new Pointcloud();
env.attachItem( pc_simp.get() );
env.setFrameNode( pc_simp.get(), env.getRootNode() );
SimplifyPointcloud::Ptr spc = new SimplifyPointcloud();
env.attachItem( spc.get() );
spc->addInput( pc.get() );
spc->addOutput( pc_simp.get() );
spc->setSimplifyCellSize( cell_size );
spc->updateAll();
pc = pc_simp;
#else
std::cout << "ignoring cell_size parameter since CGAL is not compiled in." << std::endl;
#endif
}
ofstream ply( ply_file.c_str() );
pc->writePly( ply_file, ply );
}