|
|
  |
работа findimage |
|
|
| Apo11o |
11.10.2015, 17:46
|

Registred
Сообщений: 2
Регистрация: 10.10.2015 Группа: Пользователи Наличность: 0
Пользователь №: 17.657

|
Здарова, ребят.В общем такое у меня дело: есть картинка на проверку (есть или нет) последующей картинки. К слову их много...
Я пытался реализовывать это через такую схему, где...Код
for #i 1 99 set $box1 findimage (() %arr1 2)
... процесс поиска до, скажем (99).
set $box99 findimage (() %arr99 2) if $box(1-99) > 0 for #i 1 99 set $a $box(#i) // тут я очень сильно хотел просто менять значение в конце "$box" // Примерно вот так ($a $box21), ($a $box9) не вышло. Пробовал с PosEx и // пробовал массивы - ничего. if $a > 0 set #b + %arr(#i) // как видите, тут я тоже хочу выставлять значение к концу "%arr" set #c + %arr(#i) // Получился простой код... kleft #b, #c // может у кого хватило знания одолеть эту напасть. end_if end_for
Но пройдя пять часов, я забил и написал простую схему... Но все же интересно, может есть кто уже столкнулся с такой проблемой?!
Вот простая схема. Код
set #nmbchan 1 set $way // путь к файлу
for #nmb 1 99 set %pic [1] (#nmb) // первая картинка set %pic [2] simple(#nmb) // вторая картинка set $no findimage (1,1 1024,768 ($way%pic[#nmb0].bmp) %arrr 2) if $no > 0 set #nmb0 2 set $ok findimage (1,1 1024,768 ($way%pic[#nmb0].bmp) %arr 2) set #nmb0 1 if $ok > 0 set #c %arr [1 1] set #d %arr [1 2] kleft #c, #d end_if end_if end_for
|
|
|
|
|
|
| Apo11o |
12.10.2015, 15:41
|

Registred
Сообщений: 2
Регистрация: 10.10.2015 Группа: Пользователи Наличность: 0
Пользователь №: 17.657

|
Цитата(cirus @ 11.10.2015, 19:17)  Так что ли?: Код for #i 1 5 set %a [1] #i set $a $box%a [1] set $b %arr%a [1] log $a $b end_for stop_script Тце, я был близко к этому. Ну да ладно... Спасибо тебе, именно так и хотел реализовать. :)
|
|
|
|
|
|
| Ptat |
23.11.2015, 20:27
|

Registred
Сообщений: 5
Регистрация: 13.11.2015 Группа: Пользователи Наличность: 0
Пользователь №: 17.701
Возраст: 36

|
Цитата(veiron @ 23.11.2015, 17:58)  Так написано же, что найдено в координатах X Y. Это значит, что пилот нашел изображение. Когда не найдет, напишет, что не найдено.
Я думал там координаты должны указываться конкретные, а не прост Х У, но точно что то не так. Потому что когда сужаю область до нужного и картинка точно не та, сообщение то же.
|
|
|
|
|
|
| Ptat |
23.11.2015, 22:29
|

Registred
Сообщений: 5
Регистрация: 13.11.2015 Группа: Пользователи Наличность: 0
Пользователь №: 17.701
Возраст: 36

|
Цитата(veiron @ 23.11.2015, 21:52)  У тебя массивы разные. Скопируй код, так найдет.
До этого так и было, это я уже от безнадёги всё подряд вставлял )) Всё равно пустые Х У, даже на заведомо ложный ответ. Может плохо определяет, тут чтоб действия выполнялись сначало приходится на нужное место смешать курсор два раза(второй со смещением на пиксель) и тока потом что то делается, но с другой стороны это же картинка, и в функции While дальше страница откликается на скрипт. Даже на другой страничке находит )) Так что тут что то с картинкой самой походу или её условиями.
|
|
|
|
|
|
| Екатерина |
6.12.2015, 22:02
|

Registred
Сообщений: 5
Регистрация: 6.12.2015 Группа: Пользователи Наличность: 0
Пользователь №: 17.733
Возраст: 26

