Я пытаюсь выполнить тест на удар по повернутому объекту изображения, нарисованному на холсте при виде поверхности.Когда изображение не вращается, мы можем напрямую использовать left, top, width и height в качестве границ, чтобы проверить, находится ли точка внутри прямоугольника изображения.Но как это сделать, когда объект повернут на некоторый угол?
Я использую: canvas.rotate(angle, pivotX ,pivotY);
, чтобы нарисовать повернутое изображение.
Я не смог повернуть повернутые влево и вверхобъект изображения.Я попытался взять оригинал слева и сверху от изображения, и когда я нажимаю на экран, я поворачиваю точку касания назад на тот же угол, используя:
angledTouchX = (float) (eventX * Math.cos(-objectAngle) - eventY * Math.sin(-objectAngle));
angledTouchY = (float) (eventY * Math.sin(-objectAngle) + eventX * Math.cos(-objectAngle));
Это не работает, потому что вращает точку относительно (0, 0), но я хочу, чтобы это было в центре объекта изображения.