KR20160057407A - 동시적 호버 및 터치 인터페이스 - Google Patents

동시적 호버 및 터치 인터페이스 Download PDF

Info

Publication number
KR20160057407A
KR20160057407A KR1020167008759A KR20167008759A KR20160057407A KR 20160057407 A KR20160057407 A KR 20160057407A KR 1020167008759 A KR1020167008759 A KR 1020167008759A KR 20167008759 A KR20167008759 A KR 20167008759A KR 20160057407 A KR20160057407 A KR 20160057407A
Authority
KR
South Korea
Prior art keywords
hover
touch
interaction
input
interface
Prior art date
Application number
KR1020167008759A
Other languages
English (en)
Inventor
단 황
린 다이
Original Assignee
마이크로소프트 테크놀로지 라이센싱, 엘엘씨
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 마이크로소프트 테크놀로지 라이센싱, 엘엘씨 filed Critical 마이크로소프트 테크놀로지 라이센싱, 엘엘씨
Publication of KR20160057407A publication Critical patent/KR20160057407A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/041Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
    • G06F3/0412Digitisers structurally integrated in a display
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/041Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
    • G06F3/0416Control or interface arrangements specially adapted for digitisers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/041Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
    • G06F3/0416Control or interface arrangements specially adapted for digitisers
    • G06F3/04166Details of scanning methods, e.g. sampling time, grouping of sub areas or time sharing with display driving
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • G06F3/04883Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures for inputting data by handwriting, e.g. gesture or text
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • G06F3/04886Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures by partitioning the display area of the touch-screen or the surface of the digitising tablet into independently controllable areas, e.g. virtual keyboards or menus

Abstract

예시적인 장치 및 방법은, 터치 감지 및 호버 감지 입력/출력(i/o) 인터페이스에 대한 동시적 터치 및 호버 액션을 프로세싱하는 것에 관한 것이다. 하나의 예시적인 장치는, i/o 인터페이스를 터치하는 오브젝트를 검출하는 터치 검출기를 포함한다. 예시적인 장치는, i/o 인터페이스와 관련되는 호버 공간 안에서 오브젝트를 검출하는 근접 검출기를 포함한다. 장치는 터치 액션 및 호버 액션에 관한 특성화 데이터를 생성한다. 근접 검출기 및 터치 검출기는 용량성 감지 노드의 세트를 공유할 수도 있다. 예시적인 장치 및 방법은, 터치 액션(들) 및 호버 액션(들)의 조합에 기초하여 i/o 인터페이스 상에서의 입력/출력 액션을 선택적으로 제어한다.

Description

