KR20140148423A - 사용자에 디스플레이되는 애니메이션 변경 - Google Patents
사용자에 디스플레이되는 애니메이션 변경 Download PDFInfo
- Publication number
- KR20140148423A KR20140148423A KR1020147029265A KR20147029265A KR20140148423A KR 20140148423 A KR20140148423 A KR 20140148423A KR 1020147029265 A KR1020147029265 A KR 1020147029265A KR 20147029265 A KR20147029265 A KR 20147029265A KR 20140148423 A KR20140148423 A KR 20140148423A
- Authority
- KR
- South Korea
- Prior art keywords
- animation
- user
- initial
- display
- final
- Prior art date
Links
- 238000000034 method Methods 0.000 claims abstract description 47
- 230000004044 response Effects 0.000 claims abstract description 15
- 238000012544 monitoring process Methods 0.000 claims abstract description 13
- 230000006870 function Effects 0.000 claims description 37
- 230000003993 interaction Effects 0.000 claims description 35
- 230000008859 change Effects 0.000 claims description 17
- 230000007704 transition Effects 0.000 claims 9
- 230000000007 visual effect Effects 0.000 abstract description 17
- 230000015654 memory Effects 0.000 description 42
- 238000004891 communication Methods 0.000 description 20
- 238000004590 computer program Methods 0.000 description 16
- 238000010586 diagram Methods 0.000 description 9
- 239000004973 liquid crystal related substance Substances 0.000 description 6
- 230000008569 process Effects 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 4
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000001413 cellular effect Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000001953 sensory effect Effects 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 239000000969 carrier Substances 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
- 239000010409 thin film Substances 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
-
- 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/04812—Interaction techniques based on cursor appearance or behaviour, e.g. being affected by the presence of displayed objects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
- G06F9/453—Help systems
-
- 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/0484—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
- G06F3/04842—Selection of displayed objects or displayed text elements
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Business, Economics & Management (AREA)
- Economics (AREA)
- Entrepreneurship & Innovation (AREA)
- Human Resources & Organizations (AREA)
- Marketing (AREA)
- Operations Research (AREA)
- Quality & Reliability (AREA)
- Strategic Management (AREA)
- Tourism & Hospitality (AREA)
- General Business, Economics & Management (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
컴퓨팅 시스템은 컴퓨팅 시스템의 디스플레이 상의 그래픽 사용자 인터페이스(GUI)에서 사용자에게 복수의 초기 애니메이션들을 디스플레이하는 것을 포함하는 방법을 수행할 수 있으며, 복수의 애니메이션들 각각은 동일한 함수 호출에 대한 응답으로 디스플레이되고, 동일한 시각적 외관을 가지며, 사용자로부터의 입력을 유도하도록 디스플레이된다. 또한, 상기 방법은 컴퓨팅 시스템의 프로세서에 의해, 복수의 애니메이션들의 각각에 대한 사용자의 입력을 모니터링하는 것을 포함할 수 있다. 또한, 상기 방법은 GUI에 의해, 사용자에게 후속 애니메이션을 디스플레이하는 것을 포함하며, 상기 후속 애니메이션은 복수의 초기 애니메이션들과 동일한 함수 호출에 대한 응답으로 디스플레이되지만, 상기 복수의 초기 애니메이션들과는 상이한 시각적 외관을 가지며, 상기 후속 애니메이션의 상이한 시각적 외관은 상기 모니터링된 입력들에 기초하게 된다.
Description
관련 출원에 대한 상호 참조
본원은 2012년 4월 12일에 출원되고, 발명의 명칭이 "CHANGING ANIMATION DISPLAYED TO USER"인 미국 정규 출원번호 제13/445,461호에 대한 우선권을 주장하고, 그것의 계속 출원이며, 그 개시 내용의 전체는 참조로서 본 명세서에 포함된다.
기술분야
본 발명은 컴퓨팅 디바이스에 관한 것이다.
운영 체제 또는 브라우저는 사용자에게 응답을 안내하는 애니메이션들을 제공할 수 있다. 애니메이션은 사용자가 브라우저 또는 운영 체제의 특징을 학습할 경우에 초기에 도움이 될 수 있지만, 사용자가 보다 익숙하게 될 경우 사용자를 지연시킬 수 있다.
일반적인 일 양태에 따르면, 컴퓨팅 시스템은 일 방법을 수행할 수 있다. 상기 방법은 컴퓨팅 시스템의 디스플레이 상의 그래픽 사용자 인터페이스(GUI)에서 사용자에게 복수의 초기 애니메이션들을 디스플레이하는 것을 포함할 수 있으며, 복수의 애니메이션들 각각은 동일한 함수 호출에 대한 응답으로 디스플레이되고, 동일한 시각적 외관을 가지며, 사용자로부터의 입력을 유도하도록 디스플레이된다. 또한, 상기 방법은 컴퓨팅 시스템의 프로세서에 의해, 복수의 애니메이션들의 각각에 대한 사용자의 입력을 모니터링하는 것을 포함할 수 있다. 또한, 상기 방법은 GUI에 의해, 사용자에게 후속 애니메이션을 디스플레이하는 것을 포함하며, 상기 후속 애니메이션은 복수의 초기 애니메이션들과 동일한 함수 호출에 대한 응답으로 디스플레이되지만, 상기 복수의 초기 애니메이션들과는 상이한 시각적 외관을 가지며, 상기 후속 애니메이션의 상이한 시각적 외관은 상기 모니터링된 입력들에 기초하게 된다.
일반적인 다른 양태에 따르면, 비-일시적 컴퓨터-판독가능 저장 매체는 저장되어 있는 명령들을 포함할 수 있다. 적어도 하나의 프로세서에 의해 실행될 시에, 명령들은 컴퓨팅 시스템으로 하여금 적어도, 컴퓨팅 시스템의 디스플레이 상의 그래픽 사용자 인터페이스(GUI)에서 사용자에게 복수의 초기 애니메이션들을 디스플레이하게 할 수 있으며, 상기 복수의 애니메이션들 각각은 동일한 함수 호출에 대한 응답으로 디스플레이되고, 동일한 시각적 외관을 가지며, 사용자로부터의 입력을 유도하도록 디스플레이된다. 또한, 상기 명령들은 컴퓨팅 시스템으로 하여금, 컴퓨팅 시스템의 적어도 하나의 프로세서에 의해서, 상기 복수의 애니메이션들의 각각에 대한 사용자의 입력을 모니터링하게 할 수 있다. 또한, 상기 명령들은 컴퓨팅 시스템으로 하여금, GUI에 의해, 사용자에게 후속 애니메이션을 디스플레이하게 하고, 상기 후속 애니메이션은 상기 복수의 초기 애니메이션들과 동일한 함수 호출에 대한 응답으로 디스플레이되지만, 상기 복수의 초기 애니메이션들과 상이한 시각적 외관을 가지며, 상기 후속 애니메이션의 상이한 시각적 외관은 상기 모니터링된 입력들에 기초하게 된다.
일반적인 다른 양태에 따르면, 비-일시적 컴퓨터-판독가능 저장 매체는 저장되어 있는 명령들을 포함할 수 있다. 적어도 하나의 프로세서에 의해 실행될 시에, 상기 명령들은 컴퓨팅 시스템으로 하여금, 적어도 컴퓨팅 시스템의 디스플레이 상의 그래픽 사용자 인터페이스(GUI)에 복수의 횟수로 사용자에게 초기 캘린더 알림창(alert) 애니메이션을 디스플레이하게 할 수 있으며, 상기 초기 캘린더 알림창 애니메이션은 시간의 함수로서 외관이 변경되고, 사용자로부터의 입력을 유도하도록 디스플레이된다. 또한, 상기 명령들은 컴퓨팅 시스템으로 하여금, 컴퓨팅 시스템의 적어도 하나의 프로세서에 의해서, 상기 디스플레이된 캘린더 알림창 애니메이션들에 대한 사용자의 입력들을 모니터링하게 할 수 있다. 상기 명령들은 컴퓨팅 시스템으로 하여금, GUI에 의해서, 사용자에게 후속의 캘린더 알림창 애니메이션을 디스플레이하게 할 수 있으며, 상기 후속의 캘린더 애니메이션은 상기 모니터링된 입력들에 기초하여 이전에 디스플레이된 캘린더 알림창 애니메이션들과는 상이한 애니메이션을 갖는다.
하나 이상의 구현예들의 세부사항들은 첨부한 도면들 및 이하의 설명에 제시된다. 다른 특징들은 설명 및 도면들로부터, 및 청구항들로부터 명백해질 것이다.
도 1은 예시적 일 실시예에 따른 애니메이션들의 생성 및 변경을 위한 시스템의 블록도이다.
도 2a는 예시적 일 실시예에 따른 애니메이션을 나타낸 도면이다.
도 2b는 예시적 일 실시예에 따른 애니메이션의 움직임을 예상한 사용자를 나타낸 도면이다.
도 2c는 예시적 일 실시예에 따른, 애니메이션의 움직임에 대한 사용자의 예상에 기초하는 애니메이션 스피드 업을 나타낸 도면이다.
도 2d는 예시적 일 실시예에 따른 디스플레이의 최종 부분에 있는 애니메이션을 나타낸 도면이다.
도 2e는 예시적 일 실시예에 따른, 애니메이션과의 사용자의 모니터링된 상호작용에 기초하는 변경된 애니메이션을 나타낸 도면이다.
도 3은 예시적 일 실시예에 따른 방법을 나타낸 흐름도이다.
도 4는 본 명세서에 기술된 기술들과 함께 사용될 수 있는, 일반적인 컴퓨터 디바이스 및 일반적인 모바일 컴퓨터 디바이스의 일 예를 나타낸다.
도 2a는 예시적 일 실시예에 따른 애니메이션을 나타낸 도면이다.
도 2b는 예시적 일 실시예에 따른 애니메이션의 움직임을 예상한 사용자를 나타낸 도면이다.
도 2c는 예시적 일 실시예에 따른, 애니메이션의 움직임에 대한 사용자의 예상에 기초하는 애니메이션 스피드 업을 나타낸 도면이다.
도 2d는 예시적 일 실시예에 따른 디스플레이의 최종 부분에 있는 애니메이션을 나타낸 도면이다.
도 2e는 예시적 일 실시예에 따른, 애니메이션과의 사용자의 모니터링된 상호작용에 기초하는 변경된 애니메이션을 나타낸 도면이다.
도 3은 예시적 일 실시예에 따른 방법을 나타낸 흐름도이다.
도 4는 본 명세서에 기술된 기술들과 함께 사용될 수 있는, 일반적인 컴퓨터 디바이스 및 일반적인 모바일 컴퓨터 디바이스의 일 예를 나타낸다.
도 1은 예시적 일 실시예에 따른 애니메이션을 생성 및 변경하는 시스템(100)의 블록도이다. 시스템(100)은 예시적 실시예들에 따라, 사용자에 의해 직접 또는 인터넷과 같은 네트워크를 통해 액세스될 수 있는 컴퓨터, 예를 들어 서버, 데스크탑이나 타워 컴퓨터, 랩탑이나 노트북 컴퓨터, 씬 클라이언트, 태블릿 컴퓨터, 또는 스마트폰 상에서 구현될 수 있다. 시스템(100)은 예를 들어, 캘린더 이벤트, 메뉴, 도구 설명, 또는 새 창 또는 브라우저 탭 전환 또는 페이드 인이나 페이드 아웃을 포함할 수 있는 애니메이션들을 사용자에게 디스플레이할 수 있다. 본 명세서에서 기술되는 기능들은 운영 체제나 브라우저의 기능들일 수 있으며, 그것의 다운로드 가능한 확장들일 수도 있다.
시스템(100)은 사용자에게 애니메이션들을 디스플레이할 수 있으며, 애니메이션들은 시간의 함수로서 변경 및/또는 이동할 수 있다. 애니메이션들은 시간의 함수로서 스크린 또는 디스플레이를 가로질러 이동 또는 슬라이딩하거나, 확장되거나, 디스플레이에서 페이드 인 또는 페이드 아웃되거나, 모양 또는 색상이 변경될 수 있다. 애니메이션들은 매번 동일하게 나타날 수 있으며, 동일한 이벤트, 트리거, 또는 함수 호출에 대한 응답으로 사용자에게 디스플레이될 수도 있다. 예를 들어, 캘린더 알림창을 트리거하는 미리 설정된 클럭 시간에 기초하여, 캘린더 알림창이 사용자에게 나타날 수도 있다. 그 밖의 애니메이션들, 예를 들어 도구 팁들이나 메뉴들이 디스플레이 내의 소정 객체 상에 놓인 커서에 의해 트리거될 수도 있다.
사용자가 컴퓨팅 시스템(100)에 더욱 익숙해짐에 따라, 더 이상 사용자는 객체들과 상호작용할 위치나 방법을 상기시키는 애니메이션을 필요로 하지 않을 수 있다. 예를 들어, 사용자가 객체를 클릭할 수 있는 최종 위치까지 디스플레이를 가로질러 이동하는 객체를 애니메이션이 포함하는 경우, 사용자는 객체가 엔드 포인트에 도달하기 전에 그 객체의 엔드 포인트로 커서를 이동시키거나 그 곳을 클릭(또는 클릭 앤 릴리즈)하는 것을 시작할 수 있다. 시스템(100)은 사용자의 입력으로 애니메이션들을 적응시킬 수 있으며, 예를 들어, 보다 빠르게 디스플레이를 가로질러 객체를 이동시켜서, 최종 위치에 객체를 배치하는 것에 의해 애니메이션을 변경할 수 있으며, 이것에 의해 애니메이션을 스킵(skipping)하거나, 객체의 외관을 변경할 수 있다. 시스템(100)은 다른 애니메이션들과 관계없이, 그리고 다른 애니메이션들을 변경하는 것 없이 애니메이션을 변경 또는 가속화할 수 있다. 시스템(100)은 명시적 사용자 개입, 예를 들어 애니메이션을 변경하도록 하는 명령을 사용자로부터 수신하는 것 없이도 애니메이션을 변경 또는 가속화할 수 있다.
도 1에 나타낸 예에서, 시스템(100)은 프로세서(102) 및 메모리(104)를 포함할 수 있다. 프로세서(102)는 명령들을 실행시킬 수 있으며, 어느 애니메이션을 사용자에게 디스플레이할 지의 결정, 사용자의 입력(객체에 대한 사용자의 상호작용) 모니터링, 및 애니메이션을 위한 객체들 생성 및/또는 사용자에 대한 디스플레이와 같은 동작들을 수행하는 것을 담당할 수 있다. 메모리(104)는 프로세서(102)에 의해 실행될 명령들을 저장할 수 있으며, 프로세서(102)에 의해 결정되는 값들, 및/또는 이후에 프로세서(102)에 의해 액세스될 수 있는 값들을 저장할 수 있다.
또한, 시스템(100)은 하나 이상의 입력 모듈들(106) 및 하나 이상의 출력 모듈들(108)을 포함할 수 있다. 입력 모듈(들)(106)은 예를 들어, 키보드, 마우스, 트랙볼, 음성 입력, 또는 그 밖의 입력 디바이스들과 같은 하나 이상의 HID(human interface device)들을 포함할 수 있다. 시스템(100)은 입력 모듈(106)을 통해 수신되는 입력들을 모니터링할 수 있으며, 수신된 입력들에 기초하여 동작들을 수행하고 또한 출력들을 제공할 수 있다. 출력 모듈(들)(108)은 예를 들어, 터치스크린, LCD(liquid crystal display), 플라즈마 스크린, 또는 LED(light-emitting diode) 디스플레이와 같은 디스플레이, 또는 스피커를 포함할 수 있다. 출력(108)은 예를 들어, 사용자에게 애니메이션들을 디스플레이하거나 보여줄 수 있으며, 이것은 프로세서(102)에 의해 생성되는 객체들을 포함할 수 있다.
프로세서(102)는 예를 들어, 입력 모니터(110) 및 사용자 인터페이스 생성기(112)를 실행할 수 있다. 입력 모니터(110)는 애니메이션 및/또는 객체에 대한 사용자의 상호작용을 모니터링할 수 있으며, 그것에 기초하여 결정들을 행할 수 있다. 사용자 인터페이스 생성기(112)는 모니터링된 입력에 적어도 부분적으로 기초하여, 객체의 애니메이션을 생성할 수 있다. 사용자 인터페이스 생성기(112)는 입력 모듈(106)을 통해 수신된 입력을 처리하는 입력 프로세서(118)를 포함할 수 있다. 입력 프로세서(118)는 예를 들어, 키스트로크들이나 마우스 움직임들을 처리할 수 있으며, 출력 모듈(108)에 디스플레이되어 있는 객체들과의 사용자 상호작용을 처리할 수 있다.
또한, 사용자 인터페이스 생성기(112)는 애니메이션 생성기(120)를 포함할 수 있다. 애니메이션 생성기(120)는 사용자 인터페이스 생성기(112)의 객체 생성기(122)에게 지시하여 메뉴, 알림창, 도구 팁, 또는 창 및 탭과 같은 객체들을 생성하도록 할 수 있다. 애니메이션 생성기(120)에 의해 생성되는 애니메이션들은, 그 애니메이션들이 변경되어야 하는 것으로 입력 모니터(110)가 결정하기 전까지 동일할 것이다. 애니메이션 생성기(120)는 먼저 일련의 애니메이션들을 생성할 수 있으며, 이것은 객체(들)에 대한 디폴트 속도 및 사이즈를 포함할 수 있고, 그 후에 이것은 미리 결정된 기준, 예를 들어 애니메이션들이 사용자에게 나타나게 되는 횟수 또는 모니터링된 애니메이션들에 대한 사용자의 상호작용에 기초하여, 애니메이션들을 변경할 수 있다. 애니메이션들은 나타나게 되는 임계 횟수 또는 모니터링되는 상호작용들에 기초하여 변경될 수 있으며/있거나, 나타나게 되는 횟수 또는 모니터링되는 상호작용들에 기초하여 점진적으로 변경되거나 가속화될 수도 있다.
또한, 사용자 인터페이스 생성기(112)는 객체 생성기(122)를 포함할 수 있다. 객체 생성기(122)는 사용자에게 디스플레이될 객체들을 생성할 수 있다. 객체 생성기(122)는 객체들을 생성할 수 있으며, 이것은 애니메이션화되거나 스크린을 가로질러 이동될 타입, 사이즈, 및 색상과 같은 속성들을 가질 수 있다.
또한, 사용자 인터페이스 생성기(112)는 객체 이동기(124)를 포함할 수 있다. 객체 이동기(124)는 객체들에게 애니메이션을 제공할 수 있다. 객체 이동기(124)는 예를 들어, 스크린을 가로지르는 움직임과 같은, 시간의 함수로서 객체에게 위치 변경을 제공할 수 있다. 위치 변경은 결정되어 있는 객체의 속도에 기초하는 것일 수 있다. 예를 들어, "정상(normal)" 상태 동안, 위치 변경은 단위 시간당 제 1 개수의 픽셀들일 수 있지만, 객체와의 사용자 상호작용에 기초하거나 또는 사용자에게 디스플레이되는 애니메이션의 수에 기초하여 애니메이션 속도가 증가하는 경우에는, 위치 변경이 단위 시간당 제 2 개수의 픽셀들이 될 수 있다. 단위 시간당 제 2 개수의 픽셀들은 단위 시간당 제 1 개수의 픽셀들보다 클 수 있으며, 제 1 개수의 배수, 예를 들어, 단위 시간당 다수의 픽셀들의 2, 3, 4, 또는 5배일 수 있고, 이러한 예들에 한정되지 않는다.
입력 모니터(110)는 애니메이션들 및 애니메이션화된 객체들과의 사용자 상호작용을 모니터링할 수 있다. 입력 모니터(110)는 예를 들어, 카운터(114)를 포함할 수 있다. 카운터(114)는 애니메이션이 사용자에게 나타나거나 디스플레이되는 횟수를 카운트할 수 있다. 입력 모니터(110)는 애니메이션이 사용자에게 디스플레이된 횟수(이것은 카운터(114)에 의해 카운트될 수 있음)를 임계값과 비교할 수 있다. 애니메이션이 사용자에게 디스플레이된 횟수가 임계값을 충족 또는 초과하는 경우, 입력 모니터(110)는 애니메이션의 후속 반복을 변경하도록 애니메이션 생성기(120) 및/또는 사용자 인터페이스 생성기(112)를 유도하는 메시지를 사용자 인터페이스 생성기(112)에게 전송할 수 있다.
또한, 입력 모니터(110)는 리스너(listener; 116)를 포함할 수 있다. 리스너(116)는 사용자 인터페이스 생성기(112)의 입력 프로세서(118)와 함께, 애니메이션들 및/또는 객체들과의 사용자 상호작용을 모니터링할 수 있다. 리스너(116)는 사용자에 의한 마우스 움직임들 또는 커서의 다른 움직임들(또는 마우스 클릭들 또는 마우스 클릭 앤드 릴리즈들)을 모니터링할 수 있다. 리스너(116)는 예를 들어, 애니메이션의 객체가 실제로 거기에 도달하기 이전에 궁극적으로 처하게 되는 위치로 사용자가 커서를 이동시키는 것(및/또는 클릭하는 것) 또는 사용자나 커서가 임계 시간 내에 애니메이션의 개체를 클릭했다는 것을 결정할 수 있다. 객체가 엔드 포인트에 도달하기 이전에 사용자가 애니메이션의 엔드 포인트로 커서를 이동시키는 것(또는 임계 시간 내에 객체를 클릭한 것)으로 리스너(116)가 결정한 경우, 리스너(116)는 애니메이션을 수정하도록 사용자 인터페이스 생성기(106) 및/또는 애니메이션 생성(114)을 유도하는 메시지를, 사용자 인터페이스 생성기(112)의 애니메이션 생성기(120)에게 전송할 수 있다.
시스템(100)의 메모리(104)는 명령들(132)을 포함할 수 있다. 명령들(132)은 프로세서(102)가 실행하여 각종 기능들, 예를 들어 애니메이션의 디스플레이, 생성, 및 모니터링 및 그것들과의 사용자 상호작용, 그리고 수정된 애니메이션들의 디스플레이를 수행하는 코드를 포함할 수 있다.
메모리(104)는 임계값(126)을 저장할 수 있다. 임계값(126), 디스플레이 카운트(128), 및/또는 입력 레코드(130)는 상이한 이벤트들, 트리거들, 또는 함수 호출들과 연관된 복수의 고유 애니메이션들 각각에 대해 개별적으로 저장될 수 있으며, 이것은 시스템(100)으로 하여금 다른 애니메이션들의 변경없이도 단일의 애니메이션을 변경하는 것을 가능하게 한다. 임계값(126)은 애니메이션이 변경될 때까지 그것이 사용자에게 디스플레이되는 횟수일 수 있다.
또한, 메모리(104)는 디스플레이 카운트(128)를 포함할 수 있다. 디스플레이 카운트(128)는 특정 애니메이션이 특정 사용자에게 디스플레이된 횟수를 저장할 수 있으며, 입력 모니터(110)의 카운터(114)는 애니메이션이 사용자에게 디스플레이될 때마다 디스플레이 카운트(128)에서 그 값을 증분시킬 수 있다. 사용자 인터페이스 생성기(112)의 애니메이션 생성기(120)는 메모리(104)의 디스플레이 카운트(128)에 저장된 값과 임계값(126)을 비교할 수 있다. 디스플레이 카운터(128)에 저장된 값이 임계값(126)을 충족 또는 초과하는 경우, 애니메이션 생성기(114)는 애니메이션을 수정할 수 있다.
또한, 메모리(104)는 입력 레코드(130)를 포함할 수 있다. 입력 레코드(130)는 입력 모니터(110)의 리스너(116)에 의한 값들을 저장할 수 있으며, 또는 그것에 의해 증분되거나 토글될(toggled) 수 있다. 입력 레코드(130)는 예를 들어, 사용자가 애니메이션의 움직임을 예상하고 있으며 애니메이션이 변경되어야 하는 것으로 입력 모니터(110)의 리스너(116)가 결정하는지의 여부를 기록할 수 있다. 입력 레코드(130)는 애니메이션이 변경되어야 하는지의 여부를 결정하기 위해 사용자 입력 생성기(112)의 애니메이션 생성기(120)에 의해 체크될 수 있다. 사용자가 애니메이션의 움직임을 예상하고 있는 것으로 입력 레코드(130)가 표시하는 경우, 애니메이션 생성기(120)는 그 애니메이션을 변경할 수 있다.
도 2a는 예시적 일 실시예에 따른 애니메이션을 나타낸 도면이다. 애니메이션은 디스플레이(200) 상에 나타날 수 있다. 디스플레이(200)는 예를 들어, 도 1에 관하여 도시 및 기술한 컴퓨팅 시스템(100)의 터치스크린, LCD(liquid crystal display), 플라즈마 스크린, LED(light-emitting diode) 디스플레이, 또는 다른 출력 모듈(108)을 포함할 수 있다. 애니메이션은 동일한 입력, 이벤트 트리거, 또는 함수 호출에 대한 응답으로 일련의 시간들에서 사용자에게 나타날 수 있다. 애니메이션은 예를 들어, 애니메이션이 디스플레이된 횟수에 기초하거나 또는 애니메이션과의 사용자 상호작용을 모니터링한 것에 기초하여, 애니메이션 생성기(120)가 애니메이션을 변경할 때까지 일련의 시간들에서 매번 동일하게 나타날 수 있다.
예시적 일 실시예에서, 애니메이션은 알림창을 포함할 수 있다. 알림창은 예를 들어, 약속 시간이 도달했음을 사용자에게 통지하거나 또는 약속이 특정 시간 후, 예를 들어 15분 후에 도달한다는 것을 사용자에게 상기시키는 캘린더 알림창을 포함할 수 있다. 도 2a에는 3개의 참조 문자들 및 박스들(202A, 202B, 202C)로 알림창이 나타나 있지만, 3개의 참조 문자들 및 박스들(202A, 202B, 202C)은, 디스플레이(200)를 가로지르는 알림창의 움직임을 도시하는, 상이한 시간에서의 동일한 객체, 알림창을 나타낸 것일 수 있다. 또한, 알림창(202A, 202B, 202C)이 디스플레이(200)의 3개의 위치들에 도시되어 있지만, 디스플레이(200)를 가로지르는 알림창의 움직임은 훨씬 더 점진적일 수 있으며, 알림창은 연속적인 방식으로 디스플레이(200)를 가로질러 이동하는 것으로 나타날 수 있다; 보다 많은 디스플레이(200)의 스냅샷들이 디스플레이(200)의 하단-왼손 부분에 있는 최초 위치와 디스플레이(200)의 상단-오른손 부분에 있는 최종 위치 사이의 다수의 위치들에서 알림창을 나타낼 수도 있다.
알림창(특정 시간이나 위치를 참조함 없이 알림창(202)으로 지칭)은 알림창(202A)으로 나타낸, 디스플레이(200)의 하단-왼손 부분에서 시작할 수 있으며, 디스플레이(200)의 상단-오른손 부분으로 이동할 수 있다. 이 예에서, 알림창(202A)은 디스플레이(200)의 하단-왼손 부분에서 시작할 수 있으며, 알림창(202B)으로 나타낸, 디스플레이(200)의 중앙 부분으로 이동할 수 있다. 알림창(202B)은 알림창(202C)으로 나타낸, 디스플레이(200)의 상단-오른손 부분에 최종적으로 도달할 수 있다. 이 예에서, 알림창(202C)은 사용자가 알림창(202C)을 클릭하여 클로즈 아웃(close out)시키거나 디스플레이(200)로부터 알림창(202C)을 제거할 수 있는 'X'를 포함한다. 또는, 사용자는 알림창(202C)의 다른 부분을 클릭하여 알림창(202C)을 확장함으로써 약속 시간과 장소, 약속 내용, 및/또는 누구와 관련된 약속인지와 같은 알림창(202C) 내용의 세부사항들을 볼 수 있다.
시스템(100)은 일련의 시간들에서 사용자에게 애니메이션화된 알림창(202)을 디스플레이할 수 있다. 예시적 일 실시예에서, 입력 모니터(110)의 카운터(114)는 시스템(100)이 사용자에게 애니메이션화된 알림창(202)을 디스플레이할 때마다 디스플레이 카운트(128)를 증분시킬 수 있다. 사용자 인터페이스 생성기(112)의 애니메이션 생성기(120)는, 임계값(126)을 충족 또는 초과하는 디스플레이 카운트(128)에 기초하여, 애니메이션을 변경할 수 있다.
다른 예시적 실시예에서, 입력 모니터(110)의 리스너(116)는 알림창(202)과의 사용자 상호작용을 모니터링할 수 있다. 이러한 일련의 애니메이션화된 알림창들(202)을 사용자가 관측함에 따라, 사용자는 궁극적으로 알림창(202C)이 디스플레이(200)의 어느 장소에 도달할 것인지를 예상하기 시작할 수 있다.
도 2b는 예시적 일 실시예에 따른 애니메이션의 움직임을 예상하는 사용자를 나타낸 도면이며, 이것은 디스플레이(200)를 가로지르는 알림창(202)을 포함할 수 있다. 이 예에서, 알림창(202A)은 디스플레이(200)의 하단-왼손 부분에서 시작하며, 알림창(202B)이 디스플레이(200)의 중앙 부분으로 이동할 즈음에, 사용자는 이미 알림창(202)이 궁극적으로 도달하게 될, 디스플레이(200)의 상단-오른손 부분으로 커서(204)를 이동시켜 놓았다. 사용자는 알림창(202)을 클릭할 목적으로 알림창(202)이 궁극적으로 도달하게 될 디스플레이(200)의 부분에 커서(204)를 이동시켰지만, 아직 이 위치에 알림창(202)이 도달하지 않았기 때문에, 사용자는 알림창(202)을 클릭할 수는 없을 수 있다. 도 1에 나타낸 입력 모니터(110)의 리스너(116)는, 알림창이 최종 목적지에 도달하기 이전에 사용자가 디스플레이(200)의 상단-오른손 부분에 커서(204)를 놓은 것으로 결정할 수 있다.
입력 모니터(110)의 리스너(116)는, 사용자가 디스플레이(200)의 상단-오른손 부분에 커서(204)를 놓은 것(및/또는 클릭하거나 클릭 앤드 릴리즈한 것)에 기초하여, 사용자가 알림창의 움직임 및/또는 최종 위치를 예상하고 있는 것으로 결정할 수 있다. 리스너(116)는 사용자가 알림창(202)의 움직임 또는 애니메이션을 예상하고 있다는 것을 표시하는 메시지를, 사용자 인터페이스 생성기(112)의 애니메이션 생성기(120)에게 전송할 수 있다. 사용자 인터페이스 생성기(112)의 애니메이션 생성기(120)는 리스너(116)로부터 수신되는 메시지에 표시된, 알림창의 애니메이션에 대한 사용자 예상에 기초하여(또는 리스너(116)에 의해 업데이트되는 입력 레코드(130)를 체크하는 것에 기초하여), 애니메이션을 수정하는 것으로 결정할 수 있다. 애니메이션 생성기(120)는 이러한 단일의 예상에 기초하거나, 또는 비-한정적인 예들인 2개, 3개, 4개, 또는 5개의 예상들과 같은 임계 수에 기초하여 애니메이션을 수정하는 것으로 결정할 수 있다. 또한, 애니메이션 생성기(120)는 그 임계 수가 이전의 N 애니메이션들과 같은 애니메이션들의 미리 결정된 수, 또는 창 내에 도달될 것을 요구할 수도 있으며, 여기서 N은 예상된 애니메이션들의 임계 수 이상일 수 있다.
도 2c는 예시적 일 실시예에 따라, 애니메이션의 움직임에 대한 사용자 예상에 기초하는 알림창(202) 스피드 업의 애니메이션을 나타낸 도면이다. 또한, 애니메이션은 시스템(100)이 사용자에게 애니메이션을 나타낸 횟수에 기초하여 스피드업할 수도 있다. 사용자 인터페이스 생성기(112)의 애니메이션 생성기(120)는, 디스플레이 카운트(128)가 임계값(126)을 충족 또는 초과한 것에 기초하거나, 또는 사용자가 알림창(202)의 움직임을 예상하고 있는 것으로 리스너(116)가 결정하였음을 입력 레코드(130)가 반영하는 것에 기초하여, 디스플레이(200)를 가로지르는 알림창(202)의 움직임을 스피드 업할 수 있다.
도 2c에 나타낸 예에서, 알림창(202)은 알림창(202A)으로 나타낸 디스플레이(200)의 하단-왼손 부분에 있는 최초 위치에서, 알림창(202C)으로 나타낸 디스플레이(200)의 상단-오른손 부분에 있는 최종 위치로, 스크린을 가로질러 매우 빠르게 이동할 수 있다. 도 2c에는 알림창(202A, 202C)에 대한 2개의 위치들만이 나타나 있지만, 알림창(202)은 디스플레이(200)의 하단-왼손 부분에 있는 최초 위치로부터 디스플레이(200)의 상단-오른손 부분에 있는 최종 위치로 디스플레이(200)를 가로질러 연속적으로 이동할 수 있다; 도 2c에서의 이 2개의 위치들은, 도 2c의 예에서의 디스플레이(200)를 가로지르는 움직임이 도 2a의 예에서 보다 더 빠르다는 것을 강조하기 위한 것이다. 도 2c에 나타낸 예에서, 알림창(202C)은 도 2a의 예에서 이전에 알림창(202B)이 디스플레이(200)의 중앙 부분에 도달하는데 걸린 시간에서, 디스플레이(200)의 상단-오른손 부분에 도달할 수 있다; 따라서, 도 2c의 예에서는, 알림창(202C)이 디스플레이(200)의 상단-오른손 부분에 빠르게 도달하였으며, 사용자는 빠르게 알림창(202C)의 'X' 부분(또는 임의의 다른 부분)을 클릭함으로써 알림창(202C)을 클로즈 아웃(close out)(또는 확장)시킬 수도 있다.
도 2d는 예시적 일 실시예에 따른 디스플레이(200)의 최종의, 상단-오른손 부분에 있는 알림창(202C)을 포함하는 애니메이션을 나타낸 도면이다. 이 예에서, 애니메이션 생성기(120)는 알림창(200)이 디스플레이(200)를 가로질러 이동하지 않도록 애니메이션을 변경하였다; 대신에, 알림창(202C)이 디스플레이(200)의 최종 부분인, 상단-오른손 부분에 단순하게 나타나 있다. 따라서, 디스플레이(200)의 하단-왼손 부분으로부터, 디스플레이(200)의 중앙을 거쳐, 디스플레이(200)의 상단-오른손 부분에 있는 최종 위치로 이동하도록 알림창(200)을 애니메이션화하는 것이 아니라, 알림창(202C)은 단순하게 디스플레이(200)의 상단-오른손 부분에 나타나거나 도달하게 되며, 여기서 사용자는 알림창(202C)의 'X'(또는 다른 부분)을 클릭할 수도 있다.
도 2e는 사용자 인터페이스 생성기(112)의 애니메이션 생성기(120)가 모니터링된 알림창(202)과의 사용자 상호작용에 기초하여, 알림창(202)의 외관을 느낌표가 되도록 변경한 예에서의 디스플레이(200) 상의 알림창(202D)을 나타낸 도면이다. 따라서, 이 예에서는, 도 2a 및 2b에 나타낸 알림창(202)과의 사용자 상호작용을 모니터링한 것에 기초하여, 또는 시스템(100)이 사용자에게 알림창(200)을 디스플레이한 횟수에 기초하여, 사용자 인터페이스 생성기(112)의 애니메이션 생성기(120) 및/또는 객체 생성기(122)가 알림창(202)의 외관을 수정할 수 있으며, 객체 생성기(116)는 이전의 알림창(202)의 외관들과는 상이한 외관을 가진 알림창(202C) 또는 객체를 제공할 수 있다.
도 3은 예시적 일 실시예에 따른 방법(300)을 나타낸 흐름도이다. 예시적 구현예에 따르면, 방법(300)은 사용자에 대하여 컴퓨팅 시스템(100)의 디스플레이(200) 상의 그래픽 사용자 인터페이스(GUI)에 복수의 초기 애니메이션들(202A, 202B, 202C)을 디스플레이하되, 복수의 애니메이션들(202A, 202B, 202C) 각각은 동일한 함수 호출에 대한 응답으로 디스플레이되고, 동일한 시각적 외관을 가지며, 사용자로부터의 입력을 유도하도록 디스플레이될 수 있다(302). 또한, 방법(300)은 컴퓨팅 시스템(100)의 프로세서(102)에 의해, 복수의 애니메이션들(202A, 202B, 202C) 각각에 대한 사용자의 입력을 모니터링하는 것을 포함할 수 있다(304). 또한, 방법(300)은 GUI에 의해, 사용자에게 후속 애니메이션(202A, 202C)을 디스플레이하는 것을 포함하되, 후속 애니메이션(202A, 202C)은 동일한 함수 호출에 대한 응답으로 디스플레이되지만 복수의 초기 애니메이션들(202A, 202B, 202C)과는 상이한 시각적 외관을 갖게되며, 상기 후속 애니메이션(202A, 202C)의 상이한 시각적 외관은 모니터링된 입력들에 기초하는 것일 수 있다(306).
예시적 일 구현예에 따르면, 사용자의 입력을 모니터링하는 것(304)은 애니메이션이 엔드 포인트에 도달하기 이전에 사용자가 애니메이션의 엔드 포인트로 커서(204)를 이동시킨 것으로 결정하는 것을 포함할 수 있으며, 여기서 후속 애니메이션의 상이한 시각적 외관은 애니메이션이 엔드 포인트에 도달하기 이전에 사용자가 애니메이션의 엔드 포인트로 커서(204)를 이동시켰다는 결정에 기초한 것일 수 있다.
예시적 일 구현예에 따르면, 사용자의 입력을 모니터링하는 것(304)은 사용자가 임계 시간 내에 애니메이션(202A, 202B, 202C)의 객체를 클릭한 것으로 결정하는 것을 포함할 수 있으며, 여기서 후속 애니메이션의 상이한 시각적 외관은 사용자가 임계 시간 내에 애니메이션의 객체를 클릭한 것으로 결정한 것에 기초하는 것일 수 있다.
예시적 일 구현예에 따르면, 사용자의 입력을 모니터링하는 것(304)은 애니메이션(202A, 202B, 202C)이 적어도 임계 횟수로 사용자에게 디스플레이된 것으로 결정하는 것을 포함할 수 있으며, 여기서 후속 애니메이션의 상이한 시각적 외관은 애니메이션(202A, 202B, 202C)이 적어도 임계 횟수로 사용자에게 디스플레이된 것으로 결정한 것에 기초하는 것일 수 있다.
예시적 일 구현예에 따르면, 상이한 시각적 외관은 애니메이션의 변경율 증가를 포함할 수 있다.
예시적 일 구현예에 따르면, 상이한 시각적 외관은 디스플레이(200)를 가로지르는 애니메이션의 이동 속도 증가를 포함할 수 있다.
청구항 1의 방법, 여기서 상이한 시각적 외관은 애니메이션의 움직임이 없는 애니메이션의 최종 이미지를 포함한다.
도 4는 본 명세서에 기술된 기술들과 함께 사용될 수 있는, 일반적인 컴퓨팅 디바이스(400) 및 일반적인 모바일 컴퓨터 디바이스(450)의 일 예를 나타낸다. 컴퓨팅 디바이스(400)는 각종 형태의 디지털 컴퓨터들, 예를 들어, 랩탑, 데스크탑, 워크스테이션, PDA(personal digital assistant), 서버, 블레이드 서버, 메인프레임, 및 그 밖의 적절한 컴퓨터를 나타내는 것으로 의도된다. 또한, 컴퓨팅 디바이스(400)는 텔레비젼, 예를 들어 LCD(liquid crystal display) 텔레비젼, 플라즈마 텔레비젼, 또는 LED(light-emitting diode) 텔레비젼을 포함할 수 있으며, 이러한 예들로 한정되지 않는다. 컴퓨팅 디바이스(450)는 개인용 디지털 보조기들, 셀룰러 전화기들, 스마트 폰들, 및 다른 유사한 컴퓨팅 디바이스들과 같이, 다양한 형태들의 이동 디바이스들을 나타내도록 의도된다. 여기에 나타낸 컴포넌트들, 그들의 연결 및 관계, 그리고 그들의 기능들은 단지 예시일 뿐이며, 본 명세서에 기술되고/되거나 청구된 본 발명들의 구현예에 한정하는 것을 의미하지 않는다.
컴퓨팅 디바이스(400)는 프로세서(402), 메모리(404), 스토리지 디바이스(406), 메모리(404)와 고속 확장 포트들(410)를 연결시키는 고속 제어기(408), 및 저속 버스(414)와 스토리지 디바이스(406)를 연결시키는 저속 제어기(412)를 포함한다. 컴포넌트들(402, 404, 406, 408, 410, 및 412) 각각은 각종 버스들을 사용하여 상호연결되며, 공통 마더보드 상에 또는 적절한 다른 수단들에 장착될 수 있다. 프로세서(402)는 컴퓨팅 디바이스(400) 내에서의 실행을 위한 명령들을 처리할 수 있으며, 이것은 외부 입/출력 디바이스, 예를 들어 고속 제어기(408)에 커플링된 디스플레이(416) 상의 GUI에 대한 그래픽 정보를 디스플레이하도록 메모리(404) 또는 스토리지 디바이스(406)에 저장된 명령들을 포함한다. 다른 구현예들에서, 복수의 프로세서들 및/또는 복수의 버스들이 복수의 메모리들 및 메모리의 타입들과 함께, 적절하게 사용될 수 있다. 또한, 복수의 컴퓨팅 디바이스들(400)이 연결될 수 있으며, 각 디바이스는 필수 동작들의 부분들을 제공한다(예컨대, 서버 뱅크, 블레이드 서버들의 그룹, 또는 멀티-프로세서 시스템 등)
메모리(404)는 컴퓨팅 디바이스(400) 내에 정보를 저장한다. 일 구현예에서, 메모리(404)는 휘발성 메모리 유닛 또는 유닛들이다. 다른 구현예에서, 메모리(404)는 비-휘발성 메모리 유닛 또는 유닛들이다. 또한, 메모리(404)는 다른 형태의 컴퓨터-판독가능 매체, 예를 들어 자기 디스크 또는 광 디스크일 수 있다.
스토리지 디바이스(406)는 컴퓨팅 디바이스(400)를 위한 대용량 스토리지를 제공할 수 있다. 일 구현예에서, 스토리지 디바이스(406)는 컴퓨터-판독가능 매체, 예를 들어 플로피 디스크 디바이스, 하드 디스크 디바이스, 광 디스크 디바이스, 또는 테이프 디바이스, 플래시 메모리나 다른 유사한 솔리드 스테이트 메모리 디바이스, 또는 스토리지 에어리어 네트워크나 그 밖의 구성들에 디바이스들을 포함하는 디바이스들의 배열이거나 이를 포함할 수 있다. 컴퓨터 프로그램 제품은 정보 캐리어로 유형적으로 구현될 수 있다. 또한, 컴퓨터 프로그램 제품은, 실행시에, 전술한 바와 같은 하나 이상의 방법들을 수행하는 명령들을 포함할 수 있다. 정보 캐리어는 컴퓨터-판독가능 매체 또는 기계-판독가능 매체이며, 예를 들어 메모리(404), 스토리지 디바이스(406), 또는 프로세서(402) 상의 메모리이다.
고속 제어기(408)는 컴퓨팅 디바이스(400)에 대한 대역폭-집약적인 동작들을 관리하며, 저속 제어기(412)는 더 낮은 대역폭-집약적인 동작들을 관리한다. 이러한 기능들의 할당은 단지 예시일 뿐이다. 일 구현예에서, 고속 제어기(408)는 메모리(404), 디스플레이(416)(예컨대, 그래픽 프로세서나 액셀러레이터를 통해)에 커플링되며, 또한 각종 확장 카드들(미도시)를 수용할 수 있는 고속 확장 포트들(410)에 커플링된다. 이 구현예에서, 저속 제어기(412)는 스토리지 디바이스(406) 및 저속 확장 포트(414)에 커플링된다. 각종 통신 포트들(예컨대, USB, 블루투스, 이더넷, 무선 이더넷)을 포함할 수 있는 저속 확장 포트는, 키보드, 포인팅 디바이스, 스캐너, 또는 네트워킹 디바이스 예를 들어 스위치나 라우터(예를 들어, 네트워크 어댑터를 통한)와 같은 하나 이상의 입/출력 디바이스들에 커플링될 수 있다.
컴퓨팅 디바이스(400)는 본 도면에 도시된 바와 같은 다수의 상이한 형태들로 구현될 수 있다. 예를 들어, 이것은 표준 서버(420)로 구현될 수 있으며, 또는 이러한 서버들의 그룹 내에서 복수 회로로 구현될 수 있다. 또한, 이것은 랙 서버 시스템(424)의 일부로서 구현될 수도 있다. 또한, 이것은 랩탑 컴퓨터(422)와 같은 개인용 컴퓨터로 구현될 수도 있다. 다르게는, 컴퓨팅 디바이스(400)로부터의 컴포넌트들은 디바이스(450)과 같은 모바일 디바이스(미도시) 내의 다른 컴포넌트들과 조합될 수도 있다. 이러한 디바이스들 각각은 컴퓨팅 디바이스(400, 450) 중의 하나 이상을 포함할 수 있으며, 전체 시스템은 서로 통신하는 복수의 컴퓨팅 디바이스들(400, 450)로 이루어질 수 있다.
컴퓨팅 디바이스(450)는 다른 컴포넌트들 중에서도, 프로세서(452), 메모리(464), 디스플레이(454)와 같은 입/출력 디바이스, 통신 인터페이스(466), 및 송수신기(468)를 포함한다. 또한, 디바이스(450)에는 추가적인 스토리지를 제공하기 위한 마이크로드라이브나 그 밖의 디바이스와 같은 스토리지 디바이스가 제공될 수도 있다. 컴포넌트들(450, 452, 464, 454, 466, 및 468) 각각은 각종 버스들을 사용하여 상호연결되며, 컴포넌트들의 몇몇은 공통 마더보드나 적절한 다른 수단들에 장착될 수 있다.
프로세서(452)는 메모리(464)에 저장된 명령들을 포함하는, 컴퓨팅 디바이스(450) 내의 명령들을 실행할 수 있다. 프로세서는 개별의 복수의 아날로그 및 디지털 프로세서들을 포함하는 칩들로 이루어진 칩세트로 구현될 수도 있다. 프로세서는 예를 들어, 디바이스(450)에 의해 실행되는 사용자 인터페이스들, 애플리케이션들의 제어, 및 디바이스(450)에 의한 무선 통신의 제어와 같은, 디바이스(450)의 다른 컴포넌트들의 조정을 위해 제공할 수 있다.
프로세서(452)는 디스플레이(454)에 커플링된 제어 인터페이스(458) 및 디스플레이 인터페이스(456)를 통해 사용자와 통신할 수 있다. 디스플레이(454)는 예를 들어, TFT LCD(Thin-Film-Transistor Liquid Crystal Display) 또는 OLED(Organic Light Emitting Diode) 디스플레이, 또는 다른 적절한 디스플레이 기술일 수 있다. 디스플레이 인터페이스(456)는 그래픽 정보 및 그 밖의 정보를 사용자에게 제공하도록 디스플레이(454)를 구동시키는 적절한 회로를 포함할 수 있다. 제어 인터페이스(458)는 사용자로부터 명령들을 수신하여 그것들을 프로세서(452)로 전송할 수 있도록 변환할 수 있다. 또한, 외부 인터페이스(462)는 다른 디바이스들과 디바이스(450)의 근거리 통신을 가능하게 하기 위하여, 프로세서(452)와의 통신을 제공할 수 있다. 외부 인터페이스(462)는 예를 들어 몇몇 구현예들에서는 유선 통신을 제공할 수 있으며, 또는 다른 구현예들에서는 무선 통신을 제공할 수 있고, 복수의 인터페이스들이 또한 사용될 수도 있다.
메모리(464)는 컴퓨팅 디바이스(450) 내에 정보를 저장한다. 메모리(464)는 컴퓨터-판독가능 매체나 매체들, 휘발성 메모리 유닛이나 유닛들, 또는 비-휘발성 메모리 유닛이나 유닛들 중의 하나 이상으로 구현될 수 있다. 또한, 확장 메모리 디바이스들(474)이 제공되어 예를 들어, SIMM(Single In Line Memory Module) 카드 인터페이스 또는 TPM(trusted platform module)을 포함할 수 있는 확장 인터페이스(472)를 통해 디바이스(450)에 연결될 수 있다. 이러한 확장 메모리(474)는 디바이스(450)를 위한 추가의 스토리지 공간을 제공할 수 있으며, 또는 디바이스(450)를 위한 애플리케이션들이나 다른 정보를 저장할 수도 있다. 구체적으로, 확장 메모리(474)는 전술한 프로세스들을 수행하거나 보충하는 명령들을 포함할 수 있으며, 보안 정보를 또한 포함할 수도 있다. 따라서, 예를 들어, 확장 메모리(474)는 디바이스(450)를 위한 보안 모듈로서 제공될 수 있으며, 디바이스(450)에 대한 안전한 사용을 가능하게 하는 명령들로 프로그래밍될 수도 있다. 또한, 보안 애플리케이션들은 해킹이 불가능한 방식으로 SIMM 카드 또는 TPM 모듈 상에 식별 정보를 배치한 것과 같은, 추가 정보와 함께, SIMM 카드들이나 TPM 모듈들을 통해 제공될 수 있다.
메모리는 예를 들어, 하술하는 바와 같은 플래시 메모리 및/또는 NVRAM 메모리를 포함할 수 있다. 일 구현예에서, 컴퓨터 프로그램 제품은 정보 캐리어에 유형적으로 구현된다. 컴퓨터 프로그램 제품은, 실행 시에, 전술한 바와 같은 하나 이상의 방법들을 수행하는 명령들을 포함한다. 정보 캐리어는 예를 들어, 송수신기(468) 또는 외부 인터페이스(462)를 통해 수신될 수 있는, 메모리(464), 확장 메모리(474), 또는 프로세서(452) 상의 메모리와 같은 컴퓨터-판독가능 매체 또는 기계-판독가능 매체이다.
디바이스(450)는 필요에 따라 디지털 신호 처리 회로를 포함할 수 있는 통신 인터페이스(466)를 통해 무선으로 통신할 수 있다. 통신 인터페이스(466)는 각종 모드들 또는 프로토콜들, 예를 들어 다른 것들 중에서도, GSM 음성 콜, SMS, EMS, 또는 MMS 메시징, CDMA, TDMA, PDC, WCDMA, CDMA2000, 또는 GPRS 하에서의 통신들을 제공할 수 있다. 이러한 통신은 예를 들어, 무선-주파수 송수신기(468)를 통하여 발생할 수 있다. 또한, 근거리 통신이 예를 들어 블루투스, WiFi, 또는 다른 이러한 송수신기(미도시)를 사용하여 발생할 수 있다. 또한, GPS(Global Positioning System) 수신기 모듈(470)이 추가의 내비게이션-관련 무선 데이터 및 위치-관련 무선 데이터를 디바이스(450)에게 제공할 수 있으며, 이것은 디바이스(450) 상에서 실행되는 애플리케이션들에 의해서 적절하게 사용될 수 있다.
또한, 디바이스(450)는 사용자로부터의 음성 정보를 수신하여 그것을 사용가능한 디지털 정보로 변환하는 오디오 코덱(460)을 사용하여 청각적으로 통신할 수도 있다. 마찬가지로, 오디오 코덱(460)은 예를 들어 스피커를 통해, 예컨대, 디바이스(450)의 핸드셋으로, 사용자를 위한 가청음을 생성할 수 있다. 이러한 가청음은 음성 텔레폰 셀들로부터의 사운드를 포함할 수 있으며, 기록된 사운드(예컨대, 음성 메시지, 음악 파일 등)를 포함할 수도 있고, 또한 디바이스(450)에서 동작하는 애플리케이션들에 의해 생성되는 사운드를 포함할 수도 있다.
컴퓨팅 디바이스(450)는 본 도면에 나타낸 바와 같은 다수의 상이한 형태들로 구현될 수 있다. 예를 들어, 이것은 셀룰러 폰(480)으로 구현될 수 있다. 또한, 이것은 스마트 폰(482), PDA(personal digital assistant), 또는 그 밖의 유사한 모바일 디바이스의 일부로서 구현될 수도 있다.
여기에 기술된 시스템들 및 기술들의 각종 구현예들은, 디지털 전자 회로, 집적 회로, 특수 설계된 ASIC(application specific integrated circuit), 컴퓨터 하드웨어, 펌웨어, 소프트웨어, 및/또는 이들의 조합들로 실현될 수 있다. 이들 각종 구현예들은 스토리지 시스템, 적어도 하나의 입력 디바이스, 및 적어도 하나의 출력 디바이스와 데이터 및 명령들을 송수신하도록 커플링된 전용 또는 범용일 수 있는 적어도 하나의 프로그래머블 프로세서를 포함하는 프로그래머블 시스템에서 실행될 수 있고/있거나 해석될 수 있는 하나 이상의 컴퓨터 프로그램들에서의 구현예을 포함할 수 있다.
이들 컴퓨터 프로그램들(프로그램들, 소프트웨어, 소프트웨어 애플리케이션들 또는 코드로도 알려짐)은 프로그래머블 프로세서를 위한 기계 명령들을 포함하며, 하이-레벨 절차 및/또는 객체-지향 프로그래밍 언어, 및/또는 어셈블리/기계 언어로 구현될 수 있다. 본 명세서에서 사용된, 용어들 "기계-판독가능 매체" "컴퓨터-판독가능 매체"는 프로그래머블 프로세서에게 기계 명령들 및/또는 데이터를 제공하기 위해 사용되는 컴퓨터 프로그램 제품, 장치 및/또는 디바이스(예컨대, 자기 디스크, 광 디스크, 메모리, 프로그래머블 로직 디바이스(PLD))를 지칭하며, 이것은 기계-판독가능 신호로서 기계 명령들을 수신하는 기계-판독가능 매체를 포함한다. 용어 "기계-판독가능 신호"는 프로그래머블 프로세서에게 기계 명령들 및/또는 데이터를 제공하기 위해 사용되는 임의의 신호를 지칭한다.
사용자와의 상호작용을 제공하기 위해, 여기에 기술된 시스템들 및 기술들은, 사용자에게 정보를 디스플레이하기 위한 디스플레이 디바이스(예컨대, CRT(cathode ray tube) 또는 LCD(liquid crystal display) 모니터) 및 사용자가 컴퓨터에 대한 입력을 제공할 수 있는 키보드와 포인팅 디바이스(예컨대, 마우스 또는 트랙볼)를 구비한 컴퓨터 상에서 구현될 수 있다. 다른 종류의 디바이스들이 또한 사용자와의 상호작용을 제공하기 위해 사용될 수 있으며, 예를 들어, 사용자에게 제공되는 피드백은 임의의 형태의 감각 피드백(예컨대, 시각 피드백, 청각 피드백, 또는 촉각 피드백)일 수 있으며, 사용자로부터의 입력은 음향, 음성, 촉각 입력을 포함하는 임의의 형태로 수신될 수 있다.
여기에 기술된 시스템들 및 기술들은 백 엔드 컴포넌트(예컨대, 데이터 서버)를 포함하거나, 또는 미들웨어 컴포넌트(예컨대, 애플리케이션 서버)를 포함하거나, 또는 프론트 엔드 컴포넌트(예컨대, 사용자가 본 명세서에 기술된 시스템들 및 기술들의 구현예와 상호작용할 수 있는 그래픽 사용자 인터페이스 또는 웹 브라우저를 구비한 클라이언트 컴퓨터)를 포함하거나, 또는 이러한 백 엔드, 미들웨어, 또는 프론트 엔드 컴포넌트들의 임의의 조합인 컴퓨팅 시스템으로 구현될 수 있다. 이 시스템의 컴포넌트들은 임의의 형태 또는 매체의 디지털 데이터 통신(예컨대, 통신 네트워크)에 의해 상호연결될 수 있다. 통신 네트워크의 예들로는 지역 네트워크("LAN"), 광역 네트워크("WAN"), 및 인터넷을 포함한다.
컴퓨팅 시스템은 클라이언트들과 서버들을 포함할 수 있다. 클라이언트와 서버는 일반적으로 서로 원격으로 존재할 수 있으며, 통상적으로는 통신 네트워크를 통해 상호작용한다. 클라이언트와 서버의 관계는 각각의 컴퓨터들에서 실행되며, 서로에 대한 클라이언트-서버 관계를 갖는 컴퓨터 프로그램들에 의해서 발생한다.
다수의 실시예들이 설명되었다. 하지만, 본 발명의 사상 및 범위로부터 일탈하지 않는 범위 내에서 다양한 수정들이 이루어질 수 있다는 것이 이해될 것이다.
또한, 본 도면들에 도시된 논리 흐름들은 바람직한 결과를 달성함에 있어서 도시된 특정 순서, 또는 순차적 순서를 필요로 하지 않는다. 또한, 기술된 흐름들에 다른 단계들이 제공될 수도 있고, 또는 그로부터 단계들이 제거될 수도 있으며, 또한 기술된 시스템들에 대하여 다른 컴포넌트들이 부가될 수도 있고, 또는 그로부터 제거될 수도 있다. 따라서, 그 밖의 실시예들이 다음의 청구항들의 범위 내에 존재한다.
본 명세서에 기술된 각종 기술들의 구현예들은 디지털 전자 회로로 구현되거나, 또는 컴퓨터 하드웨어, 펌웨어, 소프트웨어로 구현되거나, 또는 이들의 조합들로 구현될 수 있다. 구현예들은 컴퓨터 프로그램 제품, 즉 데이터 처리 장치, 예를 들면, 프로그래머블 프로세서, 컴퓨터, 또는 복수의 컴퓨터들에 의한, 또는 이들의 동작을 제어하기 위한 정보 캐리어, 예를 들면, 기계-판독가능 스토리지 디바이스로 또는 전파 신호로 유형적으로 구현되는 컴퓨터 프로그램으로 구현될 수 있다. 전술한 컴퓨터 프로그램(들)과 같은 컴퓨터 프로그램은, 컴파일되거나 해석된 언어들을 포함하는 임의의 형태의 프로그래밍 언어로 기록될 수 있으며, 독립형 프로그램 또는 모듈, 컴포넌트, 서브루틴, 또는 컴퓨팅 환경의 사용에 적합한 다른 유닛을 포함하는, 임의의 형태로 배치될 수 있다. 컴퓨터 프로그램은 하나의 사이트에 위치되거나 다수의 사이트들에 걸쳐 분산되고 통신 네트워크에 의해 상호연결되는 하나의 컴퓨터 또는 다수의 컴퓨터들 상에 실행되도록 배치될 수 있다.
방법 단계들이 컴퓨터 프로그램을 실행하는 하나 이상의 프로그래머블 프로세서에 의해 수행됨으로써, 입력 데이터로 동작하고 출력을 생성하는 것에 의해 기능들을 수행할 수 있다. 또한, 방법 단계들이 전용 논리 회로, 예를 들면, FPGA(field programmable gate array) 또는 ASIC(application-specific integrated circuit)에 의해 구현될 수 있으며, 하나의 장치가 이것으로 구현될 수도 있다.
컴퓨터 프로그램의 실행에 적합한 프로세서들은 예를 들어, 범용 및 전용 마이크로프로세서들 모두, 그리고 임의의 종류의 디지털 컴퓨터의 임의의 하나 이상의 프로세서들을 포함한다. 일반적으로, 프로세서는 판독-전용 메모리 또는 랜덤 액세스 메모리 또는 이들 모듀로부터의 명령들 및 데이터를 수신하게 된다. 컴퓨터의 요소들은 명령들을 실행시키기 위한 적어도 하나의 프로세서 및 명령들과 데이터를 저장하기 위한 하나 이상의 메모리 디바이스들을 포함할 수 있다. 일반적으로, 컴퓨터는 데이터를 저장하기 위한 하나 이상의 대용량 스토리지 디바이스들, 예를 들어, 자기, 자기-광 디스크들, 또는 광 디스크를 포함하거나, 이들로부터 데이터를 수신하거나 이들로 데이터를 전송하거나, 또는 이 모두를 위해 동작적으로 커플링될 수 있다. 컴퓨터 프로그램 명령들 및 데이터를 구현하기에 적합한 정보 캐리어들은 예를 들어 반도체 메모리 디바이스들, 예컨대, EPROM, EEPROM, 및 플래시 메모리 디바이스들; 자기 디스크들, 예컨대, 내부 하드 디스크들 또는 탈착가능 디스크들; 자기-광 디스크들; 및 CD-ROM 및 DVD-ROM 디스크들을 포함하는 모든 형태의 비-휘발성 메모리를 포함한다. 프로세서 및 메모리는 전용 논리 회로에 의해 보충되거나 이에 통합될 수 있다.
사용자와의 상호작용을 제공하기 위해, 구현예들은 사용자에게 정보를 디스플레이하기 위한 디스플레이 디바이스, 예컨대, CRT(cathode ray tube)나 LCD(liquid crystal display) 모니터 및 사용자가 컴퓨터에 대한 입력을 제공할 수 있는 포인팅 디바이스, 예컨대, 마우스 또는 트랙볼을 구비한 컴퓨터 상에서 구현될 수 있다. 다른 종류의 디바이스들이 또한 사용자와의 상호작용을 제공하기 위해 사용될 수 있으며, 예를 들어, 사용자에게 제공되는 피드백은 임의의 형태의 감각 피드백, 예컨대, 시각 피드백, 청각 피드백, 또는 촉각 피드백일 수 있으며; 사용자로부터의 입력은 음향, 음성, 촉각 입력을 포함하는 임의의 형태로 수신될 수 있다.
구현예들은 백 엔드 컴포넌트, 예컨대, 데이터 서버를 포함하거나, 또는 미들웨어 컴포넌트, 예컨대, 애플리케이션 서버를 포함하거나, 또는 프론트 엔드 컴포넌트, 예컨대, 사용자가 구현예와 상호작용할 수 있는 그래픽 사용자 인터페이스 또는 웹 브라우저를 구비한 클라이언트 컴퓨터를 포함하거나, 또는 이러한 백 엔드, 미들웨어, 또는 프론트 엔드 컴포넌트들의 임의의 조합인 컴퓨팅 시스템으로 구현될 수 있다. 컴포넌트들은 임의의 형태 또는 매체의 디지털 데이터 통신, 예컨대, 통신 네트워크에 의해 상호연결될 수 있다. 통신 네트워크의 예들로는 지역 네트워크(LAN) 및 광역 네트워크(WAN), 예컨대, 인터넷을 포함한다.
기술된 구현예들의 몇몇 특징들이 본 명세서에 기술된 바와 같이 예시되었지만, 다수의 변형물, 대체물, 변경물 및 등가물이 당업자에게 발생할 것이다. 따라서, 첨부된 청구항들은 본 발명의 실시예들의 진정한 사상 내에 속하는 모든 변형 및 변경을 포함하도록 의도된 것임을 이해해야 한다.
Claims (20)
- 컴퓨팅 시스템에 의해 수행되는 방법으로서,
상기 컴퓨팅 시스템의 디스플레이 상의 그래픽 사용자 인터페이스(GUI)에 함수 호출에 대한 응답으로 사용자에게 초기 애니메이션을 디스플레이하는 단계로서, 상기 초기 애니메이션은 시간의 함수로서 상기 디스플레이 상의 최초 위치로부터 상기 디스플레이 상의 최종 위치로 연속적으로 이동하고 상기 사용자로부터의 입력을 유도하도록 디스플레이되는, 상기 초기 애니메이션을 디스플레이하는 단계;
상기 컴퓨팅 시스템의 프로세서에 의해 상기 초기 애니메이션이 상기 시간의 함수로서 변경되고 있는 동안 상기 초기 애니메이션과의 사용자의 상호작용을 모니터링하는 단계;
상기 프로세서에 의해 상기 모니터링된 상호작용이 상기 디스플레이 상의 최종 위치로 사용자가 커서를 움직인 것을 포함하는지를 결정하는 단계; 및
상기 GUI에 의해, 상기 사용자에게 후속 애니메이션을 디스플레이하는 단계로서, 상기 후속 애니메이션은 상기 초기 애니메이션과 동일한 함수 호출에 대한 응답으로 디스플레이되지만, 상기 초기 애니메이션보다 더 빠른 시간의 함수로서 상기 디스플레이 상의 최초 위치로부터 상기 디스플레이 상의 최종 위치로 연속적으로 변경되며, 상기 후속 애니메이션의 상기 디스플레이 상의 최초 위치로부터 상기 디스플레이 상의 최종 위치로의 더 빠른 연속적인 변경은 상기 결정에 기초되는, 상기 최종 애니메이션을 디스플레이하는 단계를 포함하는, 방법. - 청구항 1에 있어서,
상기 결정하는 단계는 상기 모니터링된 상호작용이 상기 애니메이션이 상기 최종 위치에 도달하기 이전에 상기 최종 위치로 사용자가 커서를 움직인 단계를 포함하는지를 결정하는 단계를 포함하는, 방법. - 청구항 1 내지 2 중의 어느 한 항에 있어서,
상기 결정하는 단계는 상기 모니터링된 상호작용이 상기 최종 위치로 사용자가 커서를 움직이는 단계 및 임계 시간 내에 상기 애니메이션의 객체를 클릭하는 단계를 포함하는지를 결정하는 단계를 포함하는, 방법. - 청구항 1 내지 3 중의 어느 한 항에 있어서,
상기 결정하는 단계는 상기 모니터링된 상호작용이 상기 최종 위치로 사용자가 커서를 움직인 단계를 포함하는지를 결정하는 단계 및 상기 애니메이션이 적어도 임계 횟수에서 사용자에게 디스플레이 되었는지를 결정하는 단계를 포함하되, 상기 임계 횟수는 적어도 2번인, 방법. - 청구항 1 내지 4 중의 어느 한 항에 있어서,
더 빠른 시간의 함수로서 상기 최초 위치로부터 상기 최종 위치로 연속적으로 변경되는 것은 상기 디스플레이를 가로지르는 상기 애니메이션의 움직임의 증가된 속도를 포함하는, 방법. - 그 위에 저장되어 있는 명령들을 포함하는 비-일시적 컴퓨터-판독가능 저장 매체로서, 상기 명령들이 적어도 하나의 프로세서에 의해 실행될 시에, 컴퓨팅 시스템으로 하여금 적어도,
상기 컴퓨팅 시스템의 디스플레이 상의 그래픽 사용자 인터페이스(GUI)에 사용자에게 복수의 초기 애니메이션들을 디스플레이하게 하고, 상기 복수의 초기 애니메이션들 각각은 상기 디스플레이 상의 최초 위치로부터 상기 디스플레이 상의 최종 위치로의 천이(transition)들을 포함하고 상기 천이들은 상기 사용자에게 디스플레이되고;
상기 컴퓨팅 시스템의 적어도 하나의 프로세서에 의해 상기 사용자가 적어도 상기 복수의 초기 애니메이션들의 임계 횟수의 천이들을 예상하는지를 결정하게 하고, 상기 임계 횟수는 적어도 2번임; 및
상기 GUI에 의해, 상기 사용자에게 최종 애니메이션을 디스플레이하게 하고, 상기 최종 애니메이션은 상기 복수의 초기 애니메이션들 각각과 유사한 사용자 상호작용에 대한 응답으로 디스플레이되지만, 상기 복수의 초기 애니메이션들 각각보다 더 빠르게 상기 최초 위치로부터 상기 최종 위치로 천이되며 상기 최종 애니메이션의 더 빠른 천이는 상기 결정된 예상에 기초하는, 저장 매체. - 청구항 6에 있어서,
상기 사용자가 적어도 상기 복수의 초기 애니메이션들의 임계 횟수의 천이들을 예상하는지를 결정하는 단계는 상기 초기 애니메이션들이 엔드 포인트에 도달하기 이전에, 상기 사용자가 적어도 상기 복수의 초기 애니메이션들의 임계 횟수에서 상기 엔드 포인트로 커서를 움직였는지를 결정하는 단계를 포함하며; 및
상기 최종 애니메이션의 더 빠른 천이는 상기 애니메이션이 적어도 애니메이션들의 임계 횟수에서 상기 엔드 포인트에 도달하기 이전에 상기 사용자가 상기 애니메이션의 엔드 포인트로 커서를 움직였는지의 결정에 기초하는, 저장 매체. - 청구항 6 내지 청구항 7 중의 어느 한 항에 있어서,
상기 사용자가 상기 초기 애니메이션들의 천이들을 예상하는지를 결정하는 단계는 적어도 애니메이션들의 임계 횟수에 대한 임계 시간 내에 상기 사용자가 상기 애니메이션의 객체를 클릭하였는지를 결정하는 단계를 포함하며; 및
상기 최종 애니메이션의 더 빠른 천이는 적어도 애니메이션들의 임계 횟수에 대한 임계 시간 내에 상기 사용자가 상기 애니메이션의 객체를 클릭하였는지의 결정에 기초하는, 저장 매체. - 청구항 6 내지 청구항 8 중의 어느 한 항에 있어서,
상기 더 빠른 천이는, 상기 디스플레이를 가로지르는 상기 애니메이션의 움직임의 증가된 속도를 포함하는, 저장 매체. - 그 위에 저장되어 있는 명령들을 포함하는 비-일시적 컴퓨터-판독가능 저장 매체로서, 상기 명령들은 적어도 하나의 프로세서에 의해 실행될 시에, 컴퓨팅 시스템으로 하여금 적어도,
상기 컴퓨팅 시스템의 디스플레이 상의 그래픽 사용자 인터페이스(GUI)에 사용자에게 초기 애니메이션을 디스플레이하게 하고, 상기 초기 애니메이션은 시간의 함수로서 상기 디스플레이 상의 최초 위치로부터 상기 디스플레이 상의 최종 위치로 연속적으로 이동하며 상기 사용자로부터의 입력을 유도하도록 디스플레이되고;
상기 컴퓨팅 시스템의 적어도 하나의 프로세서에 의해 상기 디스플레이된 초기 애니메이션과 사용자의 상호작용을 모니터링하게 하고;
상기 적어도 하나의 프로세서에 의해 상기 모니터링된 상호작용이 상기 디스플레이 상의 최종 위치로 사용자가 커서를 움직이는 단계를 포함하는지를 결정하고; 및
상기 GUI에 의해 상기 사용자에게 후속 애니메이션을 디스플레이하게 하고, 상기 후속 애니메이션은 상기 초기 애니메이션보다 더 빠른 시간의 함수로서 상기 디스플레이 상의 최초 위치로부터 상기 디스플레이 상의 최종 위치로 변경되며, 상기 더 빠른 변경은 상기 결정에 기초하는, 저장 매체. - 청구항 10에 있어서,
상기 결정하는 단계는 상기 모니터링된 상호작용이 상기 초기 애니메이션이 상기 최종 위치에 도달하기 이전에 상기 최종 위치로 사용자가 커서를 움직이는 단계를 포함하는지를 결정하는 단계를 포함하는, 저장 매체. - 청구항 10 내지 청구항 11 중의 어느 한 항에 있어서,
상기 결정하는 단계는 상기 모니터링된 상호작용이 상기 디스플레이 상의 상기 최종 위치로 사용자가 커서를 움직이고 및 임계 시간 내에 상기 초기 애니메이션을 클릭한 단계를 포함하는지를 결정하는 단계를 포함하는, 저장 매체. - 청구항 10 내지 청구항 12 중의 어느 한 항에 있어서,
상기 결정하는 단계는 상기 모니터링된 상호작용이 상기 디스플레이 상의 상기 최종 위치로 사용자가 커서를 움직인 단계를 포함하는지 및 상기 애니메이션이 적어도 임계 횟수에서 사용자에게 디스플레이 되었는지를 결정하는 단계를 포함하는, 저장 매체. - 그 위에 저장되어 있는 명령들을 포함하는 비-일시적 컴퓨터-판독가능 저장 매체로서, 상기 명령들은 적어도 하나의 프로세서에 의해 실행될 시에, 컴퓨팅 시스템으로 하여금 적어도,
상기 컴퓨팅 시스템의 디스플레이 상의 그래픽 사용자 인터페이스(GUI)에 사용자에게 초기 애니메이션을 디스플레이하게 하고, 상기 초기 애니메이션은 시간의 함수로서 최초 외관으로부터 최종 외관으로 연속적으로 변경되며 상기 사용자로부터의 입력을 유도하도록 디스플레이되고;
상기 컴퓨팅 시스템의 프로세서에 의해 상기 초기 애니메이션이 상기 시간의 함수로서 변경되고 있는 동안 상기 초기 애니메이션과의 사용자의 상호작용을 모니터링하게 하고; 및
상기 GUI에 의해 상기 사용자에게 후속 애니메이션을 디스플레이하게 하고,상기 후속 애니메이션은 상기 초기 애니메이션과 동일한 함수 호출에 대한 응답으로 디스플레이되지만, 상기 초기 애니메이션보다 더 빠른 시간의 함수로서 상기 최초 외관으로부터 상기 최종 외관으로 연속적으로 변경되며, 상기 후속 애니메이션의 상기 최초 외관으로부터 상기 최종 외관으로의 더 빠른 연속적인 변경은 상기 모니터링된 상호작용에 기초되는, 저장 매체. - 청구항 14에 있어서,
상기 사용자의 상호작용을 모니터링하는 것은 상기 애니메이션이 엔드 포인트에 도달하기 이전에, 상기 사용자가 상기 엔드 포인트로 커서를 움직였는지를 결정하는 단계를 포함하며; 및
상기 더 빠른 시간의 함수로 상기 최초 외관으로부터 상기 최종 외관으로 연속적으로 변경되는 것은 상기 애니메이션이 상기 엔드 포인트에 도달하기 이전에, 상기 사용자가 상기 애니메이션의 엔드 포인트로 커서를 움직였는지의 결정에 기초되는, 저장 매체. - 청구항 14 내지 청구항 15 중 어느 한 항에 있어서,
상기 사용자의 상호작용을 모니터링하는 것은 상기 사용자가 임계 시간 이내에 상기 애니메이션의 객체를 클릭한 것으로 결정하였는지를 결정하는 단계를 포함하며; 및
상기 더 빠른 시간의 함수로 상기 최초 외관으로부터 상기 최종 외관으로 연속적으로 변경되는 것은 상기 사용자가 임계 시간 이내에 상기 애니메이션의 객체를 클릭하였는지의 결정에 기초하는, 저장 매체. - 청구항 14 내지 청구항 16 중의 어느 한 항에 있어서,
상기 사용자의 상호작용을 모니터링하는 것은 상기 애니메이션이 적어도 임계 횟수에서 상기 사용자에게 디스플레이 되었는지를 결정하는 단계를 포함하며; 및
상기 더 빠른 시간의 함수로 상기 최초 외관으로부터 상기 최종 외관으로 연속적으로 변경되는 것 상기 애니메이션이 적어도 임계 횟수로 상기 사용자에게 디스플레이 되었는지의 결정에 기초하는, 저장 매체. - 청구항 14 내지 청구항 17 중의 어느 한 항에 있어서,
상기 더 빠른 시간의 함수로 상기 최초 외관으로부터 상기 최종 외관으로 연속적으로 변경되는 것은 더 빠른 시간의 함수로 최초 위치로부터 최종 위치로 상기 디스플레이를 가로질러 연속적으로 이동하는 것을 포함하는, 저장 매체. - 청구항 14 내지 청구항 18 중의 어느 한 항에 있어서,
상기 더 빠른 시간의 함수로 상기 최초 외관으로부터 상기 최종 외관으로 연속적으로 변경되는 것은 상기 디스플레이를 가로지르는 상기 애니메이션의 움직임의 증가된 속도를 포함하는, 저장 매체. - 청구항 14 내지 청구항 19 중의 어느 한 항에 있어서,
상기 더 빠른 시간의 함수로 상기 최초 외관으로부터 상기 최종 외관으로 연속적으로 변경되는 것은 상기 애니메이션의 움직임이 없는 상기 애니메이션의 최종 이미지를 포함하는, 저장 매체.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/445,461 | 2012-04-12 | ||
US13/445,461 US8471857B1 (en) | 2012-04-12 | 2012-04-12 | Changing animation displayed to user |
PCT/US2013/035614 WO2013154992A1 (en) | 2012-04-12 | 2013-04-08 | Changing animation displayed to user |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20140148423A true KR20140148423A (ko) | 2014-12-31 |
KR102120063B1 KR102120063B1 (ko) | 2020-06-08 |
Family
ID=48049860
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020147029265A KR102120063B1 (ko) | 2012-04-12 | 2013-04-08 | 사용자에 디스플레이되는 애니메이션 변경 |
Country Status (7)
Country | Link |
---|---|
US (2) | US8471857B1 (ko) |
EP (1) | EP2650830A3 (ko) |
KR (1) | KR102120063B1 (ko) |
CN (1) | CN104272235B (ko) |
AU (1) | AU2013202806B1 (ko) |
CA (1) | CA2812318C (ko) |
WO (1) | WO2013154992A1 (ko) |
Families Citing this family (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10203873B2 (en) | 2007-09-19 | 2019-02-12 | Apple Inc. | Systems and methods for adaptively presenting a keyboard on a touch-sensitive display |
US10126942B2 (en) | 2007-09-19 | 2018-11-13 | Apple Inc. | Systems and methods for detecting a press on a touch-sensitive surface |
US8471857B1 (en) | 2012-04-12 | 2013-06-25 | Google Inc. | Changing animation displayed to user |
US10656818B1 (en) * | 2013-03-13 | 2020-05-19 | Domo, Inc. | Animation to indicate scrollable content |
US10289302B1 (en) | 2013-09-09 | 2019-05-14 | Apple Inc. | Virtual keyboard animation |
US9916069B2 (en) * | 2014-09-04 | 2018-03-13 | Microsoft Technology Licensing, Llc | User interface with dynamic transition times |
US9965779B2 (en) * | 2015-02-24 | 2018-05-08 | Google Llc | Dynamic content display time adjustment |
CN106034109A (zh) * | 2015-03-11 | 2016-10-19 | 腾讯科技(深圳)有限公司 | 基于aio会话模式下的会话方法及装置 |
CN105126344B (zh) * | 2015-08-11 | 2019-01-22 | 网易(杭州)网络有限公司 | 一种用于游戏的提示方法和装置 |
CN105427364B (zh) * | 2015-11-06 | 2019-08-30 | 厦门大学 | 一种多点触控二维动画的制作方法 |
CN106775265A (zh) * | 2015-11-24 | 2017-05-31 | 北京国双科技有限公司 | 展示菜单的方法及装置 |
US20180089879A1 (en) | 2016-09-23 | 2018-03-29 | Apple Inc. | Synchronizing Display of Multiple Animations |
US10656793B2 (en) | 2017-05-25 | 2020-05-19 | Microsoft Technology Licensing, Llc | Providing personalized notifications |
US10573051B2 (en) * | 2017-08-16 | 2020-02-25 | Google Llc | Dynamically generated interface transitions |
CN110166842B (zh) * | 2018-11-19 | 2020-10-16 | 深圳市腾讯信息技术有限公司 | 一种视频文件操作方法、装置和存储介质 |
KR102521906B1 (ko) * | 2022-03-23 | 2023-04-14 | 오픈마루 주식회사 | 마이크로서비스 아키텍처를 구성하는 미들웨어의 성능 상의 문제점에 대하여 사용자의 인터랙션을 유도하고 문제점에 대한 해결절차를 제공하는 방법 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040128093A1 (en) * | 2002-12-26 | 2004-07-01 | International Business Machines Corporation | Animated graphical object notification system |
US20050223099A1 (en) * | 2004-03-02 | 2005-10-06 | Toshiyuki Morita | Image display system |
KR20060024376A (ko) * | 2003-06-30 | 2006-03-16 | 마이크로소프트 코포레이션 | 사용자의 주의 초점 및 활동에 기초하여 통지 헤럴드를배치 및 렌더링하는 방법 및 시스템 |
US20070136462A1 (en) * | 1999-05-19 | 2007-06-14 | Transparence, Inc. | Non-intrusive interactive notification system and method |
KR20110095287A (ko) * | 2008-12-03 | 2011-08-24 | 노키아 코포레이션 | 스트로크 기반의 애니메니션 생성 |
WO2012011228A1 (ja) * | 2010-07-23 | 2012-01-26 | パナソニック株式会社 | アニメーション描画装置、アニメーション描画プログラム、及びアニメーション描画方法 |
Family Cites Families (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7173623B2 (en) * | 2003-05-09 | 2007-02-06 | Microsoft Corporation | System supporting animation of graphical display elements through animation object instances |
US7577918B2 (en) * | 2005-07-15 | 2009-08-18 | Microsoft Corporation | Visual expression of a state of an application window |
US20070057951A1 (en) * | 2005-09-12 | 2007-03-15 | Microsoft Corporation | View animation for scaling and sorting |
KR101145923B1 (ko) * | 2006-07-11 | 2012-05-15 | 엘지전자 주식회사 | 이동통신단말기의 스케쥴 관리 방법 및 이를 수행하기 위한이동통신단말기 |
KR100793307B1 (ko) * | 2006-09-25 | 2008-01-11 | 삼성전자주식회사 | 이동통신 단말기 및 그의 대기 화면 제공 방법 |
US20080307330A1 (en) * | 2007-06-08 | 2008-12-11 | Apple Inc. | Visualization object divet |
US8245156B2 (en) * | 2008-06-28 | 2012-08-14 | Apple Inc. | Radial menu selection |
US9390169B2 (en) | 2008-06-28 | 2016-07-12 | Apple Inc. | Annotation of movies |
US9003326B2 (en) * | 2008-09-23 | 2015-04-07 | Apple Inc. | Indicating input focus by showing focus transitions |
WO2010051493A2 (en) * | 2008-10-31 | 2010-05-06 | Nettoons, Inc. | Web-based real-time animation visualization, creation, and distribution |
CA2747332C (en) * | 2008-12-23 | 2015-01-27 | F. Hoffmann-La Roche Ag | Management method and system for implementation, execution, data collection, and data analysis of a structured collection procedure which runs on a collection device |
US20100281481A1 (en) * | 2009-04-30 | 2010-11-04 | Nokia Corporation | Apparatus and method for providing a user interface within a computing device |
US9159151B2 (en) * | 2009-07-13 | 2015-10-13 | Microsoft Technology Licensing, Llc | Bringing a visual representation to life via learned input from the user |
US8335992B2 (en) * | 2009-12-04 | 2012-12-18 | Nellcor Puritan Bennett Llc | Visual indication of settings changes on a ventilator graphical user interface |
US8589815B2 (en) * | 2010-03-10 | 2013-11-19 | Microsoft Corporation | Control of timing for animations in dynamic icons |
US9542091B2 (en) * | 2010-06-04 | 2017-01-10 | Apple Inc. | Device, method, and graphical user interface for navigating through a user interface using a dynamic object selection indicator |
US8471857B1 (en) | 2012-04-12 | 2013-06-25 | Google Inc. | Changing animation displayed to user |
-
2012
- 2012-04-12 US US13/445,461 patent/US8471857B1/en not_active Expired - Fee Related
-
2013
- 2013-04-07 AU AU2013202806A patent/AU2013202806B1/en not_active Ceased
- 2013-04-08 EP EP20130162657 patent/EP2650830A3/en not_active Ceased
- 2013-04-08 KR KR1020147029265A patent/KR102120063B1/ko active IP Right Grant
- 2013-04-08 CN CN201380023588.6A patent/CN104272235B/zh active Active
- 2013-04-08 WO PCT/US2013/035614 patent/WO2013154992A1/en active Application Filing
- 2013-04-11 CA CA2812318A patent/CA2812318C/en not_active Expired - Fee Related
- 2013-05-22 US US13/900,343 patent/US9612714B2/en not_active Expired - Fee Related
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070136462A1 (en) * | 1999-05-19 | 2007-06-14 | Transparence, Inc. | Non-intrusive interactive notification system and method |
US20040128093A1 (en) * | 2002-12-26 | 2004-07-01 | International Business Machines Corporation | Animated graphical object notification system |
KR20060024376A (ko) * | 2003-06-30 | 2006-03-16 | 마이크로소프트 코포레이션 | 사용자의 주의 초점 및 활동에 기초하여 통지 헤럴드를배치 및 렌더링하는 방법 및 시스템 |
US20050223099A1 (en) * | 2004-03-02 | 2005-10-06 | Toshiyuki Morita | Image display system |
KR20110095287A (ko) * | 2008-12-03 | 2011-08-24 | 노키아 코포레이션 | 스트로크 기반의 애니메니션 생성 |
WO2012011228A1 (ja) * | 2010-07-23 | 2012-01-26 | パナソニック株式会社 | アニメーション描画装置、アニメーション描画プログラム、及びアニメーション描画方法 |
Also Published As
Publication number | Publication date |
---|---|
US9612714B2 (en) | 2017-04-04 |
CN104272235B (zh) | 2019-01-15 |
WO2013154992A1 (en) | 2013-10-17 |
EP2650830A3 (en) | 2014-01-22 |
KR102120063B1 (ko) | 2020-06-08 |
CA2812318A1 (en) | 2013-06-19 |
EP2650830A2 (en) | 2013-10-16 |
CN104272235A (zh) | 2015-01-07 |
US8471857B1 (en) | 2013-06-25 |
AU2013202806B1 (en) | 2013-05-23 |
US20140157193A1 (en) | 2014-06-05 |
CA2812318C (en) | 2014-04-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9612714B2 (en) | Changing animation displayed to user | |
JP7407221B2 (ja) | 視覚的なアニメーションコンポーネントが同期するユーザインターフェイススクロールの触覚フィードバック | |
US9785341B2 (en) | Inter-application navigation apparatuses, systems, and methods | |
US8954887B1 (en) | Long press interface interactions | |
US9218067B2 (en) | Mobile communications device user interface | |
US9632618B2 (en) | Expanding touch zones of graphical user interface widgets displayed on a screen of a device without programming changes | |
US9847079B2 (en) | Methods and apparatus to use predicted actions in virtual reality environments | |
US20160162148A1 (en) | Application launching and switching interface | |
US8566718B1 (en) | Live demonstration of computing device applications | |
US10067632B2 (en) | Dynamic hover grace period | |
CN110214304B (zh) | 动画终止 | |
US20190102057A1 (en) | Information processing method, terminal, server, and computer storage medium | |
US20140007115A1 (en) | Multi-modal behavior awareness for human natural command control | |
US10163245B2 (en) | Multi-mode animation system | |
US10893113B2 (en) | Generating push notifications | |
US20180246577A1 (en) | Object scrolling and selection on a wearable computing device | |
CN110290058A (zh) | 一种在应用中呈现会话消息的方法与设备 | |
CN106973003A (zh) | 群组消息通知方法、客户端、电子设备和服务器 | |
AU2013206116B2 (en) | Changing animation displayed to user | |
US10803843B2 (en) | Computationally efficient language based user interface event sound selection | |
CN114443204A (zh) | 界面内容生成方法、装置、存储介质以及计算机设备 | |
US20170308910A1 (en) | Increasing user engagement via detection of refresh rates | |
KR20150050832A (ko) | 전자 장치의 입력 처리 방법 및 장치 | |
KR20160070567A (ko) | 사용자 입력 존재여부에 기반한 정보제공장치 및 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |