MeshLib C++ Docs
Loading...
Searching...
No Matches
MRGridSampling.h
Go to the documentation of this file.
1#pragma once
2
3#include "MRMeshFwd.h"
5#include "MRId.h"
6#include "MRPointCloudPart.h"
7#include "MRVector.h"
8#include <optional>
9
10namespace MR
11{
14
15
20MRMESH_API std::optional<VertBitSet> verticesGridSampling( const MeshPart& mp, float voxelSize, const ProgressCallback & cb = {} );
21
26MRMESH_API std::optional<VertBitSet> pointGridSampling( const PointCloudPart& pcp, float voxelSize, const ProgressCallback & cb = {} );
27
28
31{
33 const VertCoords* points{ nullptr };
35 const VertBitSet* validPoints{ nullptr };
37 const AffineXf3f* xf{ nullptr };
39 ObjId fakeObjId{};
40};
41
43{
44 ObjId objId;
45 VertId vId;
46
47 friend bool operator==( const ObjVertId&, const ObjVertId& ) = default;
48};
49
50using MultiObjsSamples = std::vector<ObjVertId>;
51
56MRMESH_API std::optional<MultiObjsSamples> multiModelGridSampling( const Vector<ModelPointsData, ObjId>& models, float voxelSize, const ProgressCallback& cb = {} );
57
58}
std::vector<T>-like container that requires specific indexing type,
Definition MRVector.h:23
MRMESH_API std::optional< VertBitSet > verticesGridSampling(const MeshPart &mp, float voxelSize, const ProgressCallback &cb={})
const VertBitSet * validPoints
bitset of valid points
Definition MRGridSampling.h:35
MRMESH_API std::optional< VertBitSet > pointGridSampling(const PointCloudPart &pcp, float voxelSize, const ProgressCallback &cb={})
MRMESH_API std::optional< MultiObjsSamples > multiModelGridSampling(const Vector< ModelPointsData, ObjId > &models, float voxelSize, const ProgressCallback &cb={})
ObjId objId
Definition MRGridSampling.h:44
const VertCoords * points
all points of model
Definition MRGridSampling.h:33
VertId vId
Definition MRGridSampling.h:45
const AffineXf3f * xf
model world xf
Definition MRGridSampling.h:37
std::vector< ObjVertId > MultiObjsSamples
Definition MRGridSampling.h:50
ObjId fakeObjId
if present this value will override ObjId in result ObjVertId
Definition MRGridSampling.h:39
friend bool operator==(const ObjVertId &, const ObjVertId &)=default
only for bindings generation
Definition MRCameraOrientationPlugin.h:8
structure to contain pointers to model data
Definition MRGridSampling.h:31
Definition MRGridSampling.h:43
represents full point cloud (if region is nullptr) or some portion of point cloud (if region pointer ...
Definition MRPointCloudPart.h:13