동시적 호버 및 터치 인터페이스{SIMULTANEOUS HOVER AND TOUCH INTERFACE}
본 발명은 동시적 호버 및 터치 인터페이스에 관한 것이다.
배경
터치 감지 스크린(touch sensitive screen)은, 몇몇 장치에서, 근접 검출기에 의존하는 호버 감지 스크린(hover-sensitive screen)에 의해 대체되었다. 터치 감지 스크린이 스크린을 터치한 오브젝트를 검출하였지만, 호버 감지 스크린은 스크린의 소정의 거리 내에서 "호버링"하고 있는 오브젝트를 검출할 수도 있다. 터치 감지 스크린은, 사용자에 의해, 사용자 스타일러스 또는 펜에 의해, 또는 다른 오브젝트에 의해 터치되고 있었던 스크린 상의 지점을 식별했을 수도 있다. 액션은 터치 지점 및 그 터치 지점에서 발생한 액션에 기초하여 제어될 수 있을 것이다. 종래의 호버 감지 스크린은 호버 감지 디바이스와 연관되는 호버 공간 안에서 오브젝트를 검출한다.
종래, 스크린은 터치 감지 스크린 또는 호버 감지 스크린 중 어느 하나였을 수도 있다. 따라서, 호버 상호작용 및 터치 상호작용은, 동시가 아닌 별개의 시간에(예를 들면, 순차적으로) 사용자가 수행하는 별개의 작업으로서 간주되었다. 몇몇 종래의 시스템에서는, 사용자는 터치 상호작용 또는 호버 상호작용 사이에서 선택해야만 했을 수도 있다. 이것은 입력 액션의 잠재적 풍성함을 불필요하게 제한했을 수도 있다.
개요
이 개요는 하기의 상세한 설명에서 더 설명되는 개념의 선택을 단순화된 형태로 소개하기 위해 제공된다. 이 개요는 청구된 주제의 주요 피쳐나 또는 본질적인 피쳐를 식별하도록 의도된 것이 아니며, 청구된 주제의 범위를 제한하는 데 사용되도록 의도된 것도 아니다.
예시적인 방법 및 장치는, 동시적 또는 공동 작용(coordinated) 터치 및 호버 액션을 수반하는 입력을 수용하는 것에 관한 것이다. 예를 들면, 사용자는, 호버 및 터치 액션 둘 다를 포함하는 입력 액션을 수행할 수 있을 수도 있다. 터치가 액션을 시작하고 호버에 의해 보충될 수도 있거나 또는 호버가 액션을 시작하고 터치에 의해 보충될 수도 있다. 호버 및 터치를 동시에 사용할 수 있는 것은, 터치 및 호버 감지 겸용의 스크린과 상호작용하는 새로운 방식을 도입한다.
몇몇 실시형태는, 터치 및 호버 액션 둘 다를 감지하는 용량성(capacitive) 입력/출력(input/output; i/o) 인터페이스를 포함할 수도 있다. 용량성 i/o 인터페이스는 스크린을 터치하는 오브젝트(예를 들면, 손가락, 엄지손가락, 스타일러스)를 검출할 수도 있다. 용량성 i/o 인터페이스는 또한, 스크린을 터치하고 있지는 않지만 스크린과 연관되는 3차원 볼륨(예를 들면, 호버 공간) 안에 위치되는 오브젝트(예를 들면, 손가락, 엄지손가락, 스타일러스)를 검출할 수도 있다. 용량성 i/o 인터페이스는 터치 액션 및 호버 액션을 동시에 검출할 수 있을 수도 있다. 용량성 i/o 인터페이스는, 다수의 동시적 터치 액션 및 다수의 동시적 호버 액션을 검출할 수 있을 수도 있다. 한 실시형태는, 터치 액션(들) 및 동시적 호버 액션(들)에 관한 특성화 데이터(characterization data)를 생성할 수도 있다. 한 실시형태는, 특성화 데이터의 기능으로서 i/o 인터페이스 상에서 수행되는 액션을 선택적으로 제어할 수도 있다.
첨부의 도면은, 본원에서 설명되는 다양하고 예시적인 장치, 방법, 및 다른 실시형태를 예시한다. 도면에서 예시된 엘리먼트 경계(예를 들면, 박스, 박스의 그룹, 또는 다른 형상)는 경계의 한 예를 나타낸다는 것이 인식될 것이다. 몇몇 예에서, 한 엘리먼트는 다수의 엘리먼트로 디자인될 수도 있거나 또는 다수의 엘리먼트는 하나의 엘리먼트로 디자인될 수도 있다. 몇몇 예에서, 다른 엘리먼트의 내부 컴포넌트로서 도시되는 한 엘리먼트는 외부 컴포넌트로서 구현될 수도 있고 그 반대로 될 수도 있다. 또한, 엘리먼트는 동일한 축척으로 도시되지 않을 수도 있다.
도 1은 예시적인 터치 및 호버 감지 디바이스를 예시한다.
도 2는 예시적인 터치 및 호버 감지 디바이스를 예시한다.
도 3은 예시적인 터치 및 호버 감지 디바이스의 일부를 예시한다.
도 4는 예시적인 터치 및 호버 감지 디바이스의 일부를 예시한다.
도 5는 동시적 호버 및 터치 인터페이스와 연관되는 예시적인 방법을 예시한다.
도 6은 동시적 호버 및 터치 인터페이스와 연관되는 예시적인 방법을 예시한다.
도 7은 동시적 호버 및 터치 인터페이스가 동작할 수도 있는 예시적인 클라우드 동작 환경을 예시한다.
도 8은 동시적 호버 및 터치 인터페이스를 가지고 구성되는 예시적인 모바일 통신 디바이스를 묘사하는 시스템 도면이다.
도 9는 동시적 호버 및 터치 인터페이스를 제공하는 예시적인 장치를 예시한다.
상세한 설명
예시적인 장치 및 방법은, i/o 인터페이스를 터치하는 오브젝트에 의해 수행되는 터치 액션을 검출한다. 예시적인 장치 및 방법은 또한, i/o 인터페이스와 연관되는 호버 공간 안에서 오브젝트에 의해 수행되는 호버 액션을 검출한다. 그 다음, 예시적인 장치 및 방법은, 만약 한다면, 터치 액션을 호버 액션과 조합시키는 방법을 결정한다. 일단 터치 액션 및 호버 액션의 조합이 결정되면, i/o 인터페이스에 의해 수행되는 i/o는, 적어도 부분적으로, 그 조합에 의해 제어될 것이다.
터치 기술은, 터치 감지 스크린을 터치하는 오브젝트를 검출하기 위해 사용된다. "터치 기술" 및 "터치 감지"는 i/o 인터페이스를 터치하는 오브젝트를 감지하는 것을 가리킨다. i/o 인터페이스는, 예를 들면, 용량성 인터페이스일 수도 있다. 용량성 센서에 의해 감지되는 용량(capacitance)은, 스크린을 터치하는 오브젝트의 용량에 대한 상이한 유전 특성(dielectric property) 및 효과에 의해 영향을 받을 수도 있다. 예를 들면, 손가락의 유전 특성은 공기의 유전 특성과는 상이하다. 마찬가지로, 스타일러스의 유전 특성은 공기의 유전 특성과는 상이하다. 따라서, 손가락 또는 스타일러스 중 어느 하나가 용량성 i/o 인터페이스를 터치하는 경우, 용량에서의 변화가 감지되어 입력 액션을 식별하도록 사용될 수 있다. 용량성 i/o 인터페이스가 설명되었지만, 더 일반적으로는 터치 감지 i/o 인터페이스가 활용될 수도 있다.
호버 기술은 호버 공간 안에서 오브젝트를 검출하기 위해 사용된다. "호버 기술" 및 "호버 감지"는, 전자 디바이스의 디스플레이에서 떨어진(예를 들면, 터치하고 있지 않은) 그러나 여전히 디스플레이에 밀접한 오브젝트를 감지하는 것을 가리킨다. "밀접"은, 예를 들면, 1mm는 넘지만 1cm 이내, 0.1mm는 넘지만 10cm 이내, 또는 범위의 다른 조합을 의미할 수도 있다. 밀접한 상태에 있는 것은, 근접 검출기(예를 들면, 용량성 센서)가 호버 공간 안에서 오브젝트를 검출하여 특징지을 수 있는 범위 내에 있는 것을 포함한다. 디바이스는, 예를 들면, 전화기, 태블릿 컴퓨터, 컴퓨터, 또는 다른 디바이스일 수도 있다. 호버 기술은, 호버를 감지하는 디바이스와 연관되는 근접 검출기(들)에 의존할 수도 있다. 예시적인 장치는 근접 검출기(들)를 포함할 수도 있다.
도 1은 터치 감지 및 호버 감지 겸용의 예시적인 디바이스(100)를 예시한다. 디바이스(100)는 입력/출력(i/o) 인터페이스(110)를 포함한다. i/o 인터페이스(100)는 터치 감지 및 호버 감지 겸용이다. i/o 인터페이스(100)는, 예를 들면, 가상 키보드(140), 및 더 일반적으로는, 사용자 인터페이스 엘리먼트(120)를 포함하는 아이템의 세트를 디스플레이할 수도 있다. 사용자 인터페이스 엘리먼트는 정보를 디스플레이하도록 그리고 사용자 상호작용을 수신하도록 사용될 수도 있다. 종래, 사용자 상호작용은, i/o 인터페이스(110)를 터치하거나 또는 호버 공간(150) 안에서 호버링하는 것 중 어느 하나에 의해 수행되었다. 예시적인 장치는, 터치 액션 및 호버 액션 둘 다를 사용하는 입력 액션을 식별하고 그 입력 액션에 응답하는 것을 용이하게 한다.
디바이스(100) 또는 i/o 인터페이스(110)는, 사용자 인터페이스 엘리먼트(120), 가상 키보드(140), 또는 디스플레이되는 다른 아이템에 관한 상태(130)를 저장할 수도 있다. 사용자 인터페이스 엘리먼트(120)의 상태(130)는, 터치 및 호버 액션이 발생하는 순서, 터치 및 호버 액션의 수, 터치 및 호버 액션이 정적인지 또는 동적인지의 여부, 조합된(combined) 호버 및 터치 액션이 제스쳐를 묘사하는지의 여부, 또는 터치 및 호버 액션의 다른 특성에 의존할 수도 있다. 상태(130)는, 예를 들면, 터치 액션의 위치, 호버 액션의 위치, 터치 액션과 연관되는 제스쳐, 호버 액션과 연관되는 제스쳐, 또는 다른 정보를 포함할 수도 있다.
디바이스(100)는, 오브젝트(예를 들면, 손가락, 펜슬, 용량성 팁을 갖는 스타일러스)가 i/o 인터페이스(110)를 터치하고 있는 경우를 검출하는 터치 검출기를 포함할 수도 있다. 터치 검출기는, i/o 인터페이스(110)를 터치하는 오브젝트의 위치 (x, y)에 관해 보고할 수도 있다. 터치 검출기는 또한, 오브젝트가 이동하고 있는 방향, 오브젝트가 이동하고 있는 속도, 오브젝트가 탭을 수행했는지, 더블 탭을 수행했는지, 트리플 탭을 수행했는지 또는 다른 탭 액션을 수행했는지의 여부, 오브젝트가 인식가능한 제스쳐를 수행했는지의 여부, 또는 다른 정보에 관해 보고할 수도 있다.
디바이스(100)는 또한, 오브젝트(예를 들면, 손가락, 펜슬, 용량성 팁을 갖는 스타일러스)가 i/o 인터페이스(110)에 밀접하지만 터치하고 있지 않은 경우를 검출하는 근접 검출기를 포함할 수도 있다. 근접 검출기는 3차원 호버 공간(150)에서 오브젝트(160)의 위치 (x, y, z)를 식별할 수도 있다. 근접 검출기는 또한, 예를 들면, 오브젝트(160)가 호버 공간(150) 안에서 이동하고 있는 속도, 호버 공간(150)에 대한 오브젝트(160)의 방위(orientation)(예를 들면, 피치, 롤, 요), 호버 공간(150) 또는 디바이스(100)에 대해 오브젝트(160)가 이동하고 있는 방향, 오브젝트(160)에 의해 이루어지고 있는 제스쳐, 또는 오브젝트(160)의 다른 속성(attribute)을 포함하는 오브젝트(160)의 다른 속성을 식별할 수도 있다. 단일의 오브젝트(160)가 예시되지만, 근접 검출기는 호버 공간(150) 안에서 하나보다 많은 오브젝트를 검출할 수도 있다.
상이한 예에서, 터치 검출기는 능동 또는 수동 시스템을 사용할 수도 있다. 마찬가지로, 상이한 예에서, 근접 검출기는 능동 또는 수동 시스템을 사용할 수도 있다. 일 실시형태에서, 단일의 장치가 터치 검출기 기능 및 근접 검출기 기능 둘 다를 수행할 수도 있다. 복합 검출기(combined detector)는, 용량성, 전기장, 유도성, 홀 효과, 리드(Reed) 효과, 맴돌이 전류(Eddy current), 자기저항성, 광학적 섀도우(optical shadow), 광학적 가시광, 광학적 적외선(infrared; IR), 광학적 색 인식, 초음파, 음향 방출, 레이더, 열, 소나, 도전성, 및 저항성 기술을 포함하는, 그러나 이들로 제한되지 않는 감지 기술을 사용할 수도 있다. 능동 시스템은, 다른 시스템 중에서도, 적외선 또는 초음파 시스템을 포함할 수도 있다. 수동 시스템은, 다른 시스템 중에서도, 용량성 또는 광학적 섀도우 시스템을 포함할 수도 있다. 일 실시형태에서, 복합 검출기가 용량성 기술을 사용하는 경우, 검출기는 호버 공간(150) 안에서의 또는 i/o 인터페이스(110) 상에서의 용량 변화를 검출하기 위한 용량성 감지 노드의 세트를 포함할 수도 있다. 용량 변화는, 예를 들면, 용량성 감지 노드와 접촉하는 또는 용량성 감지 노드의 검출 범위 내에 들어 오는 손가락(들)(예를 들면, 손가락, 엄지손가락) 또는 다른 오브젝트(들)(예를 들면, 펜, 용량성 스타일러스)에 의해 야기될 수도 있다.
일반적으로, 근접 검출기는, i/o 인터페이스(110) 상에서 그리고 i/o 인터페이스(110)와 연관되는 호버 공간(150) 안에서 감지 필드의 세트를 생성하는 근접 센서의 세트를 포함한다. 터치 검출기는 오브젝트가 i/o 인터페이스(110)와 접촉할 때 신호를 생성하고 근접 검출기는 호버 공간(150) 안에서 오브젝트가 검출될 때 신호를 생성한다. 일 실시형태에서, 단일의 검출기는 터치 검출 및 근접 검출 둘 다에 대해 활용될 수도 있고, 따라서 단일의 신호가 조합된 터치 및 호버 이벤트를 보고할 수도 있다.
일 실시형태에서, 터치를 특징짓는 것은, 디바이스에 의해 제공되는 터치 검출 시스템(예를 들면, 터치 검출기)으로부터 신호를 수신하는 것을 포함한다. 터치 검출 시스템은 능동 검출 시스템(예를 들면, 적외선, 초음파), 수동 검출 시스템(예를 들면, 용량성), 또는 시스템의 조합일 수도 있다. 호버를 특징짓는 것은 또한, 디바이스에 의해 제공되는 호버 검출 시스템(예를 들면, 호버 검출기)으로부터 신호를 수신하는 것을 포함할 수도 있다. 호버 검출 시스템도 또한 능동 검출 시스템(예를 들면, 적외선, 초음파), 수동 검출 시스템(예를 들면, 용량성), 또는 시스템의 조합일 수도 있다. 조합된 터치 및 호버 이벤트를 특징짓는 것은 또한, 디바이스 안으로 통합되는 능동 검출 시스템 또는 수동 검출 시스템으로부터 신호를 수신하는 것을 포함할 수도 있다. 신호는, 예를 들면, 전압, 전류, 인터럽트, 컴퓨터 신호, 전자 신호, 또는 검출기가 검출한 이벤트에 관한 정보를 검출기가 제공할 수 있게 하는 다른 유형의(tangible) 신호일 수도 있다. 일 실시형태에서, 터치 검출 시스템 및 호버 검출 시스템은 동일한 시스템일 수도 있다. 일 실시형태에서, 터치 검출 시스템 및 호버 검출 시스템은 디바이스 안으로 통합될 수도 있거나 또는 디바이스에 의해 제공될 수도 있다.
도 2는, 하나의 손가락이 터치 액션을 수행하고 있고 동시에 다른 손가락이 호버 액션을 수행하고 있는 경우의 시뮬레이팅된 터치 감지 및 호버 감지 디바이스(200)를 예시한다. 터치 액션 및 호버 액션이 동시에 수행되고 있기 때문에, 디바이스(200)는 두 개의 액션을 하나의 조합된 액션으로 해석할 수도 있다. 예시로서, 가상 키보드 상의 소정의 키 위에서 호버링하고 있는 손가락(210)은 그 키가 하일라이트되게 할 수도 있다. 그 다음, 하일라이트된 키 위에서 다른 호버 액션(예를 들면, 시뮬레이팅된 타이핑 액션)을 행하는 것은, 소정의 키 스트로크가 텍스트 입력 박스에 나타나게 하는 입력 액션을 야기할 수도 있다. 예를 들면, 문자 e 또는 E가 텍스트 입력 박스 안에 배치될 수도 있다. 그러나, 그 문자에 대해서는, 소문자 e 또는 대문자 E 중 어느 하나인 두 개의 선택이 존재한다. 터치 또는 호버 감지 디바이스 상에서의 타이핑 경험은, 대문자 및 소문자가 쉽게 선택될 수 있는지 또는 어렵게 선택될 수 있는지에 의해 영향을 받을 수 있다.
도 2에서는, 디바이스(200)를 터치하고 있는 엄지손가락(220)이 예시된다. 엄지손가락(220)은, 손가락(210)에 의한 호버 액션에 응답하여 입력되는 문자가 소문자 e인지 또는 대문자 E인지의 여부를 제어하는 사용자 인터페이스 엘리먼트(예를 들면, 가상 시프트 키)를 터치하고 있을 수도 있다. 도 2에서, 엄지손가락(200)은, 대문자 E가 호버 액션에 의해 생성되게 하는 터치 액션을 수행하였다. 종래에는, 시프트 키 위에서 호버 액션을 수행하고, 그 다음 소망의 문자로 그들의 손가락을 이동시키고, 그 다음 문자를 눌러야 했을 수도 있다. 사용자는, 대문자로 입력되도록 의도되었던 각각의 키스트로크에 대해 시프트 키 위에서 호버링해야 했을 수도 있다. 디바이스(200)는 동시적 터치 및 호버 액션을 조합하는 것에 의해 더 많은 유연성를 제공한다. 일 예에서, 디바이스(200)는 엄지손가락(220)을 이용하여 시프트 키 상에서 터치 및 홀드 액션을 수행하는 것 및 그 다음 손가락(210)을 이용하여 소망하는 만큼 많은 대문자를 입력하는 것을 용이하게 한다. 사용자가 소문자 타이핑으로 돌아가기를 원하는 경우, 사용자는, 호버링하고 있는 손가락(210)을 재위치시키지 않고, 단순히 스크린으로부터 엄지손가락(220)을 들어 올릴 것이다.
도 3은 터치 감지 및 호버 감지 i/o 인터페이스(300)를 예시한다. 라인(320)은 호버 감지 i/o 인터페이스(300)와 연관되는 호버 공간의 외부 한계를 나타낸다. 라인(320)은 i/o 인터페이스(300)로부터의 일정 거리(330)에서 위치결정된다. 거리(330) 및 따라서 라인(320)은, 예를 들면, i/o 인터페이스(300)를 지원하는 디바이스에 의해 사용되는 근접 검출 기술에 의존하여, 상이한 장치에 대해 상이한 치수 및 포지션을 가질 수도 있다.
예시적인 장치 및 방법은 i/o 인터페이스(300) 및 라인(320)에 의해 경계가 정해지는 호버 공간 안에 위치되는 오브젝트를 식별할 수도 있다. 예시적인 장치 및 방법은 또한, i/o 인터페이스(300)를 터치하고 있는 오브젝트를 식별할 수도 있다. 예를 들면, 디바이스(300)는, 시간 T1에서 오브젝트(310)가 i/o 인터페이스(300)를 터치할 때 오브젝트(310)를 검출할 수도 있다. 오브젝트(312)가 i/o 인터페이스(310)를 터치하지도 않고 i/o 인터페이스(300)에 대한 호버 구역에도 있지 않기 때문에, 오브젝트(312)는 시간 T1에서 검출되지 않을 수도 있다. 그러나, 시간 T2에서, 오브젝트(312)는 호버 공간으로 진입하여 검출될 수도 있다. i/o 인터페이스(300)는, 시간 T1에서 발생한 터치 액션 및 시간 T2에서 발생한 호버 액션을 별개의 액션으로서 취급할지 또는 조합된 액션으로서 취급할지의 여부를 결정하도록 구성될 수도 있다. 결정은 시간 T1과 시간 T2 사이에 경과한 시간의 양, 오브젝트(310)에 대한 터치 액션 및 오브젝트(312)에 대한 호버 액션과 연관되는 사용자 인터페이스 엘리먼트에 의존할 수도 있거나, 또는 다른 정보의 함수일 수도 있다.
시간 성분의 예시로서, 터치 및 호버 액션이 시간의 미리 결정된 임계치 내에서 발생하면, 액션은 조합된 터치 및 호버 액션인 것으로 간주될 수도 있다. 그러나, 터치 및 호버 액션이 시간의 임계량보다 더 많이 분리되면, 이들은 별개의 액션으로서 간주될 수도 있다. '시간의 임계량은, 예를 들면, 0.01초 미만, 0.1초 미만, 0.5초 미만, 1초 미만, 또는 다른 시구간일 수도 있다. 일 실시형태에서, 상이한 시간 임계치가 사용될 수도 있다. 일 실시형태에서, 시간의 임계량은 구성가능할 수도 있다.
사용자 인터페이스 성분의 예시로서, 터치 액션이 소정의 사용자 인터페이스 엘리먼트(예를 들면, 시프트 키)와 연관되면, 시프트 키를 터치하는 것과 키스트로크를 입력하기 위한 호버 액션 사이에서 경과하는 시간의 양은 무관할 수도 있다. 시프트 키가 설명되지만 터치 및 호버 조합은 상이한 애플리케이션에서 사용될 수도 있다. 이동시킬 캐릭터 또는 운송수단(vehicle)(예를 들면, 헬리콥터)을 선택하기 위해 터치 액션이 사용될 수도 있고 캐릭터 또는 운송수단을 이동시킬 방향 및 속도를 나타내기 위해 호버 액션이 사용될 수도 있는 비디오 게임을 고려한다. 사용자가 그들의 손가락을 스크린 가까이에서 호버링하면, 캐릭터는, 사용자가 그들의 손가락을 스크린으로부터 더 멀리 떨어져 호버링하는 경우보다 더 빨리 이동할 수도 있다. 다른 비디오 게임에서, 호버 액션은 발사할(fire) 무기를 선택하기 위해 사용될 수도 있다. 예를 들면, 무기를 선택하기 위해 머신건 위에서 호버링할 수도 있고 그 다음 머신건이 겨냥될 것으로 여겨지는 스크린 상을 탭할 수도 있다. 다른 비디오 게임에서, 시작 지점 및 종료 지점을 선택하기 위해 순서가 정해진 터치 액션의 쌍이 사용될 수도 있고 속도 및 강도(intensity)를 나타내기 위해 후속하는 호버 액션이 사용될 수도 있다. 예를 들면, 하나의 손가락을 이용한 제1 터치는 화염방사기로부터의 화염의 원천(origin)을 나타낼 수도 있고, 동일한 손가락을 이용한 제2 터치는 화염이 보내져야 하는 방향을 나타낼 수도 있고, 별개의 손가락, 펜, 또는 스타일러스를 이용한 호버 액션은 화염의 강도를 나타낼 수도 있다. 강도는, 호버링하는 오브젝트(예를 들면, 손가락, 스타일러스)를 스크린에 더 가까이 또는 스크린으로부터 더 멀리 이동시키는 것에 의해 변동될 수도 있다. 타이핑 및 비디오 게임이 설명되지만, 조합된 터치 및 호버 액션의 다른 조합이 수행될 수도 있다.
동시적 터치 및 호버 액션이 어떻게 핸들링되어야 하는지에 관해 상이한 사용자는 상이한 소망을 가질 수도 있다. 따라서, 일 실시형태에서, 예시적인 장치 및 방법은, 사용자, 프로그램, 프로세스, 또는 다른 액터(actor)가 i/o 인터페이스(300)를 구성하거나 재구성할 수도 있게 하는 애플리케이션 프로그래밍 인터페이스(application programming interface; API)를 제공할 수도 있다. 따라서, 한 사용자는 터치가 주(primary)가 되고 호버가 부(secondary)가 되는 것을 원할 수도 있고, 다른 사용자는 호버가 주가 되고 터치가 부가 되는 것을 원할 수도 있고, 다른 사용자는 주/부 순서가 존재하지 않기를 원할 수도 있다. 추가적으로, 사용자는, 상이한 애플리케이션에 대해 또는 상이한 시간에서, 상이한 순서화, 제스쳐, 또는 임계 시간을 원할 수도 있다. 구성은 또한, 식별되고 핸들링되어야 하는 상이한 터치 및 호버 액션의 조합을 식별할 수도 있다. 구성은 또한 터치 및 호버 액션을 핸들링하기 위한 정보를 제공할 수도 있다. 예를 들면, 구성은 콜백 어드레스, 소켓, 서비스, 프로세스, 또는 액션을 핸들링하고 조합된 액션에 응답하여 사용자 인터페이스 엘리먼트를 제어하는 데 참여할 수도 있는 다른 엔티티를 포함할 수도 있다. 일 실시형태에서, 구성은 i/o 인터페이스(300)를 지원하는 디바이스에서의 로직을 사용하여 수행될 수도 있지만, 다른 실시형태에서는, 구성은 디바이스와 분리되어 수행될 수도 있다.
도 4는 터치 및 호버 감지 i/o 인터페이스(400)를 예시한다. 라인(420)은 i/o 인터페이스(400)와 연관되는 호버 공간의 한계를 묘사한다. 라인(420)은 i/o 인터페이스(400)로부터의 일정 거리(430)에서 위치결정된다. 호버 공간은 i/o 인터페이스(400)와 라인(420) 사이에 존재할 수도 있다. 직선이 예시되지만, 호버 공간은 사이즈 및 형상이 변경될 수도 있다.
도 4는 i/o 인터페이스(400)를 터치하고 있는 오브젝트(410) 및 i/o 인터페이스(400)를 터치하고 있는 오브젝트(412)를 예시한다. 추가적으로, 도 4는 호버 공간에서 호버링하고 있는 오브젝트(414) 및 호버 공간에서 호버링하고 있는 오브젝트(416)를 예시한다. 오브젝트(416)는 i/o 인터페이스(400) 상에 디스플레이되는 특정한 사용자 인터페이스 엘리먼트(490) 위에서 호버링하고 있다. 몇몇 터치 및 호버 액션은 먼저 i/o 인터페이스(400)를 터치하는 것 및 그 다음 호버 액션(예를 들면, 타이핑)을 수행하는 것을 수반할 수도 있지만, 몇몇 터치 및 호버 액션은 먼저 사용자 인터페이스 엘리먼트(490) 위에서 호버링하는 것 및 그 다음 추가적인 터치 또는 호버 액션을 수행하는 것을 수반할 수도 있다. i/o 인터페이스(400)가 다수의 터치 이벤트와 다수의 호버 이벤트, 이벤트가 발생하는 순서, 및 이벤트의 조합을 검출할 수 있기 때문에, 다양한 세트의 사용자 인터페이스 상호작용이 가능하다. 예를 들면, 오브젝트(416)는 페인팅 애플리케이션에서 사용될 컬러를 선택하기 위해 사용자 인터페이스 엘리먼트(490) 위에서 호버링할 수도 있다. 사용자 인터페이스 엘리먼트(490)는, 별개의 컬러 및 별개의 컬러 사이의 전환을 형성하는 혼합된 컬러 둘 다가 이용가능한 팔레트일 수도 있다. 엘리먼트(490) 위에서 오브젝트(416)가 호버링하는 거리는, 단일 컬러가 선택되는지 또는 컬러의 조합이 선택되는지의 여부를 제어할 수도 있다. 오브젝트(410 및 412)는 오브젝트(416)에 의해 선택되는 컬러를 이용하여 페인팅되어야 하는 라인을 식별할 수도 있다. 오브젝트(414)는 라인의 두께를 제어할 수도 있다. 예를 들면, i/o 인터페이스(400)에 더 가까운 호버링 오브젝트(414)는 더 얇은 라인을 생성할 수도 있고 한편, i/o 인터페이스(400)로부터 더 멀리 떨어진 호버링 오브젝트(414)는 더 두꺼운 라인을 생성할 수도 있다.
후속하는 상세한 설명의 몇몇 부분은, 메모리 내의 데이터 비트에 대한 연산의 심볼 표현 및 알고리즘의 관점에서 제공된다. 이들 알고리즘 설명 및 표현은 기술분야에서 숙련된 자에 의해 그들의 작업의 실체(substance)를 타인에게 전달하기 위해 사용된다. 알고리즘은 결과를 생성하는 동작의 시퀀스인 것으로 간주된다. 동작은, 전자적 값의 형태를 취할 수도 있는 물리량을 생성하는 것 및 조작하는 것을 포함할 수도 있다. 전자적 값의 형태의 물리량을 생성하거나 조작하는 것은 명확한 유형의 유용한 실세계 결과를 생성한다.
원칙적으로 일반적인 사용의 이유로 인해, 이들 신호를 비트, 값, 엘리먼트, 심볼, 캐릭터, 항, 숫자, 및 다른 용어로 지칭하는 것이 때때로 편리하다는 것이 증명되었다. 그러나, 이들 및 유사한 용어는 적절한 물리적 양과 연관될 것이고 단지 이들 양에 적용되는 편리한 라벨에 불과하다는 것을 명심해야 한다. 그렇지 않다고 구체적으로 언급되지 않는 한, 설명의 전체에 걸쳐, 프로세싱, 컴퓨팅, 및 결정하는을 포함하는 용어는, 컴퓨터 시스템, 로직, 프로세서, 또는 물리량(예를 들면, 전자적 값)으로 표현되는 데이터를 조작하고 변환하는 유사한 전자 디바이스의 액션 또는 프로세스를 지칭한다는 것이 인식된다.
예시적인 방법은 흐름도를 참조로 더 잘 인식될 수도 있다. 간략화를 위해, 예시된 방법론은 일련의 블록으로서 나타내어지고 설명된다. 그러나, 그 방법론은 블록의 순서에 의해 제한되지 않을 수도 있는데, 그 이유는, 몇몇 실시형태에서, 블록은 도시되거나 설명되는 것과는 상이한 순서로 발생할 수도 있기 때문이다. 또한, 예시적인 방법론을 구현하기 위해, 모든 예시된 블록보다 더 적은 블록이 요구될 수도 있다. 블록은 결합되거나 다수의 컴포넌트로 분리될 수도 있다. 또한, 추가적인 또는 대안적인 방법론은, 추가적인 예시되지 않은 블록을 활용할 수 있다.
도 5는 동시적 터치 및 호버 인터페이스와 연관되는 예시적인 방법(500)을 예시한다. 방법(500)은, 530에서, 입력/출력 인터페이스와의 터치 상호작용을 검출하는 것을 포함한다. 방법(500)은, 540에서, 입력/출력 인터페이스와의 호버 상호작용을 검출하는 것을 포함한다. 터치 상호작용 및 호버 상호작용은 관련되고 적어도 부분적으로 동시에 동작하며 따라서 별개의 이벤트로서 또는 조합된 이벤트로서 동시에 검출될 수 있다.
일 실시형태에서, 530에서 터치 상호작용을 검출하는 것은, 검출기로부터 제1 신호를 수신하는 것을 수반하고, 540에서 호버 상호작용을 검출하는 것은, 검출기로부터 제2 신호를 수신하는 것을 수반한다. 이것은 이벤트를 동시의 별개의 이벤트로서 검출하고 있다. 검출기는, 예를 들면, 용량성 노드의 세트를 포함할 수도 있다. 터치를 검출하는 것과 연관되는 신호 및 호버를 검출하는 것과 연관되는 신호인 두 개의 별개의 신호가 설명되지만, 일 실시형태에서는, 터치 상호작용을 검출하는 것 및 호버 상호작용을 검출하는 것은 검출기로부터 단일의 신호를 수신하는 것을 포함할 수도 있다. 이것은 이벤트를 조합된 이벤트로서 검출하고 있다. 단일의 신호는, 별개의 터치 및 호버 이벤트에 관한 별개의 신호를 수신하는 대신, 조합된 터치 및 호버 이벤트에 관한 정보를 제공할 수도 있다.
일 실시형태에서, 터치 상호작용 및 호버 상호작용 둘 다는 동일한 오브젝트에 의해 수행될 수도 있다. 예를 들면, 사용자는 엘리먼트를 선택하기 위해 사용자 인터페이스 엘리먼트 위에서 손가락을 호버링할 수도 있고, 사용자 인터페이스 엘리먼트에 의해 제공되는 특정 피쳐를 선택하기 위해 엘리먼트의 일부를 터치할 수도 있고, 그 다음, 제공되는 피쳐의 한 양태를 제어하기 위해 호버링할 수도 있다. 다른 실시형태에서, 터치 상호작용 및 호버 상호작용은 두 개의 별개의 오브젝트에 의해 수행될 수도 있다. 예를 들면, 사용자는 한 아이템을 선택하기 위해 용량성 팁을 갖는 스타일러스를 사용할 수도 있고 선택된 아이템에 의해 수행되는 액션을 제어하기 위해 손가락을 사용할 수도 있다.
방법(500)은 또한, 550에서, 터치 상호작용 및 호버 상호작용과 연관되는 조합된 터치 및 호버 상호작용을 식별하는 것을 포함할 수도 있다. 조합된 터치 및 호버 상호작용은, 하나 이상의 호버 상호작용과 적어도 부분적으로 병렬로(예를 들면, 부분적으로 동시에, 부분적으로 함께) 발생하는 하나 이상의 터치에 의존할 수도 있다. 일 실시형태에서, 터치 상호작용은, 순차적으로 또는 적어도 부분적으로 병렬로 발생하는 두 개 이상의 터치 상호작용을 포함할 수도 있다. 예를 들면, 사용자는 비디오 게임 효과(예를 들면, 화염)에 대한 시작 위치를 식별하기 위해 제1 위치에서 i/o 인터페이스를 터치할 수도 있고 그 효과의 종료 위치를 식별하기 위해 제2 위치에서 i/o 인터페이스를 터치할 수도 있다. 추가적으로, 호버 상호작용은, 순차적으로 또는 적어도 부분적으로 병렬로 발생하는 두 개 이상의 호버 상호작용을 포함할 수도 있다. 예를 들면, 사용자는, 가상 바이올린 스트링으로부터 사운드를 생성하는 것과 연관되는 강도를 나타내기 위해, 제1 위치 위에서 그리고 제1 높이에서 제1 손가락을 호버링할 수도 있고, 가상 바이올린 스트링에 의해 생성되는 사운드와 연관되는 효과(예를 들면, 잔향(reverb))를 나타내기 위해, 제2 위치 위에서 그리고 제2 높이에서 제2 손가락을 호버링할 수도 있다.
방법(500)은 또한, 560에서, 조합된 터치 및 호버 상호작용의 기능으로서 디바이스를 선택적으로 제어하는 것을 포함할 수도 있다. 일 실시형태에서, 조합된 터치 및 호버 상호작용의 기능으로서 디바이스를 선택적으로 제어하는 것은, 입력/출력 인터페이스로부터 입력 신호를 제공하는 것을 포함한다. 예를 들면, 조합된 터치 및 호버 상호작용은 텍스트 박스에 입력될 문자, 도면에 추가될 그래픽, 한자 문자를 만들기 위해 사용될 브러시 스트로크, 또는 다른 입력을 식별할 수도 있다. 일 실시형태에서, 조합된 터치 및 호버 상호작용의 기능으로서 디바이스를 선택적으로 제어하는 것은, 입력/출력 인터페이스에 출력 신호를 제공하는 것을 포함한다. 예를 들면, 조합된 터치 및 호버 상호작용은, 가상 페인팅 프로그램에서 디스플레이될 브러시 스트로크 위치, 폭, 컬러, 및 강도를 식별할 수도 있다. 마찬가지로, 조합된 터치 및 호버 상호작용은, 가상 음악 악기에 의해 연주될 소망의 음표, 볼륨, 및 반향을 식별할 수도 있다.
더 일반적으로는, 터치 상호작용은 사용자 인터페이스 엘리먼트의 제1 속성을 제어할 수도 있고 호버 상호작용은 사용자 인터페이스 엘리먼트의 제2 상이한 속성을 제어할 수도 있다. 조합된 터치 및 호버 상호작용은 공동 작용하여 제1 속성 및 제2 속성을 동시에 제어할 수 있다. 제1 속성은 디스플레이할 사용자 인터페이스 엘리먼트의 선택일 수도 있고 제2 속성은 사용자 인터페이스 엘리먼트의 특성일 수도 있다.
방법(500)은 상이한 애플리케이션에 의해 상이한 방식으로 사용될 수도 있다. 따라서, 조합된 터치 및 호버 상호작용의 기능으로서 디바이스를 선택적으로 제어하는 것은, 타이핑 애플리케이션을 제어하는 것, 비디오 게임을 제어하는 것, 가상 페인팅 애플리케이션을 제어하는 것, 가상 음악 악기를 제어하는 것, 또는 다른 애플리케이션을 제어하는 것을 포함할 수도 있다.
도 6은 방법(500)(도 5)과 유사한 예시적인 방법(600)을 예시한다. 예를 들면, 방법(600)은, 630에서 터치 상호작용을 검출하는 것, 640에서 호버 상호작용을 검출하는 것, 640에서 조합된 터치 및 호버 이벤트를 식별하는 것, 및 650에서 i/o 인터페이스를 제어하는 것을 포함한다. 그러나, 방법(600)은 또한 추가적인 액션을 포함한다.
종래, 사용자 액션의 외관, 동작, 및 다른 속성은 온스크린 구성을 통해 구성가능하였을 수도 있다. 가능했었던 구성은, 만약 있다면, 프로그램적 제어를 통해서가 아니라, i/o 인터페이스와의 사용자 상호작용을 통해 발생했을 수도 있다. 추가적으로, 동시적 터치 액션 및 호버 액션이 허용되지 않았기 때문에, 동시적 터치 및 호버 액션의 구성은 존재하지 않았다. 예시적인 장치 및 방법은, 동시적 터치 및 호버 액션을 지원하는 구성에 대해 더 많이 구성가능한 그리고 확장가능한 방식을 제공한다. 이 구성가능성을 지원하기 위해, 방법(600)은, 610에서, 인바운드 메시지(inbound message)를 수신하는 것을 포함할 수도 있다. 그 메시지는, 예를 들면, 디바이스 상에서 실행하고 있는 프로세스에 의해 제공되는 애플리케이션 프로그램 인터페이스(API)를 통해 수신될 수도 있다. 상이한 실시형태에서, 인바운드 메시지는 또한, 예를 들면, 소켓, 원격 프로시져 호출, 인터럽트, 또는 공유 메모리를 포함하는 다른 메시지 전달 방식을 사용하여 수신될 수도 있다. 인바운드 메시지는, 수용될 조합의 타입을 제어하는 구성 정보, 다수의 터치를 파싱하는 방법, 다수의 호버를 파싱하는 방법, 동시적 액션을 파싱하는 방법, 액션의 조합을 파싱하는 방법, 별개의 그러나 관련된 액션에 대한 시간 간격, 이벤트 핸들러에 대한 콜백 어드레스, 또는 다른 정보를 포함할 수도 있다. 방법(600)은, 610에서 인바운드 메시지를 수신하는 기능으로서, 어떤 조합이 수용되는지를 그리고 그 조합이 어떻게 핸들링되는지를 선택적으로 재구성할 수도 있다.
사용자는 터치 감지 및 호버 감지 스크린과 상이한 시간에 상이한 방식으로 상호작용할 수도 있다. 예를 들면, 제1 시간에 사용자는 텍스팅 애플리케이션을 사용하고 있을 수도 있고, 제2 시간에 사용자는 사진을 편집하고 있을 수도 있고, 제3 시간에 사용자는 그들의 이메일을 핸들링하고 있을 수도 있다. 상이한 애플리케이션은, 사용자가 상이한 방식으로 상호작용할 수도 있게 하는 상이한 타입의 인터페이스를 구비할 수도 있다. 사용자는 그들의 집게 손가락을 이용하여 그들의 텍스트 애플리케이션과 상호작용할 수도 있고, 그들의 엄지손가락을 이용하여 그들의 이메일 애플리케이션과 상호작용할 수도 있고, 다수의 손가락을 이용하여 비디오 게임과 상호작용할 수도 있고, 전자 페인트 브러시 및 다수의 손가락을 이용하여 페인팅 애플리케이션과 상호작용할 수도 있다. 가상의 음악 악기와 연관되는 사용자 인터페이스가 또한 다수의 동시적 터치 및 호버 상호작용을 활용할 수도 있다. 예를 들면, 가상의 바이올린은 연주할 스트링을 선택하기 위해 터치 액션을 그리고 스트링 위에서 활을 켜는 것을 시뮬레이팅하기 위해 호버 액션을 사용할 수도 있다. 호버 액션의 근접도는 악기의 볼륨을 제어할 수도 있다.
도 5 및 도 6이 순차적으로 발생하는 다양한 액션을 예시하지만, 도 5 및 도 6에서 예시되는 다양한 액션은 실질적으로 병렬로 발생할 수 있다는 것이 인식되어야 한다. 예시로서, 제1 프로세스는 터치 액션을 식별할 수 있을 것이고, 제2 프로세스는 호버 액션을 식별할 수 있을 것이고, 제3 프로세스는 조합된 터치 및 호버 액션을 프로세싱할 수 있을 것이다. 세 개의 프로세스가 설명되지만, 더 많은 또는 더 적은 수의 프로세스가 활용될 수 있다는 것 및 경량의 프로세스, 보통의 프로세스, 스레드, 및 다른 방식이 활용될 수 있다는 것이 인식되어야 한다.
일 예에서, 방법은 컴퓨터 실행가능 명령어로서 구현될 수도 있다. 따라서, 일 예에서, 컴퓨터 판독가능 저장 매체는, 머신(예를 들면, 컴퓨터)에 의해 실행되는 경우 머신으로 하여금 방법(500 또는 600)을 포함하는 본원에서 설명되는 또는 청구되는 방법을 수행하게 하는 컴퓨터 실행가능 명령어를 저장할 수도 있다. 열거된 방법과 연관되는 실행가능 명령어가 컴퓨터 판독가능 저장 매체 상에 저장되는 것으로 설명되지만, 본원에서 설명되는 또는 청구되는 다른 예시적인 방법과 연관되는 실행가능 명령어도 컴퓨터 판독가능 저장 매체 상에 또한 저장될 수도 있다는 것이 인식되어야 한다. 상이한 실시형태에서, 본원에서 설명되는 예시적인 방법은 상이한 방식으로 트리거될 수도 있다. 일 실시형태에서, 방법은 사용자에 의해 수동으로 트리거될 수도 있다. 다른 예에서, 방법은 자동으로 트리거될 수도 있다.
도 7은 예시적인 클라우드 동작 환경(700)을 예시한다. 클라우드 동작 환경(700)은 딜리버링 컴퓨팅(delivering computing), 프로세싱, 스토리지, 데이터 관리, 애플리케이션, 및 독립형 제품으로서 보다는 추상적인 서비스로서의 다른 기능성을 지원한다. 서비스는, 하나 이상의 컴퓨팅 디바이스 상에서 하나 이상의 프로세스로서 구현될 수도 있는 가상 서버에 의해 제공될 수도 있다. 몇몇 실시형태에서, 프로세스는 클라우드 서비스를 방해하지 않으면서 서버 사이에서 마이그레이션될 수도 있다. 클라우드에서, 공유된 리소스(예를 들면, 컴퓨팅, 스토리지)는, 서버, 클라이언트, 및 모바일 디바이스를 포함하는 컴퓨터로 네트워크를 통해 제공될 수도 있다. 클라우드 서비스에 액세스하기 위해, 상이한 네트워크(예를 들면, 이더넷, 와이파이, 802.x, 셀룰러)가 사용될 수도 있다. 클라우드와 상호작용하는 사용자는, 서비스(예를 들면, 컴퓨팅, 스토리지)를 실제 제공하고 있는 디바이스의 상세(예를 들면, 위치, 이름, 서버, 데이터베이스)를 알아야 할 필요가 없을 수도 있다. 사용자는, 예를 들면, 웹브라우저, 씬 클라이언트, 모바일 애플리케이션을 통해, 또는 다른 방식으로 클라우드 서비스에 액세스할 수도 있다.
도 7은 클라우드에 상주하는 예시적인 동시적 터치 및 호버 서비스(760)를 예시한다. 동시적 터치 및 호버 서비스(760)는 프로세싱을 수행하기 위해 서버(702) 또는 서비스(704)에 의존할 수도 있고 데이터를 저장하기 위해 데이터 저장소(706) 또는 데이터베이스(708)에 의존할 수도 있다. 단일의 서버(702), 단일의 서비스(704), 단일의 데이터 저장소(706), 및 단일의 데이터베이스(708)가 예시되지만, 서버, 서비스, 데이터 저장소, 및 데이터베이스의 다수의 사례(instance)가 클라우드에 상주할 수도 있으며, 따라서, 동시적 터치 및 호버 서비스(760)에 의해 사용될 수도 있다.
도 7은 클라우드의 동시적 터치 및 호버 서비스(760)에 액세스하는 다양한 디바이스를 예시한다. 디바이스는 컴퓨터(710), 태블릿(720), 랩탑 컴퓨터(730), 개인용 정보 단말(740), 및 모바일 디바이스(예를 들면, 셀룰러 폰, 위성 폰)(750)를 포함한다. 상이한 디바이스를 사용하는 상이한 위치의 상이한 사용자는 상이한 네트워크 또는 인터페이스를 통해 동시적 터치 및 호버 서비스(760)에 액세스할 수도 있다는 것이 가능하다. 일 예에서, 동시적 터치 및 호버 서비스(760)는 모바일 디바이스(750)에 의해 액세스될 수도 있다. 다른 예에서, 동시적 터치 및 호버 서비스(760)의 일부는 모바일 디바이스(750) 상에 상주할 수도 있다. 동시적 터치 및 호버 서비스(760)는, 예를 들면, 터치 및 호버 감지 i/o 인터페이스를 구성하는 것, 조합된 터치 및 호버 액션에 대한 콜백을 핸들링하는 것, 조합된 터치 및 호버 액션을 사용자가 정의하는 것을 허용하는 것, 또는 다른 서비스를 포함하는 액션을 수행할 수도 있다. 일 실시형태에서, 동시적 터치 및 호버 서비스(760)는 본원에서 설명되는 방법(예를 들면, 방법(500), 방법(600))의 일부를 수행할 수도 있다.
도 8은, 일반적으로 802에서 도시되는, 다양한 옵션사항의 하드웨어 및 소프트웨어 컴포넌트를 포함하는 예시적인 모바일 디바이스(800)를 묘사하는 시스템 도면이다. 모바일 디바이스(800)의 컴포넌트(802)는 다른 컴포넌트와 통신할 수 있지만, 예시의 용이성을 위해, 모든 연결이 도시되지는 않는다. 모바일 디바이스(800)는 다양한 컴퓨팅 디바이스(예를 들면, 셀 폰, 스마트 폰, 핸드헬드 컴퓨터, 개인용 정보 단말(Personal Digital Assistant; PDA) 등등)일 수도 있고, 셀룰러 또는 위성 네트워크와 같은 하나 이상의 모바일 통신 네트워크(804)와의 무선의 양방향 통신을 허용할 수도 있다.
모바일 디바이스(800)는, 터치 검출, 호버 검출, 신호 코딩, 데이터 프로세싱, 입력/출력 프로세싱, 파워 제어, 또는 다른 기능을 포함하는 태스크를 수행하기 위한 컨트롤러 또는 프로세서(810)(예를 들면, 신호 프로세서, 마이크로프로세서, 주문형 집적 회로(application specific integrated circuit; ASIC), 또는 다른 제어 및 프로세싱 로직 회로부(circuitry))를 포함할 수 있다. 운영 체제(812)는 컴포넌트(802)의 할당 및 사용량을 제어할 수 있고 애플리케이션 프로그램(814)을 지원할 수 있다. 애플리케이션 프로그램(814)은 모바일 컴퓨팅 애플리케이션(예를 들면, 이메일 애플리케이션, 캘린더, 연락처 매니저(contact manager), 웹브라우저, 메시징 애플리케이션), 또는 다른 컴퓨팅 애플리케이션을 포함할 수 있다.
모바일 디바이스(800)는 메모리(820)를 포함할 수 있다. 메모리(820)는 비착탈식 메모리(822) 또는 착탈식 메모리(824)를 포함할 수 있다. 비착탈식 메모리(822)는 랜덤 액세스 메모리(random access memory; RAM), 리드 온리 메모리(read only memory; ROM), 플래시 메모리, 하드 디스크, 또는 다른 메모리 스토리지 기술을 포함할 수 있다. 착탈식 메모리(824)는, GSM 통신 시스템에서 널리 공지되어 있는 가입자 식별 모듈(Subscriber Identity Module; SIM) 카드 또는 "스마트 카드"와 같은 다른 메모리 스토리지 기술을 포함할 수 있다. 메모리(820)는 운영 체제(812) 및 애플리케이션(814)을 실행하기 위한 데이터 또는 코드를 저장하기 위해 사용될 수 있다. 예시적인 데이터는, 터치 액션 데이터, 호버 액션 데이터, 조합 터치 및 호버 액션 데이터, 사용자 인터페이스 엘리먼트 상태, 웹 페이지, 텍스트, 이미지, 사운드 파일, 비디오 데이터, 또는 하나 이상의 유선 또는 무선 네트워크를 통해 하나 이상의 네트워크 서버 또는 다른 디바이스로 전송될 또는 이들로부터 수신될 다른 데이터 세트를 포함할 수 있다. 메모리(820)는 가입자 식별자, 예컨대, 인터내셔널 모바일 가입자 아이덴티티(International Mobile Subscriber Identity; IMSI), 및 기기 식별자, 예컨대 인터내셔널 모바일 기기 식별자(International Mobile Equipment Identifier; IMEI)를 저장할 수 있다. 식별자는 사용자 또는 기기를 식별하기 위해 네트워크 서버로 전송될 수 있다.
모바일 디바이스(800)는, 터치 및 호버 감지 겸용인 스크린(832), 마이크로폰(834), 카메라(836), 물리적 키보드(838), 또는 트랙볼(840)을 포함하지만 이들로 제한되지는 않는 하나 이상의 입력 디바이스(830)를 지원할 수 있다. 모바일 디바이스(800)는 또한, 스피커(852) 및 디스플레이(854)를 포함하지만 그러나 이들로 제한되지 않는 출력 디바이스(850)를 지원할 수도 있다. 디스플레이(854)는 터치 감지 및 호버 감지 i/o 인터페이스에 통합될 수도 있다. 다른 가능한 입력 디바이스(도시되지 않음)는 가속도계(예를 들면, 1차원, 2차원, 3차원)를 포함한다. 다른 가능한 출력 디바이스(도시되지 않음)는 압전 또는 다른 햅틱 출력 디바이스를 포함할 수 있다. 몇몇 디바이스는 하나보다 많은 입력/출력 기능을 서빙할 수 있다. 입력 디바이스(830)는 내츄럴 사용자 인터페이스(Natural User Interface; NUI)를 포함할 수 있다. NUI는, 마우스, 키보드, 리모콘 등등과 같은 입력 디바이스에 의해 부과되는 인공적 제약이 없는, 사용자가 디바이스와 "자연적인" 방식으로 상호작용하는 것을 가능하게 하는 기술이다. NUI 방법의 예는, 스피치 인식, 터치 및 스타일러스 인식, (스크린 상에서의 그리고 스크린에 인접한 둘 모두에서의) 제스쳐 인식, 에어 제스쳐(air gesture), 머리 및 눈 추적(head and eye tracking), 보이스 및 스피치, 비전, 터치, 제스쳐, 및 머신 지능에 의존하는 것을 포함한다. NUI의 다른 예는, 가속도계/자이로스코프를 사용한 모션 제스쳐 검출, 얼굴 인식, 3차원(3D) 디스플레이, 머리, 눈 및 응시 추적(head, eye and gaze tracking), 몰입형 증강 현실(immersive augmented reality) 및 가상 현실 시스템(이들 모두는 보다 자연적인 인터페이스를 제공함)뿐만 아니라 전기장 감지 전극(electric field sensing electrode)을 사용하여 뇌 활동을 감지하기 위한 기술(EEG(electro-encephalogram; 뇌전도) 및 관련 방법)을 포함한다. 따라서, 하나의 특정한 예에서, 운영 체제(812) 또는 애플리케이션(814)은, 보이스 커맨드를 통해 사용자가 디바이스(800)를 동작시키는 것을 허용하는 보이스 사용자 인터페이스의 일부로서 스피치 인식 소프트웨어를 포함할 수 있다. 또한, 디바이스(800)는, 애플리케이션에 입력을 제공하기 위해 동시적 터치 및 호버 제스쳐를 검출하여 해석하는 것과 같은, 사용자의 공간적 제스쳐를 통한 사용자 상호작용을 허용하는 입력 디바이스 및 소프트웨어를 포함할 수 있다.
무선 모뎀(860)은 안테나(891)에 커플링될 수 있다. 몇몇 예에서, 무선 주파수(radio frequency; RF) 필터가 사용되고 프로세서(810)는 선택된 주파수 대역에 대한 안테나 구성을 선택할 필요가 없다. 무선 모뎀(860)은 프로세서(810)와 외부 디바이스 사이에서 양방향 통신을 지원할 수 있다. 모뎀(860)은 일반적으로 나타내어진 것이며 모바일 통신 네트워크(804)와 통신하기 위한 셀룰러 모뎀 및/또는 다른 무선 기반 모뎀(예를 들면, 블루투스(864) 또는 와이파이(862))을 포함할 수 있다. 무선 모뎀(860)은, 단일의 셀룰러 네트워크 내에서의, 셀룰러 네트워크 사이에서의, 또는 모바일 디바이스와 공중 교환 전화망(public switched telephone network; PSTN) 사이에서의 데이터 및 보이스 통신을 위해, 하나 이상의 셀룰러 네트워크, 예컨대, 모바일 통신용 글로벌 시스템(Global system for mobile communications; GSM) 네트워크와의 통신을 위해 구성될 수도 있다. 모바일 디바이스(800)는 또한, 예를 들면, 근접장 통신(near field communication; NFC) 엘리먼트(892)를 사용하여 로컬하게 통신할 수도 있다.
모바일 디바이스(800)는 적어도 하나의 입력/출력 포트(880), 파워 서플라이(882), 위성 내비게이션 시스템 수신기(884), 예컨대 글로벌 포지셔닝 시스템(Global Positioning System; GPS) 수신기, 가속도계(886), 또는 범용 직렬 버스(Universal Serial Bus; USB) 포트, IEEE 1394(파이어와이어) 포트, RS-232 포트, 또는 다른 포트일 수 있는 물리적 커넥터(890)를 포함할 수도 있다. 예시된 컴포넌트(802)는, 다른 컴포넌트가 제거되거나 추가될 수 있기 때문에, 필수적이거나 또는 모두 포괄하는 것이 아니다.
모바일 디바이스(800)는, 모바일 디바이스(800)에 대한 기능성을 제공하도록 구성되는 동시적 터치 및 호버 로직(899)을 포함할 수도 있다. 예를 들면, 동시적 터치 및 호버 로직(899)은 서비스(예를 들면, 서비스(760), 도 7)와 상호작용하기 위한 클라이언트를 제공할 수도 있다. 본원에서 설명되는 예시적인 방법의 일부는 동시적 터치 및 호버 로직(899)에 의해 수행될 수도 있다. 마찬가지로, 동시적 터치 및 호버 로직(899)은 본원에서 설명되는 장치의 일부를 구현할 수도 있다.
도 9는 동시적 터치 및 호버 인터페이스를 제공하는 장치(900)를 예시한다. 일 예에서, 장치(900)는, 프로세서(910), 메모리(920), 로직의 세트(930), 근접 검출기(960), 터치 검출기(965), 및 터치 감지 및 호버 감지 i/o 인터페이스(950)를 연결하도록 구성되는 인터페이스(940)를 포함한다. 일 실시형태에서, 근접 검출기(960) 및 터치 검출기(965)는, 입력/출력 인터페이스에 대해 터치 감도 및 호버 감도 둘 다를 제공하는 용량성 감지 노드의 세트를 공유할 수도 있다. 장치(900)의 엘리먼트는 서로 통신하도록 구성될 수도 있지만, 그러나 예시의 명확화를 위해 연결이 모두 도시되지는 않았다.
터치 검출기(965)는, 오브젝트(975)가 i/o 인터페이스(950)를 터치할 때를 검출할 수도 있다. 근접 검출기(960)는 장치(900)와 연관되는 호버 공간(970) 안에서 오브젝트(980)를 검출할 수도 있다. 호버 공간(970)은, 예를 들면, i/o 인터페이스(950)에 근접하게 그리고 근접 검출기(960)가 액세스할 수 있는 영역에 배치되는 3차원 볼륨일 수도 있다. 호버 공간(970)은 유한한 경계를 갖는다. 따라서, 근접 검출기(960)는 호버 공간(970) 외부에 위치되는 오브젝트(999)는 검출하지 못할 수도 있다.
장치(900)는, 입력/출력 인터페이스에 의해 검출되는 동시적 터치 및 호버 이벤트에 관한 특성화 데이터를 생성하도록 구성되는 제1 로직(932)을 포함할 수도 있다. 특성화 데이터는, 예를 들면, 터치의 위치, 호버의 위치, 터치가 발생했던 시간, 호버가 발생했던 시간, 터치가 움직이고 있는 방향, 호버가 움직이고 있는 방향, 터치와 연관되는 제스쳐, 호버와 연관되는 제스쳐, 또는 다른 정보를 설명할 수도 있다. 일 실시형태에서, 제1 로직(932)은, 조합된 동시적 터치 및 호버 이벤트와 연관되는 신호로부터 특성화 데이터를 생성할 수도 있다. 다른 실시형태에서, 제1 로직(932)은, 별개의 터치 및 호버 이벤트와 연관되는 신호로부터 특성화 데이터를 생성할 수도 있다.
장치(900)는, 조합된 터치 및 호버 이벤트의 기능으로서, 입력/출력 인터페이스로부터의 입력의 선택적 수신을 제어하도록 또는 입력/출력 인터페이스로의 출력의 선택적 제공을 제어하도록 구성되는 제2 로직(934)을 포함할 수도 있다. 예를 들면, 터치 및 호버 이벤트의 소정의 조합은 소정의 입력이 발생할 것이다(예를 들면, 대문자 E를 텍스트 박스에 추가할 것이다)는 것을 나타낼 수도 있고, 한편 터치 및 호버 이벤트의 다른 조합은, 소정의 출력이 발생할 것이다(예를 들면, 가상의 바이올린 스트링으로부터 사운드를 연주할 것이다, 비디오 게임에서 가상의 화염을 발사할 것이다)는 것을 나타낼 수도 있다.
조합된 터치 및 호버 이벤트는 단일의 터치 부분 및 단일의 호버 부분을 포함할 수도 있다. 일 실시형태에서, 터치 및 호버 이벤트의 터치 부분은 입력/출력 인터페이스(950) 상에서 디스플레이되는 사용자 인터페이스 엘리먼트의 제1 속성을 제어하고 터치 및 호버 이벤트의 호버 부분은 i/o 인터페이스(950) 상에서 디스플레이되는 사용자 인터페이스 엘리먼트의 제2 속성을 제어한다. 예를 들면, 터치 부분은 액션이 발생하는 위치를 식별할 수도 있고 호버 부분은 그 위치에서 발생할 액션을 식별할 수도 있다. 다른 예에서, 터치 부분은 제어될 오브젝트(예를 들면, 가상의 바이올린 스트링)를 식별할 수도 있고 호버 부분은 스트링에 적용할 효과(예를 들면, 활 켜기, 플러킹(plucking)) 및 효과의 강도(예를 들면, 볼륨 제어)를 식별할 수도 있다.
조합된 터치 및 호버 이벤트는 다수의 터치 부분 또는 다수의 호버 부분을 포함할 수도 있다. 일 액션에서, 제1 터치 부분은, 효과(예를 들면, 마법 주문에 의해 생성되는 화염)가 시작될 위치를 식별할 수도 있고, 제2 터치 부분은 효과가 적용될 방향을 식별할 수도 있고, 제1 호버 부분은 효과의 특성(예를 들면, 강도)을 식별할 수도 있고 제2 호버 부분은 효과의 다른 특성(예를 들면, 화염이 펼쳐질 정도)을 식별할 수도 있다. 상이한 애플리케이션에서는, 터치 부분 및 호버 부분의 상이한 조합이 사용될 수 있다.
예를 들면, 터치 및 호버 이벤트의 터치 부분은 입력/출력 인터페이스(950) 상에 두 개 이상의 터치를 포함할 수도 있거나 또는 터치 및 호버 이벤트의 호버 부분은 입력/출력 인터페이스(950)와 연관되는 호버 공간 안에서 두 개 이상의 호버를 포함할 수도 있다. 두 개 이상의 터치 또는 두 개 이상의 호버는, 디바이스(900)와의 다양하고 풍부한 상호작용을 생성하기 위해 적어도 부분적으로 병렬로 발생할 수도 있다.
장치(900)는, 제2 로직(934)이 조합된 터치 및 호버 이벤트를 어떻게 프로세싱할지 재구성하는 제3 로직(936)을 포함할 수도 있다. 제3 로직(936)은, 메시징 인터페이스를 통해 사용자 또는 애플리케이션으로부터 메시지가 수신되는 것에 응답하여 제2 로직(934)을 재구성할 수도 있다.
장치(900)는 메모리(920)를 포함할 수도 있다. 메모리(920)는 비착탈식 메모리 또는 착탈식 메모리를 포함할 수 있다. 비착탈식 메모리는 랜덤 액세스 메모리(RAM), 리드 온리 메모리(ROM), 플래시 메모리, 하드 디스크, 또는 다른 메모리 스토리지 기술을 포함할 수 있다. 착탈식 메모리는 플래시 메모리, 또는 다른 메모리 스토리지 기술, 예컨대 "스마트 카드"를 포함할 수도 있다. 메모리(920)는 사용자 인터페이스 상태 정보, 특성화 데이터, 오브젝트 데이터, 또는 다른 데이터를 저장하도록 구성될 수도 있다.
장치(900)는 프로세서(910)를 포함할 수도 있다. 프로세서(910)는, 예를 들면, 신호 프로세서, 마이크로프로세서, 주문형 집적 회로(ASIC), 또는 신호 코딩, 데이터 프로세싱, 입력/출력 프로세싱, 파워 제어, 또는 다른 기능을 포함하는 태스크를 수행하기 위한 다른 제어 및 프로세싱 로직 회로부일 수도 있다. 프로세서(910)는, 동시적 터치 및 호버 프로세싱을 제공하는 로직(930)과 상호작용하도록 구성될 수도 있다.
일 실시형태에서, 장치(900)는, 로직의 세트(930)의 포함을 통해 특수 목적의 컴퓨터로 변환된 범용 컴퓨터일 수도 있다. 로직의 세트(930)는 입력 및 출력을 수행하도록 구성될 수도 있다. 장치(900)는, 예를 들면, 컴퓨터 네트워크를 통해, 다른 장치, 프로세스, 및 서비스와 상호작용할 수도 있다.
하기에는, 본원에서 활용되는 선택된 용어의 정의를 포함한다. 정의는, 용어의 범위 내에 있는 그리고 구현을 위해 사용될 수도 있는 컴포넌트의 다양한 예 또는 형태를 포함한다. 예는 제한하는 것으로 의도되지 않는다. 용어의 단수 및 복수의 형태 둘 모두는 정의 내에 있을 수도 있다.
"일 실시형태", "한 실시형태", "일 예", 및 "한 예"에 대한 언급은, 그렇게 설명되는 그 실시형태(들) 또는 예(들)가 특정한 피쳐, 구조, 특징, 특성, 엘리먼트, 또는 제한을 포함할 수도 있지만, 모든 실시형태 또는 예가 그 특정한 피쳐, 구조, 특징, 특성, 엘리먼트 또는 제한을 반드시 포함하지는 않는다는 것을 나타낸다. 또한, 어구 "일 실시형태에서"의 반복적인 사용은 반드시 동일한 실시형태를 가리키지는 않지만, 가리킬 수도 있다.
"컴퓨터 판독가능 저장 매체"는, 본원에서 사용되는 바와 같이, 명령어 또는 데이터를 저장하는 매체를 지칭한다. "컴퓨터 판독가능 저장 매체"는 전파된 신호를 지칭하지는 않는다. 컴퓨터 판독가능 저장 매체는 불휘발성 매체, 및 휘발성 매체를 포함하지만 그러나 이들로 제한되지 않는 형태를 취할 수도 있다. 불휘발성 매체는, 예를 들면, 광학 디스크, 자기 디스크, 테이프, 및 다른 매체를 포함할 수도 있다. 휘발성 매체는, 예를 들면, 반도체 메모리, 다이나믹 메모리, 및 다른 메모리를 포함할 수도 있다. 컴퓨터 판독가능 저장 매체의 일반적인 형태는, 플로피 디스크, 플렉시블 디스크, 하드 디스크, 자기 테이프, 다른 자기 매체, 주문형 집적 회로(ASIC), 컴팩트 디스크(compact disk; CD), 랜덤 액세스 메모리(RAM), 리드 온리 메모리(ROM), 메모리 칩 또는 카드, 메모리 스틱, 및 컴퓨터, 프로세서 또는 다른 전자 디바이스가 판독할 수 있는 다른 매체를 포함할 수도 있지만, 이들로 제한되지는 않는다.
"데이터 저장소"는, 본원에서 사용되는 바와 같이, 데이터를 저장할 수 있는 물리적 또는 논리적 엔티티를 가리킨다. 데이터 저장소는, 예를 들면, 데이터베이스, 테이블, 파일, 리스트, 큐, 힙(heap), 메모리, 레지스터, 및 다른 물리적 저장소일 수도 있다. 상이한 예에서, 데이터 저장소는 하나의 논리적 또는 물리적 엔티티 내에 상주할 수도 있거나 또는 두 개 이상의 논리적 또는 물리적 엔티티 사이에서 분산될 수도 있다.
"로직"은 본원에서 사용되는 바와 같이, 기능(들) 또는 액션(들)을 수행하기 위한, 또는 다른 로직, 방법, 또는 시스템으로부터 기능 또는 액션을 야기하기 위한 하드웨어, 펌웨어, 머신 상에서 실행 중인 소프트웨어, 또는 각각의 조합을 포함하지만, 이들로 제한되는 것은 아니다. 로직은 소프트웨어 제어 마이크로프로세서, 이산 로직(예를 들면, ASIC), 아날로그 회로, 디지털 회로, 프로그래밍된 로직 디바이스, 명령어를 포함하는 메모리 디바이스, 및 다른 물리적 디바이스를 포함할 수도 있다. 로직은 하나 이상의 게이트, 게이트의 조합, 또는 다른 회로 컴포넌트를 포함할 수도 있다. 다수의 논리적 로직이 설명되는 경우, 다수의 논리적 로직을 하나의 물리적 로직으로 통합하는 것이 가능할 수도 있다. 마찬가지로, 단일의 논리적 로직이 설명되는 경우, 그 단일의 논리적 로직을 다수의 물리적 로직 사이에 분산시키는 것이 가능할 수도 있다.
상세한 설명 또는 특허청구범위에서 용어 "포함한다(includes)" 또는 "포함하는(including)"이 활용되는 경우, 그 용어가 활용시 청구항에서 전환 어휘(transitional word)로서 해석되기 때문에, 용어 "포함하는(comprising)과 유사한 방식으로 포괄적인 것이 의도된다.
상세한 설명 또는 특허청구범위에서 용어 "또는"이 활용되는 경우(예를 들면, A 또는 B), "A 또는 B 또는 둘 모두"를 의미하는 것이 의도된다. "둘 모두가 아닌 A 또는 B만"을 나타내기를 본 출원인이 의도하는 경우, 용어 "둘 모두가 아닌 A 또는 B만"이 활용될 것이다. 따라서, 본원에서의 용어 "또는"의 사용은, 배타적 용도가 아닌 포괄적 용도이다. Bryan A. Garner에 의한 A Dictionary of Modern Legal Usage 624 페이지(2판, 1995)를 참조하라.
비록 본 주제가 구조적 피쳐 또는 방법론적 액트(act)에 특유한 언어로 설명되었지만, 첨부의 특허청구범위에서 정의되는 주제가 상기에서 설명되는 특정 피쳐 또는 액트로 반드시 제한되는 것은 아니다는 것이 이해되어야 한다. 오히려, 상기에서 설명되는 특정 피쳐 및 액트는 특허청구범위를 구현하는 예시적인 형태로서 개시된다.

