WinForms中的Drawing2D.Matrix
有这个构造函数:
public Matrix(
Rectangle rect,
Point[] plgpts
)
...创建了一个矩阵,其中包含正确的数据,用于描述从给定矩形到给定点描述的区域的转换。
如何在WPF中以相同的方式生成Matrix? Windows.Media.Matrix
没有相同的构造函数。
修改:
更具体地说,我想知道如何从WPF中的两个区域/矩形获取相同的转换数据。旧的Matrix在它的构造函数中有这个功能,但我找不到在WPF中执行此操作的方法。
答案 0 :(得分:2)
正如评论中已经提到的,WPF Matrix不提供具有此类功能的构造函数或工厂方法。
然而,您可以从Drawing2D.Matrix的Elements
属性创建一个WPF矩阵,如下所示。您需要在WPF项目中添加对System.Drawing
程序集的引用。
var drawing2dMatrix = new System.Drawing.Drawing2D.Matrix(rect, points);
var wpfMatrix = new System.Windows.Media.Matrix(
drawing2dMatrix.Elements[0],
drawing2dMatrix.Elements[1],
drawing2dMatrix.Elements[2],
drawing2dMatrix.Elements[3],
drawing2dMatrix.Elements[4],
drawing2dMatrix.Elements[5]);