Цитата(sutra @ 14.2.2022, 16:52)

Наверное Вам есть смысл сначала найти картинку символа слэш, а уж потом плясать от его найденных координат.
Вы не поверите, именно так и делаю (IMG:
style_emoticons/default/smile.gif). Но пляшу от него по Х в разные стороны, фиксировать же Y по слэшу не рискую - тоже может гульнуть +-пару пикселей.
Ну и для всех, подобно мне, пришедших к необходимости использования модуля финда, подаренного нам
sutra, попробую пояснить особенность применения смещений. Надеюсь кому-то поможет обойти исхоженные мной грабли (IMG:
style_emoticons/default/wink.gif)
Искомый экран:
(IMG:https://i.ibb.co/vhqLwtD/scr.png) (два одинаковых прямоугольника, сдвинутых по высоте на пиксель)
Шаблон:
(IMG:https://i.ibb.co/VBQyQZg/tpl.png) (вырезанный с искомого экрана прямоугольник)
Найти оба прямоугольника с shiY, отличным от нуля, при таком шаблоне невозможно с любыми разумными допусками. Поэтому применяем смещения с крайней осмотрительностью.
Код для экспериментов:
Код
--lua
require[[luaPlugins\cif]] -- путь до модуля
path = [[A:\pilot\tests\]] -- путь до картинок
LoadImage (path..[[scr.bmp]]) -- тестовая картинка для поиска
local x1, y1, x2, y2 = 0, 0, CIP[1][0]-1, CIP[1][1]-1 -- область поиска
local tpl = CreateFindArray ({ {nf=path .. "tpl.bmp"}, {r=0, acc=85, dev=15} })
local k,arr = FindImage( x1, y1, x2, y2, tpl, {nP=-1, shiX=1, shiY=1} )
if k > 0 then
log("найдено "..k.." совпадений")
else
log("совпадений не найдено")
end
end_script()