Claims (15)

  1. 터치 감지(touch-sensitive) 및 호버 감지(hover-sensitive) 겸용인 입력/출력 인터페이스를 갖는 디바이스와 인터페이싱하기 위한 방법에 있어서,
    상기 입력/출력 인터페이스와의 터치 상호작용을 검출하는 단계;
    상기 입력/출력 인터페이스와의 호버 상호작용 - 상기 터치 상호작용 및 상기 호버 상호작용은 관련되며 적어도 부분적으로 동시에 동작함 - 을 검출하는 단계;
    상기 터치 상호작용 및 상기 호버 상호작용과 연관되는 조합된(combined) 터치 및 호버 상호작용을 식별하는 단계; 및
    상기 조합된 터치 및 호버 상호작용의 기능으로서 상기 디바이스를 선택적으로 제어하는 단계를 포함하는 인터페이싱 방법.
  2. 제1항에 있어서,
    상기 터치 상호작용을 검출하는 단계는 검출기로부터 제1 신호를 수신하는 단계를 포함하고, 상기 호버 상호작용을 검출하는 단계는 상기 검출기로부터 제2 신호를 수신하는 단계를 포함하는 것인 인터페이싱 방법.
  3. 제1항에 있어서,
    상기 터치 상호작용을 검출하는 단계 및 상기 호버 상호작용을 검출하는 단계는 검출기로부터 단일의 신호를 수신하는 단계를 포함하는 것인 인터페이싱 방법.
  4. 제1항에 있어서,
    상기 터치 상호작용 및 상기 호버 상호작용은 동일한 오브젝트에 의해 수행되는 것인 인터페이싱 방법.
  5. 제1항에 있어서,
    상기 터치 상호작용 및 상기 호버 상호작용은 두 개의 별개의 오브젝트들에 의해 수행되는 것인 인터페이싱 방법.
  6. 제1항에 있어서,
    상기 터치 상호작용은 두 개 이상의 터치 상호작용들이고, 상기 두 개 이상의 터치 상호작용들은 순차적으로 또는 적어도 부분적으로 병렬로 발생하는 것인 인터페이싱 방법.
  7. 제1항에 있어서,
    상기 호버 상호작용은 두 개 이상의 호버 상호작용들이고, 상기 두 개 이상의 호버 상호작용들은 순차적으로 또는 적어도 부분적으로 병렬로 발생하는 것인 인터페이싱 방법.
  8. 제6항에 있어서,
    상기 호버 상호작용은 두 개 이상의 호버 상호작용들이고, 상기 두 개 이상의 호버 상호작용들은 순차적으로 또는 적어도 부분적으로 병렬로 발생하는 것인 인터페이싱 방법.
  9. 제1항에 있어서,
    상기 조합된 터치 및 호버 상호작용의 기능으로서 상기 디바이스를 선택적으로 제어하는 단계는 상기 입력/출력 인터페이스로부터 입력 신호를 제공하는 단계를 포함하는 것인 인터페이싱 방법.
  10. 제1항에 있어서,
    상기 조합된 터치 및 호버 상호작용의 기능으로서 상기 디바이스를 선택적으로 제어하는 단계는 상기 입력/출력 인터페이스에 출력 신호를 제공하는 단계를 포함하는 것인 인터페이싱 방법.
  11. 제9항에 있어서,
    상기 조합된 터치 및 호버 상호작용의 기능으로서 상기 디바이스를 선택적으로 제어하는 단계는 상기 입력/출력 인터페이스에 출력 신호를 제공하는 단계를 포함하는 것인 인터페이싱 방법.
  12. 제1항에 있어서,
    상기 조합된 터치 및 호버 상호작용의 기능으로서 상기 디바이스를 선택적으로 제어하는 단계는 타이핑 애플리케이션을 제어하는 단계, 비디오 게임을 제어하는 단계, 가상 페인팅 애플리케이션을 제어하는 단계, 또는 가상 음악 악기를 제어하는 단계를 포함하는 것인 인터페이싱 방법.
  13. 제1항에 있어서,
    상기 터치 상호작용은 사용자 인터페이스 엘리먼트의 제1 속성(attribute)을 제어하고, 상기 호버 상호작용은 상기 사용자 인터페이스 엘리먼트의 제2 속성을 제어하며, 상기 조합된 터치 및 호버 상호작용은 공동 작용하여(coordinate) 상기 제1 속성 및 상기 제2 속성을 동시에 제어하는 것인 인터페이싱 방법.
  14. 제13항에 있어서,
    상기 제1 속성은 디스플레이할 사용자 인터페이스 엘리먼트의 선택이고, 상기 제2 속성은 상기 사용자 인터페이스 엘리먼트의 특성(property)인 것인 인터페이싱 방법.
  15. 장치에 있어서,
    터치 감지 및 호버 감지 겸용인 입력/출력 인터페이스 - 상기 입력/출력 인터페이스는 상기 입력/출력 인터페이스에 대해 터치 감도 및 호버 감도 둘 다를 제공하는 용량성 감지 노드들의 세트를 포함함 - ;
    상기 입력/출력 인터페이스에 의해 검출되는 동시적 터치 및 호버 이벤트에 관한 특성화 데이터(characterization data)를 생성하도록 구성되는 제1 로직;
    조합된 터치 및 호버 이벤트의 기능으로서, 상기 입력/출력 인터페이스로부터의 입력을 선택적으로 수신하는 것을 제어하도록 또는 상기 입력/출력 인터페이스로의 출력을 선택적으로 제공하는 것을 제어하도록 구성되는 제2 로직; 및
    상기 제2 로직이 상기 조합된 터치 및 호버 이벤트를 어떻게 프로세싱할지 재구성하는 제3 로직 - 상기 제3 로직은 메시징 인터페이스를 통해 사용자 또는 애플리케이션으로부터 메시지가 수신되는 것에 응답하여 상기 제2 로직을 재구성함 - 을 포함하는 장치.
