#include <struct_elt.hh>
Inheritance diagram for oln::abstract::struct_elt< Exact >:
Public Types | |
typedef struct_elt< Exact > | self_type |
Set the exact self type of the class. | |
typedef struct_elt_traits< Exact >::abstract_type | abstract_type |
Set the abstract type of hisself. | |
typedef struct_elt_traits< Exact >::point_type | point_type |
Set the point type of the image from which points come. | |
typedef struct_elt_traits< Exact >::dpoint_type | dpoint_type |
Set the dpoint type. | |
typedef Exact | exact_type |
enum | { dim = struct_elt_traits<Exact>::dim } |
Public Member Functions | |
bool | has (const abstract::dpoint< dpoint_type > &dp) const |
Test if the set of points contains this one.
| |
unsigned | card () const |
Get the number of points. | |
bool | is_centered () const |
Test if the structuring elements is centered. | |
exact_type & | add (const abstract::dpoint< dpoint_type > &dp) |
Add a point to the structuring elements. | |
dpoint_type | dp (unsigned i) const |
Get the nth structuring element.
| |
bool | operator== (const self_type &win) const |
Compare two sets of structuring elements.
| |
coord | delta () const |
Get the delta of the structuring elements. | |
const dpoint_type | operator[] (unsigned i) const |
Get the nth structuring element.
| |
exact_type | operator- () const |
Set structuring elements to opposite. | |
Static Public Member Functions | |
std::string | name () |
Return the name of the type. | |
Protected Member Functions | |
void | sym () |
Set structuring elements to opposite. | |
struct_elt () | |
Do nothing, used only by sub-classes. |
This abstract class defines several virtual methods for its subclasses. Its goal is to deal with a set of 'move' points.
Definition at line 65 of file struct_elt.hh.
|
Add a point to the structuring elements. Add a new member to the structuring elements.
Definition at line 130 of file struct_elt.hh.
00131 {
00132 return this->exact().add_dp(dp);
00133 }
|
|
Get the number of points.
Definition at line 104 of file struct_elt.hh. Referenced by oln::convol::slow::convolve(), oln::abstract::w_windownd< w_window3d< T > >::get_weight(), oln::inter(), and oln::uni().
00105 {
00106 return this->exact().card_();
00107 }
|
|
Get the delta of the structuring elements.
Definition at line 164 of file struct_elt.hh. Referenced by oln::convol::slow::convolve(), oln::morpho::dilation(), oln::morpho::erosion(), and oln::morpho::fast_morpho().
00165 {
00166 return this->exact().get_delta();
00167 }
|
|
Get the nth structuring element.
Definition at line 141 of file struct_elt.hh. Referenced by oln::convol::slow::convolve(), oln::inter(), and oln::uni().
00142 {
00143 return this->exact().at(i);
00144 }
|
|
Test if the set of points contains this one.
Definition at line 94 of file struct_elt.hh. Referenced by oln::inter().
00095 {
00096 return this->exact().has_(dp.exact());
00097 }
|
|
Test if the structuring elements is centered.
Definition at line 116 of file struct_elt.hh.
00117 {
00118 return this->exact().is_centered_();
00119 }
|
|
Set structuring elements to opposite. Each point of structuring elements is assigned to its opposite. Definition at line 186 of file struct_elt.hh.
00187 {
00188 exact_type win(this->exact());
00189 win.sym();
00190 return win;
00191 }
|
|
Compare two sets of structuring elements.
Definition at line 152 of file struct_elt.hh.
00153 {
00154 return this->exact().is_equal(win.exact());
00155 }
|
|
Get the nth structuring element.
Definition at line 175 of file struct_elt.hh.
00176 {
00177 return this->exact().at(i);
00178 }
|
|
Set structuring elements to opposite. Each point of structuring elements is assigned to its opposite. Definition at line 201 of file struct_elt.hh.
00202 {
00203 return this->exact().sym_();
00204 }
|