NGMsoftware

NGMsoftware
로그인 회원가입
  • 매뉴얼
  • 팁 앤 테크
  • 매뉴얼

    팁과 테크니컬 노하우를 확인하세요.

    팁 앤 테크

    팁과 테크니컬 노하우를 확인하세요.

    본 사이트의 컨텐츠는 저작권법의 보호를 받으므로 무단 복사, 게재, 배포 등을 금합니다.

    스크립트 중급부터 하나씩! - 매크로 좌표 오프셋에 대한 이해와 활용 방법. (How to understand and use macro…

    페이지 정보

    본문

    안녕하세요. 엔지엠소프트웨어입니다. [ 오프셋(Offset) ]은 매크로를 만들 때 많은 부분에서 사용할 수 있는 아주 유용한 액션입니다. 하지만, 용어에서 오는 난애함과 어디에 어떻게 사용해야 할지 딱히 아이디어가 떠오르지는 않습니다. 이번 예제를 통해서 좀 더 유용하게 사용할 수 있으면 좋겠네요. 첨부되어 있는 스크립트를 에디터에서 열어줍니다.

    IEWxemn.png

     

     

    오프셋이 어떻게 동작하고, 어디에 응용할 수 있는지를 테스트하기 위해 [ For 반복 ]과 함께 예제를 만들었습니다. 간단하게 For 반복에 대해 설명하고 넘어가야 할듯한데요. For문은 프로그래밍 언어에서 가장 많이 사용되는 함수중에 하나입니다. 현존하는 대부분의 프로그래밍 언어가 지원하고 있죠. 신텍스(Syntax, 구문)는 언어마다 차이가 있을수 있습니다. 엔지엠에서 제공하는 반복기([ For 반복 ], [ Foreach 반복 ], [ 액션 반복 ], [ 액션 이동 ], [ 액션 되돌아가기 ])들은 예제와 같이 하위로 액션을 추가하면 자동으로 반복해야할 횟수만큼 실행 해줍니다. 일부 액션은 하위 액션과 관계 없이 반복할수도 있습니다. 각각의 반복기를 읽어보시면 좋을거 같네요^^; 자 이제~ 실행해볼까요?

    UV4Xv8P.gif

     

     

    만약 오프셋이 없다면 같은 위치에서 5번 마름모를 그릴겁니다. 하지만, 오프셋 액션의 속성을 보면 좌표를 X, Y로 5씩 이동시킨걸 알 수 있죠. 그래서 반복할 때 마다 좌표가 X, Y로 5씩 이동됩니다. 이는 좀 더 다양하게 응용할 수 있는데요. 녹스나 엘디에서 스크립트를 하나 만들었다고 가정 해봅시다. 두번째 안드로이드 녹스에서 동일하게 동작 시키려면 스크립트 가장 위에 오프셋을 설정해주면 됩니다. 물론, 녹스나 엘디는 핸들로 처리해도 되긴합니다.

    GWelSyk.png

     

     

    테스트를 위해 그림판을 하나 더 실행하고, 기존보다 아래에 배치하세요. 그리고 스크립트의 가장 위에 오프셋을 추가합니다. Y값만 150 이동하도록요.

    QxvpH70.png

     

     

    모두 예상하듯이 모든 마름모가 아래로 150만큼 이동하게 됩니다.

    VE3gxjQ.gif

     

     

    Offset이 실행되면 이후에 오는 모든 좌표계를 가진 액션들이 영향을 받게 됩니다. 이미지 서치나 마우스 좌표, 영역등등 오프셋이 적용됩니다. 마우스 클릭 위치가 100, 100인 상태에서 오프셋이 10, 10이라면 최종 마우스가 클릭하는 위치는 110, 110이 됩니다. Offset은 좌표를 대체하는게 아니라 증감하는 액션입니다. 따라서, 위에 Y값을 -150으로 설정하면 위로 150만큼 이동해서 마름모를 그리게 됩니다. 스크립트를 멀티 실행하는 경우 다양한 방법으로 제어할 수 있도록 기능을 제공하고 있습니다. 대표적으로 핸들을 설정해서 비활성으로 하는 방법이죠. 만약, 비활성으로 동작되지 않는 환경이라면 오프셋을 이용해서 쉽게 원하는 동작을 만들 수 있습니다.

     

    개발자에게 후원하기

    MGtdv7r.png

     

    추천, 구독, 홍보 꼭~ 부탁드립니다.

    여러분의 후원이 빠른 귀농을 가능하게 해줍니다~ 답답한 도시를 벗어나 귀농하고 싶은 개발자~

    감사합니다~

    • 네이버 공유하기
    • 페이스북 공유하기
    • 트위터 공유하기
    • 카카오스토리 공유하기
    추천4 비추천0

    첨부파일

    댓글목록

    등록된 댓글이 없습니다.