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

 
Ответить в эту темуОткрыть новую тему
> Разрешение окна + поиск в нем, findcolor + win_pos
yodich
сообщение 12.11.2023, 13:39
Сообщение #1


***

Novice
Сообщений: 90
Регистрация: 24.8.2020
Группа: Пользователи
Наличность: 0
Пользователь №: 19.728
Возраст: 29



Всем доброго времени суток.
ничего путного не нашел, да и сам особо ничего не придумал, но все же вопрос:
как сделать соотношение для поиска по размеру экрана, например, браузера.

например, такой код:
Код

--lua
local xStart, yStart, xEnd, yEnd = 0, 0, 1920, 1080 -- размер окна (вычисляется windowpos()), допустим открыли на весь экран

-- делаем поиск какого-то объекта
local obj_1 = findcolor (xStart, yStart, xEnd, yEnd, 2, 2, [[('7777777')]], '%arr_obj_1')
local x_obj1, y_obj1 = arr_obj_1[1][1], arr_obj_1[1][2]

-- нашли объект..., от этого же найденного объекта нужен еще 1 поиск, но уже в этом объекте
local ibj_2 = findcolor (x_obj1 - 100 , y_obj1 - 100, x_obj1 + 100 , y_obj1 + 100, 2, 2, [[('666666')]], '%arr_obj_2')


дак вот сама суть вопроса: как сделать соотношение окна к этим "x_obj1 - 100 , y_obj1 - 100, x_obj1 + 100 , y_obj1 + 100" при уменьшении экрана браузера. т.е. при уменьшении окна, например, 1000х1000, уже "x_obj1 - 100 и y_obj1 - 100" не будет искать в этом диапазоне, диапазон соответственно тоже станет меньше, например, "x_obj1 - 75 и y_obj1 - 75...".
ps Если оставить тот же диапазон 100 на 100, то он уже скорее всего найдет не то, что нужно...

help)
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
nykep
сообщение 12.11.2023, 23:25
Сообщение #2


****

Apprentice
Сообщений: 233
Регистрация: 1.9.2012
Группа: Пользователи
Наличность: 1213
Пользователь №: 15.246
Возраст: 25



наверное просто формулу поставь, посчитай во сколько раз уменьшилось окно по Х и по У, потом там где у тебя - 100 умножай это на полученный коэффициент. И округлить не забудь.
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
yodich
сообщение 12.11.2023, 23:34
Сообщение #3


***

Novice
Сообщений: 90
Регистрация: 24.8.2020
Группа: Пользователи
Наличность: 0
Пользователь №: 19.728
Возраст: 29



Цитата(nykep @ 13.11.2023, 1:25) *

наверное просто формулу поставь, посчитай во сколько раз уменьшилось окно по Х и по У, потом там где у тебя - 100 умножай это на полученный коэффициент. И округлить не забудь.


да я пробовал, получается "ернуда", либо я что-то не так сделал🤔
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Cockney
сообщение 13.11.2023, 0:48
Сообщение #4


********

Master
Сообщений: 1.395
Регистрация: 22.6.2013
Группа: Пользователи
Наличность: 21064
Пользователь №: 16.156



100 * (текущая ширина (высота) окна / ширина (высота) окна до изменения) в общем случае, но скорее всего работать не будет.
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
yodich
сообщение 13.11.2023, 15:47
Сообщение #5


***

Novice
Сообщений: 90
Регистрация: 24.8.2020
Группа: Пользователи
Наличность: 0
Пользователь №: 19.728
Возраст: 29



Цитата(Cockney @ 13.11.2023, 2:48) *

100 * (текущая ширина (высота) окна / ширина (высота) окна до изменения) в общем случае, но скорее всего работать не будет.


тоже пробовал, не работает так
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 13.11.2023, 17:40
Сообщение #6


***********

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



очень часто есть какие-то статические оффсеты, привязки к сторонам/углам. В теории Cockney правильно написал, на практике половина координат будет частным случаем. Плюс при изменении масштаба цвета могут съезжать, особенно, если присутствовал градиент.


--------------------
Скрипты UOPilot под заказ.
Консультации по UOpilot 15$/час.
Услуги Lua разработчика (не пилот, проекты, постоянка)
Disсоrd:
Kov____
Пользователь в онлайне!Delete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
yodich
сообщение 13.11.2023, 19:37
Сообщение #7


***

Novice
Сообщений: 90
Регистрация: 24.8.2020
Группа: Пользователи
Наличность: 0
Пользователь №: 19.728
Возраст: 29



Цитата(DarkMaster @ 13.11.2023, 19:40) *

очень часто есть какие-то статические оффсеты, привязки к сторонам/углам. В теории Cockney правильно написал, на практике половина координат будет частным случаем. Плюс при изменении масштаба цвета могут съезжать, особенно, если присутствовал градиент.


Получается придётся руками делать ��
1920х1080 -- 100х100
1800х960 -- 85х85 и тп

ладно, тогда с картиной такое возможно провернуть? чтобы при масштабировании функция понимала какую картинку искать��
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 14.11.2023, 16:10
Сообщение #8


***********

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



Цитата
ладно, тогда с картиной такое возможно провернуть? чтобы при масштабировании функция понимала какую картинку искать��

если она другая (размер в том числе), то скорее нет чем да. Ну формально можно конвертнуть чем-нибудь и подправив девиэйшн и точность получить положительный эффект. На практике - ручками.


--------------------
Скрипты UOPilot под заказ.
Консультации по UOpilot 15$/час.
Услуги Lua разработчика (не пилот, проекты, постоянка)
Disсоrd:
Kov____
Пользователь в онлайне!Delete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения

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

 

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