KR20210024991A - 멀티-스크린 디스플레이 및 상호작용을 위한 시스템들 및 방법들 - Google Patents
멀티-스크린 디스플레이 및 상호작용을 위한 시스템들 및 방법들 Download PDFInfo
- Publication number
- KR20210024991A KR20210024991A KR1020207030818A KR20207030818A KR20210024991A KR 20210024991 A KR20210024991 A KR 20210024991A KR 1020207030818 A KR1020207030818 A KR 1020207030818A KR 20207030818 A KR20207030818 A KR 20207030818A KR 20210024991 A KR20210024991 A KR 20210024991A
- Authority
- KR
- South Korea
- Prior art keywords
- display device
- display
- vector
- point
- input
- Prior art date
Links
Images
Classifications
-
- 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/017—Gesture based interaction, e.g. based on a set of recognized hand gestures
-
- 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/14—Digital output to display device ; Cooperation and interconnection of the display device with other functional units
- G06F3/1423—Digital output to display device ; Cooperation and interconnection of the display device with other functional units controlling a plurality of local displays, e.g. CRT and flat panel display
- G06F3/1431—Digital output to display device ; Cooperation and interconnection of the display device with other functional units controlling a plurality of local displays, e.g. CRT and flat panel display using a single graphics controller
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/16—Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization
-
- 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/14—Digital output to display device ; Cooperation and interconnection of the display device with other functional units
- G06F3/1423—Digital output to display device ; Cooperation and interconnection of the display device with other functional units controlling a plurality of local displays, e.g. CRT and flat panel display
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/47—End-user applications
- H04N21/472—End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
- H04N21/47217—End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content for controlling playback functions for recorded or on-demand content, e.g. using progress bars, mode or play-point indicators or bookmarks
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G2354/00—Aspects of interface with display user
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Human Computer Interaction (AREA)
- Mathematical Physics (AREA)
- Computer Graphics (AREA)
- Mathematical Optimization (AREA)
- Mathematical Analysis (AREA)
- Computational Mathematics (AREA)
- Pure & Applied Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Computing Systems (AREA)
- Algebra (AREA)
- Software Systems (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- User Interface Of Digital Computer (AREA)
- Controls And Circuits For Display Device (AREA)
Abstract
멀티-스크린 상호작용을 위한 다양한 시스템 및 방법이 설명된다. 제1 스크린 상의 제1 디스플레이로부터의 콘텐츠 및 객체들은 다양한 제스처를 사용하여 다른 스크린들 상의 다른 디스플레이로 전송될 수 있다. 일부 실시예에서, 제1 디스플레이 상의 활성 영역은 다양한 다른 디스플레이에 대응하고, 활성 영역들에 대응하는 제스처는 제1 디스플레이 상의 콘텐츠 또는 객체가 다른 디스플레이들로 전송되도록 허용한다. 일부 실시예에서, 콘텐츠는 제1 디스플레이로부터 선택된 다양한 오디오 출력 디바이스에서 재생될 수 있는 오디오 콘텐츠를 포함할 수 있다.
Description
본 설명된 실시예들은 멀티-스크린 상호작용, 및 보다 구체적으로 미디어 객체들과 상호작용하고 복수의 디스플레이 디바이스 사이에서 미디어 객체들을 전송하기 위한 시스템들 및 방법들에 관한 것이다.
프리젠테이션 시스템 및 멀티 스크린과 다른 출력 디바이스들을 갖는 다른 시스템을 포함하는 컴퓨팅 시스템들이 잘 알려져 있다. 상이한 스크린들 상의 디스플레이들 사이의 콘텐츠 배열은 일반적으로 번거롭고, 시간 소비적이며 불편하다. 컴퓨팅 시스템에 결합된 멀티 스크린들 및 다른 출력 디바이스들에 걸쳐 상이한 디스플레이에 콘텐츠를 배열하기 위한 편리하고 직관적인 방법들이 필요하다.
제1 양상에서, 본 발명의 일부 실시예는: 디스플레이, 입력 디바이스, 프로세서, 및 메모리를 포함하는 복수의 디스플레이 디바이스를 제공하는 단계; 제1 디스플레이 디바이스와 연관된 객체를 제1 디스플레이 상에 표시하는 단계; 객체의 제1 지점에서 시작하여 제2 지점에서 끝나는 입력 제스처를 수신하는 단계; 제1 지점과 제2 지점 사이의 라인을 결정하는 단계; 라인의 투영이 복수의 활성 영역에서 제1 활성 영역과 교차하는 경우, 객체를 제1 활성 영역으로 병진시키고 객체를 제1 활성 영역에 대응하는 제2 디스플레이 디바이스와 연관시키고 제2 디스플레이 상에 객체를 표시하는 단계; 및 그렇지 않으면, 객체를 라인의 투영을 따라 병진시키는 단계를 포함하는 멀티-디스플레이 상호작용의 방법을 제공한다.
일부 실시예에서, 본 방법은: 제1 지점과 제2 지점 사이의 입력 속도 벡터를 결정하고 객체를 입력 속도 벡터에 기반하여 병진시키는 단계를 더 포함할 수 있다.
일부 실시예에서, 본 방법은: 제1 지점과 제2 지점 사이의 입력 가속도 벡터를 결정하고 객체를 입력 가속도 벡터에 기반하여 병진시키는 단계를 더 포함할 수 있다.
일부 실시예들에서, 본 방법은: 객체 질량 및 속도에 기반하여 제2 지점에서 객체 모멘텀을 결정하는 단계; 객체 모멘텀에서 객체를 라인의 방향으로 병진시키고 객체가 병진함에 따라 객체 모멘텀을 감소시키는 단계를 더 포함할 수 있다.
일부 실시예들에서, 각각의 디스플레이 디바이스가 오디오 디바이스를 더 포함할 수 있는 본 방법에서; 객체는 오디오 콘텐츠 및 비디오 콘텐츠를 포함할 수 있고; 그리고 객체를 표시하는 단계는 디스플레이 디바이스 상에 비디오 콘텐츠를 표시하는 단계, 및 오디오 디바이스 상에서 오디오 콘텐츠를 플레이하는 단계를 더 포함할 수 있다.
일부 실시예들에서, 본 방법은 제1 디스플레이 디바이스와 연관된 객체를 수정하는 단계를 더 포함할 수 있다.
일부 실시예들에서, 본 방법은 제2 디스플레이 디바이스와 연관된 객체를 수정하는 단계; 객체의 제3 지점에서 시작하여 제4 지점에서 끝나는 제2 입력 제스처를 수신하는 단계; 제3 지점과 제4 지점 사이의 제2 라인을 결정하는 단계; 제2 라인의 투영이 복수의 활성 영역에서 제2 활성 영역과 교차하는 경우, 객체를 제2 활성 영역으로 병진시키고 객체를 제2 활성 영역에 대응하는 제1 디스플레이 디바이스와 연관시키고 제1 디스플레이 상에 객체를 표시하는 단계; 및 그렇지 않으면, 객체를 제2 라인의 방향으로 병진시키는 단계를 더 포함할 수 있다.
일부 실시예들에서, 본 방법은 복수의 옵션을 포함하는 객체와 연관된 상호작용 필드; 복수의 옵션에서의 선택에 대응하는 제2 입력 제스처를 수신하는 단계; 선택에 기반하여 상호작용 필드를 수정하는 단계; 및 객체를 제1 디스플레이 디바이스와 연관시키는 단계를 더 포함할 수 있다.
일부 실시예에서, 제1 디스플레이 디바이스가 제1 청중 정보를 포함할 수 있는 방법에서, 제2 디스플레이 디바이스는 제2 청중 정보를 포함할 수 있고, 객체는 제1 청중 콘텐츠 및 제2 청중 콘텐츠를 포함할 수 있고, 객체를 표시하는 단계는 제1 청중 정보에 기반하여 제1 디스플레이 상에 제1 청중 콘텐츠를 표시하는 단계; 제2 청중 정보에 기반하여 제2 디스플레이 상에 제2 청중 콘텐츠를 표시하는 단계를 더 포함할 수 있다.
제2 양상에서, 본 발명의 일부 실시예는: 객체; 복수의 디스플레이 디바이스 - 각각의 디스플레이 디바이스는: 객체를 저장하는 메모리, 디스플레이, 프로세서, 및 입력 제스처를 수신하는 입력 디바이스를 포함함 - 를 포함하는 멀티-스크린 상호작용 시스템을 제공하고; 제1 디스플레이 디바이스의 디스플레이는 객체를 표시하고, 제1 디스플레이 디바이스의 프로세서는: 디스플레이 상의 하나의 지점에서의 제스처에 대응하는 복수의 지점 - 제스처의 시작에 대응하는 복수의 지점에서의 제1 지점, 제스처의 완료에 대응하는 복수의 지점에서의 제2 지점 - 을 입력 디바이스로부터 수신하고, 제1 지점으로부터 제2 지점까지 형성된 라인을 결정하고, 라인의 투영을 결정하고, 투영이 복수의 활성 영역에서의 제1 활성 영역을 교차하는지를 결정하고, 객체를 제1 활성 영역으로 병진시키고 객체를 제1 활성 영역에 대응하는 제2 디스플레이 디바이스에 보내고 그렇지 않으면, 객체를 제1 디스플레이 디바이스의 디스플레이 상의 투영을 따라 병진시키도록 구성되고; 제2 디스플레이 디바이스의 프로세서는 제1 디스플레이 디바이스로부터 객체를 수신하고; 그리고 객체를 제2 디스플레이 디바이스의 메모리에 저장하고; 그리고 객체를 표시하도록 제2 디스플레이 디바이스의 디스플레이에게 명령하도록 구성된다.
일부 실시예들에서, 시스템은: 복수의 디스플레이 디바이스 각각이 오디오 디바이스를 더 포함하고; 객체가 비디오 콘텐츠 및 오디오 콘텐츠를 더 포함하고; 복수의 디스플레이 디바이스 각각의 프로세서가 비디오 콘텐츠를 디스플레이 상에 표시하고; 오디오 콘텐츠를 오디오 디바이스 상에서 플레이하도록 추가로 구성되는 것을 더 포함할 수 있다.
일부 실시예들에서, 시스템은: 복수의 디스플레이 디바이스에서의 제1 디스플레이 디바이스의 프로세서가 객체를 수정하도록 추가로 구성되는 것을 더 포함할 수 있다.
일부 실시예들에서, 시스템은: 복수의 디스플레이 디바이스에서의 제2 디스플레이 디바이스의 프로세서가 객체를 수정하도록 추가로 구성되는 것을 더 포함할 수 있다.
일부 실시예들에서, 시스템은: 복수의 디스플레이 디바이스에서의 제2 디스플레이 디바이스의 프로세서가 객체를 제1 디스플레이 디바이스에 보내도록 추가로 구성되고; 복수의 디스플레이 디바이스에서의 제1 디스플레이 디바이스의 프로세서가 객체를 제2 디스플레이 디바이스로부터 수신하도록 추가로 구성되는 것을 더 포함할 수 있다.
제3 양상에서, 본 발명의 일부 실시예들은 멀티-스크린 상호작용 시스템의 제1 디스플레이 디바이스로부터 제2 디스플레이 디바이스로 객체를 전송하는 방법을 제공하고, 상기 방법은 제1 디스플레이 디바이스 및 제2 디스플레이 디바이스를 제공하는 단계; 제1 디스플레이 디바이스 상에 객체를 표시하는 단계; 객체에서의 병진 벡터를 포함하는 입력 제스처를 수신하는 단계; 병진 벡터의 투영을 결정하는 단계; 병진 벡터에 기반하여 객체를 제1 디스플레이 디바이스 상에서 병진시키는 단계; 제1 디스플레이 디바이스 상의 제1 활성 영역과 객체의 교차를 검출하는 단계; 제1 디스플레이 디바이스로부터 제1 활성 영역과 연관된 제2 디스플레이 디바이스로 객체를 전송하는 단계를 포함한다.
일부 실시예들에서, 병진 벡터는 입력 속도 벡터를 더 포함할 수 있고 병진 벡터의 투영을 결정하는 단계는 병진 속도 벡터를 결정하는 단계를 더 포함할 수 있다.
일부 실시예들에서, 병진 벡터는 입력 가속도 벡터를 더 포함할 수 있고 병진 벡터의 투영을 결정하는 단계는 병진 가속도 벡터를 결정하는 단계를 더 포함할 수 있다.
일부 실시예들에서, 본 방법은: 객체 모멘텀을 결정하는 단계; 객체 모멘텀에 기반하여 객체를 병진시키고 객체가 병진함에 따라 객체 모멘텀을 감소시키는 단계를 더 포함할 수 있다.
일부 실시예들에서, 본 방법은: 객체가 오디오 콘텐츠 및 비디오 콘텐츠를 더 포함하고; 제1 디스플레이 디바이스 및 제2 디스플레이 디바이스가 오디오 디바이스를 더 포함하고; 객체를 표시하는 단계가 비디오 콘텐츠를 표시하는 단계 및 오디오 콘텐츠를 디스플레이 디바이스의 오디오 디바이스 상에서 플레이하는 단계를 더 포함하고; 제1 디스플레이 디바이스로부터 제2 디스플레이 디바이스로 객체를 전송하는 단계가 제1 디스플레이 디바이스로부터 제2 디스플레이 디바이스로 오디오 콘텐츠의 플레이를 전송하는 단계를 더 포함하는 것을 더 포함할 수 있다.
일부 실시예들에서, 본 방법은 객체가 상태를 더 포함하는 것을 더 포함할 수 있다.
일부 실시예들에서, 본 방법은: 제1 디스플레이 디바이스 및 제2 디스플레이 디바이스가 네트워크 통신하고, 제1 디스플레이 디바이스로부터 제2 디스플레이 디바이스로 객체를 전송하는 단계가 객체를 직렬화하는 단계, 직렬화된 객체를 네트워크 통신을 사용하여 제2 디스플레이 디바이스에 전송하는 단계, 및 제2 디스플레이 디바이스에서 메모리에 객체를 구체화하는 단계를 더 포함하는 것을 더 포함할 수 있다.
제4 양상에서, 본 발명의 일부 실시예들은 멀티-스크린 상호작용 시스템의 제1 디스플레이 디바이스로부터 제2 디스플레이 디바이스로 객체를 전송하는 시스템을 제공하고, 시스템은: 디스플레이, 프로세서, 메모리, 사용자 입력 디바이스를 포함하는 제1 디스플레이 디바이스; 디스플레이, 프로세서, 메모리, 사용자 입력 디바이스를 포함하는 제2 디스플레이 디바이스를 포함하고; 제1 디스플레이 디바이스의 메모리는 객체를 포함하고; 제1 디스플레이 디바이스 및 제2 디스플레이 디바이스는 네트워크 통신하고; 객체는 제1 사용자 디바이스의 디스플레이 상에 표시되고; 제1 디스플레이 디바이스의 프로세서는: 사용자 입력 디바이스로부터의 사용자 입력에 기반하여 라인 투영을 결정하고; 라인 투영과 활성 영역 사이의 교차를 검출하고; 디스플레이 상에 표시된 객체를 병진시키고; 객체를 직렬화하고; 직렬화된 객체를 네트워크 통신을 사용하여 제2 디스플레이 디바이스에 통신하도록 동작가능하고; 제2 디스플레이 디바이스의 프로세서는: 네트워크 통신을 사용하여 직렬화된 객체를 수신하고; 객체를 직렬화된 객체로부터 메모리에 구체화하도록 동작가능하다.
일부 실시예들에서, 제1 디스플레이 디바이스의 프로세서는: 입력 속도 벡터를 결정하고; 병진 속도 벡터를 결정하고; 입력 가속도 벡터를 결정하고; 병진 가속도 벡터를 결정하고; 객체 모멘텀을 결정하고; 객체를 병진 속도 벡터, 병진 가속도 벡터, 및 객체 모멘텀에 기반하여 병진시키도록 추가로 동작가능할 수 있다.
일부 실시예들에서, 객체가 오디오 콘텐츠 및 비디오 콘텐츠를 더 포함할 수 있는 시스템에서; 제1 디스플레이 디바이스 및 제2 디스플레이 디바이스는 오디오 디바이스를 더 포함할 수 있고; 객체는 비디오 콘텐츠에 기반하여 제1 디스플레이 디바이스에 표시될 수 있고; 객체는 오디오 콘텐츠에 기반하여 제1 디스플레이 디바이스의 오디오 디바이스 상에서 플레이될 수 있고; 객체를 직렬화하는 것은 오디오 콘텐츠 및 비디오 콘텐츠를 직렬화하는 것을 포함할 수 있다.
일부 실시예들에서, 상기 시스템에서의 객체는 상태를 더 포함할 수 있다.
아래에 설명되는 도면들은 본원에 설명된 실시예들의 다양한 예들의 양상들 및 특징들을 제한이 아닌 예시를 위해 제공된다. 예시의 간략함 및 명확성을 위해, 적절하다고 고려되는 경우, 참조 번호들이 대응하거나 유사한 엘리먼트들 또는 단계들을 나타내기 위해 도면들 사이에서 반복될 수 있다는 것이 인식될 것이다.
본 발명의 바람직한 실시예는 이제 도면들을 참조하여 상세히 설명될 것이다.
도 1은 예시적인 실시예에 따른 복수의 디스플레이 디바이스 및 서버의 시스템 다이어그램이다.
도 2는 예시적인 실시예에 따른 디스플레이 디바이스의 시스템 다이어그램이다.
도 3은 예시적인 실시예에 따른 디스플레이 디바이스의 소프트웨어 컴포넌트 다이어그램이다.
도 4a는 예시적인 실시예에 따른 객체와의 멀티-스크린 상호작용을 위한 제1 디스플레이 디바이스의 사용자 인터페이스이다.
도 4b는 예시적인 실시예에 따른 객체를 사용한 사용자 입력에 응답하는 제1 디스플레이 디바이스의 사용자 인터페이스이다.
도 4c는 예시적인 실시예에 따른 객체가 활성 영역과 교차하는 제1 디스플레이 디바이스의 사용자 인터페이스이다.
도 4d는 예시적인 실시예에 따른 객체가 제2 디스플레이 디바이스와 연관되는 제1 디스플레이 디바이스의 사용자 인터페이스이다.
도 4e는 예시적인 실시예에 따른 도 4c의 제1 디스플레이 디바이스의 활성 영역과 연관된 제2 디스플레이 디바이스의 사용자 인터페이스이다.
도 5a는 예시적인 실시예에 따른 객체를 사용한 사용자 입력에 응답하는 제1 디스플레이 디바이스의 사용자 인터페이스이다.
도 5b는 예시적인 실시예에 따른 객체가 활성 영역과 교차하지 않는 제1 디스플레이 디바이스의 사용자 인터페이스이다.
도 6a는 예시적인 실시예에 따른 터치 상호작용을 위한 제1 디스플레이 디바이스의 사용자 인터페이스이다.
도 6b는 예시적인 실시예에 따른 터치 상호작용을 위한 제1 디스플레이 디바이스의 사용자 인터페이스이다.
도 7은 예시적인 실시예에 따른 제1 디스플레이 디바이스로부터 제2 디스플레이 디바이스로 객체를 전송하는 시스템 다이어그램이다.
도 8은 예시적인 실시예에 따른 디스플레이 디바이스에서 멀티-스크린 상호작용 방법을 예시하는 흐름도이다.
도 9는 예시적인 실시예에 따른 제1 디스플레이 디바이스로부터 제2 디스플레이 디바이스로 객체를 전송하는 방법을 예시하는 흐름도이다.
도 10a는 예시적인 실시예에 따른 객체의 소프트웨어 컴포넌트 다이어그램이다.
도 10b는 예시적인 실시예에 따른 객체의 직렬화된 표현이다.
도 11a는 예시적인 실시예에 따른 디스플레이 디바이스의 스크린에서 객체 병진의 그래프 표현이다.
도 11b는 예시적인 실시예에 따른 디스플레이 디바이스의 스크린에서 사용자 입력 속도에 기반한 객체 병진의 그래프 표현이다.
도 11c는 예시적인 실시예에 따른 디스플레이 디바이스의 스크린에서 사용자 입력의 가속도에 기반한 객체 병진의 그래프 표현이다.
도 12는 예시적인 실시예에 따른 복수의 연관된 객체를 갖는 사용자 인터페이스이다.
도 13은 예시적인 실시예에 따른 별개의 청중 콘텐츠를 갖는 복수의 연관된 객체를 갖는 사용자 인터페이스이다.
본 발명의 바람직한 실시예는 이제 도면들을 참조하여 상세히 설명될 것이다.
도 1은 예시적인 실시예에 따른 복수의 디스플레이 디바이스 및 서버의 시스템 다이어그램이다.
도 2는 예시적인 실시예에 따른 디스플레이 디바이스의 시스템 다이어그램이다.
도 3은 예시적인 실시예에 따른 디스플레이 디바이스의 소프트웨어 컴포넌트 다이어그램이다.
도 4a는 예시적인 실시예에 따른 객체와의 멀티-스크린 상호작용을 위한 제1 디스플레이 디바이스의 사용자 인터페이스이다.
도 4b는 예시적인 실시예에 따른 객체를 사용한 사용자 입력에 응답하는 제1 디스플레이 디바이스의 사용자 인터페이스이다.
도 4c는 예시적인 실시예에 따른 객체가 활성 영역과 교차하는 제1 디스플레이 디바이스의 사용자 인터페이스이다.
도 4d는 예시적인 실시예에 따른 객체가 제2 디스플레이 디바이스와 연관되는 제1 디스플레이 디바이스의 사용자 인터페이스이다.
도 4e는 예시적인 실시예에 따른 도 4c의 제1 디스플레이 디바이스의 활성 영역과 연관된 제2 디스플레이 디바이스의 사용자 인터페이스이다.
도 5a는 예시적인 실시예에 따른 객체를 사용한 사용자 입력에 응답하는 제1 디스플레이 디바이스의 사용자 인터페이스이다.
도 5b는 예시적인 실시예에 따른 객체가 활성 영역과 교차하지 않는 제1 디스플레이 디바이스의 사용자 인터페이스이다.
도 6a는 예시적인 실시예에 따른 터치 상호작용을 위한 제1 디스플레이 디바이스의 사용자 인터페이스이다.
도 6b는 예시적인 실시예에 따른 터치 상호작용을 위한 제1 디스플레이 디바이스의 사용자 인터페이스이다.
도 7은 예시적인 실시예에 따른 제1 디스플레이 디바이스로부터 제2 디스플레이 디바이스로 객체를 전송하는 시스템 다이어그램이다.
도 8은 예시적인 실시예에 따른 디스플레이 디바이스에서 멀티-스크린 상호작용 방법을 예시하는 흐름도이다.
도 9는 예시적인 실시예에 따른 제1 디스플레이 디바이스로부터 제2 디스플레이 디바이스로 객체를 전송하는 방법을 예시하는 흐름도이다.
도 10a는 예시적인 실시예에 따른 객체의 소프트웨어 컴포넌트 다이어그램이다.
도 10b는 예시적인 실시예에 따른 객체의 직렬화된 표현이다.
도 11a는 예시적인 실시예에 따른 디스플레이 디바이스의 스크린에서 객체 병진의 그래프 표현이다.
도 11b는 예시적인 실시예에 따른 디스플레이 디바이스의 스크린에서 사용자 입력 속도에 기반한 객체 병진의 그래프 표현이다.
도 11c는 예시적인 실시예에 따른 디스플레이 디바이스의 스크린에서 사용자 입력의 가속도에 기반한 객체 병진의 그래프 표현이다.
도 12는 예시적인 실시예에 따른 복수의 연관된 객체를 갖는 사용자 인터페이스이다.
도 13은 예시적인 실시예에 따른 별개의 청중 콘텐츠를 갖는 복수의 연관된 객체를 갖는 사용자 인터페이스이다.
본원에 설명된 다양한 실시예는 일반적으로 미디어 객체들과의 멀티-스크린 상호작용을 위한 방법들(및 본 방법들을 구현하도록 구성된 연관된 시스템들)에 관한 것이다.
조직화는 일반적으로 멀티 스크린들을 갖는 상호작용 시스템들을 사용할 수 있다. 본원에 개시된 멀티-스크린 상호작용 시스템들 및 방법들은 마케팅 프리젠테이션들, 교실 강의들을 포함하는 교육 프리젠테이션, 또는 본 발명에서 정의된 복수의 디스플레이 디바이스에서의 디스플레이 디바이스를 각각이 갖는 복수의 사용자 사이의 공동 작업을 포함하는 프리젠테이션들을 수행하는 데 사용될 수 있다. 프리젠테이션들은 교육자, 교사, 또는 리더의 역할을 수행하는 단일 개인에 의해 배포 및 논의되는 일련의 미디어 콘텐츠 항목을 지칭할 수 있다.
본원에 개시된 멀티-스크린 상호작용 시스템들 및 방법들은 또한 참가자들이 작업하는 문제 세트들 또는 퀴즈들을 포함하는 상호작용 강의들, 참가자들 사이에 공유되는 미디어 콘텐츠 항목을 편집 또는 수정하는 참가자들에 의한 공동 작업, 또는 각각의 참가자가 미디어 콘텐츠의 그 자체 로컬 사본을 편집 또는 수정하는 공동 작업을 포함하는(그러나 이에 제한되지 않음) 참가자들 사이의 상호작용 또는 공동 작업을 수행하는 데 사용될 수 있다. 참가자들이 미디어 콘텐츠의 로컬 사본을 편집 또는 수정하는 경우, 수정들은 로컬적으로 저장되거나 원격으로 저장될 수 있다. 이어서, 미디어 콘텐츠에 대한 수정들은 교사와 함께 하는 참가자에 의해, 또는 멀티-스크린 상호작용 시스템에서의 다른 참가자들과 공유될 수 있다.
먼저, 도 1이 참조되고, 도 1은 복수의 디스플레이 디바이스(102a, 102b, 및 102c)의 시스템 다이어그램(100)을 예시한다. 예컨대, 3 개의 디스플레이 디바이스가 도시되지만, 2 개의 디스플레이 디바이스만큼 적거나 매우 많은 수(예컨대 수백 또는 수천 개)의 디스플레이 디바이스가 있을 수 있다는 것이 인식될 것이다. 복수의 디스플레이 디바이스는 네트워크(104)에 의해 상호 연결된다. 네트워크(104)는 TCP/IP 교환 네트워크, LAN 네트워크, WAN 네트워크, 또는 인터넷일 수 있다. 네트워크(104)에 대한 디스플레이 디바이스들의 연결은 이더넷, 파이어와이어, 블루투스, 무선(802.11 등), 모뎀, 또는 디지털 가입자 회선 연결과 같은 연결 기술에 의해 제공될 수 있다.
서버(106)는 데이터베이스 서버, 애플리케이션 서버, 콘텐츠 전달 네트워크, 또는 기술 분야에서 알려진 임의의 다른 인터넷 기반 소프트웨어 전달 기술 중 적어도 하나를 포함할 수 있다. 서버(106)는 MySQL, MongoDB, 또는 Postgres와 같은 데이터베이스 소프트웨어를 운영할 수 있다. 서버(106)는 Apache Tomcat, Glassfish, Oracle WebLogic 등과 같은 애플리케이션 서버를 운영할 수 있다.
시스템(100)은 소프트웨어 프로그램 코드로서 구현될 수 있고 임의의 공지된 수단에 의해 복수의 디스플레이 디바이스 및 서버로 전달될 수 있다.
디스플레이 디바이스(200)의 시스템 다이어그램을 예시하는 도 2가 참조된다. 디스플레이 디바이스(200)는 디스플레이 스크린(또는 단순히 스크린)(202), 스피커(204), 프로세서(206), 입력 디바이스(208), 네트워크 디바이스(210) 및 메모리(휘발성 및 비-휘발성 둘 모두)(212)를 가질 수 있다. 디스플레이 스크린(202)은 LCD, CRT, LED, OLED, 또는 플라즈마 스크린일 수 있다. 스크린(202) 및 입력 디바이스(208)는 예컨대, 참가자들 손가락 또는 손가락들을 사용하고 임의로 스타일러스를 사용하는 정전식 터치 디스플레이 시스템을 사용함으로써 결합될 수 있다. 표면 터치 감지 시스템들 및 방법들에 대한 추가 설명들은 2013년 3월 3일에 출원되고 발명의 명칭이 "Systems and methods for sensing and tracking radiation blocking objects on a surface"인 미국 특허 번호 9,582,116, 2013년 8월 27일에 출원되고 발명의 명칭이 "Systems and methods for sensing and tracking radiation blocking objects on a surface"인 미국 특허 번호 9,453,726, 2012년 12월 2일에 출원되고 발명의 명칭이 "Modular position sensing systems and methods"인 미국 특허 번호 9,395,185, 2011년 12월 6일에 출원되고 발명의 명칭이 "Two-dimensional and three-dimensional position sensing systems and sensors therefor"인 미국 특허 번호 8,969,822, 2012년 12월 2일에 출원되고 발명의 명칭이 "Modular position sensing systems and methods"인 미국 특허 번호 9,395,185, 2011년 12월 16일에 출원되고 발명의 명칭이 "Two-dimensional position sensing systems and sensors therefor"인 미국 특허 번호 8,969,769, 2013년 3월 25일에 출원되고 발명의 명칭이 "Sensors, systems and methods for position sensing"인 미국 특허 번호 8,928,873, 2011년 3월 18일에 출원되고 발명의 명칭이 "Sensors, systems and methods for position sensing"인 미국 특허 번호 8,405,824에서 발견될 수 있다. 스크린(202)은 사용자에게 이미지 콘텐츠 재생 또는 비디오 콘텐츠 재생을 제공할 수 있다. 프로세서에 연결된 스피커(204)는 참가자에게 오디오 콘텐츠의 재생을 제공할 수 있다. 프로세서(206)는 임의의 알려진 프로세서, 예컨대 Intel™x86 또는 x86_64 아키텍처, ARM™ 마이크로프로세서, Qualcomm™ Snapdragon™, 또는 가상화 환경에 의해 제공되는 프로세서를 사용하는 프로세서일 수 있다. 입력 디바이스는 마우스, 키보드, 제어기, 터치 스크린, 눈 초점 추적 디바이스, 트랙 패드, 모션 감지 가속도계, 트랙볼, 마이크로폰 등일 수 있다. 디스플레이 디바이스(200)는 휴대폰, 태블릿 디바이스, 데스크톱 컴퓨터, 랩톱 컴퓨터, Google™ Glass와 같은 웨어러블 컴퓨터, Sony™ Playstation VR™ 또는 Oculus™ Rift™와 같은 가상 현실 디바이스 같은 모바일 디바이스들, 또는 임의의 다른 적합한 디바이스일 수 있다.
디스플레이 디바이스의 소프트웨어 컴포넌트 다이어그램을 예시하는 도 3에 대해 참조가 이루어진다. 디스플레이 디바이스(300)는 디스플레이 모듈(302), 입력 모듈(304), 네트워크 모듈(306), 물리 모듈(308), 객체 모듈(310), 및 오디오 모듈(312)을 가질 수 있다.
디스플레이 모듈(302)은 사용자가 보는 사용자 인터페이스를 드로잉(drawing)하는 것을 담당할 수 있고, 스크린에 디스플레이 디바이스와 연관된 객체들을 드로잉(또는 렌더링)하는 것을 담당한다.
입력 모듈(304)은 마우스 같은 포인트 디바이스, 정전식 LCD 터치 스크린 같은 터치 감지 스크린 입력 디바이스 같은 사용자 입력 디바이스들로부터의 사용자 입력, 또는 마이크로폰에 의해 수신된 사용자로부터의 구두 커맨드를 수신하는 것을 담당할 수 있다.
네트워크 모듈(306)은 원격에 위치된 다른 디스플레이 디바이스들 또는 서버와의 통신을 담당할 수 있다. 네트워크 모듈은, 디스플레이 디바이스가 다른 객체에 링크된 미디어 객체와 연관될 때 동기식으로 또는 비동기식으로 연결들을 관리하는 것을 담당할 수 있다.
물리 모듈(308)은 사용자 입력으로부터 결정된 사용자 입력 벡터들 같은 벡터들을 결정하도록 동작할 수 있고, 예컨대 물리 모듈은 사용자 입력 디바이스에 의해 입력된 일련의 지점들에 기반하여 입력의 결과 벡터를 결정할 수 있다. 사용자 입력 벡터, 객체 속도 벡터, 또는 객체 가속도 벡터에 기반한 객체 병진 벡터를 포함하는 다른 벡터들이 결정될 수 있다. 물리 모듈은 모바일 디바이스의 복수의 가속도계로부터의 입력 같은 다-차원 입력을 수신하고, 3-차원 공간에서 벡터를 결정할 수 있다. 물리 모듈(308)은 또한 예컨대 다른 객체들 또는 벽들과의 교차들을 결정하거나, 디스플레이 디바이스에서 객체의 모멘텀을 결정하거나, 또는 객체가 다른 객체 또는 벽과 교차할 때 객체의 결과적인 모멘텀을 결정하기 위해, 객체들이 병진하는 동안 객체들의 거동을 결정할 수 있다. 물리 모듈은 사용자 입력 벡터를 제공할 수 있다.
객체 모듈(310)은 객체 속성을 저장하고, 객체 속성을 편집하고, 객체 메타데이터를 저장하고, 객체 메타데이터를 편집 및 업데이트할 수 있다. 객체 모듈은 다른 모듈들이 객체 속성, 객체 메타데이터 및 객체들을 생성, 판독, 업데이트 또는 삭제하도록 애플리케이션 프로그래밍(application programming)(API) 인터페이스를 제공할 수 있다.
오디오 모듈(312)은 객체들에서 오디오 콘텐츠의 재생을 지원할 수 있다.
멀티-스크린 상호작용을 위한 제1 디스플레이 디바이스의 사용자 인터페이스(400)를 예시하는 도 4a를 참조한다. 사용자 인터페이스는 복수의 활성 영역(402a 및 402b), 및 객체(404)를 포함할 수 있다.
활성 영역들(402a 및 402b)은 구성가능한 크기 및 형상일 수 있고, 예컨대 정사각형, 직사각형 또는 원형일 수 있다. 활성 영역들은 2 개의 활성 영역(402a 및 402b)이 도시되어 있지만, 사용자 인터페이스(400)에 2 개 초과의 활성 영역이 있을 수 있도록 또한 구성될 수 있다. 활성 영역은 영역의 타겟 디스플레이 디바이스를 특정하기 위해 사용자에 의해 구성될 수 있다. 예컨대, 타겟 디스플레이 디바이스로부터 수신된 화상 회의 피드(video conferencing feed)의 위치 및 크기에 기반하여 구성이 자동으로 발생할 수 있다. 일 예에서, 사용자들 그룹은 각각의 사용자가 서로 다른 사용자로부터의 비디오 피드를 보는 화상 회의를 활성화할 수 있고 비디오 피드의 각각의 경계 박스는, 사용자가 객체를 "던져서(throw)" 타겟 사용자의 디스플레이 디바이스에 보내는 디스플레이 디바이스 상의 활성 영역으로 자동으로 동작할 수 있다.
사용자 인터페이스(400)는 임의로 0 개의 객체, 1 개의 객체, 또는 1 개 초과의 객체를 동시에 디스플레이할 수 있다. 객체(404)와 같은 객체들은 도 10a에서 아래에 더 상세히 설명된다.
사용자 입력에 응답할 수 있는 제1 디스플레이 디바이스의 사용자 인터페이스(420)를 예시하는 도 4b를 참조한다. 사용자는 입력 디바이스를 사용하여, 제1 지점을 선택한 다음, 선택 이벤트 지속기간 동안, 선택이 해제될 때까지 입력 지점들을 추적한다(아래의 도 6a-도 6b에 추가로 설명됨). 제1 지점이 객체(424)의 경계 내에 있으면, 사용자 인터페이스(420)는 객체를 병진시켜 사용자 입력에 응답할 것이다.
사용자 입력으로부터 결정된 라인은 스크린의 에지에 대한 투영 라인(422)을 결정하는 데 사용될 수 있다. 객체(424)는 투영 라인(422)을 따라 병진될 수 있다.
임의로, 선택 이벤트의 지속기간 동안, 객체는 사용자 커서의 현재 지점 또는 터치 입력 지점으로 이동할 수 있다. 이런 방식으로, 객체는 선택 이벤트의 종료까지 사용자 커서 또는 손가락 입력을 따르는 것처럼 보일 수 있다.
도 4b의 객체를 나타내는 객체(442)가 병진하여 제2 디스플레이 디바이스와 연관된 활성 영역(444)과 교차하는 제1 디스플레이 디바이스의 사용자 인터페이스(440)를 예시하는 도 4c를 참조한다. 교차는 활성 영역(444)과 객체 경계(442) 각각의 겹침에 의해 정의된다.
도 4c로부터의 객체가 제2 디스플레이 디바이스와 연관된 스크린(462) 상에 더 이상 디스플레이 되지 않는 제1 디스플레이 디바이스의 사용자 인터페이스(460)를 예시하는 도 4d를 참조한다. 임의로, 객체는 다수의 디스플레이 디바이스와 연관되도록 구성될 수 있고 객체가 제2 디스플레이 디바이스와 추가로 연관된 후에 제1 디스플레이 디바이스에 계속 디스플레이될 수 있다. 이런 객체 구성은 제1 및 제2 디스플레이 디바이스에 동시에 그리고 동기식으로 디스플레이되는 링크된 객체를 허용할 수 있다.
도 4c의 활성 영역(444)과 연관된 제2 디스플레이 디바이스의 사용자 인터페이스(480)를 예시하는 도 4e를 참조한다. 객체(482)는 제2 디스플레이 디바이스의 스크린(484)에 디스플레이된다. 객체(482)와 제2 디스플레이 디바이스의 연관은 객체(482)의 콘텐츠의 재생을 트리거할 수 있다. 예컨대, 오디오 콘텐츠 또는 비디오 콘텐츠는 재생을 시작할 수 있거나 객체가 제2 디스플레이 디바이스와 연관되면 이미지 콘텐츠가 디스플레이될 수 있다.
제1 디스플레이 디바이스의 사용자 인터페이스(500)를 예시하는 도 5a를 참조한다. 사용자 인터페이스는 사용자 입력에 기반하여 활성 영역들(502a 및 502b), 객체(504), 및 라인 투영(506)을 갖는다. 이 도면의 라인 투영(506)은 활성 영역(502a 또는 502b)과 교차하지 않는다.
객체(552)가 병진되고 활성 영역들(552a 또는 552b)과 교차하지 않는 제1 디스플레이 디바이스의 사용자 인터페이스(550)를 예시하는 도 5b를 참조한다.
사용자 입력 선택에 응답하는 사용자 인터페이스(600)를 예시하는 도 6a 및 6b를 참조한다. 선택은 제1 지점에서 사용자 입력 이벤트, 예컨대 사용자가 마우스 버튼, 키보드 버튼을 누르거나, 사용자가 자신의 손가락을 터치 인터페이스에 적용할 때 "마우스-다운(mouse-down)"에 기반하여 시작될 수 있다. 일련의 지점들을 완성할 수 있는 제2 지점은 사용자 입력 이벤트, 예컨대 사용자가 마우스 버튼을 놓을 때, 사용자가 터치 인터페이스에서 자신의 손가락이나 스타일러스를 떼었을 때 "마우스 업(mouse-up)"에 기반할 수 있다.
임의로, 선택 라인(606, 656)은 제1 지점 및 제2 지점을 포함한다.
임의로, 선택 라인(606, 656)은 제1 지점(604, 654)에서 시작하여 제2 지점(608, 658)에서 끝나는 일련의 지점들을 포함한다. 이 선택 라인은 실질적으로 직선(606)일 수 있거나, 곡선(656)일 수 있는 제1 지점 내지 제2 지점을 형성한다.
임의로, "마우스-다운" 이후 이지만 "마우스-업" 이벤트 이전에, 객체는 가장 최근의 커서 지점, 또는 터치 인터페이스가 사용되는 경우 터치 지점을 따라 병진할 수 있다. 이런 방식으로, 객체는 선택 라인(606, 656)을 따라 사용자 손가락 또는 커서를 따를 수 있다.
투영 라인은 선택 라인(606, 656)의 일련의 지점들의 선형 회귀에 의해 형성된 직선 투영 라인(또한 본원에서 투영 벡터 또는 병진 벡터라 지칭됨)(610, 660)을 형성할 수 있다. 투영 라인은 선택 라인의 제2 지점에서 시작될 수 있다. 투영 라인(610, 660)은 디스플레이 디바이스 스크린(612, 662)의 에지 상의 하나의 지점에서 끝난다. 도 6a는 활성 영역(602a)과 교차하는 투영 라인(610)을 도시한다. 도 6b는 활성 영역(652a)과 교차하지 않는 투영 라인(660)을 도시한다.
임의로, 투영 라인은 곡선 투영 라인(또한 본원에서는 병진 벡터라 지칭됨)일 수 있다. 이 경우, 회귀는 다항식, 지수식, 로그 또는 이런 피팅(fitting)을 수행하는 데 사용되는 임의의 다른 수학적 모델일 수 있다.
임의로, 선택 라인(606, 656)에 기반하여, 입력 속도 벡터는 선택 라인의 1 차 도함수를 찾는 것에 의해 결정될 수 있다. 병진 벡터를 따른 객체의 병진은 입력 속도 벡터에 기반할 수 있다. 예컨대, 사용자의 입력에 기반하여, 객체는 선택 라인을 따라 사용자 입력의 속도에 비례하는 속도로 이동할 수 있다.
임의로, 선택 라인(606, 656)에 기반하여, 입력 가속도 벡터는 선택 라인의 2 차 도함수를 찾는 것에 의해 결정될 수 있다. 병진 벡터를 따른 객체의 병진은 입력 가속도 벡터에 기반할 수 있다. 예컨대, 사용자의 입력에 기반하여, 객체는 선택 라인을 따라 사용자 입력의 속도에 비례하는 가속도로 이동할 수 있다.
제1 디스플레이 디바이스로부터 제2 디스플레이 디바이스로 객체를 전송하기 위한 시스템(700)을 예시하는 도 7을 참조한다. 시스템(700)은 3 개의 디스플레이 디바이스(702a, 702b, 및 702c), 및 디스플레이 디바이스(702b) 상의 2 개의 활성 영역(704a 및 704b)을 포함한다. 단지 2 개의 디스플레이 디바이스가 있을 수 있지만, 3 개보다 훨씬 많은, 심지어 아마도 수백 또는 수천 개가 상상될 수 있다. 활성 영역(704a)은 디스플레이 디바이스(702a)와 연관되고 활성 영역(704b)은 디스플레이 디바이스(702c)와 연관된다. 디스플레이 디바이스(702b)와 연관된 객체(도시되지 않음)는 객체를 활성 영역(704a)으로 병진시키는 사용자 입력을 제공함으로써 디스플레이 디바이스(702a)로 전송될 수 있다. 유사하게, 디스플레이 디바이스(702b)와 연관된 객체는 객체를 활성 영역(704b)으로 병진시키는 사용자 입력을 제공함으로써 디스플레이 디바이스(702c)로 전송될 수 있다.
디스플레이 디바이스에서 멀티-스크린 상호작용의 방법을 예시하는 흐름도(800)를 예시하는 도 8을 참조한다. 802에서, 복수의 디스플레이 디바이스가 본원에 개시된 바와 같이 제공된다. 디스플레이 디바이스들은 단일 교실, 멀티 교실, 또는 심지어 지리적으로 분산된 멀티 교실에 제공될 수 있다. 디스플레이 디바이스들의 사용자들은 교사들, 학생들, 관리자들, 임원들, 직원들, 또는 다른 사람과 상호작용하는 임의의 개인을 포함할 수 있다.
804에서, 객체는 제1 디바이스와 연관된 제1 디스플레이에 표시된다. 객체는 사용자에 의해 생성되거나, 다른 사용자로부터 수신되거나, 자동으로 생성되거나, 원격 서버에 의해 제공되는 식일 수 있다. 객체는 제1 디스플레이 디바이스의 스크린에 디스플레이된다. 객체는 본원에 설명된 바와 같은 콘텐츠를 가질 수 있고, 디스플레이 디바이스 상에 객체의 디스플레이는 콘텐츠에 적합한 이미지의 디스플레이, 비디오의 재생, 오디오의 재생, 또는 미디어 재생을 포함할 수 있다. 재생은 자동으로 시작될 수 있다.
806에서, 디스플레이 디바이스는 선택 라인의 시작을 나타내는 제1 지점을 포함하는 일련의 지점들을 구성하는 사용자 입력을 수신한다. 제1 지점은, 마우스 버튼이 눌려지는 "마우스-다운" 이벤트 또는 사용자의 손가락 또는 스타일러스가 표면과 접촉하기 시작하는 터치 인터페이스에 대응할 수 있다. 일련의 지점들은, 마우스 버튼을 놓는 "마우스-업" 이벤트 또는 사용자의 손가락 또는 스타일러스가 표면과의 접촉을 끝내는 터치 인터페이스에 대응하는 제2 지점을 더 포함할 수 있다. 입력 제스처는 실질적으로 직선인 선택 라인을 포함할 수 있거나 선택 라인은 곡선 라인일 수 있다. 선택 라인은 도 6a-도 6b에서 위에서 더 상세히 설명된다.
임의로, 객체는, 선택 라인을 따라 사용자 커서 또는 손가락/스타일러스를 따르기 위해 "마우스-다운" 이벤트 후 및 "마우스-업" 이벤트 전에 병진할 수 있다.
808에서, 선택 라인(또는 선택 벡터)은 일련의 지점들의 제1 지점과 제2 지점 사이에서 결정될 수 있다. 이것은 이 2 개의 지점에 기반하는 선택 라인을 근사화할 수 있다.
임의로, 808에서 결정된 선택 라인은 단순히 사용자의 입력 제스처로부터 수신된 일련의 지점들일 수 있다.
810에서, 투영 라인(또는 투영 벡터)은 선택 라인에 기반하여 결정될 수 있다. 투영 라인의 결정은 도 6a-도 6b에서 위에서 더 상세히 논의된다. 투영 라인은 제1 지점 및 제2 지점에만 기반하여 결정될 수 있다. 투영 라인은 일련의 지점들에 기반하여 결정될 수 있고, 지점들의 회귀에 기반하여 결정될 수 있다.
임의로, 806-814는 "마우스-다운" 이벤트 이후 및 "마우스-업" 이벤트 이전에 일련의 지점들의 각각의 지점에 대해 반복적으로 적용될 수 있다.
812에서, 객체는 투영 라인을 따라 병진된다. 객체는 x 및 y 좌표를 갖는 지점에 디스플레이된다. 병진은 객체 디스플레이 지점을 투영 라인 상의 연속 지점으로 반복적으로 변경하고, 병진이 발생할 때 객체의 디스플레이를 업데이트하는 것을 포함할 수 있다.
이 병진은 애니메이션화될 수 있고 객체는 스크린에 걸쳐 실질적으로 부드럽게 병진할 수 있다. 임의로, 병진은 애니메이션화되지 않고 객체는 단순히 사라지고 병진이 스크린에 보이지 않은 상태로 다시 나타날 수 있다.
병진은 활성 영역을 포함하는, 스크린의 상이한 영역에 객체를 "던지는 것"과 유사할 수 있다.
814에서, 객체의 위치와 치수들은, 객체와 활성 영역 사이에 교차가 있는지를 결정하는 데 사용된다. 교차는 객체 영역과 활성 영역의 겹침으로 정의된다. 교차가 없으면, 객체의 병진이 계속될 수 있다.
816에서, 객체와 활성 영역의 교차가 있는 경우, 객체는 제2 디스플레이 디바이스와 연관될 수 있다. 이 연관은 제2 디스플레이 디바이스에 대한 새로운 참조를 특정하기 위해 객체 메타데이터를 업데이트하는 것을 포함할 수 있다. 이것은 객체가 디스플레이 디바이스를 고유하게 식별하는 디스플레이 디바이스에 대한 참조(id)를 추적함으로써 달성될 수 있다.
임의로, 연관은 객체를 참조하는 디스플레이 디바이스에서의 연관을 대신 참조할 수 있다. 이것은 디스플레이 디바이스가 객체를 고유하게 식별하는 객체에 대한 참조(id)를 추적함으로써 달성될 수 있다.
임의로, 객체는 디스플레이 디바이스에 대한 참조(id)를 가질 수 있고 디스플레이 디바이스는 객체에 대한 참조(id)를 가질 수 있다. 디스플레이 디바이스 id는 연관된 디스플레이 디바이스를 고유하게 식별하고, 객체 id는 객체를 고유하게 식별한다.
임의로, 객체는 직렬화될 수 있다(즉, 제1 디스플레이 디바이스의 메모리에 있는 객체는 상태가 보존되도록 포맷된 텍스트 또는 이진 문자열로 병진됨). 제2 디스플레이 디바이스에 의해 직렬화된 객체를 수신하면, 객체는 구체화될 수 있다(즉, 상태가 보존되도록 텍스트 또는 이진 문자열에서 제2 디스플레이 디바이스의 메모리로 병진됨).
임의로, 객체와 제2 디스플레이 디바이스의 연관을 트리거하기 위해 서버에 API 호출이 이루어질 수 있다.
임의로, 객체가 스크린의 에지와 교차하는 경우, 또는 다른 경우, 디스플레이 디바이스는 객체의 방향을 변경하고 "바운스(bounce)"할 수 있다. 2 개의 객체가 교차하는 경우, 객체들은 각각의 객체의 계산된 모멘텀과 충돌에 대한 모멘텀 기반 보존에 기반하여 결과적인 방향과 속력을 결정할 수 있다.
제1 디스플레이 디바이스로부터 제2 디스플레이 디바이스로 객체를 전송하기 위한 방법에 대한 흐름도(900)를 예시하는 도 9를 참조한다. 900에 개시된 본 방법은 하나의 디스플레이 디바이스에서 다른 디스플레이 디바이스로 콘텐츠를 갖는 객체를 전송하도록 동작가능하다.
902에서, 제1 디스플레이 디바이스 및 제2 디스플레이 디바이스가 제공된다. 이런 디스플레이 디바이스들은 회의실이나 교실에 함께 배치되어 2 명 이상의 사람이 사용하거나, 2 명 이상의 사용자가 있는 2 개 이상의 위치에 배포될 수 있다.
904에서, 객체는 제1 디스플레이 디바이스 상에 디스플레이된다. 객체는 본원에 개시된 바와 같은 오디오, 비디오 또는 이미지 콘텐츠를 포함하는 미디어를 포함할 수 있다. 객체를 디스플레이하거나 표시하는 것은 미디어의 재생을 개시하는 것을 의미할 수 있다.
906에서, 디스플레이된 객체는 일련의 지점들을 포함하는 사용자 입력 제스처를 수신하고, 제1 지점은 디스플레이 상의 객체 내에 있다. 객체는 사용자 입력 동작들에 응답한다. 단계들(906-914)은, 사용자가 선택 라인을 드로잉할 때 반복적으로 수행될 수 있다.
908에서, 객체는 사용자 입력 제스처로부터의 일련의 지점들에 기반하여 선택 벡터를 결정할 수 있다. 본원에 개시된 바와 같이, 이 선택 벡터는 제1 지점 및 제2 지점일 수 있고, 제1 지점은 사용자 입력의 시작을 나타내고 제2 지점은 사용자 입력의 끝을 나타낸다. 선택 벡터는 대안적으로 제1 지점, 제2 지점 및 일련의 지점들일 수 있고, 실질적으로 직선이거나 곡선일 수 있다.
910에서, 객체는 선택 벡터의 투영 벡터를 결정할 수 있다. 도 6a-도 6b에 설명된 바와 같이, 투영은 일련의 지점들의 선형 회귀에 기반할 수 있다.
912에서, 객체는 투영 벡터에 기반하여 제1 디스플레이 디바이스 상에서 병진될 수 있다. 이 병진은 객체의 지점(x 및 y 좌표 기반)을 투영 라인의 연속 지점으로 이동시키는 것을 포함할 수 있다.
914에서, 객체는 활성 영역과 스크린 상의 객체의 교차가 있었는지 검출할 수 있다. 이런 교차는 객체 영역과 활성 영역의 겹침으로 정의된다. 객체가 스크린의 에지와 교차하는 경우, 또는 다른 객체가 스크린의 에지와 교차하는 경우, 방향이 바뀌어 "바운스"될 수 있다. 2 개의 객체가 교차하는 경우, 객체들은 각각의 객체의 계산된 모멘텀과 충돌에 대한 모멘텀 기반 보존에 기반하여 결과적인 방향과 속력을 결정할 수 있다.
916에서, 객체가 활성 영역과 교차하면, 객체는 활성 영역과 연관된 제2 디스플레이 디바이스로 전송될 수 있다. 이것은 객체의 직렬화된 카피의 네트워크를 통한 전송, 및 제2 디스플레이 디바이스에서의 구체화를 포함할 수 있다.
임의로, 전송은 서버가 객체의 제2 디스플레이 디바이스로의 전송을 개시하는 것을 포함할 수 있다.
객체의 소프트웨어 컴포넌트 다이어그램(1000)인 도 10a를 참조한다. 객체들은 비디오 콘텐츠(1002), 오디오 콘텐츠(1004), 이미지 콘텐츠(1006), 객체 메타데이터(1010)(또한 본원에서는 속성 또는 객체 속성이라 지칭됨), 청중 기준(1012), 상태(1008), 하나 이상의 디스플레이 디바이스(1014)와의 연관(또는 참조들), 및 프로그램 코드(1016)를 포함하는 콘텐츠(또한 본원에서는 미디어라 지칭됨)를 가질 수 있다. 객체들은 복수의 미디어 콘텐츠 항목 및 복수의 객체 메타데이터를 포함할 수 있다. 객체들은 슬라이드(slide)들, 음악 작곡들, 공유 편집에 사용가능한 미디어 등과 같은 교육 정보를 포함할 수 있다. 객체들은 미디어의 조합을 포함할 수 있다. 단일 객체에서 미디어 조합이 동시에 재생될 수 있다. 1 개 초과의 객체를 갖는 디스플레이 디바이스는 차례로 1 개 초과의 객체로부터 동시에 재생할 수 있다. 객체들은 디스플레이 디바이스의 메모리에 저장되고 디스플레이 디바이스의 프로세서에 의해 실행될 수 있는 명령어들(또는 프로그램 코드)(1016)을 포함할 수 있다. 객체들은 디스플레이 디바이스에서의 기능을 설명하는 프로그램 코드(1016)를 가질 수 있고, 예컨대, 프로그램 코드는 상호작용 테스트가 1 개의 디스플레이 디바이스에서 다른 디스플레이 디바이스로 전송되게 할 수 있다. 객체는 디스플레이 디바이스에서 다른 타입의 객체와 함께 디스플레이될 때 특정 상호작용이 발생하게 하는 프로그램 코드(1016)를 가질 수 있다.
미디어는 텍스트 콘텐츠(도시되지 않음), 비디오 콘텐츠(1002), 이미지 콘텐츠(1006), 오디오 콘텐츠(1004), 애니메이션화된 콘텐츠, 음악 표기 콘텐츠, 교육 콘텐츠(예컨대 퀴즈) 또는 임의의 다른 콘텐츠 중 임의의 콘텐츠를 포함할 수 있다. 미디어 콘텐츠는 이진 데이터 표현들, 벡터 기반 표현들, 또는 임의의 다른 데이터 저장 표현들을 포함하는 상이한 형태로 객체에 저장될 수 있다. 객체의 미디어는 객체의 인스턴스에 저장되거나, 원격 서버를 참조하여 참조될 수 있다. 미디어가 원격 서버에 참조될 수 있는 경우, 콘텐츠는 서버에서 스트리밍될 수 있다.
객체는 하나 이상의 다른 객체(도시되지 않음)에 대한 참조를 가질 수 있고, 다른 객체들을 참조하여 함께 링크될 수 있다. 이런 객체들의 링킹은 하나의 디스플레이 디바이스에서 이루어진 변경들이 복수의 디스플레이 디바이스에 걸쳐 동시에 적용될 수 있게 할 수 있다. 객체는 또한 하나 이상의 디스플레이 디바이스에 대한 참조를 가질 수 있고, 이는 콘텐츠, 예컨대 비디오 콘텐츠의 전달이 복수의 디스플레이 디바이스에서 동시에 재생되게 할 수 있다. 오디오 및 비디오 콘텐츠는 링크된 객체에서 다른 링크된 객체로 스트리밍될 수 있다.
객체의 직렬화된 표현(1050)을 예시하는 도 10b를 참조한다. 직렬화된 표현(1050)은 JSON(도시됨), YAML, XML, 또는 임의의 적합한 마크업 언어의 형태일 수 있다. 직렬화된 표현은 예컨대 비디오 콘텐츠, 이미지 콘텐츠 또는 오디오 콘텐츠의 이진 데이터 표현들을 포함할 수 있다. 1050의 직렬화된 예는 다양한 메타 데이터, 청중 기준, 상태, 및 콘텐츠를 도시한다. 직렬화된 표현은 객체가 전송될 때 객체 상태가 제1 및 제2 디스플레이 디바이스 사이에서 보존되게 객체가 프로그램가능하게 구체화될 수 있도록 제2 디스플레이 디바이스에 의해 판독가능하다.
디스플레이 디바이스의 스크린 상의 객체 병진(1100, 1130, 1160)의 그래프 표현들을 예시하는 도 11a-도 11c를 참조한다. 도 11a에서, 객체는 사용자 입력에 의해 결정되지 않는 고정되고 일정한 속도로 스크린 상에서 병진될 수 있다. 도 11b에서, 객체는 사용자 입력에 기반하여 결정된 일정한 속도로 스크린 상에서 병진될 수 있다. 도 11b의 기울기가 더 높다는 것이 관찰된다. 도 11c에서, 객체는 사용자 입력의 가속도에 기반하여 결정된 증가하는 속도로 스크린 상에서 병진될 수 있다.
복수의 연관된 객체(1208, 1210, 및 1212)를 갖는 사용자 인터페이스(1200)를 예시하는 도 12를 참조한다. 이런 객체들은 사용자의 결정에 기반하여 연관(또는 링크)되었거나 자동으로 연관될 수 있다. 디스플레이 디바이스들(1202a, 1202b 및 1202c)은 각각 링크된 객체를 표시한다. 그러므로, 객체들(1208, 1210 및 1212)의 디스플레이는 동일한 콘텐츠일 수 있다. 예컨대, 웃는 얼굴이 도 12에 디스플레이되는 동안, 링크된 콘텐츠는 비디오 콘텐츠, 오디오 콘텐츠 등을 포함할 수 있고 모두 3 개의 디스플레이 디바이스에서의 재생은 실질적으로 동기화될 수 있다.
연관 또는 링킹은 분산 방식으로 수행될 수 있고, 여기서 각각의 디스플레이 디바이스의 각각의 객체 인스턴스는 다른 디스플레이 디바이스의 적어도 하나의 다른 객체 인스턴스에 대한 참조를 가질 수 있다. 도 12에서, 객체 인스턴스(1208)는 객체 인스턴스(1212)에 대한 참조(1204a)를 갖고, 객체 인스턴스(1212)는 객체 인스턴스(1210)에 대한 참조(1204c)를 가지며 그리고 객체 인스턴스(1210)는 객체 인스턴스(1208)에 대한 객체 참조(1204b)를 갖는다. 이런 참조들은, 객체 인스턴스가 자신을 참조하는 객체들의 목록을 유지하도록 양방향성일 수 있다.
임의로, 연관 또는 링킹은 서버에 의해 중앙집중 방식으로 수행될 수 있고, 참조들 또는 연관들은 서버의 API를 사용하여 생성, 판독, 업데이트 또는 파괴될 수 있다.
별개의 청중 콘텐츠를 갖는 복수의 연관 객체(1300)를 갖는 사용자 인터페이스를 예시하는 도 13을 참조한다. 제1 디스플레이 디바이스(1302a)는 제1 객체(1306)를 표시하고, 제2 디스플레이 디바이스(1302b)는 제2 객체(1308)를 표시하고, 그리고 제3 디스플레이 디바이스(1302c)는 제3 객체(1310)를 표시한다. 객체들(1306, 1308 및 1310)은 서로 연관되거나 링크될 수 있다. 제1 디스플레이 디바이스(1302a)는 나이, 교육 수준, 지리적 위치 등과 같은 인구 통계학 정보에 기반하여 연관된 제1 청중 프로파일을 가질 수 있다. 유사하게, 디스플레이 디바이스(1302b 및 1302c)는 각각 제2 청중 프로파일 및 제3 청중 프로파일을 가질 수 있고, 제1, 제2 및 제3 청중 프로파일들은 각각 고유하다. 객체(1306)는 디스플레이 디바이스(1302a)의 청중 프로파일에 응답하고, 제1 청중 프로파일에 기반하여 콘텐츠를 디스플레이한다. 객체(1308)는 디스플레이 디바이스(1302b)의 청중 프로파일에 응답하고, 제2 청중 프로파일에 기반하여 콘텐츠를 디스플레이한다. 객체(1310)는 디스플레이 디바이스(1302c)의 청중 프로파일에 응답하고, 제3 청중 프로파일에 기반하여 콘텐츠를 디스플레이한다. 객체의 청중 기준은 디스플레이 디바이스에서 주어진 청중 프로파일에 대해 디스플레이될 콘텐츠를 설명할 수 있다.
본원에 설명된 예시적인 실시예들의 완전한 이해를 제공하기 위해 다수의 특정 세부사항이 설명된다는 것이 이해될 것이다. 그러나, 본원에 설명된 실시예들이 이런 특정 세부사항들 없이 실시될 수 있음이 통상의 기술자들에 의해 이해될 것이다. 다른 예들에서, 잘-알려진 방법들, 절차들 및 컴포넌트들은 본원에 설명된 실시예들을 모호하게 하지 않기 위해 상세히 설명되지 않았다. 또한, 이 설명 및 도면들은 어떤 식으로든 본원에 설명된 실시예들의 범위를 제한하는 것으로 간주되어서는 안되며, 단지 본원에 설명된 다양한 실시예들의 구현을 설명하는 것으로 간주되어야 한다.
본원에 사용될 때 "실질적으로", "약" 및 "대략"과 같은 정도의 용어들이 최종 결과가 크게 변경되지 않도록 수정된 용어의 합리적인 편차량을 의미한다는 것이 주목되어야 한다. 이 편차가 수정된 용어의 의미를 무효화하지 않으면 이런 정도의 용어들은 수정된 용어의 편차를 포함하는 것으로 해석되어야 한다.
또한, 본원에 사용된 바와 같이, "및/또는"이라는 단어는 포괄적-또는을 나타내는 것으로 의도된다. 즉, "X 및/또는 Y"는 예컨대, X 또는 Y 또는 둘 모두를 의미하는 것으로 의도된다. 추가 예로서, "X, Y 및/또는 Z"는 X 또는 Y 또는 Z 또는 이들의 임의의 조합을 의미하는 것으로 의도된다.
본원에 설명된 시스템들 및 방법들의 실시예들은 하드웨어 또는 소프트웨어, 또는 둘 모두의 조합으로 구현될 수 있다. 이런 실시예들은 프로그램가능 컴퓨터들에서 실행되는 컴퓨터 프로그램들로 구현될 수 있고, 각각의 컴퓨터는 적어도 하나의 프로세서, 데이터 저장 시스템(휘발성 메모리 또는 비-휘발성 메모리 또는 다른 데이터 엘리먼트들 또는 이들의 조합을 포함함), 및 적어도 하나의 통신 인터페이스를 포함한다. 예컨대 제한 없이, 프로그램가능 컴퓨터들(아래에서 컴퓨팅 디바이스들이라 지칭됨)은 서버, 네트워크 기기, 임베디드 디바이스, 컴퓨터 확장 모듈, 개인용 컴퓨터, 랩톱, 퍼스널 데이터 어시스탄트, 휴대 전화, 스마트-폰 디바이스, 태블릿 컴퓨터, 무선 디바이스 또는 본원에 설명된 방법들을 수행하도록 구성될 수 있는 임의의 다른 컴퓨팅 디바이스일 수 있다.
일부 실시예들에서, 통신 인터페이스는 네트워크 통신 인터페이스일 수 있다. 실시예들이 결합된 실시예들에서, 통신 인터페이스는 프로세스간 통신(inter-process communication)(IPC)을 위한 것들과 같은 소프트웨어 통신 인터페이스일 수 있다. 또 다른 실시예들에서, 하드웨어, 소프트웨어, 및 이들의 조합으로 구현된 통신 인터페이스들의 조합이 있을 수 있다.
프로그램 코드는 본원에 설명된 기능들을 수행하고 출력 정보를 생성하기 위해 입력 데이터에 적용될 수 있다. 출력 정보는 알려진 방식으로 하나 이상의 출력 디바이스에 적용된다.
각각의 프로그램은 컴퓨터 시스템과 통신하기 위해, 높은 레벨의 절차적 또는 객체 지향 프로그래밍 및/또는 스크립팅 언어, 또는 둘 모두로 구현될 수 있다. 그러나, 프로그램들은 원하는 경우 어셈블리 또는 기계어로 구현될 수 있다. 어쨌든, 언어는 컴파일링되거나 해석된 언어일 수 있다. 각각의 그런 컴퓨터 프로그램은 일반 또는 특수 목적 프로그램가능 컴퓨터에서 판독가능한 저장 매체 또는 디바이스(예컨대, ROM, 자기 디스크, 광학 디스크)에 저장되어, 저장 매체 또는 디바이스가 본원에 설명된 절차들을 수행하기 위해 컴퓨터에 의해 판독될 때 컴퓨터를 구성 및 동작시킨다. 시스템의 실시예들은 또한 컴퓨터 프로그램으로 구성된 비-일시적 컴퓨터-판독가능 저장 매체로서 구현되는 것으로 고려될 수 있고, 여기서 그렇게 구성된 저장 매체는 본원에 설명된 기능들을 수행하기 위해 특정 및 미리 정의된 방식으로 컴퓨터가 동작하게 한다.
또한, 설명된 실시예들의 시스템, 프로세스들 및 방법들은 하나 이상의 프로세서에 대한 컴퓨터 사용가능 명령어를 보유하는 컴퓨터 판독가능 매체를 포함하는 컴퓨터 프로그램 제품으로 배포될 수 있다. 매체는 하나 이상의 디스켓, 콤팩트 디스크, 테이프, 칩, 유선 송신, 위성 송신, 인터넷 송신 또는 다운로드, 자기 및 전자 저장 매체, 디지털 및 아날로그 신호 등을 포함한 다양한 형태로 제공될 수 있다. 컴퓨터 사용가능 명령어들은 또한 컴파일링된 코드와 컴파일링되지 않은 코드를 포함하여 다양한 형태로 있을 수 있다.
다양한 실시예들은 단지 예로서 본 명세서에서 설명되었다. 첨부된 청구항들에 의해서만 제한되는 본 발명의 사상 및 범위를 벗어나지 않고 이런 예시적인 실시예들에 대해 다양한 수정 및 변경이 이루어질 수 있다. 또한, 도면들에 예시된 다양한 사용자 인터페이스에서, 예시된 사용자 인터페이스 텍스트 및 제어들이 단지 예들로서 제공되고 제한을 의미하지 않는다는 것이 이해될 것이다. 다른 적합한 사용자 인터페이스 엘리먼트들이 가능할 수 있다.
Claims (25)
- 멀티-디스플레이 상호작용을 위한 방법으로서,
- 복수의 디스플레이 디바이스를 제공하는 단계 ― 상기 복수의 디스플레이 디바이스는:
- 디스플레이,
- 입력 디바이스,
- 프로세서, 및
- 메모리를 포함함 ―;
- 제1 디스플레이 디바이스와 연관된 객체를 제1 디스플레이 상에 표시하는 단계;
- 상기 객체에 대한 제1 지점에서 시작하여 제2 지점에서 끝나는 입력 제스처를 수신하는 단계;
- 상기 제1 지점과 상기 제2 지점 사이의 선택 라인을 결정하는 단계;
- 상기 선택 라인에 기반하여 투영 라인을 결정하는 단계;
- 상기 투영 라인을 따라 상기 객체를 병진(translating)시키는 단계; 및
- 상기 객체가 복수의 활성 영역에서의 제1 활성 영역과 교차하는 경우, 상기 객체를 상기 제1 활성 영역에 대응하는 제2 디스플레이 디바이스와 연관시키고 상기 제2 디스플레이 상에 상기 객체를 표시하는 단계
를 포함하는, 방법. - 제1항에 있어서,
- 상기 제1 지점과 상기 제2 지점 사이의 입력 속도 벡터를 결정하고 상기 객체를 상기 입력 속도 벡터에 기반하여 병진시키는 단계를 더 포함하는, 방법. - 제2항에 있어서,
- 상기 제1 지점과 상기 제2 지점 사이의 입력 가속도 벡터를 결정하고 상기 객체를 상기 입력 가속도 벡터에 기반하여 병진시키는 단계를 더 포함하는, 방법. - 제3항에 있어서,
- 객체 질량 및 속도에 기반하여 상기 제2 지점에서의 객체 모멘텀을 결정하는 단계;
- 상기 객체 모멘텀에서 상기 객체를 상기 투영 라인을 따라 병진시키고 상기 객체가 병진함에 따라 상기 객체 모멘텀을 감소시키는 단계
를 더 포함하는, 방법. - 제4항에 있어서,
- 각각의 디스플레이 디바이스는 오디오 디바이스를 더 포함하고;
- 상기 객체는 오디오 콘텐츠 및 비디오 콘텐츠를 포함하고;
- 상기 객체를 표시하는 단계는
- 상기 디스플레이 디바이스 상에 상기 비디오 콘텐츠를 표시하는 단계, 및
- 상기 오디오 디바이스 상에서 상기 오디오 콘텐츠를 플레이하는 단계
를 더 포함하는, 방법. - 제5항에 있어서,
- 제1 디스플레이 디바이스와 연관된 상기 객체를 수정하는 단계를 더 포함하는, 방법. - 제5항에 있어서,
- 제2 디스플레이 디바이스와 연관된 상기 객체를 수정하는 단계;
- 상기 객체에 대한 제3 지점에서 시작하여 제4 지점에서 끝나는 제2 입력 제스처를 수신하는 단계;
- 상기 제3 지점과 상기 제4 지점 사이의 제2 선택 라인을 결정하는 단계;
- 상기 제2 선택 라인에 기반하여 제2 투영 라인을 결정하는 단계;
- 상기 제2 투영 라인을 따라 상기 객체를 병진시키는 단계;
- 상기 객체가 복수의 활성 영역에서의 제2 활성 영역과 교차하는 경우, 상기 객체를 상기 제2 활성 영역에 대응하는 상기 제1 디스플레이 디바이스와 연관시키고 상기 제1 디스플레이 상에 상기 객체를 표시하는 단계
를 더 포함하는, 방법. - 제5항에 있어서,
- 복수의 옵션을 포함하는 상기 객체와 연관된 상호작용 필드;
- 상기 복수의 옵션에서의 선택에 대응하는 제2 입력 제스처를 수신하는 단계;
- 상기 선택에 기반하여 상기 상호작용 필드를 수정하는 단계; 및
- 상기 객체를 상기 제1 디스플레이 디바이스와 연관시키는 단계
를 더 포함하는, 방법. - 제7항에 있어서,
- 상기 제1 디스플레이 디바이스는 제1 청중 정보를 포함하고,
- 상기 제2 디스플레이 디바이스는 제2 청중 정보를 포함하고,
- 상기 객체는 제1 청중 콘텐츠 및 제2 청중 콘텐츠를 포함하고,
- 상기 객체를 표시하는 단계는
- 상기 제1 청중 정보에 기반하여 상기 제1 디스플레이 상에 상기 제1 청중 콘텐츠를 표시하는 단계;
- 상기 제2 청중 정보에 기반하여 상기 제2 디스플레이 상에 상기 제2 청중 콘텐츠를 표시하는 단계
를 더 포함하는, 방법. - 멀티-스크린 상호작용 시스템으로서,
- 객체;
- 복수의 디스플레이 디바이스
를 포함하고, 각각의 디스플레이 디바이스는:
- 상기 객체를 저장하는 메모리,
- 디스플레이,
- 프로세서, 및
- 입력 제스처를 수신하는 입력 디바이스를 포함하고;
- 제1 디스플레이 디바이스의 디스플레이는 상기 객체를 표시하고,
- 제1 디스플레이 디바이스의 상기 프로세서는:
- 상기 디스플레이 상의 지점에서의 제스처에 대응하는 복수의 지점:
- 제스처의 시작에 대응하는 상기 복수의 지점에서의 제1 지점,
- 제스처의 완료에 대응하는 상기 복수의 지점에서의 제2 지점
을 상기 입력 디바이스로부터 수신하고;
- 상기 제1 지점으로부터 상기 제2 지점까지 형성된 선택 벡터를 결정하고;
- 상기 선택 벡터에 기반하여 투영 벡터를 결정하고;
- 상기 투영 벡터를 따라 상기 객체를 병진시키고;
- 상기 객체가 복수의 활성 영역에서의 제1 활성 영역과 교차하는지를 결정하고, 만약 교차하면, 상기 객체를 상기 제1 활성 영역에 대응하는 제2 디스플레이 디바이스에 보내도록 구성되고;
- 제2 디스플레이 디바이스의 상기 프로세서는:
- 상기 제1 디스플레이 디바이스로부터 상기 객체를 수신하고;
- 상기 제2 디스플레이 디바이스의 메모리에 상기 객체를 저장하고;
- 상기 객체를 표시하도록 상기 제2 디스플레이 디바이스의 디스플레이에게 명령하도록 구성되는, 시스템. - 제10항에 있어서,
- 상기 복수의 디스플레이 디바이스 각각이 오디오 디바이스를 더 포함하고;
- 상기 객체가 비디오 콘텐츠 및 오디오 콘텐츠를 더 포함하고;
- 상기 복수의 디스플레이 디바이스 각각의 프로세서가:
- 상기 디스플레이 상에 상기 비디오 콘텐츠를 표시하고;
- 상기 오디오 디바이스 상에서 상기 오디오 콘텐츠를 플레이하도록
추가로 구성되는 것을 더 포함하는, 시스템. - 제11항에 있어서,
- 상기 복수의 디스플레이 디바이스에서의 제1 디스플레이 디바이스의 상기 프로세서가:
- 상기 객체를 수정하도록
추가로 구성되는 것을 더 포함하는, 시스템. - 제12항에 있어서,
- 상기 복수의 디스플레이 디바이스에서의 제2 디스플레이 디바이스의 상기 프로세서가:
- 상기 객체를 수정하도록
추가로 구성되는 것을 더 포함하는, 시스템. - 제13항에 있어서,
- 상기 복수의 디스플레이 디바이스에서의 제2 디스플레이 디바이스의 상기 프로세서가:
- 상기 객체를 상기 제1 디스플레이 디바이스에 보내도록 추가로 구성되고;
- 상기 복수의 디스플레이 디바이스에서의 제1 디스플레이 디바이스의 상기 프로세서가:
- 상기 제2 디스플레이 디바이스로부터 상기 객체를 수신하도록 추가로 구성되는
것을 더 포함하는, 시스템. - 멀티-스크린 상호작용 시스템의 제1 디스플레이 디바이스로부터 제2 디스플레이 디바이스로 객체를 전송하는 방법으로서,
- 제1 디스플레이 디바이스 및 제2 디스플레이 디바이스를 제공하는 단계;
- 상기 제1 디스플레이 디바이스 상에 객체를 표시하는 단계;
- 일련의 지점들을 포함하는 입력 제스처를 수신하는 단계;
- 상기 일련의 지점들에 기반하여 선택 벡터를 결정하는 단계;
- 상기 선택 벡터의 투영 벡터를 결정하는 단계;
- 상기 투영 벡터에 기반하여 상기 제1 디스플레이 디바이스 상에서 상기 객체를 병진시키는 단계;
- 상기 제1 디스플레이 디바이스 상의 제1 활성 영역과 상기 객체의 교차를 검출하는 단계;
- 상기 제1 디스플레이 디바이스로부터 상기 제1 활성 영역과 연관된 상기 제2 디스플레이 디바이스로 상기 객체를 전송하는 단계
를 포함하는, 방법. - 제15항에 있어서, 상기 투영 벡터는 입력 속도 벡터를 더 포함하고, 상기 병진 벡터에 기반하여 투영 벡터를 결정하는 단계는 상기 선택 벡터에 기반하여 병진 속도 벡터를 결정하는 단계를 더 포함하는, 방법.
- 제16항에 있어서, 상기 병진 벡터는 입력 가속도 벡터를 더 포함하고, 상기 병진 벡터의 투영 벡터를 결정하는 단계는 상기 선택 벡터에 기반하여 병진 가속도 벡터를 결정하는 단계를 더 포함하는, 방법.
- 제17항에 있어서,
- 상기 객체의 모멘텀을 결정하는 단계;
- 상기 모멘텀에 기반하여 상기 객체를 병진시키고 상기 객체가 병진함에 따라 상기 객체 모멘텀을 감소시키는 단계
를 더 포함하는, 방법. - 제18항에 있어서,
- 상기 객체가 오디오 콘텐츠 및 비디오 콘텐츠를 더 포함하고;
- 상기 제1 디스플레이 디바이스 및 상기 제2 디스플레이 디바이스가 오디오 디바이스를 더 포함하고;
- 상기 객체를 표시하는 단계가 상기 비디오 콘텐츠를 표시하고 상기 디스플레이 디바이스의 오디오 디바이스 상에서 상기 오디오 콘텐츠를 플레이하는 단계를 더 포함하고;
- 상기 제1 디스플레이 디바이스로부터 상기 제2 디스플레이 디바이스로 상기 객체를 전송하는 단계가 상기 제1 디스플레이 디바이스로부터 상기 제2 디스플레이 디바이스로 상기 오디오 콘텐츠의 플레이를 전송하는 단계를 더 포함하는 것을
더 포함하는, 방법. - 제19항에 있어서,
- 상기 객체가 상태를 더 포함하는 것을 더 포함하는, 방법. - 제20항에 있어서,
- 상기 제1 디스플레이 디바이스 및 상기 제2 디스플레이 디바이스가 네트워크 통신하고, 상기 제1 디스플레이 디바이스로부터 상기 제2 디스플레이 디바이스로 상기 객체를 전송하는 단계가 상기 객체를 직렬화하는 단계, 상기 직렬화된 객체를 상기 네트워크 통신을 사용하여 상기 제2 디스플레이 디바이스에 전송하는 단계, 및 상기 제2 디스플레이 디바이스에서 메모리에 상기 객체를 구체화(materializing)하는 단계를 더 포함하는 것을 더 포함하는, 방법. - 멀티-스크린 상호작용 시스템으로서,
- 제1 디스플레이 디바이스 ― 상기 제1 디스플레이 디바이스는:
- 디스플레이,
- 프로세서,
- 메모리,
- 사용자 입력 디바이스를 포함함 ―;
- 제2 디스플레이 디바이스 ― 상기 제2 디스플레이 디바이스는
- 디스플레이,
- 프로세서,
- 메모리,
- 사용자 입력 디바이스를 포함함 ―
를 포함하고;
- 상기 제1 디스플레이 디바이스의 메모리는 객체를 포함하고;
- 상기 제1 디스플레이 디바이스 및 상기 제2 디스플레이 디바이스는 네트워크 통신하고;
- 상기 객체는 상기 제1 사용자 디바이스의 디스플레이 상에 표시되고;
- 상기 제1 디스플레이 디바이스의 프로세서는:
- 상기 사용자 입력 디바이스로부터의 사용자 입력에 기반하여 투영 라인을 결정하고;
- 상기 투영 라인을 따라 상기 디스플레이 상에 표시된 상기 객체를 병진시키고;
- 상기 객체와 활성 영역 사이의 교차를 검출하고;
- 상기 객체를 직렬화하고;
- 상기 네트워크 통신을 사용하여 상기 직렬화된 객체를 상기 제2 디스플레이 디바이스에 통신하도록 동작가능하고;
- 상기 제2 디스플레이 디바이스의 프로세서는:
- 상기 네트워크 통신을 사용하여 상기 직렬화된 객체를 수신하고;
- 상기 직렬화된 객체로부터의 상기 객체를 메모리에 구체화하도록 동작가능한, 시스템. - 제22항에 있어서, 상기 제1 디스플레이 디바이스의 프로세서는:
- 입력 속도 벡터를 결정하고;
- 병진 속도 벡터를 결정하고;
- 입력 가속도 벡터를 결정하고;
- 병진 가속도 벡터를 결정하고;
- 객체 모멘텀을 결정하고;
- 상기 병진 속도 벡터, 상기 병진 가속도 벡터, 및 상기 객체 모멘텀에 기반하여 상기 객체를 병진시키도록
추가로 동작가능한, 시스템. - 제23항에 있어서,
- 상기 객체는 오디오 콘텐츠 및 비디오 콘텐츠를 더 포함하고;
- 상기 제1 디스플레이 디바이스 및 상기 제2 디스플레이 디바이스는 오디오 디바이스를 더 포함하고;
- 상기 객체는 상기 비디오 콘텐츠에 기반하여 상기 제1 디스플레이 디바이스 상에 표시되고;
- 상기 객체는 상기 오디오 콘텐츠에 기반하여 상기 제1 디스플레이 디바이스의 오디오 디바이스 상에서 플레이되고;
- 상기 객체를 직렬화하는 것은 상기 오디오 콘텐츠 및 상기 비디오 콘텐츠를 직렬화하는 것을 포함하는, 시스템. - 제24항에 있어서,
- 상기 객체는 상태를 더 포함하는, 시스템.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201862648414P | 2018-03-27 | 2018-03-27 | |
US62/648,414 | 2018-03-27 | ||
PCT/CA2019/050372 WO2019183726A1 (en) | 2018-03-27 | 2019-03-26 | Systems and methods for multi-screen display and interaction |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20210024991A true KR20210024991A (ko) | 2021-03-08 |
Family
ID=68059440
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020207030818A KR20210024991A (ko) | 2018-03-27 | 2019-03-26 | 멀티-스크린 디스플레이 및 상호작용을 위한 시스템들 및 방법들 |
Country Status (9)
Country | Link |
---|---|
US (1) | US11216076B2 (ko) |
JP (1) | JP2021519482A (ko) |
KR (1) | KR20210024991A (ko) |
CN (1) | CN112384972A (ko) |
AU (1) | AU2019243683A1 (ko) |
CA (1) | CA3095323A1 (ko) |
DE (1) | DE112019001554T5 (ko) |
GB (1) | GB2587095B (ko) |
WO (1) | WO2019183726A1 (ko) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111381791B (zh) * | 2020-03-03 | 2023-03-21 | 安徽文香科技有限公司 | 一种交互***、方法、设备和存储介质 |
CN111352603A (zh) * | 2020-03-11 | 2020-06-30 | 北京文香信息技术有限公司 | 一种分屏显示方法、装置、终端及存储介质 |
US11689695B1 (en) | 2022-12-15 | 2023-06-27 | Northern Trust Corporation | Computing technologies for screensharing |
Family Cites Families (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8046701B2 (en) * | 2003-08-07 | 2011-10-25 | Fuji Xerox Co., Ltd. | Peer to peer gesture based modular presentation system |
US8681104B2 (en) * | 2007-06-13 | 2014-03-25 | Apple Inc. | Pinch-throw and translation gestures |
JP2012517061A (ja) * | 2009-02-04 | 2012-07-26 | キーレス システムズ リミテッド | データ入力システム |
US20110209101A1 (en) * | 2010-02-25 | 2011-08-25 | Hinckley Kenneth P | Multi-screen pinch-to-pocket gesture |
US20110209089A1 (en) * | 2010-02-25 | 2011-08-25 | Hinckley Kenneth P | Multi-screen object-hold and page-change gesture |
RU2609066C2 (ru) * | 2011-04-20 | 2017-01-30 | Конинклейке Филипс Н.В. | Управление элементом или изделием на основе жестов |
US20140055400A1 (en) * | 2011-05-23 | 2014-02-27 | Haworth, Inc. | Digital workspace ergonomics apparatuses, methods and systems |
JP6257329B2 (ja) * | 2012-01-13 | 2018-01-10 | サターン ライセンシング エルエルシーSaturn Licensing LLC | 情報処理装置及び情報処理方法、並びにコンピューター・プログラム |
TWI637312B (zh) * | 2012-09-19 | 2018-10-01 | 三星電子股份有限公司 | 用於在透明顯示裝置顯示資訊的方法、顯示裝置及電腦可讀記錄媒體 |
KR102126292B1 (ko) * | 2012-11-19 | 2020-06-24 | 삼성전자주식회사 | 이동 단말에서 화면 표시 방법 및 이를 위한 이동 단말 |
JP6271960B2 (ja) * | 2012-11-26 | 2018-01-31 | キヤノン株式会社 | 情報処理システム |
DE102013007250A1 (de) * | 2013-04-26 | 2014-10-30 | Inodyn Newmedia Gmbh | Verfahren zur Gestensteuerung |
JP6255826B2 (ja) * | 2013-09-13 | 2018-01-10 | 株式会社リコー | システム、情報処理装置、画像表示方法、プログラム、記憶媒体 |
KR101647734B1 (ko) * | 2014-07-22 | 2016-08-23 | 엘지전자 주식회사 | 이동 단말기 및 그 제어방법 |
US10452195B2 (en) * | 2014-12-30 | 2019-10-22 | Samsung Electronics Co., Ltd. | Electronic system with gesture calibration mechanism and method of operation thereof |
KR20170004702A (ko) * | 2015-07-03 | 2017-01-11 | 엘지전자 주식회사 | 디스플레이 장치 및 제어 방법 |
KR101714207B1 (ko) * | 2015-09-02 | 2017-03-08 | 엘지전자 주식회사 | 이동 단말기 및 그의 제어 방법 |
US9788204B2 (en) * | 2015-10-31 | 2017-10-10 | Verizon Patent And Licensing Inc. | User authentication systems and methods |
WO2017098525A1 (en) * | 2015-12-09 | 2017-06-15 | Smartron India Private Limited | A system and method for controlling miracast content with hand gestures and audio commands |
US10867452B2 (en) * | 2016-03-25 | 2020-12-15 | Mental Canvas LLC | System and methods for conversion of 2D assets into 3D graphical scenes |
KR20180020517A (ko) * | 2016-08-18 | 2018-02-28 | 엘지전자 주식회사 | 이동 단말기 |
TWI794812B (zh) * | 2016-08-29 | 2023-03-01 | 日商半導體能源研究所股份有限公司 | 顯示裝置及控制程式 |
DE102017010425A1 (de) * | 2017-11-12 | 2019-05-16 | Wirtgen Gmbh | Selbstfahrende Baumaschine und Verfahren zum Steuern einer selbstfahrenden Baumaschine |
-
2019
- 2019-03-26 DE DE112019001554.0T patent/DE112019001554T5/de not_active Withdrawn
- 2019-03-26 WO PCT/CA2019/050372 patent/WO2019183726A1/en active Application Filing
- 2019-03-26 CN CN201980035384.1A patent/CN112384972A/zh active Pending
- 2019-03-26 GB GB2015492.8A patent/GB2587095B/en not_active Expired - Fee Related
- 2019-03-26 CA CA3095323A patent/CA3095323A1/en active Pending
- 2019-03-26 KR KR1020207030818A patent/KR20210024991A/ko not_active Application Discontinuation
- 2019-03-26 AU AU2019243683A patent/AU2019243683A1/en not_active Abandoned
- 2019-03-26 JP JP2021501060A patent/JP2021519482A/ja not_active Withdrawn
-
2020
- 2020-09-25 US US17/031,908 patent/US11216076B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
DE112019001554T5 (de) | 2021-01-14 |
US20210208686A1 (en) | 2021-07-08 |
WO2019183726A1 (en) | 2019-10-03 |
JP2021519482A (ja) | 2021-08-10 |
GB2587095B (en) | 2023-02-01 |
CN112384972A (zh) | 2021-02-19 |
GB2587095A (en) | 2021-03-17 |
US11216076B2 (en) | 2022-01-04 |
CA3095323A1 (en) | 2019-10-03 |
AU2019243683A1 (en) | 2020-11-19 |
GB202015492D0 (en) | 2020-11-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10596478B2 (en) | Head-mounted display for navigating a virtual environment | |
US10403050B1 (en) | Multi-user virtual and augmented reality tracking systems | |
US9656168B1 (en) | Head-mounted display for navigating a virtual environment | |
CN108463784B (zh) | 用于交互式演示控制的***和方法 | |
US11216076B2 (en) | Systems and methods for multi-screen interaction | |
US11266919B2 (en) | Head-mounted display for navigating virtual and augmented reality | |
Gumienny et al. | Tele-board: Enabling efficient collaboration in digital design spaces | |
US20130038674A1 (en) | System and method for distributing and interacting with images in a network | |
US20140282066A1 (en) | Distributed, interactive, collaborative, touchscreen, computing systems, media, and methods | |
JP2014102664A (ja) | コンテンツ作成・記録・再生システム | |
US11262885B1 (en) | Multi-gesture context chaining | |
Fritsch et al. | Ink: designing for performative literary interactions | |
US20170201721A1 (en) | Artifact projection | |
Hensen et al. | ImPres: an immersive 3D presentation framework for mixed reality enhanced learning | |
US9513776B2 (en) | Providing wireless control of a visual aid based on movement detection | |
Deac et al. | Implementation of a Virtual Reality Collaborative Platform for Industry 4.0 Offices | |
US20240211092A1 (en) | Systems and methods of virtualized systems on electronic devices | |
Chen | Scaling Computer Science Education Through Live Coding and Streaming Systems | |
Cowlyn | Spatial embodied augmented reality: design of AR for spatial productivity applications | |
Pellolio | SAGEBoard: a Whiteboard for Large Multitouch Displays | |
Sommool | A Gesture-based Presentation System for Smart Classroom using Kinect |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
WITB | Written withdrawal of application |