MeshLib
 
Loading...
Searching...
No Matches
MRMesh/MRGridSampling.h
Go to the documentation of this file.
1#pragma once
2
3#include "MRMeshFwd.h"
5#include "MRId.h"
6#include <optional>
7
8namespace MR
9{
10
14MRMESH_API std::optional<VertBitSet> verticesGridSampling( const MeshPart& mp, float voxelSize, const ProgressCallback & cb = {} );
15
19MRMESH_API std::optional<VertBitSet> pointGridSampling( const PointCloud& cloud, float voxelSize, const ProgressCallback & cb = {} );
20
21
24{
26 const VertCoords* points{ nullptr };
28 const VertBitSet* validPoints{ nullptr };
30 const AffineXf3f* xf{ nullptr };
32 ObjId fakeObjId{};
33};
34
36{
37 ObjId objId;
39};
40
41using MultiObjsSamples = std::vector<ObjVertId>;
42
46MRMESH_API std::optional<MultiObjsSamples> multiModelGridSampling( const Vector<ModelPointsData, ObjId>& models, float voxelSize, const ProgressCallback& cb = {} );
47
48} //namespace MR
List< Vector3f^> VertCoords
Definition MRDotNet/MRMeshFwd.h:95
int VertId
Definition MRDotNet/MRMeshFwd.h:51
#define MRMESH_API
Definition MRMesh/MRMeshFwd.h:46
Definition MRDotNet/MRBitSet.h:39
std::vector<T>-like container that requires specific indexing type,
Definition MRMesh/MRVector.h:19
std::function< bool(float)> ProgressCallback
Definition MRMesh/MRMeshFwd.h:589
Definition MRCameraOrientationPlugin.h:7
MRMESH_API std::optional< VertBitSet > verticesGridSampling(const MeshPart &mp, float voxelSize, const ProgressCallback &cb={})
MRMESH_API std::optional< MultiObjsSamples > multiModelGridSampling(const Vector< ModelPointsData, ObjId > &models, float voxelSize, const ProgressCallback &cb={})
std::vector< ObjVertId > MultiObjsSamples
Definition MRMesh/MRGridSampling.h:41
MRMESH_API std::optional< VertBitSet > pointGridSampling(const PointCloud &cloud, float voxelSize, const ProgressCallback &cb={})
Definition MRMesh/MRMeshPart.h:11
structure to contain pointers to model data
Definition MRMesh/MRGridSampling.h:24
const VertBitSet * validPoints
bitset of valid points
Definition MRMesh/MRGridSampling.h:28
const VertCoords * points
all points of model
Definition MRMesh/MRGridSampling.h:26
const AffineXf3f * xf
model world xf
Definition MRMesh/MRGridSampling.h:30
ObjId fakeObjId
if present this value will override ObjId in result ObjVertId
Definition MRMesh/MRGridSampling.h:32
Definition MRMesh/MRGridSampling.h:36
ObjId objId
Definition MRMesh/MRGridSampling.h:37
VertId vId
Definition MRMesh/MRGridSampling.h:38
Definition MRMesh/MRPointCloud.h:16