/*
##############################################
ImageSearch 연습 4 여러번 찾기
Is_ex2_반복찾기_bug.ahk 는 제목 그대로 문제가 있습니다.
imageseach를 수행하고 찾은 위치(foundX,foundY) 값을 단순히 1 pixel 씩
증가 시켜 다음 찾을 ImageSearch 시작위치로 지정하고 있습니다.
다음 찾을 이미지가 오른쪽 옆에 나란히 있거나 , 왼쪽 아래에 있으면 찾지를 못합니다.
ImageSearch가 못찾는게 아니라 찾을 영역을 잘못 지정하여 못 찾습니다.
테스트 해보면 ImageSearch 명령어는
가로로 왼쪽에서 오른쪽으로 찾고 ,
그다음 밑으로 내려와서 다시 왼쪽에서부터 오른쪽으로 이미지 찾기를 수행합니다.
예를 들어
--- X1,X2,X3,X4 이 같은 이미지 이고 ImageSearch 시도시
1. 이미지를 모니터 화면에 아래와 같이 배치시
X1 이 먼저 검색 됩니다.
-------------------
-------------X1----
--X2---------------
-------------------
2. 이미지를 모니터 화면에 아래와 같이 배치시
Is_ex2_반복찾기_bug.ahk는 X1과 X4는 찾을수 있지만,
X2와 X3은 찾을 수 없습니다.
-------------------
-----X1----X2------
X3------X4---------
-------------------
전체 화면 반복해서 찾기하는 방법에 대해서는 다음에...^^
###############################################
*/
#SingleInstance, Force
#noenv
SetWorkingDir, %A_ScriptDir% ;스크립트가 있는 폴더를 실행폴더로 설정합니다.
;image파일 이름만 있는경우, 현재 실행 폴더에서 이미지 파일을 찾습니다.
coordmode pixel,screen ; imageSearch시 좌표는 전체 화면에서의 좌표.
coordmode tooltip,screen ; tooltip 을 보여줄때 좌표는 전체 화면에서의 좌표
startX=0
starty=0
endX:=A_ScreenWidth
endY:=A_ScreenHeight
File_Image1 = image1.bmp
FoundImageCount=0
loop,10
{
ImageSearch, foundX,foundY,%startX%,%startY%,%endX%,%endY%,%File_Image1%
if errorlevel = 0
{
tooltip,%A_Index% [x:%foundX%] [y:%foundY%] 찾았다.!!,foundX,foundY
msgbox %A_Index% 찾았다!!! [x:%foundX%] [y:%foundY%] tooltip 보세요.
FoundImageCount++
startx := foundX+1
starty := foundY+1
continue
}
else if ErrorLevel = 2
{
MsgBox imageSearch를 수행 할 수 없습니다.
break
}
else if ErrorLevel = 1
{
MsgBox %FoundImageCount% 개의 이미지를 찾았습니다.
break
}
}
return
'Autohotkey > AutoHotKey강좌' 카테고리의 다른 글
ImageSearch 예제 5 여러번 찾기 - 버그 수정 (0) | 2016.05.28 |
---|---|
ImageSearch 예제3 정확도 (0) | 2016.05.25 |
ImageSearch 연습2 (0) | 2016.05.24 |