[ VIGRA Homepage | Function Index | Class Index | Namespaces | File List | Main Page ]

NeighborCode3D Class Reference

Encapsulation of direction management of neighbors for a 3D 26-neighborhood. More...

#include <vigra/voxelneighborhood.hxx>

Public Types

enum  Direction
 

Static Public Member Functions

static Diff3D constbehind ()
 
static Diff3D constbehindEast ()
 
static Diff3D constbehindNorth ()
 
static Diff3D constbehindNorthEast ()
 
static Diff3D constbehindNorthWest ()
 
static Diff3D constbehindSouth ()
 
static Diff3D constbehindSouthEast ()
 
static Diff3D constbehindSouthWest ()
 
static Diff3D constbehindWest ()
 
static Diff3D constbottom ()
 
static Diff3D constbottomLeft ()
 
static Diff3D constbottomRight ()
 
static Direction code (Diff3D const &diff)
 
static Direction code (Neighborhood3DSix::Direction d)
 
static Diff3D constdiff (Direction code)
 
static int diff (Direction code, int dim)
 
static Diff3D constdiff (int code)
 
static int dX (Direction code)
 
static int dX (int code)
 
static int dY (Direction code)
 
static int dY (int code)
 
static int dZ (Direction code)
 
static int dZ (int code)
 
static Diff3D consteast ()
 
static Diff3D constfront ()
 
static Diff3D constfrontBottom ()
 
static Diff3D constfrontBottomLeft ()
 
static Diff3D constfrontBottomRight ()
 
static Diff3D constfrontLeft ()
 
static Diff3D constfrontRight ()
 
static Diff3D constfrontTop ()
 
static Diff3D constfrontTopLeft ()
 
static Diff3D constfrontTopRight ()
 
static Diff3D constinfront ()
 
static Diff3D constinfrontEast ()
 
static Diff3D constinfrontNorth ()
 
static Diff3D constinfrontNorthEast ()
 
static Diff3D constinfrontNorthWest ()
 
static Diff3D constinfrontSouth ()
 
static Diff3D constinfrontSouthEast ()
 
static Diff3D constinfrontSouthWest ()
 
static Diff3D constinfrontWest ()
 
static bool isDiagonal (Direction dir)
 
static Diff3D constleft ()
 
static unsigned int nearBorderDirectionCount (AtVolumeBorder b)
 
static Direction nearBorderDirections (AtVolumeBorder b, int index)
 
static Direction nearBorderDirectionsCausal (AtVolumeBorder b, int index)
 
static Diff3D constnorth ()
 
static Diff3D constnorthEast ()
 
static Diff3D constnorthWest ()
 
static Diff3D constrear ()
 
static Diff3D constrearBottom ()
 
static Diff3D constrearBottomLeft ()
 
static Diff3D constrearBottomRight ()
 
static Diff3D constrearLeft ()
 
static Diff3D constrearRight ()
 
static Diff3D constrearTop ()
 
static Diff3D constrearTopLeft ()
 
static Diff3D constrearTopRight ()
 
static Diff3D const relativeDiff (Direction fromCode, Direction toCode)
 
static Diff3D const relativeDiff (int fromCode, int toCode)
 
static Diff3D constright ()
 
static Diff3D constsouth ()
 
static Diff3D constsouthEast ()
 
static Diff3D constsouthWest ()
 
static Diff3D consttop ()
 
static Diff3D consttopLeft ()
 
static Diff3D consttopRight ()
 
static Diff3D constwest ()
 

Detailed Description

Encapsulation of direction management of neighbors for a 3D 26-neighborhood.

Member Enumeration Documentation

◆ Direction

provides enumeration of all directions. DirectionCount may be used for portable loop termination conditions.

Member Function Documentation

◆ nearBorderDirectionCount()

static unsigned int nearBorderDirectionCount ( AtVolumeBorder  b)
static

The number of valid neighbors if the current center is at the volume border.

◆ nearBorderDirections()

static Direction nearBorderDirections ( AtVolumeBorder  b,
int  index 
)
static

The valid direction codes when the center is at the volume border. index must be in the range 0...nearBorderDirectionCount(b)-1.

◆ nearBorderDirectionsCausal()

static Direction nearBorderDirectionsCausal ( AtVolumeBorder  b,
int  index 
)
static

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]

static Diff3D const & diff ( Direction  code)
static

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]

static int diff ( Direction  code,
int  dim 
)
static

Equivalent to diff(code)[dim]

◆ relativeDiff() [1/2]

static Diff3D const relativeDiff ( Direction  fromCode,
Direction  toCode 
)
static

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]

static int dX ( Direction  code)
static

X-component of diff()

◆ dY() [1/2]

static int dY ( Direction  code)
static

Y-component of diff()

◆ dZ() [1/2]

static int dZ ( Direction  code)
static

Z-component of diff()

◆ dX() [2/2]

static int dX ( int  code)
static

X-component of diff()

◆ dY() [2/2]

static int dY ( int  code)
static

Y-component of diff()

◆ dZ() [2/2]

static int dZ ( int  code)
static

Z-component of diff()

◆ code() [1/2]

transform 6-neighborhood code into 26-neighborhood code.

◆ code() [2/2]

static Direction code ( Diff3D const diff)
static

transform Diff3D offset into corresponding direction code. The code Direction::Error will be returned if diff is not in the 3DTwentySix-Neighborhood.

◆ isDiagonal()

static bool isDiagonal ( Direction  dir)
static

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.

◆ frontTopLeft()

static Diff3D const & frontTopLeft ( )
static

Offset to the front-top-left neighbor

◆ frontTop()

