Public Types | Public Member Functions

mln::image3d< T > Struct Template Reference
[Basic types]

Basic 3D image class. More...

#include <image3d.hh>

Inherits image_primary< T, box3d, image3d< T > >.

List of all members.

Public Types

typedef T & lvalue
 Return type of read-write access.
typedef const T & rvalue
 Return type of read-only access.
typedef image3d< tag::value_< T > > skeleton
 Skeleton.
typedef T value
 Value associated type.

Public Member Functions

const box3dbbox () const
 Give the bounding box domain.
unsigned border () const
 Give the border thickness.
const T * buffer () const
 Give a hook to the value buffer.
T * buffer ()
 Give a hook to the value buffer.
int delta_index (const dpoint3d &dp) const
 Fast Image method.
const box3ddomain () const
 Give the definition domain.
T & element (unsigned i)
 Read-write access to the image value located at index i.
const T & element (unsigned i) const
 Read-only access to the image value located at index i.
bool has (const point3d &p) const
 Test if p is valid.
 image3d (const box3d &b, unsigned bdr=border::thickness)
 Constructor with a box and the border thickness (default is 3).
 image3d ()
 Constructor without argument.
 image3d (int nslices, int nrows, int ncols, unsigned bdr=border::thickness)
 Constructor with the numbers of indexes and the border thickness.
unsigned ncols () const
 Give the number of columns.
unsigned nelements () const
 Give the number of cells (points including border ones).
unsigned nrows () const
 Give the number of rows.
unsigned nslices () const
 Give the number of slices.
T & operator() (const point3d &p)
 Read-write access to the image value located at point p.
const T & operator() (const point3d &p) const
 Read-only access to the image value located at point p.
point3d point_at_index (unsigned o) const
 Give the point corresponding to the offset o.

Detailed Description

template<typename T>
struct mln::image3d< T >

Basic 3D image class.

The parameter T is the type of pixel values. This image class stores data in memory and has a virtual border with constant thickness around data.


Member Typedef Documentation

template<typename T>
typedef T& mln::image3d< T >::lvalue

Return type of read-write access.

template<typename T>
typedef const T& mln::image3d< T >::rvalue

Return type of read-only access.

template<typename T>
typedef image3d< tag::value_<T> > mln::image3d< T >::skeleton

Skeleton.

template<typename T>
typedef T mln::image3d< T >::value

Value associated type.


Constructor & Destructor Documentation

template<typename T >
mln::image3d< T >::image3d (  )  [inline]

Constructor without argument.

template<typename T >
mln::image3d< T >::image3d ( const box3d b,
unsigned  bdr = border::thickness 
) [inline]

Constructor with a box and the border thickness (default is 3).

template<typename T >
mln::image3d< T >::image3d ( int  nslices,
int  nrows,
int  ncols,
unsigned  bdr = border::thickness 
) [inline]

Constructor with the numbers of indexes and the border thickness.

References mln::make::box3d().


Member Function Documentation

template<typename T >
const box3d & mln::image3d< T >::bbox (  )  const [inline]

Give the bounding box domain.

template<typename T >
unsigned mln::image3d< T >::border (  )  const [inline]

Give the border thickness.

template<typename T >
T * mln::image3d< T >::buffer (  )  [inline]

Give a hook to the value buffer.

template<typename T >
const T * mln::image3d< T >::buffer (  )  const [inline]

Give a hook to the value buffer.

template<typename T >
int mln::image3d< T >::delta_index ( const dpoint3d dp  )  const [inline]

Fast Image method.

Give the offset corresponding to the delta-point dp.

template<typename T >
const box3d & mln::image3d< T >::domain (  )  const [inline]

Give the definition domain.

template<typename T >
const T & mln::image3d< T >::element ( unsigned  i  )  const [inline]

Read-only access to the image value located at index i.

References mln::image3d< T >::nelements().

template<typename T >
T & mln::image3d< T >::element ( unsigned  i  )  [inline]

Read-write access to the image value located at index i.

References mln::image3d< T >::nelements().

template<typename T >
bool mln::image3d< T >::has ( const point3d p  )  const [inline]

Test if p is valid.

Referenced by mln::image3d< T >::operator()().

template<typename T >
unsigned mln::image3d< T >::ncols (  )  const [inline]

Give the number of columns.

template<typename T >
unsigned mln::image3d< T >::nelements (  )  const [inline]

Give the number of cells (points including border ones).

Referenced by mln::image3d< T >::element(), and mln::image3d< T >::point_at_index().

template<typename T >
unsigned mln::image3d< T >::nrows (  )  const [inline]

Give the number of rows.

template<typename T >
unsigned mln::image3d< T >::nslices (  )  const [inline]

Give the number of slices.

template<typename T >
const T & mln::image3d< T >::operator() ( const point3d p  )  const [inline]

Read-only access to the image value located at point p.

References mln::image3d< T >::has().

template<typename T >
T & mln::image3d< T >::operator() ( const point3d p  )  [inline]

Read-write access to the image value located at point p.

References mln::image3d< T >::has().

template<typename T >
point3d mln::image3d< T >::point_at_index ( unsigned  o  )  const [inline]

Give the point corresponding to the offset o.

References mln::image3d< T >::nelements().