Browse Source

Fix code and remove useless null check.

pull/162/head
Amer Koleci 11 years ago
parent
commit
b7ce031554
  1. 2
      src/Perspex.SceneGraph/Media/RadialGradientBrush.cs
  2. 21
      src/Windows/Perspex.Direct2D1/Media/LinearGradientBrushImpl.cs
  3. 27
      src/Windows/Perspex.Direct2D1/Media/RadialGradientBrushImpl.cs

2
src/Perspex.SceneGraph/Media/RadialGradientBrush.cs

@ -52,7 +52,7 @@ namespace Perspex.Media
}
/// <summary>
/// ets or sets the horizontal and vertical radius of the outermost circle of the radial gradient.
/// Gets or sets the horizontal and vertical radius of the outermost circle of the radial gradient.
/// </summary>
public double Radius
{

21
src/Windows/Perspex.Direct2D1/Media/LinearGradientBrushImpl.cs

@ -16,20 +16,17 @@ namespace Perspex.Direct2D1.Media
SharpDX.Direct2D1.RenderTarget target,
Size destinationSize)
{
if (brush != null)
{
var gradientStops = brush.GradientStops.Select(s => new SharpDX.Direct2D1.GradientStop { Color = s.Color.ToDirect2D(), Position = (float)s.Offset }).ToArray();
var gradientStops = brush.GradientStops.Select(s => new SharpDX.Direct2D1.GradientStop { Color = s.Color.ToDirect2D(), Position = (float)s.Offset }).ToArray();
Point startPoint = brush.StartPoint.ToPixels(destinationSize);
Point endPoint = brush.EndPoint.ToPixels(destinationSize);
Point startPoint = brush.StartPoint.ToPixels(destinationSize);
Point endPoint = brush.EndPoint.ToPixels(destinationSize);
PlatformBrush = new SharpDX.Direct2D1.LinearGradientBrush(
target,
new SharpDX.Direct2D1.LinearGradientBrushProperties { StartPoint = startPoint.ToSharpDX(), EndPoint = endPoint.ToSharpDX() },
new SharpDX.Direct2D1.BrushProperties { Opacity = (float)brush.Opacity, Transform = target.Transform },
new SharpDX.Direct2D1.GradientStopCollection(target, gradientStops, brush.SpreadMethod.ToDirect2D())
);
}
PlatformBrush = new SharpDX.Direct2D1.LinearGradientBrush(
target,
new SharpDX.Direct2D1.LinearGradientBrushProperties { StartPoint = startPoint.ToSharpDX(), EndPoint = endPoint.ToSharpDX() },
new SharpDX.Direct2D1.BrushProperties { Opacity = (float)brush.Opacity, Transform = target.Transform },
new SharpDX.Direct2D1.GradientStopCollection(target, gradientStops, brush.SpreadMethod.ToDirect2D())
);
}
}
}

27
src/Windows/Perspex.Direct2D1/Media/RadialGradientBrushImpl.cs

@ -16,23 +16,20 @@ namespace Perspex.Direct2D1.Media
SharpDX.Direct2D1.RenderTarget target,
Size destinationSize)
{
if (brush != null)
{
var gradientStops = brush.GradientStops.Select(s => new SharpDX.Direct2D1.GradientStop { Color = s.Color.ToDirect2D(), Position = (float)s.Offset }).ToArray();
var gradientStops = brush.GradientStops.Select(s => new SharpDX.Direct2D1.GradientStop { Color = s.Color.ToDirect2D(), Position = (float)s.Offset }).ToArray();
Point centerPoint = brush.Center.ToPixels(destinationSize);
Point GradientOriginOffset = brush.GradientOrigin.ToPixels(destinationSize);
// Note: Direct2D supports RadiusX and RadiusY but Cairo backend supports only Radius property
double radiusX = brush.Radius;
double radiusY = brush.Radius;
Point centerPoint = brush.Center.ToPixels(destinationSize);
Point GradientOriginOffset = brush.GradientOrigin.ToPixels(destinationSize);
// Note: Direct2D supports RadiusX and RadiusY but Cairo backend supports only Radius property
double radiusX = brush.Radius;
double radiusY = brush.Radius;
PlatformBrush = new SharpDX.Direct2D1.RadialGradientBrush(
target,
new SharpDX.Direct2D1.RadialGradientBrushProperties { Center = centerPoint.ToSharpDX(), GradientOriginOffset = GradientOriginOffset.ToSharpDX(), RadiusX = (float)radiusX, RadiusY = (float)radiusY },
new SharpDX.Direct2D1.BrushProperties { Opacity = (float)brush.Opacity, Transform = target.Transform },
new SharpDX.Direct2D1.GradientStopCollection(target, gradientStops, brush.SpreadMethod.ToDirect2D())
);
}
PlatformBrush = new SharpDX.Direct2D1.RadialGradientBrush(
target,
new SharpDX.Direct2D1.RadialGradientBrushProperties { Center = centerPoint.ToSharpDX(), GradientOriginOffset = GradientOriginOffset.ToSharpDX(), RadiusX = (float)radiusX, RadiusY = (float)radiusY },
new SharpDX.Direct2D1.BrushProperties { Opacity = (float)brush.Opacity, Transform = target.Transform },
new SharpDX.Direct2D1.GradientStopCollection(target, gradientStops, brush.SpreadMethod.ToDirect2D())
);
}
}
}

Loading…
Cancel
Save