Carna
Version 3.3.2
|
Implements HUVolume generically for a particular VoxelType. More...
#include <BufferedHUVolume.h>
Public Types | |
typedef BufferType | Buffer |
Holds the used buffer type. | |
typedef VoxelType | Voxel |
Holds the type used to store the value of a single voxel. | |
![]() | |
typedef HUV | Value |
Holds the co-domain type of the vector field. | |
Public Member Functions | |
BufferedHUVolume (const math::Vector3ui &size, Association< BufferType > *buffer) | |
Instantiates \(D \to \left[-1024, 3071\right]\) with \(D = [0, s_x) \times [0, s_y) \times [0, s_z)\), where \(s_x, s_y, s_z\) is size. More... | |
BufferedHUVolume (const math::Vector3ui &size) | |
HUV | operator() (unsigned int x, unsigned int y, unsigned int z) const |
Returns HUV of specified voxel. | |
HUV | operator() (const math::Vector3ui &at) const |
Returns HUV of specified voxel. | |
void | setVoxel (unsigned int x, unsigned int y, unsigned int z, HUV huv) |
Sets the HUV of a voxel. | |
void | setVoxel (const math::Vector3ui &at, HUV huv) |
Sets the HUV of a voxel. | |
BufferType & | buffer () |
References the underlying buffer. | |
const BufferType & | buffer () const |
References the underlying buffer. | |
![]() | |
HUVolume () | |
Instantiates. | |
HUVolume (const math::Vector3ui &size) | |
Instantiates. | |
![]() | |
virtual | ~VectorField () |
Does nothing. | |
Static Public Member Functions | |
static HUV | bufferValueToHUV (VoxelType bufferValue) |
Returns the HU value corresponding to bufferValue. | |
static VoxelType | HUVToBufferValue (HUV huValue) |
Returns the buffer value corresponding to huValue. | |
Protected Attributes | |
const std::unique_ptr< Association< BufferType > > | myBuffer |
Holds the underlying buffer. More... | |
Additional Inherited Members | |
![]() | |
math::Vector3ui | size |
Holds the resolution. | |
Implements HUVolume generically for a particular VoxelType.
sizeof(VoxelType) >= 2
VoxelType | is the data type used to store the value of a single voxel. |
BufferType | is the data type used as voxel container. |
Definition at line 49 of file BufferedHUVolume.h.
|
inline |
Instantiates \(D \to \left[-1024, 3071\right]\) with \(D = [0, s_x) \times [0, s_y) \times [0, s_z)\), where \(s_x, s_y, s_z\) is size.
buffer != nullptr && buffer->get() != nullptr
(**buffer).size() >= size.x * size.y * size.z
Definition at line 72 of file BufferedHUVolume.h.
|
inlineexplicit |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
Definition at line 81 of file BufferedHUVolume.h.
|
protected |
Holds the underlying buffer.
The voxels are written \(x\)- \(y\)-plane wise, each plane \(x\)-row wise. To compute the index of some voxel \(\left(x, y, z\right)\), use the following computation rule:
\[ x + \mathrm{width} \cdot y + \mathrm{height} \cdot \mathrm{width} \cdot z \]
Definition at line 168 of file BufferedHUVolume.h.
Documentation generated by Doxygen