KR20110104096A - 모바일 디바이스들을 위한 사용자 인터페이스 - Google Patents
모바일 디바이스들을 위한 사용자 인터페이스 Download PDFInfo
- Publication number
- KR20110104096A KR20110104096A KR1020117018422A KR20117018422A KR20110104096A KR 20110104096 A KR20110104096 A KR 20110104096A KR 1020117018422 A KR1020117018422 A KR 1020117018422A KR 20117018422 A KR20117018422 A KR 20117018422A KR 20110104096 A KR20110104096 A KR 20110104096A
- Authority
- KR
- South Korea
- Prior art keywords
- content
- computing device
- mobile computing
- display
- user interface
- Prior art date
Links
- 230000033001 locomotion Effects 0.000 claims abstract description 149
- 238000000034 method Methods 0.000 claims description 187
- 230000008859 change Effects 0.000 claims description 77
- 230000009471 action Effects 0.000 claims description 19
- 238000003825 pressing Methods 0.000 claims description 19
- 238000004590 computer program Methods 0.000 claims description 5
- 239000011521 glass Substances 0.000 abstract description 7
- 238000012545 processing Methods 0.000 description 131
- 230000008569 process Effects 0.000 description 120
- 238000005259 measurement Methods 0.000 description 26
- 238000010586 diagram Methods 0.000 description 19
- 230000006870 function Effects 0.000 description 19
- 230000001133 acceleration Effects 0.000 description 13
- 238000013459 approach Methods 0.000 description 8
- 238000004422 calculation algorithm Methods 0.000 description 8
- 230000001413 cellular effect Effects 0.000 description 7
- 230000005484 gravity Effects 0.000 description 7
- 230000004044 response Effects 0.000 description 7
- 239000013598 vector Substances 0.000 description 7
- 230000004913 activation Effects 0.000 description 5
- 238000003384 imaging method Methods 0.000 description 5
- 238000004891 communication Methods 0.000 description 4
- 238000010079 rubber tapping Methods 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 3
- 238000013500 data storage Methods 0.000 description 3
- 241000282373 Panthera pardus Species 0.000 description 2
- 230000003213 activating effect Effects 0.000 description 2
- 238000005452 bending Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 210000004247 hand Anatomy 0.000 description 2
- 229920001690 polydopamine Polymers 0.000 description 2
- 230000035945 sensitivity Effects 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 208000012661 Dyskinesia Diseases 0.000 description 1
- 208000015592 Involuntary movements Diseases 0.000 description 1
- 125000002066 L-histidyl group Chemical group [H]N1C([H])=NC(C([H])([H])[C@](C(=O)[*])([H])N([H])[H])=C1[H] 0.000 description 1
- 208000003443 Unconsciousness Diseases 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 238000009795 derivation Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 238000002592 echocardiography Methods 0.000 description 1
- 230000005670 electromagnetic radiation Effects 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 230000004424 eye movement Effects 0.000 description 1
- 239000012530 fluid Substances 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000003340 mental effect Effects 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000017311 musculoskeletal movement, spinal reflex action Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 238000007493 shaping process Methods 0.000 description 1
- 230000006641 stabilisation Effects 0.000 description 1
- 238000011105 stabilization Methods 0.000 description 1
- 238000007619 statistical method Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 230000007306 turnover Effects 0.000 description 1
- 238000002604 ultrasonography Methods 0.000 description 1
- 210000000707 wrist Anatomy 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/16—Constructional details or arrangements
- G06F1/1613—Constructional details or arrangements for portable computers
- G06F1/1626—Constructional details or arrangements for portable computers with a single-body enclosure integrating a flat display, e.g. Personal Digital Assistants [PDAs]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/16—Constructional details or arrangements
- G06F1/1613—Constructional details or arrangements for portable computers
- G06F1/1615—Constructional details or arrangements for portable computers with several enclosures having relative motions, each enclosure supporting at least one I/O or computing function
- G06F1/1616—Constructional details or arrangements for portable computers with several enclosures having relative motions, each enclosure supporting at least one I/O or computing function with folding flat displays, e.g. laptop computers or notebooks having a clamshell configuration, with body parts pivoting to an open position around an axis parallel to the plane they define in closed position
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/16—Constructional details or arrangements
- G06F1/1613—Constructional details or arrangements for portable computers
- G06F1/1633—Constructional details or arrangements of portable computers not specific to the type of enclosures covered by groups G06F1/1615 - G06F1/1626
- G06F1/1684—Constructional details or arrangements related to integrated I/O peripherals not covered by groups G06F1/1635 - G06F1/1675
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/16—Constructional details or arrangements
- G06F1/1613—Constructional details or arrangements for portable computers
- G06F1/1633—Constructional details or arrangements of portable computers not specific to the type of enclosures covered by groups G06F1/1615 - G06F1/1626
- G06F1/1684—Constructional details or arrangements related to integrated I/O peripherals not covered by groups G06F1/1635 - G06F1/1675
- G06F1/1686—Constructional details or arrangements related to integrated I/O peripherals not covered by groups G06F1/1635 - G06F1/1675 the I/O peripheral being an integrated camera
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/16—Constructional details or arrangements
- G06F1/1613—Constructional details or arrangements for portable computers
- G06F1/1633—Constructional details or arrangements of portable computers not specific to the type of enclosures covered by groups G06F1/1615 - G06F1/1626
- G06F1/1684—Constructional details or arrangements related to integrated I/O peripherals not covered by groups G06F1/1635 - G06F1/1675
- G06F1/1694—Constructional details or arrangements related to integrated I/O peripherals not covered by groups G06F1/1635 - G06F1/1675 the I/O peripheral being a single or a set of motion sensors for pointer control or gesture input obtained by sensing movements of the portable computer
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/03—Arrangements for converting the position or the displacement of a member into a coded form
- G06F3/033—Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
- G06F3/0346—Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor with detection of the device orientation or free movement in a 3D space, e.g. 3D mice, 6-DOF [six degrees of freedom] pointers using gyroscopes, accelerometers or tilt-sensors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
- G06F3/04815—Interaction with a metaphor-based environment or interaction object displayed as three-dimensional, e.g. changing the user viewpoint with respect to the environment or object
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
- G06F3/0482—Interaction with lists of selectable items, e.g. menus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2200/00—Indexing scheme relating to G06F1/04 - G06F1/32
- G06F2200/16—Indexing scheme relating to G06F1/16 - G06F1/18
- G06F2200/163—Indexing scheme relating to constructional details of the computer
- G06F2200/1637—Sensing arrangement for detection of housing movement or orientation, e.g. for controlling scrolling or cursor movement on the display of an handheld computer
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2203/00—Indexing scheme relating to G06F3/00 - G06F3/048
- G06F2203/048—Indexing scheme relating to G06F3/048
- G06F2203/04806—Zoom, i.e. interaction techniques or interactors for controlling the zooming operation
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- User Interface Of Digital Computer (AREA)
- Telephone Function (AREA)
Abstract
본 발명은 디스플레이되는 콘텐츠의 부분을 선택하기 위해 실제 공간에서의 디바이스 위치/배향을 사용하는 모바일 컴퓨팅 디바이스용 모바일 사용자 인터페이스에 관한 것이다. 콘텐츠 (예컨대, 문서, 파일 또는 데스크톱) 는 가상 공간에 고정된 것으로 추정되며, 모바일 사용자 인터페이스는 카메라 또는 확대경을 통해 보여지는 것처럼 콘텐츠의 부분을 디스플레이한다. 모션, 거리 또는 위치 센서들로부터의 데이터는 콘텐츠에 대하여 디바이스의 상대적인 위치/배향을 결정하여 디스플레이할 부분을 선택하기 위해 사용된다. 콘텐츠 엘리먼트들은 디스플레이의 중심을 원하는 부분에 위치시킴으로써 선택될 수 있고, 이는 커서들 및 포인팅 디바이스들 (예컨대, 마우스 또는 터치 스크린) 에 대한 필요성을 제거한다. 디바이스를 사용자로부터 또는 사용자 쪽으로 이동시킴으로써 확대가 조작될 수 있다. 3-D 콘텐츠 뷰잉은 디바이스 배향을 감지하고, 3-D 가상 공간에서 디스플레이 위 또는 아래의 콘텐츠를 디스플레이함으로써 가능할 수도 있다.
Description
본 특허 출원은 2009년 1월 6일에 출원된 "User Interface for Mobile Devices" 라는 명칭의 가출원 제 61/142,806호의 우선권을 주장하며, 상기 가출원은 그 전체 내용이 본 명세서에 참조로서 통합된다.
본 발명은 일반적으로 컴퓨터 사용자 인터페이스 시스템들에 관한 것이며, 특히 모바일 컴퓨팅 디바이스들을 위한 사용자 인터페이스에 관한 것이다.
퍼스널 전자 디바이스들 (예컨대, 셀룰러 폰들, PDA들, 랩톱들, 게임 디바이스들) 은 사용자들에게 증가된 기능과 데이터 저장을 제공한다. 사용자들이 애플리케이션 및 파일들과 상호 작용할 수 있도록 하기 위해, 퍼스널 전자 디바이스들은 통상적으로 퍼스널 컴퓨터들을 위해 개발된 그래픽 사용자 인터페이스들과 유사한 사용자 인터페이스로 구성된다. 예를 들어, 일부 퍼스널 전자 디바이스들은 Microsoft Corporation에 의해 판매된 운영 시스템들의 Windows® 패밀리 버전인 Windows CE®을 사용한다. 이러한 그래픽 사용자 인터페이스 시스템들은 컴퓨팅 디바이스는 공간 내에 고정되지만 콘텐츠 (예컨대, 이미지들, 오브젝트들 및 파일들) 는 가상 공간 내에서 이동가능한 것으로 추정한다. 이러한 그래픽 사용자 인터페이스 시스템은 통상적으로 디바이스 디스플레이의 "윈도우"에 대하여 콘텐츠를 조작하기 위한 도구들 (예컨대, 스크롤 바들)을 포함한다. Blackberry Storm® 에 구현되는 사용자 인터페이스와 같이 새로운 퍼스널 전자 디바이스들을 위해 특별히 개발된, 최근에 공개된 사용자 인터페이스들은 디바이스가 공간 내에 고정되지만 콘텐츠는 가상 공간 내에서 이동가능한 것으로 추정하며, 터치 스크린 디스플레이를 가로질러 손가락을 끌어당김으로써 디바이스의 디스플레이에 대하여 콘텐츠의 이동("드래깅") 을 가능하게 한다. 이러한 사용자 인터페이스들은 컴퓨터 사용자들에게 익숙하지만, 일반적으로 움직이지 않는 퍼스널 컴퓨터들로부터 이러한 사용자 인터페이스들의 도출은 모바일 컴퓨팅 디바이스들의 기능을 위협한다.
다양한 양태들은 모바일 컴퓨팅 디바이스들에 특히 적합한 모바일 사용자 인터페이스를 제공하기 위한 방법들 및 시스템들을 제공한다. 일 양태에서, 모바일 컴퓨팅 디바이스에 모바일 사용자 인터페이스를 제공하기 위한 방법은, 실제 공간에서 모바일 컴퓨팅 디바이스의 이동을 감지하는 단계, 감지된 이동에 기초하여 모바일 컴퓨팅 디바이스의 실제 공간에서의 위치의 변경을 결정하는 단계, 모바일 컴퓨팅 디바이스의 위치의 결정된 변경에 기초하여 가상 공간에 고정된 것으로 취급되는 콘텐츠의 뷰잉 시점을 결정하는 단계, 결정된 뷰잉 시점에 기초하여 콘텐츠의 적어도 일부분의 디스플레이를 생성하는 단계를 포함한다. 상기 방법은, 콘텐츠의 선택물을 선택하기 위한 신호를 수신하는 단계, 디스플레이의 중심 근방에 위치된 콘텐츠의 부분을 결정하는 단계, 및 디스플레이의 중심 근방에 위치된 콘텐츠의 부분을 선택하는 단계를 더 포함할 수도 있다. 선택 보조물은 또한 생성된 디스플레이 내에 제공되어 디스플레이의 중심 및/또는 디스플레이 내에서 선택될 콘텐츠의 부분을 나타낼 수도 있다. 선택 보조물의 형태 및 사이즈는 콘텐츠에 기초하거나 콘텐츠에 따라 선택될 수도 있으며, 선택 보조물의 형태는 예컨대, 십자선, 원, 타원, 박스, 밝기가 증가된 영역, 해상도가 증가된 영역 및 음영 영역 중 임의의 것을 포함할 수도 있다. 콘텐츠의 선택물을 선택하기 위한 신호는 버튼의 누름의 결과로서 수신될 수도 있다. 상기 방법은 생성된 디스플레이 내에, 디스플레이 내에서 선택될 수 있는 콘텐츠의 부분을 나타내는 선택 보조물을 포함시키는 단계, 콘텐츠의 선택물을 선택하기 위한 신호를 수신하는 단계, 선택 보조물 내에 위치된 콘텐츠의 부분을 결정하는 단계, 및 선택 보조물 내에 위치된 콘텐츠의 부분에 대한 액션을 수행하는 단계를 더 포함할 수도 있다. 실제 공간에서의 이동을 감지하는 단계는, 가속도계, 거리 측정 센서, 기울기 센서, 카메라 및 나침반 중 하나 이상이 될 수도 있는 센서로부터의 신호를 수신하는 단계를 포함할 수도 있다. 상기 방법은 모바일 컴퓨팅 디바이스와 사용자 사이의 거리를 결정하는 단계, 및 결정된 거리에 기초하여 콘텐츠의 디스플레이되는 부분에 확대를 적용하는 단계를 더 포함할 수도 있다. 상기 방법은 모바일 컴퓨팅 디바이스의 기울기를 감지하는 단계, 및 감지된 기울기에 기초하여 가상 공간 내에 콘텐츠를 재배치하는 단계를 더 포함할 수도 있다. 실제 공간에서의 이동을 감지하는 단계는, 카메라로부터 디지털 이미지를 수신하는 단계, 순차적인 이미지들의 변경을 식별하기 위해 수신된 디지털 이미지의 적어도 일부분을 이전 디지털 이미지의 적어도 일부분과 비교하는 단계, 및 순차적인 이미지들에서 식별된 변경에 기초하여 이동을 결정하는 단계를 포함할 수도 있다. 가상 공간에 고정된 것으로 취급되는 콘텐츠의 뷰잉 시점을 결정하는 단계는, 모바일 컴퓨팅 디바이스의 위치의 결정된 변경에 적용되는 가상 이동 스케일링 인자에 기초할 수도 있다. 상기 방법은, 그래픽 사용자 인터페이스 모드에 있는 동안 (버튼의 누름의 형태가 될 수도 있는) 사용자 인터페이스 모드 선택 입력을 수신하는 단계, 그래픽 사용자 인터페이스 모드에서 콘텐츠의 디스플레이에 기초하여 콘텐츠를 가상 공간 내에 고정하는 단계, 및 본 명세서에서 설명되는 것과 같이 모바일 사용자 인터페이스 모드를 구현하는 단계뿐만 아니라, 모바일 사용자 인터페이스 모드에 있는 동안 사용자 인터페이스 모드 선택 입력을 수신하는 단계, 모바일 컴퓨팅 디바이스 디스플레이 내에 콘텐츠를 고정하는 단계, 및 그래픽 사용자 인터페이스 모드를 구현하는 단계를 더 포함할 수도 있다.
또 다른 양태에서, 모바일 컴퓨팅 디바이스는, 프로세서 또는 전용 그래픽 프로세싱 칩, 프로세서 또는 전용 그래픽 프로세싱 칩에 커플링된 디스플레이, 및 프로세서 또는 전용 그래픽 프로세싱 칩에 커플링되고, 가속도계, 거리 측정 센서, 기울기 센서, 카메라 및 나침반 중 하나 이상이 될 수 있는 센서를 포함한다. 프로세서 또는 전용 그래픽 프로세싱 칩은 소프트웨어 실행가능 명령들에 따라 센서로부터의 신호를 수신하고, 수신된 센서 신호에 기초하여 모바일 컴퓨팅 디바이스의 실제 공간에서의 위치의 변경을 결정하고, 모바일 컴퓨팅 디바이스의 위치의 결정된 변경에 기초하여 가상 공간에 고정된 것으로 취급되는 콘텐츠의 뷰잉 시점을 결정하며, 결정된 뷰잉 시점에 기초하여 콘텐츠의 적어도 일부분의 디스플레이에 이미지를 생성하도록 구성된다. 프로세서 또는 전용 그래픽 프로세싱 칩은 콘텐츠의 선택물을 선택하기 위한 신호를 수신하고, 디스플레이의 중심 근방에 위치된 콘텐츠의 부분을 결정하며, 및 디스플레이의 중심 근방에 위치된 콘텐츠의 부분을 선택하도록 더 구성될 수도 있다. 선택 보조물은 또한 생성된 디스플레이 내에 제공되어 디스플레이의 중심 및/또는 디스플레이 내에서 선택될 콘텐츠의 부분을 나타낼 수도 있다. 선택 보조물의 형태 및 사이즈는 콘텐츠에 기초하거나 콘텐츠에 따라 선택될 수도 있고, 선택 보조물의 형태는 예컨대, 십자선, 원, 타원, 박스, 밝기가 증가된 영역, 해상도가 증가된 영역 및 음영 영역 중 임의의 것을 포함할 수도 있다. 콘텐츠의 선택물을 선택하기 위한 신호는 버튼의 누름의 형태가 될 수도 있다. 프로세서 또는 전용 그래픽 프로세싱 칩은 생성된 디스플레이 내에, 디스플레이 내에서 선택될 수 있는 콘텐츠의 부분을 나타내는 선택 보조물을 포함시키고, 콘텐츠의 선택물을 선택하기 위한 신호를 수신하고, 선택 보조물 내에 위치된 콘텐츠의 부분을 결정하며, 및 선택 보조물 내에 위치된 콘텐츠의 부분에 동작을 수행하도록 더 구성될 수도 있다. 프로세서 또는 전용 그래픽 프로세싱 칩은 가속도계, 거리 측정 센서, 기울기 센서, 카메라 및 나침 반 중 하나 이상이 될 수도 있는 하나 이상의 센서로부터의 신호를 수신하도록 더 구성될 수도 있다. 프로세서 또는 전용 그래픽 프로세싱 칩은 모바일 컴퓨팅 디바이스와 사용자 사이의 거리를 결정하고, 및 결정된 거리에 기초하여 콘텐츠의 디스플레이된 부분에 확대를 적용하도록 더 구성될 수도 있다. 프로세서 또는 전용 그래픽 프로세싱 칩은 모바일 컴퓨팅 디바이스의 기울기를 감지하고, 감지된 기울기에 기초하여 가상 공간 내에 콘텐츠를 재배치하도록 더 구성될 수도 있다. 프로세서 또는 전용 그래픽 프로세싱 칩은 카메라로부터 디지털 이미지를 수신하고, 순차적인 이미지들의 변경을 식별하기 위해 수신된 디지털 이미지의 적어도 일부분을 이전 디지털 이미지의 적어도 일부분과 비교하며, 및 순차적인 이미지들에서 식별된 변경에 기초하여 이동을 결정하도록 더 구성될 수도 있다. 프로세서 또는 전용 그래픽 프로세싱 칩은 가상 공간에 고정된 것으로 취급되는 콘텐츠의 뷰잉 시점을 결정하는 것이, 모바일 컴퓨팅 디바이스의 위치의 결정된 변경에 적용되는 가상 이동 스케일링 인자에 기초할 수 있도록 더 구성될 수도 있다. 프로세서 또는 전용 그래픽 프로세싱 칩은 그래픽 사용자 인터페이스 모드에 있는 동안 (버튼의 누름의 형태가 될 수도 있는) 사용자 인터페이스 모드 선택 입력을 수신하고, 그래픽 사용자 인터페이스 모드에서 콘텐츠의 디스플레이에 기초하여 콘텐츠를 가상 공간 내에 고정하며, 및 본 명세서에서 설명되는 것과 같이 모바일 사용자 인터페이스 모드를 구현할 뿐만 아니라, 모바일 사용자 인터페이스 모드에 있는 동안 사용자 인터페이스 모드 선택 입력을 수신하고, 모바일 컴퓨팅 디바이스 디스플레이 내에 콘텐츠를 고정하며, 및 그래픽 사용자 인터페이스 모드를 구현하도록 더 구성될 수도 있다.
또 다른 양태에서, 모바일 컴퓨팅 디바이스는 실제 공간에서 모바일 컴퓨팅의 이동을 감지하기 위한 수단, 감지된 이동에 기초하여 모바일 컴퓨팅 디바이스의 실제 공간에서의 위치의 변경을 결정하기 위한 수단, 모바일 컴퓨팅 디바이스의 위치의 결정된 변경에 기초하여 가상 공간에 고정된 것으로 취급되는 콘텐츠의 뷰잉 시점을 결정하기 위한 수단, 및 결정된 뷰잉 시점에 기초하여 콘텐츠의 적어도 일부분의 디스플레이를 생성하기 위한 수단을 포함한다. 모바일 컴퓨팅 디바이스는 콘텐츠의 선택물을 선택하기 위한 신호를 수신하기 위한 수단, 디스플레이의 중심 근방에 위치된 콘텐츠의 부분을 결정하기 위한 수단, 및 디스플레이의 중심 근방에 위치된 콘텐츠의 부분을 선택하기 위한 수단을 더 포함할 수도 있다. 모바일 컴퓨팅 디바이스는 생성된 디스플레이 내에 선택 보조물을 제공하여 디스플레이의 중심 및/또는 디스플레이 내에서 선택될 콘텐츠의 부분 중 하나를 나타내기 위한 수단을 더 포함할 수도 있다. 선택 보조물의 형태 및 사이즈는 콘텐츠에 기초하거나 콘텐츠에 따라 선택될 수도 있으며, 선택 보조물의 형태는 예컨대, 십자선, 원, 타원, 박스, 밝기가 증가된 영역, 해상도가 증가된 영역 및 음영 영역 중 임의의 것을 포함할 수도 있다. 콘텐츠의 선택물을 선택하기 위한 신호는 버튼의 누름의 결과로서 수신될 수도 있다. 모바일 컴퓨팅 디바이스는 생성된 디스플레이 내에, 디스플레이 내에서 선택될 수 있는 콘텐츠의 부분을 나타내는 선택 보조물을 포함시키기 위한 수단, 콘텐츠의 선택물을 선택하기 위한 신호를 수신하기 위한 수단, 선택 보조물 내에 위치된 콘텐츠의 부분을 결정하기 위한 수단, 및 선택 보조물 내에 위치된 콘텐츠의 부분에 대한 액션을 수행하기 위한 수단을 더 포함할 수도 있다. 실제 공간에서의 이동을 감지하기 위한 수단은, 가속도계를 감지하기 위한 수단, 거리를 측정하기 위한 수단, 기울기를 측정하기 위한 수단, 디지털 이미지를 획득하기 위한 수단 및 지구 자장에 대한 배향을 측정하기 위한 수단 중 하나 이상으로부터 신호를 수신하기 위한 수단을 포함할 수도 있다. 모바일 컴퓨팅 디바이스는 모바일 컴퓨팅 디바이스와 사용자 사이의 거리를 결정하기 위한 수단, 및 결정된 거리에 기초하여 콘텐츠의 디스플레이되는 부분에 확대를 적용하기 위한 수단을 더 포함할 수도 있다. 모바일 컴퓨팅 디바이스는 모바일 컴퓨팅 디바이스의 기울기를 감지하기 위한 수단, 및 감지된 기울기에 기초하여 가상 공간 내에 콘텐츠를 재배치하기 위한 수단을 더 포함할 수도 있다. 실제 공간에서의 이동을 감지하기 위한 수단은, 디지털 이미지를 획득하기 위한 수단, 순차적인 이미지들의 변경을 식별하기 위해 제 1 디지털 이미지의 적어도 일부분을 제 2 디지털 이미지의 적어도 일부분과 비교하기 위한 수단, 및 순차적인 이미지들에서 식별된 변경에 기초하여 이동을 결정하기 위한 수단을 포함할 수도 있다. 가상 공간에 고정된 것으로 취급되는 콘텐츠의 뷰잉 시점을 결정하기 위한 수단은, 모바일 컴퓨팅 디바이스의 위치의 결정된 변경에 적용되는 가상 이동 스케일링 인자에 기초하여 결정을 수행할 수도 있다. 모바일 컴퓨팅 디바이스는 그래픽 사용자 인터페이스 모드에 있는 동안 사용자 인터페이스 모드 선택 입력 (버튼의 누름의 형태가 될 수 있음) 을 수신하기 위한 수단, 그래픽 사용자 인터페이스 모드에서 콘텐츠의 디스플레이에 기초하여 콘텐츠를 가상 공간 내에 고정하기 위한 수단, 및 모바일 사용자 인터페이스 모드를 구현하기 위한 수단뿐만 아니라 모바일 사용자 인터페이스 모드에 있는 동안 사용자 인터페이스 모드 선택 입력을 수신하기 위한 수단, 모바일 컴퓨팅 디바이스 디스플레이 내에 콘텐츠를 고정하기 위한 수단, 및 그래픽 사용자 인터페이스 모드를 구현하기 위한 수단을 더 포함할 수도 있다.
또 다른 양태에서, 컴퓨터 판독가능 매체를 포함하는 컴퓨터 프로그램 제품은, 가속도계, 거리 측정 센서, 기울기 센서, 카메라 및 나침반 중 하나 이상이 될 수 있는 센서로부터의 신호를 수신하기 위한 적어도 하나의 명령, 수신된 센서 신호에 기초하여 모바일 컴퓨팅 디바이스의 실제 공간에서의 위치의 변경을 결정하기 위한 적어도 하나의 명령, 모바일 컴퓨팅 디바이스의 위치의 결정된 변경에 기초하여 가상 공간에 고정된 것으로 취급되는 콘텐츠의 뷰잉 시점을 결정하기 위한 적어도 하나의 명령, 및 결정된 뷰잉 시점에 기초하여 콘텐츠의 적어도 일부분의 디스플레이에 이미지를 생성하기 위한 적어도 하나의 명령을 포함한다. 컴퓨터 판독가능 매체는, 콘텐츠의 선택물을 선택하기 위한 신호를 수신하기 위한 적어도 하나의 명령, 디스플레이의 중심 근방에 위치된 콘텐츠의 부분을 결정하기 위한 적어도 하나의 명령, 및 디스플레이의 중심 근방에 위치된 콘텐츠의 부분을 선택하기 위한 적어도 하나의 명령을 더 포함할 수도 있다. 컴퓨터 판독가능 매체는, 생성된 디스플레이 내에 선택 보조물을 포함시키기 위한 적어도 하나의 명령을 더 포함하며, 선택 보조물은 디스플레이의 중심 및 디스플레이 내에서 선택될 콘텐츠의 부분 중 하나를 나타낸다. 컴퓨터 판독가능 매체는, 디스플레이의 중심 근방에 위치된 콘텐츠에 의존하는 선택 보조물의 형태를 선택하기 위한 적어도 하나의 명령을 더 포함할 수도 있고, 선택 보조물의 형태는 예컨대, 십자선, 원, 타원, 박스, 밝기가 증가된 영역, 해상도가 증가된 영역 및 음영 영역이 될 수도 있다. 컴퓨터 판독가능 매체는, 버튼의 누름의 결과로서 콘텐츠의 선택물을 선택하기 위한 신호를 수신하기 위한 적어도 하나의 명령을 더 포함할 수도 있다. 컴퓨터 판독가능 매체는, 생성된 디스플레이 내에, 디스플레이 내에서 선택될 수 있는 콘텐츠의 부분을 나타내는 선택 보조물을 포함시키기 위한 적어도 하나의 명령, 콘텐츠의 선택물을 선택하기 위한 신호를 수신하기 위한 적어도 하나의 명령, 선택 보조물 내에 위치된 콘텐츠의 부분을 결정하기 위한 적어도 하나의 명령, 및 선택 보조물 내에 위치된 콘텐츠의 부분에 대한 액션을 수행하기 위한 적어도 하나의 명령을 더 포함할 수도 있다. 컴퓨터 판독가능 매체는 센서로부터 수신된 신호에 기초하여 이동을 감지하기 위한 적어도 하나의 명령을 더 포함할 수도 있다. 컴퓨터 판독가능 매체는, 모바일 컴퓨팅 디바이스와 사용자 사이의 거리를 결정하기 위한 적어도 하나의 명령, 및 결정된 거리에 기초하여 콘텐츠의 디스플레이된 부분에 확대를 적용하기 위한 적어도 하나의 명령을 더 포함할 수도 있다. 컴퓨터 판독가능 매체는 감지된 기울기에 기초하여 가상 공간 내에 콘텐츠를 재배치하기 위한 적어도 하나의 명령을 더 포함할 수도 있다. 컴퓨터 판독가능 매체는, 카메라로부터 디지털 이미지를 수신하기 위한 적어도 하나의 명령, 순차적인 이미지들의 변경을 식별하기 위해 수신된 디지털 이미지의 적어도 일부분을 이전 디지털 이미지의 적어도 일부분과 비교하기 위한 적어도 하나의 명령, 및 순차적인 이미지들에서 식별된 변경에 기초하여 이동을 결정하기 위한 적어도 하나의 명령을 더 포함할 수도 있다. 가상 공간에 고정된 것으로 취급되는 콘텐츠의 뷰잉 시점을 결정하기 위한 적어도 하나의 명령은 모바일 컴퓨팅 디바이스의 위치의 결정된 변경에 적용되는 가상 이동 스케일링 인자에 기초하여 뷰잉 시점을 결정하기 위한 적어도 하나의 명령을 포함할 수도 있다. 컴퓨터 판독가능 매체는, 그래픽 사용자 인터페이스 모드에 있는 동안 사용자 인터페이스 모드 선택 입력을 수신하기 위한 적어도 하나의 명령, 그래픽 사용자 인터페이스 모드에서 콘텐츠의 디스플레이에 기초하여 콘텐츠를 가상 공간 내에 고정하기 위한 적어도 하나의 명령, 및 모바일 사용자 인터페이스 모드를 구현하기 위한 적어도 하나의 명령을 더 포함할 수도 있다. 컴퓨터 판독가능 매체는, 모바일 사용자 인터페이스 모드에 있는 동안 사용자 인터페이스 모드 선택 입력을 수신하기 위한 적어도 하나의 명령, 컴퓨터 프로그램 제품 디스플레이 내에 콘텐츠를 고정하기 위한 적어도 하나의 명령, 및 그래픽 사용자 인터페이스 모드를 구현하기 위한 적어도 하나의 명령을 더 포함할 수도 있다.
본 명세서 내에 통합되고, 본 명세서의 일부를 구성하는 첨부된 도면들은 본 발명의 예시적인 양태들을 설명한다. 전술된 일반적인 설명 및 하기에서 제공되는 상세한 설명과 함께, 도면들은 본 발명의 특징들을 설명한다.
도 1 은 퍼스널 컴퓨터들 및 모바일 컴퓨팅 디바이스들을 위한 종래의 그래픽 사용자 인터페이스의 기본 동작들을 설명하는 프로세스 흐름도이다.
도 2 는 본 발명의 다양한 양태들에 따라 모바일 컴퓨팅 디바이스들을 위한 모바일 사용자 인터페이스의 기본 동작들 중 일부를 설명하는 프로세스 흐름도이다.
도 3 은 실제 공간의 모바일 컴퓨팅 디바이스들과 관련하여 가상 공간 내에 위치되는 문서를 도시하는 투시도이다.
도 4 는 예시적인 이미지 문서의 도면이다.
도 5a 및 도 5b 는 도 4에 도시된 예시적인 이미지 문서를 보기 위한 모바일 사용자 인터페이스의 동작을 설명하는 모바일 컴퓨팅 디바이스의 정면도들이다.
도 6 은 사용자에 대한 모바일 컴퓨팅 디바이스의 위치에 기초하여 이미지 사이즈 또는 크기를 제어하기 위한 모바일 사용자 인터페이스의 동작들을 설명하는 프로세스 흐름도이다.
도 7a 및 도 7b 는 도 4에 도시된 예시적인 이미지 문서를 서로 다른 크기들로 제공하는 모바일 사용자 인터페이스의 동작을 설명하는 모바일 컴퓨팅 디바이스의 정면도들이다.
도 8 은 퍼스널 컴퓨터들 및 모바일 컴퓨팅 디바이스들에 대한 종래 기술의 사용자 인터페이스에서 행동을 선택하기 위한 동작들을 설명하는 프로세스 흐름도이다.
도 9 는 본 발명의 다양한 양태들에 따라 모바일 컴퓨팅 디바이스들을 위한 모바일 사용자 인터페이스에서 행동을 선택하기 위한 동작들을 설명하는 프로세스 흐름도이다.
도 10a 내지 10f 는 모바일 사용자 인터페이스의 디스플레이 내의 예시적인 선택 보조물들을 설명하는 모바일 컴퓨팅 디바이스의 정면도들이다.
도 11 은 가속도계 센서들로부터 수신되는 정보에 기초하여 모바일 컴퓨팅 디바이스의 이동을 감지하고, 상대적인 위치의 변경을 결정하기 위한 동작들을 설명하는 프로세스 흐름도이다.
도 12 는 거리 측정 센서들로부터 수신된 정보에 기초하여 모바일 컴퓨팅 디바이스의 이동을 감지하고, 상대적인 위치의 변경을 결정하기 위한 동작들을 설명하는 프로세스 흐름도이다.
도 13 은 나침반 센서로부터 수신된 정보에 기초하여 모바일 컴퓨팅 디바이스의 배향의 변경을 결정하기 위한 동작들을 설명하는 프로세스 흐름도이다.
도 14 는 가속도계, 거리 측정 센서 및 나침반 센서로부터 수신되는 정보에 기초하여 모바일 컴퓨팅 디바이스의 이동을 감지하고, 상대적인 위치의 변경을 결정하기 위한 동작들을 설명하는 프로세스 흐름도이다.
도 15 는 모바일 컴퓨팅 디바이스의 이동을 감지하고, 상대적인 위치의 변경을 결정하며, 카메라로부터 수신된 정보에 기초하여 보여지는 문서의 일부분을 결정하기 위한 동작들을 설명하는 프로세스 흐름도이다.
도 16 은 종래의 그래픽 사용자 인터페이스 및 모바일 사용자 인터페이스 기능 양자를 포함하는 사용자 인터페이스의 동작들을 설명하는 프로세스 흐름도이다.
도 17 은 가상 공간 내에서 문서를 조작하고, 하나 이상의 기울기 센서들로부터 수신된 정보에 기초하여 모바일 컴퓨팅 디바이스에서 보여지는 문서의 일부분을 결정하기 위한 동작들을 설명하는 프로세스 흐름도이다.
도 18 은 실제 공간의 모바일 컴퓨팅 디바이스와 관련하여 가상 공간에 위치된 3 차원 문서를 도시하는 투시도이다.
도 19 및 도 20 은 본 발명의 다양한 양태들에 따른 대안적인 모바일 컴퓨팅 디바이스의 기능/구성 블록 선도들이다.
도 21 은 본 발명의 다양한 양태들에 따른 사용에 적합한 예시적인 모바일 컴퓨팅 디바이스의 구성 블록 선도이다.
도 22 는 본 발명의 다양한 양태들에 따른 사용에 적합한 예시적인 노트북 휴대용 컴퓨팅 디바이스의 구성 블록 선도이다.
도 1 은 퍼스널 컴퓨터들 및 모바일 컴퓨팅 디바이스들을 위한 종래의 그래픽 사용자 인터페이스의 기본 동작들을 설명하는 프로세스 흐름도이다.
도 2 는 본 발명의 다양한 양태들에 따라 모바일 컴퓨팅 디바이스들을 위한 모바일 사용자 인터페이스의 기본 동작들 중 일부를 설명하는 프로세스 흐름도이다.
도 3 은 실제 공간의 모바일 컴퓨팅 디바이스들과 관련하여 가상 공간 내에 위치되는 문서를 도시하는 투시도이다.
도 4 는 예시적인 이미지 문서의 도면이다.
도 5a 및 도 5b 는 도 4에 도시된 예시적인 이미지 문서를 보기 위한 모바일 사용자 인터페이스의 동작을 설명하는 모바일 컴퓨팅 디바이스의 정면도들이다.
도 6 은 사용자에 대한 모바일 컴퓨팅 디바이스의 위치에 기초하여 이미지 사이즈 또는 크기를 제어하기 위한 모바일 사용자 인터페이스의 동작들을 설명하는 프로세스 흐름도이다.
도 7a 및 도 7b 는 도 4에 도시된 예시적인 이미지 문서를 서로 다른 크기들로 제공하는 모바일 사용자 인터페이스의 동작을 설명하는 모바일 컴퓨팅 디바이스의 정면도들이다.
도 8 은 퍼스널 컴퓨터들 및 모바일 컴퓨팅 디바이스들에 대한 종래 기술의 사용자 인터페이스에서 행동을 선택하기 위한 동작들을 설명하는 프로세스 흐름도이다.
도 9 는 본 발명의 다양한 양태들에 따라 모바일 컴퓨팅 디바이스들을 위한 모바일 사용자 인터페이스에서 행동을 선택하기 위한 동작들을 설명하는 프로세스 흐름도이다.
도 10a 내지 10f 는 모바일 사용자 인터페이스의 디스플레이 내의 예시적인 선택 보조물들을 설명하는 모바일 컴퓨팅 디바이스의 정면도들이다.
도 11 은 가속도계 센서들로부터 수신되는 정보에 기초하여 모바일 컴퓨팅 디바이스의 이동을 감지하고, 상대적인 위치의 변경을 결정하기 위한 동작들을 설명하는 프로세스 흐름도이다.
도 12 는 거리 측정 센서들로부터 수신된 정보에 기초하여 모바일 컴퓨팅 디바이스의 이동을 감지하고, 상대적인 위치의 변경을 결정하기 위한 동작들을 설명하는 프로세스 흐름도이다.
도 13 은 나침반 센서로부터 수신된 정보에 기초하여 모바일 컴퓨팅 디바이스의 배향의 변경을 결정하기 위한 동작들을 설명하는 프로세스 흐름도이다.
도 14 는 가속도계, 거리 측정 센서 및 나침반 센서로부터 수신되는 정보에 기초하여 모바일 컴퓨팅 디바이스의 이동을 감지하고, 상대적인 위치의 변경을 결정하기 위한 동작들을 설명하는 프로세스 흐름도이다.
도 15 는 모바일 컴퓨팅 디바이스의 이동을 감지하고, 상대적인 위치의 변경을 결정하며, 카메라로부터 수신된 정보에 기초하여 보여지는 문서의 일부분을 결정하기 위한 동작들을 설명하는 프로세스 흐름도이다.
도 16 은 종래의 그래픽 사용자 인터페이스 및 모바일 사용자 인터페이스 기능 양자를 포함하는 사용자 인터페이스의 동작들을 설명하는 프로세스 흐름도이다.
도 17 은 가상 공간 내에서 문서를 조작하고, 하나 이상의 기울기 센서들로부터 수신된 정보에 기초하여 모바일 컴퓨팅 디바이스에서 보여지는 문서의 일부분을 결정하기 위한 동작들을 설명하는 프로세스 흐름도이다.
도 18 은 실제 공간의 모바일 컴퓨팅 디바이스와 관련하여 가상 공간에 위치된 3 차원 문서를 도시하는 투시도이다.
도 19 및 도 20 은 본 발명의 다양한 양태들에 따른 대안적인 모바일 컴퓨팅 디바이스의 기능/구성 블록 선도들이다.
도 21 은 본 발명의 다양한 양태들에 따른 사용에 적합한 예시적인 모바일 컴퓨팅 디바이스의 구성 블록 선도이다.
도 22 는 본 발명의 다양한 양태들에 따른 사용에 적합한 예시적인 노트북 휴대용 컴퓨팅 디바이스의 구성 블록 선도이다.
첨부된 도면들을 참조하여 다양한 양태들이 상세히 설명될 것이다. 가능한 경우에, 동일한 도면 부호들은 동일하거나 유사한 부분들을 지칭하기 위해 사용될 것이다. 특정 예들 및 구현들에 대한 참조들은 설명을 위한 것이며, 본 발명의 사상 또는 청구범위들을 제한하기 위한 것은 아니다.
본 명세서에서 사용되는 것과 같이, 용어 "모바일 디바이스" 또는 "모바일 컴퓨팅 디바이스" 는 셀룰러 폰들, 개인 휴대 정보 단말기들 (PDA's), 팜-톱 컴퓨터들, 넷북 컴퓨터들, 노트북 컴퓨터들, 무선 전자 메일 수신기들 및 셀룰러 전화 수신기들 (예컨대, Blackberry® 및 Treo® 디바이스들), 멀티미디어 인터넷-인에이블 셀룰러 폰들, 및 프로그래밍 가능한 프로세서 또는 전용 그래픽 프로세싱 칩, 메모리 및 디스플레이를 포함하는 유사한 핸드헬드 전자 디바이스들 중 임의의 하나 또는 이들 모두를 지칭한다.
본 명세서에서 사용되는 것과 같이, 용어 "사용자 인터페이스" 는 이미지 및 메뉴 시리즈를 사용자에게 표시하고, 컴퓨팅 디바이스들 및 컴퓨팅 디바이스 상의 콘텐츠와 상호 작용하기 위한 사용자 입력을 수신하기 위한 다양한 인터페이스 툴들을 제공하는 컴퓨팅 디바이스를 동작시키는 소프트웨어 프로세스들을 지칭한다. 다양한 양태들은 모바일 컴퓨팅 디바이스들 및 휴대용 컴퓨터들 (예컨대, 노트북 컴퓨터들) 에 특히 적합한 사용자 인터페이스를 제공한다. 참조의 용이함을 위해, 다양한 양태들은 본 명세서 또는 도면들에서, "모바일 사용자 인터페이스" (도면에서 "MUI") 로서 지칭될 수도 있는데, 이는 이러한 사용자 인터페이스들을 "그래픽 사용자 인터페이스" (도면에서 "GUI") 로 지칭될 수도 있는, 원래 고정된 컴퓨팅 디바이스들을 위해 개발된 종래의 사용자 인터페이스들 (예컨대, Window® 및 Leopard®) 로부터 구별하기 위함이다. 모바일 사용자 인터페이스의 다양한 구현들은 그래픽 특징들, 툴들, 또는 아이콘들을 포함할 수도 있음에 유의하여야 한다. 따라서, "그래픽 사용자 인터페이스" 에 비해 "모바일 사용자 인터페이스" 를 참조하는 것은 다양한 양태들에 따른 모바일 사용자 인터페이스가 그래픽 요소들을 포함하지 않을 수도 있는 것을 요구하거나 의미하기 위한 것은 아니다.
고정된 퍼스널 컴퓨터들 (예컨대, 데스크톱 컴퓨터들) 에서 사용하기 위해 개발된 종래의 그래픽 사용자 인터페이스에서, 컴퓨팅 디바이스 디스플레이는 실제 공간에서는 고정되는 것으로 추정되지만, 문서, 파일 또는 데스크톱은 디바이스에 대하여, 가상 공간 내에서 이동가능한 것으로 추정된다. 고정된 뷰잉 윈도우에 대한 추정은 CRT 디스플레이가 통상적으로 데스크톱에 고정되어 있던 대형 시스템들이었던 퍼스널 컴퓨터들에 적절하였다. 이러한 고정된 디스플레이와 함께, 그래픽 사용자 인터페이스는 실제 공간에 고정된 윈도우 상에 (예컨대, 벽 위에) 모델링되었다. 종래의 그래픽 사용자 인터페이스의 예시적인 프로세싱 동작들이 도 1에 설명된다. 종래의 그래픽 사용자 인터페이스의 프로세스 (100) 내에서, 블록 (2) 에서, 디스플레이에 대한 콘텐츠의 위치 및 이에 따라 디스플레이 윈도우 내에서 볼 수 있는 문서, 파일, 또는 데스크톱의 위치가 결정된다. 프로세스 (100) 의 블록 (3) 에서, 디스플레이 윈도우 내에서 커서의 위치가 결정된다. 그 후에, 이러한 정보는 블록 (4) 에서 커서를 포함하는 디스플레이를 생성하기 위해 사용된다. 프로세스 (100) 의 블록 (5) 에서, 키보드 키들, 컴퓨터 마우스 또는 터치 패드와 같은 포인팅 디바이스로부터의 입력을 수신하고 디스플레이 내에 커서를 다시 위치시키거나 오픈 콘텐츠 내에서 오브젝트들 또는 요소들을 선택하기 위한 프로세서 또는 전용 그래픽 프로세싱 칩에 정보를 제공한다. 포인터 디바이스들의 사용자 조작 및/또는 키패드 누름들에 의해 제어되는 이러한 커서의 이동들에 기초하여, 프로세스 (100) 내의 블록 (6) 에서, 프로세서 또는 전용 그래픽 프로세싱 칩은 스크롤바의 조작과 같이, 디스플레이 윈도우에 대한 파일의 이동에 관한 입력들을 수신할 수도 있다. 프로세스 (100) 내의 블록 (8) 에서, 스크롤바 (또는 이와 유사한) 입력들을 사용하는 컴퓨터 프로세서 또는 전용 그래픽 프로세싱 칩은 프로세스 (100) 가 블록 (2) 로 복귀하여 반복되기 전에 윈도우에 대하여 파일을 재배치할 수 있다.
퍼스널 핸드-헬드 컴퓨팅 및 통신 디바이스들은 오늘날 데스크톱 컴퓨터들의 프로세싱 전력의 대부분을 가지지만, 그들의 디스플레이 사이즈 및 해상도는 기본적인 규약들을 유지한다. 최신 데스크톱 컴퓨터 모니터들은 통상적으로 그 사이즈가 1440 X 900 (WXGA+) 해상도에서 17" 내지 1680 X 1050 (WSXGA+) 해상도에서 22" 사이의 범위이다. 대조적으로, 노트북 컴퓨터 디스플레이들은 통상적으로 IBM/Lenono X61 과 같이 1024 X 768 (XGA) 에서 10.2" 부터 Dell D630 및 HP 6910p 와 같이 1440 X 900 (WXGA+) 에서 17"까지의 범위이다. 핸드-헬드 모바일 컴퓨팅 디바이스들은 통상적으로 커플 (couple) 인치 사이즈의 매우 작은 디스플레이들을 갖는다. 현재 시중에 나와 있는 선택된 핸드-헬드 컴퓨팅 디바이스들에 대한 디스플레이 사이즈들 및 해상도들의 목록이 하기의 표 1에 제공된다.
표 1 - 핸드-헬드 디바이스들의 디스플레이 사이즈들 및 해상도들
콘텐츠 (예컨대, 화상들) 를 디스플레이 사이즈 또는 디스플레이 해상도에 더 잘 맞추기 위해, 일부 모바일 컴퓨팅 디바이스들은 디스플레이가 세로 배향 또는 가로 배향으로 콘텐츠를 표시하는 것을 허용한다. 일부 핸드-헬드 모바일 컴퓨팅 디바이스들은 사용자들이 디바이스를 회전시키는데 응답하여 디스플레이 배향을 검출하고, 그 디스플레이 배향에 맞도록 콘텐츠 배향 포맷을 변경한다. Blackberry Storm® 과 같이 최근에 공개된 모바일 컴퓨팅 디바이스들은 프로세서 또는 전용 그래픽 프로세싱 칩이 디바이스 배향의 변경을 감지하여 콘텐츠 배향을 자동으로 조정하도록 할 수 있는 내장형 가속도계들을 갖는다. 이러한 유틸리티는 콘텐츠를 디스플레이의 치수들에 더 잘 맞추면서, 콘텐츠 윈도우의 사이즈를 증가시키지 않을 수도 있다.
디스플레이 사이즈 제한을 최소화하기 위해, 모바일 컴퓨팅 디바이스들의 사이즈는 더 큰 디스플레이를 수용하도록 증가될 수 있지만, 이러한 접근 방식은 컴퓨팅 디바이스가 더 이상 "핸드-헬드" 또는 모바일 디바이스가 아니기 전까지만 시도될 수 있다. 디스플레이 해상도를 증가시키는 것은 더 많은 콘텐츠가 디스플레이 내에 표시되도록 함으로써 지원할 수 있지만, 고해상도 디스플레이들에 대해서도 평균적인 인간의 눈이 해석할 수 있는 픽셀들의 사이즈 및 구분에는 제한이 있다.
모바일 컴퓨팅 디바이스 디스플레이들의 사이즈 및 해상도에는 실질적인 제한들이 있기 때문에, 종래의 접근 방식은 파일 컨텐츠가 디스플레이의 뷰잉 윈도우보다 훨씬 크게 하고, 디스플레이에 대하여 파일 콘텐츠를 이동시키도록 조작될 수 있는 수직 및 수평 스크롤바들을 제공하도록 하는 것이었다. 최근에, 파일 콘텐츠가 뷰잉 윈도우 (즉, 디스플레이) 보다 훨씬 크고, 사용자들이 Research In Motion Ltd 에 의해 판매되는 Blackberry Storm® 과 같은 터치 스크린 디스플레이를 가로질러 스타일러스 또는 손가락을 드래깅함으로써 뷰잉 윈도우 내에서 파일들을 재배치할 수 있도록 하는 모바일 컴퓨팅 디바이스들이 판매되고 있다. 이러한 접근 방식들은 데스크톱 그래픽 사용자 인터페이스 솔루션들을 핸드-헬드 컴퓨팅 환경에 거의 직접적으로 적용한다. 결과적으로, 모바일 컴퓨팅 디바이스들에서 사용되는 그래픽 사용자 인터페이스들은 데스크톱 및 핸드-헬드 환경 양자의 제한들을 경험하며, 따라서 작은 스크린 위에 데스크톱과 유사한 사용자 경험을 발생한다.
모바일 컴퓨팅 디바이스들에서 구현되는 공지된 그래픽 사용자 인터페이스들은 데스크톱 컴퓨터 사용 경험으로 인해 대부분의 사용자들에게 친숙하지만, 그러한 솔루션들은 핸드-헬드 컴퓨팅 디바이스들을 위해 최적화되는 것이 아니며, 따라서 다수의 사용자 경험 문제들을 발생한다. 하나는, 그러한 솔루션들이 2 개의 손을 필요로 하는 것이다 (한 손은 디바이스를 잡고, 다른 손은 그래픽 사용자 인터페이스를 조작함). 다른 하나는, 디스플레이의 작은 사이즈가 소형 디바이스 내에서 파일을 이동하는 반직관적인 추정과 결합되어 전체 문서를 이해하는 것을 어렵게 하며, 사용자들이 큰 파일들 내에서 "길을 잃도록 (lost) " 할 수 있다.
본 발명의 다양한 양태들은 데스크톱 컴퓨터 그래픽 사용자 인터페이스들로부터 채택된 추정들을 없애고, 핸드-헬드 디바이스들에 직관적으로 적절한 새로운 인터페이스 추정들을 구현함으로써 핸드-헬드 컴퓨팅 디바이스 사용자 인터페이스들에서 이러한 사용자 경험 문제들을 해결한다. 특히, 모바일 사용자 인터페이스는 벽 위의 그림 또는 책상 위에 놓인 문서와 같이, 콘텐츠가 사용자로부터 어느 정도 거리의 공간에 고정된다고 (여기에서는 "가상 공간"에 고정되는 것으로 지칭됨) 추정한다. 모바일 사용자 인터페이스는 추가로 모바일 컴퓨팅 디바이스 디스플레이가 콘텐츠의 서로 다른 부분들을 보기 위해 이리저리 이동될 수 있는 카메라의 확대경 또는 뷰 파인더와 유사한 방식으로 기능한다고 추정한다. 이러한 추정들은 사용자가 모바일 컴퓨팅 디바이스들의 핸드-헬드 휴대성을 이용하는 정상적인 방식으로 콘텐츠 (예컨대, 애플리케이션들, 파일들, 이미지들 및 문서들) 를 보고 이와 상호작용하게 한다. 모바일 사용자 인터페이스는 사용자들이 문서를 자세히 보기 위해 확대경을 사용하여 책상 또는 벽 위의 문서를 보고 있는 것과 같이 텍스트 문서들을 읽거나 이미지들을 볼 수 있게 한다. 텍스트를 읽기 위해 핸드-헬드 디바이스를 좌측에서 우측으로 이동시키는 것은 텍스트를 읽기 위해 문서들이 우측으로부터 좌측으로 드래그되어야 하는 종래의 그래픽 사용자 인터페이스들의 반직관적인 동작보다 자연스럽다. 다양한 양태들은 디스플레이 사이즈 및 해상도의 제한들로부터 핸드-헬드 디바이스 사용자들을 자유롭게 하는 모바일 사용자 인터페이스를 제공할 뿐만 아니라 마우스, 터치 패드, 터치 스크린 또는 화살표 키들과 같은 포인팅 디바이스들에 대한 필요성을 제거하는, 한 손만 사용하는 동작을 가능하게 한다.
다양한 양태들의 모바일 사용자 인터페이스를 가능하게 하기 위해, 다양한 모션, 거리 및/또는 배향 센서들 중 하나 이상을 사용하여, 2 차원 (2-D) 또는 3 차원 (3-D) 에서 모바일 컴퓨팅 디바이스의 이동이 측정되거나 추정된다. 이러한 센서들은 가속도계들, 거리 측정 센서들, 기울기 센서들, 나침반 센서들, 이미징 센서들 (예컨대, 카메라) 등등을 포함할 수도 있다. 이러한 센서들로부터 수신된 정보는 모바일 컴퓨팅 디바이스 내의 전용 그래픽 프로세싱 칩 또는 프로세서에 의해 사용되어 가상 공간에 고정된 것으로 취급되는, 디스플레이된 콘텐츠 (즉, 문서, 파일 또는 데스크톱) 에 대하여 디바이스의 상대적인 이동을 결정하며, 따라서 디스플레이되는 콘텐츠의 부분을 결정한다. 콘텐츠의 오브젝트들 또는 부분들은 디스플레이 내에서 그러한 부분들을 중심에 위치시킴으로써 선택을 위해 표시될 수 있으며, 따라서 커서뿐만 아니라 마우스, 터치 스크린 또는 터치 패드와 같은 포인팅 디바이스들에 대한 필요성을 제거한다. 그 후에, 버튼을 누르거나, 디바이스를 이동시키거나, 디바이스를 탭핑함으로써 디스플레이의 중심에 위치된 오브젝트들이 선택될 수 있다. 확대 또는 이미지 사이즈는 모바일 컴퓨팅 디바이스를 사용자로부터 멀리 이동시키거나 사용자 쪽으로 이동시킴으로써 조작될 수 있다. 콘텐츠 뷰잉은 모바일 컴퓨팅 디바이스의 기울기 또는 배향을 감지하거나, 3-D 가상 공간에서 모바일 컴퓨팅 디바이스 아래 또는 위에 위치된 콘텐츠를 표시함으로써 가능할 수도 있다. 이러한 모바일 사용자 인터페이스에 의해 보여지거나 조작되는 콘텐츠는 비디오 재생장치의 경우와 같이 로컬 저장 장치로부터 또는 (예컨대) 웹 브라우징 또는 비디오 스트리밍의 경우와 같이 무선 인터페이스를 통해 전달될 수도 있는 외부 소스들로부터 획득될 수도 있다.
도 2는 본 발명의 다양한 양태들에서 구현될 수도 있는 기본 동작들을 프로세스 (200) 내에 구현한다. 프로세스 (200) 의 블록 (12) 에서, 문서, 파일 또는 데스크톱과 같은 콘텐츠가 모바일 사용자 인터페이스 내에서 오픈되면, 콘텐츠는 프로세서 또는 전용 그래픽 프로세싱 칩에 의해 모바일 컴퓨팅 디바이스에 대하여 가상 공간 내에 고정되는 것으로 취급된다. 이러한 동작에서, 콘텐츠가 오픈되면, 콘텐츠는 모바일 컴퓨팅 디바이스의 실제 위치 및 배향과 상관없이 모바일 컴퓨팅 디바이스 (및 따라서 사용자) 로부터의 미리 설정된 거리 및 미리 설정된 배향으로 고정될 수도 있다. 따라서, 문서 또는 파일이 오픈될 때마다, 이들은 모바일 컴퓨팅 디바이스 및 사용자에 대하여 동일한 상대적인 위치에 나타날 수도 있다.
프로세스 (200) 의 블록 (14) 에서, 모바일 컴퓨팅 디바이스의 프로세서는 실제 공간에서 디바이스의 위치를 결정할 수도 있다. 고정된 좌표 시스템 (예컨대, 사용자에 중심을 두는) 좌표들에 대한 절대 좌표들 또는 초기 위치 (예컨대, 모바일 사용자 인터페이스가 활성화되었을 때 모바일 컴퓨팅 디바이스의 위치) 에 대한 이동에 관해서, 실제 공간에서 위치의 결정이 실행될 수도 있다. 예를 들면, 프로세서 또는 전용 그래픽 프로세싱 칩은 인근의 표면들로의 거리 측정치들을 수신할 수도 있고, 이러한 정보로부터 사용자에 중심을 두는 좌표 시스템 또는 디바이스의 위치가 3 차원에서 식별될 수 있는 방 또는 볼륨 (예컨대, 차량) 내의 좌표 시스템을 정의할 수도 있다. 대안적으로, 프로세서 또는 전용 그래픽 프로세싱 칩은 시작점으로부터 모바일 컴퓨팅 디바이스들의 가상 공간에서의 이동을 추적하고, 사용자 또는 방에 대한 시작점의 위치와 관계없이 이러한 시작점으로부터의 거리 면에서 그 위치를 3-D 공간에서 정의할 수도 있다. 일부 구현들에서, 모바일 컴퓨팅 디바이스는 거리 측정 및 배향 측정 센서들을 사용하여 그 위치를 실제 공간에서 측정할 수도 있다. 다른 구현들에서, 모션 또는 가속도만이 측정될 수도 있고, 위치 및 배향은 가상 공간 내에 고정된 파일이 오픈된 시점에 (즉, 블록 (12) 또는 프로세스 (200) 에서) 디바이스의 시작 위치와 관련하여 추정될 수도 있다.
프로세스 (200) 의 블록 (16) 에서, 모바일 컴퓨팅 디바이스 내의 프로세서는 모바일 컴퓨팅 디바이스의 결정되거나 추정된 시작 위치 및 오픈 콘텐츠의 가상 공간 내의 고정된 위치에 기초하여 디스플레이의 시계 (view field) 내에 있는 콘텐츠의 부분을 결정한다. 이러한 동작은 디스플레이의 뷰잉 시점 및 오픈 콘텐츠의 대응하는 부분을 식별하기 위해 콘텐츠에 적용될 확대를 결정할 수도 있다. 이러한 동작은 다양한 공지된 그래픽 또는 벡터 프로세싱 알고리즘들 중 임의의 알고리즘을 사용하여 달성될 수도 있다. 프로세서 (200) 의 블록 (18) 에서, 모바일 컴퓨팅 디바이스 내의 프로세서는 시계 내의 콘텐츠의 결정된 부분을 사용하여 디스플레이에 표시되는 이미지를 생성한다.
프로세스 (200) 의 블록 (22) 에서, 모바일 컴퓨팅 디바이스의 뷰잉 시점에서의 변경은 위치 또는 모션 센서 데이터를 수신하는 프로세서에 의해 결정될 수도 있다. 그러한 데이터를 사용하여, 프로세스 (200) 의 블록 (24) 에서, 모바일 컴퓨팅 디바이스는 가상 공간 내에 고정된 콘텐츠에 대하여 시계 내에서의 변경을 결정할 수 있다. 도 10 내지 도 14를 참조하여 하기에서 상세히 설명되는 것과 같이, 다양한 위치, 모션 및 배향 센서들은 프로세스 (200) 의 블록 (22) 에서 모바일 컴퓨팅 디바이스의 상대적인 위치 또는 이동을 결정하기 위해 사용될 수도 있다. 센서 정보는 프로세스 (200) 의 블록 (24) 에서 모바일 컴퓨팅 디바이스의 화각 또는 위치의 변경을 결정하기 위해 사용될 수도 있고, 프로세스 (200) 의 블록 (14) 으로 복귀하여 실제 공간에서 모바일 컴퓨팅 디바이스의 새로운 위치를 결정하기 위해 사용된다. 대안적으로, 블록 (22) 에서 수신된 센서 데이터는 블록 (14) 으로 복귀하여 실제 공간에서 디바이스의 새로운 위치를 결정하기 위해 사용될 수도 있다. 그 후에, 모바일 컴퓨팅 디바이스의 새로운 위치가 결정되면, 블록 (16) 에서 콘텐츠의 보여지는 부분을 결정하는 프로세스 및 블록 (18) 에서 콘텐츠를 디스플레이하는 프로세스가 반복된다.
(모바일 컴퓨팅 디바이스 이동 또는 위치를 결정하고, 콘텐츠의 적절한 부분을 디스플레이하는) 프로세스 (200) 의 블록들 (14 내지 24) 은 연속해서 반복될 수도 있다. 반복 레이트는 비디오 카메라 뷰파인더 디스플레이와 같이 기능하는 끊김없는 모바일 사용자 인터페이스를 제공하기 위해 빈도 주기성을 가질 수도 있다. 실제 공간에서 모바일 컴퓨팅 디바이스의 이동과 가상 공간에서 오픈 콘텐츠의 뷰잉 시점의 변경들 사이의 상관관계는 더 나은 사용자 경험을 제공하기 위해 일 대 일 또는 기타 다른 비율이 될 수 있다. 참조를 용이하게 하기 위해, 실제 공간에서 모바일 컴퓨팅 디바이스의 이동과 뷰잉 시점에서 변경들 사이의 이러한 상관관계는 본 명세서에서 "가상 이동 스케일링 인자" 라 지칭된다. 가상 이동 스케일링 인자는 디스플레이가 실제 공간에서 주어진 이동을 위해 가상 공간에 오픈 콘텐츠를 가로질러 이동하는 것처럼 보이는 거리를 결정하기 위해 모바일 컴퓨팅 디바이스에 의해 적용되는 인자이다. 가상 이동 스케일링 인자는 일대일이 되어 실제 공간에서 한 발의 이동이 디스플레이된 콘텐츠의 한 발의 이동을 발생하거나, 일대일 미만이 되어 실제 공간에서 한 발의 이동이 디스플레이된 콘텐츠의 한 발 미만의 이동을 발생하거나, 일대일 이상이 되어 실제 공간에서 한 발의 이동이 디스플레이된 콘텐츠 한 발 이상의 이동을 발생하도록 할 수 있다. 예컨대, 모바일 컴퓨팅 디바이스를 잡고 있는 사용자의 손의 정규 지터 및 랜덤 이동들은 디스플레이가 변경할 때마다 이러한 이동들이 직접 구현되는 경우에 방해하는 디스플레이 이미지를 발생할 수 있다.
모바일 컴퓨팅 디바이스의 3-인치 수평 이동을 오픈 콘텐츠의 뷰잉 시점에서 2-인치 변경에 상관시키는 것과 같이, 모바일 컴퓨팅 디바이스의 측정된 이동 미만인 (일-대-일 상관 미만인) 레이트로 뷰잉 시점을 변경시킴으로써 더 많은 만족스러운 디스플레이가 생성될 수도 있다. 일 양태에서, 모바일 컴퓨팅 디바이스 이동은 디지털 이미징 시스템들 (예컨대, 카메라들 및 비디오 카메라들) 에서 구현되는 것과 유사한 핸드-지터 감소(HJR) 또는 디지털 이미지 안정화 (DIS) 기술들을 구현함으로써 감소될 수도 있다. 일 양태에서, 뷰잉 시점의 변경은 모바일 컴퓨팅 디바이스의 감지된 이동보다 클 수도 있으며 (즉, 일-대-일 이동 상관보다 클 수도 있으며), 사용자들이 모바일 컴퓨팅 디바이스의 상대적으로 평범한 이동에 따라 대형 콘텐츠 (대형의 고해상도 이미지들) 를 신속하게 스캔할 수 있게 한다. TV-Out 이 모바일 컴퓨팅 디바이스 내의 모바일 UI (MUI) 에 기초하여 외부 대형 스크린상에서 문서를 보기 위해 사용될 때, 스크린 사이즈/해상도가 문서 자체보다 클 수 있는 경우에도 그 사용은 유사할 것이다.
추가의 양태에서, 뷰잉 시점에서의 변경들과 모바일 컴퓨팅 디바이스의 실제 이동들 사이의 상관관계는 버튼의 누름 또는 슬라이드 작동 또는 실제 공간에서 디바이스의 가속도율에 응답하여 사용자에 의해 조정될 수도 있다. 일 양태에서, 프로세스 (200) 의 블록 (24) 에서 센서 데이터에 기초하여 뷰잉 시점의 변경을 결정하는 동작은 임계치 값들에 대하여 센서 데이터를 테스트할 수도 있으며, 따라서 센서 값들이 현재 임계치 미만인 경우에 뷰잉 시점에서 어떠한 변경도 발생하지 않는 것으로 결정된다. 그러한 감도 임계치들을 사용함으로써 모바일 컴퓨팅 디바이스의 부주의한 작은 이동으로 인한 디스플레이 내의 곤란한 변경들이 제거될 수도 있다. 따라서, 이동하는 차량 내에서 디스플레이를 볼 때, 디스플레이는 차량 이동 모션과 연관된 진동들 및 부딪힘들에 의해 영향받지 않을 수도 있다. 다른 한편으로는, 디스플레이된 이미지가 모바일 컴퓨팅 디바이스가 신속하게 이동할 때조차 가상 공간에서 안정적이고 고정된 것으로 보이도록 하기 위해, 모바일 사용자 인터페이스는 디바이스 이동들에 매우 민감하도록 구성될 수도 있다. 이러한 구성은 모바일 컴퓨팅 디바이스가 자동차 또는 비행기와 같이 울퉁불퉁한 길을 경험하는 이동중인 차량에서 사용되고 있을 때 더 만족스러운 사용자 경험을 제공할 수도 있다. 추가의 양태에서, HJR 및 DIS 기술들은 추가의 툴 또는 대안적인 접근 방식으로서 디스플레이된 이미지를 안정시키는 것을 돕기 위해 사용될 수도 있다.
모바일 사용자 인터페이스를 뒷받침하는 추정들이 도 3 에 설명된다. 이러한 도면은 콘텐츠 (40) 가 가상 공간 내에 고정되고, 마치 비디오 카메라의 뷰파인더 디스플레이를 통해 보는 것처럼 모바일 컴퓨팅 디바이스 (230) 의 디스플레이 (30) 의 시점을 통해 보여지는 것으로 추정된다. 모바일 컴퓨팅 디바이스 (230) 내의 모션, 위치 및/또는 배향 센서들은 프로세서 또는 전용 그래픽 프로세싱 칩이 실제 공간 내에서의 위치 또는 모션을, 벡터들 "X+"(33), "X-"(34), "Y+"(36), "Y-"(35), "Z+"(37) 및 "Z-"(38) 에 의해 도 3에 표시된 3 차원에서 결정하기 위해 사용될 수 있다. 모바일 컴퓨팅 디바이스 (230) 의 위치 또는 이동은 프로세서 또는 전용 그래픽 프로세싱 칩에 의해 디스플레이 (30) 상에 표시되어야 하는 콘텐츠 (40) 의 보여지는 부분 (42) 을 결정하기 위해 사용된다. 보여지는 부분 (42) 은 디스플레이 (30) 의 사이즈, 콘텐츠 (40) 에 적용되는 확대 ( Z 차원 (37, 38) 을 따르는 공간에서의 위치에 기초하여 결정될 수도 있음) 및 X (33, 34) 공간 및 Y (35, 36) 공간에서의 화각 또는 위치에 따라 결정된다. 예를 들어, X- (34) 배향에서 모바일 컴퓨팅 디바이스 (230) 의 이동은 나란한 배향 (44) 에서 콘텐츠 (40) 의 보여지는 부분 (42) 의 이동으로 옮겨질 수도 있다. 전술된 것과 같이, 오픈 콘텐츠 (40) 내에서 보여지는 부분 (42) 의 이동은 실제 공간에서 모바일 컴퓨팅 디바이스의 이동들과 동일하거나, 작거나, 클 수도 있으며, 그러한 상관 관계는 사용자가 조정가능하고 및/또는 콘텐츠에 따라 결정된다.
모바일 사용자 인터페이스의 동작은 도 4, 도 5a 및 도 5b 에서 설명되는 예를 참조하여 이해될 수도 있다. 도 4는 디지털 사진 파일과 같이, 모바일 컴퓨팅 디바이스 디스플레이 상에 디스플레이될 이미지 (50) 를 도시한다. 이미지 (50) 의 치수 사이즈가 통상의 모바일 컴퓨팅 디바이스 (230) 의 디스플레이 (239) 보다 훨씬 크기 때문에, 이미지를 디스플레이하는 것은 이미지의 사이즈를 디스플레이에 맞게 줄이거나, 디스플레이 (239) 내에 맞는 이미지 (50) 의 일부분을 표시하는 것을 요구한다. 디스플레이될 이미지 (50) 의 비율을 결정하기 위해, 모바일 사용자 인터페이스는 실제 공간에서 모바일 컴퓨팅 디바이스 (230) 의 위치 및/또는 배향을 결정하고, 이러한 정보로부터 디스플레이 (239) 상에 표시할 이미지 부분 (50a) 을 결정한다. 이는 도 5a 에서 설명되며, 모바일 컴퓨팅 디바이스 (230) 의 위치 또는 배향이 도시되고, 따라서 디스플레이 (239) 상에 표시되는 이미지 부분 (50a) 은 이미지 (50) 의 좌측 단부 근방에 중심을 두게 된다. 사용자가 모바일 컴퓨팅 디바이스 (230) 를 우측으로 측면 이동시키면, 실제 공간에서 이러한 위치 변경은 모바일 사용자 인터페이스에 의해 도 5b 에 도시된 것과 같이 보여지는 변경으로 옮겨진다. 이러한 도면은 모바일 컴퓨팅 디바이스 (230) 의 위치 및 배향을 도시하며, 따라서 디스플레이 (239) 상에 표시된 이미지 부분 (50b) 은 이미지 (50) 중심의 바로 우측에 중심이 위치된다. 따라서, 도 5a 및 도 5b 에서 설명되는 것과 같이, 사용자는 마치 사진 위에서 확대경을 이동시키거나 망원경으로 멀리 떨어진 장면을 스캔하는 것처럼 모바일 컴퓨팅 디바이스 (230) 를 측면에서 측면으로 이동시킴으로써 대형 이미지 (50) 를 간단히 스캔할 수 있다.
모바일 컴퓨팅 디바이스 (230) 의 이동은 디스플레이 (239) 내에 표시된 콘텐츠에 적용되는 확대 또는 사이즈를 제어하기 위해 사용될 수 있다. 이를 달성하기 위한 예시적인 동작들이 도 6에 도시된 프로세스 (600) 에서 설명된다. 도 2를 참조하여 전술된 것과 같이, 프로세스 (600) 의 블록 (12) 에서 처음에 콘텐츠가 오픈되면, 콘텐츠는 모바일 컴퓨팅 디바이스 (230) (및 따라서 사용자) 에 대하여 가상 공간 내에 고정된 것으로 추정된다. 프로세스 (600) 의 블록 (14) 에서, 실제 공간에서 모바일 컴퓨팅 디바이스 (230) 의 초기 위치가 결정되거나 추정된다. 추가로, 프로세스 (600) 의 블록 (60) 에서, 모바일 컴퓨팅 디바이스 (230) 와 사용자 사이의 거리는 다양한 센서들 (예컨대, 카메라 또는 거리 측정 센서) 을 사용하여 결정될 수도 있다. 이러한 거리는 사전 콘텐츠 정보 (폰트 사이즈 등) 와 함께 콘텐츠 확대 시 변경들을 결정하기 위한 기준으로서 사용될 수 있다. 프로세스 (600) 의 블록 (62) 에서, 블록 (60) 에서 측정된 모바일 컴퓨팅 디바이스 (230) 로부터 사용자로의 거리는 콘텐츠에 적용되어야 하는 확대 인자를 결정하기 위해 모바일 컴퓨팅 디바이스 (230) 내의 프로세서 또는 전용 그래픽 프로세싱 칩에 의해 사용될 수도 있다. 처음에, 콘텐츠가 오픈되면, 실행되는 확대는 모바일 컴퓨팅 디바이스 (230) 와 사용자 사이의 거리에 관계 없이 100%와 같은 미리 설정된 디폴트가 될 수도 있다. 그 후에, 모바일 컴퓨팅 디바이스 (230) 가 사용자 쪽으로 또는 사용자로부터 떨어져서 (즉, Z 축 (37, 38) 을 따라) 이동됨에 따라, 거리에 기초하여 결정되는 확대 인자는 초기값으로부터 변화할 것이다.
프로세스 (600) 의 블록 (16) 에서, 모바일 컴퓨팅 디바이스 (230) 는 실제 공간에서 모바일 컴퓨팅 디바이스 (230) 의 결정된 위치, 모바일 컴퓨팅 디바이스 (230) 의 배향 및 결정된 확대 인자, 프로세서 또는 전용 그래픽 프로세싱 칩에 기초하여 보여지는 부분 (42) 내에 있는 콘텐츠의 부분을 결정할 수도 있다. 프로세스 (600) 의 블록 (18) 에서, 이러한 정보 및 콘텐츠 데이터는 디스플레이를 생성하기 위해 사용될 수 있다. 프로세스 (600) 의 블록 (22) 에서, 모바일 컴퓨팅 디바이스 (230) 내의 프로세서 또는 전용 그래픽 프로세싱 칩은 블록 (14) 으로 복귀하여 실제 공간에서 모바일 컴퓨팅 디바이스 (230) 의 업데이트된 위치를 결정하기 위해 사용될 수 있는 위치, 모션 및/또는 배향 센서 데이터를 수신한다. 블록 (22) 에서 위치, 모션 및/또는 배향 센서들로부터 수신된 정보는 블록 (60) 에서 모바일 컴퓨팅 디바이스 (230) 로부터 사용자로의 업데이트된 거리를 결정하기 위해 사용될 수도 있다. 빈번한 주기로 실행하는 연속 루프에서 프로세스 (600) 를 반복함으로써, 프로세서 또는 전용 그래픽 프로세싱 칩은 디스플레이 내에 콘텐츠의 부분을 끊김없이 표시하는 모바일 컴퓨팅 디바이스를 제공할 수 있으며, 이는 콘텐츠에 적용되는 확대시 모바일 컴퓨팅 디바이스 (230) 의 전향 및 후향 이동들 (즉, Z 축 (37, 38) 을 따른) 을 반영한다. 일 구현에서, 사용자-대-디바이스 거리에 기초하여 확대를 조정하는 동작은 특정 버튼의 누름 또는 디스플레이된 아이콘의 활성화에 응답하여 사용자에 의해 선택적으로 활성화되거나 정지될 수도 있으며, 따라서 사용자는 콘텐츠가 일정한 확대로 디스플레이되도록 선택할 수 있다.
모바일 사용자 인터페이스의 확대 동작은 도 7a 및 7b 에 도시된 예를 참조하여 이해될 수도 있다. 이러한 도면들은 도 4에 도시된 이미지 (50) 의 보여지는 부분이 모바일 컴퓨팅 디바이스 (230) 와 사용자 사이의 상대적인 거리 (즉, Z축 (37, 38) 을 따른) 에 따라 확대시 조정되는 모바일 컴퓨팅 디바이스 (230) 를 도시한다. 예를 들면, 도 7a 는 모바일 컴퓨팅 디바이스 (230) 가 사용자에 더 가깝게 움직이는 (즉, Z축 (37, 38) 을 따라) 상황을 도시하며, 도 5a 에 도시된 이미지 부분 (50a) 과 비교할 때 확대된 보여지는 이미지 부분 (50c) 을 발생한다. 대조적으로, 도 7b 는 모바일 컴퓨팅 디바이스 (230) 가 사용자로부터 더 멀리 떨어지는 (즉, Z축 (37, 38) 을 따라) 상황을 도시하며, 이미지 (50) 의 사이즈를 감소시키는 확대를 발생하며, 이는 디스플레이 (239) 의 한정 부분들 내에 맞게 된다.
디스플레이 내에 표시하고 있는 콘텐츠 이외에, 사용자 인터페이스는 동작들 동안 디스플레이의 오브젝트들 또는 부분들을 선택하는 능력을 제공해야 한다. 종래의 그래픽 사용자 인터페이스에서, 콘텐츠와의 그러한 상호 작용들은 사용자들이 디스플레이 윈도우 내에서 커서를 위치시키도록 조작할 수 있는 마우스, 터치 스크린 또는 터치 패드와 같은 포인팅 디바이스들에 의해 인에이블된다. 공지된 것과 같이, 종래의 그래픽 사용자 인터페이스들의 사용자들은 포인팅 디바이스를 사용하여 커서를 원하는 오브젝트 위에 위치시키고, 그 후에 버튼 (예컨대, 마우스 버튼) 을 클릭하거나 포인팅 디바이스 (예컨대, 터치 스크린 또는 터치 패드) 를 두드림으로써 디스플레이된 콘텐츠의 부분들 또는 아이템을 선택할 수 있다.
종래의 그래픽 사용자 인터페이스의 동작들의 개관이 도 8에 도시된 프로세스 (800) 에서 설명된다. 도 1을 참조하여 전술된 것과 같이, 프로세스 (800) 의 블록 (2) 에서, 사용자 인터페이스는 디스플레이 윈도우 내의 콘텐츠 (예컨대, 파일, 문서 또는 데스크톱) 의 위치를 결정한다. 프로세스 (800) 의 블록 (3) 에서, 사용자 인터페이스는 윈도우 내에서 커서의 위치를 결정한다. 프로세스 (800) 의 블록 (4) 에서 사용자 인터페이스는 콘텐츠의 디스플레이 및 커서를 가지는 윈도우를 생성한다. 사용자가 마우스 버튼 (예컨대, 좌측 마우스 버튼) 을 클릭하거나, 터치 스크린 또는 터치 패드를 두드릴수도 있는 임의의 지점에서, 상기 경우에 버튼의 누름은 그래픽 사용자 인터페이스에 커서의 부근에서 디스플레이 내의 아이템이 선택될 것임을 통지한다. 프로세스 (800) 의 블록 (82) 에서, 그래픽 사용자 인터페이스는 커서에 의해 표시되는 디스플레이 윈도우의 부분에 대응하는 콘텐츠를 결정한다. 프로세스 (800) 의 블록 (3) 에서, 그래픽 사용자 인터페이스는 활성화되거나, 특정 콘텐츠에 적절한 동작을 취한다. 프로세싱은 콘텐츠에 의해 결정되는 동작들 또는 그래픽 사용자 인터페이스의 나머지 동작들로 진행할 수 있다. 따라서, 종래의 그래픽 사용자 인터페이스는 통상적으로 포인팅 디바이스를 사용한 커서의 조작 및 선택된 버튼의 동작을 요구한다.
종래의 그래픽 사용자 인터페이스와는 반대로, 모바일 사용자 인터페이스는 커서의 조작을 필요로 하지 않으며, 따라서 포인팅 디바이스 (예컨대, 마우스 또는 터치 스크린) 으로부터의 입력을 요구하지 않는다. 대신에, 사용자는 원하는 콘텐츠 또는 오브젝트가 디스플레이된 필드 내의 중심에 위치될 때까지 공간 내에서 모바일 컴퓨팅 디바이스를 간단히 이동시킬 수 있다. 이러한 내용이 도 9에 도시된 프로세스 (900) 에서 설명된다. 도 2를 참조하여 전술된 것과 같이, 프로세스 (900) 의 블록 (14) 에서, 프로세서 또는 전용 그래픽 프로세싱 칩은 실제 공간에서 모바일 컴퓨팅 디바이스의 위치를 결정하기 위해 위치, 모션 및/또는 배향 센서들로부터 신호들을 수신할 수도 있다. 이러한 정보를 사용하여, 프로세스 (800) 의 블록 (16) 에서, 프로세서 또는 전용 그래픽 프로세싱 칩은 디스플레이 상의 프리젠테이션을 위한 적절한 이미지를 생성한다. 프로세스 (800) 의 블록 (18) 에서 프로세서 또는 전용 그래픽 프로세싱 칩은 디스플레이 상의 프리젠테이션을 위해 적절한 이미지를 생성한다. 이러한 프로세스는 모바일 컴퓨팅 디바이스 상의 버튼을 누름으로써 선택이 실행될 것인지를 표시할 때까지 계속된다. 이러한 상황에서, 프로세스 (800) 의 블록 (85) 에서, 모바일 컴퓨팅 디바이스 내의 프로세서 또는 전용 그래픽 프로세싱 칩은 선택 버튼이 눌려졌음을 표시하는 신호를 수신한다. 버튼의 누름 대신에, 사용자의 흔들기, 플립, 회전, 탭핑 또는 모바일 컴퓨팅 디바이스의 기타 다른 인식가능한 조작을 수행하는 것에 의해 표시될 수도 있다. 이러한 버튼의 누름 또는 조작은 본질적으로 종래의 그래픽 사용자 인터페이스에서 마우스-버튼의 누름을 대신한다. 이에 응답하여, 프로세스 (800) 의 블록 (87) 에서, 프로세서 또는 전용 그래픽 프로세싱 칩은 시계의 중심에 있는 콘텐츠의 선택 (즉, 디스플레이의 중심 또는 그 근방에 위치된 콘텐츠의 부분) 을 결정할 수도 있다. 시계의 중심은 필드 중심 10% 와 같이 보여지는 필드 또는 디스플레이의 미리 결정된 부분이 될 수도 있다. 시계의 콘텐츠 선택 부분의 형상은 원 또는 사각형 형태로 조정가능할 수 있다.
디스플레이는 사용자가 모바일 사용자 인터페이스를 사용하여 보여지는 컨텐츠의 부분들을 선택하는 것을 돕기 위해 시각적 신호들 또는 보조물들을 포함할 수도 있다. 예컨대, 십자선, 선택 박스 또는 서클, 또는 일부 다른 형태의 내재된 커서는 사용자들이 모바일 컴퓨팅 디바이스를 위치시키는 것을 돕기 위해 디스플레이 상에 표시될 수도 있고, 따라서 필드의 중심은 원하는 콘텐츠에 대응한다. 시계의 중심에 있는 콘텐츠가 결정되면, 프로세스 (800) 의 블록 (89) 에서 프로세서 또는 전용 그래픽 프로세싱 칩은 그 콘텐츠를 활성화하거나, 선택 내용 또는 선택된 아이템에 기초하여 적절한 동작을 계속한다. 예컨대, 뷰 필드의 중심이 홈페이지 내에 디스플레이된 애플리케이션을 활성화시키기 위해 아이콘과 같이 정의된 함수가 있는 오브젝트를 포함하면, 프로세서 또는 전용 그래픽 프로세싱 칩은 블록 (89) 에서 설명되는 동작의 일부로서 파일을 활성화시킬 수도 있다. 그 후에, 활성화된 콘텐츠와 연관된 동작들 또는 모바일 사용자 인터페이스의 동작들과 함께 추가의 프로세싱이 계속 될 수 있고, 모바일 컴퓨팅 디바이스의 새로운 위치를 결정하기 위해 프로세스 (900) 의 블록 (14) 으로 복귀하는 것을 포함한다.
디스플레이 내에 제공되는 선택 보조물들 및 내재된 커서들은 오픈 콘텐츠의 속성, 사용가능한 사용자 동작들의 속성 및 디스플레이 내의 임의의 아이콘들 및 동작할 수 있는 그래픽들의 속성에 따라 그 특징 및 사이즈가 변화할 수도 있다. 예를 들어, 내재된 커서는 십자선 또는 사격 조준기 (예컨대, 전자 게임에서 사용되는 것과 유사함), 선택 박스, 서클, 또는 타원, 화살표, 손가락표시, 해상도 대비 영역 (예컨대, 더 높은 해상도, 더 높은 밝기), 등등의 형태가 될 수도 있다. 추가로, 내재된 커서 또는 선택 보조물의 타입, 형상 및 사이즈는 모바일 컴퓨팅 디바이스에 실행중인 애플리케이션 또는 디스플레이된 콘텐츠와 사용가능한 사용자 동작들에 가장 적절한 선택 툴을 사용자들에게 제공하기 위한 디스플레이된 콘텐츠에 의해 정의될 수도 있다. 예를 들면, 십자선은 사용자가 (예컨대, 버튼을 누름으로써) 선택 툴을 활성화하지 않으면 이미지가 디스플레이가 디스플레이될 때 표시되지 않을 수도 있다. 또 다른 예로서, 선택 보조 박스의 사이즈 및 형상은 디스플레이 내에 나타나는 텍스트 문서의 워드 사이즈에 적합하도록 그 형상을 변경시킬 수도 있으며, 따라서 사용자는 워드 또는 숫자 (예컨대, 편집용) 를 선택 보조 박스 내에 맞게 선택할 수 있다. 추가로, 선택 보조물은 아이콘이 활성화될 수 있음을 표시하기 위해 동작 아이콘이 디스플레이의 중심 근방에 나타날 때 확대된 손가락을 가진 손과 같은 아이콘을 형성하도록 그 형상을 변경할 수도 있다. 예를 들어, URL 이 문서 (예컨대, 이메일 또는 SMS 메세지) 내에 나타나는 경우에, 확대된 손가락을 가진 손 형태의 내재된 커서는 사용자가 버튼을 누르거나, 모바일 컴퓨팅 디바이스를 플립하거나, 기타 다른 활성화 동작을 수행함으로써 그 URL 어드레스에서 웹 사이트에 액세스할 수 있음을 표시하기 위해 URL 이 디스플레이 중심에 위치될 때 나타날 수도 있다. 이와 같은 방식으로, 모바일 사용자 인터페이스의 디스플레이 내에 제공되는 선택 보조물은 그래픽 사용자 인터페이스 내의 종래의 커서들에서 사용되는 것과 유사한 방식으로 동작할 수도 있다. 또한, 이러한 내재된 커서들 또는 선택 보조물들은 사용자에 의해 스위치 오프될 수도 있거나, 사용자를 혼란스럽게 하고 디스플레이를 어수선하게 하는 것을 방지하기 위해 사용가능한 선택이 존재하지 않을 때 디스플레이되지 않을 수도 있다.
구현될 수 있는 선택 보조물들 또는 내재된 커서들의 일부 예들이 도 10a - 도 10f 에 설명된다. 도 10a 에 도시된 것과 같이, 선택 보조물은 디스플레이 (239) 의 중심점을 식별하는 십자선 (2391) 의 형태가 될 수도 있다. 이러한 선택 보조물 형태는 사용자가 디스플레이의 정확한 부분을 선택할 수 있을 때 복사 또는 삭제를 위해 디스플레이의 일부분을 끌어당기거나 선 또는 다른 도형을 그리는데 유용할 수도 있다. 도 10b 에 도시된 것과 같이, 선택 보조물은 디스플레이 (239) 의 중심 부분을 식별하는 원, 타원 또는 박스 (2392) 형태가 될 수도 있다. 도 10b 에 도시된 선택 보조물의 타입은 선택 박스 (2392) 내의 어디든지 존재할 수도 있는 활성화될 오브젝트 또는 아이콘을 선택하기에 적절할 수도 있다. 이러한 선택 보조물 타입은 또한 선택 박스 (2392) 에 맞는 텍스트 또는 숫자들을 선택하기에 유용할 수도 있다. 도 10c 에 도시된 것과 같이, 선택 보조물은 증가된 해상도 또는 증가된 밝기, 음영 또는 디스플레이 (239) 의 중심 볼륨을 식별하는 다른 이미지 특징 (2393) 의 형태가 될 수도 있다. 이러한 선택 보조물들은 그래픽 특징들 (예컨대, 십자선들 (2391) 또는 박스들 (2392)) 이 디스플레이를 어수선하게 하는 경우에 유용할 수도 있다.
전술된 설명 및 도 10a 내지 10c 는 디스플레이 중심을 표시하는 선택 보조물을 설명하고 도시하지만, 이러한 선택 보조물들은 도 10d 및 10e 에 도시된 것과 같은 디스플레이의 4개의 코너들 중 하나, 또는 도 10f 에 도시된 것과 같은 인접한 하나의 에지와 같이 디스플레이 내의 임의의 위치에 위치될 수도 있다. 센터 부분으로부터 옮겨진 디스플레이의 일부분에 선택 보조물을 제공하는 것은 중심에 위치된 보조물이 이미지를 어수선하게 하는 경우 또는 메뉴 아이콘들이 오픈 콘텐츠의 일 측을 따라 또는 코너들에 인접하여 위치될 때와 같은 일부 애플리케이션들 또는 콘텐츠에서 유리할 수도 있다. 예를 들어, 도 10d 에 도시된 것과 같이 디스플레이 (239) 의 코너에 위치된 선택 보조 박스 (2394) 는 디스플레이의 중심 부분이 어수선함을 제거하게 할 것이다. 또 다른 예로서, 중심으로부터 제거되는 위치 내에 선택 보조물을 배치함으로써, 선택 보조 박스 (2395) 는 도 10e 에 도시된 것과 같이 콘텐츠의 상부에 표시되는 (즉, 기본적인 콘텐츠를 모호하게 하는) 메뉴 옵션들 (예컨대, "다음") 을 포함할 수 있다. 이러한 구현은 (예컨대, 슬라이드 쇼 내의 그림들을 표시할 때 "다음" 과 같이) 디스플레이의 중심에 나타나는 콘텐츠에 적절한 특정 메뉴 또는 기능 옵션들의 디스플레이를 가능하게 할 수도 있다. 추가로, 선택 보조물들은 디스플레이의 코너들에 제한될 필요는 없으며, 대신에 (예컨대, Apple Inc. Leopard® 운영 시스템에서 구현되는) 콘텐츠의 하부를 따라 배열된 선택 메뉴들 또는 아이콘들을 위해 도 10f 에 도시된 것과 같은 디스플레이의 하부를 따라 연장된 선택 보조 박스 (2396) 와 같이, 사람 인자들 및 사용자 인터페이스 기능 고려조건들에 기초하여 다른 위치들에 표시될 수도 있다.
도 9에 도시된 모바일 사용자 인터페이스의 콘텐츠 식별 및 선택 능력들은 다수의 상황들에서 사용자 경험을 개선할 수 있다. 동작을 위해 2 개의 손을 필요로 하는 (즉, 한 손은 모바일 컴퓨팅 디바이스를 잡고, 다른 손은 포인팅 디바이스를 조작함) 종래의 그래픽 사용자 인터페이스와 달리, 그래픽 사용자 인터페이스는 원하는 콘텐츠가 시계 중심에 위치될 때까지 공간 내에서 모바일 컴퓨팅 디바이스를 이동시킴으로써 사용자가 콘텐츠만을 선택할 수 있게 한다. 따라서, 모바일 사용자 인터페이스의 동작 및 콘텐츠의 선택은 한 손으로 달성될 수 있다. 사용자는 통상적으로 모바일 컴퓨팅 디바이스를 잡고 있는 손과 동일한 손으로 키를 누를 수 있기 때문에, 특히 키가 모바일 컴퓨팅 디바이스의 측면에 위치될 때, 원하는 오브젝트 위에 디스플레이의 중심을 위치시키고, 선택 버튼을 활성화시키는 프로세스는 한 손으로 달성될 수 있다. 이러한 간략화된 선택 및 활성화 동작은 특히 다수의 사용자 상황들에서 모바일 컴퓨팅 디바이스들에 유용할 수도 있다.
전술된 것과 같이, 다수의 서로 다른 위치, 모션 및/또는 배향 센서들은 모바일 사용자 인터페이스를 지원하기 위해 모바일 컴퓨팅 디바이스 내에 구현될 수도 있다. 예를 들어, 도 11 은 공간 내에서 일부 초기 시작 위치와 관련하여 모바일 컴퓨팅 디바이스의 위치를 결정하기 위한 가속도계들을 사용하도록 구현될 수도 있는 프로세스 (1100) 를 설명한다. 위치/모션 센서 데이터를 수신하는 (도 2의 블록 (22)) 일부로서, 프로세스 (1100) 의 블록 (90) 에서 모바일 컴퓨팅 디바이스의 프로세서 또는 전용 그래픽 프로세싱 칩은 모바일 컴퓨팅 디바이스 내의 가속도계들로부터 가속도계 데이터를 수신할 수 있다. 가속도계들은 하나의 축을 따라 가속도를 감지하고, 측정된 가속도의 크기를 나타내는 신호를 출력하는 공지된 전자 컴포넌트들이다. (사용자의 손의 무의식적인 이동들에 의해 발생될 수도 있는 것과 같은) 모바일 컴퓨팅 디바이스의 가벼운 이동들을 무시하는 것이 바람직할 수도 있기 때문에, 프로세스 (1100) 의 결정 블록 (92) 에서, 수신된 가속도계 데이터는 미리 결정된 임계값과 비교될 수도 있고, 따라서 임계값 미만의 가속도들은 무시될 수 있다. 측정된 가속도와 임계값의 이러한 선택적인 비교는 사용자의 손의 작은 쉐이킹 또는 드리프트에 응답하여 디스플레이 내의 위치를 변경하기 위해 콘텐츠가 나타나는 것을 방지하는 역할을 할 수도 있다. 다른 한편으로는, 이러한 선택적인 비교는 사용자에 의해 구현되지 않을 수도 있거나 비활성화될 수도 있으며, 따라서 사용자의 손과 모바일 컴퓨팅 디바이스가 (이동하는 차량 내에서 발생할 수도 있는 것처럼) 공간 내에서 이리저리 흔들리는 동안에도 디스플레이되는 콘텐츠는 고정된 것으로 보인다. 이러한 특징을 비활성화시키는 것은 모바일 컴퓨팅 디바이스가 랜덤하게 이동함에 따라 눈이 집중할 수 있는 더 안정적인 이미지를 제공할 수도 있다. 동작 모드에 대한 사용자의 선호도는 콘텐츠 및 사용자 환경들에 따라 결정될 수도 있다.
만약 가속도계 데이터가 임계값을 초과하면 (즉, 결정 블록 (92) = "예"), 프로세스 (1100) 의 블록 (94) 에서 프로세서 또는 전용 그래픽 프로세싱 칩은 일정 시간 간격에 걸쳐 데이터를 통합할 수 있다. 프로세스 (1100) 의 블록 (96) 에서, 프로세서 또는 전용 그래픽 프로세싱 칩은 실제 공간 내에서 위치의 변경을 결정하기 위해 상기 산출 결과들을 사용할 수 있다. 기초 물리학으로부터, 일정 시간 간격에 걸친 위치의 변경 △X 은 하기의 식으로부터 결정될 수 있음이 공지된다:
△Xt = ½At2 + V0t
상기 △Xt 는 인터벌 기간 t 내에 위치의 변경이고,
A 는 가속도계에 의해 측정되는 것과 같은 가속도이며,
V0 는 식: V0 = At + Vi 으로부터 지난 인터벌 내에서 결정될 수 있는 기간 t 의 시작 전 속도이다.
3 차원에서 (즉, X, Y, Z 축을 따라) 이동을 측정하기 위해, 모바일 컴퓨팅 디바이스 (230) 는 3 개의 직교 배향들을 따라 가속도를 측정하도록 위치되고 구성된 3 개 (또는 그 이상) 의 가속도계들을 포함할 수도 있다. 따라서, 프로세서 또는 전용 그래픽 프로세싱 칩은 3 차원에서 실제 공간에서의 위치 변경을 결정하기 위해 블록 (94) 에서 3 차원의 각각에서 판독하는 가속도계를 통합할 수도 있다. 가속도계는 또한 중력을 측정함으로써 중력 벡터에 대하여 모바일 컴퓨팅 디바이스 (230) 의 기울기 각도를 결정하기 위해 사용될 수도 있다. 모바일 사용자 인터페이스의 프로세싱은 도 2 및 도 9 를 참조하여 전술되는 것과 같이 진행할 수 있다.
실제 공간에서 위치 정보는 거리 측정 센서들로부터 획득된 측정 데이터를 사용함으로써 다른 오브젝트들로의 측정된 거리들에 기초하여 결정될 수 있다. 도 12는 실제 공간에서 모바일 컴퓨팅 디바이스 (230) 의 위치를 결정하기 위해 거리 측정 센서들을 사용하도록 구현될 수도 있는 프로세스 (1200) 를 도시한다. 위치/이동 센서 데이터를 수신하는 (도 2의 블록 (22)) 일부로서, 프로세스 (1200) 의 블록 (98) 에서 모바일 컴퓨팅 디바이스 (230) 의 프로세서 또는 전용 그래픽 프로세싱 칩은 모바일 컴퓨팅 디바이스 (230) 내의 거리 측정 센서들로부터 거리 측정 데이터를 수신할 수 있다. 임의의 공지된 거리 측정 센서는 모바일 컴퓨팅 디바이스 (230) 내에서 사용될 수 있으며, 예컨대, 초음파 범위 센서들, 무선 주파수 범위 센서들 (예컨대, 레이더), 광학 센서들 및 적외선 센서들과 같다. 예를 들어, 다수의 신형 자동차들은 방사된 펄스와 수신된 반향 (echo) 사이의 시간에 기초하여 인근의 오브젝트들로의 거리를 결정하기 위해 초음파를 사용하는 거리 센서들을 범퍼들 내에 포함한다. 이러한 초음파 거리 측정 센서들은 불필요한 규모 또는 중량을 부가하지 않고 모바일 컴퓨팅 디바이스 (230) 의 측면들에 맞추기에 충분히 작도록 구성될 수도 있다. 유사하게, 소형 레이더 또는 공학 범위 센서들은 모바일 컴퓨팅 디바이스들에서 사용될 수 있는 사이즈들 및 형태들에서 사용가능할 수도 있다.
거리 측정 센서의 또 다른 형태는 모바일 컴퓨팅 디바이스 (230) 내의 센서들이 시간 지연 측정들 및 삼각 측량에 의해 거리를 결정하도록 추적할 수 있는 다른 물체들 (예컨대, 사용자의 옷 또는 안경) 에 배치될 수 있는 마커들, 비컨들, 신호 에미터들을 활용한다. 예컨대, 적외선 발광 다이오드들 (LED) 과 같은 발광 소자들은 모바일 컴퓨팅 디바이스 (230) 에서 광 센서들에 의해 검출될 수 있는 광을 방출하기 위해 룸 또는 볼륨 (예컨대, 차) 내의 또는 사용자의 (예컨대, 어깨 및 사용자의 옷의 컬러 위의) 다양한 위치들에 위치될 수 있다. 수신된 입사광의 각도 (또는 다른 기하학적 측정치들) 를 감지함으로써, 프로세서 또는 전용 그래픽 프로세싱 칩은 구형 삼각 측량 산출들에 기초하여 사용자로의 거리 및 배향을 결정할 수 있다.
유사하게, 초음파 펄스 에미터들은 모바일 컴퓨팅 디바이스 (230) 상의 초음파 센서에 의해 수신될 수 있는 초음파 펄스들을 방출하기 위해 룸 또는 볼륨 내의 또는 사용자의 다양한 위치들에 위치될 수도 있다. 펄스 위상 또는 시간 지연 (또는 다른 측정치들) 을 언급함으로써, 프로세서 또는 전용 그래픽 프로세싱 칩은 구형 삼각 측량 산출들에 기초하여 사용자로의 거리 및 배향을 결정할 수 있다.
일 구현에서, 이러한 외부 에미터들 또는 비턴들은 모바일 컴퓨팅 디바이스 (230) 에서 분리가능한 아이템들로서 제공될 수도 있고, 상기 아이템들은 사용자들이 모바일 컴퓨팅 디바이스 (230) 로부터 분리할 수 있고, 그들 주변에 모바일 컴퓨팅 디바이스 (230) 가 주어진 영역 내에서 동작할 수 있도록 적절히 위치시킬 수 있다. 공지되거나 향후 개발될 임의의 형태의 콤팩트 거리 측정 센서는 본 명세서에서 설명되는 목적을 위해 사용될 수도 있다.
예시적인 구현에서, 6개 이상의 거리 측정 센서들은 앞, 뒤, 측면, 상부 및 하부로부터의 거리들을 포함하여 모든 배향들에서 거리들을 측정하기 위해 모바일 컴퓨팅 디바이스 (230) 에 구현될 수도 있다. 그러한 배향에서, 거리 측정 센서들은 6개 배향들 각각에서 모바일 컴퓨팅 디바이스 (230) 로부터 인근 표면들로의 거리를 측정할 수도 있다. 예를 들어, 모바일 컴퓨팅 디바이스들이 차 안에서 사용될 때, 위치 감지 거리 측정 센서들은 모바일 컴퓨팅 디바이스 (230) 로부터 차량의 창문, 지붕 및 바닥의 각각으로의 거리 및 사용자로의 거리를 측정할 수도 있다. 유사하게, 측정 센서들은 바닥, 천장 및 인접한 벽들로의 거리를 측정할 수도 있다.
인접한 표면들로의 거리들을 측정하는 목적은 주변 공간 내에서 모바일 컴퓨팅 디바이스 (230) 의 절대 위치를 결정하는 것이 아니라, 특히 콘텐츠가 오픈될 때 모바일 컴퓨팅 디바이스 (230) 의 위치와 관련하여 시간에 따른 모바일 컴퓨팅 디바이스 (230) 의 위치에서의 변경을 결정하기 위해 그러한 측정들을 사용하는 것이다. 따라서, 거리 측정 센서들로부터 수신된 데이터를 사용하여, 프로세스 (1200) 의 블록 (102) 에서, 모바일 컴퓨팅 디바이스 (230) 의 프로세서 또는 전용 그래픽 프로세싱 칩은 측정치들의 최종 세트 이래 시간 간격 내에 외부 표면들로의 거리의 변경을 산출할 수 있다. 예를 들어, 거리 측정 센서들이 모바일 컴퓨팅 디바이스 (230) 의 좌측 인접 표면으로의 거리가 2 인치 만큼 감소되었지만, 모바일 컴퓨팅 디바이스 (230) 의 우측 인접 표면으로의 거리는 2 인치 만큼 증가되었음을 나타내는 경우에, 프로세서 또는 전용 그래픽 프로세싱 칩은 상대적인 공간에서 모바일 컴퓨팅 디바이스 (230) 의 위치에서 2 인치 변경이 있었음을 결정할 수 있다.
사용자가 군중들 내에서 모바일 컴퓨팅 디바이스 (230) 를 사용하는 때와 같이 주변 환경들이 독립적으로 이동하는 상황들을 수용하기 위해, 프로세서 또는 전용 그래픽 프로세싱 칩은 평균값을 획득하기 위해 상반되는 거리 측정 센서들 사이에서 판독들을 평균할 수도 있다. 또한, 프로세서 또는 전용 그래픽 프로세싱 칩은 거리 측정치들이 부정확한, 미리 결정된 범위 밖에 있는 거리 측정치들을 무시하도록 구성될 수도 있다. 예를 들어, 프로세서 또는 전용 그래픽 프로세싱 칩은 이러한 표면들이 외부 표면들과 반대로 사용자와 연관될 수 있기 때문에 몇 인치 더 적은 거리 측정치들을 무시할 수도 있다. 또한, 프로세서 또는 전용 그래픽 프로세싱 칩은 모바일 컴퓨팅 디바이스 (230) 가 외부에 있을 때 상부 거리 센서 내에서의 경우에서와 같이 거리를 표시하지 않는 센서들로부터의 판독들을 무시하도록 구성될 수도 있다.
사용자의 손의 정상적인 무의식적인 이동들 또는 운전중인 차로부터의 진동들과 같은 환경적 이동들을 수용하기 위해, 프로세스 (1200) 의 결정 블록 (104) 에서 거리 측정치들에서의 변경은 미리 결정된 임계값과 비교될 수도 있고, 따라서 작은 이동들은 무시될 수도 있다. 결정된 거리 변경이 임계치를 초과하면 (즉, 결정 블록 (104) = "예"), 프로세스 (1200) 의 블록 (106) 에서 프로세서 또는 전용 그래픽 프로세싱 칩은 실제 공간에서 컴퓨팅 디바이스 (230) 의 위치에서의 변경을 결정하기 위해 산출된 거리 변경을 사용할 수도 있다. 모바일 사용자 인터페이스의 프로세싱은 그 후에 도 2 및 도 9 를 참조하여 전술된 것과 같이 진행할 수 있다.
모바일 사용자 인터페이스를 구현하는 모바일 컴퓨팅 디바이스들에서 유용한 애플리케이션을 가질 수도 있는 또 다른 센서는 전자 나침반이다. 공지된 것과 같이, 전자 나침반은 지구의 자장과 관련하여 모바일 컴퓨팅 디바이스 (230) 의 배향을 측정하고, 자북에 대한 각도로서 그 결과를 출력한다. 이러한 나침반 배향은 모바일 컴퓨팅 디바이스 (230) 가 수평면에서 회전되는 시점을 검출하기에 유용할 수 있다. 도 13은 위치 및 모션 센서 데이터를 수신하는 (블록 (22) 및 도 2) 의 부분으로서 구현될 수 있는 프로세스 (1300) 를 설명한다. 특히, 프로세스 (1300) 의 블록 (108) 에서, 프로세서 또는 전용 그래픽 프로세싱 칩은 각도 데이터의 형태로 전자 나침반 데이터를 수신할 수 있다. 프로세스 (1300) 의 블록 (110) 에서, 프로세서 또는 전용 그래픽 프로세싱 칩은 블록 (110) 에서 지구의 자장에 대한 모바일 컴퓨팅 디바이스 (230) 의 배향의 변경을 결정할 수 있다. 모바일 사용자 인터페이스의 프로세싱은 도 2 및 도 9 를 참조하여 전술된 것과 같이 진행할 수 있다.
복수의 종류의 위치, 모션 및/또는 배향 센서들로부터의 데이터는 모바일 사용자 인터페이스를 지원하기 위해 더 우수한 위치/배향 정보를 제공하도록 결합될 수 있다. 예를 들어, 도 14 는 모바일 컴퓨팅 디바이스 (230) 의 위치 및 배향의 변경들을 더 잘 결정하기 위해 가속도계들, 거리 측정 센서들 및 전자 나침반을 결합하도록 구현될 수도 있는 프로세스 (1400) 를 도시한다. 프로세스 (1400) 의 블록 (90) 에서, 모바일 컴퓨팅 디바이스 (230) 내의 프로세서 또는 전용 그래픽 프로세싱 칩은 가속도계 데이터를 수신할 수 있다. 이러한 데이터를 사용하여, 프로세스 (1400) 의 결정 블록 (92) 에서 프로세서 또는 전용 그래픽 프로세싱 칩은 그러한 가속도들을 미리 결정된 임계값과 비교할 수 있다. 만약 측정된 가속도들이 임계치를 초과하면 (즉, 결정 블록 (92) = "예" ), 프로세스 (1400) 의 블록 (94) 에서 프로세서 또는 전용 그래픽 프로세싱 칩은 3 개 차원들 각각에서의 위치 변경들을 추정하기 위해 가속도계 데이터를 통합할 수 있다. 추가로, 프로세스 (1400) 의 블록 (98) 에서, 프로세서 또는 전용 그래픽 프로세싱 칩은 (예컨대) 6개 방향에서 거리 측정 센서들로부터 거리 측정치들을 수신할 수 있다. 프로세스 (1400) 의 블록 (112) 에서, 프로세서 또는 전용 그래픽 프로세싱 칩은 3-D 추정된 위치 변경들을 개선하기 위해 그 거리 측정치들을 사용할 수 있다. 측정된 거리와 통합된 가속도계 데이터 모두를 사용함으로써, 프로세서 또는 전용 그래픽 프로세싱 칩은 다양한 조건들에서 모바일 컴퓨팅 디바이스 (230) 의 위치에서의 변경들을 더 잘 결정할 수도 있다. 예를 들어, 거리 측정 센서들은 무선에서 음속 및 연관된 프로세싱으로 인한 차이를 경험할 수도 있으며, 따라서 모바일 컴퓨팅 디바이스 (230) 의 신속한 이동들에 응답하지 않을 수도 있다. 대조적으로, 가속도계들은 모바일 컴퓨팅 디바이스 (230) 의 신속한 이동들에 더 반응할 것이나, 이동들이 비교적 부드러울 때 (즉, 가속도가 낮을 때), 정확성이 떨어질 것이다. 추가로, 프로세스 (1400) 의 블록 (108) 에서, 프로세서 또는 전용 그래픽 프로세싱 칩은 전자 나침반으로부터 나침반 데이터를 수신할 수 있고, 프로세스 (1400) 의 블록 (114) 에서 프로세서 또는 전용 그래픽 프로세싱 칩은 모바일 컴퓨팅 디바이스 (230) 의 위치 및 배향에서의 전체적인 변경을 결정하기 위해 블록 (112) 에서 결정된 변경 위치 정보와 나침반 배향 정보를 결합할 수 있다. 모바일 사용자 인터페이스의 프로세싱은 그 후에 도 2 및 도 9를 참조하여 전술된 것과 같이 진행할 수 있다.
모바일 컴퓨팅 디바이스 (230) 의 위치 및/또는 배향의 변경들을 추정하기 위해 사용될 수 있는 또 다른 센서는 디지털 카메라이다. 디지털 카메라들은 다수의 모바일 컴퓨팅 디바이스들에 공통이며, 따라서 모바일 사용자 인터페이스를 지원하기 위해 사용될 수 있는, 용이하게 사용가능한 센서를 대표한다. 도 15 는 모바일 사용자 인터페이스를 지원하기 위해 카메라 데이터를 사용하도록 구현될 수도 있는 프로세스 (1500) 를 도시한다. 이러한 동작들은 위치, 모션 및/또는 배향 센서 데이터의 일부로서 수행될 수도 있다 (도 2의 블록 (22) 에 도시). 프로세스 (1500) 의 블록 (116) 에서, 디지털 이미지는 모바일 사용자 인터페이스가 활성화될 때마다 카메라에 의해 캡처될 수도 있다. 카메라의 이러한 기능은 통상적으로 사용자들에 의해 사용되는 정규 카메라 기능과는 별개일 수도 있으며, 따라서 정규 사진 촬영 동작들과 상이한 해상도들 (즉, 픽셀 밀도) 및/또는 셔터 스피드를 구현할 수 있다. 카메라 이미지가 캡처되면, 이미지의 서로 다른 부분들과 연관된 복수의 블록들로 분할되거나 세분될 수도 있다. 따라서, 캡처된 이미지는 4, 6, 8 또는 그 이상의 서브-이미지들로 분석될 수도 있다. 프로세스 (1500) 의 블록 (118) 에서 캡처된 이미지는 이전에 캡처된 이미지와 비교될 수도 있으며, 이는 2 개의 이미지들 사이에 오브젝트들의 이동을 결정하기 위해서이다. 이러한 사항은 블록 (1500) 의 블록 (120) 에서 이전 이미지 내의 하나의 블록으로부터 캡처된 이미지의 서로 다른 블록으로 이동하는 것으로 보이는 다양한 이미지 블록들 내에서 패턴들을 확인함으로써 달성될 수도 있다. 서브-이미지 블록들 내의 패턴들을 인식하고, 인식된 패턴들이 하나의 블록으로부터 또 다른 블록으로 쉬프트하는 시점을 검출함으로써, 프로세서 또는 전용 그래픽 프로세싱 칩은 전체 이미지에 걸쳐 특징들이 인식되고 추적되는 경우에 필요한 것보다 덜 복잡한 알고리즘을을 사용하여 모바일 컴퓨팅 디바이스 (230) 또는 배경 오브젝트들의 이동을 추정할 수 있다. 예를 들어, 만약 어두운 특징이 이전 이미지 내의 하나의 이미지 블록에 표시되고, 유사한 어두운 패턴이 캡처된 이미지 내의 상이한 블록에서 보여지는 경우에, 프로세서 또는 전용 그래픽 프로세싱 칩은 어두운 패턴의 하나의 블록으로부터 다음 블록으로의 이동이 모바일 컴퓨팅 디바이스 (230) 의 이동 또는 이미징 되는 아이템으로 인한 것이라고 결론을 내릴 수 있다. 인식한 패턴의 하나의 블록으로부터 또 다른 블록으로의 쉬프트들에 기초하여 디지털 이미지들 내에서 오브젝트들의 이동을 결정하기 위한 알고리즘은 이미지 프로세싱 파트들에서 잘 공지되어 있고, 본 발명의 다양한 양태들에서 활용될 수도 있다.
캡처된 이미지를 이전 이미지들과 비교함으로써 획득된 정보를 사용할 때, 프로세스 (1500) 의 블록 (122) 에서 모바일 컴퓨팅 디바이스 (230) 의 프로세서 또는 전용 그래픽 프로세싱 칩은 실제 공간에서 디바이스의 이동을 추정할 수 있다. 이러한 산출을 수행할 때, 프로세서 또는 전용 그래픽 프로세싱 칩은 캡처된 이미지 내의 모든 블록들로부터의 결과들을 평가하고 평균하거나, 그렇지 않으면 이미지 내의 다수의 블록들에 의해 표시되는 모바일 컴퓨팅 디바이스 (230) 의 이동에서의 차이들을 고려할 수도 있다. 예를 들어, 이미지들에서의 변경들은 모바일 컴퓨팅 디바이스 (230) 의 이동 뿐만 아니라 이미지 내의 오브젝트들의 독립적인 모션들에 의해 발생될 수도 있다. 따라서, 하나의 서브-이미지 블록으로부터 또 다른 서브-이미지 블록으로의 특정 패턴의 이동들은 모바일 컴퓨팅 디바이스 (230) 의 모션, 배경에서 오브젝트의 이동, 또는 이들의 조합으로 인한 것일 수도 있다. 모바일 컴퓨팅 디바이스 (230) 탓으로 돌려지는 전체 모션을 결정하기 위해 다양한 통계적인 방법들이 사용될 수도 있다.
추가로, 도 14에 도시되는 것과 같이, 분석한 카메라 이미지들로부터의 이동 추정치들은 공간 내에서 모바일 컴퓨팅 디바이스 (230) 이동의 더 정확한 추정에 도달하기 위해 다른 센서 데이터의 분석들과 결합될 수도 있다. 모바일 컴퓨팅 디바이스 (230) 의 이동이 추정되면, 프로세스 (1500) 의 블록 (124) 에서 프로세서 또는 전용 그래픽 프로세싱 칩은 실제 공간에서 모바일 컴퓨팅 디바이스 (230) 의 위치에서의 변경을 결정할 수도 있다. 이러한 정보를 사용하여, 프로세스 (1500) 의 블록 (16) 에서 프로세서 또는 전용 그래픽 프로세싱 칩은 시계 내에서 파일 또는 콘텐츠의 부분을 결정할 수도 있다. 프로세스 (1500) 의 블록 (18) 에서 프로세서 또는 전용 그래픽 프로세싱 칩은 도 2를 참조하여 전술된 것과 같이 적절한 디스플레이를 생성할 수도 있다.
본 명세서에서 설명되는 모바일 사용자 인터페이스는 종래의 그래픽 사용자 인터페이스들과 호환가능한 것이 인식되어야 한다. 특정 구현에서, 양 타입의 사용자 인터페이스들은 더 능력있는 사용자 인터페이스를 제공하기 위해 동일한 모바일 컴퓨팅 디바이스 (230) 내에서 구현될 수 있다. 이러한 결합된 사용자 인터페이스에서 수반되는 예시적인 프로세스 (1600) 가 도 16에 설명된다. 그래픽 사용자 인터페이스 능력들을 모바일 사용자 인터페이스 능력들과 결합함으로써, 모바일 컴퓨팅 디바이스 (230) 는 사용자들에게 콘텐츠를 보고 조작하기 위해 대안적인 사용자 인터페이스들에서 스위칭할 수 있는 능력을 제공할 수도 있다. 예를 들어, 종래의 그래픽 사용자 인터페이스는 사용자들이 보기 위한 콘텐츠를 선택하기 위해 사용할 수 있는 디폴트 인터페이스로서 제공될 수도 있으며, 그 후에 이러한 콘텐츠를 보기 위해 모바일 사용자 인터페이스로 스위칭할 수도 있다.
사용자 인터페이스 모드들 사이에서 스위칭을 가능하게 하기 위해, 모바일 컴퓨팅 디바이스 (230) 상에는 사용자들이 하나의 사용자 인터페이스 모드로부터 다른 사용자 인터페이스 모드로 스위칭하도록 활성화시킬 수 있는 버튼 또는 메뉴 옵션이 제공된다. 모바일 디바이스 (230) 가 종래의 그래픽 사용자 인터페이스 모드에서 동작하는 동안, 프로세스 (1600) 의 블록 (2) 에서, 모바일 컴퓨팅 디바이스 (230) 의 프로세서 또는 전용 그래픽 프로세싱 칩은 디스플레이 윈도우 내에서 콘텐츠의 부분을 결정할 수도 있다. 프로세스 (1600) 의 블록 (4) 에서, 프로세서 또는 전용 그래픽 프로세싱 칩은 적절한 디스플레이를 생성할 수도 있다. 프로세스 (1600) 의 블록 (6) 에서, 프로세서 또는 전용 그래픽 프로세싱 칩은 사용자로부터 스크롤바 입력들을 수신할 수 있다. 프로세스 (1600) 의 블록 (8) 에서, 프로세서 또는 전용 그래픽 프로세싱 칩은 도 1을 참조하여 전술된 것과 같이 디스플레이 윈도우 내에서 콘텐츠를 재배치할 수 있다. 그러한 종래의 사용자 인터페이스 기능들은 사용자가 모바일 사용자 인터페이스 모드를 활성화시키기 위해 입력 (예컨대, 버튼을 누르는 것) 을 실행할 때까지 계속될 수도 있다. 예를 들어, 사용자는 오픈될 특정 애플리케이션 또는 파일을 선택하기 위해 종래의 그래픽 사용자 인터페이스를 활용할 수도 있다. 임의의 지점에서, 프로세스 (1600) 의 결정 블록 (10) 에서, 모바일 사용자 인터페이스 활성화 입력이 수신될 수도 있다. 이러한 입력은 모바일 컴퓨팅 디바이스 (230) 가 사용자 인터페이스 모드들 사이에서 스위칭하도록 지정된 버튼을 가지는 경우에 버튼의 누름으로부터 수신되는 인터럽트의 형태가 될 수도 있다.
모바일 컴퓨팅 디바이스 (230) 의 프로세서 또는 전용 그래픽 프로세싱 칩이 모바일 사용자 인터페이스 활성화 입력을 수신하면 (즉, 결정 블록 (10) = "예"), 프로세스 (1600) 의 블록 (12) 에서 프로세서 또는 전용 그래픽 프로세싱 칩은 도 2를 참조하여 충분히 전술된 것과 같이 모바일 컴퓨팅 디바이스 (230) (및 따라서 사용자) 에 대하여 가상 공간 내에 오픈 콘텐츠 (예컨대, 파일, 문서 또는 데스크톱) 을 고정시킬 수도 있다. 일 구현에서, 오픈 콘텐츠는 가상 공간에 고정될 수도 있으며, 따라서 디스플레이는 사용자 인터페이스 모드가 스위칭할 때 변화하지 않을 수 있다. 다시 말해서, 이러한 구현에서 콘텐츠는 모드 쉬프트가 실행되는 순간에 그래픽 사용자 인터페이스 모드 디스플레이에 존재한 표면상 위치에서 가상 공간 내에 고정된다.
프로세스 (1600) 의 블록 (14) 에서, 모바일 컴퓨팅 디바이스 (230) 의 프로세서 또는 전용 그래픽 프로세싱 칩은 실제 공간에서 모바일 컴퓨팅 디바이스 (230) 의 위치를 결정할 수도 있다. 사용자 인터페이스가 먼저 모바일 사용자 인터페이스로 스위칭되면, 프로세서 또는 전용 그래픽 프로세싱 칩은 가상 공간 내에 고정된 오픈 콘텐츠에 대하여 모바일 컴퓨팅 디바이스 (230) 의 초기 위치/배향을 결정하기 위해 위치, 모션 및 배향 센서들로부터 데이터를 수신할 수도 있다. 모바일 컴퓨팅 디바이스 (230) 의 결정된 위치 및 오픈 콘텐츠의 가상 공간 내에서의 고정된 위치에 기초하여, 프로세스 (1600) 의 블록 (16) 에서, 프로세서 또는 전용 그래픽 프로세싱 칩은 디스플레이의 시계 내에 있는 콘텐츠의 부분을 결정한다.
시계 내의 콘텐츠의 결정된 부분을 사용하여, 프로세스 (1600) 의 블록 (18) 에서, 프로세서 또는 전용 그래픽 프로세싱 칩은 디스플레이 상에 표시되는 이미지를 생성한다. 모바일 컴퓨팅 디바이스 (230) 의 뷰잉 시점에서의 변경들은 위치 또는 모션 센서 데이터를 수신하는 프로세서 또는 전용 그래픽 프로세싱 칩에 의해 프로세스 (1600) 의 블록 (22) 에서 결정될 수도 있다. 프로세스 (1600) 의 블록 (24) 에서, 프로세서 또는 전용 그래픽 프로세싱 칩은 그러한 데이터로부터 가상 공간 내에 고정된 콘텐츠에 대하여 시계 내에서의 변경을 결정할 수 있다. 블록 (14) 에서 실제 공간 또는 상대 공간 내에서 모바일 컴퓨팅 디바이스 (230) 의 위치를 결정하고, 블록 (16) 에서 콘텐츠의 보여지는 부분을 결정하고, 블록 (18) 에서 콘텐츠를 디스플레이하는 동작들은 그 후에 프로세스 (1600) 의 결정 블록 (20) 에서 그래픽 사용자 인터페이스 모드로 다시 스위칭하기 위한 입력이 수신되는지 결정될 때까지 반복된다. 그래픽 사용자 인터페이스 활성화 입력이 수신되면 (즉, 결정 블록 (20) = "예"), 프로세서 또는 전용 그래픽 프로세싱 칩은 사용자 인터페이스 모드들을 스위칭하고, 디스플레이 윈도우 내에서 파일의 위치를 결정하기 위해 프로세스 (1600) 의 블록 (2) 으로 복귀한다. 모바일 사용자 인터페이스 모드로부터 그래픽 사용자 인터페이스 모드로 스위칭할 때, 오픈 콘텐츠는 모바일 컴퓨팅 디바이스 (230) 과 관련하여 디스플레이 (239) 내에 고정될 수도 있으며, 따라서 모드 스위칭의 결과로서 디스플레이된 이미지 내에는 어떠한 변경도 발생하지 않을 수 있다. 대신에, 디스플레이에 대하여 사용자가 파일을 재배치하는 메카니즘은 종래의 그래픽 사용자 인터페이스 툴들 (즉, 터치 스크린들 및 화살표 키들과 같은 포인팅 디바이스들)로 변화한다.
전술된 것과 같이, 모바일 사용자 인터페이스는 또한 직관적인 방식으로 3 차원 정보 콘텐츠 (예컨대, 3 차원 이미지 파일들) 의 뷰잉을 가능하게 하는 방식으로 구현될 수도 있다. 따라서, 3 차원 이미지 파일을 내려다보기 위해, 사용자는 마치 내려보기 위해 카메라를 터닝하는 것처럼 모바일 컴퓨팅 디바이스 (230) 를 기울일 수도 있다. 유사하게, 3 차원 이미지 파일을 내려다 보기 위해, 사용자는 올려보기 위해 카메라를 터닝하는 것처럼 모바일 컴퓨팅 디바이스 (230) 를 젖힐 수도 있다. 이와 같은 콘텐츠의 업 또는 다운 뷰잉은 모바일 컴퓨팅 디바이스 (230) 내에 하나 이상의 기울기 센서들을 포함시킴으로써 지원될 수도 있다. 이러한 기울기 센서들은 중력 벡터에 대하여 모바일 컴퓨팅 디바이스 (230) 의 배향을 검출하고, 기울기 각도를 표시하는 신호를 프로세서 또는 전용 그래픽 프로세싱 칩에 제공할 수 있다. 기울기 센서로부터의 정보는 도 2를 참조하여 전술된 것과 매우 유사한 방식으로 디스플레이 내에 표시되어야 하는 3 차원 콘텐츠의 부분들을 결정하기 위해 프로세서 또는 전용 그래픽 프로세싱 칩 내에서 모바일 컴퓨팅 디바이스 (230) 에 의해 활용될 수 있다. 이러한 구현은 다양한 각도들에서 취득되는 다수의 이미지들로부터 생성될 수 있는 다중-차원 이미지 파일들을 보는데 유용할 수도 있다. 이러한 구현은 또한 다중-문서 파일들 또는 다중-페이지 문서들과 같은 다른 형태의 정보를 분류하기 위해 사용될 수도 있다. 예를 들어, 모바일 사용자 인터페이스는 모바일 컴퓨팅 디바이스 (230) 의 앞쪽 기울임이 다중-페이지 문서의 다음 페이지의 디스플레이를 촉구할 수 있게 한다. 따라서 사용자들은 그들의 컴퓨팅 디바이스 (230) 를 앞쪽으로 기울임으로써 다중 페이지 문서를 간단히 넘기고, 그들의 컴퓨팅 디바이스 (230) 를 뒤쪽으로 (즉, 사용자들 쪽으로) 기울임으로써 문서를 되돌려보도록 할 수도 있다. 기울기 센서들의 다른 사용들은 사용자들이 논리적인 방식으로 콘텐츠를 검사하는 것을 가능하게 할 수도 있다.
모바일 사용자 인터페이스 내의 콘텐츠를 검사하기 위한 기울기 센서 사용의 또 다른 예가 도 17에 도시된 프로세스 (1700) 에서 설명된다. 이러한 구현에서, 슬라이드-투-슬라이드 기울기 센서 (즉, 모바일 컴퓨팅 디바이스 (230) 의 우측 또는 좌측으로의 기울기를 감지할 수 있는 센서) 는 가상 공간 내에서 오픈 콘텐츠를 이동시키기 위해 사용된다. 이러한 구현은 콘텐츠가 디스플레이 윈도우에 대하여 이동된다는 종래의 그래픽 사용자 인터페이스의 추정을 디바이스 (230) 가 콘텐츠에 대하여 이동된다는 모바일 사용자 인터페이스 추정과 결합한다. 따라서, 이러한 결합된 능력은 콘텐츠에 대한 자각들이 사용자의 재량으로 구현될 수 있도록 함으로써 사용자 경험을 추가로 개선할 수도 있다. 이러한 구현에서, 프로세스 (1700) 의 블록 (12) 에서 오픈 콘텐츠는 디바이스 (230) 에 대하여 가상 공간 내에 고정될 수도 있다. 프로세스 (1700) 의 블록 (14) 에서, 실제 공간에서 모바일 컴퓨팅 디바이스 (230) 의 위치는 도 2를 참조하여 충분히 전술된 것과 같이 결정될 수도 있다. 프로세스 (1700) 의 블록 (126) 에서, 프로세서 또는 전용 그래픽 프로세싱 칩은 기울기 센서로부터 중력 벡터에 대하여 기울기의 각도, 정도, 또는 다른 측정치를 표시하는 신호의 형태가 될 수도 있는 데이터를 수신할 수도 있다. 일부 구현들에서, 프로세스 (1700) 의 결정 블록 (128) 에서 제공되는 것과 같이 기울기 센서 데이터를 미리 결정된 임계값에 비교하는 것은 바람직할 수 있으며, 따라서 모바일 컴퓨팅 디바이스 (230) 의 작은 무의식적인 기울임은 무시될 수 있다. 만약 모바일 컴퓨팅 디바이스 (230) 의 감지된 기울기 각도가 임계값 미만이면 (즉, 결정 블록 (128) = "아니오"), 프로세스 (1700) 의 블록 (16) 에서 모바일 사용자 인터페이스 프로세스는 시계 내에 있는 오픈 콘텐츠의 부분을 결정하도록 진행할 수도 있다. 프로세스 (1700) 의 블록 (18) 에서 프로세서 또는 전용 그래픽 프로세싱 칩은 콘텐츠의 부분의 디스플레이를 생성할 수도 있다. 프로세스 (1700) 의 블록 (22) 에서, 프로세서 또는 전용 그래픽 프로세싱 칩은 도 2를 참조하여 충분히 전술된 것과 같이 위치, 모션 및/또는 배향 센서를 수신할 수도 있다.
만약 모바일 컴퓨팅 디바이스 (230) 의 감지된 기울기 각도가 임계값을 초과하면 (즉, 결정 블록 (128) = "예"), 프로세스 (1700) 의 블록 (130) 에서, 모바일 사용자 인터페이스는 가상 공간 내의 오픈 콘텐츠를 기울기 각도 배향으로 이동시킬 수도 있다. 다시 말해서, 모바일 컴퓨팅 디바이스 (230) 를 기울이는 것은 모바일 사용자 인터페이스에 의해 가상 공간 내에서 오픈 콘텐츠 (즉, 파일, 문서 또는 데스크톱) 을 재배치하기 위한 사용자 입력으로 해석될 수 있다. 가상 공간 내에서 이동하는 오픈 콘텐츠와 함께, 프로세스 (1700) 의 블록 (16) 에서 모바일 컴퓨팅 디바이스 (230) 의 프로세서 또는 전용 그래픽 프로세싱 칩은 시계 내에 있는 오픈 콘텐츠의 부분을 결정할 수 있다. 프로세스 (1700) 의 블록 (18) 에서, 프로세서 또는 전용 그래픽 프로세싱 칩은 콘텐츠의 부분의 디스플레이를 생성할 수도 있다. 프로세스 (1700) 의 블록 (22) 에서, 프로세서 또는 전용 그래픽 프로세싱 칩은 도 2를 참조하여 충분히 전술된 것과 같이 위치, 모션 및/또는 배향 센서 정보를 수신할 수도 있다. 도 17에서 설명되는 프로세스 (1700) 는 모바일 컴퓨팅 디바이스 (230) 가 중력 벡터로의 각도에 고정되어 생성된 디스플레이 (블록 (18))가 스크린을 통해 이동하는 콘텐츠를 도시할 수 있다면, 빈번한 주기성으로 연속해서 실행될 수도 있고, 따라서 오픈 콘텐츠는 가상 공간 내에서 계속해서 이동할 수도 있다. 임의의 지점에서 사용자는 가상 공간 내에서 오픈 콘텐츠의 이동을 중단하기 위해 모바일 컴퓨팅 디바이스 (230) 를 상향 우측 배향으로 복귀시키고, 그 후에 도 2를 참조하여 전술된 방식으로 모바일 사용자 인터페이스 기능을 사용하여 콘텐츠를 검사할 수 있다.
도 17에 도시된 프로세스 (1700) 에 의해 제공되는 능력은 예컨대 벽 또는 인접한 사람에 의해 모바일 컴퓨팅 디바이스 (230) 의 특정 배향들로의 이동이 제한되는 설정에 사용자가 있을 때 또는 사용자가 모바일 컴퓨팅 디바이스 (230) 를 교묘히 이동시킬 수 있는 범위 이상으로 확장하는 경우에 유용할 수도 있다. 예를 들어, 오픈 콘텐츠는 그/그녀의 눈 앞에 모바일 컴퓨팅 디바이스 (230)를 고정시키면서 360° 회전함으로써 볼 수 있는 360° 파노라마 이미지 (예컨대, 그랜드 캐년의 파노라마 이미지) 가 될 수도 있다. 그러나, 사용자가 앉아 있고, 따라서 사용자는 360° 회전할 수 없는 경우에, 도 17에 도시된 프로세스 (1700) 에 의해 제공되는 능력은 사용자가 모바일 컴퓨팅 디바이스 (230) 를 기울여서 콘텐츠가 디스플레이 앞으로 이동하도록 함으로써 사용자가 전체 콘텐츠를 볼 수 잇게 한다.
대안적인 구현에서, 다수의 미리 결정된 각도 임계치들은 모바일 컴퓨팅 디바이스 (230) 가 위치되는 각도에 따라 결정되는 서로 다른 기능을 가능하게 하기 위해 구현될 수도 있다. 예를 들어, 오픈 콘텐츠는 모바일 컴퓨팅 디바이스 (230) 의 감지된 기울기 각도가 제 1 임계값을 초과하지만 제 2 임계값 미만인 경우에 (예컨대, 느린) 제 1 레이트로 가상 공간 내에서 이동하고, 감지된 기울기 각도가 제 2 임계값을 초과할 때 (예컨대, 빠른) 제 2 레이트로 이동할 수도 있다. 이러한 기울기 각도 임계값들에는 사용자 정의가능하고 및/또는 콘텐츠를 따르는 기능들과 함께 다른 기능들이 할당될 수 있다. 예를 들어, 콘텐츠를 가상 공간 내에서 이동시키는 대신에, 감지된 기울기 각도들은 페이지 넘김 속도와 연관된 제 2 임계치를 가진, 문서 내에서 페이지를 넘기는 기능들과 연관될 수도 있다.
추가 양태에서, 도 17에 도시된 프로세스들에 의해 제공되는 능력은 한 손으로 3D 데이터 세트 또는 그래픽의 뷰잉을 가능하게 할 수 있는 모바일 사용자 인터페이스를 제공하기 위해 전배향 및 후배향 기울기 센서들에 의해 제공되는 전술된 프로세스와 결합될 수도 있다. 이러한 내용은 도 18에 설명되며, 3D 콘텐츠 (150) 가 가상 공간 내에 고정되고, 위 아래로 회전할 수 있는 비디오 카메라의 뷰 파인더로 보는 것처럼 모바일 컴퓨팅 디바이스 (230) 의 디스플레이 (30) 의 시점에서 보여지는 것으로 추정되는 방식을 설명한다. 도 3을 참조하여 전술된 X, Y 및 Z 축에 부가하여, 모바일 컴퓨팅 디바이스 (230) 는 프로세서 또는 전용 그래픽 프로세싱 칩이 Y-축 주변의 수직 트위스트 (152), X-축 주변의 전방 및 후방 기울기 (154), 및 Z-축 주변의 슬라이드-투-슬라이드 기울기 (156) 에 관련된 배향 정보를 수신하는 것이 가능하도록 하기 위한 기울기 센서들 및 배향 센서들을 포함할 수도 있다. 회전 (152) 및 기울기 (154, 156)와 관련된 센서 정보는 3D 데이터 세트 (150) 내에서 시계 (42) 의 위치 및 배향을 결정하기 위해 프로세서 또는 전용 그래픽 프로세싱 칩에서 모바일 컴퓨팅 디바이스 (230) 에 의해 사용될 수 있다. 전술된 것과 같이, 모바일 컴퓨팅 디바이스 (230) 가 X-축 주위에서 틸트되는 경우에, 보여지는 필드 (42) 는 X, Y, Z 축을 따라 측정되는 것과 같이 3D 공간에서 디바이스의 상대적인 위치에 따라 결정되는 데이터 세트 내의 특정 위치에서 3D 데이터 세트 (150) 내의 몇몇 이미지 슬라이스들을 보도록 구성될 수도 있다. 따라서, 3D 데이터 세트 (150) 는 가상 공간에서 계속 고정될 수 있지만, 보여지는 필드 (42) (즉, 디스플레이 (30) 내에 표시되는 3D 데이터 세트 (150) 의 부분들) 는 좌, 우, 상, 하뿐만 아니라 데이터 세트 내로 이동할 수도 있다.
도 19는 모바일 사용자 인터페이스와 연관된 기능적인 컴포넌트들을 설명하는 모바일 컴퓨팅 디바이스 (230, 260) 의 일부분의 구성 블록 선도를 도시한다. 가속도계들 (160), 거리 센서들 (162) 및 카메라 (164) 와 같은 모션, 위치, 및/또는 배향 센서들은 3D 이동/위치 산출장치 (166) 로의 입력들을 제공하도록 구성될 수도 있다. 3D 이동/위치 산출장치(166) 는 개별 회로 엘리먼트가 될 수도 있거나, 모바일 컴퓨팅 디바이스 (230, 260) 내의 프로세서 또는 전용 그래픽 프로세싱 칩 (232, 261) 내에 프로그래밍되는 기능으로 구현될 수 있다. 3D 이동/위치 산출장치 (166) 에 의해 산출되는 위치 및 배향 결정들은 개별 회로 엘리먼트가 될 수 있거나 프로세서 또는 전용 그래픽 프로세싱 칩 (232, 261) 으로 프로그래밍되는 또 다른 기능으로 구현될 수 있는 콘텐츠 디스플레이 제어장치(168) 에 제공될 수도 있다. 콘텐츠 디스플레이 제어장치 (168) 는 콘텐츠 선택 회로 또는 기능 (170) 으로부터 이미지들, 문서들 또는 비디오와 같은 콘텐츠를 수신하고, 모바일 컴퓨팅 디바이스 (230, 260) 의 산출된 위치 및 배향으로부터 디스플레이 (239, 269) 로 출력되는 부분을 결정한다. 콘텐츠 선택 회로 또는 기능 (170) 은 무선 채널 (174) 을 통해서와 같이 외부 소스들로부터 또는 내부 데이터 저장장치 (172) 로부터 콘텐츠를 수신할 수도 있다. 콘텐츠 디스플레이 제어장치 (168) 는 디스플레이 (239, 269) 내에 이미지들을 생성하기 위해 사용되는 픽셀 정보를 저장할 수도 있는 디스플레이 메모리 (180) 와 함께 동작할 수도 있다. 모바일 컴퓨팅 디바이스 (230, 260) 는 또한 사용자 인터페이스 모드 인에이블 버튼 (178) 을 포함하며, 상기 버튼은 눌려질 때 프로세서 또는 전용 그래픽 프로세싱 칩 (232, 261) 에 모바일 사용자 인터페이스가 활성화되거나, 디스플레이 중심에 위치된 콘텐츠가 선택되거나 활성화되어야 한다고 통지한다.
디스플레이 이미지들을 생성하기 위한 2 개의 대안적인 접근 방식들은 도 19 에 도시된 구성 블록 선도에 의해 지지된다. 제 1 접근 방식에서, 전체 콘텐츠는 콘텐츠 선택장치 (170) 로부터 콘텐츠 디스플레이 제어장치 (168) 로 다운로드되며, 디스플레이 (239, 269) 상의 프리젠테이션을 위한 적절한 이미지를 생성하는데 사용되는 콘텐츠의 부분을 결정한다. 이러한 제 1 접근 방식에서, 이미지 정보는 디스플레이 (239, 269) 에 직접 전송될 수도 있거나, 이미지들을 생성하기 위해 디스플레이 (239, 269) 에 의해 사용되는 디스플레이 메모리 (180) 내에 저장될 수도 있다. 제 2 접근 방식에서, 콘텐츠 선택장치 (170) 에 의해 제공되는 전체 콘텐츠는 디스플레이 메모리 (180) 에 다운로드 되며, 콘텐츠 디스플레이 제어장치 (168) 는 디스플레이 (239, 269) 에 디스플레이를 위한 이미지들을 생성하기 위해 사용되어야 하는 디스플레이 메모리 (180) 내의 데이터의 서브 세트를 통지한다.
도 20 은 모바일 사용자 인터페이스의 대안적인 구현에 따라 모바일 컴퓨팅 디바이스 (230, 260) 의 일부분의 구성 블록 선도를 도시한다. 이러한 대안적인 구현에서, 콘텐츠 디스플레이 (168) 는 디스플레이를 생성하기 위해 제공되어야 하는 오픈 콘텐츠의 부분을 식별하여 콘텐츠 선택장치 (170) 에 제공한다. 콘텐츠 선택 회로 또는 기능 (170) 은 무선 채널 (174) 을 통해서와 같은 외부 소스들 또는 내장형 데이터 저장장치 (172) 와 상호작용하여 콘텐츠 디스플레이 제어장치 (168) 에 제공되는 요구되는 콘텐츠 데이터를 획득한다. 콘텐츠 디스플레이 제어장치 (168) 는 디스플레이 (239, 269) 에 제공되는 이미지를 생성하기 위해 수신된 정보를 사용한다.
전술된 본 발명의 다양한 양태들은 다양한 모바일 컴퓨팅 디바이스들 중 임의의 디바이스에서 구현될 수도 있다. 통상적으로, 그러한 모바일 컴퓨팅 디바이스들 (230) 은 도 22 에 설명된 컴포넌트들을 공통으로 가질 것이다. 예컨대, 모바일 컴퓨팅 디바이스 (230) 는 액정 디스플레이 (LCD) 와 같은 디스플레이 (239) 및 내부 메모리 (233) 에 커플링되는 프로세서 또는 전용 그래픽 프로세싱 칩 (232) 을 포함할 수도 있고, 이들 모두는 케이스 또는 하우징 (231) 내에 포함된다. 추가로, 모바일 컴퓨팅 디바이스 (230) 는 셀룰러 폰과 같이 프로세서 또는 전용 그래픽 프로세싱 칩 (232) 에 커플링된 무선 데이터 링크 및/또는 셀룰러 전화기 트랜시버 (235) 에 접속되는, 전자기 방사를 감지하고 수신하기 위한 안테나 (234) 를 포함할 수도 있다. 일부 구현들에서, 트랜시버 (235), 프로세서 또는 전용 그래픽 프로세싱 칩 (232) 의 부분들 및 셀룰러 전화 통신들을 위해 사용되는 메모리 (233) 는 무선 데이터 링크를 통해 데이터 인터페이스를 제공하기 때문에 무선 인터페이스라 지칭된다. 모바일 컴퓨팅 디바이스 (230) 는 또한 통상적으로 디스플레이 (239) 내에 커서를 위치시키기 위한 사용자 입력들을 수신하는 포인팅 디바이스들로 작용하는, 키패드 (236) 또는 미니어처 키보드 및 메뉴 선택 버튼들 또는 로커 스위치들 (237) 을 포함한다. 프로세서 또는 전용 그래픽 프로세싱 칩 (232) 은 프로세서 또는 전용 그래픽 프로세싱 칩 (232) 을 외부 포인팅 디바이스 (예컨대, 마우스) 또는 퍼스널 컴퓨터 (260) 와 같은 컴퓨팅 디바이스 또는 외부 근거리 통신망에 접속하기 위해 범용 직렬 버스 (USB) 또는 FireWire® 커넥터 소켓과 같은 유선 네트워크 인터페이스 (238) 에 추가로 접속될 수도 있다.
프로세서 또는 전용 그래픽 프로세싱 칩 (232) 은 임의의 프로그래밍 가능한 마이크로프로세서, 마이크로컴퓨터 또는 다중 프로세서 칩 또는 전술된 다양한 양태들의 기능들을 포함하여 다양한 기능들을 수행하도록 소프트웨어 명령들 (애플리케이션들) 에 의해 구성될 수 있는 칩들이 될 수도 있다. 일부 모바일 컴퓨팅 디바이스 (230) 에서, 하나의 프로세서는 무선 통신 기능들을 실행하도록 지정되고, 하나의 프로세서는 다른 애플리케이션들을 실행하도록 지정되는, 다수의 프로세서들 (232) 이 제공될 수 있다. 프로세서 또는 전용 그래픽 프로세싱 칩은 또한 통신 칩셋의 일부분으로서 포함될 수도 있다. 통상적으로, 소프트웨어 애플리케이션들은 액세스 되어 프로세서 또는 전용 그래픽 프로세싱 칩 (232) 으로 로딩되기 전에 내부 메모리 (233) 내에 저장될 수도 있다. 일부 모바일 컴퓨팅 디바이스 (230) 에서, 프로세서 또는 전용 그래픽 프로세싱 칩 (232) 은 애플리케이션 소프트웨어 명령들을 저장하기에 충분한 내부 메모리를 포함할 수도 있다. 이러한 설명을 위해, 용어 메모리는 프로세서 또는 전용 그래픽 프로세싱 칩 (232) 에 의해 액세스 가능한 모든 메모리를 포함하며, 내부 메모리 (233) 및 프로세서 또는 전용 그래픽 프로세싱 칩 (232) 자체에 내장된 메모리를 지칭한다. 애플리케이션 데이터 파일들은 통상적으로 메모리 (233) 내에 저장된다. 다수의 모바일 컴퓨팅 디바이스들 (230)에서, 메모리 (233) 는 플래시 메모리와 같이 비휘발성 메모리 또는 휘발성 메모리, 또는 이들 양자의 혼합일 수도 있다.
모바일 컴퓨팅 디바이스 (230) 는 또한 적절한 사용자 인터페이스 뷰를 결정할 때 사용하기에 적합한 위치 및 배향 정보를 프로세서 또는 전용 그래픽 프로세싱 칩 (232) 에 제공하도록 구성된 모션 및/또는 위치 센서들을 포함할 수도 있다. 그러한 모션 및/또는 위치 센서들은 제어기 또는 거리 측정 회로 (250), 전자 나침반 (252), 하나 이상의 가속도계들 (254), 하나 이상의 기울기 센서들 (256) 및 카메라 (258) 에 커플링될 수도 있는 하나 이상의 거리 센서들 (240, 242, 244, 246, 248) 을 포함할 수도 있다.
다양한 서로 다른 거리 센서들 (240, 242, 244, 246, 248) 이 사용될 수도 있고, 들리지 않는 초음파를 방사하고 수신하며, 방사된 음파와 수신된 반향들 사이의 차이를 측정함으로써 거리를 측정하는 초음파 변환기 및 RF 에너지 펄스들을 방사하고 수신하며, 방사된 펄스와 수신된 펄스 사이의 시간을 측정함으로써 거리를 측정하는 무선 주파수 (RF) 트랜시버들을 포함한다. 거리 센서들 (240, 242, 244, 246, 248) 과 연관된 제어기 또는 측정 회로 (250) 는 센서들에 의해 방사되는 펄스들을 생성 또는 제어하도록 구성되는 펄스 형성 및 검출 회로와 함께 신호 정보를 모바일 컴퓨팅 디바이스 프로세서 또는 전용 그래픽 프로세싱 칩 (232) 에 제공되는 프로세서-해석가능한 거리 측정 데이터로 변환하기 위한 프로세싱 회로를 포함할 수도 있다. 대안적으로, 센서 제어 및 측정 회로는 모바일 컴퓨팅 디바이스 프로세서 또는 전용 그래픽 프로세싱 칩 (232) 에 데이터를 직접 통신하도록 구성되는 각각의 센서 (예컨대, 칩-기반의 센서) 내로 또는 내부에 통합될 수도 있다. 사용자를 포함하는 오브젝트들로의 거리를 3 차원에서 측정함으로써, 프로세서 또는 전용 그래픽 프로세싱 칩 (232) 은 모바일 컴퓨팅 디바이스 (230) 가 주변환경들에 대하여 이동되는 시점을 검출할 수 있다. 예를 들어, Z+ 차원 (37; 도 3에 도시) 에서 거리를 측정하기 위한 배향의 거리 센서 (248) 는 프로세서 또는 전용 그래픽 프로세싱 칩 (232) 에 모바일 컴퓨팅 디바이스 (230) 로부터 사용자로의 거리를 통지한다. 이러한 정보는 예컨대, 도 6 을 참조하여 전술된 것과 같은 디스플레이로의 파일의 부분을 결정할 때 사용하기 위한 확대 인자를 결정하기 위해 사용될 수 있다. 또 다른 예로서, 모바일 컴퓨팅 디바이스 (230) 의 각 측면 배향의 거리 센서들 (242, 244) 은 예컨대, 사용자가 모바일 컴퓨팅 디바이스 (230) 를 팔 길이에서 좌우로 흔들 때 모바일 컴퓨팅 디바이스 (230) 의 측면 이동을 프로세서 또는 전용 그래픽 프로세싱 칩 (232) 에 통지할 수 있다. 또 다른 예로서, 모바일 컴퓨팅 디바이스 (230) 의 하부면 배향의 거리 센서 (246) 는 바닥 또는 테이블 또는 책상으로의 거리의 변경들을 측정함으로써 모바일 컴퓨팅 디바이스 (230) 의 수직 이동을 프로세서 또는 전용 그래픽 프로세싱 칩 (232) 에 통지할 수 있다.
임의의 공지된 타입의 전자 나침반 (252) 은 디스플레이 (239) 의 배향을 감지하기 위해 모바일 컴퓨팅 디바이스 (230) 내에 포함될 수도 있다. 공지된 것과 같이, 전자 나침반은 지구의 자장 선들을 감지하고, 나침반의 북에 대한 도 (degree) 와 같은, 배향을 출력할 수도 있다. 모바일 컴퓨팅 디바이스 (230) 가 지구의 자장에 대하여 회전됨에 따라, 이러한 회전은 나침반 (252) 에 의해 감지될 수 있고, 절대적인 나침반 측정 또는 상대적인 측정 변경으로서 프로세서 또는 전용 그래픽 프로세싱 칩 (232) 으로 중계될 수 있다. 이러한 정보는 프로세서 또는 전용 그래픽 프로세싱 칩 (252) 에 의해 가상 공간에 고정된 문서에 대하여 디스플레이가 향하는 배향을 결정하기 위해 사용될 수 있다. 따라서, 사용자가 손목 주위에서 사용자의 손을 회전하거나 사용자의 팔을 앞뒤로 흔듦으로써 모바일 컴퓨팅 디바이스 (230) 를 회전함에 따라, 프로세서 또는 전용 그래픽 프로세싱 칩 (252) 는 문서 또는 파일에 대하여 디스플레이 (239) 의 뷰잉 배향을 결정하고, 디스플레이 (239) 내의 적절한 부분의 뷰를 생성한다.
모바일 컴퓨팅 디바이스 (230) 는 하나 이상의 가속도계들 (254) 을 구비할 수도 있다. 마이크로 캔틸레버와 같은 소형 구조들에서 발생되는 구부러짐에 기초하여 가속도를 감지하는, 통합된 가속도계 회로들과 같은 임의의 공지된 타입의 가속도계가 사용될 수도 있다. 가속도계 회로들은 3 차원 공간에서 모션을 감지하기 위해 3 개의 직교 배향들 (즉, X, Y, Z 축들) 의 각각에 대하여 개별 가속도계들을 포함할 수도 있다. 추가의 가속도계들은 모바일 컴퓨팅 디바이스 (230) 가 축 주변에서 회전될 때 측정하기 위해 회전 모션을 감지하기 위해 사용될 수도 있다. 짧은 기간에 걸쳐 감지된 가속도를 통합함으로써, 프로세서 또는 전용 그래픽 프로세싱 칩 (232) 은 모바일 컴퓨팅 디바이스 (230) 의 위치 및 배향의 변경들을 산출할 수 있다. 가속도계에 의해 결정된 위치들이 가속도계 센서들의 감도 제한치들 및 누적된 수치 에러들로 인해 이동하는 경향이 있을 수 있기 때문에, 가속도계들 (254) 은 상대적인 모션 추정치들을 제공하기 위해 사용될 수도 있다. 대안적으로, 가속도계들 (254) 은 모바일 컴퓨팅 디바이스 (230) 의 신속한 이동들에 대한 사용자 인터페이스의 응답을 개선하기 위해 다른 위치/배향 센서들로부터의 정보와 함께 결합될 수도 있다.
모바일 컴퓨팅 디바이스 (230) 는 하나 이상의 기울기 센서들 (256) 을 구비할 수도 있다. 마이크로 캔틸레버들, 유체-기반의 기울기 센서들 및 기계 (예컨대, 진자) 기반의 기울기 센서들과 같이 소형 구조물에서 유도되는 구부러짐에 기초하여 중력에 대하여 배향을 감지하는 집적된 가속도계 회로들과 같은 임의의 공지된 타입의 기울기 센서가 사용될 수도 있다. 사이드-투-사이드 (즉, 롤) 배향 및 프론트-투-백 (즉, 피치) 배향 양자에서 모바일 컴퓨팅 디바이스 (230) 의 기울기를 감지하는 것이 가능하도록 하기 위해 2 개 (또는 그 이상의) 기울기 센서들이 제공될 수도 있다. 이러한 기울기 센서들 (256) 로부터의 데이터는 중력 벡터에 대하여 모바일 컴퓨팅 디바이스 (230) 의 배향 (즉, 지구 중심 쪽으로의 배향) 을 결정하기 위해 프로세서 또는 전용 그래픽 프로세싱 칩 (232) 에 의해 사용될 수 있다. 따라서, 2 개의 기울기 센서들 (256) 및 전자 나침반 (252) 으로부터의 정보를 결합함으로써, 프로세서 또는 전용 그래픽 프로세싱 칩 (232) 는 3 차원 공간 내에서 모바일 컴퓨팅 디바이스 (230) 의 배향 (즉, 디스플레이가 가리키는 배향) 을 결정할 수 있다. 모바일 사용자 인터페이스를 지지하여 정보를 프로세서 또는 전용 그래픽 프로세싱 칩 (232) 으로 제공하기 위해 기울기 센서를 사용하기 위한 추가의 프로세서들이 도 17을 참조하여 전술되었다.
모바일 컴퓨팅 디바이스 (230) 는 임의의 형태의 디지털 이미지 장치일 수도 있는 카메라 (258) 를 구비할 수도 있다. 카메라 (258) 는 모바일 컴퓨팅 디바이스 (230) 가 모바일 사용자 인터페이스 모드에서 동작할 때 디지털 임지 시리즈를 획득하도록 구성될 수 있다. 디지털 이미지장치 분야에서 공지된 것과 같이, 디지털 이미지는 이미지 필드 내에서 모션을 검출하도록 처리될 수 있다. 예를 들어, 디지털 이미지들은 라인 및 에지들을 인식하기 위해 공지된 알고리즘들을 사용하여 처리될 수도 있고, 인식된 라인 및 에지들의 이미지를 가로지르는 이동은 주변 구조들에 대하여 모바일 컴퓨팅 디바이스 (230) 의 이동을 추정하기 위해 트래킹된다. 또 다른 예로서, 디지털 이미지들은 이미지를 서브-이미지 블록들 또는 엘리먼트들의 어레이로 분할하는 공지된 알고리즘들을 사용하여 처리될 수 있으며, 하나의 서브-이미지 블록 또는 엘리먼트로부터 또 다른 서브-이미지 블록 또는 엘리먼트로의 특징들의 이동은 주변 구조들에 대하여 모바일 컴퓨팅 디바이스 (230) 의 이동을 추정하기 위해 사용된다. 위치 및 배향 정보를 프로세서 또는 전용 그래픽 프로세싱 칩 (232) 에 제공하기 위해 카메라 (258) 를 사용하는 추가의 프로세스들은 도 15 를 참조하여 전술되었다.
다수의 타입의 모션/위치 센서들은 상호 보완적인 현상에 기초하는 측정들 뿐만 아니라 다중-차원 측정들을 제공하기 위해 모바일 컴퓨팅 디바이스 (230) 내에 저장될 수도 있다. 예를 들어, 전술된 것과 같이, 전자 나침반 (252) 은 3 차원 배향 정보를 제공하기 위해 기울기 센서들 (256) 과 결합될 수 있다. 이러한 센서들은 모바일 컴퓨팅 디바이스 (230)와 사용자 사이의 거리를 측정하는 배향의 거리 센서 (248) 와 함께 결합될 수도 있다. 또 다른 예로서, 가속도계들 (254) 은 프로세서 또는 전용 그래픽 프로세싱 칩 (232) 이 신속한 이동들을 감지하고 즉각적으로 반응하도록 하기 위해 거리 센서들 (240-248), 나침반 센서들 (252) 및 기울기 센서들 (256) 과 결합하여 사용될 수도 있으며, 따라서 더 반응적인 모바일 사용자 인터페이스를 제공하기 위해 그러한 센서들 내에서의 지연을 수용한다. 또 다른 예로서, 카메라 (258) 는 모바일 사용자 인터페이스를 지원하는데 필요한 모든 정보를 프로세서 또는 전용 그래픽 프로세싱 칩 (232) 에 제공하기 위해 전자 나침반 (252) 및 기울기 센서들 (256) 과 결합하여 사용될 수도 있다.
전술된 양태들은 또한 도 22에서 설명되는 노트북 컴퓨터 (260) 와 같은 다양한 휴대용 컴퓨팅 디바이스들 중 임의의 디바이스에서 구현될 수도 있다. 그러한 노트북 컴퓨터 (260) 는 통상적으로 휘발성 메모리 (262) 및 디스크 드라이브 (263) 와 같은 대볼륨 비휘발성 메모리에 커플링된 프로세서 (261) 를 포함하는 하우징 (266) 을 포함한다. 컴퓨터 (260) 는 또한 프로세서 (261) 에 커플링된 플로피 디스크 드라이브 (264) 및 콤팩트 디스크 (CD) 드라이브 (265) 를 포함할 수도 있다. 컴퓨터 하우징 (266) 은 통상적으로 터치 패드 (267), 키보드 (268) 및 디스플레이 (269) 를 포함한다.
전술된 방법들 중 하나 이상을 구현하도록 구성된 소프트웨어 명령들을 실행하는 컴퓨터 프로세서 (232, 261) 에 의해 다양한 양태들이 구현될 수도 있다. 그러한 소프트웨어 명령들은 개별 애플리케이션들로서 또는 양태 방법을 구현하는 컴파일 소프트웨어로서 메모리 (262, 263) 내에 저장될 수도 있다. 참조 데이터 베이스는 내부 메모리 (233, 162) 내에, 하드 디스크 메모리 (264) 내에, 유형의 저장 매체 상에 또는 네트워크 (비도시) 를 통해 액세스할 수 있는 서버들 상에 저장될 수도 있다. 추가로, 소프트웨어 명령들 및 데이터베이스들은 랜덤 액세스 메모리 (233, 262), 하드 디스크 메모리 (263), 플로피 디스크 (플로피 디스크 드라이브 (264) 내에서 판독가능함), 콤팩트 디스크 (CD 드라이브 (265) 내에서 판독가능함), 전자적으로 소거가능한/프로그래밍 가능한 판독 전용 메모리 (EEPROM), 판독 전용 메모리 (FLASH 메모리), 및/또는 외부 메모리 칩 또는 USB 네트워크 포트로 플러그되는 USB-접속 가능 외부 메모리 (예컨대, "플래시 드라이브") 와 같이 컴퓨팅 디바이스 (231, 260) 내로 플러그되는 메모리 모듈 (비도시) 을 포함하는 임의의 형태의 유형의 프로세서-판독가능한 메모리의 형태로 저장될 수도 있다.
모바일 컴퓨팅 디바이스 (230) 와 유사하게, 노트북 컴퓨터 (260) 는 적절한 사용자 인터페이스 뷰를 결정할 때 사용하기에 적합한 위치 및 배향 정보를 프로세서 (261) 에 제공하도록 구성되는 모션 및/또는 위치 센서들 (240-258) 을 포함할 수도 있다. 그러한 모션 및/또는 위치 센서들은 도 22를 참조하여 전술된 거리 센서들 (240, 242, 244, 246, 248), 나침반 (252), 가속도계들 (254), 기울기 센서들 (256) 및 카메라 (258) 각각을 포함할 수도 있으며, 프로세서 (261) 는 이러한 센서들로부터의 정보를 유사한 방식으로 사용한다.
본 발명은 실제 핸드-헬드 모바일 사용자 인터페이스는 다수의 장점들을 제공한다. 모바일 사용자 인터페이스는 콘텐츠 (예컨대, 문서들, 파일들 및 데스크톱) 이 뷰잉 윈도우 (즉, 디스플레이) 보다 훨씬 크게 하며, 따라서 콘텐츠는 본질적으로 무한할 수도 있다. 모바일 사용자 인터페이스는 눈의 이동을 버튼 클릭들 또는 터치 스크린 동작들로 옮겨야하는 필요성을 방지하는 정상적인 사용자 경험을 제공한다. 추가로, 모바일 사용자 인터페이스는 (디스플레이가 공간 내에서 고정된 것으로 추정하는 종래의 그래픽 사용자 인터페이스들에 의해 요구되는 것과 같이) 콘텐츠의 멘탈 이미지를 이동시키고, 콘텐츠를 뷰잉하기 위해 필요에 따라 모바일 컴퓨팅 디바이스를 여기저기로 이동시킬 필요 없이 확장된 콘텐츠를 뷰잉 및 네비게이팅할 수 있게 한다. 일 양태에서, 모바일 사용자 인터페이스는 사용자들이 정상적인 방식으로 3D 콘텐츠를 뷰잉할 수 있도록 구성될 수도 있다. 모바일 사용자 인터페이스의 이러한 능력들은 한 손으로 제어될 수 있으며, 이는 또한 모바일 컴퓨팅 디바이스들의 사용시 공통인 몇몇 상황들에서 유리할 수 있다. 추가로, 모바일 사용자 인터페이스에 의해 제공되는 능력들은 추가로 멀티미디어, 대화형 미디어, 게임 등등을 포함하는 빌딩-블록 기술들이 추가 발전들을 유도할 수 있다.
모바일 사용자 인터페이스의 다양한 양태들의 유용성이 일 예로 설명될 수 있다. 종래의 그래픽 사용자 인터페이스를 사용하여 핸드-헬드 컴퓨팅 디바이스에서 웹을 브라우징하는 사용자는 페이지를 가로지르거나, 옵션을 선택하거나, 텍스트를 입력하기 위한 지점을 선택하기 위해 손가락으로 터치 스크린을 탭핑하거나, 드래그할 수도 있다. 종래의 사용자 인터페이스를 사용하여, 사용자는 예컨대, 터치스크린을 두 번 탭핑함으로써 터치 스크린에 디스플레인 콘텐츠를 줌 인 또는 줌 아웃할 수도 있다. 터치 스크린을 가로질러 손가락을 반복적으로 드래깅함으로써, 사용자는 더 많은 콘텐츠를 볼 수 있다.
임의의 시점에 사용자는 모바일 사용자 인터페이스 모드로 스위칭하는 것을 택할 수도 있다. (터치스크린 상의 모드 선택 아이콘을 클릭하거나 디바이스 상의 물리적인 모드 선택 버튼을 누르는 것과 같이) "모드" 버튼을 활성화시킴으로써, 사용자는 모바일 사용자 인터페이스 모드를 초기화하도록 모바일 컴퓨팅 디바이스에 시그널링한다. 모바일 사용자 인터페이스가 시작되면, 오픈 콘텐츠는 디스플레이 내에 도시된 현재 위치에서 본질적으로 가상 공간에 고정된다. 그 후에 사용자는 확대경으로 신문을 읽는 것처럼 콘텐츠의 서로 다른 부분들을 보기 위해 모바일 컴퓨팅 디바이스를 공간에서 수평 및 수직으로 이동시킴으로써 오픈 콘텐츠를 검토할 수도 있다. 사용자는 또한 확대경으로 신문의 일부분을 검사하는 것처럼 모바일 컴퓨팅 디바이스를 사용자 쪽으로 또는 사용자로부터 떨어져서 이동시킴으로써 오픈 콘텐츠를 줌 인 및 줌 아웃 할 수도 있다. 사용자는 디스플레이 내의 "Next Page"를 위한 아이콘 또는 링크를 중심에 위치시키기 위해 모바일 컴퓨팅 디바이스를 수평으로 및/또는 수직으로 이동시킴으로써 오픈 콘텐츠 내에서 다음 페이지로 이동하고, 그 후에 터치 스크린 상의 선택 버튼을 누르거나 "Next Page" 를 탭핑하여 오픈 콘텐츠의 다음 페이지를 띄운다.
임의의 시점에서 사용자는 종래의 방식으로 오픈 콘텐츠의 나머지를 보거나 메뉴로부터 또 다른 파일 또는 문서를 선택하기 위해 종래의 그래픽 사용자 인터페이스로 다시 스위칭하는 것을 택할 수도 있다. 예를 들어, 사용자는 어딘가에서 걷거나 운전해야할 수도 있으며, 그러한 이동들로 인해 디스플레이를 쉬프팅하는 것을 방지하기를 원할 수도 있다. 사용자 인터페이스 모드 아이콘 또는 버튼을 다시 활성화시키는 것은 종래의 그래픽 사용자 인터페이스 모드를 활성화시키며, 가상 공간에서 콘텐츠의 위치를 고정시킨 것을 해제하고, 콘텐츠의 위치를 모바일 컴퓨팅 디바이스로 고정시킨다. 사용자가 다시 움직이지 않으면, 사용자는 모바일 사용자 인터페이스 모드에 들어가기 위해 사용자 인터페이스 모드 아이콘 또는 버튼을 다시 활성화시키고, 본 명세서에서 설명되는 것과 같이 콘텐츠를 보는 것을 계속할 수 있다.
모바일 사용자 인터페이스의 유용성에 대한 또 다른 예는 사용자들이 정상적인 시점으로 이미지들을 보게 하는 능력이다. 예를 들어, 사용자들은 디스플레이를 보면서 그들 스스로 360도 회전함으로써 모바일 컴퓨팅 디바이스에서 그랜드 캐년의 360도 화상을 볼 수도 있다. 이러한 방식으로 화상을 보는 경험은 마치 사용자들이 그랜드 캐년에 서서 디지털 카메라 또는 캠코더의 프리뷰 윈도우를 들여보는 것과 같다.
모바일 사용자 인터페이스의 또 다른 예시적인 응용은 모바일 핸드헬드 디바이스들에서 고해상도 비디오를 보는 것을 포함한다. 고해상도 비디오는 핸드-헬드 디바이스들의 소형 스크린들에서 표시될 수 있는 것보다 훨씬 더 시각적인 정보를 포함한다. 모바일 사용자 인터페이스를 사용할 때, 사용자는 스포츠 경기에서 개별 선수와 같이 비디오의 특정 부분에서 줌 인하여 비디오 카메라로 촬영하거나 망원경을 들여다 보는 것처럼 가상 공간 내에서 대상을 뒤따름으로써 비디오의 특정 부분을 볼 수도 있다. 이러한 방식에서, 고해상도 비디오는 모바일 컴퓨팅 디바이스를 좌, 우, 상, 하로 이동시킴으로써 스캔될 수 있는, 사용자로부터 고정된 거리의 대형 스크린 텔레비전과 같은 큰 이미지인 것처럼 보일 것이다. 모바일 사용자 인터페이스의 동작이 직관적이기 (현미경 또는 비디오 카메라만큼 직관적인) 때문에, 사용자들은 선수 또는 공과 같은 단일 엘리먼트가 비디오 이미지 내에서 움직이는 경우에도 이를 쉽게 뒤따를 수 있다. 예를 들어, 선수가 고해상도 비디오 이미지를 가로질러 좌측에서 우측으로 달리는 경우에, 사용자는 모바일 컴퓨팅 디바이스를 좌측에서 우측으로 스캔함으로써 선수를 볼 수 있다. 이러한 직관적인 동작은 비디오 이미지 내에서 좌측에서 우측으로 이동하는 선수를 보기 위해 사용자가 비디오 이미지를 우측에서 좌측으로 드래깅해야 하는 종래의 그래픽 사용자 인터페이스에서 사용가능한 사용자 경험과는 매우 다르다.
다수의 실제의 유용한 애플리케이션들은 모바일 사용자 인터페이스에 의해 인에이블될 수도 있다. 우선, 위성 위치추적 시스템 (GPS) 수신기를 포함하는 모바일 사용자 인터페이스는 (예컨대, 무선 데이터 링크를 통해) 내부 또는 외부 저장장치로부터 모바일 사용자 인터페이스를 사용하여 보여질 수 있는 위치-특정 콘텐츠를 선택하여 다운로드하기 위해 지리적인 위치 정보를 사용할 수도 있다. 예를 들어, 건물 조사자 또는 비상 대처자 (예컨대, 소방관) 인 사용자는 사용자의 위치에 대응하는 2-D 또는 3-D 빌딩 도면들을 (예컨대, CAD 데이터 베이스로부터) 다운로드한 후, 카메라와 같은 모바일 컴퓨팅 디바이스를 사용하여 도면들을 볼 수 있다. 이러한 방식으로, 사용자들은 그들의 모바일 컴퓨팅 디바이스들을 앞뒤로 스캔함으로써 가상으로 벽을 들여다볼 수도 있다. 또 다른 예로서, 비상 대처자들은 그들이 서있는 위치의 이미지들을 다운로드한 후, 재앙 대처 상황들에서 유용할 수 있는, 그들 이전에 장면의 이전 이미지들을 볼 수 있다.
모바일 사용자 인터페이스는 또한 가상 공간에 콘텐츠를 고정하는 전형적인 예에 의해 인에이블되는 핸드-헬드 컴퓨팅 디바이스들을 위한 빌딩 블록 기술들의 발전을 제공할 것으로 예상된다.
당업자는 본 명세서에 개시된 양태들과 함께 설명되는 다양한 설명의 논리 블록들, 모듈들, 회로들 및 알고리즘이 전자 하드웨어, 컴퓨터 소프트웨어 또는 이들의 조합들로서 구현될 수도 있음을 인식할 것이다. 하드웨어와 소프트웨어의 상호 교환 가능성을 명확히 설명하기 위해, 블록들, 모듈들, 회로들 및 단계들에서의 다양한 설명의 구성요소들은 그들의 기능과 관련하여 앞서 일반적으로 설명되었다. 그러한 기능이 하드웨어로 구현되는지 소프트웨어로 구현되는지의 여부는 전체 시스템에 부과되는 설계 제약들 및 특정 애플리케이션들에 따라 결정된다. 당업자는 각각의 특정 애플리케이션을 위한 방식들을 변경하면서 설명된 기능을 구현할 수도 있지만, 그러한 구현 결정들은 본 발명의 범위로부터 벗어나는 것으로 해석되지 않아야 한다.
방법의 블록들이 앞서 설명되고 도면에 도시되는 순서는 일부 블록들의 순서가 본 발명의 사상 및 범위와 청구항들에서 벗어나지 않고 본 명세서에 설명되는 순서로부터 변화될 수도 있으므로, 단지 예시적인 것이다.
본 명세서에 개시된 양태들과 함께 설명되는 방법 또는 알고리즘의 블록들은 하드웨어에서 직접, 프로세서에 의해 실행되는 소프트웨어 모듈 내에서, 또는 이들의 조합에서 구현될 수도 있다. 소프트웨어 모듈은 RAM 메모리, 플래시 메모리, ROM 메모리, EPROM 메모리, EEPROM 메모리, 레지스터들, 하드 디스크, 이동식 디스크, CD-ROM, 또는 공지된 임의의 다른 형태의 저장 매체 중 어느 것이 될 수도 있는 프로세서 판독가능한 메모리 내에 상주할 수도 있다. 예시적인 저장 매체는 프로세서가 저장 매체로부터 정보를 판독하고, 저장 매체에 정보를 기록할 수 있도록 프로세서에 커플링된다. 프로세서 및 저장 매체는 ASIC 내에 상주할 수도 있다. ASIC 는 사용자 단말기 또는 모바일 컴퓨팅 디바이스 내에 상주할 수도 있다. 대안적으로, 프로세서 및 저장 매체는 사용자 단말기 또는 모바일 컴퓨팅 디바이스 내에 개별 구성요소들로서 상주할 수도 있다.
추가로, 일부 양태들에서, 방법 또는 알고리즘의 블록들 및/또는 동작들은 컴퓨터 프로그램 제품 내에 통합될 수도 있는 기계 판독가능한 매체 및/또는 컴퓨터 판독가능한 매체상에 코드들 및/또는 명령들 중 하나, 또는 임의의 조합 또는 집합으로서 상주할 수도 있다.
다양한 양태들의 전술된 설명은 당업자가 본 발명을 실행하거나 사용하는 것이 가능하도록 제공된다. 이러한 양태들에 대한 다양한 변경들은 당업자에게 명백할 것이며, 본 명세서에서 정의되는 일반적인 원칙들은 본 발명의 사상 또는 범위를 벗어나지 않고 다른 양태들에 적용될 수도 있다. 따라서, 본 발명은 본 명세서에 개시된 양태들에 제한되는 것이 아니며, 대신에 청구항들은 본 명세서에 개시된 원리들 및 신규한 특징들과 부합하는 최광의 범위에 따른다.
Claims (56)
- 모바일 컴퓨팅 디바이스에 모바일 사용자 인터페이스를 제공하기 위한 방법으로서,
상기 모바일 컴퓨팅 디바이스의 실제 공간에서의 이동을 감지하는 단계;
상기 감지된 이동에 기초하여 상기 모바일 컴퓨팅 디바이스의 실제 공간에서의 위치의 변경을 결정하는 단계;
상기 모바일 컴퓨팅 디바이스의 위치의 상기 결정된 변경에 기초하여 가상 공간에 고정된 것으로 취급되는 콘텐츠의 뷰잉 시점 (viewing perspective) 을 결정하는 단계; 및
상기 결정된 뷰잉 시점에 기초하여 상기 콘텐츠의 적어도 일부분의 디스플레이를 생성하는 단계를 포함하는, 모바일 사용자 인터페이스 제공 방법. - 제 1 항에 있어서,
상기 콘텐츠의 선택물을 선택하기 위한 신호를 수신하는 단계;
상기 디스플레이의 중심 근방에 위치된 상기 콘텐츠의 부분을 결정하는 단계; 및
상기 디스플레이의 중심 근방에 위치된 상기 콘텐츠의 부분을 선택하는 단계를 더 포함하는, 모바일 사용자 인터페이스 제공 방법. - 제 2 항에 있어서,
상기 생성된 디스플레이 내에 선택 보조물 (selection aid) 을 포함시키는 단계를 더 포함하며,
상기 선택 보조물은 상기 디스플레이의 중심 및 상기 디스플레이 내에서 선택될 상기 콘텐츠의 부분 중 하나를 나타내는, 모바일 사용자 인터페이스 제공 방법. - 제 3 항에 있어서,
상기 디스플레이의 중심 근방에 위치된 상기 콘텐츠에 의존하는 상기 선택 보조물의 형태를 선택하는 단계를 더 포함하며,
상기 선택 보조물의 형태는 십자선, 원, 타원, 박스, 밝기가 증가된 영역, 해상도가 증가된 영역 및 음영 영역으로 구성된 그룹으로부터 선택되는, 모바일 사용자 인터페이스 제공 방법. - 제 2 항에 있어서,
상기 콘텐츠의 선택물을 선택하기 위한 신호는 버튼의 누름의 결과로서 수신되는, 모바일 사용자 인터페이스 제공 방법. - 제 1 항에 있어서,
상기 생성된 디스플레이 내에, 상기 디스플레이 내에서 선택될 수 있는 콘텐츠의 부분을 나타내는 선택 보조물을 포함시키는 단계;
상기 콘텐츠의 선택물을 선택하기 위한 신호를 수신하는 단계;
상기 선택 보조물 내에 위치된 상기 콘텐츠의 부분을 결정하는 단계; 및
상기 선택 보조물 내에 위치된 상기 콘텐츠의 부분에 대한 액션을 수행하는 단계를 더 포함하는, 모바일 사용자 인터페이스 제공 방법. - 제 1 항에 있어서,
상기 실제 공간에서의 이동을 감지하는 단계는,
가속도계, 거리 측정 센서, 기울기 센서, 카메라 및 나침반으로 구성된 그룹으로부터 선택된 센서로부터의 신호를 수신하는 단계를 포함하는, 모바일 사용자 인터페이스 제공 방법. - 제 1 항에 있어서,
상기 모바일 컴퓨팅 디바이스와 사용자 사이의 거리를 결정하는 단계; 및
상기 결정된 거리에 기초하여 상기 콘텐츠의 디스플레이되는 부분에 확대를 적용하는 단계를 더 포함하는, 모바일 사용자 인터페이스 제공 방법. - 제 1 항에 있어서,
상기 모바일 컴퓨팅 디바이스의 기울기를 감지하는 단계; 및
상기 감지된 기울기에 기초하여 가상 공간 내에 상기 콘텐츠를 재배치하는 단계를 더 포함하는, 모바일 사용자 인터페이스 제공 방법. - 제 1 항에 있어서,
상기 실제 공간에서의 이동을 감지하는 단계는,
카메라로부터 디지털 이미지를 수신하는 단계;
순차적인 이미지들의 변경을 식별하기 위해 상기 수신된 디지털 이미지의 적어도 일부분을 이전 디지털 이미지의 적어도 일부분과 비교하는 단계; 및
순차적인 이미지들의 상기 식별된 변경에 기초하여 이동을 결정하는 단계를 포함하는, 모바일 사용자 인터페이스 제공 방법. - 제 1 항에 있어서,
상기 가상 공간에 고정된 것으로 취급되는 콘텐츠의 뷰잉 시점을 결정하는 단계는, 상기 모바일 컴퓨팅 디바이스의 위치의 상기 결정된 변경에 적용되는 가상 이동 스케일링 인자에 더 기초하는, 모바일 사용자 인터페이스 제공 방법. - 제 1 항에 있어서,
그래픽 사용자 인터페이스 모드에 있는 동안 사용자 인터페이스 모드 선택 입력을 수신하는 단계; 및
상기 그래픽 사용자 인터페이스 모드에서 상기 콘텐츠의 디스플레이에 기초하여 상기 콘텐츠를 가상 공간 내에 고정하는 단계를 더 포함하는, 모바일 사용자 인터페이스 제공 방법. - 제 11 항에 있어서,
상기 모바일 사용자 인터페이스 모드에 있는 동안 사용자 인터페이스 모드 선택 입력을 수신하는 단계;
모바일 컴퓨팅 디바이스 디스플레이 내에 상기 콘텐츠를 고정하는 단계; 및
그래픽 사용자 인터페이스 모드를 구현하는 단계를 더 포함하는, 모바일 사용자 인터페이스 제공 방법. - 제 12 항에 있어서,
상기 사용자 인터페이스 모드 선택 입력은 버튼의 누름의 결과로서 수신되는, 모바일 사용자 인터페이스 제공 방법. - 모바일 컴퓨팅 디바이스로서,
프로세서;
상기 프로세서에 커플링된 디스플레이; 및
상기 프로세서에 커플링되고, 가속도계, 거리 측정 센서, 기울기 센서, 카메라 및 나침반으로 구성된 그룹으로부터 선택되는 센서를 포함하며,
상기 프로세서는,
상기 센서로부터의 신호를 수신하는 것;
상기 수신된 센서 신호에 기초하여 상기 모바일 컴퓨팅 디바이스의 실제 공간에서의 위치의 변경을 결정하는 것;
상기 모바일 컴퓨팅 디바이스의 위치의 상기 결정된 변경에 기초하여 가상 공간에 고정된 것으로 취급되는 콘텐츠의 뷰잉 시점을 결정하는 것; 및
상기 결정된 뷰잉 시점에 기초하여 상기 콘텐츠의 적어도 일부분의 디스플레이에서 이미지를 생성하는 것
을 포함하는 동작들을 수행하기 위한 소프트웨어 실행가능 명령들로 구성되는, 모바일 컴퓨팅 디바이스. - 제 15 항에 있어서,
상기 프로세서는,
상기 콘텐츠의 선택물을 선택하기 위한 신호를 수신하는 것;
상기 디스플레이의 중심 근방에 위치된 상기 콘텐츠의 부분을 결정하는 것; 및
상기 디스플레이의 중심 근방에 위치된 상기 콘텐츠의 부분을 선택하는 것
을 더 포함하는 동작들을 수행하기 위한 소프트웨어 실행가능 명령들로 구성되는, 모바일 컴퓨팅 디바이스. - 제 16 항에 있어서,
상기 프로세서는,
상기 생성된 디스플레이 내에 선택 보조물을 포함시키는 것을 더 포함하는 동작들을 수행하기 위한 소프트웨어 실행가능 명령들로 구성되며,
상기 선택 보조물은 상기 디스플레이의 중심 및 상기 디스플레이 내에서 선택될 상기 콘텐츠의 부분 중 하나를 나타내는, 모바일 컴퓨팅 디바이스. - 제 17 항에 있어서,
상기 프로세서는,
상기 디스플레이의 중심 근방에 위치된 상기 콘텐츠에 의존하는 상기 선택 보조물의 형태를 선택하는 것을 더 포함하는 동작들을 수행하기 위한 소프트웨어 실행가능 명령들로 구성되며,
상기 선택 보조물의 형태는 십자선, 원, 타원, 박스, 밝기가 증가된 영역, 해상도가 증가된 영역 및 음영 영역으로 구성된 그룹으로부터 선택되는, 모바일 컴퓨팅 디바이스. - 제 16 항에 있어서,
상기 프로세서에 커플링된 버튼을 더 포함하며,
상기 콘텐츠의 선택물을 선택하기 위한 신호는 상기 버튼의 누름의 결과로서 수신되는, 모바일 컴퓨팅 디바이스. - 제 15 항에 있어서,
상기 프로세서는,
상기 생성된 디스플레이 내에, 상기 디스플레이 내에서 선택될 수 있는 콘텐츠의 부분을 나타내는 선택 보조물을 포함시키는 것;
상기 콘텐츠의 선택물을 선택하기 위한 신호를 수신하는 것;
상기 선택 보조물 내에 위치된 상기 콘텐츠의 부분을 결정하는 것; 및
상기 선택 보조물 내에 위치된 상기 콘텐츠의 부분에 대한 액션을 수행하는 것
을 더 포함하는 동작들을 수행하기 위한 소프트웨어 실행가능 명령들로 구성되는, 모바일 컴퓨팅 디바이스. - 제 15 항에 있어서,
상기 프로세서는,
상기 센서로부터 수신된 신호에 기초하여 이동을 감지하는 동작을 수행하기 위한 소프트웨어 실행가능 명령들로 구성되는, 모바일 컴퓨팅 디바이스. - 제 15 항에 있어서,
상기 프로세서는,
상기 모바일 컴퓨팅 디바이스와 사용자 사이의 거리를 결정하는 것; 및
상기 결정된 거리에 기초하여 상기 콘텐츠의 디스플레이된 부분에 확대를 적용하는 것
을 더 포함하는 동작들을 수행하기 위한 소프트웨어 실행가능 명령들로 구성되는, 모바일 컴퓨팅 디바이스. - 제 15 항에 있어서,
상기 프로세서에 커플링되고, 상기 모바일 컴퓨팅 디바이스의 기울기를 감지하도록 구성되는 기울기 센서를 더 포함하며,
상기 프로세서는, 상기 감지된 기울기에 기초하여 가상 공간 내에 상기 콘텐츠를 재배치하는 것을 더 포함하는 동작들을 수행하기 위한 소프트웨어 실행가능 명령들로 구성되는, 모바일 컴퓨팅 디바이스. - 제 15 항에 있어서,
상기 센서는 카메라를 포함하고,
상기 프로세서는, 실제 공간에서의 이동을 감지하는 것이,
상기 카메라로부터 디지털 이미지를 수신하는 것;
순차적인 이미지들의 변경을 식별하기 위해 상기 수신된 디지털 이미지의 적어도 일부분을 이전 디지털 이미지의 적어도 일부분과 비교하는 것; 및
순차적인 이미지들의 상기 식별된 변경에 기초하여 이동을 결정하는 것
을 포함하게 하는 동작들을 수행하기 위한 소프트웨어 실행가능 명령들로 구성되는, 모바일 컴퓨팅 디바이스. - 제 15 항에 있어서,
상기 프로세서는,
상기 가상 공간에 고정된 것으로 취급되는 콘텐츠의 뷰잉 시점을 결정하는 것이, 상기 모바일 컴퓨팅 디바이스의 위치의 상기 결정된 변경에 적용되는 가상 이동 스케일링 인자에 더 기초하게 하는 동작들을 수행하기 위한 소프트웨어 실행가능 명령들로 구성되는, 모바일 컴퓨팅 디바이스. - 제 15 항에 있어서,
상기 프로세서는,
그래픽 사용자 인터페이스 모드에 있는 동안 사용자 인터페이스 모드 선택 입력을 수신하는 것;
상기 그래픽 사용자 인터페이스 모드에서 상기 콘텐츠의 디스플레이에 기초하여 상기 콘텐츠를 가상 공간 내에 고정하는 것; 및
모바일 사용자 인터페이스 모드를 구현하는 것
을 더 포함하는 동작들을 수행하기 위한 소프트웨어 실행가능 명령들로 구성되는, 모바일 컴퓨팅 디바이스. - 제 26 항에 있어서,
상기 프로세서는,
상기 모바일 사용자 인터페이스 모드에 있는 동안 사용자 인터페이스 모드 선택 입력을 수신하는 것;
모바일 컴퓨팅 디바이스 디스플레이 내에 상기 콘텐츠를 고정하는 것; 및
상기 그래픽 사용자 인터페이스 모드를 구현하는 것을 더 포함하는 동작들을 수행하기 위한 소프트웨어 실행가능 명령들로 구성되는, 모바일 컴퓨팅 디바이스. - 제 27 항에 있어서,
버튼을 더 포함하며,
상기 사용자 인터페이스 모드 선택 입력은 버튼의 누름의 결과로서 수신되는, 모바일 컴퓨팅 디바이스. - 모바일 컴퓨팅 디바이스로서,
상기 모바일 컴퓨팅 디바이스의 실제 공간에서의 이동을 감지하기 위한 수단;
상기 감지된 이동에 기초하여 상기 모바일 컴퓨팅 디바이스의 실제 공간에서의 위치의 변경을 결정하기 위한 수단;
상기 모바일 컴퓨팅 디바이스의 위치의 상기 결정된 변경에 기초하여 가상 공간에 고정된 것으로 취급되는 콘텐츠의 뷰잉 시점을 결정하기 위한 수단; 및
상기 결정된 뷰잉 시점에 기초하여 상기 콘텐츠의 적어도 일부분의 디스플레이를 생성하기 위한 수단을 포함하는, 모바일 컴퓨팅 디바이스. - 제 29 항에 있어서,
상기 콘텐츠의 선택물을 선택하기 위한 신호를 수신하기 위한 수단;
상기 디스플레이의 중심 근방에 위치된 상기 콘텐츠의 부분을 결정하기 위한 수단; 및
상기 디스플레이의 중심 근방에 위치된 상기 콘텐츠의 부분을 선택하기 위한 수단을 더 포함하는, 모바일 컴퓨팅 디바이스. - 제 30 항에 있어서,
상기 생성된 디스플레이 내에 선택 보조물을 포함시키기 위한 수단을 더 포함하며,
상기 선택 보조물은 상기 디스플레이의 중심 및 상기 디스플레이 내에서 선택될 상기 콘텐츠의 부분 중 하나를 나타내는, 모바일 컴퓨팅 디바이스. - 제 31 항에 있어서,
상기 디스플레이의 중심 근방에 위치된 상기 콘텐츠에 의존하는 상기 선택 보조물의 형태를 선택하기 위한 수단을 더 포함하며,
상기 선택 보조물의 형태는 십자선, 원, 타원, 박스, 밝기가 증가된 영역, 해상도가 증가된 영역 및 음영 영역으로 구성된 그룹으로부터 선택되는, 모바일 컴퓨팅 디바이스. - 제 30 항에 있어서,
상기 콘텐츠의 선택물을 선택하기 위한 신호를 수신하기 위한 수단은 버튼의 누름의 표시를 위한 수단을 포함하는, 모바일 컴퓨팅 디바이스. - 제 29 항에 있어서,
상기 생성된 디스플레이 내에, 상기 디스플레이 내에서 선택될 수 있는 콘텐츠의 부분을 나타내는 선택 보조물을 시키하기 위한 수단;
상기 콘텐츠의 선택물을 선택하기 위한 신호를 수신하기 위한 수단;
상기 선택 보조물 내에 위치된 상기 콘텐츠의 부분을 결정하기 위한 수단; 및
상기 선택 보조물 내에 위치된 상기 콘텐츠의 부분에 대한 액션을 수행하기 위한 수단을 더 포함하는, 모바일 컴퓨팅 디바이스. - 제 29 항에 있어서,
상기 실제 공간에서의 이동을 감지하기 위한 수단은,
가속도계를 감지하기 위한 수단, 거리를 측정하기 위한 수단, 기울기를 측정하기 위한 수단, 디지털 이미지를 획득하기 위한 수단 및 지구 자장에 대한 배향을 측정하기 위한 수단으로 구성된 그룹으로부터 선택된 센서로부터의 신호를 수신하기 위한 수단을 포함하는, 모바일 컴퓨팅 디바이스. - 제 29 항에 있어서,
상기 모바일 컴퓨팅 디바이스와 사용자 사이의 거리를 결정하기 위한 수단; 및
상기 결정된 거리에 기초하여 상기 콘텐츠의 디스플레이되는 부분에 확대를 적용하기 위한 수단을 더 포함하는, 모바일 컴퓨팅 디바이스. - 제 29 항에 있어서,
상기 모바일 컴퓨팅 디바이스의 기울기를 감지하기 위한 수단; 및
상기 감지된 기울기에 기초하여 가상 공간 내에 상기 콘텐츠를 재배치하기 위한 수단을 더 포함하는, 모바일 컴퓨팅 디바이스. - 제 29 항에 있어서,
상기 실제 공간에서의 이동을 감지하기 위한 수단은,
디지털 이미지를 획득하기 위한 수단;
순차적인 이미지들의 변경을 식별하기 위해 제 1 디지털 이미지의 적어도 일부분을 제 2 디지털 이미지의 적어도 일부분과 비교하기 위한 수단; 및
순차적인 이미지들의 상기 식별된 변경에 기초하여 이동을 결정하기 위한 수단을 포함하는, 모바일 컴퓨팅 디바이스. - 제 29 항에 있어서,
상기 가상 공간에 고정된 것으로 취급되는 콘텐츠의 뷰잉 시점을 결정하기 위한 수단은, 상기 모바일 컴퓨팅 디바이스의 위치의 상기 결정된 변경에 적용되는 가상 이동 스케일링 인자에 기초하여 상기 콘텐츠의 뷰잉 시점을 결정하기 위한 수단을 포함하는, 모바일 컴퓨팅 디바이스. - 제 29 항에 있어서,
그래픽 사용자 인터페이스 모드에 있는 동안 사용자 인터페이스 모드 선택 입력을 수신하기 위한 수단;
상기 그래픽 사용자 인터페이스 모드에서 상기 콘텐츠의 디스플레이에 기초하여 상기 콘텐츠를 가상 공간 내에 고정하기 위한 수단; 및
모바일 사용자 인터페이스 모드를 구현하기 위한 수단을 더 포함하는, 모바일 컴퓨팅 디바이스. - 제 40 항에 있어서,
상기 모바일 사용자 인터페이스 모드에 있는 동안 사용자 인터페이스 모드 선택 입력을 수신하기 위한 수단;
모바일 컴퓨팅 디바이스 디스플레이 내에 상기 콘텐츠를 고정하기 위한 수단; 및
상기 그래픽 사용자 인터페이스 모드를 구현하기 위한 수단을 더 포함하는, 모바일 컴퓨팅 디바이스. - 제 41 항에 있어서,
상기 사용자 인터페이스 모드 선택 입력을 수신하기 위한 수단은 버튼의 누름의 표시를 수신하기 위한 수단을 포함하는, 모바일 컴퓨팅 디바이스. - 컴퓨터 판독가능 매체를 포함하는 컴퓨터 프로그램 제품으로서,
상기 컴퓨터 판독가능 매체는,
가속도계, 거리 측정 센서, 기울기 센서, 카메라 및 나침반으로 구성된 그룹으로부터 선택된 센서로부터의 신호를 수신하기 위한 적어도 하나의 명령;
상기 수신된 센서 신호에 기초하여 모바일 컴퓨팅 디바이스의 실제 공간에서의 위치의 변경을 결정하기 위한 적어도 하나의 명령;
상기 모바일 컴퓨팅 디바이스의 위치의 상기 결정된 변경에 기초하여 가상 공간에 고정된 것으로 취급되는 콘텐츠의 뷰잉 시점을 결정하기 위한 적어도 하나의 명령; 및
상기 결정된 뷰잉 시점에 기초하여 상기 콘텐츠의 적어도 일부분의 디스플레이에 이미지를 생성하기 위한 적어도 하나의 명령을 포함하는, 컴퓨터 판독가능 매체를 포함하는 컴퓨터 프로그램 제품. - 제 43 항에 있어서,
상기 컴퓨터 판독가능 매체는,
상기 콘텐츠의 선택물을 선택하기 위한 신호를 수신하기 위한 적어도 하나의 명령;
상기 디스플레이의 중심 근방에 위치된 상기 콘텐츠의 부분을 결정하기 위한 적어도 하나의 명령; 및
상기 디스플레이의 중심 근방에 위치된 상기 콘텐츠의 부분을 선택하기 위한 적어도 하나의 명령을 더 포함하는, 컴퓨터 판독가능 매체를 포함하는 컴퓨터 프로그램 제품. - 제 44 항에 있어서,
상기 컴퓨터 판독가능 매체는,
상기 생성된 디스플레이 내에 선택 보조물을 포함시키기 위한 적어도 하나의 명령을 더 포함하며,
상기 선택 보조물은 상기 디스플레이의 중심 및 상기 디스플레이 내에서 선택될 상기 콘텐츠의 부분 중 하나를 나타내는, 컴퓨터 판독가능 매체를 포함하는 컴퓨터 프로그램 제품. - 제 45 항에 있어서,
상기 컴퓨터 판독가능 매체는,
상기 디스플레이의 중심 근방에 위치된 상기 콘텐츠에 의존하는 상기 선택 보조물의 형태를 선택하기 위한 적어도 하나의 명령을 더 포함하며,
상기 선택 보조물의 형태는 십자선, 원, 타원, 박스, 밝기가 증가된 영역, 해상도가 증가된 영역 및 음영 영역으로 구성된 그룹으로부터 선택되는, 컴퓨터 판독가능 매체를 포함하는 컴퓨터 프로그램 제품. - 제 44 항에 있어서,
상기 컴퓨터 판독가능 매체는,
버튼의 누름의 결과로서 상기 콘텐츠의 선택물을 선택하기 위한 신호를 수신하기 위한 적어도 하나의 명령을 더 포함하는, 컴퓨터 판독가능 매체를 포함하는 컴퓨터 프로그램 제품. - 제 43 항에 있어서,
상기 컴퓨터 판독가능 매체는,
상기 생성된 디스플레이 내에, 상기 디스플레이 내에서 선택될 수 있는 콘텐츠의 부분을 나타내는 선택 보조물을 포함시키기 위한 적어도 하나의 명령;
상기 콘텐츠의 선택물을 선택하기 위한 신호를 수신하기 위한 적어도 하나의 명령;
상기 선택 보조물 내에 위치된 상기 콘텐츠의 부분을 결정하기 위한 적어도 하나의 명령; 및
상기 선택 보조물 내에 위치된 상기 콘텐츠의 부분에 대한 액션을 수행하기 위한 적어도 하나의 명령을 더 포함하는, 컴퓨터 판독가능 매체를 포함하는 컴퓨터 판독가능 매체를 포함하는 컴퓨터 프로그램 제품. - 제 43 항에 있어서,
상기 컴퓨터 판독가능 매체는 상기 센서로부터 수신된 신호에 기초하여 이동을 감지하기 위한 적어도 하나의 명령을 더 포함하는, 컴퓨터 판독가능 매체를 포함하는 컴퓨터 프로그램 제품. - 제 43 항에 있어서,
상기 컴퓨터 판독가능 매체는,
상기 모바일 컴퓨팅 디바이스와 사용자 사이의 거리를 결정하기 위한 적어도 하나의 명령; 및
상기 결정된 거리에 기초하여 상기 콘텐츠의 디스플레이된 부분에 확대를 적용하기 위한 적어도 하나의 명령을 더 포함하는, 컴퓨터 판독가능 매체를 포함하는 컴퓨터 프로그램 제품. - 제 43 항에 있어서,
상기 컴퓨터 판독가능 매체는,
감지된 기울기에 기초하여 가상 공간 내에 상기 콘텐츠를 재배치하기 위한 적어도 하나의 명령을 더 포함하는, 컴퓨터 판독가능 매체를 포함하는 컴퓨터 프로그램 제품. - 제 43 항에 있어서,
상기 컴퓨터 판독가능 매체는, 실제 공간에서의 이동을 감지하는 것이,
상기 카메라로부터 디지털 이미지를 수신하기 위한 적어도 하나의 명령;
순차적인 이미지들의 변경을 식별하기 위해 상기 수신된 디지털 이미지의 적어도 일부분을 이전 디지털 이미지의 적어도 일부분과 비교하기 위한 적어도 하나의 명령; 및
순차적인 이미지들의 상기 식별된 변경에 기초하여 이동을 결정하기 위한 적어도 하나의 명령을 포함하게 하는, 컴퓨터 판독가능 매체를 포함하는 컴퓨터 프로그램 제품. - 제 43 항에 있어서,
상기 가상 공간에 고정된 것으로 취급되는 콘텐츠의 뷰잉 시점을 결정하기 위한 적어도 하나의 명령은 상기 모바일 컴퓨팅 디바이스의 위치의 상기 결정된 변경에 적용되는 가상 이동 스케일링 인자에 더 기초하여 뷰잉 시점을 결정하기 위한 적어도 하나의 명령을 포함하는, 컴퓨터 판독가능 매체를 포함하는 컴퓨터 프로그램 제품. - 제 43 항에 있어서,
상기 컴퓨터 판독가능 매체는,
그래픽 사용자 인터페이스 모드에 있는 동안 사용자 인터페이스 모드 선택 입력을 수신하기 위한 적어도 하나의 명령;
상기 그래픽 사용자 인터페이스 모드에서 상기 콘텐츠의 디스플레이에 기초하여 상기 콘텐츠를 가상 공간 내에 고정하기 위한 적어도 하나의 명령; 및
모바일 사용자 인터페이스 모드를 구현하기 위한 적어도 하나의 명령을 더 포함하는, 컴퓨터 판독가능 매체를 포함하는 컴퓨터 프로그램 제품. - 제 54 항에 있어서,
상기 컴퓨터 판독가능 매체는,
상기 모바일 사용자 인터페이스 모드에 있는 동안 사용자 인터페이스 모드 선택 입력을 수신하기 위한 적어도 하나의 명령;
모바일 컴퓨팅 디바이스 디스플레이 내에 상기 콘텐츠를 고정하기 위한 적어도 하나의 명령; 및
상기 그래픽 사용자 인터페이스 모드를 구현하기 위한 적어도 하나의 명령을 더 포함하는, 컴퓨터 판독가능 매체를 포함하는 컴퓨터 프로그램 제품. - 제 55 항에 있어서,
상기 컴퓨터 판독가능 매체는,
버튼의 누름의 결과로서 상기 사용자 인터페이스 모드 선택 입력을 수신하기 위한 적어도 하나의 명령을 더 포함하는, 컴퓨터 판독가능 매체를 포함하는 컴퓨터 프로그램 제품.
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14280609P | 2009-01-06 | 2009-01-06 | |
US61/142,806 | 2009-01-06 | ||
US12/401,758 | 2009-03-11 | ||
US12/401,758 US8441441B2 (en) | 2009-01-06 | 2009-03-11 | User interface for mobile devices |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20110104096A true KR20110104096A (ko) | 2011-09-21 |
Family
ID=42312228
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020117018422A KR20110104096A (ko) | 2009-01-06 | 2009-03-18 | 모바일 디바이스들을 위한 사용자 인터페이스 |
Country Status (6)
Country | Link |
---|---|
US (1) | US8441441B2 (ko) |
EP (1) | EP2386077A1 (ko) |
JP (1) | JP2012514786A (ko) |
KR (1) | KR20110104096A (ko) |
CN (1) | CN102272690A (ko) |
WO (1) | WO2010080166A1 (ko) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013047944A1 (ko) * | 2011-09-27 | 2013-04-04 | 주식회사 에이티랩 | 저시력인을 위한 터치스크린 장치 및 그 디스플레이 방법 |
KR20140088545A (ko) * | 2011-11-02 | 2014-07-10 | 마이크로소프트 코포레이션 | 광학 태블릿 스타일러스 및 실내 네비게이션 시스템 |
Families Citing this family (154)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7466992B1 (en) * | 2001-10-18 | 2008-12-16 | Iwao Fujisaki | Communication device |
JP5039950B2 (ja) * | 2008-03-21 | 2012-10-03 | インターナショナル・ビジネス・マシーンズ・コーポレーション | オブジェクト移動制御システム、オブジェクト移動制御方法、サーバ及びコンピュータプログラム |
JP5315891B2 (ja) * | 2008-09-24 | 2013-10-16 | 富士通株式会社 | 距離測定装置、距離測定方法及び距離測定プログラム |
KR101734450B1 (ko) | 2008-11-10 | 2017-05-11 | 구글 인코포레이티드 | 멀티센서 음성 검출 |
US8412577B2 (en) | 2009-03-03 | 2013-04-02 | Digimarc Corporation | Narrowcasting from public displays, and related methods |
US20100251171A1 (en) * | 2009-03-31 | 2010-09-30 | Parulski Kenneth A | Graphical user interface which adapts to viewing distance |
US8878772B2 (en) * | 2009-08-21 | 2014-11-04 | Mitsubishi Electric Research Laboratories, Inc. | Method and system for displaying images on moveable display devices |
KR20110074017A (ko) * | 2009-12-24 | 2011-06-30 | 삼성전자주식회사 | 멀티미디어 기기 및 그 동작 제어 방법 |
EP2357220A1 (en) * | 2010-02-10 | 2011-08-17 | The Procter & Gamble Company | Cleaning composition comprising amylase variants with high stability in the presence of a chelating agent |
WO2011105502A1 (ja) * | 2010-02-24 | 2011-09-01 | 京セラ株式会社 | 携帯電子機器および投影システム |
JP5428966B2 (ja) * | 2010-03-15 | 2014-02-26 | ソニー株式会社 | 画像表示装置、および画像表示制御方法、並びにプログラム |
US9235268B2 (en) | 2010-04-09 | 2016-01-12 | Nokia Technologies Oy | Method and apparatus for generating a virtual interactive workspace |
US8898567B2 (en) * | 2010-04-09 | 2014-11-25 | Nokia Corporation | Method and apparatus for generating a virtual interactive workspace |
US20110298887A1 (en) * | 2010-06-02 | 2011-12-08 | Maglaque Chad L | Apparatus Using an Accelerometer to Capture Photographic Images |
US8717289B2 (en) * | 2010-06-22 | 2014-05-06 | Hsni Llc | System and method for integrating an electronic pointing device into digital image data |
US20120002004A1 (en) * | 2010-06-30 | 2012-01-05 | Apple Inc. | Immersive Navigation and Rendering of Dynamically Reassembled Panoramas |
US20120020297A1 (en) * | 2010-07-23 | 2012-01-26 | Albert Cecchini | Mobile handheld for voice communication over the internet |
DE102010047779A1 (de) * | 2010-10-08 | 2012-04-12 | Hicat Gmbh | Computer und Verfahren zur visuellen Navigation in einem dreidimensionalen Bilddatensatz |
US9111386B2 (en) * | 2010-11-02 | 2015-08-18 | Covidien Lp | Image viewing application and method for orientationally sensitive display devices |
EP2646987A1 (en) | 2010-12-03 | 2013-10-09 | App.Lab Inc. | System and method for presenting images |
KR101496602B1 (ko) * | 2010-12-22 | 2015-02-26 | 인텔 코오퍼레이션 | 가상 터치 스크린 키보드를 디스플레이하기 위한 방법, 및 그 방법을 이용한 모바일 디바이스 |
KR101892630B1 (ko) * | 2011-01-10 | 2018-08-28 | 삼성전자주식회사 | 터치 디스플레이 장치 및 그 디스플레이 방법 |
KR101323460B1 (ko) * | 2011-01-18 | 2013-11-04 | 주식회사 팬택 | 영상 객체와 실시간 대응하는 객체정보 표시 시스템 및 방법 |
US20120194692A1 (en) * | 2011-01-31 | 2012-08-02 | Hand Held Products, Inc. | Terminal operative for display of electronic record |
US9201185B2 (en) | 2011-02-04 | 2015-12-01 | Microsoft Technology Licensing, Llc | Directional backlighting for display panels |
US9285883B2 (en) * | 2011-03-01 | 2016-03-15 | Qualcomm Incorporated | System and method to display content based on viewing orientation |
US9035940B2 (en) * | 2011-03-08 | 2015-05-19 | Nokia Corporation | Apparatus and associated methods |
CN110084876A (zh) | 2011-04-08 | 2019-08-02 | 皇家飞利浦有限公司 | 图像处理***和方法 |
US20140043231A1 (en) * | 2011-04-20 | 2014-02-13 | Nec Casio Mobile Communications, Ltd. | Information display device, control method, and program |
TW201248608A (en) * | 2011-05-31 | 2012-12-01 | Hon Hai Prec Ind Co Ltd | Display adjusting system, hand-held electronic device and display adjusting method |
US9183806B2 (en) * | 2011-06-23 | 2015-11-10 | Verizon Patent And Licensing Inc. | Adjusting font sizes |
US8194036B1 (en) | 2011-06-29 | 2012-06-05 | Google Inc. | Systems and methods for controlling a cursor on a display using a trackpad input device |
US8559766B2 (en) * | 2011-08-16 | 2013-10-15 | iParse, LLC | Automatic image capture |
US10489570B2 (en) * | 2011-09-09 | 2019-11-26 | Google Llc | Preventing computing device from timing out |
US9794209B2 (en) | 2011-09-28 | 2017-10-17 | Elwha Llc | User interface for multi-modality communication |
US9906927B2 (en) | 2011-09-28 | 2018-02-27 | Elwha Llc | Multi-modality communication initiation |
US9503550B2 (en) | 2011-09-28 | 2016-11-22 | Elwha Llc | Multi-modality communication modification |
US9699632B2 (en) | 2011-09-28 | 2017-07-04 | Elwha Llc | Multi-modality communication with interceptive conversion |
US9002937B2 (en) | 2011-09-28 | 2015-04-07 | Elwha Llc | Multi-party multi-modality communication |
US9477943B2 (en) | 2011-09-28 | 2016-10-25 | Elwha Llc | Multi-modality communication |
US8768249B2 (en) * | 2011-09-29 | 2014-07-01 | Qualcomm Innovation Center, Inc. | Mobile communication-device-controlled operations |
US9121724B2 (en) | 2011-09-30 | 2015-09-01 | Apple Inc. | 3D position tracking for panoramic imagery navigation |
EP2581268B2 (en) * | 2011-10-13 | 2019-09-11 | Harman Becker Automotive Systems GmbH | Method of controlling an optical output device for displaying a vehicle surround view and vehicle surround view system |
US20130111330A1 (en) * | 2011-11-01 | 2013-05-02 | Research In Motion Limited | Accelerated compositing of fixed position elements on an electronic device |
US8872898B2 (en) * | 2011-12-14 | 2014-10-28 | Ebay Inc. | Mobile device capture and display of multiple-angle imagery of physical objects |
US8515496B2 (en) * | 2011-12-15 | 2013-08-20 | Amazon Technologies, Inc. | Antenna deployment switching for data communication of a user device |
US20130191787A1 (en) * | 2012-01-06 | 2013-07-25 | Tourwrist, Inc. | Systems and Methods for Acceleration-Based Motion Control of Virtual Tour Applications |
KR101975906B1 (ko) * | 2012-01-09 | 2019-05-08 | 삼성전자주식회사 | 영상 표시 장치에서 응용 프로그램의 레이아웃을 스케일링하기 위한 장치 및 방법 |
US20130194314A1 (en) * | 2012-01-26 | 2013-08-01 | Nokia Corporation | Desktop extension |
US9052414B2 (en) | 2012-02-07 | 2015-06-09 | Microsoft Technology Licensing, Llc | Virtual image device |
US9354748B2 (en) | 2012-02-13 | 2016-05-31 | Microsoft Technology Licensing, Llc | Optical stylus interaction |
US8749529B2 (en) | 2012-03-01 | 2014-06-10 | Microsoft Corporation | Sensor-in-pixel display system with near infrared filter |
US9360893B2 (en) | 2012-03-02 | 2016-06-07 | Microsoft Technology Licensing, Llc | Input device writing surface |
US9870066B2 (en) | 2012-03-02 | 2018-01-16 | Microsoft Technology Licensing, Llc | Method of manufacturing an input device |
US9064654B2 (en) | 2012-03-02 | 2015-06-23 | Microsoft Technology Licensing, Llc | Method of manufacturing an input device |
US9426905B2 (en) | 2012-03-02 | 2016-08-23 | Microsoft Technology Licensing, Llc | Connection device for computing devices |
US9075566B2 (en) | 2012-03-02 | 2015-07-07 | Microsoft Technoogy Licensing, LLC | Flexible hinge spine |
US9134807B2 (en) | 2012-03-02 | 2015-09-15 | Microsoft Technology Licensing, Llc | Pressure sensitive key normalization |
USRE48963E1 (en) | 2012-03-02 | 2022-03-08 | Microsoft Technology Licensing, Llc | Connection device for computing devices |
US8935774B2 (en) | 2012-03-02 | 2015-01-13 | Microsoft Corporation | Accessory device authentication |
US8873227B2 (en) | 2012-03-02 | 2014-10-28 | Microsoft Corporation | Flexible hinge support layer |
US9706089B2 (en) | 2012-03-02 | 2017-07-11 | Microsoft Technology Licensing, Llc | Shifted lens camera for mobile computing devices |
CN103364757B (zh) * | 2012-03-28 | 2017-07-21 | 富泰华工业(深圳)有限公司 | 便携式电子装置及其测距装置 |
US20130300590A1 (en) | 2012-05-14 | 2013-11-14 | Paul Henry Dietz | Audio Feedback |
JP5973788B2 (ja) * | 2012-05-28 | 2016-08-23 | 任天堂株式会社 | 情報処理プログラム、情報処理装置、情報処理システム及び情報処理方法 |
US10031556B2 (en) | 2012-06-08 | 2018-07-24 | Microsoft Technology Licensing, Llc | User experience adaptation |
US9019615B2 (en) | 2012-06-12 | 2015-04-28 | Microsoft Technology Licensing, Llc | Wide field-of-view virtual image projector |
US8947353B2 (en) | 2012-06-12 | 2015-02-03 | Microsoft Corporation | Photosensor array gesture detection |
US9459160B2 (en) | 2012-06-13 | 2016-10-04 | Microsoft Technology Licensing, Llc | Input device sensor configuration |
US9684382B2 (en) | 2012-06-13 | 2017-06-20 | Microsoft Technology Licensing, Llc | Input device configuration having capacitive and pressure sensors |
US9073123B2 (en) | 2012-06-13 | 2015-07-07 | Microsoft Technology Licensing, Llc | Housing vents |
US20130339830A1 (en) | 2012-06-15 | 2013-12-19 | Microsoft Corporation | Optimized document views for mobile device interfaces |
US9256089B2 (en) | 2012-06-15 | 2016-02-09 | Microsoft Technology Licensing, Llc | Object-detecting backlight unit |
US20140089850A1 (en) * | 2012-09-22 | 2014-03-27 | Tourwrist, Inc. | Systems and Methods of Using Motion Control to Navigate Panoramas and Virtual Tours |
TW201403446A (zh) * | 2012-07-09 | 2014-01-16 | Hon Hai Prec Ind Co Ltd | 軟體介面顯示系統及方法 |
US9131143B2 (en) * | 2012-07-20 | 2015-09-08 | Blackberry Limited | Dynamic region of interest adaptation and image capture device providing same |
US9355345B2 (en) | 2012-07-23 | 2016-05-31 | Microsoft Technology Licensing, Llc | Transparent tags with encoded data |
US8964379B2 (en) | 2012-08-20 | 2015-02-24 | Microsoft Corporation | Switchable magnetic lock |
US9690334B2 (en) * | 2012-08-22 | 2017-06-27 | Intel Corporation | Adaptive visual output based on change in distance of a mobile device to a user |
JP2014041491A (ja) * | 2012-08-22 | 2014-03-06 | Rohm Co Ltd | タッチパッドモジュールおよびそれを用いた電子機器 |
CN103677259B (zh) * | 2012-09-18 | 2018-05-29 | 三星电子株式会社 | 用于引导控制器的方法、多媒体装置及其目标跟踪装置 |
US9152173B2 (en) | 2012-10-09 | 2015-10-06 | Microsoft Technology Licensing, Llc | Transparent display device |
US8654030B1 (en) | 2012-10-16 | 2014-02-18 | Microsoft Corporation | Antenna placement |
WO2014059618A1 (en) | 2012-10-17 | 2014-04-24 | Microsoft Corporation | Graphic formation via material ablation |
CN104870123B (zh) | 2012-10-17 | 2016-12-14 | 微软技术许可有限责任公司 | 金属合金注射成型突起 |
EP2908971B1 (en) | 2012-10-17 | 2018-01-03 | Microsoft Technology Licensing, LLC | Metal alloy injection molding overflows |
US8952892B2 (en) | 2012-11-01 | 2015-02-10 | Microsoft Corporation | Input location correction tables for input panels |
US8786767B2 (en) | 2012-11-02 | 2014-07-22 | Microsoft Corporation | Rapid synchronized lighting and shuttering |
US9159133B2 (en) * | 2012-11-05 | 2015-10-13 | Qualcomm Incorporated | Adaptive scale and/or gravity estimation |
TWI502471B (zh) * | 2012-12-04 | 2015-10-01 | Wistron Corp | 游標控制方法與電腦程式產品 |
US9513748B2 (en) | 2012-12-13 | 2016-12-06 | Microsoft Technology Licensing, Llc | Combined display panel circuit |
US9965877B2 (en) * | 2012-12-21 | 2018-05-08 | Nokia Technologies Oy | Image processing apparatus and associated methods |
US9176538B2 (en) | 2013-02-05 | 2015-11-03 | Microsoft Technology Licensing, Llc | Input device configurations |
US10578499B2 (en) | 2013-02-17 | 2020-03-03 | Microsoft Technology Licensing, Llc | Piezo-actuated virtual buttons for touch surfaces |
US20140232634A1 (en) * | 2013-02-19 | 2014-08-21 | Apple Inc. | Touch-based gestures modified by gyroscope and accelerometer |
CN104008744B (zh) * | 2013-02-25 | 2016-08-17 | 联想(北京)有限公司 | 显示方法和电子设备 |
CN103150361B (zh) * | 2013-02-27 | 2017-02-08 | 优视科技有限公司 | 一种网页显示方法及装置 |
US9638835B2 (en) | 2013-03-05 | 2017-05-02 | Microsoft Technology Licensing, Llc | Asymmetric aberration correcting lens |
US9472844B2 (en) * | 2013-03-12 | 2016-10-18 | Intel Corporation | Apparatus, system and method of wireless beamformed communication |
US9933921B2 (en) | 2013-03-13 | 2018-04-03 | Google Technology Holdings LLC | System and method for navigating a field of view within an interactive media-content item |
US10152135B2 (en) * | 2013-03-15 | 2018-12-11 | Intel Corporation | User interface responsive to operator position and gestures |
US9459705B2 (en) * | 2013-03-18 | 2016-10-04 | Facebook, Inc. | Tilting to scroll |
US9304549B2 (en) | 2013-03-28 | 2016-04-05 | Microsoft Technology Licensing, Llc | Hinge mechanism for rotatable component attachment |
US9552777B2 (en) | 2013-05-10 | 2017-01-24 | Microsoft Technology Licensing, Llc | Phase control backlight |
WO2014190293A2 (en) * | 2013-05-24 | 2014-11-27 | New York University | Haptic force-feedback for computing interfaces |
JP6166961B2 (ja) * | 2013-06-18 | 2017-07-19 | Kddi株式会社 | モバイル端末 |
CN104281397B (zh) * | 2013-07-10 | 2018-08-14 | 华为技术有限公司 | 多深度区间的重聚焦方法、装置及电子设备 |
US9779480B2 (en) | 2013-07-19 | 2017-10-03 | Google Technology Holdings LLC | View-driven consumption of frameless media |
WO2015010069A1 (en) | 2013-07-19 | 2015-01-22 | Google Inc. | Small-screen movie-watching using a viewport |
US9766786B2 (en) | 2013-07-19 | 2017-09-19 | Google Technology Holdings LLC | Visual storytelling on a mobile media-consumption device |
CN103455257A (zh) * | 2013-08-30 | 2013-12-18 | 华为技术有限公司 | 一种电子放大镜的实现方法及用户终端 |
EP3703001A1 (en) | 2013-08-31 | 2020-09-02 | ML Netherlands C.V. | User feedback for real-time checking and improving quality of scanned image |
US20150062178A1 (en) * | 2013-09-05 | 2015-03-05 | Facebook, Inc. | Tilting to scroll |
US9877080B2 (en) | 2013-09-27 | 2018-01-23 | Samsung Electronics Co., Ltd. | Display apparatus and method for controlling thereof |
EP3072103B1 (en) | 2013-12-03 | 2019-05-08 | ML Netherlands C.V. | User feedback for real-time checking and improving quality of scanned image |
US9134764B2 (en) | 2013-12-20 | 2015-09-15 | Sony Corporation | Apparatus and method for controlling a display based on a manner of holding the apparatus |
CN104750395B (zh) * | 2013-12-31 | 2018-05-22 | 富泰华工业(深圳)有限公司 | 用户界面调整***及其调整方法 |
US9448631B2 (en) | 2013-12-31 | 2016-09-20 | Microsoft Technology Licensing, Llc | Input device haptics and pressure sensing |
US10708491B2 (en) | 2014-01-07 | 2020-07-07 | Ml Netherlands C.V. | Adaptive camera control for reducing motion blur during real-time image capture |
US10410321B2 (en) * | 2014-01-07 | 2019-09-10 | MN Netherlands C.V. | Dynamic updating of a composite image |
US20150199030A1 (en) * | 2014-01-10 | 2015-07-16 | Microsoft Corporation | Hover-Sensitive Control Of Secondary Display |
US9317072B2 (en) | 2014-01-28 | 2016-04-19 | Microsoft Technology Licensing, Llc | Hinge mechanism with preset positions |
US9759854B2 (en) | 2014-02-17 | 2017-09-12 | Microsoft Technology Licensing, Llc | Input device outer layer and backlighting |
JP6208602B2 (ja) * | 2014-03-13 | 2017-10-04 | 株式会社Nttドコモ | 制御装置及びプログラム |
US10120420B2 (en) | 2014-03-21 | 2018-11-06 | Microsoft Technology Licensing, Llc | Lockable display and techniques enabling use of lockable displays |
US10484561B2 (en) | 2014-05-12 | 2019-11-19 | Ml Netherlands C.V. | Method and apparatus for scanning and printing a 3D object |
WO2016004554A1 (zh) | 2014-06-16 | 2016-01-14 | 华为技术有限公司 | 移动终端中呈现全景照片的方法和装置、以及移动终端 |
CN105205386A (zh) * | 2014-06-25 | 2015-12-30 | 腾讯科技(深圳)有限公司 | 移动终端应用程序密码保护方法和装置 |
US9851868B2 (en) | 2014-07-23 | 2017-12-26 | Google Llc | Multi-story visual experience |
US10324733B2 (en) | 2014-07-30 | 2019-06-18 | Microsoft Technology Licensing, Llc | Shutdown notifications |
US10341731B2 (en) | 2014-08-21 | 2019-07-02 | Google Llc | View-selection feedback for a visual experience |
US9424048B2 (en) | 2014-09-15 | 2016-08-23 | Microsoft Technology Licensing, Llc | Inductive peripheral retention device |
US9447620B2 (en) | 2014-09-30 | 2016-09-20 | Microsoft Technology Licensing, Llc | Hinge mechanism with multiple preset positions |
GB2532010A (en) * | 2014-11-04 | 2016-05-11 | Samsung Electronics Co Ltd | Display method and device |
KR101664038B1 (ko) * | 2014-12-09 | 2016-10-10 | 현대자동차 주식회사 | 차량의 집중 조작 시스템 |
US10002589B2 (en) | 2015-03-04 | 2018-06-19 | Qualcomm Incorporated | Retaining user selected screen area on user equipment |
US9983693B2 (en) * | 2015-03-13 | 2018-05-29 | Adtile Technologies Inc. | Spatial motion-based user interactivity |
US10222889B2 (en) | 2015-06-03 | 2019-03-05 | Microsoft Technology Licensing, Llc | Force inputs and cursor control |
US10416799B2 (en) | 2015-06-03 | 2019-09-17 | Microsoft Technology Licensing, Llc | Force sensing and inadvertent input control of an input device |
US9752361B2 (en) | 2015-06-18 | 2017-09-05 | Microsoft Technology Licensing, Llc | Multistage hinge |
US9864415B2 (en) | 2015-06-30 | 2018-01-09 | Microsoft Technology Licensing, Llc | Multistage friction hinge |
US10073612B1 (en) | 2015-08-17 | 2018-09-11 | Bentley Systems, Incorporated | Fixed cursor input interface for a computer aided design application executing on a touch screen device |
US10061385B2 (en) | 2016-01-22 | 2018-08-28 | Microsoft Technology Licensing, Llc | Haptic feedback for a touch input device |
US10344797B2 (en) | 2016-04-05 | 2019-07-09 | Microsoft Technology Licensing, Llc | Hinge with multiple preset positions |
US20170344217A1 (en) * | 2016-05-31 | 2017-11-30 | International Business Machines Corporation | Pointer-based gui for mobile devices |
US20180032536A1 (en) * | 2016-08-01 | 2018-02-01 | Barbara Carey Stachowski | Method of and system for advertising real estate within a defined geo-targeted audience |
US10037057B2 (en) | 2016-09-22 | 2018-07-31 | Microsoft Technology Licensing, Llc | Friction hinge |
US10168767B2 (en) * | 2016-09-30 | 2019-01-01 | Intel Corporation | Interaction mode selection based on detected distance between user and machine interface |
US10564425B2 (en) * | 2017-02-27 | 2020-02-18 | Snap Inc. | Processing a media content based on device movement |
WO2019023852A1 (en) | 2017-07-31 | 2019-02-07 | Tencent Technology (Shenzhen) Company Limited | INTERACTION WITH THREE-DIMENSIONAL INTERNET CONTENT DISPLAYED ON A USER INTERFACE |
CN111124156B (zh) * | 2018-11-01 | 2023-07-18 | 中兴通讯股份有限公司 | 移动终端的交互控制方法和移动终端 |
WO2020096096A1 (en) * | 2018-11-09 | 2020-05-14 | Samsung Electronics Co., Ltd. | Display method and display device in portable terminal |
US11281289B2 (en) | 2020-02-21 | 2022-03-22 | Honda Motor Co., Ltd. | Content adjustment based on vehicle motion and eye gaze |
JP2023036101A (ja) * | 2021-09-02 | 2023-03-14 | 株式会社日立製作所 | ソリューション管理システムおよびソリューション管理方法 |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4746770A (en) | 1987-02-17 | 1988-05-24 | Sensor Frame Incorporated | Method and apparatus for isolating and manipulating graphic objects on computer video monitor |
JP3089251B2 (ja) | 1990-09-03 | 2000-09-18 | 株式会社電脳商会 | マルチメディア情報処理方法 |
JPH10254614A (ja) | 1997-03-06 | 1998-09-25 | Hitachi Ltd | 携帯型電子処理装置及びその操作方法 |
US20010052895A1 (en) | 1999-03-16 | 2001-12-20 | Dinesh Kashinath Anvekar | Method and apparatus for mouse positioning device based on infrared light sources and detector |
JP2002007027A (ja) | 2000-06-27 | 2002-01-11 | Masanori Idesawa | 画像情報表示装置 |
US6798429B2 (en) * | 2001-03-29 | 2004-09-28 | Intel Corporation | Intuitive mobile device interface to virtual spaces |
FI117488B (fi) | 2001-05-16 | 2006-10-31 | Myorigo Sarl | Informaation selaus näytöllä |
KR100415161B1 (ko) | 2003-07-01 | 2004-01-13 | (주)두모션 | 기울기 센서를 이용한 3차원 이미지 조망 기능을 갖는핸드헬드 장치 및 이를 이용한 3차원 이미지 디스플레이시스템 |
JP4779299B2 (ja) | 2004-01-27 | 2011-09-28 | ソニー株式会社 | 表示装置および表示制御方法、記録媒体、並びにプログラム |
JP4429047B2 (ja) | 2004-03-11 | 2010-03-10 | キヤノン株式会社 | 座標入力装置及びその制御方法、プログラム |
CN101564596A (zh) * | 2004-08-23 | 2009-10-28 | 盖姆卡斯特公司 | 用以观看和操纵虚拟环境的设备、方法和*** |
NO20044073D0 (no) | 2004-09-27 | 2004-09-27 | Isak Engquist | Informasjonsbehandlingssystem og fremgangsmate |
JP2006146440A (ja) | 2004-11-17 | 2006-06-08 | Sony Corp | 電子機器及び情報表示選択方法 |
JP2007166474A (ja) | 2005-12-16 | 2007-06-28 | Softbank Mobile Corp | 情報通信端末 |
EP2259163A3 (en) | 2006-08-02 | 2011-03-16 | Research In Motion Limited | System and method for adjusting presentation of moving images on an electronic device according to an orientation of the device |
EP1884863A1 (en) * | 2006-08-02 | 2008-02-06 | Research In Motion Limited | System and method for adjusting presentation of text and images on an electronic device according to an orientation of the device |
-
2009
- 2009-03-11 US US12/401,758 patent/US8441441B2/en active Active
- 2009-03-18 KR KR1020117018422A patent/KR20110104096A/ko not_active Application Discontinuation
- 2009-03-18 JP JP2011544423A patent/JP2012514786A/ja active Pending
- 2009-03-18 EP EP09789523A patent/EP2386077A1/en not_active Withdrawn
- 2009-03-18 WO PCT/US2009/037501 patent/WO2010080166A1/en active Application Filing
- 2009-03-18 CN CN2009801540339A patent/CN102272690A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013047944A1 (ko) * | 2011-09-27 | 2013-04-04 | 주식회사 에이티랩 | 저시력인을 위한 터치스크린 장치 및 그 디스플레이 방법 |
KR20140088545A (ko) * | 2011-11-02 | 2014-07-10 | 마이크로소프트 코포레이션 | 광학 태블릿 스타일러스 및 실내 네비게이션 시스템 |
Also Published As
Publication number | Publication date |
---|---|
JP2012514786A (ja) | 2012-06-28 |
EP2386077A1 (en) | 2011-11-16 |
WO2010080166A1 (en) | 2010-07-15 |
CN102272690A (zh) | 2011-12-07 |
US8441441B2 (en) | 2013-05-14 |
US20100174421A1 (en) | 2010-07-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8441441B2 (en) | User interface for mobile devices | |
US10318017B2 (en) | Viewing images with tilt control on a hand-held device | |
US12032802B2 (en) | Panning in a three dimensional environment on a mobile device | |
EP3997552B1 (en) | Virtual user interface using a peripheral device in artificial reality environments | |
US8384718B2 (en) | System and method for navigating a 3D graphical user interface | |
US9519350B2 (en) | Interface controlling apparatus and method using force | |
KR100671585B1 (ko) | 디스플레이 장치에서의 정보 브라우징 방법 및 장치 | |
KR102491443B1 (ko) | 애플리케이션을 위한 디스플레이 적응 방법 및 장치, 디바이스, 및 저장 매체 | |
US7271795B2 (en) | Intuitive mobile device interface to virtual spaces | |
CN115798384A (zh) | 增强显示旋转 | |
US20150040073A1 (en) | Zoom, Rotate, and Translate or Pan In A Single Gesture | |
US20130176202A1 (en) | Menu selection using tangible interaction with mobile devices | |
EP2558924B1 (en) | Apparatus, method and computer program for user input using a camera | |
US9665232B2 (en) | Information-processing device, storage medium, information-processing method, and information-processing system for enlarging or reducing an image displayed on a display device | |
JP2016224595A (ja) | システム、方法、およびプログラム | |
JP2016015078A (ja) | 表示制御装置、表示制御方法、及び、プログラム | |
KR101165388B1 (ko) | 이종의 입력 장치를 이용하여 화면을 제어하는 방법 및 그 단말장치 | |
KR20150024588A (ko) | 콘텐츠 제공 방법 및 이를 이용한 디지털 디바이스 | |
Yim et al. | Image browsing in mobile device using user motion tracking | |
TW201112105A (en) | Method and system of dynamic operation of interactive objects | |
Jeon et al. | Interacting with a tabletop display using a camera equipped mobile phone | |
Hachet et al. | 3DOF elastic control on mobile devices |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E601 | Decision to refuse application |