Как обнаружить столкновение во время анимации?

1

Я успешно сделал стрелку для перемещения по заранее определенному пути. Теперь я хочу разместить на пути какой-то случайно движущийся объект и хочу обнаружить, что стрелка попадает на объект или нет. Ниже приведен код, который я использую для анимации.

    public void doAnimation(){
        Matrix mxTransform=new Matrix();
        PathMeasure pm=new PathMeasure(path,false);
        float fSegmentLen = (float)((pm.getLength())/50);
        if(iCurStep<=50){
            pm.getMatrix(fSegmentLen * iCurStep, mxTransform,
                    PathMeasure.POSITION_MATRIX_FLAG + PathMeasure.TANGENT_MATRIX_FLAG);
             canvas.drawBitmap(bt, mxTransform, null);
             iCurStep++;
             invalidate();
        }
        else{           
            iCurStep=0;
            animate=0;
            canvas.drawPoint((float)range-10,0f,forPoint);
        }
    }

Переменная iCurStep объявляется глобально, и указанная выше функция будет вызвана внутри метода onDraw(). Я новичок в андроиде. Поэтому мне очень сложно кодировать. Поэтому я прошу вас помочь мне.

Теги:
android-animation

1 ответ

0

Вы можете сделать это так, как получить current position Arrow и moving objects. В любой момент времени проверьте, чтобы x-ординаты стрелки intersects с x-координатами движущегося объекта. Аналогично проверяйте также координаты y,

Надеюсь, что это поможет вам.

  • 0
    Спасибо, но на самом деле я рисую стрелку через растровое изображение с использованием матрицы. У меня нет четкого понимания о Матрице в Android. Поэтому я думаю, что мне сложно определить координаты x и Y растрового изображения. Помогите мне, пожалуйста
  • 0
    Пожалуйста, вставьте ваш полный код

Ещё вопросы

Сообщество Overcoder
Наверх
Меню