public void Arrange(System.Windows.Rect finalRect) { inter.Arrange(finalRect); }
public static void DrawLine(this IPixelCanvas pc, int x1, int y1, int x2, int y2, System.Windows.Media.Color color, double width) { var l = new Shapes.Line(); l.X1 = x1; l.Y1 = y1; l.X2 = x2; l.Y2 = y2; l.Stroke = new SolidColorBrush(color); l.StrokeThickness = width; l.Arrange(pc.Bounds.ToRect()); var sw = Stopwatch.StartNew(); var bitmap_source = l.RenderToBitmap(pc.Bounds.ToSize(), new Point(x1, y1)); var pixels = new int[pc.Length]; bitmap_source.CopyPixels(pixels, pc.Stride, 0); var pc2 = new PixelArrayCanvas(pc.Width, pc.Height); pc2.ReplaceFromPixels(pixels, pc.Width, pc.Height); pc.Blit(pc2, BlendMode.Alpha); }