From 6170c69c16b9de147157441a43e6585289c9a400 Mon Sep 17 00:00:00 2001 From: Cristy Date: Thu, 21 Sep 2017 09:38:12 -0400 Subject: [PATCH] Small optimization --- MagickCore/pixel-accessor.h | 70 ++++++++++++++++++++----------------- 1 file changed, 38 insertions(+), 32 deletions(-) diff --git a/MagickCore/pixel-accessor.h b/MagickCore/pixel-accessor.h index 6c4623696..1632146cb 100644 --- a/MagickCore/pixel-accessor.h +++ b/MagickCore/pixel-accessor.h @@ -33,9 +33,9 @@ extern "C" { #undef index static inline Quantum ClampPixel(const MagickRealType value) -{ +{ if (value < 0.0f) - return((Quantum) 0); + return((Quantum) 0); if (value >= (MagickRealType) QuantumRange) return((Quantum) QuantumRange); #if !defined(MAGICKCORE_HDRI_SUPPORT) @@ -447,10 +447,10 @@ static inline MagickBooleanType IsPixelAtDepth(const Quantum pixel, quantum; #if !defined(MAGICKCORE_HDRI_SUPPORT) - quantum=(Quantum) (((MagickRealType) QuantumRange*((QuantumAny) + quantum=(Quantum) (((MagickRealType) QuantumRange*((QuantumAny) (((MagickRealType) range*pixel)/QuantumRange+0.5)))/range+0.5); #else - quantum=(Quantum) (((MagickRealType) QuantumRange*((QuantumAny) + quantum=(Quantum) (((MagickRealType) QuantumRange*((QuantumAny) (((MagickRealType) range*pixel)/QuantumRange+0.5)))/range); #endif return(pixel == quantum ? MagickTrue : MagickFalse); @@ -464,22 +464,25 @@ static inline MagickBooleanType IsPixelEquivalent( value; value=(MagickRealType) p[image->channel_map[AlphaPixelChannel].offset]; - if ((image->alpha_trait != UndefinedPixelTrait) && - (q->alpha_trait == UndefinedPixelTrait) && - (AbsolutePixelValue(value-OpaqueAlpha) >= MagickEpsilon)) - return(MagickFalse); - if ((q->alpha_trait != UndefinedPixelTrait) && - (image->alpha_trait == UndefinedPixelTrait) && - (AbsolutePixelValue(q->alpha-OpaqueAlpha)) >= MagickEpsilon) - return(MagickFalse); - if ((image->alpha_trait != UndefinedPixelTrait) && - (q->alpha_trait != UndefinedPixelTrait)) + if (image->alpha_trait != UndefinedPixelTrait) { - if (AbsolutePixelValue(value-q->alpha) >= MagickEpsilon) - return(MagickFalse); - if (AbsolutePixelValue(value-TransparentAlpha) < MagickEpsilon) - return(MagickTrue); + if (q->alpha_trait == UndefinedPixelTrait) + { + if (AbsolutePixelValue(value-OpaqueAlpha) >= MagickEpsilon) + return(MagickFalse); + } + else + { + if (AbsolutePixelValue(value-q->alpha) >= MagickEpsilon) + return(MagickFalse); + if (AbsolutePixelValue(value-TransparentAlpha) < MagickEpsilon) + return(MagickTrue); + } } + else + if ((q->alpha_trait != UndefinedPixelTrait) && + (AbsolutePixelValue(OpaqueAlpha-q->alpha)) >= MagickEpsilon) + return(MagickFalse); value=(MagickRealType) p[image->channel_map[RedPixelChannel].offset]; if (AbsolutePixelValue(value-q->red) >= MagickEpsilon) return(MagickFalse); @@ -519,22 +522,25 @@ static inline MagickBooleanType IsPixelGray(const Image *magick_restrict image, static inline MagickBooleanType IsPixelInfoEquivalent( const PixelInfo *magick_restrict p,const PixelInfo *magick_restrict q) { - if ((p->alpha_trait != UndefinedPixelTrait) && - (q->alpha_trait == UndefinedPixelTrait) && - (AbsolutePixelValue(p->alpha-OpaqueAlpha) >= MagickEpsilon)) - return(MagickFalse); - if ((q->alpha_trait != UndefinedPixelTrait) && - (p->alpha_trait == UndefinedPixelTrait) && - (AbsolutePixelValue(q->alpha-OpaqueAlpha)) >= MagickEpsilon) - return(MagickFalse); - if ((p->alpha_trait != UndefinedPixelTrait) && - (q->alpha_trait != UndefinedPixelTrait)) + if (p->alpha_trait != UndefinedPixelTrait) { - if (AbsolutePixelValue(p->alpha-q->alpha) >= MagickEpsilon) - return(MagickFalse); - if (AbsolutePixelValue(p->alpha-TransparentAlpha) < MagickEpsilon) - return(MagickTrue); + if (q->alpha_trait == UndefinedPixelTrait) + { + if (AbsolutePixelValue(p->alpha-OpaqueAlpha) >= MagickEpsilon) + return(MagickFalse); + } + else + { + if (AbsolutePixelValue(p->alpha-q->alpha) >= MagickEpsilon) + return(MagickFalse); + if (AbsolutePixelValue(p->alpha-TransparentAlpha) < MagickEpsilon) + return(MagickTrue); + } } + else + if ((q->alpha_trait != UndefinedPixelTrait) && + (AbsolutePixelValue(OpaqueAlpha-q->alpha)) >= MagickEpsilon) + return(MagickFalse); if (AbsolutePixelValue(p->red-q->red) >= MagickEpsilon) return(MagickFalse); if (AbsolutePixelValue(p->green-q->green) >= MagickEpsilon) -- 2.40.0