MeshLib C++ Docs
Loading...
Searching...
No Matches
MRPointsToMeshFusion.h
Go to the documentation of this file.
1#pragma once
2
3#include "MRVoxelsFwd.h"
4
5#include "MRMesh/MRExpected.h"
7
8namespace MR
9{
12
13
14struct PointsToDistanceVolumeParams;
15
17{
20 float sigma = 1;
21
23 float minWeight = 1;
24
27 float invSigmaModifier = 0.5f;
28
31 bool sqrtAngleWeight{ false };
32
35 float voxelSize = 0;
36
38 const VertColors * ptColors = nullptr;
39
41 VertColors * vColors = nullptr;
42
44 ProgressCallback progress;
45
48 MR_BIND_IGNORE std::function<Expected<void>( const PointCloud& cloud, const PointsToDistanceVolumeParams& params, std::function<Expected<void>( const SimpleVolumeMinMax& volume, int zOffset )> addPart, int layerOverlap )> createVolumeCallbackByParts;
49
51 MR_BIND_IGNORE std::function<Expected<SimpleVolumeMinMax>( const PointCloud& cloud, const PointsToDistanceVolumeParams& params )> createVolumeCallback;
52
54 MR_BIND_IGNORE std::function<bool ( const PointCloud& cloud, const PointsToDistanceVolumeParams& params )> canCreateVolume;
55};
56
59[[nodiscard]] MRVOXELS_API Expected<Mesh> pointsToMeshFusion( const PointCloud & cloud, const PointsToMeshParameters& params );
60
61}
float voxelSize
Definition MRPointsToMeshFusion.h:35
ProgressCallback progress
Progress callback.
Definition MRPointsToMeshFusion.h:44
float invSigmaModifier
Definition MRPointsToMeshFusion.h:27
float sigma
Definition MRPointsToMeshFusion.h:20
float minWeight
minimum sum of influence weights from surrounding points for a triangle to appear,...
Definition MRPointsToMeshFusion.h:23
tl::expected< T, E > Expected
Definition MRExpected.h:31
VertColors * vColors
optional output: averaged colors of mesh vertices
Definition MRPointsToMeshFusion.h:41
MR_BIND_IGNORE std::function< bool(const PointCloud &cloud, const PointsToDistanceVolumeParams &params)> canCreateVolume
Callback for checking whether it's possible to use the volume creation function.
Definition MRPointsToMeshFusion.h:54
MRMESH_API double volume(const MeshTopology &topology, const VertCoords &points, const FaceBitSet *region=nullptr)
MR_BIND_IGNORE std::function< Expected< SimpleVolumeMinMax >(const PointCloud &cloud, const PointsToDistanceVolumeParams &params)> createVolumeCallback
Callback for volume creation. If both volume creation functions are null - volume will be created wit...
Definition MRPointsToMeshFusion.h:51
MRVOXELS_API Expected< Mesh > pointsToMeshFusion(const PointCloud &cloud, const PointsToMeshParameters &params)
std::array< Vector3f, 3 > MR_BIND_IGNORE
Definition MRMeshBuilderTypes.h:13
const VertColors * ptColors
optional input: colors of input points
Definition MRPointsToMeshFusion.h:38
MR_BIND_IGNORE std::function< Expected< void >(const PointCloud &cloud, const PointsToDistanceVolumeParams &params, std::function< Expected< void >(const SimpleVolumeMinMax &volume, int zOffset)> addPart, int layerOverlap)> createVolumeCallbackByParts
Definition MRPointsToMeshFusion.h:48
bool sqrtAngleWeight
Definition MRPointsToMeshFusion.h:31
only for bindings generation
Definition MRCameraOrientationPlugin.h:8
Definition MRPointCloud.h:17
Definition MRPointsToDistanceVolume.h:16
Definition MRPointsToMeshFusion.h:17