40 #ifndef H_OGF_MESH_COMMANDS_MESH_GROB_POINTS_COMMANDS_H
41 #define H_OGF_MESH_COMMANDS_MESH_GROB_POINTS_COMMANDS_H
78 void smooth_point_set(
79 unsigned int nb_iterations = 1,
80 unsigned int nb_neighbors = 30
96 bool relative_radius =
true
130 double radius = 0.005,
131 bool relative_radius =
true,
132 const std::string& attribute =
"density"
150 unsigned int nb_smoothing_iterations = 1,
151 unsigned int nb_neighbors = 30
166 unsigned int depth = 8
195 bool copy_normals =
false,
196 unsigned int nb_points = 30000,
197 unsigned int Lloyd_iter = 5,
198 unsigned int Newton_iter = 30,
199 unsigned int Newton_m = 7
216 unsigned int nb_points = 30000,
217 unsigned int Lloyd_iter = 5,
218 unsigned int Newton_iter = 30,
219 unsigned int Newton_m = 7
241 bool selected =
false
Base class for Commands related with a MeshGrob object.
Commands that manipulate point sets.
void sample_volume(const NewMeshGrobName &points="points", unsigned int nb_points=30000, unsigned int Lloyd_iter=5, unsigned int Newton_iter=30, unsigned int Newton_m=7)
Creates a pointset that samples a volume.
bool estimate_normals(index_t nb_neighbors=30, bool reorient=true)
Estimates the normal vector to a point-sampled surface using K nearest neighbors. The computed normal...
void detect_outliers(index_t nb=10, double radius=0.01, bool relative_radius=true)
Marks isolated points as selection.
void project_on_surface(const MeshGrobName &surface)
Projects a mesh onto a surface.
MeshGrobPointsCommands()
MeshGrobPointsCommands constructor.
~MeshGrobPointsCommands() override
MeshGrobPointsCommands destructor.
void estimate_density(double radius=0.005, bool relative_radius=true, const std::string &attribute="density")
Estimates the density.
void create_vertex(double x, double y, double z, bool selected=false)
Creates a new vertex at given coordinates.
void reconstruct_surface_Poisson(const NewMeshGrobName &reconstruction="reconstruction", unsigned int depth=8)
Reconstructs a surface from points and normals using Misha Kahzdan's Screened Poisson Reconstruction.
void delete_selected_points()
Delete all points marked as selection.
void reconstruct_surface_SSSR(double radius=5.0, unsigned int nb_smoothing_iterations=1, unsigned int nb_neighbors=30)
Reconstructs a surface from a point set using Simple and Scalable Surface Reconstruction.
void sample_surface(const NewMeshGrobName &points="points", bool copy_normals=false, unsigned int nb_points=30000, unsigned int Lloyd_iter=5, unsigned int Newton_iter=30, unsigned int Newton_m=7)
Creates a pointset that samples a surface.
void reconstruct_surface_Delaunay2d()
Reconstructs a surface from points using a 2D Delaunay triangulation. Can be used for Digital Elevati...
A template class for strings that need to have a specific type in the GOM system.
Base class for Commands related with a MeshGrob object.
geo_index_t index_t
The type for storing and manipulating indices.
Global Graphite namespace.
Definitions common to all include files in the mesh library.