Здравствуйте, гость ( Вход | Регистрация )

> Findcolor спятил.. ¯\_(ツ)_/¯
Fors1k
сообщение 4.12.2018, 0:00
Сообщение #1


*****

Journeyman
Сообщений: 497
Регистрация: 19.12.2017
Группа: Пользователи
Наличность: 0
Пользователь №: 18.746



Код:
Код
set #a findcolor (664, 569 701, 877 1 1 (32768) %a workwindow -1 17)    
get color #color %a [1 1], %a [1 2] workwindow
log color is #color

Лог:
Код
color is 107


Попросил искать 32768, а он находит 107, и считает, что сделал все как я хотел..


--------------------
Для связиИзображение
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
 
Ответить в эту темуОткрыть новую тему
Ответов
DarkMaster
сообщение 4.12.2018, 15:01
Сообщение #2


***********

Модератор UOPilot
Сообщений: 9.766
Регистрация: 2.12.2008
Группа: Супермодераторы
Наличность: 30007
Пользователь №: 11.279



Цитата
Это даст безошибочную работу файндколора?

Это даст понимание того, что вы делаете.
Всего есть три канала: Red, Green, Blue. Каждый канал кодируется значением от 0 до 255, т.е. в шестнадцатиричном виде это будет от 0x00 до 0xFF (0x - говорит о том, что это шестнадцатиричное значение). После чего значения всех каналов собираются вместе. В пилоте порядок каналов не RGB, а BGR. Это связано с виндовым api (так работет шустрее). Т.е.:
R=0x88
G=0xAA
B=0xFF
Полчается:
0xFFAA88
После чего получившееся число предобразовывается в десятичный вид.
% отклонения (deviation) рассчитывается от значения каждого канала в отдельности. Т.е.%
R=0x88 +/- 255 / 100 * deviation
G=0xAA +/- 255 / 100 * deviation
B=0xFF +/- 255 / 100 * deviation
Очевидно, что математически это совсем не равно (для любой системы счисления):
0xFFAA88 +/- 255 / 100 * deviation
Поэтому для числа:
0x000001
погрешность 1% привидет к диапазону:
0x000000
0x020203
В десятичном виде:
от 1
до 131 073
Вполне очевидно, что без разложения на каналы 1% тут никак не получается.

Автоматизация преобразований: https://forum.uokit.com/index.php?showtopic=22116

// Вообще 17% это очень дофига. Очень. Это +/-17%, т.е. 34% всего возможного диапазона цветов. Скорее всего имеет смысл изменить искомый цвет либо задать дипазоны для каждого канала в отдельности.


--------------------
Скрипты UOPilot под заказ.
Консультации по UOpilot 15$/час.
Услуги Lua разработчика (не пилот, проекты, постоянка)
Disсоrd:
Kov____

Контакт актуален, подпись актуальна.
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения

Сообщений в этой теме
Fors1k   Findcolor спятил.. ¯\_(ツ)_/¯   4.12.2018, 0:00
cirus   Findcolor и findimage фиксились, а color нет. В ge...   4.12.2018, 1:55
Fors1k   Findcolor и findimage фиксились, а color нет. В g...   4.12.2018, 2:51
cirus   При погрешности цвета в 17% может много чего найт...   4.12.2018, 3:20
Fors1k   При погрешности цвета в 17% может много чего найт...   4.12.2018, 14:33
DarkMaster   Переводите числа в hex, раскладывайте на каналы, ...   4.12.2018, 13:00
Fors1k   Благодарю. Отклонение снизил до 3, пока полет норм...   4.12.2018, 15:11
sutra   findcolor с погрешностью 17% ищет +- 43 . Надо бы...   4.12.2018, 20:11
Fors1k   Надо было посмотреть ещё и значение найденного цв...   4.12.2018, 22:51
sutra   Попробуй проверить найденный цвет и вот если он не...   4.12.2018, 20:22
sutra   А вообще поиск осуществляется не совсем корректно....   4.12.2018, 20:40
DarkMaster   Ничерта не понял :) Может это потому, что я не кн...   4.12.2018, 22:59
sutra   На счёт get color ничего сказать не могу, я им во...   5.12.2018, 1:07
cirus   // сделать привязку Ctrl+A get color #color1 100 ...   5.12.2018, 2:05
sutra   Абсолютно верно!! Естественно работает по...   5.12.2018, 2:33
sutra   Но вопрос у меня всё равно остался, ведь в том при...   5.12.2018, 2:46
sutra   И у меня они разные, только если привязка не к ра...   5.12.2018, 2:57
sutra   Извиняюсь перед коллегой, я нашёл причину, и причи...   5.12.2018, 3:18
WKnight   Значение RGB показывается во всплывающей подсказке...   5.12.2018, 3:19
sutra   Сорри, опять запутался, всё верно работает! То...   5.12.2018, 3:21
sutra   Нет, всё-таки findcolor врёт, если привязывать к к...   5.12.2018, 3:54
sutra   Кстати и get color точно так же врёт, если вязать ...   5.12.2018, 4:12
sutra   Кстати и printscreen workwindow 0 0 1920 1080 scri...   5.12.2018, 4:42
sutra   set #a findcolor (664, 569 701, 877 1 1 (3...   5.12.2018, 5:04
DarkMaster   Можно попробовать вот так. Тем не менее проблемы...   5.12.2018, 13:45


Ответить в эту темуОткрыть новую тему
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

- Текстовая версия | Версия для КПК Сейчас: 31.10.2025, 20:40
Designed by Nickostyle