2011-12-31 144 views
0

我在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)。

我想我应该做一些矩阵,但我不知道究竟是什么。

回答

2

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