78 MRVOXELS_API void addPathSeeds(
const VoxelMetricParameters& metricParameters, SeedType seedType,
float exponentModifier = -1.0f );
87 MRVOXELS_API const std::vector<Vector3i>& getSeeds( SeedType seedType )
const;
90 MRVOXELS_API Expected<VoxelBitSet>
segmentVolume(
float segmentationExponentModifier = 3000.0f,
int voxelsExpansion = 25, ProgressCallback cb = {} );
93 MRVOXELS_API Expected<MR::Mesh> createMeshFromSegmentation(
const VoxelBitSet& segmentation )
const;
96 MRVOXELS_API const Vector3i& getVolumePartDimensions()
const;
101 const VdbVolume& volume_;
103 SimpleVolumeMinMax volumePart_;
108 std::array<std::vector<Vector3i>, size_t( SeedType::Count )> seeds_;
109 std::array<VoxelBitSet, size_t( SeedType::Count )> seedsInVolumePartSpace_;
111 bool seedsChanged_{
true};
113 void setupVolumePart_(
int voxelsExpansion );
#define MRVOXELS_API
Definition MRVoxelsFwd.h:14
Definition MRVolumeSegment.h:34
new unsafe ref int voxelsExpansion
new unsafe ref float buildPathExponentModifier
new unsafe ref float segmentationExponentModifier
Definition MRVolumeSegment.h:66
unsafe void setSeeds(MR.Std.Const_Vector_MRVector3i seeds, MR.VolumeSegmenter.SeedType seedType)
unsafe MR.VoxelBitSet segmentVolume(float? segmentationExponentModifier=null, int? voxelsExpansion=null, MR.Std._ByValue_Function_BoolFuncFromFloat? cb=null)
unsafe void addSeeds(MR.Std.Const_Vector_MRVector3i seeds, MR.VolumeSegmenter.SeedType seedType)
unsafe VolumeSegmenter(MR._ByValue_VolumeSegmenter _other)
unsafe void addPathSeeds(MR.Const_VoxelMetricParameters metricParameters, MR.VolumeSegmenter.SeedType seedType, float? exponentModifier=null)
Definition MRVoxelPath.h:38
MRVOXELS_API Expected< std::vector< Mesh > > segmentVoxelMaskToInstances(const VdbVolume &mask, size_t minSize=100, ProgressCallback cb={})
MRVOXELS_API Expected< MR::Mesh > meshFromVoxelsMask(const VdbVolume &volume, const VoxelBitSet &mask)
Creates mesh from voxels mask.
MRVOXELS_API Expected< MR::Mesh > segmentVolume(const VdbVolume &volume, const std::vector< std::pair< Vector3f, Vector3f > > &pairs, const VolumeSegmentationParameters ¶ms=VolumeSegmentationParameters())
Simple segment volume.
Definition MRCameraOrientationPlugin.h:8
MRMESH_API double volume(const MeshTopology &topology, const VertCoords &points, const FaceBitSet *region=nullptr)