OpenVDB 10.0.1
Loading...
Searching...
No Matches
Public Types | Public Member Functions | Static Public Attributes | List of all members
PointAccessor< AttT > Class Template Reference

Class to access points at a specific voxel location. More...

#include <nanovdb/NanoVDB.h>

Inheritance diagram for PointAccessor< AttT >:
ReadAccessor< BuildT, 0, 1, 2 >

Public Types

using LeafNodeType = typename NanoRoot< uint32_t >::LeafNodeType
 
using ValueType = ValueT
 
using CoordType = CoordT
 
using NodeInfo = typename ReadAccessor< ValueT, -1, -1, -1 >::NodeInfo
 

Public Member Functions

 PointAccessor (const UInt32Grid &grid)
 
uint64_t gridPoints (const AttT *&begin, const AttT *&end) const
 Return the total number of point in the grid and set the iterators to the complete range of points.
 
uint64_t leafPoints (const Coord &ijk, const AttT *&begin, const AttT *&end) const
 Return the number of points in the leaf node containing the coordinate ijk. If this return value is larger than zero then the iterators begin and end will point to all the attributes contained within that leaf node.
 
uint64_t voxelPoints (const Coord &ijk, const AttT *&begin, const AttT *&end) const
 get iterators over offsets to points at a specific voxel location
 
const RootTroot () const
 
template<typename NodeT >
const NodeT * getNode () const
 Return a const point to the cached node of the specified type.
 
template<int LEVEL>
const NodeTrait< TreeT, LEVEL >::type * getNode () const
 
void clear ()
 Reset this access to its initial state, i.e. with an empty cache.
 
template<typename NodeT >
bool isCached (const CoordType &ijk) const
 
ValueType getValue (const CoordType &ijk) const
 
ValueType operator() (const CoordType &ijk) const
 
ValueType operator() (int i, int j, int k) const
 
NodeInfo getNodeInfo (const CoordType &ijk) const
 
bool isActive (const CoordType &ijk) const
 
bool probeValue (const CoordType &ijk, ValueType &v) const
 
const LeafTprobeLeaf (const CoordType &ijk) const
 
template<typename RayT >
uint32_t getDim (const CoordType &ijk, const RayT &ray) const
 

Static Public Attributes

static const int CacheLevels = 3
 

Detailed Description

template<typename AttT>
class nanovdb::PointAccessor< AttT >

Class to access points at a specific voxel location.

Member Typedef Documentation

◆ CoordType

template<typename BuildT >
using CoordType = CoordT
inherited

◆ LeafNodeType

template<typename AttT >
using LeafNodeType = typename NanoRoot<uint32_t>::LeafNodeType

◆ NodeInfo

template<typename BuildT >
using NodeInfo = typename ReadAccessor<ValueT, -1, -1, -1>::NodeInfo
inherited

◆ ValueType

template<typename BuildT >
using ValueType = ValueT
inherited

Constructor & Destructor Documentation

◆ PointAccessor()

template<typename AttT >
PointAccessor ( const UInt32Grid grid)
inline

Member Function Documentation

◆ clear()

template<typename BuildT >
void clear ( )
inlineinherited

Reset this access to its initial state, i.e. with an empty cache.

◆ getDim()

template<typename BuildT >
template<typename RayT >
uint32_t getDim ( const CoordType ijk,
const RayT &  ray 
) const
inlineinherited

◆ getNode() [1/2]

template<typename BuildT >
template<typename NodeT >
const NodeT * getNode ( ) const
inlineinherited

Return a const point to the cached node of the specified type.

Warning
The return value could be NULL.

◆ getNode() [2/2]

template<typename BuildT >
template<int LEVEL>
const NodeTrait< TreeT, LEVEL >::type * getNode ( ) const
inlineinherited

◆ getNodeInfo()

template<typename BuildT >
NodeInfo getNodeInfo ( const CoordType ijk) const
inlineinherited

◆ getValue()

template<typename BuildT >
ValueType getValue ( const CoordType ijk) const
inlineinherited

◆ gridPoints()

template<typename AttT >
uint64_t gridPoints ( const AttT *&  begin,
const AttT *&  end 
) const
inline

Return the total number of point in the grid and set the iterators to the complete range of points.

◆ isActive()

template<typename BuildT >
bool isActive ( const CoordType ijk) const
inlineinherited

◆ isCached()

template<typename BuildT >
template<typename NodeT >
bool isCached ( const CoordType ijk) const
inlineinherited

◆ leafPoints()

template<typename AttT >
uint64_t leafPoints ( const Coord ijk,
const AttT *&  begin,
const AttT *&  end 
) const
inline

Return the number of points in the leaf node containing the coordinate ijk. If this return value is larger than zero then the iterators begin and end will point to all the attributes contained within that leaf node.

◆ operator()() [1/2]

template<typename BuildT >
ValueType operator() ( const CoordType ijk) const
inlineinherited

◆ operator()() [2/2]

template<typename BuildT >
ValueType operator() ( int  i,
int  j,
int  k 
) const
inlineinherited

◆ probeLeaf()

template<typename BuildT >
const LeafT * probeLeaf ( const CoordType ijk) const
inlineinherited

◆ probeValue()

template<typename BuildT >
bool probeValue ( const CoordType ijk,
ValueType v 
) const
inlineinherited

◆ root()

template<typename BuildT >
const RootT & root ( ) const
inlineinherited

◆ voxelPoints()

template<typename AttT >
uint64_t voxelPoints ( const Coord ijk,
const AttT *&  begin,
const AttT *&  end 
) const
inline

get iterators over offsets to points at a specific voxel location

Member Data Documentation

◆ CacheLevels

template<typename BuildT >
const int CacheLevels = 3
staticinherited