3
次のコードを使用してRect
オブジェクトにRotateTransform
を適用しようとしています。WPF Rect Transform
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.Transform(Matrix)
機能で最初のコードの断片でとしてのRectを変換する方法はありますか?
はい最初のケースは、2番目のケースで回転した長方形のバウンディングボックスを描画します。だから、最初のケースではRectを回転させるのは不可能だと思います。 –