static Diff3D const & frontTop ( )
static

Offset to the front-top neighbor

◆ frontTopRight()

static Diff3D const & frontTopRight ( )
static

Offset to the front-top-right neighbor

◆ frontLeft()

static Diff3D const & frontLeft ( )
static

Offset to the front-left neighbor

◆ front()

static Diff3D const & front ( )
static

Offset to the front neighbor

◆ frontRight()

static Diff3D const & frontRight ( )
static

Offset to the front-right neighbor

◆ frontBottomLeft()

static Diff3D const & frontBottomLeft ( )
static

Offset to the front-bottom-left neighbor

◆ frontBottom()

static Diff3D const & frontBottom ( )
static

Offset to the front-bottom neighbor

◆ frontBottomRight()

static Diff3D const & frontBottomRight ( )
static

Offset to the front-bottom-right neighbor

◆ topLeft()

static Diff3D const & topLeft ( )
static

Offset to the top-left neighbor

◆ top()

static Diff3D const & top ( )
static

Offset to the top neighbor

◆ topRight()

static Diff3D const & topRight ( )
static

Offset to the top-right neighbor

◆ left()

static Diff3D const & left ( )
static

Offset to the left neighbor

◆ right()

static Diff3D const & right ( )
static

Offset to the right neighbor

◆ bottomLeft()

static Diff3D const & bottomLeft ( )
static

Offset to the bottom-left neighbor

◆ bottom()

static Diff3D const & bottom ( )
static

Offset to the bottom neighbor

◆ bottomRight()

static Diff3D const & bottomRight ( )
static

Offset to the bottom-right neighbor

◆ rearTopLeft()

static Diff3D const & rearTopLeft ( )
static

Offset to the rear-top-left neighbor

◆ rearTop()

static Diff3D const & rearTop ( )
static

Offset to the rear-top neighbor

◆ rearTopRight()

static Diff3D const & rearTopRight ( )
static

Offset to the rear-top-right neighbor

◆ rearLeft()

static Diff3D const & rearLeft ( )
static

Offset to the rear-left neighbor

◆ rear()

static Diff3D const & rear ( )
static

Offset to the rear neighbor

◆ rearRight()

static Diff3D const & rearRight ( )
static

Offset to the rear-right neighbor

◆ rearBottomLeft()

static Diff3D const & rearBottomLeft ( )
static

Offset to the rear-bottom-left neighbor

◆ rearBottom()

static Diff3D const & rearBottom ( )
static

Offset to the rear-bottom neighbor

◆ rearBottomRight()

static Diff3D const & rearBottomRight ( )
static

Offset to the rear-bottom-right neighbor

◆ infrontNorthWest()

static Diff3D const & infrontNorthWest ( )
static

Offset to the infront-north-west neighbor

◆ infrontNorth()

static Diff3D const & infrontNorth ( )
static

Offset to the infront-north neighbor

◆ infrontNorthEast()

static Diff3D const & infrontNorthEast ( )
static

Offset to the infront-north-east neighbor

◆ infrontWest()

static Diff3D const & infrontWest ( )
static

Offset to the infront-west neighbor

◆ infront()

static Diff3D const & infront ( )
static

Offset to the infront neighbor

◆ infrontEast()

static Diff3D const & infrontEast ( )
static

Offset to the infront-east neighbor

◆ infrontSouthWest()

static Diff3D const & infrontSouthWest ( )
static

Offset to the infront-south-west neighbor

◆ infrontSouth()

static Diff3D const & infrontSouth ( )
static

Offset to the infront-south neighbor

◆ infrontSouthEast()

static Diff3D const & infrontSouthEast ( )
static

Offset to the infront-south-east neighbor

◆ northWest()

static Diff3D const & northWest ( )
static

Offset to the north-west neighbor

◆ north()

static Diff3D const & north ( )
static

Offset to the north neighbor

◆ northEast()

static Diff3D const & northEast ( )
static

Offset to the north-east neighbor

◆ west()

static Diff3D const & west ( )
static

Offset to the west neighbor

◆ east()

static Diff3D const & east ( )
static

Offset to the right neighbor

◆ southWest()

static Diff3D const & southWest ( )
static

Offset to the south-west neighbor

◆ south()

static Diff3D const & south ( )
static

Offset to the south neighbor

◆ southEast()

static Diff3D const & southEast ( )
static

Offset to the south-east neighbor

◆ behindNorthWest()

static Diff3D const & behindNorthWest ( )
static

Offset to the behind-north-west neighbor

◆ behindNorth()

static Diff3D const & behindNorth ( )
static

Offset to the behind-north neighbor

◆ behindNorthEast()

static Diff3D const & behindNorthEast ( )
static

Offset to the behind-north-east neighbor

◆ behindEast()

static Diff3D const & behindEast ( )
static

Offset to the behind-west neighbor

◆ behind()

static Diff3D const & behind ( )
static

Offset to the behind neighbor

◆ behindWest()

static Diff3D const & behindWest ( )
static

Offset to the behind-right neighbor

◆ behindSouthWest()

static Diff3D const & behindSouthWest ( )
static

Offset to the behind-south-west neighbor

◆ behindSouth()

static Diff3D const & behindSouth ( )
static

Offset to the behind-south neighbor

◆ behindSouthEast()

static Diff3D const & behindSouthEast ( )
static

Offset to the behind-south-east neighbor


The documentation for this class was generated from the following file:

© Ullrich Köthe (ullrich.koethe@iwr.uni-heidelberg.de)
Heidelberg Collaboratory for Image Processing, University of Heidelberg, Germany

html generated using doxygen and Python
vigra 1.12.2