diff --git a/apps/3d_rec_framework/include/pcl/apps/3d_rec_framework/pc_source/mesh_source.h b/apps/3d_rec_framework/include/pcl/apps/3d_rec_framework/pc_source/mesh_source.h index de5307def19..c71deb64a19 100644 --- a/apps/3d_rec_framework/include/pcl/apps/3d_rec_framework/pc_source/mesh_source.h +++ b/apps/3d_rec_framework/include/pcl/apps/3d_rec_framework/pc_source/mesh_source.h @@ -14,6 +14,7 @@ #include #include #include +#include namespace pcl { @@ -99,11 +100,6 @@ namespace pcl model.assembled_.reset (new pcl::PointCloud); uniform_sampling (model_path, 100000, *model.assembled_, model_scale_); - /*pcl::visualization::PCLVisualizer vis("results"); - pcl::visualization::PointCloudColorHandlerCustom random_handler (model.assembled_, 255, 0, 0); - vis.addPointCloud (model.assembled_, random_handler, "points"); - vis.spin();*/ - if (bf::exists (trained_dir)) { //load views, poses and self-occlusions @@ -181,24 +177,23 @@ namespace pcl } else { - //load PLY model and scale it - vtkSmartPointer < vtkPLYReader > reader = vtkSmartPointer::New (); + vtkSmartPointer reader = vtkSmartPointer::New (); reader->SetFileName (model_path.c_str ()); - vtkSmartPointer < vtkTransform > trans = vtkSmartPointer::New (); + vtkSmartPointer trans = vtkSmartPointer::New (); trans->Scale (model_scale_, model_scale_, model_scale_); trans->Modified (); + trans->Update (); - vtkSmartPointer < vtkTransformFilter > filter_scale = vtkSmartPointer::New (); + vtkSmartPointer filter_scale = vtkSmartPointer::New (); filter_scale->SetTransform (trans); filter_scale->SetInputConnection (reader->GetOutputPort ()); + filter_scale->Update (); - vtkSmartPointer < vtkPolyDataMapper > mapper = vtkSmartPointer::New (); - mapper->SetInputConnection (filter_scale->GetOutputPort ()); + vtkSmartPointer mapper = filter_scale->GetOutput (); mapper->Update (); - vtkSmartPointer < vtkPolyData > poly_data = vtkSmartPointer::New (); - poly_data->Allocate(mapper->GetInput ()); + //generate views pcl::apps::RenderViewsTesselatedSphere render_views; render_views.setResolution (resolution_); @@ -207,9 +202,9 @@ namespace pcl render_views.setComputeEntropies (true); render_views.setTesselationLevel (tes_level_); render_views.setViewAngle (view_angle_); - render_views.addModelFromPolyData (poly_data); - render_views.setGenOrganized(gen_organized_); - render_views.setCamPosConstraints(campos_constraints_func_); + render_views.addModelFromPolyData (mapper); + render_views.setGenOrganized (gen_organized_); + render_views.setCamPosConstraints (campos_constraints_func_); render_views.generateViews (); std::vector::Ptr> views_xyz_orig;