OpenVDB
9.0.1
|
#include <nanovdb/util/Stencils.h>
Inherits BaseStencil< BoxStencil< GridT >, 8, GridT >.
Public Types | |
using | GridType = GridT |
using | TreeType = typename GridT::TreeType |
using | ValueType = typename GridT::ValueType |
using | AccessorType = ReadAccessor< ValueType > |
Public Member Functions | |
BoxStencil (const GridType &grid) | |
template<int i, int j, int k> | |
unsigned int | pos () const |
Return linear offset for the specified stencil point relative to its center. More... | |
bool | intersects (ValueType isoValue=ValueType(0)) const |
Return true if the center of the stencil intersects the. More... | |
ValueType | interpolation (const Vec3< ValueType > &xyz) const |
Return the trilinear interpolation at the normalized position. More... | |
Vec3< ValueType > | gradient (const Vec3< ValueType > &xyz) const |
Return the gradient in world space of the trilinear interpolation kernel. More... | |
void | moveTo (const Coord &ijk) |
Initialize the stencil buffer with the values of voxel (i, j, k) and its neighbors. More... | |
void | moveTo (const Coord &ijk, const ValueType ¢erValue) |
Initialize the stencil buffer with the values of voxel (i, j, k) and its neighbors. The method also takes a value of the center element of the stencil, assuming it is already known. More... | |
void | moveTo (const IterType &iter) |
Initialize the stencil buffer with the values of voxel (x, y, z) and its neighbors. More... | |
void | moveTo (const Vec3< RealType > &xyz) |
Initialize the stencil buffer with the values of voxel (x, y, z) and its neighbors. More... | |
const ValueType & | getValue (unsigned int pos=0) const |
Return the value from the stencil buffer with linear offset pos. More... | |
const ValueType & | getValue () const |
Return the value at the specified location relative to the center of the stencil. More... | |
void | setValue (const ValueType &value) |
Set the value at the specified location relative to the center of the stencil. More... | |
ValueType | mean () const |
Return the mean value of the current stencil. More... | |
ValueType | min () const |
Return the smallest value in the stencil buffer. More... | |
ValueType | max () const |
Return the largest value in the stencil buffer. More... | |
const Coord & | getCenterCoord () const |
Return the coordinates of the center point of the stencil. More... | |
const ValueType & | getCenterValue () const |
Return the value at the center of the stencil. More... | |
bool | intersects (const ValueType &isoValue=ValueType(0)) const |
Return true if the center of the stencil intersects the iso-contour specified by the isoValue. More... | |
Mask | intersectionMask (ValueType isoValue=ValueType(0)) const |
Return true a bit-mask where the 6 lower bits indicates if the center of the stencil intersects the iso-contour specified by the isoValue. More... | |
const GridType & | grid () const |
Return a const reference to the grid from which this stencil was constructed. More... | |
const AccessorType & | accessor () const |
Return a const reference to the ValueAccessor associated with this Stencil. More... | |
Static Public Member Functions | |
static int | size () |
Return the size of the stencil buffer. More... | |
Static Public Attributes | |
static constexpr int | SIZE = 8 |
Protected Attributes | |
const GridType * | mGrid |
AccessorType | mAcc |
ValueType | mValues [SIZE] |
Coord | mCenter |
Friends | |
template<typename , int , typename > | |
class | BaseStencil |
|
inherited |
using GridType = GridT |
using TreeType = typename GridT::TreeType |
using ValueType = typename GridT::ValueType |
|
inline |
|
inlineinherited |
Return a const reference to the ValueAccessor associated with this Stencil.
|
inlineinherited |
Return the coordinates of the center point of the stencil.
|
inlineinherited |
Return the value at the center of the stencil.
|
inlineinherited |
Return the value from the stencil buffer with linear offset pos.
|
inlineinherited |
Return the value at the specified location relative to the center of the stencil.
Return the gradient in world space of the trilinear interpolation kernel.
xyz | Floating point coordinate position. |
|
inlineinherited |
Return a const reference to the grid from which this stencil was constructed.
Return the trilinear interpolation at the normalized position.
xyz | Floating point coordinate position. Index space and NOT world space. |
Return true a bit-mask where the 6 lower bits indicates if the center of the stencil intersects the iso-contour specified by the isoValue.
The ordering of bit mask is ( -x, +x, -y, +y, -z, +z ), so to check if there is an intersection in -y use (mask & (1u<<2)) where mask is ther return value from this function. To check if there are any intersections use mask!=0u, and for no intersections use mask==0u. To count the number of intersections use __builtin_popcount(mask).
Return true if the center of the stencil intersects the iso-contour specified by the isoValue.
Return true if the center of the stencil intersects the.
iso-contour specified by the isoValue
|
inlineinherited |
Return the largest value in the stencil buffer.
|
inlineinherited |
Return the mean value of the current stencil.
|
inlineinherited |
Return the smallest value in the stencil buffer.
|
inlineinherited |
Initialize the stencil buffer with the values of voxel (i, j, k) and its neighbors.
ijk | Index coordinates of stencil center |
Initialize the stencil buffer with the values of voxel (i, j, k) and its neighbors. The method also takes a value of the center element of the stencil, assuming it is already known.
ijk | Index coordinates of stencil center |
centerValue | Value of the center element of the stencil |
|
inlineinherited |
Initialize the stencil buffer with the values of voxel (x, y, z) and its neighbors.
|
inlineinherited |
Initialize the stencil buffer with the values of voxel (x, y, z) and its neighbors.
xyz | Floating point voxel coordinates of stencil center |
This method will check to see if it is necessary to update the stencil based on the cached index coordinates of the center point.
|
inline |
Return linear offset for the specified stencil point relative to its center.
|
inlineinherited |
Set the value at the specified location relative to the center of the stencil.
|
inlinestaticinherited |
Return the size of the stencil buffer.
|
friend |
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |
|
static |