Go to the documentation of this file.
29 template <
typename BaseVecT>
38 cout <<
timestamp <<
"IO Error: Unable to parse " <<
options.getInputFileName() << endl;
45 string pcm_name =
options.getPCM();
51 cout <<
timestamp <<
"Using PCL as point cloud manager is not implemented yet!" << endl;
54 else if(pcm_name ==
"STANN" || pcm_name ==
"FLANN" || pcm_name ==
"NABO" || pcm_name ==
"NANOFLANN")
57 int plane_fit_method = 0;
69 surface = make_shared<AdaptiveKSearchSurface<BaseVecT>>(
81 cout <<
timestamp <<
"Unable to create PointCloudManager." << endl;
82 cout <<
timestamp <<
"Unknown option '" << pcm_name <<
"'." << endl;
87 surface->setKd(
options.getKd());
88 surface->setKi(
options.getKi());
89 surface->setKn(
options.getKn());
92 if (!buffer->hasNormals() && buffer.get()->numPoints() < 1000000)
94 surface->calculateSurfaceNormals();
113 std::cout <<
options << std::endl;
122 string pcm_name =
options.getPCM();
123 auto surface = loadPointCloud<Vec>(
options);
126 cout <<
"Failed to create pointcloud. Exiting." << endl;
143 cout <<
timestamp <<
"Finished reconstruction" << endl;
static void setNumThreads(int n)
Sets the number of used threads if OpenMP is used for parallelization.
static void saveModel(ModelPtr m, std::string file)
std::shared_ptr< PointBuffer > PointBufferPtr
PointsetSurfacePtr< BaseVecT > loadPointCloud(const dmc_reconstruction::Options &options)
std::shared_ptr< PointsetSurface< BaseVecT > > PointsetSurfacePtr
int main(int argc, char **argv)
const kaboom::Options * options
static Timestamp timestamp
A global time stamp object for program runtime measurement.
A surface reconstruction object that implements the standard marching cubes algorithm using a octree ...
void panic_unimplemented(std::string msg)
Throws a panic exception with the given error message and denotes that the exception was thrown due t...
virtual void getMesh(BaseMesh< BaseVecT > &mesh)
Returns the surface reconstruction of the given point set.
std::shared_ptr< Model > ModelPtr
static ModelPtr readModel(std::string filename)
MeshBufferPtr apply(const BaseMesh< BaseVecT > &mesh)
Half-edge data structure implementing the BaseMesh interface.
lvr2
Author(s): Thomas Wiemann
, Sebastian Pütz , Alexander Mock , Lars Kiesow , Lukas Kalbertodt , Tristan Igelbrink , Johan M. von Behren , Dominik Feldschnieders , Alexander Löhr
autogenerated on Wed Mar 2 2022 00:37:24