Hi at all,

I have one issues with multitouch features offers by the MotionEvent
class, this is my code:

@Override
    public boolean onTouchEvent(MotionEvent event) {

        [....]
        if(event.getPointerCount() == 1){

                switch (event.getAction()) {

                        case MotionEvent.ACTION_DOWN:
                                finger_one_ID = event.getAction() &
MotionEvent.ACTION_POINTER_ID_MASK;
                        finger_one_X = (int) event.getX(finger_one_ID);
                        finger_one_Y = (int) event.getY(finger_one_ID);
                        renderer.stopTimer();
                        break;

                        case MotionEvent.ACTION_UP:
                                finger_one_ID = NONE;
                                
renderer.setFrictionY(OpenGLRenderer.DEFAULT_FRICTION_Y);
                                
renderer.setFrictionX(OpenGLRenderer.DEFAULT_FRICTION_X);
                                renderer.startTimer();
                                break;

                        case  MotionEvent.ACTION_MOVE:

                        deltaX =  finger_one_X - (int) 
event.getX(finger_one_ID);
                        deltaY =  finger_one_Y - (int) 
event.getY(finger_one_ID);


                        deltaX = Math.abs(deltaX);
                        deltaY = Math.abs(deltaY);
                        distance = (float) ((Math.sqrt(Math.pow(deltaX,2) +
Math.pow(deltaY, 2))));
                        renderer.setFrictionY(OpenGLRenderer.NULL_FRICTION);
                        renderer.setFrictionX(OpenGLRenderer.NULL_FRICTION);



                        if(deltaX > 5.0f && deltaX < 80)
                                renderer.setYacc( (deltaX  / 50));

                        else if(deltaY  > 5.0f && deltaY < 80)
                                renderer.setXacc( (deltaY / 50));

                                break;

                        default:
                                break;

                }



                Log.d(TAG, "Single finger_one_Y:"+finger_one_X);
                        Log.d(TAG, "Single finger_one_Y:"+finger_one_Y);


        }


        else if(event.getPointerCount() == 2){
                Log.d(TAG,"Doppio Tocco");
                switch (event.getAction()) {
                        case MotionEvent.ACTION_POINTER_DOWN:
                                finger_two_ID = MotionEvent.ACTION_POINTER_DOWN 
&
MotionEvent.ACTION_POINTER_ID_MASK;
                                finger_two_X = (int) event.getX(finger_two_ID);
                                finger_two_Y = (int) event.getY(finger_two_ID);
                                multitouch_distance = (float) 
Math.sqrt(Math.pow(finger_one_X -
finger_two_X, 2) + Math.pow(finger_one_Y - finger_two_Y, 2));
                                break;

                        case MotionEvent.ACTION_MOVE:
                                finger_one_X = (int) event.getX(finger_one_ID);
                                finger_one_Y = (int) event.getY(finger_one_ID);
                                finger_two_X = (int) event.getX(finger_two_ID);
                                finger_two_Y = (int) event.getY(finger_two_ID);
                                multitouch_distance_updated = (float)
Math.sqrt(Math.pow(finger_one_X - finger_two_X, 2) +
Math.pow(finger_one_Y - finger_two_Y, 2));
        
Log.d(TAG,"multitouch_distance_updated:"+String.valueOf(multitouch_distance_updated));


                        default:
                                break;
                        }

                Log.d(TAG, "Double finger_one_Y:"+finger_one_X);
                        Log.d(TAG, "Doppio finger_one_Y:"+finger_one_Y);
                        Log.d(TAG, "Doppio finger_two_Y:"+finger_two_X);
                        Log.d(TAG, "Doppio finger_two_Y:"+finger_two_Y);


        }

    }

The problem is that in multitouch branch of my code the X,Y of first
and second finger are the same, therefore the multitouch distance is
even zero!!
I am tried to develop an two fingers zoom...

Any suggestion will be appreciated.

pedr0

-- 
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to android-developers@googlegroups.com
To unsubscribe from this group, send email to
android-developers+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en

Reply via email to