android openGL简例1

package test.lee.autogl;

import android.content.Context;
import android.opengl.GLSurfaceView;
import android.view.MotionEvent;

public class VortexView extends GLSurfaceView {
    private static final String LOG_TAG = VortexView.class.getSimpleName();
    private VortexRenderer _renderer;
   
    private float _x = 0;
    private float _y = 0;

    public VortexView(Context context) {
        super(context);
        _renderer = new VortexRenderer();
        setRenderer(_renderer);
    }
   
    @Override
    public boolean onTouchEvent(final MotionEvent event) {
    /*
    queueEvent(new Runnable() {
    public void run() {
    _renderer.setColor(event.getX() / getWidth(), event.getY() / getHeight(), 1.0f);
    _renderer.setAngle(event.getX() / 100);
    }
    });*/
    if (event.getAction() == MotionEvent.ACTION_DOWN) {
        _x = event.getX();
        _y = event.getY();
    }
    if (event.getAction() == MotionEvent.ACTION_MOVE) {
        final float xdiff = (_x - event.getX());
        final float ydiff = (_y - event.getY());
        queueEvent(new Runnable() {
            public void run() {
                _renderer.setXAngle(_renderer.getXAngle() + ydiff);
                _renderer.setYAngle(_renderer.getYAngle() + xdiff);
            }
        });
        _x = event.getX();
        _y = event.getY();
    }
    return true;
    }

}

你可能感兴趣的:(android)