|
Здравствуйте! После перехода с Win7 на Win10 перестал работать скрипт в перекрытом окне, при этом если установить тип поиска 2 и не перекрывать - совпадение 97-100%. В чём может быть проблема? Код set $mob findimage (0 0 250 620 ($path%mobs[#mob].bmp) %osmob workwindow) set $mob findimage (0 0 250 620 ($path%mobs[#mob].bmp) %osmob #window) Браузер Firefox/Seamonkey, flash - 19.0.0.245 NPAPI (и на Win7 и на Win10). Картинка
где чёрное - окно браузера, где красное - песочница флэша (другой хэндл), привязка идёт к песочнице. пилот 2.36
|
|
|
|
|
|
| Екатерина |
6.12.2015, 22:18
|

Registred
Сообщений: 5
Регистрация: 6.12.2015 Группа: Пользователи Наличность: 0
Пользователь №: 17.733
Возраст: 26

|
Цитата(DarkMaster @ 6.12.2015, 22:09)  до этого на 2.35 работали? На 2.36 мог изменится основной способ забора изображения в данном методе. Попробуйте привязать через ctrl+a, чтобы исключить проблемы с поиском окна. Был ли установлен АСТЕР? После его запуска данный метод не работает. В 2.36 появилась новая кнопочка "F". Нажмите ее и посмотрите, что забирается при работе финдимиджа.
до этого 2.35 был на 7ке, потом 2.36 на 10ке также пробовала и 2.35 и 2.36, результат один АСТЕРа нет перепривязывать прямо во время работы скрипта пробовала выводит верхний левый угол вне зависимости от того, где находится найденное изображение
|
|
|
|
|
|
| Екатерина |
6.12.2015, 22:27
|

Registred
Сообщений: 5
Регистрация: 6.12.2015 Группа: Пользователи Наличность: 0
Пользователь №: 17.733
Возраст: 26

|
Цитата(DarkMaster @ 6.12.2015, 22:22)  Оно выводит область поиска, а не найденное изображение. Возможно в браузере не стало разделения флэша и остального браузера на разные хендлы (как в хроме),
тогда выводит нужное (т.е. песочницу флэша)
|
|
|
|
|
|
| Екатерина |
6.12.2015, 23:42
|

Registred
Сообщений: 5
Регистрация: 6.12.2015 Группа: Пользователи Наличность: 0
Пользователь №: 17.733
Возраст: 26

|
Цитата(DarkMaster @ 6.12.2015, 22:43)  Попробуйте снять новое изображение и в отдельном скрипте найти его. Вбейте при этом хендл через ктрл+а, НЕ используйте переменные для задания адреса изображения (ну разве что кроме $bmp). Могли съехать все цвета.
Оу... попробовала просто в текущем скрипте заменить адрес без переменных - стало искать в перекрытых... я так понимаю по-другому работать не будет? (IMG: style_emoticons/default/sad.gif) если не будет, то как задать перебор картинок через for? у меня в коде ссылка на название картинки идёт в []
|
|
|
|
|
|
| Екатерина |
8.12.2015, 12:25
|

Registred
Сообщений: 5
Регистрация: 6.12.2015 Группа: Пользователи Наличность: 0
Пользователь №: 17.733
Возраст: 26

|
[quote name='DarkMaster' post='217279' date='7.12.2015, 0:22'] Проверьте нет ли ошибки в конструкции адреса. Конструкция 1 в 1 из UO Wiki (первый пример). [quote name='DarkMaster' post='217279' date='7.12.2015, 2:22'] уже эту переменную в поиск подставлять. [/quote] А по-человечески как у всех - нельзя? (IMG: style_emoticons/default/sad.gif) Кстати, заметила: если взять строку Код set $home findimage (0 0 100 240 ($path%etc[8].bmp) %home) и не перекрывать окно - находит 96% совпадение; если же взять Код set $home findimage (0 0 100 240 ($path%etc[8].bmp) %home workwindow) и не перекрывать окно - совпадений нет, кодов ошибок в логе тоже нет. Мистика? При этом неважно, как указан путь до картинки, с переменными или без, что в 1, что во 2 варианте ($path%etc[8] = D:\UO\дом) В справке есть команда printscreen, она может скринить в нужом формате bmp24?
|
|
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|