Magick++ 6.9.13
Loading...
Searching...
No Matches
Magick::ChannelMoments Class Reference
Collaboration diagram for Magick::ChannelMoments:

Public Member Functions

 ChannelMoments (const ChannelMoments &channelMoments_)
 ChannelMoments (const ChannelType channel_, const MagickCore::ChannelMoments *channelMoments_)
double centroidX (void) const
double centroidY (void) const
ChannelType channel (void) const
double ellipseAxisX (void) const
double ellipseAxisY (void) const
double ellipseAngle (void) const
double ellipseEccentricity (void) const
double ellipseIntensity (void) const
double huInvariants (const size_t index_) const

Private Attributes

std::vector< double > _huInvariants
ChannelType _channel
double _centroidX
double _centroidY
double _ellipseAxisX
double _ellipseAxisY
double _ellipseAngle
double _ellipseEccentricity
double _ellipseIntensity

Detailed Description

Definition at line 18 of file ChannelMoments.h.

Constructor & Destructor Documentation

◆ ChannelMoments() [1/3]

Magick::ChannelMoments::ChannelMoments ( void )

Definition at line 18 of file ChannelMoments.cpp.

19 : _huInvariants(8),
20 _channel(UndefinedChannel),
21 _centroidX(0.0),
22 _centroidY(0.0),
23 _ellipseAxisX(0.0),
24 _ellipseAxisY(0.0),
25 _ellipseAngle(0.0),
26 _ellipseEccentricity(0.0),
27 _ellipseIntensity(0.0)
28{
29}

◆ ChannelMoments() [2/3]

Magick::ChannelMoments::ChannelMoments ( const ChannelMoments & channelMoments_)

Definition at line 31 of file ChannelMoments.cpp.

32 : _huInvariants(channelMoments_._huInvariants),
33 _channel(channelMoments_._channel),
34 _centroidX(channelMoments_._centroidX),
35 _centroidY(channelMoments_._centroidY),
36 _ellipseAxisX(channelMoments_._ellipseAxisX),
37 _ellipseAxisY(channelMoments_._ellipseAxisY),
38 _ellipseAngle(channelMoments_._ellipseAngle),
39 _ellipseEccentricity(channelMoments_._ellipseEccentricity),
40 _ellipseIntensity(channelMoments_._ellipseIntensity)
41{
42}

◆ ~ChannelMoments()

Magick::ChannelMoments::~ChannelMoments ( void )

Definition at line 44 of file ChannelMoments.cpp.

45{
46}

◆ ChannelMoments() [3/3]

Magick::ChannelMoments::ChannelMoments ( const ChannelType channel_,
const MagickCore::ChannelMoments * channelMoments_ )

Definition at line 48 of file ChannelMoments.cpp.

50 : _huInvariants(),
51 _channel(channel_),
52 _centroidX(channelMoments_->centroid.x),
53 _centroidY(channelMoments_->centroid.y),
54 _ellipseAxisX(channelMoments_->ellipse_axis.x),
55 _ellipseAxisY(channelMoments_->ellipse_axis.y),
56 _ellipseAngle(channelMoments_->ellipse_angle),
57 _ellipseEccentricity(channelMoments_->ellipse_eccentricity),
58 _ellipseIntensity(channelMoments_->ellipse_intensity)
59{
60 size_t
61 i;
62
63 for (i=0; i<8; i++)
64 _huInvariants.push_back(channelMoments_->I[i]);
65}

Member Function Documentation

◆ centroidX()

double Magick::ChannelMoments::centroidX ( void ) const

Definition at line 67 of file ChannelMoments.cpp.

68{
69 return(_centroidX);
70}

◆ centroidY()

double Magick::ChannelMoments::centroidY ( void ) const

Definition at line 72 of file ChannelMoments.cpp.

73{
74 return(_centroidY);
75}

◆ channel()

Magick::ChannelType Magick::ChannelMoments::channel ( void ) const

Definition at line 77 of file ChannelMoments.cpp.

78{
79 return(_channel);
80}

◆ ellipseAngle()

double Magick::ChannelMoments::ellipseAngle ( void ) const

Definition at line 92 of file ChannelMoments.cpp.

93{
94 return(_ellipseAngle);
95}

◆ ellipseAxisX()

double Magick::ChannelMoments::ellipseAxisX ( void ) const

Definition at line 82 of file ChannelMoments.cpp.

83{
84 return(_ellipseAxisX);
85}

◆ ellipseAxisY()

double Magick::ChannelMoments::ellipseAxisY ( void ) const

Definition at line 87 of file ChannelMoments.cpp.

88{
89 return(_ellipseAxisY);
90}

◆ ellipseEccentricity()

double Magick::ChannelMoments::ellipseEccentricity ( void ) const

Definition at line 97 of file ChannelMoments.cpp.

98{
99 return(_ellipseEccentricity);
100}

◆ ellipseIntensity()

double Magick::ChannelMoments::ellipseIntensity ( void ) const

Definition at line 102 of file ChannelMoments.cpp.

103{
104 return(_ellipseIntensity);
105}

◆ huInvariants()

double Magick::ChannelMoments::huInvariants ( const size_t index_) const

Definition at line 107 of file ChannelMoments.cpp.

108{
109 if (index_ > 7)
110 throw ErrorOption("Valid range for index is 0-7");
111
112 return(_huInvariants.at(index_));
113}

Member Data Documentation

◆ _centroidX

double Magick::ChannelMoments::_centroidX
private

Definition at line 68 of file ChannelMoments.h.

◆ _centroidY

double Magick::ChannelMoments::_centroidY
private

Definition at line 69 of file ChannelMoments.h.

◆ _channel

ChannelType Magick::ChannelMoments::_channel
private

Definition at line 67 of file ChannelMoments.h.

◆ _ellipseAngle

double Magick::ChannelMoments::_ellipseAngle
private

Definition at line 72 of file ChannelMoments.h.

◆ _ellipseAxisX

double Magick::ChannelMoments::_ellipseAxisX
private

Definition at line 70 of file ChannelMoments.h.

◆ _ellipseAxisY

double Magick::ChannelMoments::_ellipseAxisY
private

Definition at line 71 of file ChannelMoments.h.

◆ _ellipseEccentricity

double Magick::ChannelMoments::_ellipseEccentricity
private

Definition at line 73 of file ChannelMoments.h.

◆ _ellipseIntensity

double Magick::ChannelMoments::_ellipseIntensity
private

Definition at line 74 of file ChannelMoments.h.

◆ _huInvariants

std::vector<double> Magick::ChannelMoments::_huInvariants
private

Definition at line 66 of file ChannelMoments.h.


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