class that represents a morphological look-up table (LUT). More...
#include <ImageViz/Nodes/Luts/SoMorphoLut3D.h>
Public Types | |
enum | InsertMode { INSERT_NEW, INSERT_OR } |
Public Member Functions | |
virtual SoType | getTypeId () const |
SoMorphoLut3D () | |
void | insertKernel (SbKernel3i32 kernel3d, InsertMode insertMode, unsigned int kernelRotationX, unsigned int kernelRotationY, unsigned int kernelRotationZ) |
size_t | getNumKernels () |
SbKernel3i32 | getKernel (int indexKernel) const |
Static Public Member Functions | |
static SoType | getClassTypeId () |
Class that represents a 3D morphological look-up table (LUT).
[C++] This is a reference counted object, similar to a node. It can only be destroyed by incrementing and decrementing the reference count. The initial reference count is 0. You may use the ref() and unref() methods or the SoRef "smart pointer" template.
SoFieldContainer, SbKernel3i32
SoMorphoLut3D::SoMorphoLut3D | ( | ) |
Default constructor.
static SoType SoMorphoLut3D::getClassTypeId | ( | ) | [static] |
Returns the type identifier for this class.
Reimplemented from SoFieldContainer.
SbKernel3i32 SoMorphoLut3D::getKernel | ( | int | indexKernel | ) | const |
Returns the specified kernel.
indexKernel | index of the kernel (cannot exceed registered number of kernels). |
size_t SoMorphoLut3D::getNumKernels | ( | ) |
Returns the number of kernels registered in the LUT.
virtual SoType SoMorphoLut3D::getTypeId | ( | ) | const [virtual] |
Returns the type identifier for this specific instance.
Implements SoTypedObject.
void SoMorphoLut3D::insertKernel | ( | SbKernel3i32 | kernel3d, | |
InsertMode | insertMode, | |||
unsigned int | kernelRotationX, | |||
unsigned int | kernelRotationY, | |||
unsigned int | kernelRotationZ | |||
) |
Inserts a kernel into the LUT.
[in] | kernel3d | The kernel to add. A 3D-kernel should contain exactly 27 values.
Accepted values for the kernel are:
|
[in] | insertMode | The insertion mode of the kernel. See SoMorphoLut::InsertMode. |
[in] | kernelRotationX | Rotation applied to the kernel on X-axis before insertion. |
[in] | kernelRotationY | Rotation applied to the kernel on Y-axis before insertion. |
[in] | kernelRotationZ | Rotation applied to the kernel on Z-axis before insertion. |
Value should be between 0 (no rotation) and 7. Rotation is counter-clockwise on axis direction. Rotation are applied in the following order: rotation on X-axis, rotation on Y-axis and rotation on Z-axis.
An SbException is is thrown if the size of the kernel is not 3x3x3.