После применения матрицы масштабирования к моей сцене рисуемых объектов, фактическое положение в сцене курсора мыши неверно.
По моему мнению, проблема вызвана местоположением, которое я получил от события контроля (mousedown, up и move), которое не соответствует геометрии моей сцены.
var matrix = this.Control.Scene.Matrix.Inverse();
this.CoordsLabel.Text = matrix.MultiplyPoint(e.Location).ToString()
Когда моя сцена сильно увеличена, «matrix.MultiplyPoint (e.Location)» возвращает то же значение для короткого движения мыши. Другая операция, как перевод, вращение работает отлично.
Пример изображения:
Здесь курсор находится рядом с нарисованным серым крестом
Здесь, это очень масштабная ситуация, курсор не находится над серой перекрестной линией, и при небольшом движении мыши серая линия не изменяется, как если бы умножение с матрицей сцены давало мне то же самое значение координаты. (Matrix.MultiplyPoint (e.Location))
Пожалуйста, помогите мне с этой проблемой.
Большое спасибо.