OpenVDB 13.1.0
Loading...
Searching...
No Matches
NanoToOpenVDB Class Reference

This class will serialize an OpenVDB grid into a NanoVDB grid managed by a GridHandle. More...

#include <nanovdb/tools/NanoToOpenVDB.h>

Public Member Functions

 NanoToOpenVDB ()
 Default c-tor.
template<typename NanoBuildT>
util::disable_if_t< BuildTraits< NanoBuildT >::is_index, trait::OpenGridPtr< NanoBuildT > > operator() (const NanoGrid< NanoBuildT > &grid)
 Converts nanovdb::Grid<T> -> openvdb::Grid<T>::Ptr.
template<typename NanoIndexT>
util::enable_if_t< BuildTraits< NanoIndexT >::is_index, openvdb::GridBase::Ptr > operator() (const NanoGrid< NanoIndexT > &idxGrid, int blindDataID=-1)
 Converts nanovdb::Grid<Index> + blind data -> openvdb::GridBase::Ptr.
template<typename NanoIndexT, typename NanoValueT>
util::enable_if_t< BuildTraits< NanoIndexT >::is_index, trait::OpenGridPtr< NanoValueT > > operator() (const NanoGrid< NanoIndexT > &grid, const NanoValueT *sideCar, GridClass gridClass=GridClass::Unknown, const char *name=nullptr)
 Converts nanovdb::Grid<NanoIndexT> + NanoValueT[] -> openvdb::Grid<NanoValueT>::Ptr.

Detailed Description

This class will serialize an OpenVDB grid into a NanoVDB grid managed by a GridHandle.

Constructor & Destructor Documentation

◆ NanoToOpenVDB()

NanoToOpenVDB ( )
inline

Default c-tor.

Member Function Documentation

◆ operator()() [1/3]

template<typename NanoBuildT>
util::disable_if_t< BuildTraits< NanoBuildT >::is_index, trait::OpenGridPtr< NanoBuildT > > operator() ( const NanoGrid< NanoBuildT > & grid)

Converts nanovdb::Grid<T> -> openvdb::Grid<T>::Ptr.

Template Parameters
NanoBuildTTemplate type for the input NanoVDB grid
Parameters
gridNanoVDB grid to be converted
Returns
Shared pointer to an OpenVDB grid of matching type

◆ operator()() [2/3]

template<typename NanoIndexT, typename NanoValueT>
util::enable_if_t< BuildTraits< NanoIndexT >::is_index, trait::OpenGridPtr< NanoValueT > > operator() ( const NanoGrid< NanoIndexT > & grid,
const NanoValueT * sideCar,
GridClass gridClass = GridClass::Unknown,
const char * name = nullptr )

Converts nanovdb::Grid<NanoIndexT> + NanoValueT[] -> openvdb::Grid<NanoValueT>::Ptr.

Template Parameters
NanoValueTTemplate to of the sidecar data
Parameters
gridNanoVDB IndexGrid
sideCarLinear array of sidecar data
gridClassGridClass of the sideCar data
nameName of the output grid
Returns
Shared pointer to an OpenVDB grid of matching type

◆ operator()() [3/3]

template<typename NanoIndexT>
util::enable_if_t< BuildTraits< NanoIndexT >::is_index, openvdb::GridBase::Ptr > operator() ( const NanoGrid< NanoIndexT > & idxGrid,
int blindDataID = -1 )

Converts nanovdb::Grid<Index> + blind data -> openvdb::GridBase::Ptr.

Parameters
idxGridNanoVDB IndexGrid with blind data to be converted
blindDataIDId of the bind data to be used as the sidecar. A negative values means pick the first available (relevant) blind data.
Returns
shared pointer to an OpenVDB GridBase