KR1020167008759A 2013-09-16 2014-09-12 동시적 호버 및 터치 인터페이스 KR20160057407A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/027,288 US20150077345A1 (en) 2013-09-16 2013-09-16 Simultaneous Hover and Touch Interface
US14/027,288 2013-09-16
PCT/US2014/055289 WO2015038842A1 (en) 2013-09-16 2014-09-12 Simultaneous hover and touch interface

Publications (1)

Publication Number Publication Date
KR20160057407A true KR20160057407A (ko) 2016-05-23

Family

ID=51626615

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020167008759A KR20160057407A (ko) 2013-09-16 2014-09-12 동시적 호버 및 터치 인터페이스

Country Status (10)

Country Link
US (1) US20150077345A1 (ko)
EP (1) EP3047367A1 (ko)
JP (1) JP2016538659A (ko)
KR (1) KR20160057407A (ko)
CN (1) CN105612486A (ko)
AU (1) AU2014318661A1 (ko)
CA (1) CA2922393A1 (ko)
MX (1) MX2016003187A (ko)
RU (1) RU2016109187A (ko)
WO (1) WO2015038842A1 (ko)

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9582178B2 (en) * 2011-11-07 2017-02-28 Immersion Corporation Systems and methods for multi-pressure interaction on touch-sensitive surfaces
US10025489B2 (en) * 2013-09-16 2018-07-17 Microsoft Technology Licensing, Llc Detecting primary hover point for multi-hover point device
US9170736B2 (en) * 2013-09-16 2015-10-27 Microsoft Corporation Hover controlled user interface element
JP6039527B2 (ja) * 2013-10-18 2016-12-07 楽天株式会社 動画生成装置、動画生成方法及び動画生成プログラム
FR3017723B1 (fr) * 2014-02-19 2017-07-21 Fogale Nanotech Procede d'interaction homme-machine par combinaison de commandes tactiles et sans contact
US10719132B2 (en) * 2014-06-19 2020-07-21 Samsung Electronics Co., Ltd. Device and method of controlling device
US9778749B2 (en) 2014-08-22 2017-10-03 Google Inc. Occluded gesture recognition
US11169988B2 (en) 2014-08-22 2021-11-09 Google Llc Radar recognition-aided search
US10817065B1 (en) 2015-10-06 2020-10-27 Google Llc Gesture recognition using multiple antenna
KR102559030B1 (ko) * 2016-03-18 2023-07-25 삼성전자주식회사 터치 패널을 포함하는 전자 장치 및 그 제어 방법
US11003345B2 (en) 2016-05-16 2021-05-11 Google Llc Control-article-based control of a user interface
US10353478B2 (en) * 2016-06-29 2019-07-16 Google Llc Hover touch input compensation in augmented and/or virtual reality
US10671450B2 (en) * 2017-05-02 2020-06-02 Facebook, Inc. Coalescing events framework
CN108031112A (zh) * 2018-01-16 2018-05-15 北京硬壳科技有限公司 用于控制终端的游戏手柄
JP7280032B2 (ja) * 2018-11-27 2023-05-23 ローム株式会社 入力デバイス、自動車
US10884522B1 (en) * 2019-06-19 2021-01-05 Microsoft Technology Licensing, Llc Adaptive hover operation of touch instruments
JP7316383B2 (ja) 2019-07-26 2023-07-27 グーグル エルエルシー Imuおよびレーダーを介した認証管理
US11868537B2 (en) 2019-07-26 2024-01-09 Google Llc Robust radar-based gesture-recognition by user equipment
WO2021040748A1 (en) 2019-08-30 2021-03-04 Google Llc Visual indicator for paused radar gestures
FR3107765B3 (fr) 2020-02-28 2022-03-11 Nanomade Lab Capteur de détection de proximité et de mesure de force de contact combiné
US11681399B2 (en) * 2021-06-30 2023-06-20 UltraSense Systems, Inc. User-input systems and methods of detecting a user input at a cover member of a user-input system

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060277466A1 (en) * 2005-05-13 2006-12-07 Anderson Thomas G Bimodal user interaction with a simulated object
KR101443341B1 (ko) * 2008-06-30 2014-11-03 엘지전자 주식회사 휴대 단말기 및 그 동작제어 방법
US9323398B2 (en) * 2009-07-10 2016-04-26 Apple Inc. Touch and hover sensing
US8587532B2 (en) * 2009-12-18 2013-11-19 Intel Corporation Multi-feature interactive touch user interface
US8232990B2 (en) * 2010-01-05 2012-07-31 Apple Inc. Working with 3D objects
US9092125B2 (en) * 2010-04-08 2015-07-28 Avaya Inc. Multi-mode touchscreen user interface for a multi-state touchscreen device
US8878821B2 (en) * 2010-04-29 2014-11-04 Hewlett-Packard Development Company, L.P. System and method for providing object location information and physical contact information
US8982060B2 (en) * 2010-08-27 2015-03-17 Apple Inc. Touch and hover sensor compensation
US8933888B2 (en) * 2011-03-17 2015-01-13 Intellitact Llc Relative touch user interface enhancements
EP2575006B1 (en) * 2011-09-27 2018-06-13 Elo Touch Solutions, Inc. Touch and non touch based interaction of a user with a device
US9152226B2 (en) * 2012-06-15 2015-10-06 Qualcomm Incorporated Input method designed for augmented reality goggles
US20140007115A1 (en) * 2012-06-29 2014-01-02 Ning Lu Multi-modal behavior awareness for human natural command control
US8928609B2 (en) * 2012-07-09 2015-01-06 Stmicroelectronics International N.V. Combining touch screen and other sensing detections for user interface control
US20140267004A1 (en) * 2013-03-13 2014-09-18 Lsi Corporation User Adjustable Gesture Space
US20140267142A1 (en) * 2013-03-15 2014-09-18 Qualcomm Incorporated Extending interactive inputs via sensor fusion
US9170676B2 (en) * 2013-03-15 2015-10-27 Qualcomm Incorporated Enhancing touch inputs with gestures
US9405461B2 (en) * 2013-07-09 2016-08-02 Blackberry Limited Operating a device using touchless and touchscreen gestures

