есть диапазон точек где нужно найти определенный элемент
все хорошо и отлично пока начальная точка одна
но когда их много то приходится проходить циклом по всему диапазону точек
и тут начинаются великие томозаааааааа. тоже конечно находит но слишком долго
помогите оптимизировать поиск
Код:
PixelSearch(0, 0, 100, 100 , 0xADCF94)
If Not @error Then
EnterUro($coord)
EndIf
Func EnterUro($coord_) ;тут ищем сетку правилных точек
$coord0 = PixelSearch($coord_[0], $coord_[1], $coord_[0], $coord_[1] , 0xADCF94)
If Not @error Then
$coord1 = PixelSearch($coord0[0], $coord0[1]+4 , $coord0[0], $coord0[1]+4 , 0xC6EFF7)
If Not @error Then
$coord2 = PixelSearch($coord1[0]+10, $coord1[1] , $coord1[0]+10, $coord1[1] , 0x10454A)
If Not @error Then
$coord3 = PixelSearch($coord2[0], $coord2[1]+4 , $coord2[0], $coord2[1]+4 , 0x392829)
If Not @error Then
$coord4 = PixelSearch($coord3[0]-4, $coord3[1] , $coord3[0]-4, $coord3[1] , 0x5ACBCE)
If Not @error Then
Beep(500, 10) ; пищим и смеемся что нашли
EndIf
EndIf
EndIf
EndIf
EndIf
EndFunc
все хорошо и отлично пока начальная точка одна
но когда их много то приходится проходить циклом по всему диапазону точек
Код:
For $j=0 To 100
For $i= 0 to 100
$coord = PixelSearch($i, $j , $i, $j , 0xADCF94)
If Not @error Then
EnterUro($coord) ; та же процедура из верхнего примера
EndIf
Next
Next
и тут начинаются великие томозаааааааа. тоже конечно находит но слишком долго
помогите оптимизировать поиск