KR101531169B1 - 사용자 단말에서 3차원 객체를 그리는 방법 및 이를 수행하는 사용자 단말 - Google Patents

사용자 단말에서 3차원 객체를 그리는 방법 및 이를 수행하는 사용자 단말 Download PDF

Info

Publication number
KR101531169B1
KR101531169B1 KR1020130112858A KR20130112858A KR101531169B1 KR 101531169 B1 KR101531169 B1 KR 101531169B1 KR 1020130112858 A KR1020130112858 A KR 1020130112858A KR 20130112858 A KR20130112858 A KR 20130112858A KR 101531169 B1 KR101531169 B1 KR 101531169B1
Authority
KR
South Korea
Prior art keywords
electronic pen
dimensional
user terminal
vector information
user
Prior art date
Application number
KR1020130112858A
Other languages
English (en)
Other versions
KR20150033191A (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 KR1020130112858A priority Critical patent/KR101531169B1/ko
Priority to US14/494,279 priority patent/US20150084936A1/en
Publication of KR20150033191A publication Critical patent/KR20150033191A/ko
Application granted granted Critical
Publication of KR101531169B1 publication Critical patent/KR101531169B1/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/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/0354Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor with detection of 2D relative movements between the device, or an operating part thereof, and a plane or surface, e.g. 2D mice, trackballs, pens or pucks
    • G06F3/03545Pens or stylus
    • 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]
    • 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/0354Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor with detection of 2D relative movements between the device, or an operating part thereof, and a plane or surface, e.g. 2D mice, trackballs, pens or pucks
    • G06F3/03547Touch pads, in which fingers can move on a 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/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction 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/04815Interaction with a metaphor-based environment or interaction object displayed as three-dimensional, e.g. changing the user viewpoint with respect to the environment or object
    • 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/0484Interaction 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/04845Interaction 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 for image manipulation, e.g. dragging, rotation, expansion or change of colour
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/20Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2203/00Indexing scheme relating to G06F3/00 - G06F3/048
    • G06F2203/033Indexing scheme relating to G06F3/033
    • G06F2203/0339Touch strips, e.g. orthogonal touch strips to control cursor movement or scrolling; single touch strip to adjust parameter or to implement a row of soft keys
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2203/00Indexing scheme relating to G06F3/00 - G06F3/048
    • G06F2203/048Indexing scheme relating to G06F3/048
    • G06F2203/04808Several contacts: gestures triggering a specific function, e.g. scrolling, zooming, right-click, when the user establishes several contacts with the surface simultaneously; e.g. using several fingers or a combination of fingers and pen

Landscapes

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

Abstract

본 발명의 일 실시예에 따른, 사용자 단말에서 3차원 객체를 그리는 방법은, 상기 사용자 단말에 2차원 또는 3차원의 객체가 포함된 3차원 공간을 표시하는 단계; 전자펜의 몸체를 따라 진행되는 사용자의 제스처에 기초하여, 상기 3차원 공간의 깊이 방향에 대한 벡터정보를 획득하는 단계; 및 상기 벡터정보를 이용하여, 상기 객체에 대한 3차원 그리기 기능을 실행하는 단계를 포함한다.

Description

사용자 단말에서 3차원 객체를 그리는 방법 및 이를 수행하는 사용자 단말{Method and Apparatus for drawing a 3 dimensional object}
본 발명은 전자펜을 이용하여 사용자 단말에서 3차원 객체 그리는 방법 및 장치에 관한 발명이다.
최근 스마트폰 등의 사용자 단말에 널리 이용되는 터치스크린은 사용자 단말을 조작하는데 직관적인 인터페이스를 제공한다. 터치스크린은 일반적으로 2차원의 이미지를 디스플레이하는데 최적화되어 있다. 사용자 단말은 (X,Y,Z)축으로 정의되는 3차원의 공간을 표현하기 위하여, 3차원 공간을 렌더링한 2차원 이미지를 터치스크린에 표시한다.
터치스크린에서 사용자의 터치입력은 (x,y)의 좌표를 갖는 2차원 입력이기 때문에, 터치스크린에서 (x,y) 좌표의 조작은 용이하게 수행될 수 있지만, z 좌표를 조작하는데는 어려움이 있어왔다. 종래기술에서, 3차원 공간에서 z 좌표를 조절하기 위해서는, 3차원 공간의 뷰를 (X,Z) 또는 (Y,Z) 축으로 정의되는 평면으로 전환한 다음에, 사용자의 터치입력을 통해서 z 좌표를 조절한다. 또 다른 종래기술에 따르면, z 좌표를 조절하기 위한 별도의 입력창이나 도구를 터치스크린에 표시하였다. 그러나 상기된 방법들은 조작이 번거로울 뿐 아니라 사용자에게 직관적인 인터페이스를 제공하지 못하는 문제점이 있다.
본 발명이 이루고자 하는 기술적 과제는, 전자펜을 이용함으로써 사용자 단말에서 3차원 객체를 그리는데 보다 편리하고 직관적인 인터페이스를 제공하는데 있다.
본 발명의 일 실시예에 따른 사용자 단말에서 3차원 객체를 그리는 방법은, 상기 사용자 단말에 2차원 또는 3차원의 객체가 포함된 3차원 공간을 표시하는 단계; 전자펜의 몸체를 따라 진행되는 사용자의 제스처에 기초하여, 상기 3차원 공간의 깊이 방향에 대한 벡터정보를 획득하는 단계; 및 상기 벡터정보를 이용하여, 상기 객체에 대한 3차원 그리기 기능을 실행하는 단계를 포함한다.
본 발명의 일 실시예에 따른 사용자 단말은, 2차원 또는 3차원의 객체가 포함된 3차원 공간을 표시하는 사용자 인터페이스; 및 전자펜의 몸체를 따라 진행되는 사용자의 제스처에 기초하여 상기 3차원 공간의 깊이 방향에 대한 벡터정보를 획득하고, 상기 벡터정보를 이용하여 상기 객체에 대한 3차원 그리기 기능을 실행하는 프로세서를 포함한다.
본 발명의 일 실시예에 따르면, 전자펜의 몸체를 쓸어올리거나 쓸어내리는 사용자의 제스쳐를 통해서, 3차원 공간에서 z 값을 편리하게 조절할 수 있으며, 사용자 경험에 따라서 직관적인 3차원 그리기 기능을 구현할 수 있다.
도 1은 본 발명의 일 실시예에 따라서 3차원 객체를 그리는 방법의 흐름을 도시한 도면이다.
도 2는 본 발명의 다른 일 실시예에 따라서 3차원 객체를 그리는 방법의 흐름을 도시한 도면이다.
도 3은 본 발명의 일 실시예에 따른 사용자 단말을 도시한 도면이다.
도 4는 본 발명의 일 실시예에 따른 전자펜을 도시한 도면이다.
도 5는 본 발명의 다른 일 실시예에 따른 전자펜을 도시한 도면이다.
도 6은 본 발명의 일 실시예에 따라서 3차원 객체를 선택하는 과정을 도시한 도면이다.
도 7 내지 도 13는 본 발명의 실시예들에 따른 3차원 그리기 기능들을 예시한 도면이다.
도 14는 본 발명의 또 다른 일 실시예에 따른 전자펜을 도시한 도면이다.
도 15는 본 발명의 또 다른 일 실시예에 따른 전자펜을 도시한 도면이다.
도 16은 본 발명의 또 다른 일 실시예에 따른 전자펜과 사용자 단말을 도시한 도면이다.
본 발명에서 사용되는 용어는 본 발명에서의 기능을 고려하면서 가능한 현재 널리 사용되는 일반적인 용어들을 선택하였으나, 이는 당 분야에 종사하는 기술자의 의도 또는 판례, 새로운 기술의 출현 등에 따라 달라질 수 있다. 또한, 특정한 경우는 출원인이 임의로 선정한 용어도 있으며, 이 경우 해당되는 발명의 설명 부분에서 상세히 그 의미를 기재할 것이다. 따라서 본 발명에서 사용되는 용어는 단순한 용어의 명칭이 아닌, 그 용어가 가지는 의미와 본 발명의 전반에 걸친 내용을 토대로 정의되어야 한다.
명세서 전체에서 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있음을 의미한다. 또한, 명세서에 기재된 "...부", "모듈" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어 또는 소프트웨어로 구현되거나 하드웨어와 소프트웨어의 결합으로 구현될 수 있다.
"사용자 단말"이란, 이미지를 디스플레이하는 기능을 갖는 장치로서, 스마트폰, PDA, 태블릿 PC, 랩탑, HMD(Head Mount Display), DMB, PMP(Portable Multimedia Player), 네비게이션, 디지털 카메라, 디지털 CE 기기(Consumer Elctronics) 등이 있을 수 있다. 디지털 CE(Consumer Elctronics) 기기에는 DTV(Digital television), IPTV(Internet Protocol Television), 디스플레이 기능을 갖는 냉장고, 에어컨, 프린터 등을 예시할 수 있으며, 이에 한정되지 않는다. "3차원 공간"이란, 사용자 단말에서 디스플레이되는 가상의 공간을 말한다. "3차원 그리기"란, 3차원 공간에서 3차원 객체를 생성하는 프로세스, 이미 생성되어 있는 3차원 객체를 편집하는 프로세스, 또는 2차원 또는 3차원 객체의 물리적인 속성들, 예를 들어, 형상, 모양, 부피, 색상 등에 대한 정보를 추출하거나 변형하는 프로세스를 포괄한다.
이하 첨부된 도면을 참조하여, 본 발명의 바람직한 실시예들을 설명한다.
도 1은 본 발명의 일 실시예에 따라서 3차원 객체를 그리는 방법의 흐름을 도시한 도면이다.
먼저, 사용자 단말(10)은 2차원 또는 3차원의 객체가 포함된 3차원 공간을 표시한다(A105). 사용자 단말(10)은 3차원 공간을 렌더링하여 2차원 이미지로 표시할 수 있다. 예를 들어, 3차원 공간의 투시도, 평면도, 정면도 등 다양한 관측시점에서 2차원 이미지가 표시될 수 있다.
한편, 반드시 3차원 공간을 표시하기 위하여, 3차원 디스플레이가 이용될 수 있다. 예를 들어, 사용자 단말(10)은 3차원 디스플레이를 위하여, 좌안 영상과 우안 영상을 각각 생성하고, 스테레오스코픽 3D 영상을 표시할 수 있다.
3차원 공간에는 적어도 하나의 2차원 또는 3차원의 객체가 포함될 수 있다. 일 실시예에서 2차원 또는 3차원의 객체는 3차원 그리기 기능을 적용할 대상이 되는 객체 일 수 있다.
한편, 사용자 단말은 3차원 그리기 기능에 대응하는 메뉴항목을 표시할 수도 있다. 예를 들어, 선 그리기를 위한 아이콘, 면 그리기를 위한 아이콘, 색상 선택을 위한 팔레트 아이콘, 객체 속성 추출을 위한 아이콘 등의 메뉴항목이 표시될 수 있으며, 이에 한정되지 않는다.
사용자 단말(10)은 전자펜(20)의 몸체를 따라서 진행되는 사용자의 제스쳐에 기초하여, 3차원 공간의 깊이 방향에 대한 벡터정보를 획득한다(A110). 사용자는 전자펜(20)의 몸체를 쓸어내리는 스윕 다운(sweep down) 동작이나, 몸체를 쓸어올리는 스윕 업(sweep up) 동작을 통해서, 깊이 방향 즉 Z축 방향에 대한 입력을 수행할 수 있다. 여기서, 3차원 공간의 깊이 방향에 대한 벡터정보는, 사용자 입력의 방향에 대한 정보와 사용자 입력의 크기에 관한 정보 중 적어도 하나를 포함할 수 있다. 사용자 입력의 방향에 대한 정보는 +Z 방향인지, -Z 방향인지를 나타내기 위하여, 1비트로 표현할 수 있다. 예를 들어, +Z 방향은 '1', -Z 방향은 '0'으로 표현할 수 있다. 사용자 입력의 크기에 대한 정보는, 제스쳐의 길이에 대한 정보, 제스쳐의 속도에 대한 정보일 수 있다. 사용자 입력의 크기에 대한 정보는 실시예에 따라서 생략될 수 있다.
전자펜(20)을 구현하는 방식으로는, 전자펜(20)이 전원을 이용하여 사용자의 제스쳐를 감지하는 액티브 방식과 사용자 단말(10)이 직접 전자펜(20)에 대한 사용자의 제스쳐를 감지하는 패시브 방식이 있다. 액티브 방식에 따르면, 전자펜(20)이 사용자의 제스쳐에 대한 정보를 사용자 단말(10)에 송신함으로써, 사용자 단말(10)은 벡터정보를 획득한다. 패시브 방식에 따르면, 사용자 단말(10)이 전자펜(20)에 대한 사용자의 제스쳐를 직접 감지함으로써, 벡터정보를 획득한다.
한편, 일 실시예에서 전자펜(20)을 이용한 사용자 입력은 3차원 입력일 수 있는데, (x,y)의 2차원 입력은 기존의 방식에 따르고, z의 입력은 전자펜(20)의 몸체에 대한 사용자의 제스쳐를 통해서 수행될 수 있다.
사용자 단말(10)은 벡터정보를 이용하여, 사용자 단말(10)에 표시된 객체에 대하여 3차원 그리기 기능을 실행한다(A115). 3차원 그리기 기능은 예를 들어, 객체가 익스트루드 되는 효과, 객체의 적어도 일부가 전자펜에 흡입되는 효과, 객체의 색상을 추출하는 효과, 객체의 형상이 수축되거나 부풀어오르는 효과, 객체의 부피가 증감되는 효과 또는 전자펜에 사전에 흡입된 객체나 사전에 추출된 색상이 전자펜의 가상의 펜촉으로부터 토출되는 효과일 수 있으며, 이에 한정되지 않는다.
일 실시예에서, 어떠한 3차원 그리기 기능을 실행할 것인지는 사용자의 선택에 따라서 결정할 수 있다. 예를 들어, 사용자가 사용자 단말(10)에서 익스트루드 기능을 선택한 경우, 사용자 단말(10)은 획득된 벡터정보에 따라서 객체를 익스트루드 할 수 있다. 한편, 전술한 바와 같이, 3차원 그리기 기능에 대한 메뉴항목이 사용자 단말(10)에 표시될 수도 있으며, 메뉴항목은 숏컷 아이콘일 수 있다.
다른 실시예에 따르면, 벡터정보에 따라서 실행될 3차원 그리기 기능이 객체별로 정의되어 있을 수 있다. 예를 들어, 객체에 대한 형상, 모양, 색상 등의 시각적인 정보와 함께 벡터정보에 따라서 실행될 3차원 그리기 기능이 객체에 맵핑되어 있을 수 있다. 예를 들어, 객체가 물 컵에 담긴 물이라고 가정할 때, 벡터정보에 따라서 물이 전자펜으로 흡입되는 3차원 그리기 기능이, 물에 맵핑되어 있을 수 있다. 3차원 그리기 기능에 대한 보다 상세한 예시들은, 후술하는 설명과 도면을 참조한다.
도 2는 본 발명의 다른 일 실시예에 따라서 3차원 객체를 그리는 방법의 흐름을 도시한 도면이다. 전술한 설명들이 본 실시예를 위하여 참조될 수 있다.
사용자 단말(10)은 2차원 객체를 그린다(A230). 예를 들어, 사용자 단말(10)은 전자펜(20)을 통한 사용자 입력에 기초하여 2차원 객체를 그릴 수 있다. 예를 들어, 도 7에 도시된, 2차원 객체 별(G701)은 전자펜(20)의 물리적 이동을 통해서 그려질 수 있다. 다시 말해, 사용자 단말(10) 전자펜(20)의 2차원 입력 (x,y)의 변화를 통해서 2차원 객체를 그릴 수 있다. 2차원 객체 별(G701)은 사용자 단말(10)에 표시된다.
사용자 단말(10)은 전자펜(20)을 통해서 깊이 방향의 제1 벡터정보 및 전자펜(20)의 물리적 움직임에 대한 제1 모션정보를 획득한다(A210). 전자펜의 물리적 움직임에 대한 제1 모션정보는 사용자 단말(10)에 대한 2차원 입력 (x,y)을 포함할 수 있으나, 이에 한정되는 것은 아니다. 예를 들어, 사용자 단말(10)의 화면에 접촉된 전자펜(20)이 사용자 단말(10)에서 이격되는 경우, 제1 모션 정보는 전자펜(20)의 이동 방향, 이동 거리, 이동 속도 또는 가속도에 대한 정보를 포함할 수 있다. 전자펜(20)이 전자펜(20)의 몸체를 축으로 회전되는 경우, 제1 모션정보는 회전각 또는 회전 각속도에 대한 정보를 포함할 수 있다. 또한, 제1 모션 정보는 전자펜(20)의 자세에 관한 정보를 더 포함할 수 있다. 예를 들어, 제1 모션 정보는 사용자 단말(10)의 화면의 깊이 방향을 기준으로 전자펜(20)이 기울어진 각도에 대한 기울기 정보를 포함할 수 있다.
사용자 단말(10)은 획득된 제1 벡터정보와 제1 모션정보에 기초하여 2차원 객체를 3차원 객체로 입체화한다(A215). 사용자 단말(10)은 제1 모션정보에서 파악된 전자펜(20)의 물리적 움직임이 임계값 미만인 경우, 즉 실질적으로 무시할만한 움직임이라고 판단되면, 제1 모션정보를 무시하고 제1 벡터정보만으로 2차원 객체를 3차원 객체로 입체화할 수 있다.
도 7은 제1 벡터정보를 이용하여, 2차원 객체를 익스트루드하여 3차원 객체를 그리는 과정을 설명하는 도면이다. 도 7에 도시된 객체들(G701,G702,G703)은 모두 사용자 단말(10)에 표시된 객체들이지만, 설명의 편의를 위하여 사용자 단말(10)의 도시가 생략되었음을 사용자라면 이해할 수 있다.
3차원 별(G702)은 2차원 별(G701)을 전자펜에서 멀어지는 방향으로 익스트루드한 것이고, 3차원 별(G703)은 2차원 별(G701)을 전자펜에서 가까워지는 방향으로 익스트루드 한 것이다. 어느 방향으로 2차원 별(G701)을 익스트루드할 것 인지는, 제1 벡터정보에 따라서 결정된다. 예를 들어, 전자펜의 몸체를 쓸어내리는 스윕 다운 동작에 따라서, 제1 벡터정보가 깊이를 증가시키는 방향을 나타내면, 2차원 별(G701)을 전자펜에서 멀어지는 방향으로 익스트루드하여 3차원 별(G702)를 그린다. 반대로, 전자펜의 몸체를 쓸어올리는 스윕업 동작에 따라서, 제1 벡터정보가 깊이를 감소시키는 방향을 나타내면, 2차원 별(G701)을 전자펜에서 가까워지는 방향으로 익스트루드하여 3차원 별(G703)를 그린다.
도 8은 제1 벡터정보 및 제1 모션정보를 이용하여, 2차원 객체를 익스트루드하여 3차원 객체를 그리는 과정을 설명하는 도면이다. 도 8에서는, 도 7에서과 달리 전자펜(20)이 물리적으로 이동되고, 제1 벡터정보와 함께 제1 모션정보를 이용하여 2차원 객체를 익스트루드 한다.
사용자는 전자펜(20)의 몸체를 쓸어올리는 제스쳐(G803)를 입력함과 동시에, 전자펜(20)을 사용자 단말(10)에서 이격되는 방향으로 들어올린다. 사용자 단말(10)이 획득한 제1 모션정보는 전자펜(20)의 물리적 움직임(G802)에 대한 정보를 포함한다. 예를 들어, 제1 모션정보는 물리적 움직임(G802)의 거리, 방향, 속도 또는 가속도에 대한 정보를 포함할 수 있다.
사용자 단말(10)은 제1 벡터정보를 이용하여 2차원 별(G800)을 전자펜(20)에 가까워지는 방향으로 익스트루드 한다. 이때, 익스트루드되는 2차원 별(G800)의 단면적은 전자펜(20)의 물리적 움직임에 따라서 점점 감소한다. 예를 들어, 사용자 단말(10)은 제1 모션정보를 이용하여 2차원 별(G800)의 단면적을 감소시키면서, 제1 벡터정보를 이용하여 2차원 별(G800)을 익스트루드한다. 사용자 단말(10)은 단면적을 결정하기 위하여, 물리적 움직임(G802)의 속도 또는 가속도에 대한 정보를 이용할 수 있다. 예를 들어, 사용자 단말(10)은 물리적 움직임(G802)의 속도 또는 가속도에 비례하여 2차원 별(G800)의 단면적을 더 많이 감소시킬 수 있다. 따라서, 3차원 별(G801)의 윗면과 아랫면의 단면적 차이는 물리적 움직임(G802)의 속도 또는 가속도에 비례한다.
도 8은 사용자의 터치입력에 따라서 3차원 공간의 뷰를 조절하면서, 제1 벡터정보를 이용하여 2차원 객체를 익스트루드하는 과정을 도시한 도면이다. 사용자 단말(10)은 전자펜(20)의 입력과 상이한 방식의 사용자 입력이 감지되면, 3차원 공간의 뷰를 제어하기 위한 3차원의 도구(G901)를 표시한다. 예를 들어, 사용자 단말(10)은 사용자의 손에 의한 터치입력을 감지하면, 터치입력이 감지된 픽셀들의 위치에 대하여 3차원의 도구(G901)를 표시한다. 도시된 3차원의 도구(G901)는 정육면체의 윗면에 해당한다. 한편, 3차원 도구(G901)는 정육면체에 한정되지 않고 다른 형상으로 표시될 수도 있다. 예를 들어, 조이스틱 또는 3축의 좌표계 등으로 표시될 수도 있다.
사용자 단말(10)은 3차원의 도구(G901)가 사용자에 의해 드래그됨에 따라서, 3 차원 공간의 뷰를 전환한다. 예를 들어, 사용자가 3차원의 도구(G901)를 우측으로 드래그하였고, 그에 따라서 정육면체의 옆면이 G903과 같이 표시된다. 이를 통해서, 3차원 공간의 뷰가 어떤 관측시점으로 전환되었는지를 보다 쉽게 파악할 수 있다. 사용자의 시각에서는, 3차원 도구(G901)와 객체(G902)가 서로 동기화되어 움직이는 것으로 관찰된다.
한편, 사용자가 3차원의 도구(G901)에 대한 터치입력을 종료하는 경우, 3차원의 도구(G901)가 사라지고, 3차원 공간의 뷰는 디폴트 값으로 되돌아갈 수 있다.
이미지 G93에서 사용자는 3차원의 도구(G905)에 대한 드래그를 유지한 상태에서, 전자펜(20)의 몸체를 스윕다운 한다. 사용자 단말(10)은 사용자의 스윕 다운 동작에 따라서, 제1 벡터정보를 획득한다, 사용자 단말(10)은 제1 벡터정보를 이용하여 회전된 2차원의 객체(G904)를 익스트루드 하여, 3차원의 객체(G906)를 그린다. 사용자는 2차원의 객체(G904)가 익스트루드 됨에 따라서, 3차원의 객체(G906)의 높이를 실시간으로 확인할 수 있다. 따라서, 이미지 G90에 도시된 바와 같이 3차원 공간의 뷰가 전환되지 않은 상태에서는, 2차원의 객체(G902)가 익스트루드되더라도 사용자가 익스트루드되는 효과를 시각적으로 확인할 수 없다는 문제점을 해결할 수 있다.
사용자 단말(10)은 전자펜(20)이 사용자 단말(10)에 접촉된 위치에, 전자펜의 가상의 펜촉을 표시한다(A220). 예를 들면, 사용자 단말(10)은 전자펜(20)의 (x,y) 2차원 입력을 이용하여, (x,y) 위치에 가상의 펜촉을 표시한다. A220에서 가상의 펜촉의 z 값은 사용자 단말(10)의 화면의 깊이와 동일한 0으로 설정될 수 있다. 한편, 실시예에 따라서는, 가상의 펜촉은 앞서 설명된 A230 내지 A215에서도 표시될 수 있음을 당업자라면 이해할 수 있다.
사용자 단말(10)은 전자펜(20)을 통해서 3차원 공간의 깊이 방향에 대한 제2 벡터정보를 획득한다(A225). 사용자 단말(10)은 앞서 설명된 바와 유사하게 전자펜(20)의 몸체를 쓸어올리거나 쓸어내리는 제스쳐를 통해서, 제2 벡터정보를 획득할 수 있다.
사용자 단말(10)은 제2 벡터정보를 이용하여 가상의 펜촉을 3차원 공간의 깊이 방향으로 이동시킨다(A230). 예를 들어, 제2 벡터정보가 깊이를 증가시키는 방향을 나타내면, 가상의 펜촉을 깊이를 증가시키는 방향으로 이동시킨다. 이를 통해서, 사용자는 원하는 깊이로 가상의 펜촉을 이동시킬 수 있다.
사용자 단말(10)은 3차원 객체를 선택하고, 햅틱 피드백을 제공한다(A235). 사용자 단말(10)은 가상의 펜촉이 깊이 방향으로 이동됨에 따라서 가상의 펜촉과 맞닿은 객체를 선택한다. 사용자 단말(10)은 가상의 펜촉과 객체가 맞닿으면, 사용자 단말(10) 또는 전자펜(20)을 통해서 햅틱 피드백을 제공하기 위한 제어신호를 출력한다. 햅틱 피드백은 다양한 방식으로 구현될 수 있는데, 예를 들면, 진동, 변위, 또는 전기적 자극을 발생시킴으로써 햅틱 피드백을 제공할 수 있다.
도 6은 본 발명의 일 실시예에 따라서 3차원 객체를 선택하는 과정을 도시한 도면이다. 도 6을 참조하면, 사용자 단말(10)에는 창문과 창문 밖의 사다리를 포함하는 3차원 공간이 표시되어 있다. 좌측의 이미지 G60에서, 전자펜(20)이 사용자 단말(10)에 접촉되면, 깊이가 0인 객체가 선택된다. 즉, 사용자 단말(10)은 전자펜(20)의 2차원 입력에 기초하여, 창문의 글라스(G601)를 선택한다. 그러나, 사용자는 창문의 글라스(G601)이 아니라 창문 밖의 사다리(G602)의 선택을 원할 수 있다. 이 때, 창문의 글라스(G601)과 사다리(G602)의 깊이 값 z가 서로 다르지만, (x,y) 값이 동일하다. 따라서, 종래의 기술에 따르면 사용자가 사다리(G602)를 선택하는데 어려움이 있다.
본 발명의 일 실시예에 따르면, 우측 이미지 G61에 도시된 바와 같이, 전자펜(20)을 스윕 다운하는 제스쳐를 통해서, 가상의 펜촉(G603)이 전자펜(20)으로부터 돌출되는 효과가 3차원 공간의 깊이 방향으로 표시된다. 가상의 펜촉(G603)이 깊이 방향으로 이동되다가 사다리(G602)와 맞닿으면, 사용자 단말(10)은 사용자에게 햅틱 피드백을 제공하기 위한 제어신호를 출력하고, 사다리(G602)를 선택한다.
사용자는 전자펜(20)에 대한 스윕업 또는 스윕 다운 제스쳐를 통해서, 3차원 공간에서 사용자가 원하는 객체가 어느 깊이에 있더라도 쉽고 직관적으로 선택 및 조작할 수 있다.
사용자 단말(10)은 전자펜(20)의 몸체를 따라서 진행하는 사용자의 제스쳐를 통해서 제3 벡터정보를 획득하거나 또는 전자펜(20)의 물리적인 움직임을 통해서 제3 모션정보를 획득한다(A240). 제3 벡터정보와 제3 모션정보에 대한 설명은 전술한 A210을 참조한다. 한편, 제3 벡터정보와 제3 모션정보는 동시에 획득될 수도 있음을 당업자라면 이해할 수 있다.
사용자 단말(10)은 제3 벡터정보와 제3 모션정보 중 적어도 하나의 정보를 이용하여, 선택된 3차원 객체에 대하여 3차원 그리기 기능을 실행한다(A245). 3차원 객체에 대한 3차원 그리기 기능은 도 10 내지 도 13에 예시적으로 도시되어 있다.
도 10을 참조하면, 사용자 단말(10)은 치솔과 팔레트 객체를 포함하는 3차원 공간을 표시하고 있다. 좌측 이미지 G100에서 전자펜(20)을 통해서 팔레트의 제1 색상(G1001)이 선택되어 있다. 사용자 단말(10)은 전자펜(20)을 쓸어올리는 제스쳐에 따라서, 벡터정보를 획득한다. 사용자 단말(10)은 획득된 벡터정보가 3차원 공간의 깊이가 감소되는 방향임을 확인하고, 선택된 제1 색상(G1001)의 색상 정보를 추출한다. 따라서, 사용자에게는 팔레트에서 물감이 전자펜(20)으로 흡입되는 3차원의 그리기 기능이 실행되는 것으로 이해될 수 있다.
제1 색상(G1001)의 색상 정보가 추출된 다음 전자펜(20)은 물리적으로 이동된다. 예를 들면, 전자펜(20)은 사용자 단말(10)에서 이격 되었다가, 우측 이미지 G101에 도시된 바와 같이, 치솔의 머리의 위치에서 사용자 단말(10)과 다시 접촉된다. 이어서, 사용자 단말(10)은 전자펜(20)을 쓸어내리는 제스쳐에 따라서, 벡터정보를 획득한다. 사용자 단말(10)은 획득된 벡터정보가 3차원 공간의 깊이가 증가되는 방향임을 확인하고, 추출된 제1 색상(G1001)을 갖는 객체(G1002)를 치솔의 머리위치에 그린다. 따라서, 사용자에게는 제1 색상(G1001)을 갖는 치약이 전자펜(20)으로부터 토출되는 3차원의 그리기 기능이 실행되는 것으로 이해될 수 있다. 전술한 실시예에서는, 객체의 다양한 속성들 중 색상이 추출되거나, 또는 토출되는 경우를 예시하였으나, 다른 실시예에서는 객체의 다른 속성들 예를 들면, 형상이나 부피 등의 속성이 추출되고, 이동된 전자펜(20)의 접촉 위치에 추출된 형상이나 부피를 갖는 객체를 그릴 수도 있다.
도 11은 3차원 그리기 기능의 일 실시예로, 좌측의 캔(G1101)과 우측의 캔(G1102)는 각각 시간의 흐름에 따라서 사용자 단말(10)에 표시되는 3차원 객체에 해당한다. 다만, 설명의 편의를 위하여, 3차원 객체만 분리하여 도시되었음을 당업자라면 이해할 수 있다.
먼저, 사용자 단말(10)은 전자펜(20)의 가상의 펜촉을 사용자 단말(10)에 표시된 좌측의 캔(G1101)의 개구부(미도시)를 선택한다. 만약, 개구부의 깊이가 0이 아닌 경우, 사용자는 전자펜(20)을 쓸어올리거나 쓸어내리는 제스쳐를 통해서 전자펜(20)의 가상의 펜촉을 개구부로 이동시킬 수 있다.
개구부가 선택되면, 사용자 단말(10)은 전자펜(20)을 쓸어올리는 사용자의 제스쳐에 따라서, 벡터정보를 획득한다. 사용자 단말(10)은 벡터정보에 기초하여 좌측의 캔(G1101)에 3차원 그리기 기능을 실행한다. 우측의 캔(G1102)는 좌측의 캔(G1101)에 3차원 그리기 기능을 실행한 결과이다. 즉, 3차원 그리기 기능을 실행하면 좌측의 캔(G1101)이 우측의 캔(G1102)와 같이 찌그러지는 효과가 실행된다. 예를들어, 사용자 단말(10)은 벡터정보의 방향이 3차원 공간의 깊이를 감소시키는 방향인지를 판단한다. 만약, 벡터정보의 방향이 3차원 공간의 깊이를 감소시키는 방향인 경우, 사용자 단말(10)은 좌측의 캔(G1101)의 우측의 캔(G1102)과 같이 찌그러트린다.
일 실시예에서, 좌측의 캔(G1101)이 찌그러지는 정도는, 벡터정보의 크기에 따라서 결정될 수 있다. 예를 들어, 사용자 단말(10)은, 벡터정보의 크기가 클수록 좌측의 캔(G1101)에 더 많은 물리적인 압력이 가해진 것과 같은 효과를 실행할 수 있다. 벡터정보의 크기는 전자펜(20)을 쓸어올리는 사용자의 제스쳐의 길이에 비례할 수 있다.
사용자의 입장에서는, 좌측의 캔(G1101)의 내부의 내용물이 전자펜(20)으로 흡입됨에 따라서, 좌측의 캔(G1101)의 내부 압력이 낮아져서 찌그러지는 것으로 이해될 수 있다.
본 실시예에 따르면, 3차원 그리기 기능을 실행하면 선택된 3차원 객체의 형상이 찌그러지고, 부피가 감소하는 효과가 실행되는데, 이러한 효과는 3차원 객체에 대하여 미리 정의되어 있을 수 있다. 예를 들어, 좌측의 캔(G1101)의 형상과 부피을 파라미터로 하는 함수가 좌측의 캔(G1101)에 미리 맵핑되어 있을 수 있다. 사용자 단말(10)은 벡터정보를 함수에 입력값으로하여, 좌측의 캔(G1101)의 형상과 부피를 변형한다.
또 다른 실시예에 따르면, 선택된 3차원 객체를 찌그러트리는 효과를 사용자가 메뉴항목에서 선택할 수도 있다. 전자펜(20)을 쓸어올리는 제스쳐에 따라서 벡터정보가 획득되면, 사용자가 미리 선택한 찌그러트리는 효과를 실행한다.
한편, 도시된 실시예와 반대로 전자펜(20)을 쓸어내리는 제스쳐에 따라서 벡터정보가 획득되면, 사용자 단말(10)은 좌측의 캔(G1101)을 팽창시키는 3차원 그리기 기능을 실행할 수도 있음을 이해할 수 있다.
도 12는, 3차원 그리기 기능의 다른 일 실시예로서, 선택된 객체를 흡입하는 효과를 도시한다. 도 12를 참조하면, 좌측의 컵(G1201)과 우측의 컵(G1202)은 각각 액체를 담고 있으며, 담겨진 액체 또한 3차원 객체에 해당한다. 좌측의 컵(G1201), 우측의 컵(G1202)은 각각 시간의 흐름에 따라서 사용자 단말(10)에 표시되는 3차원 객체에 해당한다. 도 11과 유사하게, 3차원 객체만 분리하여 도시되었음을 당업자라면 이해할 수 있다.
먼저, 사용자 단말(10)은 전자펜(20)의 가상의 펜촉을 사용자 단말(10)에 표시된 좌측의 컵(G1201)의 개구부(미도시)로 이동시킨다. 이어서, 사용자 단말(10)은, 전자펜(20)을 쓸어내리는 제스쳐에 따라서 전자펜(20)의 가상의 펜촉을 액체 내부로 이동시킨다. 이를 통해서, 사용자 단말(10)은 좌측의 컵(G1201)의 내부에 담겨진 액체를 선택할 수 있다. 사용자의 시각에서는, 도시된 바와 같이 좌측의 컵(G1201) 내부의 액체에 전자펜(20)을 담그는 것으로 이해할 수 있다.
사용자 단말(10)은 전자펜(20)을 쓸어올리는 사용자의 제스쳐에 따라서, 벡터정보를 획득한다. 사용자 단말(10)은 획득한 벡터정보에 기초하여, 좌측의 컵(G1201) 내부의 액체를 흡입하는 3차원 그리기 기능을 실행한다. 예를 들어 사용자 단말(10)은 벡터정보가 3차원 공간에서 깊이를 감소키는 방향인지를 판단한다. 벡터정보가 3차원 공간에서 깊이를 감소키는 방향인 경우, 사용자 단말(10)은 좌측의 컵(G1201)의 내부의 액체의 부피를 감소시킨다. 사용자의 시각에서는, 전자펜(20)이 스포이드와 같이 동작하여 액체를 흡입하는 것으로 이해될 수 있다.
일 실시예에서, 액체의 부피를 얼마나 감소시킬 것인지는 벡터정보의 크기에 따라서 결정될 수 있다. 예를 들어, 사용자 단말(10)은 벡터정보의 크기에 비례하여, 액체의 부피를 감소량을 결정한다. 벡터정보의 크기는, 전자펜(20)에 대한 사용자의 제스쳐의 길이에 따라서 결정될 수 있다.
한편, 액체의 부피가 감소됨에 따라서 가상의 펜촉이 액체의 수면위로 노출되는 경우, 사용자 단말(10)은 액체를 흡입하는 3차원 그리기 기능을 중단할 수 있다. 예를 들어, 사용자 단말(10)은 3차원 공간에서 액체의 수면의 깊이 값과, 가상의 펜촉의 깊이 값을 비교하여, 액체의 수면의 깊이가 더 큰 경우 3차원 그리기 기능을 중단할 수 있다. 사용자는 다시 가상의 펜촉을 액체 내부로 이동시킴으로서, 3차원 그리기 기능을 다시 실행시킬 수 있다.
본 실시예에 따르면, 3차원 그리기 기능을 실행하면 선택된 3차원 객체의 부피가 감소하는 효과가 실행되는데, 이러한 효과는 3차원 객체에 대하여 미리 정의되어 있을 수 있다. 예를 들어, 좌측의 컵(G1201)의 내부의 객체는 액체라는 정보가 사용자 단말(10)에 사전에 설정되어 있고, 액체의 부피을 파라미터로 하는 함수가 액체에 미리 맵핑되어 있을 수 있다. 사용자 단말(10)은 벡터정보를 함수에 입력값으로하여, 좌측의 컵(G1201) 내부의 액체의 부피를 변형한다. 또 다른 실시예에 따르면, 선택된 3차원 객체를 흡입하는 효과를 사용자가 메뉴항목에서 선택할 수도 있다.
한편, 전자펜(20)을 통해서 흡입된 액체는, 전자펜(20)을 쓸어내리는 제스쳐에 따라서 토출될 수도 있다.
도 13은, 3차원 그리기 기능의 또 다른 일 실시예로서, 선택된 객체를 전자펜의 물리적 움직임에 따라서 조각하는 효과를 도시한다. 도 13를 참조하면, 사과들(G1301,G1032,G1033)은 시간의 흐름에 따라서 사용자 단말(10)에 표시되는 3차원 객체를 의미한다.
먼저, 사용자 단말(10)은 전자펜(20)의 가상의 펜촉에 기초하여 좌측의 사과(G1301)를 선택한다. 이어서, 사용자 단말(10)은, 전자펜(20)을 쓸어내리는 제스쳐에 따라서 전자펜(20)의 가상의 펜촉을 좌측의 사과(G1301) 내부로 이동시킨다. 가상의 펜촉이 사과(G1301)의 내부로 삽입된 결과는 가운데 사과(G1302)와 같이 표시될 수 있다. 사용자 단말(10)은 전자펜(20)의 물리적 움직임에 따라서, 모션정보를 획득한다. 사용자 단말(10)은 모션정보에 따라서, 선택된 객체를 조각하는 효과를 실행한다. 예를 들어, 사용자가 전자펜(20)을 하트 모양으로 움직인 경우, 우측의 사과(G1303)가 사용자 단말(10)에 표시된다. 우측의 사과(G1303)에서 하트 내부는 가상의 펜촉의 깊이만큼 파내어져 있다.
선택된 객체를 조각하는 3차원 그리기 기능은 사과(G1301)에 미리 맵핑되어 있거나 또는 사용자가 사용자 단말(10)의 메뉴항목에서 선택할 수 있다.
한편, 본 실시예에서는 다양한 햅틱 피드벡이 제공될 수 있다. 예를 들어, 사용자 단말(10) 또는 전자펜(20)은, 가상의 펜촉을 통해서 좌측의 사과(G1301)가 선택되는 경우에는 제1 햅틱 피드백을 제공하고, 가상의 펜촉이 중간의 사과(G1302) 내부로 삽입되는 경우에는 제2 햅틱 피드백을 제공하고, 전자펜(20)의 물리적인 이동에 따라서 가상의 펜촉이 사과의 내부를 조각하는 경우 제3 햅틱 피드백을 제공할 수 있다. 제1 햅틱 피드백 내지 제3 햅틱 피드백은 서로 상이한 것이 바람직한데, 예를 들어, 제1 햅틱 피드백 내지 제3 햅틱 피드백의 진동의 패턴이나 펄스를 달리하거나, 제1 햅틱 피드백은 전기적 자극, 제2 햅틱 피드백은 진동, 제3 햅틱 피드백은 힘(마찰력 등)을 통해서 구현할 수 있다. 즉, 사용자 단말(10) 또는 전자펜(20)은, 3차원 그리기 도중 발생되는 이벤트의 종류에 따라서 다양한 햅틱 피드벡을 제공할 수 있다.
지금까지 살펴본 도 7 내지 도 13은 3차원 그리기 기능을 설명하기 위한 예시일 뿐, 본 발명의 진정한 권리범위가 이에 한정되는 것은 아니며, 전술한 설명에 기초하여 다른 3차원 그리기 기능이 실행될 수 있음을 당업자라면 이해할 수 있다.
도 3은 본 발명의 일 실시예에 따른 사용자 단말을 도시한 도면이다. 도 3에서는 설명의 관점이 흐려지는 것을 방지하기 위하여 범용적인 구성요소들의 도시가 생략되었다. 또한, 도시된 구성요소들이 모두 필수 구성요소인 것은 아니다.
도 3을 참조하면, 사용자 단말(10)은 사용자 인터페이스(110), 통신 인터페이스(120), 프로세서(130) 및 메모리(140)를 포함한다.
메모리(140)에는 사용자 단말(10)을 구동시키는 운영체제(142)와 운영체제(142) 상에서 동작하는 드로잉 어플리케이션(141)이 존재한다. 실시예에 따라서, 드로잉 어플리케이션(141)은 운영체제(142)에 내장될 수 있다. 운영체제(142) 및 드로잉 어플리케이션(141)은 프로세서(130)에 의해 실행된다.
메모리(140)는 플래시 메모리 타입(flash memory type), 하드디스크 타입(hard disk type), 멀티미디어 카드 마이크로 타입(multimedia card micro type), 카드 타입의 메모리(예를 들어 SD 또는 XD 메모리 등), 램(RAM, Random Access Memory) SRAM(Static Random Access Memory), 롬(ROM, Read-Only Memory), EEPROM(Electrically Erasable Programmable Read-Only Memory), PROM(Programmable Read-Only Memory) 자기 메모리, 자기 디스크, 광디스크 중 적어도 하나의 타입의 저장매체를 포함할 수 있다.
사용자 인터페이스(110)는 사용자로부터 사용자 단말(10)을 조작받거나, 프로세서(130)의 데이터 처리 결과를 표시하기 위한 인터페이스를 의미한다. 본 발명의 일 실시예에 따르면, 사용자 인터페이스(110)는 제1 패널(111)과 제2 패널(112)를 포함한다.
제1 패널(111)은 터치스크린으로 구성될 수 있다. 예를 들어, 제1 패널은(111), 터치스크린의 터치 또는 근접 터치를 감지하기 위한 다양한 센서가 구비될 수 있다. 터치스크린의 터치를 감지하기 위한 센서의 일례로 촉각 센서가 있다. 촉각 센서는 사람이 느끼는 정도로 또는 그 이상으로 특정 물체의 접촉을 감지하는 센서를 말한다. 상기 촉각 센서는 접촉면의 거칠기, 접촉 물체의 단단함, 접촉 지점의 온도 등의 다양한 정보를 감지할 수 있다.
또한, 터치스크린의 터치를 감지하기 위한 센서의 일례로 근접 센서가 있다.근접 센서는 소정의 검출면에 접근하는 물체, 혹은 근방에 존재하는 물체의 유무를 전자계의 힘 또는 적외선을 이용하여 기계적 접촉이 없이 검출하는 센서를 말한다. 따라서, 근접 센서는 접촉식 센서보다는 그 수명이 상당히 길며 그 활용도 또한 상당히 높다.
근접 센서의 예로는 투과형 광전 센서, 직접 반사형 광전 센서, 미러 반사형 광전 센서, 고주파 발진형 근접 센서, 정전용량형 근접 센서, 자기형 근접 센서, 적외선 근접 센서 등이 있다.
제1 패널(111)은 액정 디스플레이(liquid crystal display), 박막 트랜지스터 액정 디스플레이(thin film transistor-liquid crystal display), 유기 발광 다이오드(organic light-emitting diode), 플렉시블 디스플레이(flexible display), 3차원 디스플레이(3D display) 중에서 적어도 하나를 포함할 수 있다. 그리고 사용자 단말(10)의 구현 형태에 따라 2개 이상의 디스플레이 장치가 존재할 수도 있다. 터치스크린은 터치 입력 위치, 터치된 면적뿐만 아니라 터치 입력 압력까지도 검출할 수 있도록 구성될 수 있다. 또한, 터치스크린은 상기 터치(real-touch) 뿐만 아니라 근접 터치(proximity touch)도 검출될 수 있도록 구성될 수 있다.
제2 패널(112)은 EMR 방식에 따라서 전자펜(20)의 입력을 감지하기 위하여, 자기장을 형성할 수 있는 패널일 수 있다. 만약, 전자펜(20)이 액티브 방식으로 구현되는 경우, 제2 패널(112)은 생략될 수 있다. 제 2 패널(112)에 전압이 인가됨으로써, 제2 패널(112)의 적어도 일부 영역에 자기장이 형성될 수 있다.
제2 패널(112)은 자기장을 발생시킬 수 있는 복수의 코일을 포함할 수 있으며, 복수의 코일은 제2 패널(112) 내에 소정의 간격으로 배열될 수 있다. 예를 들어, 제 2 패널(112) 내에는 복수의 전선이 세로 및 가로로 배열될 수 있으며, 세로로 배열된 전선들 및 가로로 배열된 전선들이 만나는 위치에 복수의 코일이 각각 배치될 수 있다. 또한, 코일의 양 끝단은 세로로 배열된 전선 및 가로로 배열된 전선에 각각 연결될 수 있다. 따라서, 세로로 배열된 전선 및 가로로 배열된 전선을 통하여 소정의 전압이 코일에 인가됨으로써 제 2 패널(112)에 포함된 코일은 소정의 자기장을 발생시킬 수 있다. 그러나, 이에 제한되지 않으며, 제2 패널(112)의 적어도 일부의 영역에는, 자석, 코일 등을 이용한 다양한 자기장 발생 기술을 통하여, 자기장이 발생될 수 있다.
도 16을 참조할 때, 제2 패널(112)은 제1 패널(111)의 하부에 접할 수 있으며, 제1 패널(111)과 동일한 크기일 수 있다. 그러나, 이에 제한되지 않으며, 제 2 패널(112)은 제1 패널(111)보다 작을 수도 있다.
제2 패널(112)은 전자펜(20)에 따른 자기장의 세기의 변화를 감지하기 위한 센서부를 포함할 수 있다. 제2 패널(112)의 센서부는, 센서코일을 통해 자기장의 세기의 변화를 감지한다. 사용자 단말(10)은 자기장 세기의 변화에 의해 앞서 설명된 전자펜(20)을 통한 입력들, 벡터정보와 모션정보를 획득할 수 있다.
예를 들어, 벡터정보를 획득하는 방법으로서, 전자펜(20)의 몸체의 상하 방향으로 공진주파수가 다른 2개 이상의 회로들을 내장한다. 전자펜(20)에 대한 사용자의 제스쳐에 따라서, 공진주파수가 다른 회로들 중 어느 하나가 선택되면, 제2 패널(112)의 센서부는 센서코일의 입력신호의 주파수를 변경함으로써, 전자펜(20)에서 공진하는 회로를 검출할 수 있다. 즉, 입력신호의 주파수에 따라서 전자펜(20)의 상부에 위치한 회로가 공진하는지, 아니면 전자펜(20)의 하부에 위치한 회로가 공진하는지 여부에 따라서, 사용자 단말(10)은 전자펜(20)에 대한 사용자의 제스쳐가 스윕업 제스쳐인지 아니면 스윕다운 제스쳐인지를 파악할 수 있다.
예를 들어, 모션정보를 획득하는 방법으로서, 제2 패널(112)의 센서부는, 도 16에 도시된 바와 같이, 제2 패널(112)에서 자기장의 세기가 최대인 지점을 검출함으로써, 전자펜(20)을 통한 (x,y) 입력을 획득할 수 있다. 또한, 제2 패널(112)의 센서부는, 자기장의 세기의 최대값의 변화를 이용하여, 전자펜(20)이 사용자 단말(10)로부터 멀어짐을 검출할 수 있다. 또한, 제2 패널(112)의 센서부는 세서코일의 영역별로 감지되는 자기장의 세기 분포를 검출함으로써 전자펜(20)의 기울기 각도와 방향에 대한 정보를 획득할 수 있다.
통신 인터페이스(120)는 외부 디바이스, 예를 들면 전자펜(20)과 통신을 하게 하는 하나 이상의 구성요소를 포함할 수 있다. 단, 전자펜(20)이 패시브 방식으로 구현되는 경우에는, 통신 인터페이스(120)는 생략될 수 있다. 예를 들어, 통신 인터페이스(120)는 방송 수신 모듈, 이동통신 모듈, 무선 인터넷 모듈, 유선 인터넷 모듈, 근거리 통신 모듈, 위치정보 모듈 등을 포함할 수 있다.
방송 수신 모듈은 방송 채널을 통하여 외부의 방송 관리 서버로부터 방송 신호 및/또는 방송 관련된 정보를 수신한다. 상기 방송 채널은 위성 채널, 지상파 채널을 포함할 수 있다.
또한, 이동통신 모듈은, 이동 통신망 상에서 기지국, 외부의 단말, 서버 중 적어도 하나와 무선 신호를 송수신한다. 여기에서, 상기 무선 신호는, 음성 호 신호, 화상 통화 호 신호 또는 문자/멀티미디어 메시지 송수신에 따른 다양한 형태의 데이터를 포함할 수 있다.
무선 인터넷 모듈은 무선 인터넷 접속을 위한 모듈을 말하는 것으로, 무선 인터넷 모듈은 내장되거나 외장 될 수 있다. 또한, 유선 인터넷 모듈은 유선 인터넷 접속을 위한 모듈을 의미한다.
근거리 통신 모듈은 근거리 통신을 위한 모듈을 말한다. 근거리 통신 기술로 블루투스(Bluetooth), RFID(Radio Frequency Identification), 적외선 통신(IrDA, infrared Data Association), UWB(Ultra Wideband), ZigBee, WFD(Wi-Fi Direct) NFC(Near Field Communication) 등이 이용될 수 있다.
프로세서(130)는 사용자 단말(10)의 전반적인 동작을 제어한다. 프로세서(130)는, 메모리(140)에 저장된 운영체제(142)나 드로잉 어플리케이션(141)을 실행함으로써, 사용자 인터페이스(110), 통신 인터페이스(120) 및 메모리(140)를 제어한다.
프로세서(130)는 입력처리 모듈(131), 객체선택 모듈(132), 렌더링 모듈(133), 기능결정 모듈(134), 기능실행 모듈(135) 및 GUI생성 모듈(136)을 포함한다. 상술된 모듈들은 운영체제(142)나 드로잉 어플리케이션(141)을 실행에 따른 소프트웨어 블록들로 이해될 수 있다.
입력처리 모듈(131)은 제1 패널(111) 또는 제2 패널(112)을 통한 사용자의 입력을 처리한다. 예를 들어, 입력처리 모듈(131)은 제2 패널(112)의 센서부에서 감지된 자기장의 변화를 통해 벡터정보 또는 모션정보를 획득한다. 객체선택 모듈(132)은, 입력처리 모듈(131)로부터 벡터정보 또는 모션정보를 이용하여, 3차원 공간에서 2차원 또는 3차원의 객체를 선택한다. 기능결정 모듈(134)는 전자펜(20)을 이용한 사용자 입력에 기초하여서 획득된 벡터정보 또는 모션정보에 따라서 실행할 3차원 그리기 기능을 결정한다. 기능실행 모듈(135)는 기능결정 모듈(134)에 의해 결정된 3차원 그리기 기능을 실행한다. 렌더링 모듈(133)은, 2차원 또는 3차원 객체를 포함하는 3차원 공간을 렌더링하여 사용자 인터페이스(110)로 출력한다. GUI생성 모듈(136)은 사용자 단말(10)을 조작하기 위한 GUI를 생성하여 사용자 인터페이스(110)로 출력한다. 예를 들어, GUI생성 모듈(136)은, 3차원 그리기 기능을 선택하기 위한 메뉴항목의 GUI를 생성하여 사용자 인터페이스(110)로 출력한다.
지금까지 살펴본 사용자 단말(10)의 기본적인 하드웨어 구성과 동작에 대한 설명에 이어서, 사용자 단말(10)이 전술한 3차원 객체를 그리는 방법을 수행하는 과정을 설명한다.
사용자 인터페이스(110)는 2차원 또는 3차원의 객체가 포함된 3차원 공간을 표시한다. 여기서, 2차원 또는 3차원의 객체는 전자펜(20)을 통해서 사전에 그려진 객체일 수 있다.
프로세서(132)는 전자펜(20)의 몸체를 따라 진행되는 사용자의 제스처에 기초하여 3차원 공간의 깊이 방향에 대한 벡터정보를 획득한다. 프로세서(132)는 전자펜(20)의 물리적 움직임에 기초하여, 모션정보를 획득할 수도 있다.
만약, 전자펜(20)이 패시브 방식인 경우에는, 제2 패널(112)을 통해서 벡터정보와 모션정보가 획득될 수 있다. 이와 달리, 전자펜(20)이 액티브 방식인 경우, 통신 인터페이스(120)를 통해서 벡터정보와 모션정보가 획득될 수 있다.
프로세서(132)는 사용자 인터페이스(110)에 표시된 객체를 선택하기 위하여, 벡터정보와 모션정보를 이용할 수 있다. 프로세서(132)는 모션정보에 포함된 (x,y) 2차원 입력에 응답하여, 가상의 펜촉을 사용자 인터페이스(110)에 표시한다. 프로세서(133)는 전자펜(20)을 쓸어올리거나 쓸어내리는 제스쳐에 따라서 획득된 벡터정보를 이용하여, 사용자 인터페이스(110)에 표시된 가상의 펜촉을 3차원 공간의 깊이 방향으로 이동시킨다. 프로세서(133)는 가상의 펜촉이 깊이 방향으로 이동함에 따라서 소정의 객체에 맞닿으면, 전자펜(20) 또는 사용자 단말(10)을 통해서 햅틱 피드백을 제어하기 위한 제어신호를 출력한다. 만약, 사용자 단말(10)이 햅틱 피드백을 제공하는 경우, 사용자 단말(10)은 액츄에이터(미도시)를 더 포함할 수 있다.
프로세서(132)는 획득된 벡터정보와 모션정보 중 적어도 하나를 이용하여 선택된 객체에 대한 3차원 그리기 기능을 실행할 수 있다.
3차원 그리기 기능이 객체를 익스트루드하는 기능인 경우, 프로세서(132)는 벡터정보의 방향에 따라서, 선택된 객체를 전자펜(20)에 접근하는 방향 또는 전자펜(20)으로부터 멀어지는 방향으로 익스트루드(extrude)한다. 만약, 전자펜(20)이 사용자 단말(10)에서 이격되는 경우, 프로세서(132)는 모션정보에 기초하여 단면적을 변경하면서 선택된 객체를 익스트루드한다.
또한, 프로세서(132)는 벡터정보의 크기 또는 방향에 따라서, 선택된 객체의 적어도 일부가 전자펜(20)에 흡입되는 효과를 실행할 수 있다. 프로세서(132)는 벡터정보의 크기 또는 방향에 따라서 선택된 객체의 색상을 추출하는 효과를 실행할 수 있다. 프로세서(132)는 벡터정보의 크기 또는 방향에 따라서, 선택된 객체의 형상이 수축되거나 부풀어오르는 효과를 실행할 수 있다. 프로세서(132)는 벡터정보의 크기 또는 방향에 따라서 선택된 객체의 부피가 증감되는 효과를 실행할 수 있다. 프로세서(132)는 벡터정보의 크기 또는 방향에 따라서 전자펜(20)에 사전에 흡입된 객체나 사전에 추출된 색상이 전자펜(20)의 가상의 펜촉으로부터 토출되는 효과를 실행할 수 있다.
또한, 프로세서(132)는 벡터정보가 상기 3차원 공간에서의 깊이가 증가하는 방향인 경우, 전자펜(20)의 가상의 펜촉을 선택된 객체의 내부로 삽입한다. 이어서, 프로세서(132)는 가상의 펜촉의 움직임에 따라서 선택된 객체를 조각하는 효과를 실행한다.
프로세서(132)는 3차원 그리기 기능을 실행한 결과를 사용자 인터페이스(110)를 통해서 표시한다. 또한, 프로세서(132)는 전자펜(20)을 통한 입력과 상이한 터치입력이 사용자 인터페이스(110)에서 감지되면, 사용자 인터페이스(110)에 표시된 3차원 공간의 뷰(view)를 제어하기 위한 3차원의 도구를 사용자 인터페이스(110)에 표시한다.
도 4는 본 발명의 일 실시예에 따른 액티브 방식의 전자펜을 도시한 도면이다. 도 4를 참조하면, 전자펜(20A)는 터치패널(210), 통신 인터페이스(220), 제어부(230), 센서부(240) 및 액츄에이터(250)를 포함한다. 또한, 전자펜(20A)는 배터리, 외부로부터 전원을 공급받기 위한 인터페이스(미도시)를 더 포함할 수 있다. 또한, 전자펜(20A)는 스피커나 마이크로폰을 더 포함할 수 있다.
터치패널(210)은 전자펜(20A)의 몸체에 배치되고, 사용자가 전자펜(20A)를 쓸어올리거나 쓸어내리는 제스쳐를 감지한다. 예를 들어, 터치패널(210)는 도 14에 도시된 바와 같이 전자펜(20)의 몸체에 배치될 수 있다.
센서부(240)는 가속도 센서(241), 자이로 센서(242) 및 기울기 센서(243)를 포함한다. 가속도 센서(241)는 전자펜(20A)의 물리적 움직임에 따른 가속도를 센싱한다. 본 발명의 일 실시예에서, 가속도 센서(241)는 다축의 가속도 센서일 수 있다. 다축의 가속도 센서를 통해서 중력가속도의 방향과 전자펜(20A)의 방향이 이루는 각도를 검출함으로써, 전자펜(20A)의 기울기를 검출할 수 있다. 자이로 센서(242)는 전자펜(20A)의 회전에 따른 회전방향과 회전각을 센싱한다. 기울기 센서(243)는 전자펜(20A)의 기울기를 검출한다. 가속도 센서(241)는 다축의 가속도 센서일 경우, 기울기 센서(243)는 생략될 수 있다.
통신 인터페이스(220)는 사용자 단말(10)과 유선 또는 무선으로 연결되어, 데이터를 송수신한다. 통신 인터페이스(220)는 예를 들어 블루투스 방식으로 사용자 단말(10)과 데이터를 송수신할 수 있으며, 보다 상세한 설명은 사용자 단말(10)의 통신 인터페이스(120)를 참조한다.
액츄에이터(250)는 제어부(230)의 제어에 따라서 햅틱 피드벡을 사용자에 제공한다. 액츄에이터(250)는 예를 들어, ERM 모터, 리니어 모터, 피에조 액츄에이터, EAP(Electoroactive polymer) 액츄에이터, 정전기력 액츄에이터 중 적어도 하나를 포함할 수 있다.
제어부(230)는 터치패널(210), 액츄에이터(250), 센서부(240) 및 통신 인터페이스(220)의 전반적인 동작을 제어한다. 제어부(230)는 터치패널(210)이 감지한 사용자의 제스쳐에 대한 정보와 센서부(240)에서 센싱된 정보를 통신 인터페이스(220)를 통해서 사용자 단말(10)에 전송한다.
도 5는 본 발명의 일 실시예에 따른 패시브 방식의 전자펜을 도시한 도면이다. 도 5를 참조하면, 전자펜(20B)는 제1 EMR 코일(310)과 제2 EMR 코일(320)을 포함한다. 도시된 실시예에서는 전자펜(20B)에 2개의 EMR 코일들(310,320)이 포함되지만, 이보다 많은 수의 EMR 코일들이 전자펜(20B)에 포함될 수도 있다.
제1 EMR 코일(310)과 제2 EMR 코일(320)는 서로 상이한 공진주파수를 갖는 EMR 회로로 구성될 수 있다. 또한, 제1 EMR 코일(310)과 제2 EMR 코일(320) 중 어느 하나는 전자펜(20B)에서 상하로 배치되는 것이 바람직하다. 제1 EMR 코일(310)고 제2 EMR 코일(320)는 사용자 단말(10)이 발생시킨 자기장에 변화를 일으킨다. 또한, 사용자 단말(10)은 자기장의 변화를 센싱함으로써, 사용자의 제스쳐가 제1 EMR 코일(310)을 선택하는지, 아니면 제2 EMR 코일(320)을 선택하는지를 파악할 수 있다.
도 15는 본 발명의 또 다른 일 실시예에 따른 전자펜을 도시한 도면이다. 도 15의 전자펜(20)은 패시브 방식으로 구현될 수 있으나, 액티브 방식으로 구현될 수도 있다.
전자펜(20)은 제1 입력부(151) 및 제2 입력부(152)를 포함한다. 제1 입력부(151)가 선택되는 경우, 사용자 단말(10)은 3차원 공간에서 깊이를 증가시키는 방향의 벡터정보를 획득한다. 반대로, 제2 입력부(152)가 선택되는 경우, 사용자 단말(10)은 3차원 공간에서 깊이를 감소시키는 방향의 벡터정보를 획득한다.
또 다른 실시예에서, 제2 입력부(152)가 선택된 다음에 이어서 제1 입력부(151)가 선택되는 경우, 즉, 스윕 다운 제스쳐의 경우, 사용자 단말(10)은 3차원 공간에서 깊이를 증가시키는 방향의 벡터정보를 획득한다. 반대로, 제1 입력부(151)가 선택된 다음에 이어서 제2 입력부(152)가 선택되는 경우, 즉, 스윕 업 제스쳐의 경우, 사용자 단말(10)은 3차원 공간에서 깊이를 감소시키는 방향의 벡터정보를 획득한다.
전자펜(20)이 패시브 방식으로 구현되는 경우, 제1 입력부(151)와 제2 입력부(152)는 각각 제1 EMR 코일(310)과 제2 EMR 코일(320)에 대응한다. 전자펜(20)이 액티브 방식으로 구현되는 경우, 제1 입력부(151)와 제2 입력부(152)는 각각은 전기적 신호를 발생시키는 버튼 또는 터치센서로 구현될 수 있다.
또 다른 실시예에서 전자펜(20)은 광학식 펜 또는 초음파 펜으로 구현될 수 있으며, 이에 한정되지 않는다.
또한, 사용자 단말(10)은 HMD(Head mount display)로 구현될 수 있다. 이 경우, 3D 화면은 현실 공간의 허공에 존재하는 것으로 사용자에게 인식된다. 따라서, 허공에서 객체를 선택 및 제어하는 것은 사용자에게 실재감을 반감시킨다. 본 발명의 일 실시예에 따르면, 전자펜(20)에 액츄에이터를 내장하여, 객체를 선택 및 제어하는 이벤트의 종류별로 다양한 햅틱 피드백을 제공하여, 실재감을 증대시킬 수 있다. 한편, HMD는 손 또는 전자펜(20)의 위치를 파악하기 위하여, 카메라 모듈을 포함할 수 있다. 이 때, 카메라 모듈은 3D 화면과 연동되어 동작할 수 있다.
한편, 상술한 본 발명의 실시예들은 컴퓨터에서 실행될 수 있는 프로그램으로 작성 가능하고, 컴퓨터로 읽을 수 있는 기록매체를 이용하여 상기 프로그램을 동작시키는 범용 디지털 컴퓨터에서 구현될 수 있다. 또한, 상술한 본 발명의 실시예에서 사용된 데이터의 구조는 컴퓨터로 읽을 수 있는 기록매체에 여러 수단을 통하여 기록될 수 있다. 상기 컴퓨터로 읽을 수 있는 기록매체는 마그네틱 저장매체(예를 들면, 롬, 플로피 디스크, 하드 디스크 등), 광학적 판독 매체(예를 들면, 시디롬, 디브이디 등)와 같은 저장매체를 포함한다.
이제까지 본 발명에 대하여 그 바람직한 실시예들을 중심으로 살펴보았다. 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명이 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 그러므로 개시된 실시예들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 본 발명의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 할 것이다.

Claims (20)

  1. 사용자 단말에서 3차원 객체를 그리는 방법에 있어서,
    상기 사용자 단말에 2차원 또는 3차원의 객체가 포함된 3차원 공간을 표시하는 단계;
    전자펜의 몸체를 따라 진행되는 사용자의 제스처에 기초하여, 상기 전자펜에서 획득된 3차원 공간의 깊이 방향에 대한 벡터정보를 수신하는 단계; 및
    상기 벡터정보를 이용하여, 상기 객체에 대한 3차원 그리기 기능을 실행하는 단계를 포함하는, 방법.
  2. 제 1 항에 있어서,
    상기 전자펜의 접촉에 의한 2차원 입력에 응답하여 가상의 펜촉을 표시하는 단계; 및
    상기 전자펜의 몸체를 쓸어올리거나 또는 쓸어내리는 제스쳐에 따라서 상기 가상의 펜촉을 상기 3차원 공간의 깊이 방향으로 이동시킴으로써, 상기 객체를 선택하는 단계를 더 포함하는, 방법.
  3. 제 2 항에 있어서,
    상기 가상의 펜촉이 상기 객체에 맞닿으면, 상기 전자펜 또는 상기 사용자 단말을 통해서 햅틱 피드백을 제공하는 단계를 더 포함하는 방법.
  4. 제 1 항에 있어서, 상기 3차원 그리기 기능을 실행하는 단계는,
    상기 벡터정보의 방향에 따라서, 상기 객체를 상기 전자펜에 접근하는 방향 또는 상기 전자펜으로부터 멀어지는 방향으로 익스트루드(extrude)하는, 방법.
  5. 제 4 항에 있어서,
    상기 전자펜이 상기 사용자 단말에서 이격됨에 따라서 상기 전자펜의 모션정보를 획득하는 단계를 더 포함하고,
    상기 3차원 그리기 기능을 실행하는 단계는, 상기 모션정보에 기초하여 단면적을 변경하면서 상기 객체를 익스트루드하는, 방법.
  6. 제 1 항에 있어서,
    상기 사용자 단말에서 상기 전자펜을 통한 입력과 상이한 터치입력이 감지되면, 상기 3차원 공간의 뷰(view)를 제어하기 위한 3차원의 도구를 표시하는 단계를 더 포함하는, 방법.
  7. 제 1 항에 있어서, 상기 3차원의 그리기 기능을 실행하는 단계는,
    상기 벡터정보의 크기 또는 방향에 따라서,
    상기 객체의 적어도 일부가 전자펜에 흡입되는 효과, 상기 객체의 색상을 추출하는 효과, 상기 객체의 형상이 수축되거나 부풀어오르는 효과, 상기 객체의 부피가 증감되는 효과 또는 상기 전자펜에 사전에 흡입된 객체나 사전에 추출된 색상이 상기 전자펜의 가상의 펜촉으로부터 토출되는 효과를 실행하는, 방법.
  8. 제 1 항에 있어서, 상기 3차원의 그리기 기능을 실행하는 단계는,
    상기 벡터정보가 상기 3차원 공간에서의 깊이가 증가하는 방향인 경우, 상기 전자펜의 가상의 펜촉을 상기 객체의 내부로 삽입하는 단계; 및
    상기 가상의 펜촉의 움직임에 따라서 상기 객체를 조각하는 효과를 실행하는 단계를 포함하는, 방법.
  9. 제 1 항 내지 제 8 항 중 어느 한 항에 기재된 방법을 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.
  10. 2차원 또는 3차원의 객체가 포함된 3차원 공간을 표시하는 사용자 인터페이스; 및
    전자펜의 몸체를 따라 진행되는 사용자의 제스처에 기초하여 상기 전자펜에서 획득된 3차원 공간의 깊이 방향에 대한 벡터정보를 수신하고, 상기 벡터정보를 이용하여 상기 객체에 대한 3차원 그리기 기능을 실행하는 프로세서를 포함하는, 사용자 단말.
  11. 제 10 항에 있어서, 상기 프로세서는,
    상기 전자펜의 접촉에 의한 2차원 입력에 응답하여, 가상의 펜촉을 상기 사용자 인터페이스에 표시하고, 상기 전자펜을 쓸어올리거나 또는 쓸어내리는 제스쳐에 따라서 상기 가상의 펜촉을 상기 3차원 공간의 깊이 방향으로 이동시킴으로써 상기 객체를 선택하는, 사용자 단말.
  12. 제 11 항에 있어서, 상기 프로세서는,
    상기 가상의 펜촉이 상기 객체에 맞닿으면, 상기 전자펜 또는 상기 사용자 단말을 통해서 햅틱 피드백을 제공하기 위한 제어신호를 출력하는, 사용자 단말.
  13. 제 10 항에 있어서, 상기 프로세서는,
    상기 벡터정보의 방향에 따라서, 상기 객체를 상기 전자펜에 접근하는 방향 또는 상기 전자펜으로부터 멀어지는 방향으로 익스트루드(extrude)하는, 사용자 단말.
  14. 제 13 항에 있어서, 상기 프로세서는,
    상기 전자펜이 상기 사용자 단말에서 이격됨에 따라서 상기 전자펜의 모션정보를 획득하고, 상기 모션정보에 기초하여 단면적을 변경하면서 상기 객체를 익스트루드하는, 사용자 단말.
  15. 제 10 항에 있어서, 상기 프로세서는,
    상기 전자펜을 통한 입력과 상이한 터치입력이 상기 사용자 인터페이스에서 감지되면, 상기 3차원 공간의 뷰(view)를 제어하기 위한 3차원의 도구를 상기 사용자 인터페이스에 표시하는, 사용자 단말.
  16. 제 10 항에 있어서, 상기 프로세서는,
    상기 벡터정보의 크기 또는 방향에 따라서,
    상기 객체의 적어도 일부가 전자펜에 흡입되는 효과, 상기 객체의 색상을 추출하는 효과, 상기 객체의 형상이 수축되거나 부풀어오르는 효과, 상기 객체의 부피가 증감되는 효과 또는 상기 전자펜에 사전에 흡입된 객체나 사전에 추출된 색상이 상기 전자펜의 가상의 펜촉으로부터 토출되는 효과를 실행하는, 사용자 단말.
  17. 제 10 항에 있어서, 상기 프로세서는,
    상기 벡터정보가 상기 3차원 공간에서의 깊이가 증가하는 방향인 경우, 상기 전자펜의 가상의 펜촉을 상기 객체의 내부로 삽입하고, 상기 가상의 펜촉의 움직임에 따라서 상기 객체를 조각하는 효과를 실행하는, 사용자 단말.
  18. 제 10 항에 있어서,
    상기 사용자 인터페이스는, EMR(electromagnetic resonance)를 이용하여 상기 벡터정보 또는 상기 전자펜의 물리적 움직임에 대한 모션정보를 획득하는, 사용자 단말.
  19. 제 10 항에 있어서,
    상기 사용자 단말은, 상기 전자펜으로부터 상기 벡터정보를 수신하는 통신 인터페이스를 더 포함하는, 사용자 단말.
  20. 제 10 항에 있어서, 상기 전자펜은,
    사용자에게 햅틱 피드백을 제공하는 액츄에이터;
    가속도, 회전각 및 기울기 중 적어도 하나를 감지하는 센서부; 및
    상기 제스쳐를 감지하는 터치 패널을 포함하는 것인, 사용자 단말.

KR1020130112858A 2013-09-23 2013-09-23 사용자 단말에서 3차원 객체를 그리는 방법 및 이를 수행하는 사용자 단말 KR101531169B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020130112858A KR101531169B1 (ko) 2013-09-23 2013-09-23 사용자 단말에서 3차원 객체를 그리는 방법 및 이를 수행하는 사용자 단말
US14/494,279 US20150084936A1 (en) 2013-09-23 2014-09-23 Method and apparatus for drawing three-dimensional object

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020130112858A KR101531169B1 (ko) 2013-09-23 2013-09-23 사용자 단말에서 3차원 객체를 그리는 방법 및 이를 수행하는 사용자 단말

Publications (2)

Publication Number Publication Date
KR20150033191A KR20150033191A (ko) 2015-04-01
KR101531169B1 true KR101531169B1 (ko) 2015-06-24

Family

ID=52690549

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020130112858A KR101531169B1 (ko) 2013-09-23 2013-09-23 사용자 단말에서 3차원 객체를 그리는 방법 및 이를 수행하는 사용자 단말

Country Status (2)

Country Link
US (1) US20150084936A1 (ko)
KR (1) KR101531169B1 (ko)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170090571A1 (en) * 2015-09-29 2017-03-30 General Electric Company System and method for displaying and interacting with ultrasound images via a touchscreen
WO2018071041A1 (en) 2016-10-14 2018-04-19 Hewlett-Packard Development Company, L.P. Rebuilding three-dimensional models to provide simplified three-dimensional models
US10915185B2 (en) 2016-10-31 2021-02-09 Hewlett-Packard Development Company, L.P. Generating a three-dimensional image using tilt angle of a digital pen
US10489653B2 (en) 2018-03-07 2019-11-26 Capital One Services, Llc Systems and methods for personalized augmented reality view
US10095929B1 (en) * 2018-03-07 2018-10-09 Capital One Services, Llc Systems and methods for augmented reality view
KR102185454B1 (ko) * 2019-04-17 2020-12-02 한국과학기술원 3차원 스케치 방법 및 장치
US11733861B2 (en) * 2020-11-20 2023-08-22 Trimble Inc. Interpreting inputs for three-dimensional virtual spaces from touchscreen interface gestures to improve user interface functionality

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20100029219A (ko) * 2007-05-29 2010-03-16 라이브스크라이브, 인크. 멀티모달 스마트펜 컴퓨팅 시스템
JP2012079328A (ja) * 2004-10-12 2012-04-19 Nippon Telegr & Teleph Corp <Ntt> 3次元ポインティング方法、3次元ポインティング装置、及び3次元ポインティングプログラム

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6037937A (en) * 1997-12-04 2000-03-14 Nortel Networks Corporation Navigation tool for graphical user interface
US8432365B2 (en) * 2007-08-30 2013-04-30 Lg Electronics Inc. Apparatus and method for providing feedback for three-dimensional touchscreen
KR20100041006A (ko) * 2008-10-13 2010-04-22 엘지전자 주식회사 3차원 멀티 터치를 이용한 사용자 인터페이스 제어방법
KR101503835B1 (ko) * 2008-10-13 2015-03-18 삼성전자주식회사 멀티터치를 이용한 오브젝트 관리 방법 및 장치
US8232990B2 (en) * 2010-01-05 2012-07-31 Apple Inc. Working with 3D objects
US20120019449A1 (en) * 2010-07-26 2012-01-26 Atmel Corporation Touch sensing on three dimensional objects
US9389707B2 (en) * 2011-10-28 2016-07-12 Atmel Corporation Active stylus with configurable touch sensor
KR102096581B1 (ko) * 2012-09-14 2020-05-29 삼성전자주식회사 표시 정보를 편집하기 위한 방법 및 그 전자 장치
CN103077633A (zh) * 2013-01-11 2013-05-01 深圳超多维光电子有限公司 一种立体虚拟培训系统和方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012079328A (ja) * 2004-10-12 2012-04-19 Nippon Telegr & Teleph Corp <Ntt> 3次元ポインティング方法、3次元ポインティング装置、及び3次元ポインティングプログラム
KR20100029219A (ko) * 2007-05-29 2010-03-16 라이브스크라이브, 인크. 멀티모달 스마트펜 컴퓨팅 시스템

Also Published As

Publication number Publication date
US20150084936A1 (en) 2015-03-26
KR20150033191A (ko) 2015-04-01

Similar Documents

Publication Publication Date Title
KR101531169B1 (ko) 사용자 단말에서 3차원 객체를 그리는 방법 및 이를 수행하는 사용자 단말
US11699271B2 (en) Beacons for localization and content delivery to wearable devices
US10401964B2 (en) Mobile terminal and method for controlling haptic feedback
AU2014200250B2 (en) Method for providing haptic effect in portable terminal, machine-readable storage medium, and portable terminal
KR102051418B1 (ko) 영상에 포함된 객체를 선택하기 위한 사용자 인터페이스 제어 장치 및 그 방법 그리고 영상 입력 장치
RU2559720C2 (ru) Устройство и способ пользовательского ввода для управления отображаемой информацией
US20150253851A1 (en) Electronic device and method for outputting feedback
KR20140126129A (ko) 잠금 및 해제를 제어하는 장치 및 방법
EP2753065B1 (en) Method and apparatus for laying out image using image recognition
CN110476142A (zh) 虚拟对象用户界面显示
CN103369130B (zh) 显示设备及其控制方法
EP3088996A1 (en) Systems and methods for tactile guidance
EP2738651A2 (en) Electronic device for providing hovering input effects and method for controlling the same
US20160048209A1 (en) Method and apparatus for controlling vibration
KR101815720B1 (ko) 진동 제어 방법 및 장치
CN104937521A (zh) 将触觉效果提供给输入单元的便携式终端和方法
US10422996B2 (en) Electronic device and method for controlling same
KR20140108010A (ko) 입력 유닛에 촉각 피드백을 제공하는 휴대 장치 및 그 방법
EP3435219A1 (en) Method and device for controlling a user interface
KR20180010845A (ko) Hmd 및 그 hmd의 제어 방법
US10853958B2 (en) Method and device for acquiring depth information of object, and recording medium
KR20140038854A (ko) 모바일 디바이스 및 모바일 디바이스에서 사용자 인터페이스 방법
KR20160053597A (ko) 디바이스에 오브젝트를 디스플레이 하는 방법, 그 디바이스 및 기록매체
KR101691805B1 (ko) 휴대 단말기 및 그 동작 방법

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20180530

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20191218

Year of fee payment: 5