如何从鼠标位置获取转换的坐标

本文关键字:转换 坐标 获取 位置 鼠标 | 更新日期: 2023-09-27 18:19:06

我在WPF中有一个表单。它包含可以移动和缩放的图像。以下是负责移动和缩放的代码:

        MatrixTransform finalTransform = null;
        Matrix translateMatrix = new Matrix();
        translateMatrix.Translate(TranslationOffset.X, TranslationOffset.Y);
        Matrix scaleMatrix = new Matrix();
        scaleMatrix.ScaleAt(Scale, Scale, image1.Width / 2, image1.Height / 2 );
        finalMatrix = scaleMatrix * translateMatrix;
        finalTransform = new MatrixTransform(finalMatrix);
        image1.RenderTransform = finalTransform;

现在,我在图像上单击LMB,我想从鼠标位置获取图像坐标。

我的意思是,如果我单击图像的左上角,我将得到(0,0((无论图像位置和比例如何(,当单击右下角时,我将得到例如640x480(图像尺寸为640x480(。

我想,我会对矩阵做点什么,但我不知道具体是什么。

如何从鼠标位置获取转换的坐标

它认为很简单: Point relativeToPicture = e.getPosition(myPicture);