Canvas Zoom идет в точку (0,0)

У меня проблема с масштабированием холста. Я сделал настраиваемый вид, в котором я рисую диаграммы отношений, теперь, когда я уменьшаю холст, переходит в положение (0,0). Я видел разные темы и вопросы, но не смог найти подходящий ответ.

То, что я делаю в методе onDraw это.

  canvas.scale(mScaleFactor, mScaleFactor);

Я также видел метод canvas.scale (x, y, px, py), но я не знаю, как получить точки поворота x и y.

public boolean onScale(ScaleGestureDetector detector) {

mScaleFactor *= detector.getScaleFactor();
// Don't let the object get too small or too large.
mScaleFactor = Math.max(0.4f, Math.min(mScaleFactor, 5.0f));
if(mScaleFactor>=1)
   mScaleFactor=1f; 

invalidate();
return true;

}

Ответы на вопрос(2)

Ваш ответ на вопрос