OpenVDB  9.0.1
Classes | Namespaces | Functions
GU_VDBPointTools.h File Reference

Collection of PointIndexGrid helpers for Houdini. More...

#include <GU/GU_Detail.h>
#include <GU/GU_DetailHandle.h>
#include <GU/GU_PackedContext.h>
#include <GU/GU_PackedFragment.h>
#include <GU/GU_PackedGeometry.h>
#include <GU/GU_PrimPacked.h>
#include <GA/GA_ElementGroup.h>
#include <UT/UT_SharedPtr.h>
#include <UT/UT_VectorTypes.h>
#include <openvdb/Platform.h>
#include <openvdb/tools/PointIndexGrid.h>
#include <openvdb/tools/ParticleAtlas.h>
#include <openvdb/tools/PointsToMask.h>
#include <vector>

Go to the source code of this file.

Classes

struct  GU_VDBPointList< VectorType >
 Houdini point attribute wrapper. More...
 
struct  IndexToOffsetOp< PointArrayType >
 
struct  PackedMaskConstructor
 

Namespaces

 GU_VDBPointToolsInternal
 

Functions

void getPackedPrimitiveOffsets (const GU_Detail &detail, std::vector< const GA_Primitive * > &primitives)
 
GU_VDBPointList< openvdb::Vec3s >::Ptr GUvdbCreatePointList (const GU_Detail &detail, const GA_PointGroup *pointGroup=nullptr)
 Utility method to construct a GU_VDBPointList. More...
 
template<typename PointIndexTreeType , typename PointArrayType >
void GUvdbConvertIndexToOffset (PointIndexTreeType &tree, const PointArrayType &points)
 Utility method to change point indices into Houdini geometry offsets. More...
 
openvdb::tools::PointIndexGrid::Ptr GUvdbCreatePointIndexGrid (const openvdb::math::Transform &xform, const GU_Detail &detail, const GA_PointGroup *pointGroup=nullptr)
 Utility method to construct a PointIndexGrid. More...
 
template<typename PointArrayType >
openvdb::tools::PointIndexGrid::Ptr GUvdbCreatePointIndexGrid (const openvdb::math::Transform &xform, const PointArrayType &points)
 Utility method to construct a PointIndexGrid. More...
 
template<typename ParticleArrayType >
openvdb::tools::ParticleIndexAtlas::Ptr GUvdbCreateParticleAtlas (const double minVoxelSize, const ParticleArrayType &particles)
 Utility method to construct a ParticleAtals. More...
 
openvdb::MaskGrid::Ptr GUvdbCreatePointMaskGrid (const openvdb::math::Transform &xform, const GU_Detail &detail, const GA_PointGroup *pointGroup=nullptr)
 Utility method to construct a boolean PointMaskGrid. More...
 
openvdb::tools::PointIndexGrid::Ptr GUvdbCreatePointOffsetGrid (const openvdb::math::Transform &xform, const GU_Detail &detail, const GA_PointGroup *pointGroup=nullptr)
 Utility method to construct a PointIndexGrid that stores Houdini geometry offsets. More...
 

Detailed Description

Collection of PointIndexGrid helpers for Houdini.

Author
FX R&D OpenVDB team

Function Documentation

void GUvdbConvertIndexToOffset ( PointIndexTreeType &  tree,
const PointArrayType &  points 
)
inline

Utility method to change point indices into Houdini geometry offsets.

Note
PointIndexGrid's that store Houdini geometry offsets are not safe to write to disk, offsets are not guaranteed to be immutable under defragmentation operations or I/O.
openvdb::tools::ParticleIndexAtlas::Ptr GUvdbCreateParticleAtlas ( const double  minVoxelSize,
const ParticleArrayType &  particles 
)
inline

Utility method to construct a ParticleAtals.

The ParticleAtals supports fast spatial queries for particles.

openvdb::tools::PointIndexGrid::Ptr GUvdbCreatePointIndexGrid ( const openvdb::math::Transform &  xform,
const GU_Detail &  detail,
const GA_PointGroup *  pointGroup = nullptr 
)
inline

Utility method to construct a PointIndexGrid.

The PointIndexGrid supports fast spatial queries for points.

openvdb::tools::PointIndexGrid::Ptr GUvdbCreatePointIndexGrid ( const openvdb::math::Transform &  xform,
const PointArrayType &  points 
)
inline

Utility method to construct a PointIndexGrid.

The PointIndexGrid supports fast spatial queries for points.

GU_VDBPointList<openvdb::Vec3s>::Ptr GUvdbCreatePointList ( const GU_Detail &  detail,
const GA_PointGroup *  pointGroup = nullptr 
)
inline

Utility method to construct a GU_VDBPointList.

The GU_VDBPointList is compatible with the PointIndexGrid and ParticleAtals structures.

openvdb::MaskGrid::Ptr GUvdbCreatePointMaskGrid ( const openvdb::math::Transform &  xform,
const GU_Detail &  detail,
const GA_PointGroup *  pointGroup = nullptr 
)
inline

Utility method to construct a boolean PointMaskGrid.

This method supports packed points.

openvdb::tools::PointIndexGrid::Ptr GUvdbCreatePointOffsetGrid ( const openvdb::math::Transform &  xform,
const GU_Detail &  detail,
const GA_PointGroup *  pointGroup = nullptr 
)
inline

Utility method to construct a PointIndexGrid that stores Houdini geometry offsets.

Note
PointIndexGrid's that store Houdini geometry offsets are not safe to write to disk, offsets are not guaranteed to be immutable under defragmentation operations or I/O.