MeshLib
 
Loading...
Searching...
No Matches
MR::VoxelsVolumeInterpolatedAccessor< Accessor > Class Template Reference

#include <MRVolumeInterpolation.h>

Public Types

using VolumeType = typename Accessor::VolumeType
 
using ValueType = typename Accessor::ValueType
 

Public Member Functions

 VoxelsVolumeInterpolatedAccessor (const VolumeType &volume, const Accessor &accessor)
 
 VoxelsVolumeInterpolatedAccessor (const VoxelsVolumeInterpolatedAccessor &)=delete
 delete copying constructor to avoid accidentally creating non-thread-safe accessors
 
 VoxelsVolumeInterpolatedAccessor (const VoxelsVolumeInterpolatedAccessor &other, const Accessor &accessor)
 a copying-like constructor with explicitly provided accessor
 
ValueType get (const Vector3f &pos) const
 get value at specified coordinates
 

Detailed Description

template<typename Accessor>
class MR::VoxelsVolumeInterpolatedAccessor< Accessor >

helper class for generalized access to voxel volume data with trilinear interpolation coordinate: 0 voxelSize | | I—*—I—*—I— | | | value: [0] [1] [2] ... note: this class is as thread-safe as the underlying Accessor e.g. VoxelsVolumeAccessor<VdbVolume> is not thread-safe (but several instances on same volume is thread-safe)

Member Typedef Documentation

◆ ValueType

template<typename Accessor >
using MR::VoxelsVolumeInterpolatedAccessor< Accessor >::ValueType = typename Accessor::ValueType

◆ VolumeType

template<typename Accessor >
using MR::VoxelsVolumeInterpolatedAccessor< Accessor >::VolumeType = typename Accessor::VolumeType

Constructor & Destructor Documentation

◆ VoxelsVolumeInterpolatedAccessor() [1/3]

template<typename Accessor >
MR::VoxelsVolumeInterpolatedAccessor< Accessor >::VoxelsVolumeInterpolatedAccessor ( const VolumeType & volume,
const Accessor & accessor )
inlineexplicit

create an accessor instance that stores references to volume and its accessor the volume should not modified while it is accessed by this class

◆ VoxelsVolumeInterpolatedAccessor() [2/3]

template<typename Accessor >
MR::VoxelsVolumeInterpolatedAccessor< Accessor >::VoxelsVolumeInterpolatedAccessor ( const VoxelsVolumeInterpolatedAccessor< Accessor > & )
delete

delete copying constructor to avoid accidentally creating non-thread-safe accessors

◆ VoxelsVolumeInterpolatedAccessor() [3/3]

template<typename Accessor >
MR::VoxelsVolumeInterpolatedAccessor< Accessor >::VoxelsVolumeInterpolatedAccessor ( const VoxelsVolumeInterpolatedAccessor< Accessor > & other,
const Accessor & accessor )
inlineexplicit

a copying-like constructor with explicitly provided accessor

Member Function Documentation

◆ get()

template<typename Accessor >
ValueType MR::VoxelsVolumeInterpolatedAccessor< Accessor >::get ( const Vector3f & pos) const
inline

get value at specified coordinates


The documentation for this class was generated from the following file: