在WPF中转换一个PathGeometry
本文关键字:一个 PathGeometry WPF 转换 | 更新日期: 2023-09-27 18:16:30
是否有一种简单的方法在WPF (c#)中翻译PathGeometry ?
有一个PathGeometry (System.Windows.Media)和一个Vector (System.Windows.Vector),我想翻译整个几何体,而不需要分析每个单独的图形及其段和相应的点。代码非常直接,但我正在寻找一种使用WPF (c#)已经提供的标准功能的方法。什么好主意吗?
设置几何体的Transform
属性为适当的TranslateTransform
,例如
Geometry geometry = ...
Vector translation = ...
geometry.Transform = new TranslateTransform(translation.X, translation.Y);
在多看了一会儿之后,我找到了自己问题的解决方案:
public PathGeometry TranslatePathGeometry(PathGeometry originalGeometry, Vector translationVector)
{
originalGeometry.Transform = new TranslateTransform(translationVector.X, translationVector.Y);
return PathGeometry.CreateFromGeometry(originalGeometry);
}
我找到了使用几何的其他选项。组合方法,但我认为这个解决方案更优雅。
正如Clemens所解释的那样,甚至不需要创建一个新的GeometryPath,你可以只应用TranslateTransform,它将完美地工作。