|
NeighborCode3D Class Reference
|
 |
Encapsulation of direction management of neighbors for a 3D 6-neighborhood.
More...
#include <vigra/voxelneighborhood.hxx>
Detailed Description
Encapsulation of direction management of neighbors for a 3D 6-neighborhood.
◆ Direction
provides enumeration of all directions. DirectionCount may be used for portable loop termination conditions.
◆ nearBorderDirectionCount()
The number of valid neighbors if the current center is at the volume border.
◆ nearBorderDirections()
The valid direction codes when the center is at the volume border. index must be in the range 0...nearBorderDirectionCount(b)-1
.
◆ nearBorderDirectionsCausal()
The valid direction three codes in anti causal direction (means: look back in scanline direction)when the center is at the volume border. Should be used with isAtVolumeBorderCausal to determine the Directions, as this avoids using of the nonesense border ids (e.g. 0,1,8,9...) of this table. index must be in the range 0...nearBorderDirectionCount(b)-1
.
◆ diff() [1/3]
transform direction code into corresponding Diff3D offset. (note: there is no bounds checking on the code you pass.)
◆ diff() [2/3]
static Diff3D const& diff |
( |
int |
code | ) |
|
|
static |
Equivalent to diff(static_cast<Direction>(code))
. (note: there is no bounds checking on the code you pass.)
◆ diff() [3/3]
Equivalent to diff(code)[dim]
◆ relativeDiff() [1/2]
Get the relative offset from one neighbor to the other. For example, relativeDiff(East, West) == multi_differencetype(-2,0,0)
. (note: there is no bounds checking on the code you pass.)
◆ relativeDiff() [2/2]
static Diff3D const& relativeDiff |
( |
int |
fromCode, |
|
|
int |
toCode |
|
) |
| |
|
static |
Equivalent to relativeDiff(static_cast<Direction>(fromCode), static_cast<Direction>(toCode)). (note: there is no bounds checking on the code you pass.)
◆ dX() [1/2]
◆ dY() [1/2]
◆ dZ() [1/2]
◆ dX() [2/2]
static int dX |
( |
int |
code | ) |
|
|
static |
◆ dY() [2/2]
static int dY |
( |
int |
code | ) |
|
|
static |
◆ dZ() [2/2]
static int dZ |
( |
int |
code | ) |
|
|
static |
◆ code()
transform Diff3D offset into corresponding direction code. The code Direction::Error
will be returned if diff
is not in the 3DSix-Neighborhood.
◆ isDiagonal()
Check whether a code refers to a diagonal direction. Useful if you want to abstract the differences between 6- and 26-neighborhood. Always false
for 6-neighborhood.
◆ right()
static Diff3D const& right |
( |
| ) |
|
|
static |
Offset to the right neighbor
◆ top()
Offset to the top neighbor
◆ left()
Offset to the left neighbor
◆ bottom()
static Diff3D const& bottom |
( |
| ) |
|
|
static |
Offset to the bottom neighbor
◆ rear()
Offset to the rear neighbor
◆ front()
static Diff3D const& front |
( |
| ) |
|
|
static |
Offset to the neighbor in front
◆ east()
Offset to the east neighbor
◆ north()
static Diff3D const& north |
( |
| ) |
|
|
static |
Offset to the north neighbor
◆ west()
Offset to the west neighbor
◆ south()
static Diff3D const& south |
( |
| ) |
|
|
static |
Offset to the south neighbor
◆ behind()
static Diff3D const& behind |
( |
| ) |
|
|
static |
Offset to the rear neighbor
◆ infront()
static Diff3D const& infront |
( |
| ) |
|
|
static |
Offset to the neighbor in front
The documentation for this class was generated from the following file: