Есть ли способы реализации плавного масштабирования для увеличения без использования матрицы?Любые способы сделать щепотку для увеличения гладкости
Я создаю приложение для рисования, и я хочу, чтобы он имел щепотку для увеличения.
я получаю точку опоры для масштабирования с:
centerposX = mScaleDetector.getFocusX();
centerposY = mScaleDetector.getFocusY();
и для масштабирования, то я использую:
canvas.scale(scaleFactor, scaleFactor, centerposX, centerposY);
Но проблема в том, что он сразу же центры зрения в точке поворота и их масштабирование его , а не использовать его в качестве ориентира для центрирования.
Я видел, что эта проблема была решена с использованием матрицы, но я не хочу использовать их, поскольку мне нужно отслеживать смещения, ZoomTranslations, которые вычисляются из centerposX/Y и scaleFactor, чтобы нарисовать рисунки, где они принадлежат экрану.
Итак, есть ли способ решить эту проблему с точкой поворота плавно?
Спасибо!
Как Canvas.scale center a View? и что случилось с Матрицей, я не понял ваши объяснения ... – pskink
Я имел в виду, что при касании мой видовой экран мгновенно переходит в точку касания. и я хочу реализовать браузер, как прижим для увеличения. И я не хочу использовать матрицы, потому что рисование на масштабированном экране требует отслеживания множества переменных, и я не уверен, как я буду обращаться с ними с матрицами. В любом случае, если нет никаких решений для решения этого «прыгающего» поведения, я перепишу свой код. – user3482211
Итак, я попытался сделать все с помощью матрицы. Масштабирование работает как шарм. Но есть одна проблема, рисунки пальцев снова становятся неуместными, когда они нарисованы, и они не масштабируются должным образом. – user3482211