KR101116552B1 - 마우스 제스처 기능을 포함하는 웹페이지를 제공하는 시스템 및 방법 - Google Patents

마우스 제스처 기능을 포함하는 웹페이지를 제공하는 시스템 및 방법 Download PDF

Info

Publication number
KR101116552B1
KR101116552B1 KR1020110121855A KR20110121855A KR101116552B1 KR 101116552 B1 KR101116552 B1 KR 101116552B1 KR 1020110121855 A KR1020110121855 A KR 1020110121855A KR 20110121855 A KR20110121855 A KR 20110121855A KR 101116552 B1 KR101116552 B1 KR 101116552B1
Authority
KR
South Korea
Prior art keywords
web page
module
user terminal
movement trajectory
pointer
Prior art date
Application number
KR1020110121855A
Other languages
English (en)
Other versions
KR20120001711A (ko
Inventor
윤흥기
Original Assignee
엔에이치엔(주)
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 엔에이치엔(주) filed Critical 엔에이치엔(주)
Priority to KR1020110121855A priority Critical patent/KR101116552B1/ko
Publication of KR20120001711A publication Critical patent/KR20120001711A/ko
Application granted granted Critical
Publication of KR101116552B1 publication Critical patent/KR101116552B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/0304Detection arrangements using opto-electronic means
    • G06F3/0317Detection arrangements using opto-electronic means in co-operation with a patterned surface, e.g. absolute position or relative movement detection for an optical mouse or pen positioned with respect to a coded surface
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/038Control and interface arrangements therefor, e.g. drivers or device-embedded control circuitry
    • G06F3/0383Signal control means within the pointing device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • G06F3/04883Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures for inputting data by handwriting, e.g. gesture or text
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • G06F3/147Digital output to display device ; Cooperation and interconnection of the display device with other functional units using display panels
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

마우스 제스처 기능을 포함하는 웹페이지를 제공하는 시스템 및 방법을 개시한다. 웹페이지 제공 방법은 사용자단말기가 사용자 이벤트에 기초하여 포인터의 이동 궤적을 계산하고, 상기 이동 궤적에 따른 동작을 수행하도록 제어하는 모듈이 추가된 웹페이지를 확인하는 웹페이지 확인부 및 상기 웹페이지를 상기 사용자단말기로 제공하는 웹페이지 제공부를 포함한다.

Description

마우스 제스처 기능을 포함하는 웹페이지를 제공하는 시스템 및 방법{SYSTEM AND METHOD FOR PROVIDING WEB PAGE INCLUDING MOUSE GESTURE FUNCTION}
본 발명에 따른 실시예들은 마우스 제스처 기능을 포함하는 웹페이지를 제공하는 시스템 및 방법에 관한 것이다.
마우스 제스처(mouse gesture)는 마우스 버튼을 클릭한 상태에서 특정하게 움직이면, 특정한 명령어를 실행하는 방식이다. 여러 프로그램에서 널리 쓰이는 명령어를 편하게 나타낼 수 있어, 키보드 입력이 불편한 사용자에게 요긴하게 사용될 수 있다. 예를 들어, 웹브라우저에서 뒤로 가기는 오른쪽 버튼을 누른 상태에서 마우스를 왼쪽으로 재빠르게 밀어주면 된다. 물론 프로그램마다 구현하는 방식이 다르며, 사용자가 지정할 수도 있다. 이러한 마우스 제스처 기능은 특정 웹브라우저에서 지원하거나 플러그인을 설치함으로 사용할 수 있다.
웹브라우저 플러그인에서 지원하는 마우스 제스처 기능은 웹브라우저의 버튼을 클릭하지 않고 마우스 움직임 만으로 특정 기능을 수행할 수 있어 사용자가 손쉽게 웹사이트를 브라우징할 수 있다. 그러나 웹브라우저 플러그인을 모르거나, 플러그인이 설치가 안된 사용자단말기에서는 이러한 마우스 제스처 기능을 사용할 수 없는 단점이 있다. 본 명세서에서는 별도의 프로그램을 설치할 필요 없이 마우스 제스처 기능을 제공할 수 있는 시스템 및 방법을 제안한다.
별도의 프로그램을 설치할 필요 없이 웹브라우저에서 기본적으로 제공하는 기능을 이용하여 웹페이지 상에서 마우스 제스처 기능을 제공할 수 있는 웹페이지를 제공하는 시스템 및 방법이 제공된다.
사용자 이벤트에 따른 동작을 사용자단말기가 수행하도록 제어하는 모듈을 추가하여 마우스 제스처 기능을 제공할 수 있는 웹페이지를 제공하는 시스템 및 방법이 제공된다.
본 발명의 일실시예에 따른 웹페이지 제공 시스템은 사용자단말기가 사용자 이벤트에 기초하여 포인터의 이동 궤적을 계산하고, 이동 궤적에 따른 동작을 수행하도록 제어하는 모듈이 추가된 웹페이지를 확인하는 웹페이지 확인부 및 웹페이지를 사용자단말기로 제공하는 웹페이지 제공부를 포함한다.
본 발명의 일측면에 따르면, 모듈은 사용자단말기로부터 시작 이벤트 및 종료 이벤트의 발생을 감지하도록 사용자단말기를 제어하는 이벤트 감지 제어 모듈, 시작 이벤트의 발생 시부터 종료 이벤트의 발생 시까지 포인터의 위치정보를 저장하도록 사용자단말기를 제어하는 위치정보 저장 제어 모듈 및 저장된 포인터의 위치정보에 따른 동작을 사용자단말기가 수행하도록 제어하는 동작 제어 모듈을 포함할 수 있다.
본 발명의 일측면에 따르면, 모듈은 포인터의 위치정보에 기초하여 포인터의 이동 궤적을 재생하도록 사용자단말기를 제어하는 재생 제어 모듈을 더 포함할 수 있다.
본 발명의 일측면에 따르면, 동작 제어 모듈은 포인터의 위치정보에 기초하여 이동 궤적 데이터를 생성하도록 사용자단말기를 제어하는 데이터 생성 제어 모듈 및 복수의 동작 데이터 중 이동 궤적 데이터와 동일한 동작 데이터가 존재하는지 확인하도록 사용자단말기를 제어하는 데이터 비교 제어 모듈을 포함할 수 있다. 이때, 저장된 포인터의 위치정보에 따른 동작은 이동 궤적 데이터와 동일한 동작 데이터에 대응하는 동작을 포함할 수 있다.
본 발명의 일측면에 따르면, 포인터의 위치정보는 사용자단말기의 출력장치에서 이용되는 좌표계에 기초한 좌표값으로 저장될 수 있고, 데이터 생성 제어 모듈은 좌표값 중 서로 연속적으로 저장된 좌표값간의 기울기값을 계산하도록 사용자단말기를 제어하고, 기울기값에 따른 방향값을 결정하여 이동 궤적 데이터를 생성하도록 사용자단말기를 제어할 수 있다.
본 발명의 일측면에 따르면, 기울기값은 서로 연속적으로 저장된 좌표값간의 거리가 모듈에서 미리 결정된 거리 이상인 경우에 계산될 수 있다.
본 발명의 일측면에 따르면, 서로 연속된 방향값 중 서로 같은 방향을 나타내는 방향값은 이동 궤적 데이터에 하나만 포함될 수 있다.
본 발명의 일측면에 따르면, 웹페이지는 사용자가 모듈의 동작 여부를 결정하기 위한 기능을 포함할 수 있다.
본 발명의 일측면에 따르면, 모듈은 자바스크립트(JavaScript)의 형태로 웹페이지를 구성하기 위한 소스에 포함될 수 있다.
본 발명의 일실시예에 따른 웹페이지 제공 방법은 웹페이지 제공 시스템의 웹페이지 확인부에서 사용자단말기가 사용자 이벤트에 기초하여 포인터의 이동 궤적을 계산하고, 이동 궤적에 따른 동작을 수행하도록 제어하는 모듈이 추가된 웹페이지를 확인하는 단계 및 웹페이지 제공 시스템의 웹페이지 제공부에서 웹페이지를 사용자단말기로 제공하는 단계를 포함한다.
본 발명의 일실시예에 따르면, 별도의 프로그램을 설치할 필요 없이 웹브라우저에서 기본적으로 제공하는 기능을 이용하여 웹페이지 상에서 마우스 제스처 기능을 제공할 수 있다.
본 발명의 일실시예에 따르면, 사용자 이벤트에 따른 동작을 사용자단말기가 수행하도록 제어하는 모듈을 추가하여 마우스 제스처 기능을 제공할 수 있다.
도 1은 본 발명의 일실시예에 있어서, 웹페이지 제공 시스템의 개괄적인 모습을 도시한 도면이다.
도 2는 본 발명의 일실시예에 있어서, 웹페이지 제공 시스템의 내부 구성을 설명하기 위한 블록도이다.
도 3은 본 발명의 일실시예에 따른 웹페이지 제공 시스템에서 이용되는 모듈을 설명하기 위한 블록도이다.
도 4는 본 발명의 일실시예에 따른 웹페이지 제공 시스템을 통해 제공되는 웹페이지의 일례이다.
도 5는 본 발명의 일실시예에 있어서, 웹페이지 제공 방법을 설명하기 위한 흐름도이다.
도 6은 본 발명의 일실시예에 따른 웹페이지 제공 방법에서 모듈의 수행 동작을 설명하기 위한 흐름도이다.
도 7은 방향값의 결정을 위해 구분된 영역의 일례이다.
이하 첨부된 도면을 참조하여 본 발명에 따른 다양한 실시예를 상세히 설명하기로 한다.
도 1은 본 발명의 일실시예에 있어서, 웹페이지 제공 시스템의 개괄적인 모습을 도시한 도면이다. 본 실시예에 따른 웹페이지 제공 시스템(100)은 복수의 사용자단말기(110) 중 접속을 요청하는 사용자단말기로 웹페이지를 제공할 수 있다. 이때, 웹페이지 제공 시스템(100)은 마우스 제스처 기능을 제공하기 위한 모듈을 웹페이지에 추가하여 사용자단말기로 전송함으로써, 사용자단말기에서 별도의 프로그램을 설치하지 않고도 웹페이지 상에서 마우스 제스처 기능을 이용할 수 있다.
도 2는 본 발명의 일실시예에 있어서, 웹페이지 제공 시스템의 내부 구성을 설명하기 위한 블록도이다. 본 실시예에 따른 웹페이지 제공 시스템(200)은 도 2에 도시된 바와 같이, 웹페이지 확인부(210) 및 웹페이지 제공부(220)를 포함할 수 있다.
웹페이지 확인부(210)는 사용자단말기가 사용자 이벤트에 기초하여 포인터의 이동 궤적을 계산하고, 이동 궤적에 따른 동작을 수행하도록 제어하는 모듈이 추가된 웹페이지를 확인한다. 이때, 모듈은 일례로, 자바스크립트의 형태로 웹페이지를 구성하기 위한 소스에 포함될 수 있고, 모듈이 추가된 웹페이지를 확인하는 것은 이러한 해당 웹페이지를 구성하는 소스를 확인하는 것일 수 있다. 이러한 모듈은 사용자단말기에서 포인터의 이동 궤적을 계산하도록 제어하고, 이동 궤적에 따른 동작을 수행하도록 제어할 수 있다.
웹페이지 제공부(220)는 웹페이지를 사용자단말기로 제공한다. 이때, 웹페이지 제공부(220)는 상술한 모듈이 자바스크립트의 형태로 포함된 소스를 사용자단말기로 전송할 수 있다. 이 경우, 사용자단말기는 웹브라우저를 통해 전송된 소스에 따라 웹페이지를 구성할 수 있고, 사용자는 상술한 모듈을 통해 마우스 제스처와 같은 기능을 제공받을 수 있게 된다. 즉, 사용자는 웹브라우저 플러그인과 같은 별도의 프로그램을 설치하지 않더라도, 기존과 같이 단순히 웹페이지에 접근하는 것만으로도 마우스 제스처 기능을 이용할 수 있게 된다.
이때, 이러한 웹페이지는 사용자가 상기 모듈의 동작 여부를 결정하기 위한 기능을 포함할 수 있다. 즉, 환경 설정 페이지 등을 통해 마우스 제스처와 같은 기능의 사용 여부를 사용자가 직접 결정하도록 할 수 있다. 웹페이지에 추가되는 모듈에 대해서는 도 3을 통해 더욱 자세히 설명한다.
도 3은 본 발명의 일실시예에 따른 웹페이지 제공 시스템에서 이용되는 모듈을 설명하기 위한 블록도이다. 이때, 마우스 제스처와 같은 기능을 제공하기 위해 웹페이지에 추가될 수 있는 모듈(300)은 이벤트 감지 제어 모듈(310), 위치정보 저장 제어 모듈(320), 재생 제어 모듈(330) 및 동작 제어 모듈(340)을 포함할 수 있다.
이벤트 감지 제어 모듈(310)은 사용자단말기로부터 시작 이벤트 및 종료 이벤트의 발생을 감지하도록 사용자단말기를 제어한다. 예를 들어, 이벤트 감지 제어 모듈(310)은 시작 이벤트로서, 마우스 오른쪽 버튼과 같이 미리 결정된 버튼에 대한 사용자의 마우스다운 이벤트(mouse down event)를 감지하기 위해 웹페이지의 문서(document) 객체에 이벤트를 바인딩(binding)할 수 있고, 마우스다운 이벤트가 발생하는 경우 콜백 함수를 통해 사용자단말기가 시작 이벤트의 발생을 감지하도록 제어할 수 있다. 또한, 이벤트 감지 제어 모듈(310)은 종료 이벤트로서, 마우스다운 이벤트가 발생한 마우스의 버튼에 대한 마우스업 이벤트(mouse up event)를 감지하기 위해 웹페이지의 문서 객체에 이벤트를 바인딩할 수 있고, 마우스업 이벤트가 발생하는 경우, 콜백 함수를 통해 사용자단말기가 종료 이벤트의 발생을 감지하도록 제어할 수 있다.
상술한 예에서는 마우스의 버튼을 통해 시작 이벤트 및 종료 이벤트가 발생함을 설명하였으나 이러한 시작 이벤트 및 종료 이벤트는 사용자가 이용 가능한 모든 입력 장치를 통해서 발생할 수 있고, 이벤트를 발생시키는 장치는 미리 결정되거나, 환경 설정 페이지 등을 통해 사용자에 의해 선택될 수도 있다. 이후에서는 설명의 편의를 위해 계속 마우스의 예를 들어 설명하나, 상술한 바와 같이 본 발명이 단순히 마우스라는 입력 장치에 한정되는 것은 아니다.
위치정보 저장 제어 모듈(320)은 시작 이벤트의 발생 시부터 종료 이벤트의 발생 시까지 포인터의 위치정보를 저장하도록 사용자단말기를 제어한다. 예를 들어, 사용자가 시작 이벤트를 발생시키는 버튼을 누른 상태에서 마우스를 움직이는 경우, 위치정보 저장 제어 모듈(320)은 버튼을 누르지 않은 상태가 될 때까지 마우스에 따른 포인터의 위치정보를 지속적으로 저장하도록 사용자단말기를 제어할 수 있다. 이때, 위치정보 저장 제어 모듈(320)은 마우스 이동 이벤트(mouse move event)를 웹페이지의 문서 객체에 바인딩하고, 마우스 이동 이벤트가 발생하는 경우 콜백 함수를 통해 사용자단말기가 마우스 이동 이벤트를 감지하여 포인터의 위치정보를 확인 및 저장하도록 사용자단말기를 제어할 수 있다.
이때, 포인터의 위치정보는 사용자단말기의 출력장치에서 이용되는 좌표계에 기초한 좌표값으로 저장될 수 있다. 예를 들어, 모니터에서는 좌측 상단의 픽셀의 좌표값을 (0, 0)으로 하여 픽셀단위로 좌표값이 결정된 좌표계를 이용할 수 있다. 이 경우, 포인터의 위치정보는 상기 포인터가 가리키는 픽셀의 좌표값으로서 지속적으로 저장될 수 있다.
재생 제어 모듈(330)은 포인터의 위치정보에 기초하여 포인터의 이동 궤적을 재생하도록 사용자단말기를 제어한다. 이때, 재생 제어 모듈(330)은 캔버스(canvas) 객체를 설정하여 준비된 캔버스에 사용자의 마우스 움직임에 따른 포인터의 이동 궤적이 재생되도록 할 수 있다. 이러한, 재생 제어 모듈(330)은 필요에 따라 선택적으로 모듈(300)에 포함될 수 있다.
동작 제어 모듈(340)은 저장된 포인터의 위치정보에 따른 동작을 사용자단말기가 수행하도록 제어한다. 즉, 각각의 동작에 대해서는 동작 데이터가 존재할 수 있고, 저장된 포인터의 위치정보에 따른 이동 궤적 데이터와 동일 또는 유사한 동작 데이터가 존재하는 경우 해당 동작이 수행되도록 사용자단말기를 제어할 수 있다. 이를 위해, 동작 제어 모듈(340)은 도 3에 도시된 바와 같이, 데이터 생성 제어 모듈(341) 및 데이터 비교 제어 모듈(342)을 포함할 수 있다.
데이터 생성 제어 모듈(341)은 포인터의 위치정보에 기초하여 이동 궤적 데이터를 생성하도록 상기 사용자단말기를 제어한다. 이때, 데이터 생성 제어 모듈(341)은 좌표값 중 서로 연속적으로 저장된 좌표값간의 기울기값을 계산하도록 사용자단말기를 제어하고, 기울기값에 따른 방향값을 결정하여 이동 궤적 데이터를 생성하도록 상기 사용자단말기를 제어할 수 있다. 예를 들어, 서로 연속된 좌표값인 (x1, y1) 및 (x2, y2)가 존재하면, 기울기값은 (y2-y1/x2-y1)과 같이 구해질 수 있다. 이때, 구해진 기울기값에 따라 두 좌표값에 따른 방향값이 결정될 수 있다. 즉, 45°씩 영역을 구분하고, -tan(67.5)~tan(67.5)일 경우에는 1, tan(67.5) ~ tan(22.5)일 경우에는 2, tan(22.5) ~ -tan(22.5)일 때는 3, -tan(22.5) ~ -tan(67.5)일 경우에는 4와 같이, 기울기값을 이용하여 방향값을 계산할 수 있다. 이 경우, 계산된 방향값들이 이동 궤적 데이터로서 결정될 수 있다. 이때, 상술한 예에서는 방향값의 결정을 위해 45°씩 영역을 구분하였으나, 필요에 따라 22.5°나 90°와 같이 다양한 각도로 영역을 구분할 수도 있다. 즉, 45°씩 영역을 구분하는 경우에는 총 8개의 방향값이 이용될 수 있고, 22.5°씩 영역을 구분하는 경우에는 총 16개의 방향값이 이용될 수 있다. 이러한 방향값은 서로 연속적으로 저장된 좌표값들마다 계산될 수 있다. 즉, 각각의 좌표값이 하나의 점을 의미한다고 할 때, 첫 번째 점과 두 번째 점에 대한 방향값, 두 번째 점과 세 번째 점에 대한 방향값과 같이, 모든 연속된 점들간에 방향값이 계산될 수 있다.
또한, 기울기값은 서로 연속적으로 저장된 좌표값간의 거리가 모듈(300)에서 미리 결정된 거리 이상인 경우에 계산될 수 있다. 예를 들어, 미리 결정된 거리가 10 픽셀의 거리인 경우, 두 좌표값에 따른 두 점의 거리가 10 픽셀 이상인 경우에만 기울기값을 계산할 수 있다.
뿐만 아니라, 연속된 방향값 중 서로 같은 방향을 나타내는 방향값들은 이동 궤적 데이터에 하나만 포함될 수 있다. 예를 들어, 계산된 방향값들이 [2, 2, 3, 3, 2, 2, 2]와 같다면, 이동 궤적 데이터는 [2, 3, 2]와 같이 생성될 수 있다.
데이터 비교 제어 모듈(342)은 복수의 동작 데이터 중 이동 궤적 데이터와 동일한 동작 데이터가 존재하는지 확인하도록 사용자단말기를 제어한다. 예를 들어, 데이터 비교 제어 모듈(342)은 이동 궤적 데이터 [2, 3, 2]에 대해 동일한 동작 데이터 [2, 3, 2]가 존재하는지 확인하도록 사용자단말기를 제어할 수 있다.
여기서, 저장된 포인터의 위치정보에 따른 동작은 이동 궤적 데이터와 동일한 동작 데이터에 대응하는 동작을 포함할 수 있다. 즉, 동작 제어 모듈(340)은 동작 데이터 [2, 3, 2]가 존재하는 경우, 동작 데이터 [2, 3, 2]에 따른 동작을 수행하도록 사용자단말기를 제어할 수 있다. 예를 들어, 동작 데이터 [2, 3, 2]에 따른 동작이 웹페이지 상에서의 새로고침 동작이거나 이전 페이지로의 이동 동작일 수 있다.
도 4는 본 발명의 일실시예에 따른 웹페이지 제공 시스템을 통해 제공되는 웹페이지의 일례이다. 제1 웹페이지(410)는 도 3을 통해 설명한 모듈(300)을 포함할 수 있다. 이때, 점선(420)은 사용자가 마우스의 우측 버튼을 누른 상태로 마우스를 이동시켰을 때의 포인터(430)의 이동 경로를 의미할 수 있다. 즉, 시작 이벤트가 발생한 순간부터 종료 이벤트가 발생할 때까지 포인터(430)의 위치를 의미할 수 있다. 이때, 포인터(430)의 위치정보는 모두 저장되어 종료 이벤트가 발생한 이후 이동 궤적 데이터를 생성하기 위해 이용될 수 있다. 이동 궤적 데이터는 동작 데이터와의 비교를 통해 해당 동작을 결정하기 위해 이용될 수 있고, 결정된 동작은 사용자단말기를 통해 수행될 수 있다.
또한, 이러한 위치정보를 통해 제2 웹페이지(440)와 같이 캔버스 객체가 설정된 영역을 통해 시작 이벤트와 종료 이벤트 사이의 포인터(430)의 이동 궤적이 재생되어 사용자가 이동 궤적을 확인하도록 할 수 있다.
도 5는 본 발명의 일실시예에 있어서, 웹페이지 제공 방법을 설명하기 위한 흐름도이다. 본 실시예에 따른 웹페이지 제공 방법은 도 2를 통해 설명한 웹페이지 제공 시스템(200)을 통해 수행될 수 있다. 도 5에서는 웹페이지 제공 시스템(200)을 통해 각각의 단계가 수행되는 과정을 설명함으로써, 웹페이지 제공 방법을 설명한다.
단계(S510)에서 웹페이지 제공 시스템(200)은 사용자단말기가 사용자 이벤트에 기초하여 포인터의 이동 궤적을 계산하고, 이동 궤적에 따른 동작을 수행하도록 제어하는 모듈이 추가된 웹페이지를 확인한다. 이때, 모듈은 일례로, 자바스크립트의 형태로 웹페이지를 구성하기 위한 소스에 포함될 수 있고, 모듈이 추가된 웹페이지를 확인하는 것은 이러한 해당 웹페이지를 구성하는 소스를 확인하는 것일 수 있다. 이러한 모듈은 사용자단말기에서 포인터의 이동 궤적을 계산하도록 제어하고, 이동 궤적에 따른 동작을 수행하도록 제어할 수 있다.
단계(S520)에서 웹페이지 제공 시스템(200)은 웹페이지를 사용자단말기로 제공한다. 이때, 웹페이지 제공 시스템(200)은 상술한 모듈이 자바스크립트의 형태로 포함된 소스를 사용자단말기로 전송할 수 있다. 이 경우, 사용자단말기는 웹브라우저를 통해 전송된 소스에 따라 웹페이지를 구성할 수 있고, 사용자는 상술한 모듈을 통해 마우스 제스처와 같은 기능을 제공받을 수 있게 된다. 즉, 사용자는 웹브라우저 플러그인과 같은 별도의 프로그램을 설치하지 않더라도, 기존과 같이 단순히 웹페이지에 접근하는 것만으로도 마우스 제스처 기능을 이용할 수 있게 된다.
이때, 이러한 웹페이지는 사용자가 상기 모듈의 동작 여부를 결정하기 위한 기능을 포함할 수 있다. 즉, 환경 설정 페이지 등을 통해 마우스 제스처와 같은 기능의 사용 여부를 사용자가 직접 결정하도록 할 수 있다.
도 6은 본 발명의 일실시예에 따른 웹페이지 제공 방법에서 모듈의 수행 동작을 설명하기 위한 흐름도이다. 도 6에서는 웹페이지에 추가되어 사용자단말기로 제공되는 모듈의 수행 동작을 설명한다.
단계(S610)에서 모듈은 사용자단말기로부터 시작 이벤트 및 종료 이벤트의 발생을 감지하도록 사용자단말기를 제어한다. 예를 들어, 모듈은 시작 이벤트로서, 마우스 오른쪽 버튼과 같이 미리 결정된 버튼에 대한 사용자의 마우스다운 이벤트를 감지하기 위해 웹페이지의 문서 객체에 이벤트를 바인딩할 수 있고, 마우스다운 이벤트가 발생하는 경우 콜백 함수를 통해 사용자단말기가 시작 이벤트의 발생을 감지하도록 제어할 수 있다. 또한, 모듈은 종료 이벤트로서, 마우스다운 이벤트가 발생한 마우스의 버튼에 대한 마우스업 이벤트를 감지하기 위해 웹페이지의 문서 객체에 이벤트를 바인딩할 수 있고, 마우스업 이벤트가 발생하는 경우, 콜백 함수를 통해 사용자단말기가 종료 이벤트의 발생을 감지하도록 제어할 수 있다.
단계(S620)에서 모듈은 시작 이벤트의 발생 시부터 종료 이벤트의 발생 시까지 포인터의 위치정보를 저장하도록 사용자단말기를 제어한다. 예를 들어, 사용자가 시작 이벤트를 발생시키는 버튼을 누른 상태에서 마우스를 움직이는 경우, 모듈은 버튼을 누르지 않은 상태가 될 때까지 마우스에 따른 포인터의 위치정보를 지속적으로 저장하도록 사용자단말기를 제어할 수 있다. 이때, 모듈은 마우스 이동 이벤트를 웹페이지의 문서 객체에 바인딩하고, 마우스 이동 이벤트가 발생하는 경우 콜백 함수를 통해 사용자단말기가 마우스 이동 이벤트를 감지하여 포인터의 위치정보를 확인 및 저장하도록 사용자단말기를 제어할 수 있다.
이때, 포인터의 위치정보는 사용자단말기의 출력장치에서 이용되는 좌표계에 기초한 좌표값으로 저장될 수 있다. 예를 들어, 모니터에서는 좌측 상단의 픽셀의 좌표값을 (0, 0)으로 하여 픽셀단위로 좌표값이 결정된 좌표계를 이용할 수 있다. 이 경우, 포인터의 위치정보는 상기 포인터가 가르키는 픽셀의 좌표값으로서 지속적으로 저장될 수 있다.
단계(S630)에서 모듈은 포인터의 위치정보에 기초하여 포인터의 이동 궤적을 재생하도록 사용자단말기를 제어한다. 이때, 모듈은 캔버스 객체를 설정하여 준비된 캔버스에 사용자의 마우스 움직임에 따른 포인터의 이동 궤적이 재생되도록 할 수 있다. 이러한, 단계(S630)은 필요에 따라 선택적으로 수행될 수 있다.
단계(S640)에서 모듈은 저장된 포인터의 위치정보에 따른 동작을 사용자단말기가 수행하도록 제어한다. 즉, 각각의 동작에 대해서는 동작 데이터가 존재할 수 있고, 저장된 포인터의 위치정보에 따른 이동 궤적 데이터와 동일 또는 유사한 동작 데이터가 존재하는 경우 해당 동작이 수행되도록 사용자단말기를 제어할 수 있다. 이를 위해, 도 6에 도시된 바와 같이, 단계(S640)에 단계(S641) 및 단계(S642)가 포함될 수 있다.
단계(S641)에서 모듈은 포인터의 위치정보에 기초하여 이동 궤적 데이터를 생성하도록 상기 사용자단말기를 제어한다. 이때, 모듈은 좌표값 중 서로 연속적으로 저장된 좌표값간의 기울기값을 계산하도록 사용자단말기를 제어하고, 기울기값에 따른 방향값을 결정하여 이동 궤적 데이터를 생성하도록 상기 사용자단말기를 제어할 수 있다. 예를 들어, 서로 연속된 좌표값인 (x1, y1) 및 (x2, y2)가 존재하면, 기울기값은 (y2-y1/x2-y1)과 같이 구해질 수 있다. 이때, 구해진 기울기값에 따라 두 좌표값에 따른 방향값이 결정될 수 있다. 즉, 45°씩 영역을 구분하고, -tan(67.5)~tan(67.5)일 경우에는 1, tan(67.5) ~ tan(22.5)일 경우에는 2, tan(22.5) ~ -tan(22.5)일 때는 3, -tan(22.5) ~ -tan(67.5)일 경우에는 4와 같이, 기울기값을 이용하여 방향값을 계산할 수 있다. 이 경우, 계산된 방향값들이 이동 궤적 데이터로서 결정될 수 있다. 이때, 상술한 예에서는 방향값의 결정을 위해 45°씩 영역을 구분하였으나, 필요에 따라 22.5°나 90°와 같이 다양한 각도로 영역을 구분할 수도 있다. 즉, 45°씩 영역을 구분하는 경우에는 총 8개의 방향값이 이용될 수 있고, 22.5°씩 영역을 구분하는 경우에는 총 16개의 방향값이 이용될 수 있다. 도 7은 방향값의 결정을 위해 구분된 영역의 일례이다. 이때, 도 7은 45°씩 영역을 구분하여 영역별로 1에서 8까지 총 8개의 방향값을 결정될 수 있음을 나타내고 있다.
또한, 기울기값은 서로 연속적으로 저장된 좌표값간의 거리가 모듈에서 미리 결정된 거리 이상인 경우에 계산될 수 있다. 예를 들어, 미리 결정된 거리가 10 픽셀의 거리인 경우, 두 좌표값에 따른 두 점의 거리가 10 픽셀 이상인 경우에만 기울기값을 계산할 수 있다.
뿐만 아니라, 연속된 방향값 중 서로 같은 방향을 나타내는 방향값들은 이동 궤적 데이터에 하나만 포함될 수 있다. 예를 들어, 계산된 방향값들이 [2, 2, 3, 3, 2, 2, 2]와 같다면, 이동 궤적 데이터는 [2, 3, 2]와 같이 생성될 수 있다.
단계(S642)에서 모듈은 복수의 동작 데이터 중 이동 궤적 데이터와 동일한 동작 데이터가 존재하는지 확인하도록 사용자단말기를 제어한다. 예를 들어, 모듈은 이동 궤적 데이터 [2, 3, 2]에 대해 동일한 동작 데이터 [2, 3, 2]가 존재하는지 확인하도록 사용자단말기를 제어할 수 있다.
여기서, 저장된 포인터의 위치정보에 따른 동작은 이동 궤적 데이터와 동일한 동작 데이터에 대응하는 동작을 포함할 수 있다. 즉, 모듈은 동작 데이터 [2, 3, 2]가 존재하는 경우, 동작 데이터 [2, 3, 2]에 따른 동작을 수행하도록 사용자단말기를 제어할 수 있다. 예를 들어, 동작 데이터 [2, 3, 2]에 따른 동작이 웹페이지 상에서의 새로고침 동작이거나 이전 페이지로의 이동 동작일 수 있다.
이와 같이, 본 발명의 일실시예에 따른 웹페이지 제공 시스템 또는 웹페이지 제공 방법을 이용하면, 별도의 프로그램을 설치할 필요 없이 웹브라우저에서 기본적으로 제공하는 기능을 이용하여 웹페이지 상에서 마우스 제스처 기능을 제공할 수 있다. 즉, 사용자 이벤트에 따른 동작을 사용자단말기가 수행하도록 제어하는 모듈을 추가하여 마우스 제스처 기능을 제공할 수 있다.
본 발명에 따른 실시예들은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 파일 데이터, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(Floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 본 발명에서는 구체적인 구성 요소 등과 같은 특정 사항들과 한정된 실시예 및 도면에 의해 설명되었으나 이는 본 발명의 보다 전반적인 이해를 돕기 위해서 제공된 것일 뿐, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상적인 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다.
따라서, 본 발명의 사상은 설명된 실시예에 국한되어 정해져서는 아니되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등하거나 등가적 변형이 있는 모든 것들은 본 발명 사상의 범주에 속한다고 할 것이다.
200: 웹페이지 제공 시스템
210: 웹페이지 확인부
300: 모듈
310: 이벤트 감지 제어 모듈
320: 위치정보 저장 제어 모듈
340: 동작 제어 모듈

Claims (9)

  1. 사용자단말기가 사용자 이벤트에 기초하여 포인터의 이동 궤적을 계산하고, 상기 이동 궤적에 따른 동작을 수행하도록 제어하는 모듈이 추가된 웹페이지를 확인하는 웹페이지 확인부; 및
    상기 사용자단말기가 접속을 요청하는 경우, 상기 확인된 웹페이지를 상기 사용자단말기로 제공하는 웹페이지 제공부
    를 포함하고,
    상기 모듈은 상기 웹페이지를 구성하기 위한 소스에 포함되는 웹페이지 제공 시스템.
  2. 제1항에 있어서,
    상기 모듈은, 자바스크립트(JavaScript)의 형태로 상기 소스에 포함되는 것을 특징으로 하는 웹페이지 제공 시스템.
  3. 제1항에 있어서,
    상기 웹페이지는 사용자가 상기 모듈의 동작 여부를 결정하기 위한 기능을 포함하는 것을 특징으로 하는, 웹페이지 제공 시스템.
  4. 제3항에 있어서,
    상기 모듈은, 상기 포인터의 위치정보에 기초하여 상기 포인터의 이동 궤적을 계산하는 것을 특징으로 하는, 웹페이지 제공 시스템.
  5. 웹페이지 제공 시스템에서 웹페이지를 제공하는 방법에 있어서,
    상기 웹페이지 제공 시스템의 웹페이지 확인부에서 사용자단말기가 사용자 이벤트에 기초하여 포인터의 이동 궤적을 계산하고, 상기 이동 궤적에 따른 동작을 수행하도록 제어하는 모듈이 추가된 웹페이지를 확인하는 단계; 및
    상기 웹페이지 제공 시스템의 웹페이지 제공부에서 상기 사용자단말기가 접속을 요청하는 경우, 상기 확인된 웹페이지를 상기 사용자단말기로 제공하는 단계
    를 포함하고,
    상기 모듈은 상기 웹페이지를 구성하기 위한 소스에 포함되는 웹페이지 제공 방법.
  6. 제5항에 있어서,
    상기 모듈은, 자바스크립트의 형태로 상기 소스에 포함되는 것을 특징으로 하는 웹페이지 제공 방법.
  7. 제5항에 있어서,
    상기 웹페이지는 사용자가 상기 모듈의 동작 여부를 결정하기 위한 기능을 포함하는 것을 특징으로 하는, 웹페이지 제공 방법.
  8. 제7항에 있어서,
    상기 모듈은, 상기 포인터의 위치정보에 기초하여 상기 포인터의 이동 궤적을 계산하는 것을 특징으로 하는, 웹페이지 제공 방법.
  9. 제5항 내지 제8항 중 어느 한 항의 방법을 수행하는 프로그램을 기록한 컴퓨터 판독 가능 기록 매체.
KR1020110121855A 2011-11-21 2011-11-21 마우스 제스처 기능을 포함하는 웹페이지를 제공하는 시스템 및 방법 KR101116552B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020110121855A KR101116552B1 (ko) 2011-11-21 2011-11-21 마우스 제스처 기능을 포함하는 웹페이지를 제공하는 시스템 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020110121855A KR101116552B1 (ko) 2011-11-21 2011-11-21 마우스 제스처 기능을 포함하는 웹페이지를 제공하는 시스템 및 방법

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020090083076A Division KR101105973B1 (ko) 2009-09-03 2009-09-03 마우스 제스처 기능을 포함하는 웹페이지를 제공하는 시스템 및 방법

Publications (2)

Publication Number Publication Date
KR20120001711A KR20120001711A (ko) 2012-01-04
KR101116552B1 true KR101116552B1 (ko) 2012-02-28

Family

ID=45609311

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110121855A KR101116552B1 (ko) 2011-11-21 2011-11-21 마우스 제스처 기능을 포함하는 웹페이지를 제공하는 시스템 및 방법

Country Status (1)

Country Link
KR (1) KR101116552B1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106325702B (zh) * 2015-07-08 2021-01-08 腾讯科技(深圳)有限公司 鼠标手势识别的方法和装置

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080074391A1 (en) 2006-09-27 2008-03-27 Yahoo! Inc. Zero-click activation of an application

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080074391A1 (en) 2006-09-27 2008-03-27 Yahoo! Inc. Zero-click activation of an application

Also Published As

Publication number Publication date
KR20120001711A (ko) 2012-01-04

Similar Documents

Publication Publication Date Title
CN108182060B (zh) 一种混合应用的埋点方法、移动终端及系统
JP5947459B2 (ja) プッシュメッセージを表示する方法、装置、プログラム及び記録媒体
US8275920B2 (en) Event handling in an integrated execution environment
CN103150109B (zh) 用于web页面的触摸事件模型
US20100251167A1 (en) Scrollbar user interface for multitouch devices
US20090044133A1 (en) Updating Content Display Based on Cursor Position
KR102038640B1 (ko) 무한 스크롤 그래픽 사용자 인터페이스에서 스크롤 이벤트를 할당하는 시스템 및 방법
US8769409B2 (en) Systems and methods for improving object detection
KR20140055132A (ko) 클라우드 서버를 이용하여 단말 장치에서 웹페이지를 처리하는 방법 및 장치
WO2017113732A1 (zh) 用户界面控件的布局方法及系统、控制方法及系统
US9794635B2 (en) Distribution device, distribution method, and non-transitory computer readable storage medium
US9965040B2 (en) Method for using magnetometer together with gesture to send content to wireless display
KR101105973B1 (ko) 마우스 제스처 기능을 포함하는 웹페이지를 제공하는 시스템 및 방법
CN110020344A (zh) 一种网页页面元素标注方法及系统
US9448710B2 (en) Tracking user interactions with a mobile UI to facilitate UI optimizations
EP2986012A1 (en) Controlling content on a display device
KR101116552B1 (ko) 마우스 제스처 기능을 포함하는 웹페이지를 제공하는 시스템 및 방법
US20140006488A1 (en) Browser based web conferencing employing attendee side image scaling
KR102514760B1 (ko) 가상현실 환경에서 웹 콘텐츠를 제공하기 위한 방법 및 시스템
JP5907163B2 (ja) データ関連度判定装置、データ関連度判定方法、および、プログラム
US10366407B2 (en) Information processing device, information processing method, non-transitory computer readable storage medium, and distribution device
US10133533B1 (en) Automatic detection and correction of misalignment between display devices
KR101456935B1 (ko) 브라우저 상에서 부분적 콘텐츠 공유를 위한 방법 및 시스템
KR101235210B1 (ko) 모바일 브라우저 상에서 터치 인식률을 증강시키기 위한 방법, 단말 장치, 서버 및 컴퓨터 판독 가능한 기록 매체
KR101402362B1 (ko) 웹 애플리케이션을 제어하기 위한 방법, 단말 장치, 서버 및 컴퓨터 판독 가능한 기록 매체

Legal Events

Date Code Title Description
A107 Divisional application of patent
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20151223

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20170117

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20180102

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20190102

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20200102

Year of fee payment: 9