MeshLib C++ Docs
Loading...
Searching...
No Matches
MRMeshToDistanceVolume.h
Go to the documentation of this file.
1#pragma once
2
4#include "MRVoxelsVolume.h"
5#include "MRMesh/MRExpected.h"
7#include <memory>
8
9namespace MR
10{
13
14
16{
18
20
21 std::shared_ptr<IFastWindingNumber> fwn;
22};
23
25MRVOXELS_API Expected<SimpleVolumeMinMax> meshToDistanceVolume( const MeshPart& mp, const MeshToDistanceVolumeParams& params );
26
28MRVOXELS_API FunctionVolume meshToDistanceFunctionVolume( const MeshPart& mp, const MeshToDistanceVolumeParams& params );
29
31{
33 float closeDist = 0;
34
37
39 const AffineXf3f* meshToWorld = nullptr;
40};
41
43MRVOXELS_API Expected<SimpleBinaryVolume> makeCloseToMeshVolume( const MeshPart& mp, const CloseToMeshVolumeParams& params );
44
47MRVOXELS_API Expected<SimpleVolumeMinMax> meshRegionToIndicatorVolume( const Mesh& mesh, const FaceBitSet& region,
48 float offset, const DistanceVolumeParams& params );
49
51{
54 std::shared_ptr<IPointsToMeshProjector> projector;
55};
56
61
62}
MRVOXELS_API FunctionVolume meshToDistanceFunctionVolume(const MeshPart &mp, const MeshToDistanceVolumeParams &params)
makes FunctionVolume representing (signed or unsigned) distances from Mesh with given settings
MRVOXELS_API Expected< SimpleVolumeMinMax > meshRegionToIndicatorVolume(const Mesh &mesh, const FaceBitSet &region, float offset, const DistanceVolumeParams &params)
DistanceVolumeParams vol
dimensions, location, and scaling in world space of the expected volume
Definition MRMeshToDistanceVolume.h:36
DistanceVolumeParams vol
Definition MRMeshToDistanceVolume.h:17
MRVOXELS_API Expected< SimpleBinaryVolume > makeCloseToMeshVolume(const MeshPart &mp, const CloseToMeshVolumeParams &params)
makes a binary volume with close-to-surface predicate values according to the given parameters
tl::expected< T, E > Expected
Definition MRExpected.h:31
std::shared_ptr< IFastWindingNumber > fwn
Definition MRMeshToDistanceVolume.h:21
MRVOXELS_API Expected< std::array< SimpleVolumeMinMax, 3 > > meshToDirectionVolume(const MeshToDirectionVolumeParams &params)
const AffineXf3f * meshToWorld
optional transformation from mesh space to world space
Definition MRMeshToDistanceVolume.h:39
SignedDistanceToMeshOptions dist
Definition MRMeshToDistanceVolume.h:19
MRVOXELS_API Expected< SimpleVolumeMinMax > meshToDistanceVolume(const MeshPart &mp, const MeshToDistanceVolumeParams &params)
makes SimpleVolume filled with (signed or unsigned) distances from Mesh with given settings
DistanceVolumeParams vol
Definition MRMeshToDistanceVolume.h:52
std::shared_ptr< IPointsToMeshProjector > projector
note that signMode is ignored in this algorithm
Definition MRMeshToDistanceVolume.h:54
DistanceToMeshOptions dist
Definition MRMeshToDistanceVolume.h:53
float closeDist
a resulting voxel will get 1 if that voxel's center is not further than unsigned (closeDist) from the...
Definition MRMeshToDistanceVolume.h:33
only for bindings generation
Definition MRCameraOrientationPlugin.h:8
Definition MRMeshToDistanceVolume.h:31
options determining computation of distance from a point to a mesh
Definition MRDistanceToMeshOptions.h:14
Definition MRDistanceVolumeParams.h:13
Definition MRMeshToDistanceVolume.h:51
Definition MRMeshToDistanceVolume.h:16
Definition MRMesh.h:23
options determining computation of signed distance from a point to a mesh
Definition MRDistanceToMeshOptions.h:40