WPF TranslateTransform 是 ScaleTransforming
WPF TranslateTransform is ScaleTransforming
下面的代码部分是第class部分的对象,它继承自ScatterViewItem class (Microsoft.Surface.Presentation.Controls)。 part.Content 是路径几何:
GeometryGroup gGroup = new GeometryGroup
{
FillRule = FillRule.Nonzero
};
foreach(KeyValuePair<int, Part> kv in Layers)
{
geom = part.ShadowPath.RenderedGeometry.Clone();
geom.Transform = new TranslateTransform(0, 0);
gGroup.Children.Add(geom);
}
当我评论 geom.Transform = new TranslateTransform(0, 0);
行时,它以正确的比例显示,但是当我取消注释时,虽然我没有改变任何东西,但它会缩放路径:
我想知道如何修复它。
@Clemens 关于初始转换值的说法是正确的:有 matrixTransform 具有由 WPF 自动计算的值。当我分配新的转换值时,它完全删除了旧值。我刚刚选择了那个矩阵并更新了一些值,它工作正常。
下面的代码部分是第class部分的对象,它继承自ScatterViewItem class (Microsoft.Surface.Presentation.Controls)。 part.Content 是路径几何:
GeometryGroup gGroup = new GeometryGroup
{
FillRule = FillRule.Nonzero
};
foreach(KeyValuePair<int, Part> kv in Layers)
{
geom = part.ShadowPath.RenderedGeometry.Clone();
geom.Transform = new TranslateTransform(0, 0);
gGroup.Children.Add(geom);
}
当我评论 geom.Transform = new TranslateTransform(0, 0);
行时,它以正确的比例显示,但是当我取消注释时,虽然我没有改变任何东西,但它会缩放路径:
我想知道如何修复它。
@Clemens 关于初始转换值的说法是正确的:有 matrixTransform 具有由 WPF 自动计算的值。当我分配新的转换值时,它完全删除了旧值。我刚刚选择了那个矩阵并更新了一些值,它工作正常。