Обнаружение цвета в BitMap на ощупь - PullRequest
0 голосов
/ 05 июня 2018

Можно ли определить цвет touch с помощью Bitmap на «Android»?

Экран будет выглядеть следующим образом:

enter image description here

black arrow - это объект Bitmap, который пользователь может перемещать вверх и вниз.Он должен определять, когда черная стрелка касается синей линии, и добавлять точки для каждого second, к которому она прикоснулась.

Возможно, стоит отметить, что стрелку можно перемещать только вверх и вниз, а синие линии - это то, что движется справа налево.

Есть странный фон, и фон может содержать синийпоскольку это будет экран предварительного просмотра камеры, а Canvas, в котором перемещаются стрелка и синяя линия, будет прозрачным.Будет ли это проблемой, или, может быть, есть лучший способ обнаружить столкновение?

Самая важная часть, которая мне здесь нужна, это обнаружение «столкновения» или погодных условий, когда растровая карта и линия касаются или нет, но втораячасть вопроса была бы в том, есть ли способ добавить анимацию или что-то, что показывало бы пользователю, что линии касаются, возможно, чеканка стрелки для золотой или что-то в этом роде.

Линия сделана сGraphView, и поэтому я не могу воспринимать это как «объект».Подробнее о graphview - http://www.android -graphview.org /

Если есть необходимость в исходном коде, я могу это предоставить, но я бы не стал делиться им сразу.

РЕДАКТИРОВАТЬ Я пытался использовать пиксели и определять цвет таким образом, но я не получил его на работу.

1 Ответ

0 голосов
/ 05 июня 2018

Для данного пикселя х и у:

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);

Ссылка здесь .

...