У меня ImageView
из Лицо .Я использовал Google Vision Library
, чтобы найти Eyes Landmark (cx,cy)
.Теперь я хочу Scale
ImageView
, чтобы Глаза были в фокусе, а Translate
- соответственно.
Какой самый простой способ сделать это, чем использовать zoom_animation.xml
Я пробовал это, но не получил должного результата
Matrix m = imageView.getImageMatrix();
float[] values = new float[9];
m.getValues(values);
float xxx = values[Matrix.MTRANS_X];
float yyy = values[Matrix.MTRANS_Y];
float www = values[Matrix.MSCALE_X] * imageView.getWidth();
float hhh = values[Matrix.MSCALE_Y] * imageView.getHeight();
//cx and cy are eye positions
imageView.setScale(1.5f, cx - www / 2, cy - yyy / 2, false);
Я прочитал документацию и обнаружил, что setScale()
принимает следующие параметры:
setScale(float scale, float focalX, float focalY, boolean animate)
Мне интересно, как мне реализовать focalX and focalY
или тамлюбым способом, чтобы я мог конвертировать cx, cy
в focalX, focalY
??
Заранее спасибо