Я использую AndEngine и создаю класс, который управляет кучей спрайтов.
Класс должен выполнять некоторые действия, когда пользователь прикасается к нему, поэтому я заставил его реализовать интерфейс ITouchArea.
Я определил, что метод содержит:
@Override
public boolean contains(float pX, float pY) {
if( pX >= this.mXCenterPosition - X_DIMENSION/2 &&
pX <= this.mXCenterPosition + X_DIMENSION/2 &&
pY >= this.mYCenterPosition - Y_DIMENSION/2 &&
pY <= this.mYCenterPosition + Y_DIMENSION/2)
return true;
return false;
}
и этот метод:
@Override
public boolean onAreaTouched(TouchEvent pSceneTouchEvent,
float pTouchAreaLocalX, float pTouchAreaLocalY)
Что я до сих пор скучаю по этому:
public float[] convertSceneToLocalCoordinates(float pX, float pY)
Без определения или возврата значения null программа вылетает. Я пытался посмотреть, как это реализовано в других классах, но я не совсем понял, что он делает, и я не знаю, какова его функция, поэтому я не знаю, как это реализовать. Область класса представляет собой простой прямоугольник.
Что должен делать этот метод? Как бы я это реализовал?