Your SlideShare is downloading. ×
Touch Ux With Win32
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Touch Ux With Win32

4,019

Published on

1 Comment
2 Likes
Statistics
Notes
  • win32 API 를 이용한 Touch UX
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
No Downloads
Views
Total Views
4,019
On Slideshare
0
From Embeds
0
Number of Embeds
4
Actions
Shares
0
Downloads
21
Comments
1
Likes
2
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Touch UX with win32 API
    win32 API를 이용해 윈도우 7의 멀티 터치 구현하기
    2010. 3. 8. Windows 7 Technical Briefing
    최 성 기
    http://vsts2010.net
    florist.sk@gmail.com
    NC Soft
  • 2. Agenda
    Intro : 멀티 터치
    터치 프로그래밍 준비사항
    win32 API로 터치 인식하기
    Reference
  • 3. Touch Interface
    UX(사용자 경험)분야의 가장 뜨거운 이슈
    터치형 인터페이스는 계속 성장할 전망
  • 4. Multi-Touch is Here
    • 싱글터치는기존 마우스 인식과 유사.
    • 5. 싱글 터치를 넘어 멀티 터치의 시대로.
    • 6. 멀티터치의 지원으로 표현력은 크게 증폭
    http://cyberimpacts.com/,
    http://www.intomobile.com/2007/03/11/apple-iphone-disappointing-lcd-screen.html
  • 7. 터치 프로그래밍 준비사항
  • 8. Visual Studio 2010
    2010. 2. 9. RC 버전 공개.
    2010. 4월 정식 버전 출시.
    2010. 6월 한글판 출시.
    이전 컴파일러 + Windows 7 SDK -> 개발가능
  • 9. 하드웨어 에뮬레이터
    http://multitouchvista.codeplex.com/
    멀티터치 인식 드라이버 (오픈소스)
  • 10. 터치 프로그래밍 : 단계별 적용
    1
    Good
    2
    Better
    3
    Best
  • 11. 터치 프로그래밍 : 단계별 적용
    1
    Good
    2
    Better
    3
    Best
    Doing nothing!
    Windows 7 에서실행하기만 하면 얻는 기능
  • 12. 터치 프로그래밍 : 단계별 적용
    1
    Good
    2
    Better
    3
    Best
    WM_GESTURE
    적은 수정비용으로 기본적인 동작 구현
  • 13. 터치 프로그래밍 : 단계별 적용
    3
    Best
    2
    Better
    1
    Good
    WM_TOUCH
    가장 강력하고 유연한 기능 구현 가능
  • 14. Step 1. Good
    Window 7 의기본 제공 터치 UX
    Demo
  • 15. 터치 프로그래밍 : 단계별 적용
    1
    Good
    2
    Better
    3
    Best
    WM_GESTURE
    적은 수정비용으로 기본적인 동작 구현
  • 16. GetSystemMetrics()
    GetSystemMetrics()
    SM_DIGITIZER : 입력장치 상태 확인
    SM_TABLETPC : 타블렛pc 여부 확인
    SM_MAXIMUMTOUCHES : 최대 동시입력 개수
  • 17. WM_GESTURE의 9가지 제스처
    http://msdn.microsoft.com/en-us/library/dd940543(VS.85).aspx
  • 18. WM_GESTURE의 9가지 제스처
    Panning
    Selection / Drag
    Rotate
    Zoom
  • 19. WM_GESTURE의 9가지 제스처
    Press and Tap
    Press and Hold
    Flicks
    Two-Finger Tap
  • 20. WM_GESTURENOTIFY
    SetGestureConfig( … )
    원하는 제스쳐만을 활성화 해준다.
    GC_ALLGESTURE
    GC_PAN
    GC_PAN_WITH_SINGLE_FINGURE_VERTICALLY
    GC_PAN_WITH_SINGLE_FINGURE_HORIZONTALLY
    GC_PAN_WITH_INERTIA
  • 21. WM_GESTURE
    사용자가 응용프로그램 윈도우에 제스처를 수행했음을 알려줌.
    제스처의 중심좌표와, 각 제스처에 따른 추가 정보들을 포함
    lParam으로 GESTUREINFO 구조체를 얻는다.
  • 22. struct GESTUREINFO
  • 23. Panning 제스처의 메시지 예시
    WM_GESTURENOTIFY
    WM_GESTURE (GID_BEGIN)
    WM_GESTURE (GID_PAN, GF_BEGIN)
    WM_GESTURE (GID_PAN, no flags)

    WM_GESTURE (GID_PAN, GF_INERTIA)

    WM_GESTURE (GID_PAN, GF_END)
    WM_GESTURE (GID_END)
  • 24. Step 2. Better
    WM_GESTURE 를 통한 구현
    Demo
  • 25. 터치 프로그래밍 : 단계별 적용
    3
    Best
    2
    Better
    1
    Good
    WM_TOUCH
    가장 강력하고 유연한 기능 구현 가능
  • 26. Mouse Messages &GetMessageExtraInfo()
    GetMessageExtraInfo() 함수를 이용해메시지의 추가정보를 얻을 수 있다.
    Mouse up / down 메시지는 터치나 펜으로 입력된 경우를 구분할 수 있다.
    Ex) Window 7의 기본 Mouse 입력 처리
  • 27. WM_TOUCH
    가장 직접적인 형태의 터치 데이터를 제공
    마우스 메시지와 유사한 컨셉
    이동, 회전, 줌 변환을 동시 적용 가능.
    Finger painting
    Custom Gestures
    Feeding higher-level controls ( ex. Manipulation )
  • 28. WM_TOUCH가 전달되도록 설정
    BOOL RegisterTouchWindow( … )
    WM_GESTURE 대신 WM_TOUCH를 받는다.
    TWF_WANTPALM : 반응 속도 추가설정 가능
  • 29. Step 3. Best
    WM_TOUCH를 통한 구현
    Demo
  • 30. 터치 프로그래밍 : 단계별 적용
    Doing nothing!
    Windows 7 에서실행하기만 하면 얻는 기능
    • WM_GESTURE
    • 31. 적은 수정비용으로 기본적인 동작 구현
    • 32. WM_TOUCH
    • 33. 가장 강력하고 유연한 기능 구현 가능
  • 34. Resources
    Microsoft Confidential
    Windows Developer Center (MSDN)
    http://msdn.microsoft.com/en-us/windows
    Windows 7 Training Kit
    Channel 9 - http://channel9.msdn.com/learn/windows
    Windows 7 Developers Blog
    http://windowsteamblog.com/blogs/developers/default.aspx
    Windows 7 on Channel 9
    http://channel9.msdn.com/windows

×