static inline MagickBooleanType IsColorEqual(const PixelPacket *p,
const PixelPacket *q)
{
- if ((p->red == q->red) && (p->green == q->green) && (p->blue == q->blue))
+ if ((GetRedPixelComponent(p) == GetRedPixelComponent(q)) &&
+ (GetGreenPixelComponent(p) == GetGreenPixelComponent(q)) &&
+ (GetBluePixelComponent(p) == GetBluePixelComponent(q)))
return(MagickTrue);
return(MagickFalse);
}
static inline MagickBooleanType IsGray(const PixelPacket *pixel)
{
- if ((pixel->red == pixel->green) && (pixel->green == pixel->blue))
+ if ((GetRedPixelComponent(pixel) == GetGreenPixelComponent(pixel)) &&
+ (GetGreenPixelComponent(pixel) == GetBluePixelComponent(pixel)))
return(MagickTrue);
return(MagickFalse);
}
static inline MagickRealType MagickPixelIntensity(
const MagickPixelPacket *pixel)
{
- MagickRealType
- intensity;
-
- intensity=0.299*pixel->red+0.587*pixel->green+0.114*pixel->blue;
- return(intensity);
+ return((MagickRealType) (0.299*pixel->red+0.587*pixel->green+0.114*pixel->blue));
}
static inline Quantum MagickPixelIntensityToQuantum(
MagickRealType
intensity;
- if ((pixel->red == pixel->green) && (pixel->green == pixel->blue))
+ if ((GetRedPixelComponent(pixel) == GetGreenPixelComponent(pixel)) &&
+ (GetGreenPixelComponent(pixel) == GetBluePixelComponent(pixel)))
return((MagickRealType) pixel->red);
- intensity=(MagickRealType) (0.299*pixel->red+0.587*pixel->green+0.114*
- pixel->blue);
+ intensity=(MagickRealType) (0.299*GetRedPixelComponent(pixel)+0.587*
+ GetGreenPixelComponent(pixel)+0.114*GetBluePixelComponent(pixel));
return(intensity);
}
static inline Quantum PixelIntensityToQuantum(const PixelPacket *pixel)
{
#if !defined(MAGICKCORE_HDRI_SUPPORT)
- if ((pixel->red == pixel->green) && (pixel->green == pixel->blue))
- return(pixel->red);
- return((Quantum) (0.299*pixel->red+0.587*pixel->green+0.114*pixel->blue+0.5));
+ if ((GetRedPixelComponent(pixel) == GetGreenPixelComponent(pixel)) &&
+ (GetGreenPixelComponent(pixel) == GetBluePixelComponent(pixel)))
+ return(GetRedPixelComponent(pixel));
+ return((Quantum) (0.299*GetRedPixelComponent(pixel)+0.587*
+ GetGreenPixelComponent(pixel)+0.114*GetBluePixelComponent(pixel)+0.5));
#else
- if ((fabs(pixel->red-pixel->green) <= MagickEpsilon) &&
- (fabs(pixel->green-pixel->blue) <= MagickEpsilon))
- return((Quantum) pixel->red);
- return((Quantum) (0.299*pixel->red+0.587*pixel->green+0.114*pixel->blue));
+ {
+ double
+ alpha,
+ beta;
+
+ alpha=GetRedPixelComponent(pixel)-GetGreenPixelComponent(pixel);
+ beta=GetGreenPixelComponent(pixel)-GetBluePixelComponent(pixel);
+ if ((fabs(alpha) <= MagickEpsilon) && (fabs(beta) <= MagickEpsilon))
+ return(GetRedPixelComponent(pixel));
+ return((Quantum) (0.299*GetRedPixelComponent(pixel)+0.587*
+ GetGreenPixelComponent(pixel)+0.114*GetBluePixelComponent(pixel)));
+ }
#endif
}