私は形状(下の赤いパス)を持っており、このパスにはTranslateTransformとScaleTransformの変換を適用する必要があります。私はこのようにShapeRenderTransformプロパティを使用している場合でも、私はこの方法でDrawingContextPushTransformメソッドを使用している場合、代わりにRenderTransformとPushTransform
:
Path MyPath = new Path { Fill = new SolidColorBrush(Colors.Red) };
MyPath.Data = MyPathGeometry;
TransformGroup transf = new TransformGroup();
transf.Children.Add(new TranslateTransform(50, 50));
transf.Children.Add(new ScaleTransform(2, 2));
MyPath.RenderTransform = transf;
私はこのタイプの描画を取得
DrawingVisual MyPath = new DrawingVisual();
using (DrawingContext context = MyPath.RenderOpen()) {
context.PushTransform(new TranslateTransform(50, 50));
context.PushTransform(new ScaleTransform(2, 2));
context.DrawGeometry(Brushes.Red, null, MyPathGeometry);
}
私はこのタイプの図面を入手します:
なぜ2つのパスが異なる方法で配置されるのですか? PushTransformとRenderTransformの違いは何ですか?どちらの場合でも同じ結果を得る方法はありますか?おかげさまで
私は考えたとおりです。 – gliderkite