From 35f3c365ddee658e52d47ae58bccac2cad7a5b97 Mon Sep 17 00:00:00 2001 From: dirk Date: Sat, 13 Aug 2016 17:24:50 +0200 Subject: [PATCH] Added optimization for when the Rotation angle is zero. Former-commit-id: ea93704484817a6dc43ff0e5e59a39a766009af2 Former-commit-id: 7e09d9d3526174334c037f00b0ec58d14d0f6859 Former-commit-id: 32e32a345814b029083c2627278bdb475ac3c3ca --- .../Samplers/Processors/RotateProcessor.cs | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/ImageProcessorCore/Samplers/Processors/RotateProcessor.cs b/src/ImageProcessorCore/Samplers/Processors/RotateProcessor.cs index e4568fd2d1..321a81be4b 100644 --- a/src/ImageProcessorCore/Samplers/Processors/RotateProcessor.cs +++ b/src/ImageProcessorCore/Samplers/Processors/RotateProcessor.cs @@ -34,7 +34,7 @@ namespace ImageProcessorCore.Processors /// protected override void OnApply(ImageBase target, ImageBase source, Rectangle targetRectangle, Rectangle sourceRectangle) { - if (Angle == 90 || Angle == 180 || Angle == 270) + if (Angle == 0 || Angle == 90 || Angle == 180 || Angle == 270) { return; } @@ -89,6 +89,12 @@ namespace ImageProcessorCore.Processors /// private bool OptimizedApply(ImageBase target, ImageBase source) { + if (Angle == 0) + { + target.ClonePixels(target.Width, target.Height, source.Pixels); + return true; + } + if (Angle == 90) { this.Rotate90(target, source);