From 3d9ce7650cad0e97ccbfd7753850dea469da660f Mon Sep 17 00:00:00 2001 From: James Jackson-South Date: Tue, 28 Mar 2017 21:19:12 +1100 Subject: [PATCH] Use MathF --- .../Implementation/CieLab/CieLabToCieXyzConverter.cs | 8 +++----- .../Implementation/CieLab/CieXyzToCieLabConverter.cs | 8 +++----- .../Conversion/Implementation/Rgb/GammaCompanding.cs | 6 +++--- .../Spaces/Conversion/Implementation/Rgb/LCompanding.cs | 5 ++--- .../Conversion/Implementation/Rgb/Rec2020Companding.cs | 3 +-- .../Conversion/Implementation/Rgb/Rec709Companding.cs | 3 +-- .../Conversion/Implementation/Rgb/SRgbCompanding.cs | 5 ++--- 7 files changed, 15 insertions(+), 23 deletions(-) diff --git a/src/ImageSharp/Colors/Spaces/Conversion/Implementation/CieLab/CieLabToCieXyzConverter.cs b/src/ImageSharp/Colors/Spaces/Conversion/Implementation/CieLab/CieLabToCieXyzConverter.cs index d12c23844..47fe803a8 100644 --- a/src/ImageSharp/Colors/Spaces/Conversion/Implementation/CieLab/CieLabToCieXyzConverter.cs +++ b/src/ImageSharp/Colors/Spaces/Conversion/Implementation/CieLab/CieLabToCieXyzConverter.cs @@ -5,8 +5,6 @@ namespace ImageSharp.Colors.Spaces.Conversion.Implementation.CieLab { - using System; - using ImageSharp.Colors.Spaces; /// @@ -25,11 +23,11 @@ namespace ImageSharp.Colors.Spaces.Conversion.Implementation.CieLab float fx = (a / 500F) + fy; float fz = fy - (b / 200F); - float fx3 = (float)Math.Pow(fx, 3D); - float fz3 = (float)Math.Pow(fz, 3D); + float fx3 = MathF.Pow(fx, 3F); + float fz3 = MathF.Pow(fz, 3F); float xr = fx3 > CieConstants.Epsilon ? fx3 : ((116F * fx) - 16F) / CieConstants.Kappa; - float yr = l > CieConstants.Kappa * CieConstants.Epsilon ? (float)Math.Pow((l + 16F) / 116F, 3D) : l / CieConstants.Kappa; + float yr = l > CieConstants.Kappa * CieConstants.Epsilon ? MathF.Pow((l + 16F) / 116F, 3F) : l / CieConstants.Kappa; float zr = fz3 > CieConstants.Epsilon ? fz3 : ((116F * fz) - 16F) / CieConstants.Kappa; float wx = input.WhitePoint.X, wy = input.WhitePoint.Y, wz = input.WhitePoint.Z; diff --git a/src/ImageSharp/Colors/Spaces/Conversion/Implementation/CieLab/CieXyzToCieLabConverter.cs b/src/ImageSharp/Colors/Spaces/Conversion/Implementation/CieLab/CieXyzToCieLabConverter.cs index 29fe8be8d..2b80ff1b6 100644 --- a/src/ImageSharp/Colors/Spaces/Conversion/Implementation/CieLab/CieXyzToCieLabConverter.cs +++ b/src/ImageSharp/Colors/Spaces/Conversion/Implementation/CieLab/CieXyzToCieLabConverter.cs @@ -5,8 +5,6 @@ namespace ImageSharp.Colors.Spaces.Conversion.Implementation.CieLab { - using System; - using ImageSharp.Colors.Spaces; /// @@ -46,9 +44,9 @@ namespace ImageSharp.Colors.Spaces.Conversion.Implementation.CieLab float xr = input.X / wx, yr = input.Y / wy, zr = input.Z / wz; - float fx = xr > CieConstants.Epsilon ? (float)Math.Pow(xr, 0.333333333333333D) : ((CieConstants.Kappa * xr) + 16F) / 116F; - float fy = yr > CieConstants.Epsilon ? (float)Math.Pow(yr, 0.333333333333333D) : ((CieConstants.Kappa * yr) + 16F) / 116F; - float fz = zr > CieConstants.Epsilon ? (float)Math.Pow(zr, 0.333333333333333D) : ((CieConstants.Kappa * zr) + 16F) / 116F; + float fx = xr > CieConstants.Epsilon ? MathF.Pow(xr, 0.3333333F) : ((CieConstants.Kappa * xr) + 16F) / 116F; + float fy = yr > CieConstants.Epsilon ? MathF.Pow(yr, 0.3333333F) : ((CieConstants.Kappa * yr) + 16F) / 116F; + float fz = zr > CieConstants.Epsilon ? MathF.Pow(zr, 0.3333333F) : ((CieConstants.Kappa * zr) + 16F) / 116F; float l = (116F * fy) - 16F; float a = 500F * (fx - fy); diff --git a/src/ImageSharp/Colors/Spaces/Conversion/Implementation/Rgb/GammaCompanding.cs b/src/ImageSharp/Colors/Spaces/Conversion/Implementation/Rgb/GammaCompanding.cs index 1e280d8fd..c40514795 100644 --- a/src/ImageSharp/Colors/Spaces/Conversion/Implementation/Rgb/GammaCompanding.cs +++ b/src/ImageSharp/Colors/Spaces/Conversion/Implementation/Rgb/GammaCompanding.cs @@ -35,14 +35,14 @@ namespace ImageSharp.Colors.Spaces.Conversion.Implementation.Rgb [MethodImpl(MethodImplOptions.AggressiveInlining)] public float Expand(float channel) { - return (float)Math.Pow(channel, this.Gamma); + return MathF.Pow(channel, this.Gamma); } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] public float Compress(float channel) { - return (float)Math.Pow(channel, 1 / this.Gamma); + return MathF.Pow(channel, 1 / this.Gamma); } } -} +} \ No newline at end of file diff --git a/src/ImageSharp/Colors/Spaces/Conversion/Implementation/Rgb/LCompanding.cs b/src/ImageSharp/Colors/Spaces/Conversion/Implementation/Rgb/LCompanding.cs index aa28dd8a9..d7a3f5875 100644 --- a/src/ImageSharp/Colors/Spaces/Conversion/Implementation/Rgb/LCompanding.cs +++ b/src/ImageSharp/Colors/Spaces/Conversion/Implementation/Rgb/LCompanding.cs @@ -5,7 +5,6 @@ namespace ImageSharp.Colors.Spaces.Conversion.Implementation.Rgb { - using System; using System.Runtime.CompilerServices; /// @@ -22,7 +21,7 @@ namespace ImageSharp.Colors.Spaces.Conversion.Implementation.Rgb [MethodImpl(MethodImplOptions.AggressiveInlining)] public float Expand(float channel) { - return channel <= 0.08 ? 100 * channel / CieConstants.Kappa : (float)Math.Pow((channel + 0.16) / 1.16, 3); + return channel <= 0.08 ? 100 * channel / CieConstants.Kappa : MathF.Pow((channel + 0.16F) / 1.16F, 3); } /// @@ -31,7 +30,7 @@ namespace ImageSharp.Colors.Spaces.Conversion.Implementation.Rgb { return channel <= CieConstants.Epsilon ? channel * CieConstants.Kappa / 100F - : (float)Math.Pow(1.16 * channel, 0.333333333333333D) - 0.16F; + : MathF.Pow(1.16F * channel, 0.3333333F) - 0.16F; } } } diff --git a/src/ImageSharp/Colors/Spaces/Conversion/Implementation/Rgb/Rec2020Companding.cs b/src/ImageSharp/Colors/Spaces/Conversion/Implementation/Rgb/Rec2020Companding.cs index 3f33beafb..91fbfe218 100644 --- a/src/ImageSharp/Colors/Spaces/Conversion/Implementation/Rgb/Rec2020Companding.cs +++ b/src/ImageSharp/Colors/Spaces/Conversion/Implementation/Rgb/Rec2020Companding.cs @@ -5,7 +5,6 @@ namespace ImageSharp.Colors.Spaces.Conversion.Implementation.Rgb { - using System; using System.Runtime.CompilerServices; /// @@ -21,7 +20,7 @@ namespace ImageSharp.Colors.Spaces.Conversion.Implementation.Rgb [MethodImpl(MethodImplOptions.AggressiveInlining)] public float Expand(float channel) { - return channel < 0.08145F ? channel / 4.5F : (float)Math.Pow((channel + 0.0993) / 1.0993, 1 / 0.45); + return channel < 0.08145F ? channel / 4.5F : MathF.Pow((channel + 0.0993F) / 1.0993F, 2.222222F); } /// diff --git a/src/ImageSharp/Colors/Spaces/Conversion/Implementation/Rgb/Rec709Companding.cs b/src/ImageSharp/Colors/Spaces/Conversion/Implementation/Rgb/Rec709Companding.cs index 2d19ce9b0..49171bb0e 100644 --- a/src/ImageSharp/Colors/Spaces/Conversion/Implementation/Rgb/Rec709Companding.cs +++ b/src/ImageSharp/Colors/Spaces/Conversion/Implementation/Rgb/Rec709Companding.cs @@ -5,7 +5,6 @@ namespace ImageSharp.Colors.Spaces.Conversion.Implementation.Rgb { - using System; using System.Runtime.CompilerServices; /// @@ -20,7 +19,7 @@ namespace ImageSharp.Colors.Spaces.Conversion.Implementation.Rgb [MethodImpl(MethodImplOptions.AggressiveInlining)] public float Expand(float channel) { - return channel < 0.081F ? channel / 4.5F : (float)Math.Pow((channel + 0.099) / 1.099, 1 / 0.45); + return channel < 0.081F ? channel / 4.5F : MathF.Pow((channel + 0.099F) / 1.099F, 2.222222F); } /// diff --git a/src/ImageSharp/Colors/Spaces/Conversion/Implementation/Rgb/SRgbCompanding.cs b/src/ImageSharp/Colors/Spaces/Conversion/Implementation/Rgb/SRgbCompanding.cs index da30d19fa..4457dbdc0 100644 --- a/src/ImageSharp/Colors/Spaces/Conversion/Implementation/Rgb/SRgbCompanding.cs +++ b/src/ImageSharp/Colors/Spaces/Conversion/Implementation/Rgb/SRgbCompanding.cs @@ -5,7 +5,6 @@ namespace ImageSharp.Colors.Spaces.Conversion.Implementation.Rgb { - using System; using System.Runtime.CompilerServices; /// @@ -22,14 +21,14 @@ namespace ImageSharp.Colors.Spaces.Conversion.Implementation.Rgb [MethodImpl(MethodImplOptions.AggressiveInlining)] public float Expand(float channel) { - return channel <= 0.04045F ? channel / 12.92F : (float)Math.Pow((channel + 0.055) / 1.055, 2.4); + return channel <= 0.04045F ? channel / 12.92F : MathF.Pow((channel + 0.055F) / 1.055F, 2.4F); } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] public float Compress(float channel) { - return channel <= 0.0031308F ? 12.92F * channel : (1.055F * (float)Math.Pow(channel, 0.416666666666667D)) - 0.055F; + return channel <= 0.0031308F ? 12.92F * channel : (1.055F * MathF.Pow(channel, 0.416666666666667F)) - 0.055F; } } } \ No newline at end of file