KR101976772B1 - 도형 생성 방법 및 장치 - Google Patents

도형 생성 방법 및 장치 Download PDF

Info

Publication number
KR101976772B1
KR101976772B1 KR1020170144899A KR20170144899A KR101976772B1 KR 101976772 B1 KR101976772 B1 KR 101976772B1 KR 1020170144899 A KR1020170144899 A KR 1020170144899A KR 20170144899 A KR20170144899 A KR 20170144899A KR 101976772 B1 KR101976772 B1 KR 101976772B1
Authority
KR
South Korea
Prior art keywords
points
vertex list
input
interface
module
Prior art date
Application number
KR1020170144899A
Other languages
English (en)
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 KR1020170144899A priority Critical patent/KR101976772B1/ko
Priority to PCT/KR2018/013130 priority patent/WO2019088713A1/ko
Application granted granted Critical
Publication of KR101976772B1 publication Critical patent/KR101976772B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/20Drawing from basic elements, e.g. lines or circles
    • G06T11/203Drawing of straight lines or curves
    • 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
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/20Drawing from basic elements, e.g. lines or circles
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/001Image restoration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/24Indexing scheme for image data processing or generation, in general involving graphical user interfaces [GUIs]

Abstract

본 발명은 사용자가 입력한 다수의 점을 기반으로 도형을 자동으로 생성하여 표출하는 도형 생성 방법 및 장치에 관한 것이다. 본 발명에 따른 전자 장치는, 사용자의 입력 신호를 모니터링하여, 임계시간 간격으로 연속된 복수의 점이 입력되는지 여부를 모니터링하여 연속된 복수의 점이 입력되면, 이 연속된 점을 분석하여 상기 연속된 점들 중에서 도형 그리기와 연관된 복수의 점들을 검출하여 꼭지점 목록에 기록하는 입력 판별 모듈; 도형 선택 관련 인터페이스를 출력하여, 인터페이스에 포함된 도형을 선택받는 인터페이스 모듈; 및 상기 꼭지점 목록에 기록된 점들이 상기 선택받은 도형으로 그려지도록, 상기 점들을 기초로 도형을 생성하고, 상기 생성한 도형을 디스플레이하는 도형 생성 모듈을 포함한다.

Description

도형 생성 방법 및 장치{APPARATUS AND METHOD FOR GENERATING FIGURE}
본 발명은 도형 생성 기술에 관한 것으로서, 더욱 상세하게는 사용자가 입력한 다수의 점을 기반으로 도형을 자동으로 생성하여 표출하는 도형 생성 방법 및 장치에 관한 것이다.
스케치 프로그램, 오피스 응용 프로그램 및 판서 프로그램들은, 도형 그리기 기능을 탑재하고 있으며, 사용자는 도형 그리기 기능을 통해서 원하는 도형을 컴퓨팅 장치에 그릴 수 있다. 이 경우, 사용자는 도형 메뉴에 접근하여 그리고자 하는 도형 모양을 선택하고, 이 선택된 도형이 표출되는 영역을 지정한 후, 지정된 영역에 표출된 도형의 크기, 위치, 회전 각도 등을 변경한다.
그런데 이러한 도형 그리기 프로그램은, 상술한 바와 같이 메뉴 선택 조작을 수행해야 되는 번거로움을 유발한다. 부연하면, 종래의 도형 그리기 프로그램은, 도형을 그리기 위해서 별도의 메뉴 오픈, 도형 삽입 후 도형 조절을 위해 여러 번의 드래그 행위를 요구하는데, 터치 스크린이나 스타일러스 펜 같은 입력 장치를 통해서는 상기 드래그 행위가 매우 힘든 문제점이 있으며, 또한 도형을 그리는 전체 시간이 많이 소요되는 문제점이 있다.
본 발명은 이러한 종래의 문제점을 해결하기 위하여 제안된 것으로, 도형 그리기의 효율성이 향상시키고, 빠르고 정확하게 도형을 그릴 수 있는 도형 생성 방법 및 장치를 제공하는데 그 목적이 있다.
또한, 본 발명은 도형 그리기에 매우 용이한 사용자 인터페이스를 제공하는데 다른 목적이 있다.
본 발명의 다른 목적 및 장점들은 하기의 설명에 의해서 이해될 수 있으며, 본 발명의 실시예에 의해 보다 분명하게 알게 될 것이다. 또한, 본 발명의 목적 및 장점들은 특허 청구 범위에 나타낸 수단 및 그 조합에 의해 실현될 수 있음을 쉽게 알 수 있을 것이다.
상기 목적을 달성하기 위한 본 발명의 제1측면에 따른, 하나 이상의 프로세서; 메모리; 및 상기 메모리에 저장되어 있으며 상기 하나 이상의 프로세서에 의하여 실행되도록 구성되는 프로그램을 포함하는 전자 장치는, 사용자의 입력 신호를 모니터링하여, 임계시간 간격으로 연속된 복수의 점이 입력되는지 여부를 모니터링하여 연속된 복수의 점이 입력되면, 이 연속된 점을 분석하여 상기 연속된 점들 중에서 도형 그리기와 연관된 복수의 점들을 검출하여 꼭지점 목록에 기록하는 입력 판별 모듈; 도형 선택 관련 인터페이스를 출력하여, 인터페이스에 포함된 도형을 선택받는 인터페이스 모듈; 및 상기 꼭지점 목록에 기록된 점들이 상기 선택받은 도형으로 그려지도록, 상기 점들을 기초로 도형을 생성하고, 상기 생성한 도형을 디스플레이하는 도형 생성 모듈을 포함한다.
상기 전자 장치는, 상기 선택받은 도형에 근거하여 허용 보정 범위를 설정하고, 상기 꼭지점 목록에 포함된 연이은 두 점 간의 연결선과 수직선 또는 수평선 간의 각도차를 확인하고, 이 각도차가 상기 허용 보정 범위 이내이면, 상기 두 점이 수평선 또는 수직선이 위치하도록 상기 꼭지점 목록에 포함된 점 위치를 보정하는 보정 모듈을 더 포함할 수 있다.
상기 도형 생성 모듈은, 도형으로서 다각형 도형을 선택받은 경우, 상하좌우 각 방향의 최외곽에 위치하는 점을 상기 꼭지점 목록에서 확인하고, 상기 확인한 최외곽에 위치한 점들이 연결되는 가상 직각 사각형을 형성하고, 상기 가상 직각 사각형에서 상기 꼭지점 목록의 점들이 배치되는 위치를 토대로, 상기 꼭지점 목록에 포함된 점들의 위치를 2차 보정할 수 있다.
상기 목적을 달성하기 위한 본 발명의 제2측면에 따른 전자 기기에서 사용자가 입력신호를 토대로 도형을 생성하는 방법은, 임계시간 간격으로 연속된 복수의 점이 입력되는지 여부를 모니터링하여 연속된 복수의 점이 입력되면, 이 연속된 점을 분석하여 상기 연속된 점들 중에서 도형 그리기와 연관된 복수의 점들을 검출하여 꼭지점 목록에 기록하는 단계; 도형 선택 관련 인터페이스를 출력하여, 인터페이스에 포함된 도형을 선택받는 단계; 및 상기 꼭지점 목록에 기록된 점들이 상기 선택받은 도형으로 그려지도록, 상기 점들을 기초로 도형을 생성하고, 상기 생성한 도형을 디스플레이하는 단계를 포함한다.
본 발명은 연속적으로 입력된 복수의 점을 토대로, 자동으로 직선, 원, 다각형 등을 자동으로 생성하여, 도형을 그릴 때에 발생되는 번거로움을 해소하고, 사용자의 편의성을 향상시키는 장점이 있다.
또한, 본 발명은 사용자가 특정 작업을 진행하는 도중에, 연속된 점 입력을 수행하는 경우 도형 그리기 모드로 자동으로 진입하게 함으로써, 도형 그리기의 편의성과 작업의 연속성을 높이는 효과도 있다.
게다가, 본 발명은 연속된 점을 입력받더라도 이 연속된 점이 도형 그리기와 관련된 입력신호인지 여부를 점 필터링을 통해서 판별함으로써, 도형 그리기 입력신호를 더욱 정확하게 인식할 수 있는 장점이 있다.
또한, 본 발명은 사용자가 입력한 점들을 보정하여, 이 보정된 점들을 토대로 도형을 생성함으로써, 더욱 보기 좋고 도형을 화면에 표출할 수 있는 장점이 있다.
게다가, 본 발명은 가상의 직각 사각형을 우선 형성한 후, 이 직각 사각형에 점들이 위치하는 형태를 분석하여 최종적인 도형을 생성함으로써, 도형 생성 속도를 향상시키는 장점이 있다.
본 명세서에 첨부되는 다음의 도면들은 본 발명의 바람직한 실시예를 예시하는 것이며, 발명을 실시하기 위한 구체적인 내용과 함께 본 발명의 기술사상을 더욱 이해시키는 역할을 하는 것이므로, 본 발명은 그러한 도면에 기재된 사항에만 한정되어 해석되어서는 아니 된다.
도 1은 본 발명의 일 실시예에 따른, 전자 기기를 나타내는 도면이다.
도 2는 본 발명의 일 실시예에 따른, 도형 생성 프로그램의 구성을 나타내는 도면이다.
도 3은 본 발명의 일 실시예에 따른, 전자 기기에서 도형 그리기 입력 신호를 판별하는 방법을 설명하는 흐름도이다.
도 4a는 본 발명의 일 실시예에 따른, 직선 그리기 인터페이스를 나타내는 도면이다.
도 4b와 도 4c는, 본 발명의 일 실시예에 따른, 다각형 그리기 인터페이스를 나타내는 도면이다.
도 5는 미세 조절 인터페이스를 나타내는 도면이다.
도 6은 본 발명의 일 실시예에 따른, 열린 도형을 나타내는 도면이다.
도 7은 본 발명의 일 실시예에 따른, 원이 생성되는 과정을 예시하는 도면이다.
도 8은 본 발명의 일 실시예에 따른, 직각 사각형 선분에 위치되는 점의 위치에 따라 삼각형의 유형이 결정되어 삼각형이 생성되는 과정을 예시하는 도면이다.
도 9는 본 발명의 일 실시예에 따른, 직각 사각형 선분에 위치되는 점의 위치에 따라 다양한 사각형이 생성되는 과정을 예시하는 도면이다.
도 10은 본 발명의 일 실시예에 따른, 도형을 생성하여 표출하는 방법을 설명하는 흐름도이다.
도 11a 내지 도 11g은 본 발명의 일 실시예 따른, 도형의 유형과 회전 상태에 따라 도형의 추가 보정되는 것을 예시하는 도면이다.
상술한 목적, 특징 및 장점은 첨부된 도면과 관련한 다음의 상세한 설명을 통하여 보다 분명해 질 것이며, 그에 따라 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명의 기술적 사상을 용이하게 실시할 수 있을 것이다. 또한, 본 발명을 설명함에 있어서 본 발명과 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에 그 상세한 설명을 생략하기로 한다. 이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 일 실시예를 상세히 설명하기로 한다.
도 1은 본 발명의 일 실시예에 따른, 전자 기기를 나타내는 도면이다.
도 1에 도시된 바와 같이, 본 발명의 일 실시예에 따른 전자 기기(100)는 본 발명의 일 실시예에 따른 전자 기기(100)는 메모리(110), 메모리 제어기(121), 하나 이상의 프로세서(CPU)(122), 주변 인터페이스(123), 입출력(I/O) 서브시스템(130), 디스플레이 장치(141), 입력 장치(142) 및 통신 회로(152)를 포함한다. 이러한 구성요소는 하나 이상의 통신 버스 또는 신호선을 통하여 통신한다. 도 1에 도시한 여러 구성요소는 하나 이상의 신호 처리 및/또는 애플리케이션 전용 집적 회로(application specific integrated circuit)를 포함하여, 하드웨어, 소프트웨어 또는 하드웨어와 소프트웨어 둘의 조합으로 구현될 수 있다.
메모리(110)는 고속 랜덤 액세스 메모리를 포함할 수 있고, 또한 하나 이상의 자기 디스크 저장 장치, 플래시 메모리 장치와 같은 불휘발성 메모리, 또는 다른 불휘발성 반도체 메모리 장치를 포함할 수 있다. 일부 실시예에서, 메모리(110)는 하나 이상의 프로세서(122)로부터 멀리 떨어져 위치하는 저장 장치, 예를 들어 통신 회로(152)와, 인터넷, 인트라넷, LAN(Local Area Network), WLAN(Wide LAN), SAN(Storage Area Network) 등, 또는 이들의 적절한 조합과 같은 통신 네트워크(도시하지 않음)를 통하여 액세스되는 네트워크 부착형(attached) 저장 장치를 더 포함할 수 있다. 프로세서(122) 및 주변 인터페이스(123)와 같은 전자 기기(100)의 다른 구성요소에 의한 메모리(110)로의 액세스는 메모리 제어기(121)에 의하여 제어될 수 있다.
주변 인터페이스(123)는 전자 기기(100)의 입출력 주변 장치를 프로세서(122) 및 메모리(110)와 연결한다. 하나 이상의 프로세서(122)는 다양한 소프트웨어 프로그램 및/또는 메모리(110)에 저장되어 있는 명령어 세트를 실행하여 통신 단말(10)을 위한 여러 기능을 수행하고 데이터를 처리한다. 일부 실시예에서, 주변 인터페이스(123), 프로세서(122) 및 메모리 제어기(121)는 칩(120)과 같은 단일 칩 상에서 구현될 수 있다. 다른 실시예에서, 이들은 별개의 칩으로 구현될 수 있다.
I/O 서브시스템(130)은 디스플레이 장치(141), 입력 장치(142)와 같은 전자 기기(100)의 입출력 주변장치와 주변 인터페이스(123) 사이에 인터페이스를 제공한다.
디스플레이 장치(141)는 LCD(liquid crystal display) 기술 또는 LPD(light emitting polymer display) 기술을 사용할 수 있고, 이러한 디스플레이 장치(141)는 용량형, 저항형, 적외선형 등의 터치 디스플레이일 수 있다. 터치 디스플레이는 단말과 사용자 사이에 출력 인터페이스 및 입력 인터페이스를 제공한다. 디스플레이 장치(141)는 터치 디스플레이는 사용자에게 시각적인 출력을 표시한다. 시각적 출력은 텍스트, 그래픽, 비디오와 이들의 조합을 포함할 수 있다. 시각적 출력의 일부 또는 전부는 사용자 인터페이스 대상에 대응할 수 있다. 상기 디스플레이 장치(141)가 터치 스크린인 경우, 입력 수단과 출력 수단을 기능을 동시에 수행하고, 사용자 입력을 수용하는 터치 감지면을 형성한다.
입력 장치(142)는 키보드, 마우스, 스타일러스 펜 등과 같은 입력수단으로서, 사용자의 입력 신호를 수신한다.
프로세서(122)는 전자 기기(100)에 연관된 동작을 수행하고 명령어들을 수행하도록 구성된 프로세서로서, 예를 들어, 메모리(110)로부터 검색된 명령어들을 이용하여, 전자 기기(100)의 컴포넌트 간의 입력 및 출력 데이터의 수신과 조작을 제어할 수 있다.
통신 회로(152)는 유선으로 신호를 송수신하거나 무선으로 전자파를 송수신한다. 통신 회로(152)는 전기 신호를 전자파로 또는 그 반대로 변환하며 이 전자파를 통하여 통신 네트워크, 다른 이동형 게이트웨이 및 전자 기기와 통신한다. 통신 회로(152)는 예를 들어 안테나 시스템, RF 트랜시버, 하나 이상의 증폭기, 튜너, 하나 이상의 오실레이터, 디지털 신호 처리기, CODEC 칩셋, 가입자 식별 모듈(subscriber identity module, SIM) 카드, 메모리 등을 포함하지만 이에 한정되지 않는 이러한 기능을 수행하기 위한 주지의 회로를 포함할 수 있다. 통신 회로(152)는 월드 와이드 웹(World Wide Web, WWW)으로 불리는 인터넷, 인트라넷과 네트워크 및/또는, 셀룰러 전화 네트워크, 무선 LAN 및/또는 MAN(metropolitan area network)와 같은 무선 네트워크, 그리고 근거리 무선 통신에 의하여 다른 장치와 통신할 수 있다. 무선 통신은 GSM(Global System for Mobile Communication), EDGE(Enhanced Data GSM Environment), WCDMA(wideband code division multiple access), CDMA(code division multiple access), TDMA(time division multiple access), VoIP(voice over Internet Protocol), Wi-MAX, 블루투스(Bluetooth), 지그비(zigbee), 엔에프씨(NFC:Near Field Communication)를 포함할 수 있다.
소프트웨어 구성요소는 운영 체제(111), 그래픽 모듈(명령어 세트)(112) 및 도형 생성 프로그램(명령어 세트)이 메모리(110)에 설치될 수 있다. 운영 체제(111)는, 예를 들어, 다윈(Darwin), RTXC, LINUX, UNIX, OS X, WINDOWS 또는 VxWorks, 안드로이드 등과 같은 내장 운영체제일 수 있고, 일반적인 시스템 태스크(task)(예를 들어, 메모리 관리, 저장 장치 제어, 전력 관리 등)를 제어 및 관리하는 다양한 소프트웨어 구성요소 및/또는 장치를 포함하고, 다양한 하드웨어와 소프트웨어 구성요소 사이의 통신을 촉진시킨다. 그래픽 모듈(112)은 디스플레이 장치(141) 상에 그래픽을 제공하고 표시하기 위한 주지의 여러 소프트웨어 구성요소를 포함한다. "그래픽(graphics)"이란 용어는 텍스트, 웹 페이지, 아이콘(예컨대, 소프트 키를 포함하는 사용자 인터페이스 대상), 디지털 이미지, 비디오, 애니메이션 등을 제한 없이 포함하여, 사용자에게 표시될 수 있는 모든 대상을 포함한다.
도형 생성 프로그램(113)은 사용자의 입력신호를 분석하여, 입력신호가 도형 그리기 신호인지 여부를 판단한 후, 도형 그리기 신호인 경우, 사용자의 입력신호인 복수의 점을 토대로, 다각형, 원 또는 직선을 생성하여 디스플레이 장치(141)에 표출한다.
도 2 내지 도 10을 참조한 설명을 통해서, 도형 생성 프로그램(113)이 탑재된 전자 기기(100)에서 사용자의 입력 신호를 분석하여, 자동으로 도형을 생성하여 표출하는 방법에 대해서 더욱 자세하게 설명한다.
도 2는 본 발명의 일 실시예에 따른, 도형 생성 프로그램의 구성을 나타내는 도면이다.
도 2에 도시된 바와 같이, 본 발명의 일 실시예에 따른 도형 생성 프로그램(113)은 입력 판별 모듈(21), 사용자 인터페이스 모듈(22)(이하, 'UI 모듈'로 지칭함), 보정 모듈(23), 도형 생성 모듈(24), 및 조절 모듈(25)을 포함하고, 각 모듈들은 상기 도형 생성 프로그램(113)이 설치된 경우에 전자 기기(100)에 탑재될 수 있다.
입력 판별 모듈(21)은 사용자의 입력신호(즉, 터치 입력신호, 마우스 입력신호, 펜 입력신호 등)를 계속적으로 모니티렁하여, 사용자의 입력신호가 도형 그리기 입력 신호인지 여부를 판별하는 기능을 수행한다. 상기 입력 판별 모듈(21)은 입력 장치(142) 또는 터치 스크린을 통해서 입력되는 사용자의 입력신호를 모니터링하여, 연속된 점에 대한 입력신호를 감지하고, 이 연속된 입력 신호가 도형 그리기 입력신호인지 여부를 판별하는 기능을 수행한다.
도 3은 본 발명의 일 실시예에 따른, 전자 기기에서 도형 그리기 입력 신호를 판별하는 방법을 설명하는 흐름도이다.
도 3을 참조하면, 도형 생성 프로그램(113)이 실행되는 경우, 입력 판별 모듈(21)은 입력 장치(142) 또는 터치 스크린을 통해서 입력되는 사용자의 입력신호 중에서, 설정된 임계 시간 이내의 간격으로 3개 이상의 점(point)이 연속되어 입력되는지 모니터링한다(S301, S303).
이어서, 입력 판별 모듈(21)은 상기 모니터링 결과 설정된 임계 시간 이내의 간격으로 3개 이상의 점(point)이 연속되어 입력되면, 상기 연속되어 입력된 3개 이상의 점을 분석 대상 점들로 선정하여 꼭지점 목록으로 기록한다(S305). 상기 꼭지점 목록에는 각 점의 입력 시각과 좌표가 기록된다.
다음으로, 입력 판별 모듈(21)은 상기 꼭지점 목록에 기록된 각 점의 입력순서와 입력 좌표(즉, 픽셀 좌표)를 확인하고, 연이어 입력된 2개의 점 간의 거리를 각각 계산한다(S307). 예컨대, 꼭지점 목록에 입력 순서에 따라 제1점, 제2점, 제3점 및 제4점이 기록되어 있는 경우, 제1점과 제2점 간의 거리, 제2점과 제3점 간의 거리 및 제3점과 제4점 간의 거리를 계산한다.
이어서, 입력 판별 모듈(21)은 계산한 점 간의 거리 중에서, 사전에 설정된 임계거리 이하인 거리가 존재하는지 여부를 판별한다(S309). 다음으로, 입력 판별 모듈(21)은 S309 단계의 판별 결과, 임계거리 이하의 거리를 가지는 두 점 간의 거리가 존재하면, 상기 두 개의 점 및 두 점 이전에 입력된 점들을 꼭지점 목록에서 제외하여, 상기 꼭지점 목록을 필터링한다(S311). 이러한 거리 기반의 필터링 과정을 통해서, 필기시에 이용되는 '…', '‥' 등의 기호 문자 등을 도형 입력신호에서 제외할 수 있다.
또한, 입력 판별 모듈(21)은, 꼭지점 목록에 포함된 점들 중에서 입력순서를 확인하고, 연이어 입력된 2개의 점 간의 입력 시간 차이를 각각 계산한다(S313). 예컨대, 꼭지점 목록에 기록된 점들의 입력순서가 제1점, 제2점, 제3점, 제4점 순서인 경우, 제1점과 제2점 간의 입력 시간차, 제2점과 제3점 간의 입력 시간차 및 제3점과 제4점 간의 입력 시간차를 계산한다.
이어서, 입력 판별 모듈(21)은 계산한 입력 시간차 중에서, 사전에 설정된 기준시간 이하인 입력 시간차가 존재하는지 여부를 판별한다(S315). 다음으로, 입력 판별 모듈(21)은 상기 판별 결과, 기준시간 이하의 입력 시간차를 가지는 두 점이 존재하면, 상기 두 개의 점 및 두 점 이전에 입력된 점들을 꼭지점 목록에서 제외하여, 상기 꼭지점 목록을 필터링한다(S317). 이러한 시간차 기반의 필터링 과정을 통해서, 영문자 'i', 'j' 등의 문자를 도형 입력신호에서 제외할 수 있다.
게다가, 입력 판별 모듈(21)은, 꼭지점 목록에 포함된 점들 중에서, 입력 순서와 입력 시각을 확인하고, 연이어 입력된 2개의 점 간의 입력 시간 차이를 각각 계산한 후, 계산된 입력 시간 차이에 대한 평균값을 계산한다(S319). 이어서, 입력 판별 모듈(21)은, 계산한 입력시간 차 중에서 상기 평균값보다 임계배수(예컨대, 3배) 이상으로 큰 입력 시간 차가 존재하는지 여부를 확인하여 존재하면, 상기 입력 시간차에 해당하는 두 개의 점 및 이 두 점 이전에 입력된 점들을 상기 꼭지점 목록에서 제외하여, 상기 꼭지점 목록을 필터링한다(S321, S323). 이러한 입력 시간차 평균에 기반의 필터링 과정을 통해서, ':', ';' 등의 기호문자 등을 도형 입력신호에서 제외할 수 있다.
이렇게 필터링이 완료된 꼭지점 목록에 3개 이상의 점이 포함되어 있는지 여부를 확인하여, 3개 이상의 점이 존재하면, 입력 판별 모듈(21)은 입력된 신호가 도형 그리기를 의도한 신호인 것으로 최종 판별하여, UI 모듈(22)로 UI 제공을 요청할 수 있다.
다시 도 2를 참조하면, UI 모듈(22)은 다각형 그리기 인터페이스 또는 선 그리기 인터페이스 중 어느 하나를 출력하는 기능을 수행한다. 상기 UI 모듈(22)은 입력 판별 모듈(21)로부터 UI 제공을 요청받으면, 꼭지점 목록에 포함된 점들의 좌표를 확인하고, 점들이 동일 직선상에 근접하게 배치되어 있는지 여부를 판별하여 동일 직선상에 배치되어 있는 경우 선 그리기 인터페이스를 화면에 출력하고 그렇지 않으면 다각형 그리기 인터페이스를 화면에 출력한다. 이때, UI 모듈(22)은 꼭지점 목록에 포함된 점들 중에서, 첫 번째 점을 기준으로, 첫 번째 점과 각 타 점 간의 직선 각도를 각각 산출하고, 이렇게 산출한 직선 각도의 차가 사전에 설정된 임계각도 범위 이내에 포함는지 여부를 판별하여, 꼭지점 목록에 포함된 점들이 동일 직선상에 위치하고 있는지 여부를 판별할 수 있다.
도 4a는 본 발명의 일 실시예에 따른, 직선 그리기 인터페이스를 나타내는 도면이다.
도 4a를 참조하면, 도 4a와 같이 점들이 화면에 입력되고, 이 입력된 점들이 필터링 과정을 거쳐 꼭지점 목록에 최종적으로 기록된 경우, UI 모듈(22)은 상기 꼭지점 목록에 포함된 점들의 위치가 직선상에 위치하는 것으로 판별되면, 실선 그리기 메뉴(41a), 점선 그리기 메뉴(42a), 도형 생성시 처음과 끝을 개수를 나타내는 숫자(43a) 및 입력 취소(44a)가 포함된 직선 그리기 인터페이스를 화면에 출력할 수 있다.
또한, UI 모듈(22)은 꼭지점 목록에 포함된 점들의 좌표를 확인하고, 점들이 동일 직선상에 근접하게 배치되어 있는지 여부를 판별하여 동일 직선상에 배치되어 있지 않은 경우 상기 꼭지점 목록에 포함된 점 개수와 대응되는 다각형 그리기 인터페이스를 화면에 출력한다.
상기 다각형 그리기 인터페이스에는, 꼭지점 목록의 점 개수와 대응되는 다각형을 그릴 수 있는 메뉴가 포함된다.
도 4b와 도 4c는, 본 발명의 일 실시예에 따른, 다각형 그리기 인터페이스를 나타내는 도면이다.
도 4b에 따른 인터페이스는, 꼭지점 목록에 3개의 점들이 포함된 경우에 출력되는 것으로서, 도 4b와 같이 3개의 점들이 화면에 입력되고, 상기 3개의 점들이 필터링 과정을 거쳐 꼭지점 목록에 최종적으로 기록된 경우, UI 모듈(22)은 도 4b와 같은 인터페이스를 화면에 출력할 수 있다. UI 모듈(22)은 삼각형 그리기 메뉴(41b), 열린 도형 그리기 메뉴(42b), 정삼각형 그리기 메뉴(43b), 점선 열린 도형 그리기 메뉴(44b), 꼭지점 개수(45b) 및 입력 취소 메뉴(46b)를 도 4b의 다각형 그리기 인터페이스에 포함시킬 수 있다.
또한, 도 4c에 따른 인터페이스는, 꼭지점 목록에 4개의 점들이 포함된 경우에 출력되는 것으로서, 도 4b와 같이 4개의 점들이 화면에 입력되고, 이 입력된 4개의 점들이 필터링 과정을 거쳐 꼭지점 목록에 최종적으로 기록된 경우, UI 모듈(22)은 도 4c와 같은 인터페이스를 화면에 출력할 수 있다. UI 모듈(22)은 사각형 그리기 메뉴(41c), 열린 도형 그리기 메뉴(42c), 정사각형 그리기 메뉴(43c), 원 그리기 메뉴(44c), 입력된 점의 개수를 나타내는 정보(45c) 및 입력 취소 메뉴(46c)를 도 4c의 다각형 그리기 인터페이스에 포함시킬 수 있다. 상기 원 그리기 메뉴(44c)는 꼭지점 목록에 4개 이상의 점들이 기록되는 경우(즉, 꼭지점이 4개 이상인 다각형을 그릴 수 있는 경우), 다각형 그리기 인터페이스에 포함되어 출력된다.
마찬가지로, 꼭지점 목록에 5개 이상의 점들이 기록되는 경우, UI 모듈(22)은 점 개수와 대응되는 꼭지점을 가지는 도형을 그릴 수 있는 메뉴가 포함되는 다각형 그리기 인터페이스를 화면에 출력한다.
상기 UI 모듈(22)은 다각형 그리기 인터페이스 또는 직선 그리기 인터페이스를 화면에 출력할 때, 가장 마지막으로 입력된 점 근방에 상기 다각형 그리기 인터페이스 또는 직선 그리기 인터페이스를 출력할 수 있다.
한편, UI 모듈(22)은 생성된 도형에 대해서 미세 조절을 진행할 수 있는 미세 조절 인터페이스를 제공할 수도 있다. 상기 UI 모듈(22)은 도형이 생성되어 화면에 표출되면, 상기 미세 조절 인터페이스를 화면에 표출한다.
도 5는 미세 조절 인터페이스를 나타내는 도면으로서, 도 5에 도시된 바와 같이 격자 메뉴(51), 정다각형 조절 메뉴(52), 시계 방향 회전 메뉴(53), 반시계 방향 회전 메뉴(54), 확인 메뉴(55) 및 취소 메뉴(56)를 포함한다.
상기 격자 메뉴(51)가 선택되면 일정 간격의 격자를 화면에 표시될 수 있고, 시계 방향 회전 메뉴(52)가 선택되면 도형이 시계방향으로 회전되고, 반 시계 반향 회전 메뉴(53)가 선택되면 도형이 반시계 방향으로 회전된다. 또한, 정다각형 조절 메뉴(52)가 선택되면, 도형의 가로 길이와 세로 길이가 일치되도록 도형이 추가 보정되거나 정다각형이 되도록 도형이 추가 보정된다. 또한, 확인 메뉴(55)가 선택되면, 도형의 미세 조절을 완료되고, 취소 메뉴(56)가 선택되면 도형의 미세 조절이 취소되거나 도형이 화면에 제거될 수 있다.
다시 도 2를 참조하면, 보정 모듈(23)은 필터링 완료된 꼭지점 목록의 점들을 확인하고, 이 점들의 위치(즉, 픽셀 좌표)를 1차 보정하는 기능을 수행한다. 상기 보정 모듈(23)은 다각형 그리기 인터페이스에 선택된 메뉴에 근거하여, 각 점의 위치(즉, 픽셀 좌표)의 보정 정도를 결정한 후, 결정한 보정 정도에 근거하여 각 점들의 위치를 보정한다.
구체적으로, 보정 모듈(23)은 다각형 그리기 인터페이스가 출력된 상태에서, 사용자가 일반 다각형 그리기, 원 그리기, 열린 도형 그리기, 정다각형 그리기, 직선 그리기 중 어느 하나를 선택하는 경우, 이 선택된 메뉴에 따라 보정 허용 각도를 결정한다. 예컨대, 보정 모듈(23)은 일반 다각형 그리기 메뉴가 선택되면 보정 허용 각도를 θ1, 원 그리기 메뉴가 선택되면 보정 허용 각도를 θ2, 열린 도형 그리기 메뉴가 선택되면 보정 허용 각도를 θ3, 정다각형 그리기 메뉴가 선택되면 보정 허용 각도를 θ4, 직선 그리기 메뉴가 선택되면 보정 허용 각도를 θ5로 각각 설정할 수 있다. 상기 보정 모듈(23)은 정다각형 그리기 메뉴에 대한 보정 허용 각도를 가장 크게 설정할 수 있다.
그리고 보정 모듈(23)은 도형 연결시 연결되는 직선에 각도를 확인하고, 직선 각도와 수직선 또는 수평선 간의 각도를 산출하여, 상기 수직선 또는 수평선 간의 각도가 설정된 보정 허용 각도 이내이면, 연결되는 두 개의 점이 수직선 또는 수평선이 되도록, 꼭지점 목록에 기록된 점의 위치(즉, 좌표)를 보정한다.
한편, 보정 모듈(23)은 다각형 그리기 인터페이스에서 열린 도형 그리기 메뉴가 선택된 경우, 허용 각도를 0도 설정하여, 꼭지점 목록의 점들에 대한 보정을 진행하지 않을 수도 있다.
보정 모듈(23)은 다각형 그리기 인터페이스에서 원 그리기 메뉴가 선택된 경우, 허용 각도를 상대적으로 크게 설정할 수도 있다.
도형 생성 모듈(24)은 보정된 점들을 토대로, 사용자가 요구한 도형을 생성하여 화면에 표출하는 기능을 수행한다. 구체적으로, 도형 생성 모듈(24)은 사용자가 인터페이스에 선택한 메뉴와 위치 보정된 점들을 토대로, 열린 도형, 원, 다각형, 직선 중에서 어느 하나를 생성하여 이 생성한 도형을 화면에 표출한다. 상기 도형 생성 모듈(24)은 선 그리기 인터페이스에서 실선 그리기 또는 점선 그리기가 선택되면, 보정된 점들을 연결하여 실선 또는 점선을 그린 후, 화면에 표출한다.
또한, 도형 생성 모듈(24)은 열린 도형 그리기 메뉴가 선택되면, 보정된 점 중에서 첫 번째로 입력된 점에서부터 마지막에 입력된 점까지의 점을 순차적으로 연결하여 도형을 생성하되, 첫번째 점과 마지막 점을 연결시키지 않는다.
도 6은 본 발명의 일 실시예에 따른, 열린 도형을 나타내는 도면이다.
도 6a를 참조하면, 총 3개의 점들이 꼭지점 목록에 포함된 경우, 도형 생성 모듈(24)은 첫 번째 점(61a)과 두 번째 점(62a)을 연결하고, 더불어 두 번째 점(62a)과 세 번째 점(63a)을 연결하며, 첫 번째 점(61a)과 세 번째 점(63a)을 연결하지 않은 열린 도형을 생성할 수 있다.
도 6b를 참조하면, 총 4개의 점들이 꼭지점 목록에 포함된 경우, 도형 생성 모듈(24)은 첫 번째 점(61b)과 두 번째 점(62b)을 연결하고, 두 번째 점(62b)과 세 번째 점(63b)을 연결하며, 세 번째 점(63b)과 네 번째 점(64d)을 연결하되, 첫 번째 점(61b)과 네 번째 점(64b)을 연결하지 않은 열린 도형을 생성할 수 있다.
도형 생성 모듈(24)은 총 5개의 점들이 꼭지점 목록에 포함된 경우, 첫 번째 점(61c)에서부터 5번째 점(65c)까지 순서에 따라 연결하되, 첫 번째 점(61c)과 5번째 점(65c)을 연결하지 않은 열린 도형을 생성할 수 있다(도 6c 참조).
한편, 도형 생성 모듈(24)은 다각형 그리기 인터페이스에서 원 그리기 메뉴가 선택되면, 꼭지점 목록에 기록된 점들 중에서 4방향(즉, 상하좌우) 최외곽에 위치하는 4개 점을 선정한다. 즉, 도형 생성 모듈(24)은 꼭지점 목록에 기록된 점들 중에서, 가장 작은 Y좌표를 가지는 점, 가장 큰 Y좌표를 가지는 점, 가장 작은 X좌표를 가지는 점, 가장 큰 X좌표를 가지는 점을 선정할 수 있다. 그리고 도형 생성 모듈(24)은 상기 선정한 4개 점들이 연결되는 가상의 직각 사각형을 생성하고, 이 가상의 직각 사각형과 안에서 원의 외주연과 사각형의 변이 접하는 원하는 생성한 후, 이 원을 화면에 표출한다.
도 7은 본 발명의 일 실시예에 따른, 원이 생성되는 과정을 예시하는 도면이다.
도 7을 참조하면, 도형 생성 모듈(24)은, 꼭지점 목록에 기록된 점들 중에서, 가장 작은 Y좌표를 가지는 점(74), 가장 큰 Y좌표를 가지는 점(71), 가장 작은 X좌표를 가지는 점(73), 가장 큰 X좌표(72)를 가지는 점을 선정한 후, 도 7의 (a)와 같은 가상의 직각 사각형을 생성할 수 있다. 그리고 도형 생성 모듈(24)은 상기 가상의 직각 사각형과 외주연이 접하는 원을 생성한 후, 이 원을 화면에 표출할 수 있다.
또한, 도형 생성 모듈(24)은 다각형 그리기 인터페이스에서 정 다각형 또는 도형 그리기 메뉴가 선택되면, 보정된 점들을 연결하여 다각형을 그린다. 이때, 보정된 점들의 좌표에 따라, 도형 생성 모듈(24)은 정다각형을 그릴 수도 있고, 정다각형이 아닌 다각형을 그릴 수도 있다. 한편, 다각형 그리기 인터페이스에서 정 다각형 그리기 메뉴가 선택되더라도, 사용자의 입력한 점들에 따라 정다각형이 생성되지 않을 수도 있다. 즉, 다각형 그리기 인터페이스에서 정 다각형 그리기 메뉴는 반드시 정다각형이 그리는 것이 아니라 입력된 점에 대해서 상대적으로 많은 보정을 수행하는 것으로 이해되어야 한다.
한편, 도형 생성 모듈(24)은 꼭지점 목록을 토대로 삼각형을 그릴 때에, 보정된 3개의 점이 최외곽에 배치되어 연결되는 가상의 직각 사각형을 형성한 후, 각 점이 가상 직각 사각형의 어느 선분에 위치하는지 여부를 분석하여 이등변 삼각형, 직각 삼각형, 정삼각형 등을 그릴 수 있다.
도 8은 본 발명의 일 실시예에 따른, 직각 사각형 선분에 위치되는 점의 위치에 따라 삼각형의 유형이 결정되어 삼각형이 생성되는 과정을 예시하는 도면이다.
도 8을 참조하면, 도형 생성 모듈(24)은 도 8의 (a)와 같이 3개의 점들이 최외곽에 배치되는 가상의 직각 사각형을 우선 그린다. 그리고 도형 생성 모듈(24)은 각 점들(81a, 82a, 83a)이 가상 직각 사각형의 외곽 선분 범위(dr)에 위치하는 여부를 확인하고 외곽 선분 범위(dr)에 위치하면, 해당 점이 가상 직각 사각형의 꼭지점과 일치되도록 점의 위치를 2차 보정한다.
도 8의 (b)에서는, 참조부호 83a가 외곽 선분 범위(dr) 이내에 위치한 것으로 판별되어, 도형 생성 모듈(24)은 83a의 점이 인근의 사각형 꼭지점과 일치되도록, 점의 위치가 2차 보정한 것으로 예시된다. 이렇게 꼭지점 목록에 포함된 점의 위치가 2차 보정되면, 도형 생성 모듈(24)은 각 점들이 연결시킨 직각 삼각형을 생성하여 화면에 표출한다(도 8의 (c) 참조).
또한, 도형 생성 모듈(24)은 꼭지점 목록에 포함된 특정 점이 가상 직각 사각형의 중앙 선분 범위(Cr) 이내에 위치하면, 상기 특정 점이 위치한 사각형 선분을 확인하고, 이 사각형 선분이 이등분된 중심점에 상기 특정 점이 위치하도록 상기 특정 점의 위치를 2차 보정한다.
도 8의 (d)와 (e)는 꼭지점이 2차 보정되는 과정을 예시하는 것으로, 도 8의 (d)와 (e)에 도시된 바와 같이, 도형 생성 모듈(24)은 3개의 점들(81d, 82d, 83d)이 최외곽에 배치되는 가상 직각 사각형을 우선 그린 후, 각 점들(81d, 82d, 83d)이 외곽 선분 범위(dr) 또는 중앙 선분 범위(Cr) 이내로 가깝게 위치하는 여부를 확인한다. 도형 생성 모듈(24)은 꼭지점 목록에 포함된 점(81d, 82d)이 외곽 선분 범위(dr)에 위치하면, 해당 점이 가상의 직각 사각형 꼭지점과 일치되도록 점의 위치를 2차 보정하고, 꼭지점 목록에 포함된 점(83d)이 중앙 선분 범위에 위치하면, 이 점(83d)이 위치한 사각형 선분을 확인하고, 이 사각형 선분이 이등분된 중앙점에 상기 특정 점(83d)이 위치하도록 상기 특정 점의 위치를 2차 보정한다.
도 8의 (e)에서는, 두 개의 점(81d, 82d)이 1차 보정시에 사각형 꼭지점과 이미 일치되어 있으므로 상기 두 개의 점(81d, 82d)에 대해서 별도의 보정이 수행되지 않고, 나머지 한 점(83d)이 가상 사각형의 선분의 중앙에 일치하도록 보정된 것으로 예시된다. 이렇게 꼭지점 목록에 포함된 점의 위치가 2차 보정되면, 도형 생성 모듈(24)은 각 점들이 연결시킨 정삼각형 또는 이등변 삼각형을 생성하여 화면에 표출한다(도 8의 (f) 참조).
한편, 도형 생성 모듈(24)은 사각형을 그릴 때에, 꼭지점 목록에 포함된 4개의 점이 최외곽에 배치되는 가상의 직각 사각형을 형성한 후, 4개의 점이 가상의 직각 사각형에 어느 선분에 위치하는지 여부와 마주보는 변 간의 각도를 분석하여, 직각 사각형, 정사각형, 마름모 또는 평행 사변형을 생성할 수 있다.
도 9는 본 발명의 일 실시예에 따른, 직각 사각형 선분에 위치되는 점의 위치에 따라 다양한 사각형이 생성되는 과정을 예시하는 도면이다.
도 9를 참조하면, 도형 생성 모듈(24)은 꼭지점 목록에 포함된 점들이 4방향(즉, 상하좌우) 최외곽 선분에 각각 배치되는 가상의 직각 사각형을 우선 그린다. 그리고 도형 생성 모듈(24)은 꼭지점 목록에 포함된 각각 점이 가상 직각 사각형의 외곽 선분 범위(dr)에 위치하면, 각 점이 인근의 사각형 꼭지점과 일치되도록, 각 점의 위치를 2차 보정한다. 그리고 도형 생성 모듈(24)은 2차 보정된 점들이 꼭지점이 되는 직각 사각형을 생성한다. 이때, 직각 사각형은 정사각형이 될 수도 있다.
한편, 도형 생성 모듈(24)은 꼭지점 목록에 포함된 4개의 중에서 두 개의 점이 외곽 선분 범위(dr)에 위치하고 다른 두 점이에 외곽 선분 범위(dr)에 위치하지 않으면, 사다리꼴 또는 평행 사변형의 꼭지점이 되도록 상기 점들의 위치를 2차 보정할 수 있다.
도 9의 (a) 내지 (c)는 사다리꼴이 생성되는 과정을 예시하는 도면으로서, 네 개의 점(91a, 92a, 93a, 94a) 중에서 두 개의 점(91a, 92a)이 외곽 선분 범위(dr)에 위치하고, 나머지 두 점(93a, 94a)이 외곽 선분 범위에 포함되지 않는 것으로 예시된다. 또한, 도 9의 (a) 내지 (c)는, 외곽 선분 범위에 포함된 91a, 92a의 점이 이미 가상 직사각형 꼭지점에 위치하고 있으므로 해당 꼭지점(91a, 92a, 93a, 94a)에 대해서 별도의 보정이 수행되지 않은 것으로 예시된다. 이 경우, 도형 생성 모듈(24)은 보정 완료된 꼭지점 목록에 포함된 점들을 연결시켜, 사다리꼴을 생성하여 화면에 표출한다(도 9의 (c) 참조).
도 9의 (d) 내지 (f)는 평행사변형 생성되는 과정을 예시하는 도면으로서, 네 개의 점(91d, 92d, 93d, 94d) 중에서 두 개의 점(91d, 94d)이 외곽 선분 범위(dr)에 포함되고, 나머지 두 점(92d, 93d)이 외곽 선분 범위(dr)에 포함되지 않으나 평행사변형에 해당하는 꼭지점으로 2차 보정된 것으로 예시된다.
상기 도형 생성 모듈(24)은 제1점(91d)와 제3점(93d) 간의 직선 각도(θa), 제2점(92d)과 제4점(94d) 간의 직선 각도(θb)를 각각 산출하고, 이 직선 각도의 차이가 사전에 설정된 평행사변형 설정각도 이내인지 여부를 판별한다. 도형 생성 모듈(24)은 상기 판별 결과 직선 각도의 차이가 평행사변형 설정각도에 해당되는 않으면 제2점(92d)와 제3점(93d)의 보정을 수행하지 않고, 직선 각도의 차이가 평행사변형 설정각도에 해당하면 제2점(92d)와 제3점(93d)이 평행사변형의 꼭지점이 되도록 제2점(92d)과 제3점(93d) 중의 하나 이상에 대한 위치를 2차 보정한다. 이렇게 평행사변형의 꼭지점으로 2차 보정되면, 도형 생성 모듈(24)은 2차 보정이 완료된 꼭지점 목록에 포함된 점들을 연결시켜, 평행사변형을 생성하여 화면에 표출한다(도 9의 (f) 참조).
한편, 도형 생성 모듈(24)은 4개의 점들이 사전에 설정된 중앙 선분 범위(Cr) 이내에 모두 위치하면, 각 점들은 사각형 선분 중심에 각각 위치하도록 2차 보정한 후, 이 2차 보정된 점들을 연결시켜 마름모를 생성할 수 있다.
도 9의 (g) 내지 (i)는 마름모가 생성되는 과정을 예시하는 도면으로서, 네 개의 점(91g, 92g, 93g, 94g) 모두가 중앙 선분 범위(Cr)에 위치하면(도 9의 (g) 참조), 도형 생성 모듈(24)은 해당 선분이 이등변된 중심점에 위치되도록 각 점들(91d, 92d, 93d, 94d)을 2차 보정한다(도 9의 (h) 참조). 그리고 도형 생성 모듈(24)은 2차 보정이 완료된 꼭지점 목록에 포함된 점들을 연결시켜, 마름모를 생성하여 화면에 표출한다(도 9의 (i) 참조).
상술한 원리를 통해서 5각형 이상의 도형을 그릴 수 있다.
부연하면, 도형 생성 모듈(24)은 오각형을 그릴 때에, 1차 보정된 점들을 토대로 가상의 직각 사각형을 그린 후에, 이 가상의 직각 사각형에 수평 또는 수직이 되는 1개의 변을 우선 확인한다. 그리고 도형 생성 모듈(24)은 상기 확인한 1개의 변을 기준으로 하여 도형의 회전상태를 확인한 후에, 오각형을 그리고 이 오각형의 회전상태를 고려하여 오각형을 화면에 표출할 수 있다.
또한, 도형 생성 모듈(24)은 육각형을 그릴 때에, 1차 보정된 점들을 토대로 가상의 직각 사각형을 그린 후에, 입력된 점이 하나 배치된 가상의 직각 사각형의 선분을 확인하고 나서, 확인한 점을 토대로 도형의 회전상태를 확인한 후에, 회전상태가 고려된 육각형의 생성하여 화면에 표출할 수 있다.
다시 도 2를 참조하면, 조절 모듈(25)은 도형을 미세 조절하는 기능을 수행한다. 즉, 조절 모듈(25)은 미세 조절 인터페이스가 출력된 상태에서, 격자 메뉴가 선택되면, 일정 간격의 격자를 도형 내부와 외부에 표시한다. 또한, 조절 모듈(25)은 미세 조절 인터페이스에서 시계 방향 회전 메뉴가 선택되면 도형이 시계방향으로 회전시키고, 반 시계 반향 회전 메뉴가 선택되면 도형이 반시계 방향으로 회전시킨다. 또한, 조절 모듈(25)은 정다각형 조절 메뉴가 선택되면, 현재 생성된 도형의 회전 상태를 토대로, 도형의 가로 길이와 세로 길이가 일치되도록 도형을 추가적으로 보정하거나, 해당 도형이 정다각형이 되도록 도형을 추가 보정한다. 이때, 조절 모듈(25)은 현재 생성된(즉, 현재 화면에 표출된) 도형의 꼭지점 개수 및 가상의 사각형의 선분에 배치된 꼭지점별 위치를 토대로, 도형 종류 및 도형의 회전상태를 인식하고, 이 인식된 회전 상태를 토대로 도형의 가로와 세로 길이를 동일하게 조절하거나 도형을 정다각형이 되도록 조절한다
도 11a 내지 도 11g은 본 발명의 일 실시예 따른, 도형의 유형과 회전 상태에 따라 도형의 추가 보정되는 것을 예시하는 도면이다.
도 11a 및 도 11b를 참조하면, 조절 모듈(25)은 현재 생성되어 화면에 표출된 도형이 삼각형이고, 삼각형의 꼭지점(1101a, 1102a, 1103a) 중에서 2개의 꼭지점(1101a, 1102a)이 가상 직사각형 꼭지점에 위치하고, 다른 하나 점(1103a)이 직각 사각형 선분의 중심점에 위치하면, 현재 표출된 삼각형이 이등변 삼각형인 것으로 인식하고, 더불어 삼각형의 회전 상태도 인식한다. 이렇게 이등변 삼각형이 생성된 상태에서, 미세 조절 인터페이스의 정다각형 조절 메뉴가 선택되면, 조절 모듈(25)은 상기 이등변 삼각형을 정삼각형이 되도록 추가로 보정한다. 이때, 조절 모듈(25)은 삼각형의 회전 상태를 그대로 유지한 상태에서 각 변의 길이와 각도가 동일하도록 이등변 삼각형을 정삼각형으로 보정한다.
도 11c 및 도 11d를 참조하면, 조절 모듈(25)은 현재 생성되어 화면에 표출된 도형이 삼각형이고, 삼각형의 꼭지점(1101c, 1102c, 1103c) 중에서 3개의 꼭지점(1101c, 1102c, 1103c) 모두가 가상 직사각형 꼭지점에 위치하면, 현재 표출된 삼각형이 직각 삼각형인 것으로 인식하고, 꼭지점 위치에 근거하여 삼각형의 회전 상태도 인식한다. 이렇게 직각 삼각형이 생성된 상태에서, 미세 조절 인터페이스에서 정다각형 조절 메뉴가 선택되면, 조절 모듈(25)은 상기 직각 삼각형이 직각 이등변 삼각형이 되도록 추가로 보정한다. 즉, 조절 모듈(25)은 직각 삼각형의 회전 상태를 그대로 유지하면, 직각 삼각형의 높이와 밑변이 서로 동일하게 되도록 기존의 직각 삼각형을 보정한다. 부연하면, 정다각형 조절 메뉴가 선택되더라도, 원래의 생성된 도형이 정다각형과 매우 상이한 도형(예컨대, 직각 삼각형)인 경우에, 기존의 도형은 정다각형 형태로 조절되지 않을 수 있다.
도 11e를 참조하면, 조절 모듈(25)은 현재 생성되어 화면에 표출된 도형이 사각형이고, 사각형의 꼭지점(1101e, 1102e, 1103e, 1104e) 중에서 4개의 꼭지점(1101e, 1102e, 1103e, 1104e) 모두가 가상 직사각형 꼭지점에 위치하면, 현재 표출된 삼각형이 직각 사각형인 것으로 인식한다. 이렇게 직각 사각형이 생성된 상태에서, 미세 조절 인터페이스에서 정다각형 조절 메뉴가 선택되면, 조절 모듈(25)은 상기 직각 사각형이 정사각형이 되도록 추가로 보정한다. 즉, 조절 모듈(25)은 각각의 변이 모두 동일하도록 기존의 직각 삼각형을 정사각형으로 보정한다.
도 11f를 참조하면, 조절 모듈(25)은 현재 생성되어 화면에 표출된 도형이 사각형이고, 사각형의 꼭지점(1101f, 1102f, 1103f, 1104f) 중에서 2개의 꼭지점(1101f, 1103f)만이 가상 직사각형 꼭지점에 위치하고, 제1점(1001f)과 제2점(1002f) 간의 직선 각도와 제3점(1103f)아 제4점(1104f) 간의 직선 각도가 동일하면, 현재 표출된 사각형이 평행사변형 것으로 인식하고 회전 각도도 인식한다. 이렇게 직각 사각형이 생성된 상태에서, 미세 조절 인터페이스에서 정다각형 조절 메뉴가 선택되면, 조절 모듈(25)은 상기 평행 사변형의 모두 변이 동일한 길이를 가지도록 평형사변형을 추가로 보정한다. 즉, 조절 모듈(25)은 평행사변형의 회전 상태를 그대로 유지하면, 평행사변형의 각 변이 서로 동일하게 되도록 기존의 평행사변형을 보정한다.
도 11g를 참조하면, 조절 모듈(25)은 현재 생성되어 화면에 표출된 도형이 사각형이고, 사각형의 꼭지점(1101g, 1102g, 1103g, 1104g) 중에서 모든 꼭지점(1101g, 1102g, 1103g, 1104g)의 가상 직사각형 선분의 중심점에 위치하면, 현재 표출된 사각형이 마름모인 것으로 인식하고 회전 각도도 인식한다. 이렇게 마름모가 생성된 상태에서, 미세 조절 인터페이스에서 정다각형 조절 메뉴가 선택되면, 조절 모듈(25)은 상기 마름모의 가로와 세로 길이가 모두 동일해지도록 상기 마름모를 추가로 보정한다. 즉, 조절 모듈(25)은 평행사변형의 회전 상태를 그대로 유지하면, 마름모의 가로와 세로 길이가 동일해지도록 마름모를 추가 보정한다.
한편, 조절 모듈(25)은 다섯 개 이상의 꼭지점을 가지는 도형이 화면에 표출된 경우, 조절 모듈(25)은 가상 직사각형에서의 각 꼭지점의 위치를 파악하여 도형의 회전 상태를 인식하여, 도형의 정다각형 도형으로 추가 보정할 수 있다.
또한, 조절 모듈(25)은 원, 오각형, 칠각형 이상의 도형이 화면에 표출된 상태에서 정다각형 조절 메뉴가 선택되면, 해당 도형의 가로 길이와 세로 길이를 동일하게 되도록 도형을 보정할 수도 있다.
도 10은 본 발명의 일 실시예에 따른, 도형을 생성하여 표출하는 방법을 설명하는 흐름도이다.
도 10을 참조하면, 입력 판별 모듈(21)은 도 3과 같은 프로세스를 통해서 꼭지점 목록에 기록된 점들을 필터링을 완료하고, 필터링 완료된 꼭지점 목록에 3개 이상의 점들이 포함되어 있는지 판별한다(S1001, S1003). 이어서, 입력 판별 모듈(21)은 필터링 완료된 꼭지점 목록에 3개 이상의 점들이 포함된 경우, UI 모듈(22)로 UI 제공을 요청한다.
그러면, UI 모듈(22)은, 꼭지점 목록에 포함된 점들의 위치(즉, 좌표)를 분석하고, 점들이 동일 직선상에 근접하게 배치되어 있는지 여부를 판별한다(S1005, S1007). 이때, UI 모듈(22)은 꼭지점 목록에 포함된 점들 중에서, 첫 번째 점을 기준으로, 첫 번째 점과 타 점 간의 직선 각도를 각각 산출하고, 이렇게 산출한 직선 각도의 차가 사전에 설정된 임계각도 범위 이내에 포함는지 여부를 판별하여, 꼭지점 목록에 포함된 점들이 동일 직선상에 위치하고 있는지 여부를 판별할 수 있다. 예컨대, 꼭지점 목록에 3개의 점이 기록되어 있으면, UI 모듈(22)은 제1점과 제2점 간의 직선 각도를 계산하고, 더불어 제1점과 제2점 간의 직선 각도를 계산한 후에, 이렇게 계산된 직선 각도들 간의 차가 임계각도 범위 이내인지 여부를 확인할 수 있다.
이어서, UI 모듈(22)은 꼭지점 목록에 포함된 점들이 동일 직선상에 배치되어 있는 경우, 사용자가 직선 그리기를 의도하는 것으로 판단하여 선 그리기 인터페이스(도 4a 참조)를 화면에 출력한다(S1009).
이렇게 직선 그리기 인터페이스가 출력된 상태에서 사용자로부터 직선 그리기 인터페이스에 포함된 실선 그리기 또는 점선 그리기 메뉴가 수신되면(S1011), 보정 모듈(23)은 선 그리기에 해당하는 보정 허용 각도를 확인한다. 이어서, 보정 모듈(23)은 꼭지점 목록에 포함된 점들을 연결시키는 각 직선의 각도를 확인하고, 직선 각도와 수직선 또는 수평선 간의 각도차를 산출하여, 상기 수직선 또는 수평선 간의 각도가 설정된 보정 허용 각도 이내이면, 연결되는 두 개의 점이 수직선 또는 수평선이 되도록, 꼭지점 목록에 기록된 점의 위치(즉, 좌표)를 1차 보정한다(S1013).
꼭지점 목록의 1차 보정이 완료되면, 도형 생성 모듈(24)은 상기 보정 완료된 꼭지점 목록에 기록된 점의 위치를 확인하고, 이 점의 위치가 동일 직선상이 배치되는지 여부를 판별하여, 동일 직선상에 배치되지 않으면, 상기 꼭지점 목록에 포함된 점들이 동일 직선상에 배치되도록, 꼭지점 목록에 포함된 일부 점들을 추가 보정한다. 그리고 도형 생성 모듈(24)은 추가 보정된 꼭지점 목록에 포함된 점들을 연결시켜 실선 또는 직선을 생성하여 화면에 표출한다(S1015).
한편, S1007 단계에서, 상기 꼭지점 목록에 포함된 점들이 동일 직선상에 배치되어 있지 않은 경우, UI 모듈(22)은 사용자가 다각형 그리기를 의도하는 것으로 판단하여 다각형 그리기 인터페이스(도 4b 및 도 4c 참조)를 화면에 출력한다(S1017). 이때, UI 모듈(22)은 꼭지점 목록에 포함된 점의 개수에 따라, 삼각형, 사각형, 오각형 등을 그릴수 있는 인터페이스를 화면에 출력할 수 있다.
이렇게 다각형 그리기 인터페이스가 출력된 상태에서 다각형 그리기 메뉴, 정다각형 그리기 메뉴, 원 그리기 메뉴, 열린 도형 그리기 메뉴 중 어느 하나를 사용자로부터 수신할 수 있다(S1019). 그러면, 보정 모듈(23)은 다각형 그리기, 정다각형 그리기, 원 그리기, 열린 도형 그리기 중에서 사용자 선택한 도형에 해당하는 보정 허용 각도를 확인한다. 이어서, 보정 모듈(23)은 꼭지점 목록에 포함된 점들을 연결시키는 각 직선의 각도를 확인하고, 직선 각도와 수직선 또는 수평선 간의 각도차를 산출하여, 상기 수직선 또는 수평선 간의 각도가 설정된 보정 허용 각도 이내이면, 연결되는 두 개의 점이 수직선 또는 수평선이 되도록, 꼭지점 목록에 기록된 점의 위치(즉, 좌표)를 1차 보정한다(S1021).
꼭지점 목록의 1차 보정이 완료되면, 도형 생성 모듈(24)은 사용자 선택한 도형 유형과 1차 보정된 꼭지점 목록을 토대로, 열린 도형, 원 또는 다각형 중에서 어느 하나를 생성하여 화면에 표출한다(S1023). 상술한 바와 같이, 도형 생성 모듈(24)은 열린 도형 그리기가 사용자에 의해 선택되면, 꼭지점 목록에 포함된 점 중에서 첫 번째로 입력된 점에서부터 마지막에 입력된 점까지의 점을 순차적으로 연결하여 도형을 생성하되, 첫 번째 점과 마지막 점을 연결시키지 않은 열린 도형을 생성하여 화면에 표출한다. 또한, 도형 생성 모듈(24)은 도형 그리기 인터페이스에서 원 그리기 메뉴가 선택되면, 꼭지점 목록에 기록된 점들 중에서 4방향(즉, 상하좌우) 최외곽에 위치하는 4개 점을 선정한 후, 상기 선정한 4개 점들이 연결되는 가상의 직각 사각형을 생성하고, 이 가상의 직각 사각형과 안에서 원의 외주연과 사각형의 변이 접하는 원하는 생성한 후, 이 원을 화면에 표출한다.
또한, 도형 생성 모듈(24)은 꼭지점 목록을 토대로 삼각형을 그릴 때에, 보정된 점 3개의 점이 최외곽에 배치되어 연결되는 가상의 직각 사각형을 형성한 후, 점이 가상의 직각 사각형의 어느 선분에 위치하는지 여부를 분석하여 이 분석 결과에 따라 꼭지점 목록에 포함된 점들을 2차 보정한 후에, 이등변 삼각형, 직각 삼각형, 정삼각형 등을 생성할 수 있다(도 8 참조).
도형 생성 모듈(24)은 사각형을 그릴 때에, 꼭지점 목록에 포함된 4개의 점이 최외곽에 배치되는 가상의 직각 사각형을 형성한 후, 4개의 점이 가상의 직각 사각형에 어느 선분에 위치하는지 여부와 마주보는 변 간의 각도를 분석하여, 이 분석 결과에 따라 꼭지점 목록에 포함된 점들을 2차 보정한 후에, 직각 사각형, 정사각형, 마름모 또는 평행 사변형을 생성할 수 있다(도 9 참조).
또한, 도형 생성 모듈(24)은 꼭지점 목록에 포함된 점들 중에서, 4방향(즉, 상하좌우)으로 최외곽에 배치되는 점들을 연결시킨 가상의 직각 사각형을 형성한 후, 이 가상의 직각 사각형의 선분에 위치하는 점들의 개수를 토대로 5개 이상의 꼭지점을 가지는 다각형을 생성할 수 있다.
이렇게 직선, 다각형 또는 원이 화면에 표출되면, UI 모듈(22)은 미세 조절 인터페이스(도 5참조)를 화면에 출력한다(S1025).
다음으로, 조절 모듈(25)은 미세 조절 인터페이스에서 특정 메뉴가 수신되면(S1027), 수신된 메뉴에 따라 격자를 도형 내부와 외부에 표시하거나 도형을 시계 방향 또는 반시계 방향을 회전시키거나 도형의 가로 길이와 세로 길이가 일치되도록 도형을 추가적으로 보정하는 도형 미세 조절을 수행한다(S1029). 한편, 조절 모듈(25)은 정다각형 조절 메뉴가 선택되면, 현재 생성된 도형의 회전 상태를 토대로, 도형의 가로 길이와 세로 길이가 일치되도록 도형을 추가적으로 보정하거나, 해당 도형이 정다각형이 되도록 도형을 추가 보정한다. 이때, 조절 모듈(25)은 현재 생성된(즉, 현재 화면에 표출된) 도형의 꼭지점 개수 및 가상의 사각형의 선분에 배치된 꼭지점별 위치를 토대로, 도형 종류 및 도형의 회전상태를 인식하고, 이 인식된 회전 상태를 토대로 도형의 가로와 세로 길이를 동일하게 조절하거나 도형을 정다각형이 되도록 조절한다(도 11a 내지 11g 참조).
이러한 프로세스에 따라, 사용자는 3개 이상을 점을 연속적으로 입력하는 자신이 의도하는 도형을 손쉽게 화면에 그릴 수 있다.
본 명세서는 많은 특징을 포함하는 반면, 그러한 특징은 본 발명의 범위 또는 특허청구범위를 제한하는 것으로 해석되어서는 안 된다. 또한, 본 명세서에서 개별적인 실시예에서 설명된 특징들은 단일 실시예에서 결합되어 구현될 수 있다. 반대로, 본 명세서에서 단일 실시예에서 설명된 다양한 특징들은 개별적으로 다양한 실시예에서 구현되거나, 적절히 결합되어 구현될 수 있다.
도면에서 동작들이 특정한 순서로 설명되었으나, 그러한 동작들이 도시된 바와 같은 특정한 순서로 수행되는 것으로, 또는 일련의 연속된 순서, 또는 원하는 결과를 얻기 위해 모든 설명된 동작이 수행되는 것으로 이해되어서는 안 된다. 특정 환경에서 멀티태스킹 및 병렬 프로세싱이 유리할 수 있다. 아울러, 상술한 실시예에서 다양한 시스템 구성요소의 구분은 모든 실시예에서 그러한 구분을 요구하지 않는 것으로 이해되어야 한다. 상술한 프로그램 구성요소 및 시스템은 일반적으로 단일 소프트웨어 제품 또는 멀티플 소프트웨어 제품에 패키지로 구현될 수 있다.
상술한 바와 같은 본 발명의 방법은 프로그램으로 구현되어 컴퓨터로 읽을 수 있는 형태로 기록매체(시디롬, 램, 롬, 플로피 디스크, 하드 디스크, 광자기 디스크 등)에 저장될 수 있다. 이러한 과정은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있으므로 더 이상 상세히 설명하지 않기로 한다.
이상에서 설명한 본 발명은, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 있어 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 여러 가지 치환, 변형 및 변경이 가능하므로 전술한 실시예 및 첨부된 도면에 의해 한정되는 것이 아니다.
100 : 전자 기기 110 : 메모리
111 : 운영 체제 112 : 그래픽 모듈
113 : 도형 생성 프로그램 121 : 메모리 제어기
122 : CPU 123 : 주변 인터페이스
130 : I/O 서브시스템 141 : 디스플레이 장치
142 : 입력장치 152 : 통신 회로
21 : 입력 판별 모듈 22 : UI 모듈
23 : 보정 모듈 24 : 도형 생성 모듈
25 : 조절 모듈

Claims (17)

  1. 삭제
  2. 삭제
  3. 하나 이상의 프로세서;
    메모리; 및
    상기 메모리에 저장되어 있으며 상기 하나 이상의 프로세서에 의하여 실행되도록 구성되는 프로그램을 포함하는 전자 장치로서, 상기 프로그램은,
    사용자의 입력 신호를 모니터링하여, 임계시간 간격으로 연속된 복수의 점이 입력되는지 여부를 모니터링하여 연속된 복수의 점이 입력되면, 이 연속된 점을 분석하여 상기 연속된 점들 중에서 도형 그리기와 연관된 복수의 점들을 검출하여 꼭지점 목록에 기록하는 입력 판별 모듈;
    도형 선택 관련 인터페이스를 출력하여, 인터페이스에 포함된 도형을 선택받는 인터페이스 모듈; 및
    상기 꼭지점 목록에 기록된 점들이 상기 선택받은 도형으로 그려지도록, 상기 점들을 기초로 도형을 생성하고, 상기 생성한 도형을 디스플레이하는 도형 생성 모듈;을 포함하고,
    상기 입력 판별 모듈은,
    상기 꼭지점 목록에 포함된 점들 중에서 연이어 입력된 2개의 점 간의 입력시간차를 각각 계산하고, 계산한 입력 시간차 중에서 임계시간 이하의 시간차를 가지는 점을 상기 꼭지점 목록에서 제거하는 것을 특징으로 하는 전자 장치.
  4. 하나 이상의 프로세서;
    메모리; 및
    상기 메모리에 저장되어 있으며 상기 하나 이상의 프로세서에 의하여 실행되도록 구성되는 프로그램을 포함하는 전자 장치로서, 상기 프로그램은,
    사용자의 입력 신호를 모니터링하여, 임계시간 간격으로 연속된 복수의 점이 입력되는지 여부를 모니터링하여 연속된 복수의 점이 입력되면, 이 연속된 점을 분석하여 상기 연속된 점들 중에서 도형 그리기와 연관된 복수의 점들을 검출하여 꼭지점 목록에 기록하는 입력 판별 모듈;
    도형 선택 관련 인터페이스를 출력하여, 인터페이스에 포함된 도형을 선택받는 인터페이스 모듈; 및
    상기 꼭지점 목록에 기록된 점들이 상기 선택받은 도형으로 그려지도록, 상기 점들을 기초로 도형을 생성하고, 상기 생성한 도형을 디스플레이하는 도형 생성 모듈;을 포함하고,
    상기 입력 판별 모듈은,
    상기 꼭지점 목록에 포함된 점들 중에서 연이어 입력된 2개의 점 간의 입력시간차를 각각 계산하고, 이 계산된 입력 시간차의 평균을 산출한 후, 상기 산출한 평균보다 임계배수 이상으로 큰 입력시간 차이를 가지는 점을 상기 꼭지점 목록에서 제거하는 것을 특징으로 하는 전자 장치.
  5. 하나 이상의 프로세서;
    메모리; 및
    상기 메모리에 저장되어 있으며 상기 하나 이상의 프로세서에 의하여 실행되도록 구성되는 프로그램을 포함하는 전자 장치로서, 상기 프로그램은,
    사용자의 입력 신호를 모니터링하여, 임계시간 간격으로 연속된 복수의 점이 입력되는지 여부를 모니터링하여 연속된 복수의 점이 입력되면, 이 연속된 점을 분석하여 상기 연속된 점들 중에서 도형 그리기와 연관된 복수의 점들을 검출하여 꼭지점 목록에 기록하는 입력 판별 모듈;
    도형 선택 관련 인터페이스를 출력하여, 인터페이스에 포함된 도형을 선택받는 인터페이스 모듈; 및
    상기 꼭지점 목록에 기록된 점들이 상기 선택받은 도형으로 그려지도록, 상기 점들을 기초로 도형을 생성하고, 상기 생성한 도형을 디스플레이하는 도형 생성 모듈;을 포함하고,
    상기 선택받은 도형에 근거하여 허용 보정 범위를 설정하고, 상기 꼭지점 목록에 포함된 연이은 두 점 간의 연결선과 수직선 또는 수평선 간의 각도차를 확인하고, 이 각도차가 상기 허용 보정 범위 이내이면, 상기 두 점이 수평선 또는 수직선이 위치하도록 상기 꼭지점 목록에 포함된 점 위치를 보정하는 보정 모듈;을 더 포함하는 것을 특징으로 하는 전자 장치.
  6. 제5항에 있어서,
    상기 도형 생성 모듈은,
    도형으로서 다각형 도형을 선택받은 경우, 상하좌우 각 방향의 최외곽에 위치하는 점을 상기 꼭지점 목록에서 확인하고, 상기 확인한 최외곽에 위치한 점들이 연결되는 가상 직각 사각형을 형성하고, 상기 가상 직각 사각형에서 상기 꼭지점 목록의 점들이 배치되는 위치를 토대로, 상기 꼭지점 목록에 포함된 점들의 위치를 2차 보정하는 것을 특징으로 하는 전자 장치.
  7. 제6항에 있어서,
    상기 도형 생성 모듈은,
    상기 꼭지점 목록에 3개의 점이 기록되고, 상기 꼭지점 목록에 기록된 3개 점의 위치가 상기 가상 직각 사각형에 설정된 외곽 선분 범위에 포함되는 경우, 직각 삼각형을 생성하여 디스플레이하는 것을 특징으로 하는 전자 장치.
  8. 제6항에 있어서,
    상기 도형 생성 모듈은,
    상기 꼭지점 목록에 3개의 점이 기록되고, 상기 꼭지점 목록에 기록된 2개의 점이 상기 가상 직각 사각형의 외곽 선분 범위에 포함되고 나머지 1개의 점이 상기 가상 직각 사각형의 중앙 선분 범위에 포함되는 경우, 이등변 삼각형 또는 정삼각형을 생성하여 디스플레이하는 것을 특징으로 하는 전자 장치.
  9. 제6항에 있어서,
    상기 도형 생성 모듈은,
    상기 꼭지점 목록에 4개의 점이 기록되고, 상기 꼭지점 목록에 기록된 4개 점의 위치가 상기 가상 직각 사각형의 외곽 선분 범위에 포함되는 경우, 직사각형을 생성하여 디스플레이하는 것을 특징으로 하는 전자 장치.
  10. 제6항에 있어서,
    상기 도형 생성 모듈은,
    상기 꼭지점 목록에 4개의 점이 기록되고, 상기 꼭지점 목록에 기록된 4개 점의 위치가 상기 가상 직각 사각형의 중앙 선분 범위에 포함되는 경우, 마름모를 생성하여 디스플레이하는 것을 특징으로 하는 전자 장치.
  11. 제5항에 있어서,
    상기 도형 생성 모듈은,
    도형으로서 원을 선택받은 경우, 상하좌우 각 방향의 최외곽에 위치하는 점을 상기 꼭지점 목록에서 확인하고, 상기 확인한 최외곽에 위치한 점들이 연결되는 가상 직각 사각형을 형성하고, 이 가상의 직각 사각형의 변과 원의 외주연이 접하는 원을 생성하여 디스플레이하는 것을 특징으로 하는 전자 장치.
  12. 제5항에 있어서,
    상기 도형 생성 모듈은,
    도형으로서 열린 도형을 선택받은 경우, 꼭지점 목록의 점들 중에서, 첫 번째로 입력된 점에서부터 마지막에 입력된 점까지의 점을 순차적으로 연결하여 도형을 생성하되, 첫 번째 순서의 점과 마지막 순서의 점을 연결시키지 않은 열린 도형을 생성하여 디스플레이하는 것을 특징으로 하는 전자 장치.
  13. 제3항 내지 제5항 중 어느 한 항에 있어서,
    상기 인터페이스 모듈은,
    상기 꼭지점 목록에 포함된 점들이 동일한 직선상에 근접하여 배치되어 있는지 여부를 판별하여, 이 판별 결과에 따라 직선 그리기 인터페이스 또는 다각형 그리기 인터페이스를 출력하는 것을 특징으로 하는 전자 장치.
  14. 제3항 내지 제5항 중 어느 한 항에 있어서,
    상기 인터페이스 모듈은,
    상기 꼭지점 목록에 3개 이상의 점들이 기록되어 있는 경우에 상기 인터페이스를 출력하는 것을 특징으로 하는 전자 장치.
  15. 제3항 내지 제5항 중 어느 한 항에 있어서,
    상기 인터페이스 모듈은,
    도형이 생성되어 출력되면, 상기 도형을 미세 조절할 수 있는 미세 조절 인터페이스를 출력하는 것을 특징으로 하는 전자 장치.
  16. 제15항에 있어서, 상기 프로그램은,
    상기 미세 조절 인터페이스에서 메뉴가 선택되면, 상기 생성한 도형이 정다각형으로 되도록 상기 도형을 추가 보정하거나, 상기 생성한 도형의 가로와 세로 길이가 동일해지도록 상기 도형을 추가 보정하는 조절 모듈;을 더 포함하는 것을 특징으로 하는 전자 장치.
  17. 전자 기기에서 사용자가 입력신호를 토대로 도형을 생성하는 방법으로서,
    임계시간 간격으로 연속된 복수의 점이 입력되는지 여부를 모니터링하여 연속된 복수의 점이 입력되면, 이 연속된 점을 분석하여 상기 연속된 점들 중에서 도형 그리기와 연관된 복수의 점들을 검출하여 꼭지점 목록에 기록하는 단계;
    도형 선택 관련 인터페이스를 출력하여, 인터페이스에 포함된 도형을 선택받는 단계;
    상기 선택받은 도형에 근거하여 허용 보정 범위를 설정하고, 상기 꼭지점 목록에 포함된 연이은 두 점 간의 연결선과 수직선 또는 수평선 간의 각도차를 확인하고, 이 각도차가 상기 허용 보정 범위 이내이면, 상기 두 점이 수평선 또는 수직선이 위치하도록 상기 꼭지점 목록에 포함된 점 위치를 보정하는 단계; 및
    상기 꼭지점 목록에 기록된 점들이 상기 선택받은 도형으로 그려지도록, 상기 점들을 기초로 도형을 생성하고, 상기 생성한 도형을 디스플레이하는 단계;를 포함하는 도형 생성 방법.
KR1020170144899A 2017-11-01 2017-11-01 도형 생성 방법 및 장치 KR101976772B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020170144899A KR101976772B1 (ko) 2017-11-01 2017-11-01 도형 생성 방법 및 장치
PCT/KR2018/013130 WO2019088713A1 (ko) 2017-11-01 2018-10-31 도형 생성 방법 및 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170144899A KR101976772B1 (ko) 2017-11-01 2017-11-01 도형 생성 방법 및 장치

Publications (1)

Publication Number Publication Date
KR101976772B1 true KR101976772B1 (ko) 2019-08-28

Family

ID=66332384

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170144899A KR101976772B1 (ko) 2017-11-01 2017-11-01 도형 생성 방법 및 장치

Country Status (2)

Country Link
KR (1) KR101976772B1 (ko)
WO (1) WO2019088713A1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112837394A (zh) * 2019-11-25 2021-05-25 珠海金山办公软件有限公司 一种多边形绘制方法、装置、电子设备及可读存储介质

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07200735A (ja) * 1993-12-28 1995-08-04 Nec Corp 図形認識装置
JPH08305875A (ja) * 1995-05-02 1996-11-22 Matsushita Electric Ind Co Ltd 座標情報操作装置
KR980013413A (ko) * 1996-07-09 1998-04-30 배순훈 영상신호로 표현된 객체의 윤곽선 부호화 방법
JP2003115053A (ja) * 2001-10-02 2003-04-18 Casio Comput Co Ltd 図形作成装置
JP2005192986A (ja) * 2003-12-10 2005-07-21 Nintendo Co Ltd ゲームプログラムおよびゲーム装置
KR20160046150A (ko) * 2014-10-20 2016-04-28 삼성전자주식회사 도형 컨텐트를 생성 및 해석하는 방법 및 장치
KR101633507B1 (ko) * 2015-02-12 2016-06-24 라인플러스 주식회사 엔드 포인트를 보정하는 시스템 및 방법
KR20160085977A (ko) * 2015-01-08 2016-07-19 경북대학교 산학협력단 평면도형 대표폭 산출 장치 및 방법, 그리고 그를 이용한 구조물 대표폭 산출 장치 및 방법
KR20170011638A (ko) * 2015-07-23 2017-02-02 주식회사 셀바스에이아이 필기 도형의 정형화 방법 및 장치
KR101754524B1 (ko) * 2016-02-17 2017-07-20 순천향대학교 산학협력단 2d 영상 내의 3d 요소의 추출 및 3d 요소의 삽입을 기반으로 미디어 컨텐츠 제작 방법 및 시스템

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07200735A (ja) * 1993-12-28 1995-08-04 Nec Corp 図形認識装置
JPH08305875A (ja) * 1995-05-02 1996-11-22 Matsushita Electric Ind Co Ltd 座標情報操作装置
KR980013413A (ko) * 1996-07-09 1998-04-30 배순훈 영상신호로 표현된 객체의 윤곽선 부호화 방법
JP2003115053A (ja) * 2001-10-02 2003-04-18 Casio Comput Co Ltd 図形作成装置
JP2005192986A (ja) * 2003-12-10 2005-07-21 Nintendo Co Ltd ゲームプログラムおよびゲーム装置
KR20160046150A (ko) * 2014-10-20 2016-04-28 삼성전자주식회사 도형 컨텐트를 생성 및 해석하는 방법 및 장치
KR20160085977A (ko) * 2015-01-08 2016-07-19 경북대학교 산학협력단 평면도형 대표폭 산출 장치 및 방법, 그리고 그를 이용한 구조물 대표폭 산출 장치 및 방법
KR101633507B1 (ko) * 2015-02-12 2016-06-24 라인플러스 주식회사 엔드 포인트를 보정하는 시스템 및 방법
KR20170011638A (ko) * 2015-07-23 2017-02-02 주식회사 셀바스에이아이 필기 도형의 정형화 방법 및 장치
KR101754524B1 (ko) * 2016-02-17 2017-07-20 순천향대학교 산학협력단 2d 영상 내의 3d 요소의 추출 및 3d 요소의 삽입을 기반으로 미디어 컨텐츠 제작 방법 및 시스템

