WPF TranslateTransform - ScaleTransforming
В следующем фрагменте кода представлен объект класса Part, который унаследован от класса ScatterViewItem (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);
линия показывает правильную шкалу, но когда я раскомментирую ее, хотя я ничего не меняю, она масштабирует пути:
Я хочу знать, как это исправить.
1 ответ
Решение
@Clemens был прав насчет начальных значений преобразования: было матричное преобразование с автоматически рассчитанными значениями по WPF. Когда я назначил новые значения преобразования, он полностью удалил старые значения. Я просто выбрал эту матрицу и обновил некоторые значения, и она работала нормально