OpenVDB
9.0.1
|
Highest level of the data structure. Contains a tree and a world->index transform (that currently only supports uniform scaling and translation). More...
#include <nanovdb/NanoVDB.h>
Inherits GridData.
Public Types | |
using | TreeType = TreeT |
using | RootType = typename TreeT::RootType |
using | DataType = GridData |
using | ValueType = typename TreeT::ValueType |
using | BuildType = typename TreeT::BuildType |
using | CoordType = typename TreeT::CoordType |
using | AccessorType = DefaultReadAccessor< BuildType > |
Public Member Functions | |
Grid (const Grid &)=delete | |
Disallow constructions, copy and assignment. More... | |
Grid & | operator= (const Grid &)=delete |
~Grid ()=delete | |
Version | version () const |
DataType * | data () |
const DataType * | data () const |
uint64_t | gridSize () const |
Return the memory footprint of the entire grid, i.e. including all nodes and blind data. More... | |
uint32_t | gridIndex () const |
Return index of this grid in the buffer. More... | |
uint32_t | gridCount () const |
Return total number of grids in the buffer. More... | |
const TreeT & | tree () const |
Return a const reference to the tree. More... | |
TreeT & | tree () |
Return a non-const reference to the tree. More... | |
AccessorType | getAccessor () const |
Return a new instance of a ReadAccessor used to access values in this grid. More... | |
const Vec3R & | voxelSize () const |
Return a const reference to the size of a voxel in world units. More... | |
const Map & | map () const |
Return a const reference to the Map for this grid. More... | |
template<typename Vec3T > | |
Vec3T | worldToIndex (const Vec3T &xyz) const |
world to index space transformation More... | |
template<typename Vec3T > | |
Vec3T | indexToWorld (const Vec3T &xyz) const |
index to world space transformation More... | |
template<typename Vec3T > | |
Vec3T | indexToWorldDir (const Vec3T &dir) const |
transformation from index space direction to world space direction More... | |
template<typename Vec3T > | |
Vec3T | worldToIndexDir (const Vec3T &dir) const |
transformation from world space direction to index space direction More... | |
template<typename Vec3T > | |
Vec3T | indexToWorldGrad (const Vec3T &grad) const |
transform the gradient from index space to world space. More... | |
template<typename Vec3T > | |
Vec3T | worldToIndexF (const Vec3T &xyz) const |
world to index space transformation More... | |
template<typename Vec3T > | |
Vec3T | indexToWorldF (const Vec3T &xyz) const |
index to world space transformation More... | |
template<typename Vec3T > | |
Vec3T | indexToWorldDirF (const Vec3T &dir) const |
transformation from index space direction to world space direction More... | |
template<typename Vec3T > | |
Vec3T | worldToIndexDirF (const Vec3T &dir) const |
transformation from world space direction to index space direction More... | |
template<typename Vec3T > | |
Vec3T | indexToWorldGradF (const Vec3T &grad) const |
Transforms the gradient from index space to world space. More... | |
const BBox< Vec3R > & | worldBBox () const |
Computes a AABB of active values in world space. More... | |
const BBox< CoordType > & | indexBBox () const |
Computes a AABB of active values in index space. More... | |
uint64_t | activeVoxelCount () const |
Return the total number of active voxels in this tree. More... | |
bool | isValid () const |
Methods related to the classification of this grid. More... | |
const GridType & | gridType () const |
const GridClass & | gridClass () const |
bool | isLevelSet () const |
bool | isFogVolume () const |
bool | isStaggered () const |
bool | isPointIndex () const |
bool | isPointData () const |
bool | isMask () const |
bool | isUnknown () const |
bool | hasMinMax () const |
bool | hasBBox () const |
bool | hasLongGridName () const |
bool | hasAverage () const |
bool | hasStdDeviation () const |
bool | isBreadthFirst () const |
template<typename NodeT > | |
bool | isSequential () const |
return true if the specified node type is layed out breadth-first in memory and has a fixed size. This allows for sequential access to the nodes. More... | |
template<int LEVEL> | |
bool | isSequential () const |
return true if the specified node level is layed out breadth-first in memory and has a fixed size. This allows for sequential access to the nodes. More... | |
const char * | gridName () const |
Return a c-string with the name of this grid. More... | |
const char * | shortGridName () const |
Return a c-string with the name of this grid, truncated to 255 characters. More... | |
uint64_t | checksum () const |
Return checksum of the grid buffer. More... | |
bool | isEmpty () const |
Return true if this grid is empty, i.e. contains no values or nodes. More... | |
int | blindDataCount () const |
Return the count of blind-data encoded in this grid. More... | |
int | findBlindDataForSemantic (GridBlindDataSemantic semantic) const |
Return the index of the blind data with specified semantic if found, otherwise -1. More... | |
const void * | blindData (uint32_t n) const |
Returns a const pointer to the blindData at the specified linear offset. More... | |
const GridBlindMetaData & | blindMetaData (int n) const |
Static Public Member Functions | |
static uint64_t | memUsage () |
Return memory usage in bytes for this class only. More... | |
Private Member Functions | |
void | setFlagsOff () |
void | setMinMaxOn (bool on=true) |
void | setBBoxOn (bool on=true) |
void | setLongGridNameOn (bool on=true) |
void | setAverageOn (bool on=true) |
void | setStdDeviationOn (bool on=true) |
void | setBreadthFirstOn (bool on=true) |
template<typename Vec3T > | |
Vec3T | applyMap (const Vec3T &xyz) const |
template<typename Vec3T > | |
Vec3T | applyInverseMap (const Vec3T &xyz) const |
template<typename Vec3T > | |
Vec3T | applyJacobian (const Vec3T &xyz) const |
template<typename Vec3T > | |
Vec3T | applyInverseJacobian (const Vec3T &xyz) const |
template<typename Vec3T > | |
Vec3T | applyIJT (const Vec3T &xyz) const |
template<typename Vec3T > | |
Vec3T | applyMapF (const Vec3T &xyz) const |
template<typename Vec3T > | |
Vec3T | applyInverseMapF (const Vec3T &xyz) const |
template<typename Vec3T > | |
Vec3T | applyJacobianF (const Vec3T &xyz) const |
template<typename Vec3T > | |
Vec3T | applyInverseJacobianF (const Vec3T &xyz) const |
template<typename Vec3T > | |
Vec3T | applyIJTF (const Vec3T &xyz) const |
void * | treePtr () |
const void * | treePtr () const |
const GridBlindMetaData * | blindMetaData (uint32_t n) const |
Returns a const reference to the blindMetaData at the specified linear offset. More... | |
Private Attributes | |
uint64_t | mMagic |
uint64_t | mChecksum |
Version | mVersion |
uint32_t | mFlags |
uint32_t | mGridIndex |
uint32_t | mGridCount |
uint64_t | mGridSize |
char | mGridName [MaxNameSize] |
Map | mMap |
BBox< Vec3R > | mWorldBBox |
Vec3R | mVoxelSize |
GridClass | mGridClass |
GridType | mGridType |
int64_t | mBlindMetadataOffset |
uint32_t | mBlindMetadataCount |
Static Private Attributes | |
static const int | MaxNameSize = 256 |
Highest level of the data structure. Contains a tree and a world->index transform (that currently only supports uniform scaling and translation).
using AccessorType = DefaultReadAccessor<BuildType> |
using BuildType = typename TreeT::BuildType |
using CoordType = typename TreeT::CoordType |
using RootType = typename TreeT::RootType |
using TreeType = TreeT |
using ValueType = typename TreeT::ValueType |
Disallow constructions, copy and assignment.
|
delete |
|
inline |
Return the total number of active voxels in this tree.
|
inline |
Returns a const pointer to the blindData at the specified linear offset.
|
inline |
Return the count of blind-data encoded in this grid.
|
inline |
|
inline |
Return checksum of the grid buffer.
|
inline |
|
inline |
int findBlindDataForSemantic | ( | GridBlindDataSemantic | semantic | ) | const |
Return the index of the blind data with specified semantic if found, otherwise -1.
|
inline |
Return a new instance of a ReadAccessor used to access values in this grid.
|
inline |
|
inline |
Return total number of grids in the buffer.
|
inline |
Return index of this grid in the buffer.
|
inline |
Return a c-string with the name of this grid.
|
inline |
Return the memory footprint of the entire grid, i.e. including all nodes and blind data.
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
Computes a AABB of active values in index space.
|
inline |
index to world space transformation
|
inline |
transformation from index space direction to world space direction
|
inline |
transformation from index space direction to world space direction
|
inline |
index to world space transformation
|
inline |
transform the gradient from index space to world space.
Applies the inverse jacobian transform map.
|
inline |
Transforms the gradient from index space to world space.
Applies the inverse jacobian transform map.
|
inline |
|
inline |
Return true if this grid is empty, i.e. contains no values or nodes.
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
return true if the specified node type is layed out breadth-first in memory and has a fixed size. This allows for sequential access to the nodes.
|
inline |
return true if the specified node level is layed out breadth-first in memory and has a fixed size. This allows for sequential access to the nodes.
|
inline |
|
inline |
|
inline |
Methods related to the classification of this grid.
|
inlinestatic |
Return memory usage in bytes for this class only.
|
inline |
Return a c-string with the name of this grid, truncated to 255 characters.
|
inline |
Return a const reference to the tree.
|
inline |
Return a non-const reference to the tree.
|
inline |
|
inline |
Return a const reference to the size of a voxel in world units.
|
inline |
world to index space transformation
|
inline |
transformation from world space direction to index space direction
|
inline |
transformation from world space direction to index space direction
|
inline |
world to index space transformation