PCL
pcl::CircularStructure Class Reference

Standard circular structure. More...

#include <StructuringElement.h>

+ Inheritance diagram for pcl::CircularStructure:

Public Member Functions

 CircularStructure (const CircularStructure &)=default
 
 CircularStructure (int diameter)
 
StructuringElementClone () const override
 
bool ElementExists (int i, int j, int k) const override
 
bool IsBox (int k) const override
 
- Public Member Functions inherited from pcl::StructuringElement
 StructuringElement (const StructuringElement &x)
 
 StructuringElement (int size=3, int n=1)
 
virtual ~StructuringElement ()
 
void Initialize () const
 
bool IsReflected () const
 
int NumberOfElements () const
 
int NumberOfWays () const
 
StructuringElementoperator= (const StructuringElement &x)
 
template<typename T >
void PeekElements (T *h1, int &nh1, const T *h, int k) const
 
void Reflect ()
 
int Size () const
 

Additional Inherited Members

- Public Types inherited from pcl::StructuringElement
using existence_mask = GenericVector< existence_mask_element >
 
using existence_mask_count = GenericVector< int >
 
using existence_mask_element = uint32
 
using existence_mask_set = GenericVector< existence_mask >
 

Detailed Description

The standard circular structure of size 7 is defined as follows:

· · x x x · ·
· x x x x x ·
x x x x x x x
x x x x x x x
x x x x x x x
· x x x x x ·
· · x x x · ·

where existing elements are marked as 'x' and nonexisting elements are denoted as '·'.

Circular structures can help in preserving small structures, especially rounded ones, like stars.

See also
ThreeWayStructure, OrthogonalStructure, DiagonalStructure, StarStructure

Definition at line 485 of file StructuringElement.h.

Constructor & Destructor Documentation

◆ CircularStructure() [1/2]

pcl::CircularStructure::CircularStructure ( int  diameter)
inline

Constructs a standard circular structure of the specified diameter.

Definition at line 492 of file StructuringElement.h.

◆ CircularStructure() [2/2]

pcl::CircularStructure::CircularStructure ( const CircularStructure )
default

Copy constructor.

Member Function Documentation

◆ Clone()

StructuringElement* pcl::CircularStructure::Clone ( ) const
inlineoverridevirtual

Returns a pointer to a dynamically allocated duplicate of this structuring element.

Implements pcl::StructuringElement.

Definition at line 504 of file StructuringElement.h.

◆ ElementExists()

bool pcl::CircularStructure::ElementExists ( int  i,
int  j,
int  k 
) const
inlineoverridevirtual

Returns true iff a given element exists in this structure.

Parameters
icolumn position (X-coordinate) of the requested structure element. Must be 0 <= i < n, where n is the structure size.
jrow position (Y-coordinate) of the requested structure element. Must be 0 <= j < n, where n is the structure size.
kWay index. Must be 0 <= k < m, where m is the number of ways defined in this structure.

Reimplemented from pcl::StructuringElement.

Definition at line 524 of file StructuringElement.h.

◆ IsBox()

bool pcl::CircularStructure::IsBox ( int  k) const
inlineoverridevirtual

Returns true iff this is a box structure. All elements in a box structure are existing elements.

As reimplemented by CircularStructure, this member function always returns false.

Reimplemented from pcl::StructuringElement.

Definition at line 516 of file StructuringElement.h.


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