Прохожий
Покинул форум
Сообщений всего: 7
Дата рег-ции: Янв. 2017
Репутация: 1
|
Добрый день, коллеги!
Пытаюсь реализовать поиск однотипных картинок как описано в этой теме.
Но, с открытым кодом работаю плохо. Поэтому вначале пошел другим путем: в визуальном редакторе в блок "поиск изображения" вместо пути вставляю переменную "puti" типа string со сгенерированным в ней путем до нужного изображения. Но кибор ругается и не хочет так искать картинку. Помогите, пожалуйста, приспособить массив загрузки изображений к моему перебору картинок.
код ошибки: Ошибка в INTS[5]=++
Может быть для новичков была бы полезна возможность вместо пути до картинки указывать в этом поле переменную?
CODE:
int n, x_st=1510, y_st=222, x_end=1646, y_end=932, b,
rast[9], x[15], y[15];
string puti, rastoyanie;
int col_KIB, ex_KIB, ey_KIB, sum_KIB, x_KIB, y_KIB;
int Image_0_KIB[5][9];
start_();
enablerealmouse(12, 15, 5, 5);
m_KIB3: b=0;
m_KIB4: puti=("G:\kibor script\ðàññòîÿíèå äî êðàñíîãî îâåð\"+format(b)+".bmp");
b=++;
x_st=x_st+6;
x_end=x_end+6;
if (b<11) goto m_KIB7;
else goto m_KIB6;
m_KIB7: if (findimage_(#Image_0_KIB[0][0], 0, 0, 0, 0, 0, 0, 0, 0, 100, 100, 1, x_st, y_st, x_end, y_end, #sum_KIB, #x[b], #y[b])>0) goto m_KIB8;
else goto m_KIB4;
m_KIB8: if (x[b]!=0 && y[b]!=0) rastoyanie=(rastoyanie+format(b)); goto m_KIB4;
m_KIB6: textout(n, x_st+50, y_st, "rastoyanie", 0);
pause(50);
x_st=x_st+100;
y_st=y_st+12;
x_end=x_end+100;
y_end=y_end+12;
n++;
if (n<30) goto m_KIB3;
else goto m_KIB2;
m_KIB2: resettextout(1);
n=0;
function start_()
{
getdisplay(col_KIB, ex_KIB, ey_KIB);
load_image_();
pause(1000);
}
function findimage_(int #Image, int t, int p1, int p2, int m, int xm, int ym, int p3, int fon, int r, int p, int k, int xs, int ys, int xf, int yf, int#sum, int#x, int#y)
{
int timKIB, sumKIB, xKIB, yKIB;
pause(p1);
sumKIB=0;
if (t!=1) timKIB=gettime();
a: if (r==0 && p==100){sum=findimage(k, #Image[0][0], fon, #x[0], #y[0], xs, ys, xf, yf, -1); if (sum>0) goto e;}
else {sum=findimage(k, #Image[0][0], fon, #x[0], #y[0], xs, ys, xf, yf, r, r, r, r, r, r, p, 1, -1); if (sum>0) goto e;}
if (t==0) return 0;
if (gettime()-timKIB<t){sleep(20); goto a;}
return 0;
e: sumKIB=sum; xKIB=x[0]; yKIB=y[0];
pause(p2);
if (m==1){mouse(LEFT, xs+xKIB+xm, ys+yKIB+ym); pause(p3);}
if (m==2){mouse(MIDDLE, xs+xKIB+xm, ys+yKIB+ym); pause(p3);}
if (m==3){mouse(RIGHT, xs+xKIB+xm, ys+yKIB+ym); pause(p3);}
if (m==4){mousedown(LEFT, xs+xKIB+xm, ys+yKIB+ym); pause(p3);}
if (m==5){mousedown(MIDDLE, xs+xKIB+xm, ys+yKIB+ym); pause(p3);}
if (m==6){mousedown(RIGHT, xs+xKIB+xm, ys+yKIB+ym); pause(p3);}
if (m==7){mouseup(LEFT, xs+xKIB+xm, ys+yKIB+ym); pause(p3);}
if (m==8){mouseup(MIDDLE, xs+xKIB+xm, ys+yKIB+ym); pause(p3);}
if (m==9){mouseup(RIGHT, xs+xKIB+xm, ys+yKIB+ym); pause(p3);}
if (m==10){mousemove(xs+xKIB+xm, ys+yKIB+ym); pause(p3);}
return sumKIB;
}
function load_image_()
{
loadimage (#Image_0_KIB[0][0], "G:\kibor script\ðàññòîÿíèå äî êðàñíîãî îâåð\0.bmp");
}
(Отредактировано автором: 30 Января, 2017 - 14:13:47) |