From: dirk Date: Sun, 24 Nov 2013 08:45:11 +0000 (+0000) Subject: Reverted some of the changes made to Color. X-Git-Tag: 7.0.1-0~3099 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=3bd1b5e065e4658066fa1a1033164d9807cb612a;p=imagemagick Reverted some of the changes made to Color. --- diff --git a/Magick++/lib/Color.cpp b/Magick++/lib/Color.cpp index 948d08b72..943db9dcd 100644 --- a/Magick++/lib/Color.cpp +++ b/Magick++/lib/Color.cpp @@ -239,26 +239,6 @@ double Magick::Color::alpha(void) const return scaleQuantumToDouble(quantumAlpha()); } -void Magick::Color::blue(const double blue_) -{ - quantumBlue(scaleDoubleToQuantum(blue_)); -} - -double Magick::Color::blue(void) const -{ - return scaleQuantumToDouble(quantumBlue()); -} - -void Magick::Color::green(const double green_) -{ - quantumGreen(scaleDoubleToQuantum(green_)); -} - -double Magick::Color::green(void) const -{ - return scaleQuantumToDouble(quantumGreen()); -} - bool Magick::Color::isValid(void) const { return(_isValid); @@ -324,16 +304,6 @@ Magick::Quantum Magick::Color::quantumRed(void) const return _pixel->red; } -void Magick::Color::red(const double red_) -{ - quantumRed(scaleDoubleToQuantum(red_)); -} - -double Magick::Color::red(void) const -{ - return scaleQuantumToDouble(quantumRed()); -} - Magick::Color::Color(PixelInfo* rep_,PixelType pixelType_) : _pixel(rep_),_pixelOwn(false),_isValid(true),_pixelType(pixelType_) { @@ -395,14 +365,15 @@ Magick::ColorGray::~ColorGray() void Magick::ColorGray::shade(double shade_) { - red(shade_); - green(shade_); - blue(shade_); + Quantum gray=scaleDoubleToQuantum(shade_); + quantumRed(gray); + quantumGreen(gray); + quantumBlue(gray); } double Magick::ColorGray::shade(void) const { - return(green()); + return(scaleQuantumToDouble(quantumGreen())); } Magick::ColorGray& Magick::ColorGray::operator=(const Magick::Color& color_) @@ -472,9 +443,9 @@ void Magick::ColorHSL::hue(const double hue_) ConvertHSLToRGB(hue,saturation,luminosity,&red,&green,&blue); - quantumRed(red); - quantumGreen(green); - quantumBlue(blue); + quantumRed(ClampToQuantum(red)); + quantumGreen(ClampToQuantum(green)); + quantumBlue(ClampToQuantum(blue)); } double Magick::ColorHSL::hue(void) const @@ -509,9 +480,9 @@ void Magick::ColorHSL::luminosity(const double luminosity_) ConvertHSLToRGB(hue,saturation,luminosity,&red,&green,&blue); - quantumRed(red); - quantumGreen(green); - quantumBlue(blue); + quantumRed(ClampToQuantum(red)); + quantumGreen(ClampToQuantum(green)); + quantumBlue(ClampToQuantum(blue)); } double Magick::ColorHSL::luminosity ( void ) const @@ -546,9 +517,9 @@ void Magick::ColorHSL::saturation(const double saturation_) ConvertHSLToRGB(hue,saturation,luminosity,&red,&green,&blue); - quantumRed(red); - quantumGreen(green); - quantumBlue(blue); + quantumRed(ClampToQuantum(red)); + quantumGreen(ClampToQuantum(green)); + quantumBlue(ClampToQuantum(blue)); } double Magick::ColorHSL::saturation(void) const @@ -570,9 +541,8 @@ Magick::ColorMono::ColorMono(void) } Magick::ColorMono::ColorMono(const bool mono_) - : Color((Quantum)(mono_ ? QuantumRange : 0), - (Quantum)(mono_ ? QuantumRange : 0), - (Quantum)(mono_ ? QuantumRange : 0)) + : Color((mono_ ? QuantumRange : 0),(mono_ ? QuantumRange : 0), + (mono_ ? QuantumRange : 0)) { quantumAlpha(OpaqueAlpha); } @@ -586,10 +556,10 @@ Magick::ColorMono::~ColorMono() { } -Magick::ColorMono& Magick::ColorMono::operator = ( const Magick::Color& color_ ) +Magick::ColorMono& Magick::ColorMono::operator=(const Magick::Color& color_) { - *static_cast(this) = color_; - return *this; + *static_cast(this)=color_; + return(*this); } void Magick::ColorMono::mono(bool mono_) @@ -609,17 +579,17 @@ Magick::ColorMono::ColorMono(PixelInfo *rep_,PixelType pixelType_) { } -Magick::ColorRGBA::ColorRGBA(void) +Magick::ColorRGB::ColorRGB(void) : Color() { } -Magick::ColorRGBA::ColorRGBA(const Magick::Color & color_) +Magick::ColorRGB::ColorRGB(const Magick::Color &color_) : Color(color_) { } -Magick::ColorRGBA::ColorRGBA(const double red_,const double green_, +Magick::ColorRGB::ColorRGB(const double red_,const double green_, const double blue_) : Color(scaleDoubleToQuantum(red_),scaleDoubleToQuantum(green_), scaleDoubleToQuantum(blue_)) @@ -627,23 +597,58 @@ Magick::ColorRGBA::ColorRGBA(const double red_,const double green_, quantumAlpha(OpaqueAlpha); } -Magick::ColorRGBA::ColorRGBA(const double red_,const double green_, +Magick::ColorRGB::ColorRGB(const double red_,const double green_, const double blue_,const double alpha_) : Color(scaleDoubleToQuantum(red_),scaleDoubleToQuantum(green_), scaleDoubleToQuantum(blue_),scaleDoubleToQuantum(alpha_)) { } -Magick::ColorRGBA::~ColorRGBA(void) +Magick::ColorRGB::~ColorRGB(void) { } -Magick::ColorRGBA& Magick::ColorRGBA::operator=(const Magick::Color& color_) +Magick::ColorRGB& Magick::ColorRGB::operator=(const Magick::Color& color_) { *static_cast(this)=color_; return(*this); } +void Magick::ColorRGB::blue(const double blue_) +{ + quantumBlue(scaleDoubleToQuantum(blue_)); +} + +double Magick::ColorRGB::blue(void) const +{ + return scaleQuantumToDouble(quantumBlue()); +} + +void Magick::ColorRGB::green(const double green_) +{ + quantumGreen(scaleDoubleToQuantum(green_)); +} + +double Magick::ColorRGB::green(void) const +{ + return scaleQuantumToDouble(quantumGreen()); +} + +void Magick::ColorRGB::red(const double red_) +{ + quantumRed(scaleDoubleToQuantum(red_)); +} + +double Magick::ColorRGB::red(void) const +{ + return scaleQuantumToDouble(quantumRed()); +} + +Magick::ColorRGB::ColorRGB(PixelInfo *rep_,PixelType pixelType_) + : Color(rep_,pixelType_) +{ +} + Magick::ColorYUV::ColorYUV(void) : Color() { diff --git a/Magick++/lib/Magick++/Color.h b/Magick++/lib/Magick++/Color.h index 3a289db71..3fb683226 100644 --- a/Magick++/lib/Magick++/Color.h +++ b/Magick++/lib/Magick++/Color.h @@ -81,14 +81,6 @@ namespace Magick void alpha(const double alpha_); double alpha(void) const; - // Blue color (range 0.0 to 1.0) - void blue(const double blue_); - double blue(void) const; - - // Green color (range 0 to QuantumRange) - void green(const double green_); - double green(void) const; - // Does object contain valid color? void isValid(const bool valid_); bool isValid(void) const; @@ -109,10 +101,6 @@ namespace Magick void quantumRed(const Quantum red_); Quantum quantumRed(void) const; - // Red color (range 0 to 1.0) - void red(const double red_); - double red(void) const; - protected: // PixelType specifies the interpretation of PixelInfo members @@ -279,33 +267,45 @@ namespace Magick ColorMono(PixelInfo* rep_,PixelType pixelType_); }; - class MagickPPExport ColorRGBA: public Color + class MagickPPExport ColorRGB: public Color { public: // Default constructor - ColorRGBA(void); + ColorRGB(void); // Copy constructor - ColorRGBA(const Color &color_); + ColorRGB(const Color &color_); // Construct ColorRGBA using the specified RGB values - ColorRGBA(const double red_,const double green_,const double blue_); + ColorRGB(const double red_,const double green_,const double blue_); // Construct ColorRGBA using the specified RGBA values - ColorRGBA(const double red_,const double green_,const double blue_, + ColorRGB(const double red_,const double green_,const double blue_, const double alpha); // Destructor - ~ColorRGBA(void); + ~ColorRGB(void); // Assignment operator from base class - ColorRGBA& operator=(const Color& color_); + ColorRGB& operator=(const Color& color_); + + // Blue color (range 0.0 to 1.0) + void blue(const double blue_); + double blue(void) const; + + // Green color (range 0 to QuantumRange) + void green(const double green_); + double green(void) const; + + // Red color (range 0 to 1.0) + void red(const double red_); + double red(void) const; protected: // Constructor to construct with PixelInfo* - ColorRGBA(PixelInfo *rep_,PixelType pixelType_); + ColorRGB(PixelInfo *rep_,PixelType pixelType_); }; // diff --git a/Magick++/tests/attributes.cpp b/Magick++/tests/attributes.cpp index 4048be755..c065f24fe 100644 --- a/Magick++/tests/attributes.cpp +++ b/Magick++/tests/attributes.cpp @@ -154,7 +154,7 @@ int main( int /*argc*/, char ** argv) // // Test default value. - if ( image.backgroundColor() != ColorRGBA("white") ) + if ( image.backgroundColor() != ColorRGB("white") ) { ++failures; cout << "Line: " << __LINE__ << ", backgroundColor default (" @@ -288,7 +288,7 @@ int main( int /*argc*/, char ** argv) // // borderColor // - if ( image.borderColor() != ColorRGBA("#dfdfdf") ) + if ( image.borderColor() != ColorRGB("#dfdfdf") ) { ++failures; cout << "Line: " << __LINE__ @@ -941,8 +941,8 @@ int main( int /*argc*/, char ** argv) } // Test set/get - image.matteColor(ColorRGBA(0.5,0.5,1)); - if ( image.matteColor() != ColorRGBA(0.5,0.5,1) ) + image.matteColor(ColorRGB(0.5,0.5,1)); + if ( image.matteColor() != ColorRGB(0.5,0.5,1) ) { ++failures; cout << "Line: " << __LINE__ << ", matteColor set/get failed" << endl; @@ -1028,8 +1028,8 @@ int main( int /*argc*/, char ** argv) // penColor // - image.penColor(ColorRGBA(0.5,0.5,1)); - if ( image.penColor() != ColorRGBA(0.5,0.5,1) ) + image.penColor(ColorRGB(0.5,0.5,1)); + if ( image.penColor() != ColorRGB(0.5,0.5,1) ) { ++failures; cout << "Line: " << __LINE__ << ", penColor (" @@ -1041,8 +1041,8 @@ int main( int /*argc*/, char ** argv) // strokeColor // - image.strokeColor(ColorRGBA(0.5,0.5,1)); - if ( image.strokeColor() != ColorRGBA(0.5,0.5,1) ) + image.strokeColor(ColorRGB(0.5,0.5,1)); + if ( image.strokeColor() != ColorRGB(0.5,0.5,1) ) { ++failures; cout << "Line: " << __LINE__ << ", strokeColor (" @@ -1055,8 +1055,8 @@ int main( int /*argc*/, char ** argv) // fillColor // - image.fillColor(ColorRGBA(0.5,0.5,1)); - if ( image.fillColor() != ColorRGBA(0.5,0.5,1) ) + image.fillColor(ColorRGB(0.5,0.5,1)); + if ( image.fillColor() != ColorRGB(0.5,0.5,1) ) { ++failures; cout << "Line: " << __LINE__ << ", fillColor (" @@ -1079,8 +1079,8 @@ int main( int /*argc*/, char ** argv) } // Test set/get - image.pixelColor(40,60, ColorRGBA(0.5,1,1)); - if ( image.pixelColor(40,60) != ColorRGBA(0.5,1,1) ) + image.pixelColor(40,60, ColorRGB(0.5,1,1)); + if ( image.pixelColor(40,60) != ColorRGB(0.5,1,1) ) { ++failures; cout << "Line: " << __LINE__ << ", pixelColor set/get failed" << endl; diff --git a/Magick++/tests/color.cpp b/Magick++/tests/color.cpp index bfbcaf49e..0ce2ebc00 100644 --- a/Magick++/tests/color.cpp +++ b/Magick++/tests/color.cpp @@ -24,7 +24,7 @@ int main( int /*argc*/, char **argv) try { // - // Verify conversion from named colors as well as ColorRGBA constructor + // Verify conversion from named colors as well as ColorRGB constructor // { @@ -54,7 +54,7 @@ int main( int /*argc*/, char **argv) { { Color color( colorMap[i].color ); - ColorRGBA colorMatch( colorMap[i].red, + ColorRGB colorMatch( colorMap[i].red, colorMap[i].green, colorMap[i].blue ); if ( color != colorMatch )