SMIL 1.1.2
Loading...
Searching...
No Matches

Line3DSE - 3D structuring element of arbitrary length and direction starting at the origin. More...

Detailed Description

Line3DSE - 3D structuring element of arbitrary length and direction starting at the origin.

The line is defined with the help of a Besenham algorithm

Note
  • one edge of the structuring element is at the origin. So this S.E. isn't symetric. If you need a symetric S.E. you need to compose it with its transposed. As an example :
       import smilPython as sp
    
       # this way
       se = sp.Line3DSE(10, 0, PI / 4)
       se = sp.merge(se.transpose())
    
       # or this way
       se = sp.Line3DSE(10, 0, PI / 4)
       se = sp.merge(se, se.transpose())
    

#include <DStructuringElement.h>

+ Inheritance diagram for Line3DSE:
+ Collaboration diagram for Line3DSE:

Public Member Functions

 Line3DSE (int length, double theta, double zeta)
 Line3DSE() - constructor.
 
- Public Member Functions inherited from StrElt
 StrElt (UINT s=1)
 Class constructor - generic structurant element.
 
 StrElt (const StrElt &rhs)
 Class constructor - clone another structuring element.
 
 StrElt (bool oddSE, vector< UINT > indexList)
 Class constructor.
 
IntPoint getPoint (const UINT i)
 getPoint() - Get the coordinates (as a point) of the pixel of order i in the structuring element
 
UINT getSize () const
 getSize() - Get the size of the Structuring Element
 
StrEltoperator= (const StrElt &rhs)
 Clone a structuring element.
 
void clone (const StrElt &rhs)
 clone() - Clone a structuring element
 
void addPoint (const UINT index)
 addPoint() - Add a point to the structurant element based on an index on a grid.
 
void addPoint (int x, int y, int z=0)
 addPoint() - Add a point to the structurant element given its coordinates
 
void addPoint (const IntPoint &pt)
 addPoint() - Add a point to the structurant element given its coordinates in a IntPoint data structure.
 
const StrElt operator() (int s=1) const
 operator() -
 
StrElt homothety (const UINT s) const
 homothety() - Build and return an homothetic SE with size s
 
StrElt transpose () const
 transpose() - Return the opposite SE (symmetry with respect to 0)
 
StrElt merge (const StrElt &rhs)
 merge() - Merge a structuring element
 
StrElt noCenter () const
 Return the SE with no center.
 
virtual seType getType () const
 getType() - Get the type of the structuring element
 
void setName (string name)
 setName() - Set the name of the structuring element
 
void setName ()
 setName() - Set the name of the structuring element
 
const char * getName () const
 getName() - Get the name of the structuring element
 
virtual void printSelf (ostream &os=std::cout, string indent="") const
 printSelf() - Print the contents of the structuring element
 
virtual void printSelf (string indent) const
 printSelf() - Print the contents of the structuring element
 

Additional Inherited Members

- Public Attributes inherited from StrElt
vector< IntPointpoints
 List of neighbor points.
 

Constructor & Destructor Documentation

◆ Line3DSE()

Line3DSE ( int  length,
double  theta,
double  zeta 
)
inline

Line3DSE() - constructor.

Parameters
[in]length: length of the segment
[in]theta: angle (in radians) from the Structuring Segment projected in a slice with the horizontal line
[in]zeta: elevation angle - angle (in radians) between the Structuring element and each slice
Note
  • the angle theta is defined in the usual counterclockwise direction (trigonometric convention).

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