Я пытаюсь применить RotateTransform
к Rect
объекту со следующим кодом.
Rect transformed = this.Rectangle;
transformed.Transform(this.rotateTransform.Value);
DrawingVisual visual = new DrawingVisual();
DrawingContext context = visual.RenderOpen();
context.DrawRectangle(null, new Pen(Brushes.Blue, 2), transformed);
context.Close();
canvas.Children.Add(visual);
, но прямоугольник не поворачивается.Однако, когда я нажимаю преобразование на DrawingContext
, как в следующем коде, прямоугольник преобразовывается правильно.
Rect transformed = this.Rectangle;
DrawingVisual visual = new DrawingVisual();
DrawingContext context = visual.RenderOpen();
context.PushTransform(this.rotateTransform);
context.DrawRectangle(null, new Pen(Brushes.Blue, 2), transformed);
context.Pop();
context.Close();
canvas.Children.Add(visual);
Есть ли способ преобразовать Rect, как в первом фрагменте кода с Rect.Transform(Matrix)
функционировать?