3#include "MRDistanceVolumeParams.h"
4#include "MRVoxelsVolume.h"
5#include "MRMesh/MRExpected.h"
6#include "MRMesh/MRMeshDistance.h"
12struct MeshToDistanceVolumeParams
14 DistanceVolumeParams vol;
16 SignedDistanceToMeshOptions dist;
18 std::shared_ptr<IFastWindingNumber> fwn;
22MRVOXELS_API Expected<SimpleVolumeMinMax>
meshToDistanceVolume(
const MeshPart& mp,
const MeshToDistanceVolumeParams& params );
27struct CloseToMeshVolumeParams
33 DistanceVolumeParams
vol;
40MRVOXELS_API Expected<SimpleBinaryVolume>
makeCloseToMeshVolume(
const MeshPart& mp,
const CloseToMeshVolumeParams& params );
45 float offset,
const DistanceVolumeParams& params );
47struct MeshToDirectionVolumeParams
49 DistanceVolumeParams vol;
50 DistanceToMeshOptions dist;
51 std::shared_ptr<IPointsToMeshProjector> projector;
57MRVOXELS_API Expected<std::array<SimpleVolumeMinMax, 3>>
meshToDirectionVolume(
const MeshToDirectionVolumeParams& params );
new unsafe MR.DistanceVolumeParams vol
new unsafe ref float closeDist
new unsafe MR.? ConstBox_AffineXf3f meshToWorld
static unsafe MR.SimpleBinaryVolume makeCloseToMeshVolume(MR.Const_MeshPart mp, MR.Const_CloseToMeshVolumeParams params_)
static unsafe MR.SimpleVolumeMinMax meshRegionToIndicatorVolume(MR.Const_Mesh mesh, MR.Const_FaceBitSet region, float offset, MR.Const_DistanceVolumeParams params_)
static unsafe MR.Std.Array_MRSimpleVolumeMinMax_3 meshToDirectionVolume(MR.Const_MeshToDirectionVolumeParams params_)
static unsafe MR.FunctionVolume meshToDistanceFunctionVolume(MR.Const_MeshPart mp, MR.Const_MeshToDistanceVolumeParams params_)
static unsafe MR.SimpleVolumeMinMax meshToDistanceVolume(MR.Const_MeshPart mp, MR.Const_MeshToDistanceVolumeParams params_)