Also Published As

Publication number Publication date
WO2019088713A1 (ko) 2019-05-09

Similar Documents

Publication Publication Date Title
US9317893B2 (en) Methods and systems for correcting a document image
CN107710111B (zh) 确定用于接近敏感相互作用的俯仰角
EP3105664B1 (en) Determining pitch and yaw for touchscreen interactions
US10229657B2 (en) Fingerprint directed screen orientation
US9280234B1 (en) Input correction for touch screens
US20150242101A1 (en) User interface device and display object operating method
US20140146076A1 (en) Contour segmentation apparatus and method based on user interaction
US9807383B2 (en) Wearable video headset and method for calibration
US8949735B2 (en) Determining scroll direction intent
US20180247438A1 (en) Beautifying freeform drawings using transformation adjustments
US20150186004A1 (en) Multimode gesture processing
US20170293424A1 (en) Modifying key size on a touch screen based on fingertip location
US20150302587A1 (en) Image processing device, image processing method, program, and information recording medium
CN110471658B (zh) 一种图层的选择方法、系统及计算机存储介质
KR20140126630A (ko) 이동 단말기를 이용한 사용자 응시점 추적 방법 및 그 장치
US20150145782A1 (en) Invoking zoom on touch-screen devices
US20210140784A1 (en) Contextualizing the location of a mapped point of interest via a dynamic pin
US10216401B2 (en) Information processing device and method for multi-touch user interface
US9824072B2 (en) Adjusting layout size of hyperlink
KR101976772B1 (ko) 도형 생성 방법 및 장치
US10139982B2 (en) Window expansion method and associated electronic device
US20150293690A1 (en) Method for user interface display and electronic device using the same
JP5974685B2 (ja) 表示装置およびプログラム
US10485056B2 (en) Sensor based interface adjustment
WO2019236302A1 (en) Alignment of user input on a screen