]> granicus.if.org Git - imagemagick/blobdiff - MagickCore/quantum-import.c
(no commit message)
[imagemagick] / MagickCore / quantum-import.c
index 628c3bce60d75afd9de8fb1546e2036d9b692759..9a04abc89489e6ee974acae21339b9583bd620af 100644 (file)
@@ -289,7 +289,7 @@ static void ImportAlphaQuantum(const Image *image,QuantumInfo *quantum_info,
           for (x=0; x < (ssize_t) number_pixels; x++)
           {
             p=PushShortPixel(quantum_info->endian,p,&pixel);
-            SetPixelAlpha(image,ClampToQuantum((MagickRealType) QuantumRange*
+            SetPixelAlpha(image,ClampToQuantum(QuantumRange*
               HalfToSinglePrecision(pixel)),q);
             p+=quantum_info->pad;
             q+=GetPixelChannels(image);
@@ -573,13 +573,13 @@ static void ImportBGRQuantum(const Image *image,QuantumInfo *quantum_info,
           for (x=0; x < (ssize_t) number_pixels; x++)
           {
             p=PushShortPixel(quantum_info->endian,p,&pixel);
-            SetPixelRed(image,ClampToQuantum((MagickRealType) QuantumRange*
+            SetPixelRed(image,ClampToQuantum(QuantumRange*
               HalfToSinglePrecision(pixel)),q);
             p=PushShortPixel(quantum_info->endian,p,&pixel);
-            SetPixelGreen(image,ClampToQuantum((MagickRealType) QuantumRange*
+            SetPixelGreen(image,ClampToQuantum(QuantumRange*
               HalfToSinglePrecision(pixel)),q);
             p=PushShortPixel(quantum_info->endian,p,&pixel);
-            SetPixelBlue(image,ClampToQuantum((MagickRealType) QuantumRange*
+            SetPixelBlue(image,ClampToQuantum(QuantumRange*
               HalfToSinglePrecision(pixel)),q);
             p+=quantum_info->pad;
             q+=GetPixelChannels(image);
@@ -792,16 +792,16 @@ static void ImportBGRAQuantum(const Image *image,QuantumInfo *quantum_info,
           for (x=0; x < (ssize_t) number_pixels; x++)
           {
             p=PushShortPixel(quantum_info->endian,p,&pixel);
-            SetPixelRed(image,ClampToQuantum((MagickRealType) QuantumRange*
+            SetPixelRed(image,ClampToQuantum(QuantumRange*
               HalfToSinglePrecision(pixel)),q);
             p=PushShortPixel(quantum_info->endian,p,&pixel);
-            SetPixelGreen(image,ClampToQuantum((MagickRealType) QuantumRange*
+            SetPixelGreen(image,ClampToQuantum(QuantumRange*
               HalfToSinglePrecision(pixel)),q);
             p=PushShortPixel(quantum_info->endian,p,&pixel);
-            SetPixelBlue(image,ClampToQuantum((MagickRealType) QuantumRange*
+            SetPixelBlue(image,ClampToQuantum(QuantumRange*
               HalfToSinglePrecision(pixel)),q);
             p=PushShortPixel(quantum_info->endian,p,&pixel);
-            SetPixelAlpha(image,ClampToQuantum((MagickRealType) QuantumRange*
+            SetPixelAlpha(image,ClampToQuantum(QuantumRange*
               HalfToSinglePrecision(pixel)),q);
             p+=quantum_info->pad;
             q+=GetPixelChannels(image);
@@ -951,7 +951,7 @@ static void ImportBlackQuantum(const Image *image,QuantumInfo *quantum_info,
           for (x=0; x < (ssize_t) number_pixels; x++)
           {
             p=PushShortPixel(quantum_info->endian,p,&pixel);
-            SetPixelBlack(image,ClampToQuantum((MagickRealType) QuantumRange*
+            SetPixelBlack(image,ClampToQuantum(QuantumRange*
               HalfToSinglePrecision(pixel)),q);
             p+=quantum_info->pad;
             q+=GetPixelChannels(image);
@@ -1066,7 +1066,7 @@ static void ImportBlueQuantum(const Image *image,QuantumInfo *quantum_info,
           for (x=0; x < (ssize_t) number_pixels; x++)
           {
             p=PushShortPixel(quantum_info->endian,p,&pixel);
-            SetPixelBlue(image,ClampToQuantum((MagickRealType) QuantumRange*
+            SetPixelBlue(image,ClampToQuantum(QuantumRange*
               HalfToSinglePrecision(pixel)),q);
             p+=quantum_info->pad;
             q+=GetPixelChannels(image);
@@ -1285,16 +1285,16 @@ static void ImportCMYKQuantum(const Image *image,QuantumInfo *quantum_info,
           for (x=0; x < (ssize_t) number_pixels; x++)
           {
             p=PushShortPixel(quantum_info->endian,p,&pixel);
-            SetPixelRed(image,ClampToQuantum((MagickRealType) QuantumRange*
+            SetPixelRed(image,ClampToQuantum(QuantumRange*
               HalfToSinglePrecision(pixel)),q);
             p=PushShortPixel(quantum_info->endian,p,&pixel);
-            SetPixelGreen(image,ClampToQuantum((MagickRealType) QuantumRange*
+            SetPixelGreen(image,ClampToQuantum(QuantumRange*
               HalfToSinglePrecision(pixel)),q);
             p=PushShortPixel(quantum_info->endian,p,&pixel);
-            SetPixelBlue(image,ClampToQuantum((MagickRealType) QuantumRange*
+            SetPixelBlue(image,ClampToQuantum(QuantumRange*
               HalfToSinglePrecision(pixel)),q);
             p=PushShortPixel(quantum_info->endian,p,&pixel);
-            SetPixelBlack(image,ClampToQuantum((MagickRealType) QuantumRange*
+            SetPixelBlack(image,ClampToQuantum(QuantumRange*
               HalfToSinglePrecision(pixel)),q);
             p+=quantum_info->pad;
             q+=GetPixelChannels(image);
@@ -1452,19 +1452,19 @@ static void ImportCMYKAQuantum(const Image *image,QuantumInfo *quantum_info,
           for (x=0; x < (ssize_t) number_pixels; x++)
           {
             p=PushShortPixel(quantum_info->endian,p,&pixel);
-            SetPixelRed(image,ClampToQuantum((MagickRealType) QuantumRange*
+            SetPixelRed(image,ClampToQuantum(QuantumRange*
               HalfToSinglePrecision(pixel)),q);
             p=PushShortPixel(quantum_info->endian,p,&pixel);
-            SetPixelGreen(image,ClampToQuantum((MagickRealType) QuantumRange*
+            SetPixelGreen(image,ClampToQuantum(QuantumRange*
               HalfToSinglePrecision(pixel)),q);
             p=PushShortPixel(quantum_info->endian,p,&pixel);
-            SetPixelBlue(image,ClampToQuantum((MagickRealType) QuantumRange*
+            SetPixelBlue(image,ClampToQuantum(QuantumRange*
               HalfToSinglePrecision(pixel)),q);
             p=PushShortPixel(quantum_info->endian,p,&pixel);
-            SetPixelBlack(image,ClampToQuantum((MagickRealType) QuantumRange*
+            SetPixelBlack(image,ClampToQuantum(QuantumRange*
               HalfToSinglePrecision(pixel)),q);
             p=PushShortPixel(quantum_info->endian,p,&pixel);
-            SetPixelAlpha(image,ClampToQuantum((MagickRealType) QuantumRange*
+            SetPixelAlpha(image,ClampToQuantum(QuantumRange*
               HalfToSinglePrecision(pixel)),q);
             p+=quantum_info->pad;
             q+=GetPixelChannels(image);
@@ -1605,10 +1605,10 @@ static void ImportGrayQuantum(const Image *image,QuantumInfo *quantum_info,
         white;
 
       black=0;
-      white=(Quantum) QuantumRange;
+      white=QuantumRange;
       if (quantum_info->min_is_white != MagickFalse)
         {
-          black=(Quantum) QuantumRange;
+          black=QuantumRange;
           white=0;
         }
       for (x=0; x < ((ssize_t) number_pixels-7); x+=8)
@@ -1816,7 +1816,7 @@ static void ImportGrayQuantum(const Image *image,QuantumInfo *quantum_info,
           for (x=0; x < (ssize_t) number_pixels; x++)
           {
             p=PushShortPixel(quantum_info->endian,p,&pixel);
-            SetPixelGray(image,ClampToQuantum((MagickRealType) QuantumRange*
+            SetPixelGray(image,ClampToQuantum(QuantumRange*
               HalfToSinglePrecision(pixel)),q);
             p+=quantum_info->pad;
             q+=GetPixelChannels(image);
@@ -2011,10 +2011,10 @@ static void ImportGrayAlphaQuantum(const Image *image,QuantumInfo *quantum_info,
           for (x=0; x < (ssize_t) number_pixels; x++)
           {
             p=PushShortPixel(quantum_info->endian,p,&pixel);
-            SetPixelGray(image,ClampToQuantum((MagickRealType) QuantumRange*
+            SetPixelGray(image,ClampToQuantum(QuantumRange*
               HalfToSinglePrecision(pixel)),q);
             p=PushShortPixel(quantum_info->endian,p,&pixel);
-            SetPixelAlpha(image,ClampToQuantum((MagickRealType) QuantumRange*
+            SetPixelAlpha(image,ClampToQuantum(QuantumRange*
               HalfToSinglePrecision(pixel)),q);
             p+=quantum_info->pad;
             q+=GetPixelChannels(image);
@@ -2139,7 +2139,7 @@ static void ImportGreenQuantum(const Image *image,QuantumInfo *quantum_info,
           for (x=0; x < (ssize_t) number_pixels; x++)
           {
             p=PushShortPixel(quantum_info->endian,p,&pixel);
-            SetPixelGreen(image,ClampToQuantum((MagickRealType) QuantumRange*
+            SetPixelGreen(image,ClampToQuantum(QuantumRange*
               HalfToSinglePrecision(pixel)),q);
             p+=quantum_info->pad;
             q+=GetPixelChannels(image);
@@ -2332,7 +2332,7 @@ static void ImportIndexQuantum(const Image *image,QuantumInfo *quantum_info,
           {
             p=PushShortPixel(quantum_info->endian,p,&pixel);
             SetPixelIndex(image,PushColormapIndex(image,ClampToQuantum(
-              (MagickRealType) QuantumRange*HalfToSinglePrecision(pixel)),
+              (double) QuantumRange*HalfToSinglePrecision(pixel)),
               &range_exception),q);
             SetPixelInfoPixel(image,image->colormap+(ssize_t)
               GetPixelIndex(image,q),q);
@@ -2535,13 +2535,13 @@ static void ImportIndexAlphaQuantum(const Image *image,
           {
             p=PushShortPixel(quantum_info->endian,p,&pixel);
             SetPixelIndex(image,PushColormapIndex(image,ClampToQuantum(
-              (MagickRealType) QuantumRange*HalfToSinglePrecision(pixel)),
+              (double) QuantumRange*HalfToSinglePrecision(pixel)),
               &range_exception),q);
             SetPixelInfoPixel(image,image->colormap+(ssize_t)
               GetPixelIndex(image,q),q);
             p=PushShortPixel(quantum_info->endian,p,&pixel);
-            SetPixelAlpha(image,ClampToQuantum((MagickRealType)
-              QuantumRange*HalfToSinglePrecision(pixel)),q);
+            SetPixelAlpha(image,ClampToQuantum(QuantumRange*
+              HalfToSinglePrecision(pixel)),q);
             p+=quantum_info->pad;
             q+=GetPixelChannels(image);
           }
@@ -2680,7 +2680,7 @@ static void ImportOpacityQuantum(const Image *image,QuantumInfo *quantum_info,
           for (x=0; x < (ssize_t) number_pixels; x++)
           {
             p=PushShortPixel(quantum_info->endian,p,&pixel);
-            SetPixelOpacity(image,ClampToQuantum((MagickRealType) QuantumRange*
+            SetPixelOpacity(image,ClampToQuantum(QuantumRange*
               HalfToSinglePrecision(pixel)),q);
             p+=quantum_info->pad;
             q+=GetPixelChannels(image);
@@ -2794,7 +2794,7 @@ static void ImportRedQuantum(const Image *image,QuantumInfo *quantum_info,
           for (x=0; x < (ssize_t) number_pixels; x++)
           {
             p=PushShortPixel(quantum_info->endian,p,&pixel);
-            SetPixelRed(image,ClampToQuantum((MagickRealType) QuantumRange*
+            SetPixelRed(image,ClampToQuantum(QuantumRange*
               HalfToSinglePrecision(pixel)),q);
             p+=quantum_info->pad;
             q+=GetPixelChannels(image);
@@ -3078,13 +3078,13 @@ static void ImportRGBQuantum(const Image *image,QuantumInfo *quantum_info,
           for (x=0; x < (ssize_t) number_pixels; x++)
           {
             p=PushShortPixel(quantum_info->endian,p,&pixel);
-            SetPixelRed(image,ClampToQuantum((MagickRealType) QuantumRange*
+            SetPixelRed(image,ClampToQuantum(QuantumRange*
               HalfToSinglePrecision(pixel)),q);
             p=PushShortPixel(quantum_info->endian,p,&pixel);
-            SetPixelGreen(image,ClampToQuantum((MagickRealType) QuantumRange*
+            SetPixelGreen(image,ClampToQuantum(QuantumRange*
               HalfToSinglePrecision(pixel)),q);
             p=PushShortPixel(quantum_info->endian,p,&pixel);
-            SetPixelBlue(image,ClampToQuantum((MagickRealType) QuantumRange*
+            SetPixelBlue(image,ClampToQuantum(QuantumRange*
               HalfToSinglePrecision(pixel)),q);
             p+=quantum_info->pad;
             q+=GetPixelChannels(image);
@@ -3297,16 +3297,16 @@ static void ImportRGBAQuantum(const Image *image,QuantumInfo *quantum_info,
           for (x=0; x < (ssize_t) number_pixels; x++)
           {
             p=PushShortPixel(quantum_info->endian,p,&pixel);
-            SetPixelRed(image,ClampToQuantum((MagickRealType) QuantumRange*
+            SetPixelRed(image,ClampToQuantum(QuantumRange*
               HalfToSinglePrecision(pixel)),q);
             p=PushShortPixel(quantum_info->endian,p,&pixel);
-            SetPixelGreen(image,ClampToQuantum((MagickRealType) QuantumRange*
+            SetPixelGreen(image,ClampToQuantum(QuantumRange*
               HalfToSinglePrecision(pixel)),q);
             p=PushShortPixel(quantum_info->endian,p,&pixel);
-            SetPixelBlue(image,ClampToQuantum((MagickRealType) QuantumRange*
+            SetPixelBlue(image,ClampToQuantum(QuantumRange*
               HalfToSinglePrecision(pixel)),q);
             p=PushShortPixel(quantum_info->endian,p,&pixel);
-            SetPixelAlpha(image,ClampToQuantum((MagickRealType) QuantumRange*
+            SetPixelAlpha(image,ClampToQuantum(QuantumRange*
               HalfToSinglePrecision(pixel)),q);
             p+=quantum_info->pad;
             q+=GetPixelChannels(image);
@@ -3586,7 +3586,7 @@ MagickExport size_t ImportQuantumPixels(const Image *image,
     }
   if (quantum_info->alpha_type == DisassociatedQuantumAlpha)
     {
-      MagickRealType
+      double
         gamma,
         Sa;
 
@@ -3610,7 +3610,7 @@ MagickExport size_t ImportQuantumPixels(const Image *image,
             continue;
           }
         Sa=QuantumScale*GetPixelAlpha(image,q);
-        gamma=ClampReciprocal(Sa);
+        gamma=MagickEpsilonReciprocal(Sa);
         for (i=0; i < (ssize_t) GetPixelChannels(image); i++)
         {
           PixelChannel