Also Published As

Publication number Publication date
MX2016003187A (es) 2016-06-24
RU2016109187A (ru) 2017-09-20
JP2016538659A (ja) 2016-12-08
CN105612486A (zh) 2016-05-25
AU2014318661A1 (en) 2016-03-03
RU2016109187A3 (ko) 2018-07-13
CA2922393A1 (en) 2015-03-19
EP3047367A1 (en) 2016-07-27
US20150077345A1 (en) 2015-03-19
WO2015038842A1 (en) 2015-03-19

Similar Documents

Publication Publication Date Title
KR20160057407A (ko) 동시적 호버 및 터치 인터페이스
US10521105B2 (en) Detecting primary hover point for multi-hover point device
US20150205400A1 (en) Grip Detection
US20160103655A1 (en) Co-Verbal Interactions With Speech Reference Point
US20150199030A1 (en) Hover-Sensitive Control Of Secondary Display
US10120568B2 (en) Hover controlled user interface element
US20150234468A1 (en) Hover Interactions Across Interconnected Devices
US20140210742A1 (en) Emulating pressure sensitivity on multi-touch devices
US9262012B2 (en) Hover angle
US20150160819A1 (en) Crane Gesture
EP3107632A1 (en) Advanced game mechanics on hover-sensitive devices
EP3186983B1 (en) Phonepad
EP3204843B1 (en) Multiple stage user interface
US20170277337A1 (en) Method and Electronic Device for Controlling Terminal

Legal Events

Date Code Title Description
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid