Обнаружение цвета в BitMap на ощупь
Можно ли обнаружить по цвету touch
с Bitmap
на Android?
Экран будет выглядеть так:
black arrow
это Bitmap
объект, который пользователь может перемещать вверх и вниз. Он должен определять, когда черная стрелка касается синей линии, и добавлять точки для каждого second
что это коснулось линии.
Возможно, стоит отметить, что стрелку можно перемещать только вверх и вниз, а синие линии - это то, что движется справа налево.
Есть странный фон, и фон может содержать синий, так как это будет экран предварительного просмотра камеры и Canvas
стрелка и синяя линия будут прозрачными. Будет ли это проблемой или есть лучший способ обнаружить столкновение?
Самая важная часть, которая мне здесь нужна, это обнаружить "столкновение" или погоду, растровое изображение и линия касаются или нет, но вторая часть вопроса была бы, есть ли способ добавить анимацию или что-то, что показывало бы пользователю что линии соприкасаются, может быть, погоня за стрелой за золотом или что-то в этом роде.
Строка сделана с помощью GraphView, и поэтому я не могу воспринимать это как "объект". Подробнее о graphview - http://www.android-graphview.org/
Если есть необходимость в исходном коде, я могу это предоставить, но я бы предпочел не делиться им сразу.
РЕДАКТИРОВАТЬ Я пытался использовать пиксели и определять цвет таким образом, но я не получил его на работу.
1 ответ
Для данного пикселя х и у:
ImageView imageView = (ImageView)v;
Bitmap bitmap = ((BitmapDrawable)imageView.getDrawable()).getBitmap();
int pixel = bitmap.getPixel(x,y);
int redValue = Color.red(pixel);
int blueValue = Color.blue(pixel);
int greenValue = Color.green(pixel);
Ссылка здесь.