Milena (Olena)  User documentation 2.0a Id
 All Classes Namespaces Functions Variables Typedefs Enumerator Groups Pages
mln::hexa< I > Struct Template Reference

hexagonal image class. More...

#include <hexa.hh>

Inheritance diagram for mln::hexa< I >:
Inheritance graph

Public Types

typedef hexa_bkd_piter_< box2dbkd_piter
 FIXME : should it be in box2d_h? Backward Site_Iterator associated type.
 
typedef hexa_fwd_piter_< box2dfwd_piter
 FIXME : should it be in box2d_h? Forward Site_Iterator associated type.
 
typedef I::lvalue lvalue
 Lvalue associated type.
 
typedef point2d_h psite
 Point site type.
 
typedef I::rvalue rvalue
 Return type of read-only access.
 
typedef hexa< tag::image_< I > > skeleton
 Skeleton.
 
typedef I::value value
 Value associated type.
 

Public Member Functions

const box2d_hdomain () const
 Give the definition domain.
 
bool has (const psite &p) const
 Test if p belongs to the image domain.
 
 hexa ()
 Constructor without argument.
 
 hexa (I &ima)
 Constructor with an base image.
 
rvalue operator() (const point2d_h &p) const
 Read-only access of pixel value at hexa point site p.
 
lvalue operator() (const point2d_h &p)
 Read-write access of pixel value at hexa point site p.
 

Detailed Description

template<typename I>
struct mln::hexa< I >

hexagonal image class.

The parameter I is the type of the base image. This image class which handles hexagonal grid.

Ex : 1 3 5 7 9 11

0 2 4 6 8 10

0 XX| | | | | | |XX

2 XX| | | | | | |XX

4 XX| | | | | | |XX

6 XX| | | | | | |XX

8 XX| | | | | | |XX

Definition at line 117 of file hexa.hh.

Member Typedef Documentation

template<typename I>
typedef hexa_bkd_piter_<box2d> mln::hexa< I >::bkd_piter

FIXME : should it be in box2d_h? Backward Site_Iterator associated type.

Definition at line 141 of file hexa.hh.

template<typename I>
typedef hexa_fwd_piter_<box2d> mln::hexa< I >::fwd_piter

FIXME : should it be in box2d_h? Forward Site_Iterator associated type.

Definition at line 137 of file hexa.hh.

template<typename I>
typedef I ::lvalue mln::hexa< I >::lvalue

Lvalue associated type.

Definition at line 127 of file hexa.hh.

template<typename I>
typedef point2d_h mln::hexa< I >::psite

Point site type.

Definition at line 133 of file hexa.hh.

template<typename I>
typedef I ::rvalue mln::hexa< I >::rvalue

Return type of read-only access.

Definition at line 130 of file hexa.hh.

template<typename I>
typedef hexa< tag::image_<I> > mln::hexa< I >::skeleton

Skeleton.

Definition at line 121 of file hexa.hh.

template<typename I>
typedef I ::value mln::hexa< I >::value

Value associated type.

Definition at line 124 of file hexa.hh.

Constructor & Destructor Documentation

template<typename I >
hexa< I >::hexa ( )
inline

Constructor without argument.

Definition at line 216 of file hexa.hh.

template<typename I>
hexa< I >::hexa ( I &  ima)
inline

Constructor with an base image.

Definition at line 223 of file hexa.hh.

Member Function Documentation

template<typename I >
const box2d_h & hexa< I >::domain ( ) const
inline

Give the definition domain.

Definition at line 251 of file hexa.hh.

template<typename I >
bool hexa< I >::has ( const psite p) const
inline

Test if p belongs to the image domain.

Definition at line 260 of file hexa.hh.

template<typename I >
hexa< I >::rvalue hexa< I >::operator() ( const point2d_h p) const
inline

Read-only access of pixel value at hexa point site p.

Definition at line 231 of file hexa.hh.

template<typename I >
hexa< I >::lvalue hexa< I >::operator() ( const point2d_h p)
inline

Read-write access of pixel value at hexa point site p.

Definition at line 241 of file hexa.hh.