From 4f671b606beb362251f3a32f699e8791d517367d Mon Sep 17 00:00:00 2001 From: "oliver.holliday@lontra.co.uk" Date: Sun, 27 Sep 2020 09:36:41 +0100 Subject: [PATCH] Fix stop-offsets being relative to the wrong point after reversal. Copy arrays manually instead of using Linq to resolve PR comment. --- src/Skia/Avalonia.Skia/DrawingContextImpl.cs | 43 +++++++++++++++--- .../Media/RadialGradientBrushTests.cs | 22 +++++++-- ...h_RedGreenBlue_Offset_Outside.expected.png | Bin 15227 -> 12528 bytes ...h_RedGreenBlue_Offset_Outside.expected.png | Bin 15227 -> 12528 bytes 4 files changed, 56 insertions(+), 9 deletions(-) diff --git a/src/Skia/Avalonia.Skia/DrawingContextImpl.cs b/src/Skia/Avalonia.Skia/DrawingContextImpl.cs index b794c5e00a..65989610b8 100644 --- a/src/Skia/Avalonia.Skia/DrawingContextImpl.cs +++ b/src/Skia/Avalonia.Skia/DrawingContextImpl.cs @@ -585,12 +585,43 @@ namespace Avalonia.Skia var origin = radialGradient.GradientOrigin.ToPixels(targetSize).ToSKPoint(); - // would be nice to cache these shaders possibly? - using (var shader = SKShader.CreateCompose( - SKShader.CreateColor(stopColors.Last()), - SKShader.CreateTwoPointConicalGradient(center, radius, origin, 0, stopColors.Reverse().ToArray(), stopOffsets, tileMode)) - ) { - paintWrapper.Paint.Shader = shader; + if (origin.Equals(center)) + { + // when the origin is the same as the center the Skia RadialGradient acts the same as D2D + using (var shader = + SKShader.CreateRadialGradient(center, radius, stopColors, stopOffsets, tileMode)) + { + paintWrapper.Paint.Shader = shader; + } + } + else + { + // when the origin is different to the center use a two point ConicalGradient to match the behaviour of D2D + + // reverse the order of the stops to match D2D + var reversedColors = new SKColor[stopColors.Length]; + Array.Copy(stopColors, reversedColors, stopColors.Length); + Array.Reverse(reversedColors); + + // and then reverse the reference point of the stops + var reversedStops = new float[stopOffsets.Length]; + for (var i = 0; i < stopOffsets.Length; i++) + { + reversedStops[i] = stopOffsets[i]; + if (reversedStops[i] > 0 && reversedStops[i] < 1) + { + reversedStops[i] = Math.Abs(1 - stopOffsets[i]); + } + } + + // compose with a background colour of the final stop to match D2D's behaviour of filling with the final color + using (var shader = SKShader.CreateCompose( + SKShader.CreateColor(reversedColors[0]), + SKShader.CreateTwoPointConicalGradient(center, radius, origin, 0, reversedColors, reversedStops, tileMode) + )) + { + paintWrapper.Paint.Shader = shader; + } } break; diff --git a/tests/Avalonia.RenderTests/Media/RadialGradientBrushTests.cs b/tests/Avalonia.RenderTests/Media/RadialGradientBrushTests.cs index 63d4d9992d..2941b8dc34 100644 --- a/tests/Avalonia.RenderTests/Media/RadialGradientBrushTests.cs +++ b/tests/Avalonia.RenderTests/Media/RadialGradientBrushTests.cs @@ -44,6 +44,9 @@ namespace Avalonia.Direct2D1.RenderTests.Media CompareImages(); } + /// + /// Tests using a GradientOrigin that falls inside of the circle described by Center/Radius. + /// [Fact] public async Task RadialGradientBrush_RedBlue_Offset_Inside() { @@ -70,6 +73,9 @@ namespace Avalonia.Direct2D1.RenderTests.Media CompareImages(); } + /// + /// Tests using a GradientOrigin that falls outside of the circle described by Center/Radius. + /// [Fact] public async Task RadialGradientBrush_RedBlue_Offset_Outside() { @@ -96,6 +102,9 @@ namespace Avalonia.Direct2D1.RenderTests.Media CompareImages(); } + /// + /// Tests using a GradientOrigin that falls inside of the circle described by Center/Radius. + /// [Fact] public async Task RadialGradientBrush_RedGreenBlue_Offset_Inside() { @@ -114,7 +123,9 @@ namespace Avalonia.Direct2D1.RenderTests.Media new GradientStop { Color = Colors.Green, Offset = 0.5 }, new GradientStop { Color = Colors.Blue, Offset = 1 } }, - GradientOrigin = new RelativePoint(0.25, 0.25, RelativeUnit.Relative) + GradientOrigin = new RelativePoint(0.25, 0.25, RelativeUnit.Relative), + Center = new RelativePoint(0.5, 0.5, RelativeUnit.Relative), + Radius = 0.5 } } }; @@ -123,6 +134,9 @@ namespace Avalonia.Direct2D1.RenderTests.Media CompareImages(); } + /// + /// Tests using a GradientOrigin that falls outside of the circle described by Center/Radius. + /// [Fact] public async Task RadialGradientBrush_RedGreenBlue_Offset_Outside() { @@ -138,10 +152,12 @@ namespace Avalonia.Direct2D1.RenderTests.Media GradientStops = { new GradientStop { Color = Colors.Red, Offset = 0 }, - new GradientStop { Color = Colors.Green, Offset = 0.5 }, + new GradientStop { Color = Colors.Green, Offset = 0.25 }, new GradientStop { Color = Colors.Blue, Offset = 1 } }, - GradientOrigin = new RelativePoint(0.1, 0.1, RelativeUnit.Relative) + GradientOrigin = new RelativePoint(0.1, 0.1, RelativeUnit.Relative), + Center = new RelativePoint(0.5, 0.5, RelativeUnit.Relative), + Radius = 0.5 } } }; diff --git a/tests/TestFiles/Direct2D1/Media/RadialGradientBrush/RadialGradientBrush_RedGreenBlue_Offset_Outside.expected.png b/tests/TestFiles/Direct2D1/Media/RadialGradientBrush/RadialGradientBrush_RedGreenBlue_Offset_Outside.expected.png index 91068ca1cfeed8ec85d62d35d8747eea08673478..ea1009b54a6f41f71c850149bf6b1c0d37726eda 100644 GIT binary patch literal 12528 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