|
| CurvatureStencil (const GridType &grid) |
|
| CurvatureStencil (const GridType &grid, double dx) |
|
ValueType | meanCurvature () const |
| Return the mean curvature at the previously buffered location.
|
|
ValueType | gaussianCurvature () const |
| Return the Gaussian curvature at the previously buffered location.
|
|
void | curvatures (ValueType &mean, ValueType &gauss) const |
| Return both the mean and the Gaussian curvature at the previously buffered location.
|
|
ValueType | meanCurvatureNormGrad () const |
|
ValueType | gaussianCurvatureNormGrad () const |
|
void | curvaturesNormGrad (ValueType &mean, ValueType &gauss) const |
| Return both the mean and the Gaussian curvature at the previously buffered location.
|
|
void | principalCurvatures (ValueType &min, ValueType &max) const |
| Computes the minimum and maximum principal curvature at the previously buffered location.
|
|
ValueType | laplacian () const |
|
Vec3< ValueType > | gradient () const |
|
template<int i, int j, int k> |
unsigned int | pos () const |
| Return linear offset for the specified stencil point relative to its center.
|
|
void | moveTo (const Coord &ijk) |
| Initialize the stencil buffer with the values of voxel (i, j, k) and its neighbors.
|
|
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.
|
|
void | moveTo (const IterType &iter) |
| Initialize the stencil buffer with the values of voxel (x, y, z) and its neighbors.
|
|
void | moveTo (const Vec3< RealType > &xyz) |
| Initialize the stencil buffer with the values of voxel (x, y, z) and its neighbors.
|
|
const ValueType & | getValue (unsigned int pos=0) const |
| Return the value from the stencil buffer with linear offset pos.
|
|
const ValueType & | getValue () const |
| Return the value at the specified location relative to the center of the stencil.
|
|
void | setValue (const ValueType &value) |
| Set the value at the specified location relative to the center of the stencil.
|
|
ValueType | mean () const |
| Return the mean value of the current stencil.
|
|
ValueType | min () const |
| Return the smallest value in the stencil buffer.
|
|
ValueType | max () const |
| Return the largest value in the stencil buffer.
|
|
const Coord & | getCenterCoord () const |
| Return the coordinates of the center point of the stencil.
|
|
const ValueType & | getCenterValue () const |
| Return the value at the center of the stencil.
|
|
bool | intersects (const ValueType &isoValue=ValueType(0)) const |
| Return true if the center of the stencil intersects the iso-contour specified by the isoValue.
|
|
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.
|
|
const GridType & | grid () const |
| Return a const reference to the grid from which this stencil was constructed.
|
|
const AccessorType & | accessor () const |
| Return a const reference to the ValueAccessor associated with this Stencil.
|
|
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.
- Note
- There are 2^6 = 64 different possible cases, including no intersections!
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).