PointCloudLibrary/pcl
Voir sur GitHubCan we have makeShared() for pcl::PolygonMesh?
Open
#2 752 ouverte le 30 déc. 2018
good first issuekind: todomodule: common
Métriques du dépôt
- Stars
- (9 023 stars)
- Métriques de merge PR
- (Merge moyen 8j 7h) (3 PRs mergées en 30 j)
Description
Your Environment
- Operating System and version: Ubuntu 18.04
- Compiler: GCC 7
- PCL Version: Latest
Context
I was experimenting with pcl::MeshSmoothingLaplacianVTK and then I realize there isn't a makeShared() function of pcl::PolygonMesh. For example, for the usual pcl::PointCloud<pcl::PointXYZ> we can do something like below
pcl::PointCloud<pcl::PointXYZ> cld;
pcl::VoxelGrid<pcl::PointXYZ> vox;
vox.setInputCloud(cld.makeShared());
vox.filter(cld);
but I can't do the below
pcl::PolygonMesh mesh;
pcl::MeshSmoothingLaplacianVTK vtk;
vtk.setInputMesh(mesh.makeShared());
vtk.process(mesh);
eventually I figured out if I want to keep my variables as object based and avoid mixing and matching with pointers, the below seems to work
pcl::PolygonMesh mesh;
pcl::MeshSmoothingLaplacianVTK vtk;
vtk.setInputMesh(boost::make_shared<pcl::PolygonMesh>(mesh));
vtk.process(mesh);
I am wondering is there a reason there isn't a makeShared() function for pcl::PolygonMesh? Or is it simply someone need to submit a PR to add that functionality?