Событие происходит после обнаружения цвета - PullRequest
0 голосов
/ 30 марта 2012

Я хочу знать, что событие щелчка мыши может обнаружить цвета или даже строки.

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

Возможно ли это в графике Java?

Ответы [ 2 ]

1 голос
/ 30 марта 2012

Вы можете сделать это как;

  • Получить экранные координаты события нажатия
  • Получить цвет экрана по заданным координатам
  • Затем выполните ваширабота в соответствии с цветом

псевдокод:

public void mousePressed(MouseEvent e)
{ 
   Robot robot = new Robot();
   Color clickedColor = robot.getPixelColor(e.getX(),e.getY());
   doSomething(clickedColor);
}

Обнаружение строк на изображении - совершенно другой предмет.Вы должны искать в «распознавание символов / текста» в области компьютерного зрения.Есть готовые библиотеки, делающие это.

0 голосов
/ 30 марта 2012

Взгляните на Robot.getPixelColor (x, y) :

public Color getPixelColor (int x, int y)

Возвращает цветпикселя при заданных координатах экрана.

Параметры: x - X-позиция пикселя

y - Y-позиция пикселя

Возвращает: Цвет пикселя

...