• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Touch Ux With Win32
 

Touch Ux With Win32

on

  • 4,661 views

 

Statistics

Views

Total Views
4,661
Views on SlideShare
2,765
Embed Views
1,896

Actions

Likes
1
Downloads
20
Comments
1

10 Embeds 1,896

http://vsts2010.net 1377
http://vsts2010.tistory.com 322
http://kofmania.tistory.com 166
http://www.vsts2010.net 16
http://www.slideshare.net 8
http://www.hanrss.com 2
http://leam.tistory.com 2
http://webcache.googleusercontent.com 1
http://131.253.14.66 1
http://131.253.14.98 1
More...

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel

11 of 1 previous next

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
  • win32 API 를 이용한 Touch UX
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Touch Ux With Win32 Touch Ux With Win32 Presentation Transcript

    • Touch UX with win32 API
      win32 API를 이용해 윈도우 7의 멀티 터치 구현하기
      2010. 3. 8. Windows 7 Technical Briefing
      최 성 기
      http://vsts2010.net
      florist.sk@gmail.com
      NC Soft
    • Agenda
      Intro : 멀티 터치
      터치 프로그래밍 준비사항
      win32 API로 터치 인식하기
      Reference
    • Touch Interface
      UX(사용자 경험)분야의 가장 뜨거운 이슈
      터치형 인터페이스는 계속 성장할 전망
    • Multi-Touch is Here
      • 싱글터치는기존 마우스 인식과 유사.
      • 싱글 터치를 넘어 멀티 터치의 시대로.
      • 멀티터치의 지원으로 표현력은 크게 증폭
      http://cyberimpacts.com/,
      http://www.intomobile.com/2007/03/11/apple-iphone-disappointing-lcd-screen.html
    • 터치 프로그래밍 준비사항
    • Visual Studio 2010
      2010. 2. 9. RC 버전 공개.
      2010. 4월 정식 버전 출시.
      2010. 6월 한글판 출시.
      이전 컴파일러 + Windows 7 SDK -> 개발가능
    • 하드웨어 에뮬레이터
      http://multitouchvista.codeplex.com/
      멀티터치 인식 드라이버 (오픈소스)
    • 터치 프로그래밍 : 단계별 적용
      1
      Good
      2
      Better
      3
      Best
    • 터치 프로그래밍 : 단계별 적용
      1
      Good
      2
      Better
      3
      Best
      Doing nothing!
      Windows 7 에서실행하기만 하면 얻는 기능
    • 터치 프로그래밍 : 단계별 적용
      1
      Good
      2
      Better
      3
      Best
      WM_GESTURE
      적은 수정비용으로 기본적인 동작 구현
    • 터치 프로그래밍 : 단계별 적용
      3
      Best
      2
      Better
      1
      Good
      WM_TOUCH
      가장 강력하고 유연한 기능 구현 가능
    • Step 1. Good
      Window 7 의기본 제공 터치 UX
      Demo
    • 터치 프로그래밍 : 단계별 적용
      1
      Good
      2
      Better
      3
      Best
      WM_GESTURE
      적은 수정비용으로 기본적인 동작 구현
    • GetSystemMetrics()
      GetSystemMetrics()
      SM_DIGITIZER : 입력장치 상태 확인
      SM_TABLETPC : 타블렛pc 여부 확인
      SM_MAXIMUMTOUCHES : 최대 동시입력 개수
    • WM_GESTURE의 9가지 제스처
      http://msdn.microsoft.com/en-us/library/dd940543(VS.85).aspx
    • WM_GESTURE의 9가지 제스처
      Panning
      Selection / Drag
      Rotate
      Zoom
    • WM_GESTURE의 9가지 제스처
      Press and Tap
      Press and Hold
      Flicks
      Two-Finger Tap
    • WM_GESTURENOTIFY
      SetGestureConfig( … )
      원하는 제스쳐만을 활성화 해준다.
      GC_ALLGESTURE
      GC_PAN
      GC_PAN_WITH_SINGLE_FINGURE_VERTICALLY
      GC_PAN_WITH_SINGLE_FINGURE_HORIZONTALLY
      GC_PAN_WITH_INERTIA
    • WM_GESTURE
      사용자가 응용프로그램 윈도우에 제스처를 수행했음을 알려줌.
      제스처의 중심좌표와, 각 제스처에 따른 추가 정보들을 포함
      lParam으로 GESTUREINFO 구조체를 얻는다.
    • struct GESTUREINFO
    • 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)
    • Step 2. Better
      WM_GESTURE 를 통한 구현
      Demo
    • 터치 프로그래밍 : 단계별 적용
      3
      Best
      2
      Better
      1
      Good
      WM_TOUCH
      가장 강력하고 유연한 기능 구현 가능
    • Mouse Messages &GetMessageExtraInfo()
      GetMessageExtraInfo() 함수를 이용해메시지의 추가정보를 얻을 수 있다.
      Mouse up / down 메시지는 터치나 펜으로 입력된 경우를 구분할 수 있다.
      Ex) Window 7의 기본 Mouse 입력 처리
    • WM_TOUCH
      가장 직접적인 형태의 터치 데이터를 제공
      마우스 메시지와 유사한 컨셉
      이동, 회전, 줌 변환을 동시 적용 가능.
      Finger painting
      Custom Gestures
      Feeding higher-level controls ( ex. Manipulation )
    • WM_TOUCH가 전달되도록 설정
      BOOL RegisterTouchWindow( … )
      WM_GESTURE 대신 WM_TOUCH를 받는다.
      TWF_WANTPALM : 반응 속도 추가설정 가능
    • Step 3. Best
      WM_TOUCH를 통한 구현
      Demo
    • 터치 프로그래밍 : 단계별 적용
      Doing nothing!
      Windows 7 에서실행하기만 하면 얻는 기능
      • WM_GESTURE
      • 적은 수정비용으로 기본적인 동작 구현
      • WM_TOUCH
      • 가장 강력하고 유연한 기능 구현 가능
    • 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