]> granicus.if.org Git - imagemagick/commitdiff
Small optimization
authorCristy <urban-warrior@imagemagick.org>
Thu, 21 Sep 2017 13:38:12 +0000 (09:38 -0400)
committerCristy <urban-warrior@imagemagick.org>
Thu, 21 Sep 2017 13:39:16 +0000 (09:39 -0400)
MagickCore/pixel-accessor.h

index 6c4623696228bc27b038dee261788d76808e316f..1632146cb0e6d59fbb00c60e072752915a8cf164 100644 (file)
@@ -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)