Zireael |
Отправлено: 29 Января, 2019 - 22:47:31
|
Эксперт
Покинул форум
Сообщений всего: 4466
Дата рег-ции: Нояб. 2017
Репутация: 585
|
Цитата: int k=findheapcolor(sizearray(x), #color[0], #kol[0], sizearray(color), 1, #x[0], #y[0], 60, 60, 120, 120, 374, 278, 432, 337, r, r, r, r, r, r, -1);
Но так не будет работать, потому что: размер объекта больше, чем область поиска. Т. е. надо уменьшать 60, 60, 120, 120. |
|
|
Budni |
Отправлено: 30 Января, 2019 - 00:10:58
|
Специалист
Покинул форум
Сообщений всего: 419
Дата рег-ции: Март 2018
Репутация: 2
|
Zireael пишет: Цитата: int k=findheapcolor(sizearray(x), #color[0], #kol[0], sizearray(color), 1, #x[0], #y[0], 60, 60, 120, 120, 374, 278, 432, 337, r, r, r, r, r, r, -1);
Но так не будет работать, потому что: размер объекта больше, чем область поиска. Т. е. надо уменьшать 60, 60, 120, 120.
я правильно понял? т.е. к примеру если за объект взять 1 пиксель то будет
Цитата: int k=findheapcolor(sizearray(x), #color[0], #kol[0], sizearray(color), 1, #x[0], #y[0], 1, 1, 1, 1, 374, 278, 432, 337, r, r, r, r, r, r, -1); ? |
|
|
Budni |
Отправлено: 30 Января, 2019 - 01:38:30
|
Специалист
Покинул форум
Сообщений всего: 419
Дата рег-ции: Март 2018
Репутация: 2
|
Zireael пишет: Цитата: т.е. к примеру если за объект взять 1 пиксель то будет
Да.
хотел проверить как повлияет на скорость если искать 1 объект а не все сделал так пишет ошибка, что не так?
Цитата: int k=findheapcolor(sizearray(x), #color[0], #kol[0], sizearray(color), 1, #x[0], #y[0], 60, 60, 120, 120, 374, 278, 432, 337, r, r, r, r, r, r, 1); |
|
|
Zireael |
Отправлено: 30 Января, 2019 - 02:09:45
|
Эксперт
Покинул форум
Сообщений всего: 4466
Дата рег-ции: Нояб. 2017
Репутация: 585
|
Цитата: findheapcolor(сколько_ищем, #color[0], #kol[0], сколько_цветов, сколько_цветов_надо_минимум, #x[0], #y[0], X_размер, Y размер, Размер_области_где не искать X, Размер_области_где не искать Y, старт_X_поиска, старт_Y_поиска, финиш_X_поиска, финиш_X_поиска, Красный_меньше_на, Красный_больше_на, Зеленый_меньше_на, Зеленый_больше_на, Синий_меньше_на, Синий_больше_на , (указатель на окно или указатель на двухмерный массив int с изображением или -1));
Цитата: хотел проверить как повлияет на скорость
Никак, на получение изображения с экрана уйдёт как минимум 16 мсек. Учитывая область поиска на обработку уйдёт 0.
Быстрее будет если последним параметром указать окно. |
|
|
Kibor |
Отправлено: 30 Января, 2019 - 07:36:59
|
Эксперт
Просматривает форум
Сообщений всего: 8221
Дата рег-ции: Март 2013
Откуда: Одесса
Репутация: 357
|
Budni пишет: так пишет ошибка, что не так?
Поиск скученности пикселей определенных цветов на указанной площади (с разбегом в цвете)
синтаксис:
Цитата: findheapcolor(сколько_ищем, #color[0], #kol[0], сколько_цветов, сколько_цветов_надо_минимум, #x[0], #y[0], X_размер, Y размер, Размер_области_где не искать X, Размер_области_где не искать Y, старт_X_поиска, старт_Y_поиска, финиш_X_поиска, финиш_X_поиска, Красный_меньше_на, Красный_больше_на, Зеленый_меньше_на, Зеленый_больше_на, Синий_меньше_на, Синий_больше_на , (указатель на окно или указатель на двухмерный массив int с изображением или -1)); |
|
|
Budni |
Отправлено: 04 Февраля, 2019 - 17:40:35
|
Специалист
Покинул форум
Сообщений всего: 419
Дата рег-ции: Март 2018
Репутация: 2
|
Почему не работает?
CODE:int Image_0[6][7];loadimage (#Image_0[0][0], "C:\Users\budni\Desktop\Bot`s\kibor_set\bot\Test\nu.bmp");
int r=10; // ðàçáåæíîñòü
sleep(500);
int colors, xw, yw;
getdisplay(colors, xw, yw); // ðàçìåðû ýêðàíà
int time=gettime();
int PosX_0[512];int PosY_0[512];
int k=findimage(-1, #Image_0[0][0], 0, #PosX_0[0], #PosY_0[0], 0, 0, 800, 600,r, r, r, r, r, r, -1);
time=gettime()-time;
textbkcolor (255, 65280);
for(int i=0; i<k; i++)
{
textout(i, x[i], y[i] , format(i), 0);
mousemove(x[i], y[i]);
sleep(100);
}
messagebox("Çàòðà÷åíî âðåìåíè: "+format(time)+" "+format(k)+" îáúåêòîâ íàøëè");
|
|
|
Budni |
Отправлено: 04 Февраля, 2019 - 19:50:14
|
Специалист
Покинул форум
Сообщений всего: 419
Дата рег-ции: Март 2018
Репутация: 2
|
Спасибо, думаю надо чаще справку читать.
Цитата: int k=findimage(-1, #Image_0[0][0], 0, #PosX_0[0], #PosY_0[0], 0, 0, 800, 600,r, r, r, r, r, r, 100,1, -1); два параметра не добавил(Отредактировано автором: 04 Февраля, 2019 - 19:53:14) |
|
|
|