2#include "MRVoxelsFwd.h"
24 MRVOXELS_API
FloatGrid( std::shared_ptr<OpenVdbFloatGrid> ptr );
26 MRVOXELS_API
void reset() noexcept;
27 MRVOXELS_API
void swap(
FloatGrid& other ) noexcept;
34 MRVOXELS_API explicit operator
bool() const noexcept;
43[[nodiscard]] MRVOXELS_API
size_t heapBytes( const
FloatGrid& grid );
46MRVOXELS_API
FloatGrid resampled( const
FloatGrid& grid,
float voxelScale, ProgressCallback cb = {} );
85MRVOXELS_API
void setValues(
FloatGrid& grid,
const VoxelBitSet& region,
const std::vector<float>& values );
constexpr A & operator*=(A &a, B b)
Definition MRImGuiVectorOperators.h:114
constexpr A operator-(A a)
Definition MRImGuiVectorOperators.h:98
constexpr A operator+(A a)
Operators.
Definition MRImGuiVectorOperators.h:97
constexpr auto operator*(A a, B b)
Definition MRImGuiVectorOperators.h:107
constexpr A & operator-=(A &a, B b)
Definition MRImGuiVectorOperators.h:113
constexpr A & operator+=(A &a, B b)
Definition MRImGuiVectorOperators.h:112
wrapper class that helps mrbind to avoid excess MRVDBFloatGrid.h includes
Definition MRFloatGrid.h:21
MRVOXELS_API void reset() noexcept
MRVOXELS_API FloatGrid(std::shared_ptr< OpenVdbFloatGrid > ptr)
MRVOXELS_API FloatGrid resampled(const FloatGrid &grid, float voxelScale, ProgressCallback cb={})
resample this grid to fit voxelScale
MRVOXELS_API void setValue(FloatGrid &grid, const Vector3i &p, float value)
MRVOXELS_API Box3i findActiveBounds(const FloatGrid &grid)
MRVOXELS_API float getValue(const FloatGrid &grid, const Vector3i &p)
returns the value at given voxel
MRVOXELS_API void gaussianFilter(FloatGrid &grid, int width, int iters, ProgressCallback cb={})
returns grid with gaussian filter applied
MRVOXELS_API size_t countVoxelsWithValueGreater(const FloatGrid &grid, float value)
returns number of voxels in the grid with value greater than given
MRVOXELS_API size_t countVoxelsWithValuePred(const FloatGrid &grid, const std::function< bool(float)> &pred)
returns number of velxes in the grid with pred(value) == true
MRVOXELS_API void setValues(FloatGrid &grid, const VoxelBitSet ®ion, const std::vector< float > &values)
MRVOXELS_API void setLevelSetType(FloatGrid &grid)
sets type of this grid as LEVEL SET (for normal flipping)
MRVOXELS_API FloatGrid cropped(const FloatGrid &grid, const Box3i &box, ProgressCallback cb={})
returns cropped grid
MRVOXELS_API size_t countVoxelsWithValueLess(const FloatGrid &grid, float value)
returns number of voxels in the grid with value less than given
MRVOXELS_API FloatGrid gaussianFiltered(const FloatGrid &grid, int width, int iters, ProgressCallback cb={})
only for bindings generation
Definition MRCameraOrientationPlugin.h:8
this class just hides very complex type of typedef openvdb::FloatGrid
Definition MRVDBFloatGrid.h:22