|
|
|
@ -32,13 +32,13 @@ namespace ImageSharp.Processing.Processors |
|
|
|
|
|
|
|
this.Angle = angle; |
|
|
|
|
|
|
|
float radians = ImageMaths.DegreesToRadians(angle); |
|
|
|
double cosradians = Math.Cos(radians); |
|
|
|
double sinradians = Math.Sin(radians); |
|
|
|
float radians = MathF.DegreeToRadian(angle); |
|
|
|
float cosradians = MathF.Cos(radians); |
|
|
|
float sinradians = MathF.Sin(radians); |
|
|
|
|
|
|
|
float lumR = .213f; |
|
|
|
float lumG = .715f; |
|
|
|
float lumB = .072f; |
|
|
|
float lumR = .213F; |
|
|
|
float lumG = .715F; |
|
|
|
float lumB = .072F; |
|
|
|
|
|
|
|
float oneMinusLumR = 1 - lumR; |
|
|
|
float oneMinusLumG = 1 - lumG; |
|
|
|
@ -49,15 +49,15 @@ namespace ImageSharp.Processing.Processors |
|
|
|
// Number are taken from https://msdn.microsoft.com/en-us/library/jj192162(v=vs.85).aspx
|
|
|
|
Matrix4x4 matrix4X4 = new Matrix4x4() |
|
|
|
{ |
|
|
|
M11 = (float)(lumR + (cosradians * oneMinusLumR) - (sinradians * lumR)), |
|
|
|
M12 = (float)(lumR - (cosradians * lumR) - (sinradians * 0.143)), |
|
|
|
M13 = (float)(lumR - (cosradians * lumR) - (sinradians * oneMinusLumR)), |
|
|
|
M21 = (float)(lumG - (cosradians * lumG) - (sinradians * lumG)), |
|
|
|
M22 = (float)(lumG + (cosradians * oneMinusLumG) + (sinradians * 0.140)), |
|
|
|
M23 = (float)(lumG - (cosradians * lumG) + (sinradians * lumG)), |
|
|
|
M31 = (float)(lumB - (cosradians * lumB) + (sinradians * oneMinusLumB)), |
|
|
|
M32 = (float)(lumB - (cosradians * lumB) - (sinradians * 0.283)), |
|
|
|
M33 = (float)(lumB + (cosradians * oneMinusLumB) + (sinradians * lumB)), |
|
|
|
M11 = lumR + (cosradians * oneMinusLumR) - (sinradians * lumR), |
|
|
|
M12 = lumR - (cosradians * lumR) - (sinradians * 0.143F), |
|
|
|
M13 = lumR - (cosradians * lumR) - (sinradians * oneMinusLumR), |
|
|
|
M21 = lumG - (cosradians * lumG) - (sinradians * lumG), |
|
|
|
M22 = lumG + (cosradians * oneMinusLumG) + (sinradians * 0.140F), |
|
|
|
M23 = lumG - (cosradians * lumG) + (sinradians * lumG), |
|
|
|
M31 = lumB - (cosradians * lumB) + (sinradians * oneMinusLumB), |
|
|
|
M32 = lumB - (cosradians * lumB) - (sinradians * 0.283F), |
|
|
|
M33 = lumB + (cosradians * oneMinusLumB) + (sinradians * lumB), |
|
|
|
M44 = 1 |
|
|
|
}; |
|
|
|
|
|
|
|
|