как увеличить изображение в Android

#android #opengl-es #view #zooming

#Android #opengl-es #Вид #масштабирование

Вопрос:

Я пытаюсь разработать приложение, которое отображает линии траектории движения с использованием OpenGL. Я хочу увеличить или зумировать содержимое. Создал RelativeLayout и добавил к нему GLSurfaceView и ZoomControls. Теперь в ZoomControls.setOnZoomInClickListener мне нужно написать, как увеличить вид. Для представления нет элементов управления масштабированием. Пожалуйста, помогите мне, если есть способ увеличить изображение. Спасибо..

     mGLSView = new GLSurfaceView(this);
    final RelativeLayout rl = new RelativeLayout(this);
    ZoomControls zc = new ZoomControls(this);
    zc.setOnZoomInClickListener(new OnClickListener(){
        @Override
        public void onClick(View v) {

                        //// ??? WHAT TO DO WITH THE VIEW ?

        }
    });
    zc.setVisibility(View.VISIBLE);
    zc.bringToFront();
    rl.addView(mGLSView);
    rl.addView(zc);
    setContentView(rl);
  

Ответ №1:

Насколько я знаю, вы не можете обрабатывать поверхность GL как холст и масштабировать ее. Таким образом, вам придется снова перерисовать масштабированную версию, используя вызовы GL. Альтернативой было бы рисовать в FBO и отображать масштабированную текстуру на поверхности.