21 const Vector3f& voxelSize,
float surfaceOffset = 3,
22 ProgressCallback cb = {} );
28 const Vector3f& voxelSize,
float surfaceOffset = 3,
29 ProgressCallback cb = {} );
32struct MeshToVolumeParams
39 } type{ Type::Unsigned };
40 float surfaceOffset{ 3.0 };
43 AffineXf3f* outXf{
nullptr };
82template <
typename AccessorOrGr
id>
84 AccessorOrGrid& gridAccessor,
98 const VdbVolume& vdbVolume,
const Box3i& activeBox =
Box3i(), std::optional<MinMaxf> sourceScale = {}, ProgressCallback cb = {} );
105 const VdbVolume& vdbVolume,
const Box3i& activeBox =
Box3i(), std::optional<MinMaxf> sourceScale = {}, ProgressCallback cb = {} );
108struct GridToMeshSettings
120 bool relaxDisorientedTriangles =
true;
138 std::shared_ptr<IFastWindingNumber>
fwn;
170 std::shared_ptr<IFastWindingNumber>
fwn;
#define MRVOXELS_API
Definition MRVoxelsFwd.h:14
Definition MRVoxels/MRVDBConversions.h:156
new unsafe ref float offsetA
new unsafe ref float windingNumberThreshold
new unsafe MR.IFastWindingNumber fwn
new unsafe ref float voxelSize
new unsafe MR.Std.Function_BoolFuncFromFloat progress
new unsafe ref float adaptivity
new unsafe ref float offsetB
new unsafe ref float windingNumberBeta
Definition MRFloatGrid.h:21
Definition MRVoxels/MRVDBConversions.h:109
new unsafe ref float adaptivity
new unsafe ref int maxFaces
new unsafe MR.Std.Function_BoolFuncFromFloat cb
new unsafe ref float isoValue
new unsafe ref MR.Vector3f voxelSize
new unsafe ref int maxVertices
Definition MRVoxels/MRVDBConversions.h:133
new unsafe ref float windingNumberThreshold
new unsafe ref float windingNumberBeta
new unsafe ref MR.AffineXf3f meshToGridXf
new unsafe MR.IFastWindingNumber fwn
new unsafe MR.Std.Function_BoolFuncFromFloat progress
Definition MRVoxels/MRVDBConversions.h:33
Definition MRMesh/MRMesh.h:23
Definition MRCameraOrientationPlugin.h:8
MRVOXELS_API Expected< SimpleVolumeMinMax > vdbVolumeToSimpleVolume(const VdbVolume &vdbVolume, const Box3i &activeBox=Box3i(), ProgressCallback cb={})
MRVOXELS_API Expected< SimpleVolumeMinMaxU16 > vdbVolumeToSimpleVolumeU16(const VdbVolume &vdbVolume, const Box3i &activeBox=Box3i(), std::optional< MinMaxf > sourceScale={}, ProgressCallback cb={})
MRVOXELS_API FloatGrid meshToDistanceField(const MeshPart &mp, const AffineXf3f &xf, const Vector3f &voxelSize, float surfaceOffset=3, ProgressCallback cb={})
MRVOXELS_API VdbVolume floatGridToVdbVolume(FloatGrid grid)
MRVOXELS_API VdbVolume simpleVolumeToVdbVolume(const SimpleVolumeMinMax &simpleVolume, ProgressCallback cb={})
MRVOXELS_API Expected< VdbVolume > meshToVolume(const MeshPart &mp, const MeshToVolumeParams ¶ms={})
MRVOXELS_API void evalGridMinMax(const FloatGrid &grid, float &min, float &max)
MRVOXELS_API Expected< SimpleVolumeMinMax > vdbVolumeToSimpleVolumeNorm(const VdbVolume &vdbVolume, const Box3i &activeBox=Box3i(), std::optional< MinMaxf > sourceScale={}, ProgressCallback cb={})
MRVOXELS_API Expected< VdbVolume > meshToDistanceVdbVolume(const MeshPart &mp, const MeshToVolumeParams ¶ms={})
MRVOXELS_API FloatGrid simpleVolumeToDenseGrid(const SimpleVolume &simpleVolume, float background=0.0f, ProgressCallback cb={})
MRVOXELS_API Expected< Mesh > doubleOffsetVdb(const MeshPart &mp, const DoubleOffsetSettings &settings)
MRVOXELS_API void putSimpleVolumeInDenseGrid(AccessorOrGrid &gridAccessor, const Vector3i &minCoord, const SimpleVolume &simpleVolume, ProgressCallback cb={})
Copy given simpleVolume into the grid, starting at minCoord Instantiated for AccessorOrGrid in { open...
MRVOXELS_API VdbVolume functionVolumeToVdbVolume(const FunctionVolume &functoinVolume, ProgressCallback cb={})
MRVOXELS_API Expected< Mesh > gridToMesh(const FloatGrid &grid, const GridToMeshSettings &settings)
converts OpenVDB Grid into mesh using Dual Marching Cubes algorithm
MRVOXELS_API FloatGrid meshToLevelSet(const MeshPart &mp, const AffineXf3f &xf, const Vector3f &voxelSize, float surfaceOffset=3, ProgressCallback cb={})
MRVOXELS_API Expected< void > makeSignedByWindingNumber(FloatGrid &grid, const Vector3f &voxelSize, const Mesh &refMesh, const MakeSignedByWindingNumberSettings &settings)
set signs for unsigned distance field grid using generalized winding number computed at voxel grid po...
static MR.Vector3f diagonal(float a)