Author Topic: Как работает IF_PIXEL_IN, IF_PICTURE_IN, SCANPICTURE, SCANPXL?  (Read 7029 times)

0 Members and 1 Guest are viewing this topic.

Vint

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3935
  • Лечу куда хочу. cman 4.13.014x32, 4.14.003 W10
    • View Profile
Re: Как работает IF_PIXEL_IN, IF_PICTURE_IN, SCANPICTURE, SCANPXL?
« Reply #15 on: February 10, 2015, 11:36:17 PM »
С образцами давно всё понятно. Размер - небольшой. Стараться чтоб не попадали шрифты, сглаженные края и фон. Для ускорения не увлекаться процентом совпадения и стараться чтобы начальные пикселы образца были поуникальней.
Например черный градиентный шарик на белом экране. Вырезать следует часть шарика, чтобы вверху- слева и вверх не было пикселов фона. Лучше правую нижнюю четверть для понятности.

Очень хороши в некоторых случаях тонкие длинные полоски толщиной в 1-3 пиксела. Особенно на текстах. Вместо всей строки по высоте. И начало должно начинаться с цвета текста.
« Last Edit: February 10, 2015, 11:41:00 PM by Vint »


l00k

  • Зашел в гости
  • *
  • Posts: 1
    • View Profile
Re: Как работает IF_PIXEL_IN, IF_PICTURE_IN, SCANPICTURE, SCANPXL?
« Reply #16 on: February 27, 2015, 10:05:04 PM »
а может, к примеру, IF_PIXEL_IN искать в обратном направлении?

Oraven

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3685
  • Котэ
    • View Profile
Re: Как работает IF_PIXEL_IN, IF_PICTURE_IN, SCANPICTURE, SCANPXL?
« Reply #17 on: February 28, 2015, 07:46:54 AM »
а может, к примеру, IF_PIXEL_IN искать в обратном направлении?

Нет. Но можно воспользоваться scanpxl, она соберет все найденные координаты в массив а нам нужно только кликнуть по последней координате.

Code: (clickermann) [Select]
getscreen
// поиск всех красных (255) пикселей в области 0,0 - 1250,959
scanpxl($var, 0,0, 1250,959, 255)

// вывод массива, содержащего результаты поиска
$size = arrsize($var)
while ($size > 0)
   $y = arrpop($var)
   $x = arrpop($var)
   LCLICK($x,$y) // кликаем по последней координате
   WAITMS(50)
   $size = 0 // и прерываем цикл
end_cyc
« Last Edit: February 28, 2015, 10:44:22 AM by Oraven »