Я пытался получить координаты мыши из масштабированного холста. Canvas.scale (scale, scale) дает мне правильные координаты, но если я использую canvas.scale (scale, scale, pivotX, pivotY), координаты неправильные.
//onDraw
canvas.scale(scaleFactor, scaleFactor); //default pivot x & y = 0, 0
//canvas.scale(scaleFactor, scaleFactor, pivotX, pivotY);
private float pixelWidth = 480;
private float pixelHeight = 320;
//onTouchEvent
touchX = (int) event.getX() * pixelWidth / getWidth();
touchX = (int) event.getY() * pixelHeight / getHeight();
worldX = touchX / scaleFactor;
worldY = touchY / scaleFactor;
Что мне нужно сделать получить правильные координаты из canvas.scale с другим шарниром, отличным от значения по умолчанию 0, 0? Я тоже прочитал и попробовал про матрицу, но не повезло.