public UGLinearGradientBrush(IUGContext context, Vector2 startPoint, Vector2 endPoint, IEnumerable <UGGradientStop> gradientStops, UGEdgeBehavior edgeBehavior) { var count = gradientStops.Count(); if (count < 2) { throw new ArgumentException(nameof(gradientStops)); } var device = ((UGContext)context).Device; var winrtStops = gradientStops.ToWinRTGradientStops(); var native = new CanvasLinearGradientBrush(device, winrtStops, edgeBehavior.ToWinRTEdgeBehavior(), CanvasAlphaMode.Premultiplied); native.StartPoint = startPoint; native.EndPoint = endPoint; _native = native; }
public UGRadialGradientBrush(IUGContext context, Vector2 center, float radius, IEnumerable <UGGradientStop> gradientStops, UGEdgeBehavior edgeBehavior) { var count = gradientStops.Count(); if (count < 2) { throw new ArgumentException(nameof(gradientStops)); } var device = ((UGContext)context).Device; var winrtStops = gradientStops.ToWinRTGradientStops(); var native = new CanvasRadialGradientBrush(device, winrtStops, edgeBehavior.ToWinRTEdgeBehavior(), CanvasAlphaMode.Premultiplied); native.Center = center; native.RadiusX = radius; native.RadiusY = radius; _native = native; }