2011-12-31 4 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);

Смежные вопросы