KR100243224B1 - 그래픽에서 타원 메꿈방법 - Google Patents
그래픽에서 타원 메꿈방법 Download PDFInfo
- Publication number
- KR100243224B1 KR100243224B1 KR1019970032938A KR19970032938A KR100243224B1 KR 100243224 B1 KR100243224 B1 KR 100243224B1 KR 1019970032938 A KR1019970032938 A KR 1019970032938A KR 19970032938 A KR19970032938 A KR 19970032938A KR 100243224 B1 KR100243224 B1 KR 100243224B1
- Authority
- KR
- South Korea
- Prior art keywords
- ellipse
- points
- vertex
- point
- vertical axis
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/40—Filling a planar surface by adding surface attributes, e.g. colour or texture
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Image Generation (AREA)
Abstract
본 발명은 그래픽에서 타원 메꿈방법에 관한 것으로, 타원둘레의 한 변곡점을 타원에 내접하는 사각형의 제1정점으로 정하고 이 정점과 타원의 중심을 지나는 수직축에 대해 대칭인 제2정점, 제2정점과 타원의 중심을 지나는 수평축에 대칭인 제3정점 및 제3정점과 수직축에 대해 대칭인 제4정점을 구하는 제1단계; 제1단계의 각 정점들을 연결한 사각형 내부를 메모리블럭 복사하는 제2단계; 타원과 수직축과의 제1접점에서부터 한 픽셀씩 이동하면서 제1단계에서 구한 제1정점까지 타원둘레를 이루는 점들을 구하고 구해진 각 점들로부터 수직축에 대해 대칭인 점들까지 직선으로 연결하며, 구해진 각 점들을 수평축에 대해 대칭시킨 점들로부터 이 점들과 수직축에 대해 대칭인 점들까지 직선으로 연결하여 메꾸는 제3단계; 및 타원과 수평축과의 제2접점에서부터 한 픽셀씩 이동하면서 제1단계에서 구한 제1정점까지 타원둘레를 이루는 점들을 구하고, 구해진 각 점들로부터 수평축에 대해 대칭인 점까지 직선으로 연결하여 메꾸며, 구해진 각 점들을 수직축에 대해 대칭시킨 점들로부터 이 점들과 수평축에 대해 대칭인 점들까지 직선으로 연결하여 메꾸는 제4단계로 이루어진다.
본 발명에 의한 메꿈방법은 종래의 방법에 비해 타원의 경우 번, 원의 경우 약 0.8r번의 선그리기가 감소한다.
Description
본 발명은 타원 메꿈방법에 관한 것으로, 보다 상세하게는 그래픽에서 타원을 메꾸는 방법에 관한 것이다.
통상적으로 그래픽 디스플레이(Graphic Display)는 컴퓨터의 그래픽 사용자 인터페이스(Graphic User Interface) 등 광범위한 분야에서 사용된다. 그래픽으로 어떤 사물을 표현하기 위해서는 그 사물을 점, 선, 삼각형, 사각형, 원 또는 타원으로 나누어 그리게 된다. 이들 기본도형중에서도 처리하는데 많은 시간을 필요로하는 것이 원과 타원이며, 특히 원과 타원의 내부를 주어진 색상으로 메꾸는 경우 많은 시간이 소요된다.
도 1은 종래의 원 메꿈방법에 대한 도면으로, 도 1의 원은 편의상 좌표축의 원점이 (0,0)에 있다고 가정된다. 먼저, 원을 8개로 분할했을 때 그 원의 제1팔상한(1st Octant)상의 점(x,y)는 공지의 미드포인트 알고리즘(Midpoint Circle Algorithm) 등을 이용하여 (0,r)에서 x=y인 점까지 한 번에 한 픽셀씩 이동하면서 구해진다. 제1팔상한의 점 (x,y)로부터 각 점 (-x,y), (y,x), (-y,x), (y,-x), (-y,-x), (x,-y), (-x,-y)가 구해진 후, y축에 대칭인 점들이 직선으로 연결되어 메꿔진다. 즉, 도 1의 점(x,y)와 점(-x,y), 점(y,x)와 점(-y,x), 점(y,-x)와 점(-y,-x) 및 점(x,-y)와 점(-x,-y)가 각각 직선으로 연결되고, 이 과정이 (x,y)=(0,r)에서 x=y가 될 때까지 반복된다.
타원의 경우는 원을 그리는 경우의 확장이다. 다만, 타원의 성질상 대칭성을 이용하기 위해서 타원이 4개의 원주로 분할되어 그려진다. 도 2는 타원을 메꾸는 방법을 도시한 것으로, 도 2의 타원도 편의상 그 원점이 (0,0)에 있다고 가정한다. 타원의 장반경을 a, 단반경을 b라 하면, 제1사상한의 타원둘레상에 위치하는 점은 (0,b)에서 시작하여 (a,0)까지 한 번에 한 픽셀씩 이동되면서 구해진다. 구해진 점(x,y)로부터 점(-x,y) (x,-y) 및 (-x,-y)를 구한 후, 점(x,y)와 점(-x,y), 점(x,-y)와 점(-x,-y)를 각각 직선으로 연결한다. 이 과정은 점(x,y)가 점(0,b)에서 점(a,0)가 될 때까지 반복된다.
그러나 상술한 원 및 타원 그리기 방법은 원의 경우 2r번, 타원의 경우 2b번의 직선그리기를 통하여 그 내부가 메꿔지므로 처리시간이 많이 걸리는 문제점이 있다.
본 발명이 이루고자하는 기술적 과제는 원 및 타원의 내부 사각형 부분을 빠른 메모리 블록 복사로 채우고 나머지 부분만 직선그리기를 수행하여 처리속도를 빠르게하는 그래픽에서 타원 메꿈방법을 제공하는데 있다.
도 1은 그래픽에서 종래의 원 메꿈방법에 대한 도면이다.
도 2는 그래픽에서 종래의 타원 메꿈방법에 대한 도면이다.
도 3은 본 발명에 따른 그래픽에서 타원 메꿈방법에 대한 흐름도이다.
도 4는 도 3에 따른 타원 메꿈방법에 대한 도면이다.
상기 기술적 과제를 이루기위한 그래픽에서 타원 메꿈방법은 타원둘레의 한 변곡점을 타원에 내접하는 사각형의 제1정점으로 정하고 이 정점과 타원의 중심을 지나는 수직축에 대해 대칭인 제2정점, 상기 제2정점과 타원의 중심을 지나는 수평축에 대칭인 제3정점 및 제3정점과 수직축에 대해 대칭인 제4정점을 구하는 제1단계; 상기 제1단계의 각 정점들을 연결한 사각형 내부를 메모리블럭 복사하는 제2단계; 상기 타원과 수직축과의 제1접점에서부터 한 픽셀씩 이동하면서 상기 제1단계에서 구한 제1정점까지 타원둘레를 이루는 점들을 구하고 구해진 각 점들로부터 수직축에 대해 대칭인 점들까지 직선으로 연결하며, 상기 구해진 각 점들을 수평축에 대해 대칭시킨 점들로부터 이 점들과 수직축에 대해 대칭인 점들까지 직선으로 연결하여 메꾸는 제3단계; 및 상기 타원과 수평축과의 제2접점에서부터 한 픽셀씩 이동하면서 상기 제1단계에서 구한 제1정점까지 타원둘레를 이루는 점들을 구하고, 구해진 각 점들로부터 수평축에 대해 대칭인 점까지 직선으로 연결하여 메꾸며, 상기 구해진 각 점들을 수직축에 대해 대칭시킨 점들로부터 이 점들과 수평축에 대해 대칭인 점들까지 직선으로 연결하여 메꾸는 제4단계를 포함함이 바람직하다.
이하에서 첨부된 도면을 참조하여 본 발명을 상세히 설명하기로 한다. 도 3은 본 발명에 따른 그래픽에서 타원 메꿈방법에 관한 흐름도이고, 도 4는 도 3에 따른 타원 메꿈과정을 도시한 것이다.
먼저, 도 3의 흐름도에 따른 그래픽에서 타원 메꿈방법은 타원에 내접하는 사각형의 정점계산단계(300), 사각형 내부메꿈단계(302), 타원의 둘레계산단계(304) 및 타원의 나머지부분 메꿈단계(306)로 이루어진다. 여기서, 원은 타원의 특수한 경우이므로 타원의 경우가 먼저 계산되고, 그 특수한 경우로 원이 고려된다.
먼저, 타원에 내접하는 사각형의 정점이 계산된다(300단계). 사각형 형태는 메모리의 구조상 서로 인접한 일정 갯수의 메모리 셀(cell)들에 동시에 동일한 값으로 채울 수 있으므로, 이를 이용하여 타원에 내접하는 사각형 영역을 한 번에 메꾸도록 내접 사각형의 각 정점이 계산된다. 도 4에 도시된 타원에 따르면, 타원의 장반경이 a, 단반경이 b이고, 편의상 그 원점이 (0,0)에 있다고 가정할 때, 타원의 제1상한에서 타원에 접하고 기울기가 -1인 로 표현되는 접선과 로 표현되는 타원이 만나는 변곡점 A가 정점이 된다. 타원의 제1상한의 변곡점은 이고, 원의 경우는 a=b=r (r은 원의 반경)이므로 이다. 정점 A가 정해지면, 이에 대칭되는 제2, 제3 및 제4상한의 정점 , 및 이 결정된다. 원의 경우에는 각각 , 및 가 된다. 이 정점들로 이루어진 사각형은 메모리 블럭복사로 빠르게 메꿔진다(302단계).
타원에서 사각형을 제외한 나머지부분중 도 4의 402부분은 점(x,y)가 점(0,b)에서 까지 한 픽셀씩 증가되는동안 점(x,y)와 (-x,y), 점(x,-y)와 (-x,-y)가 수평선으로 연결되면서 색이 칠해지고, 도 4의 404부분은 점(x,y)가 (a,0)에서 까지 한 픽셀씩 증가되는동안 점(x,y)와 (x,-y), 점(-x,y)와 (-x,-y)가 수직선으로 연결되면서 색이 칠해진다.
원의 경우도 마찬가지로 점(x,y)가 점(0,r)에서 까지 한 픽셀씩 증가되어 원주상의 점(x,y)가 계산되고(304단계), 점(x,y)와 (-x,y), 점(x,-y)와 (-x,-y)가 수평선으로 연결되면서 메꿔지며(306단계), 점(x,y)가 (r,0)에서 까지 한 픽셀씩 증가되어 원주상의 점(x,y)가 계산되고(304단계), 점(x,y)와 (x,-y), 점(-x,y)와 (-x,-y)가 수직선으로 연결되면서 타원 내부가 메꿔진다(306단계).
본 발명은 그래픽의 기본도형중의 하나인 원 및 타원에 대해 그 내부를 주어진 색상으로 빠르게 채우는 방법에 대한 것이므로, 그래픽 가속보드/칩(Graphic Acceleration board/chip), 그래픽 라이브러리(API)에 광범위하게 응용될 수 있다.
Claims (3)
- 타원둘레의 한 변곡점을 타원에 내접하는 사각형의 제1정점으로 정하고 이 정점과 타원의 중심을 지나는 수직축에 대해 대칭인 제2정점, 상기 제2정점과 타원의 중심을 지나는 수평축에 대칭인 제3정점 및 제3정점과 수직축에 대해 대칭인 제4정점을 구하는 제1단계;상기 제1단계의 각 정점들을 연결한 사각형 내부를 메모리블럭 복사하는 제2단계;상기 타원과 수직축과의 제1접점에서부터 한 픽셀씩 이동하면서 상기 제1단계에서 구한 제1정점까지 타원둘레를 이루는 점들을 구하고 구해진 각 점들로부터 수직축에 대해 대칭인 점들까지 직선으로 연결하며, 상기 구해진 각 점들을 수평축에 대해 대칭시킨 점들로부터 이 점들과 수직축에 대해 대칭인 점들까지 직선으로 연결하여 메꾸는 제3단계; 및상기 타원과 수평축과의 제2접점에서부터 한 픽셀씩 이동하면서 상기 제1단계에서 구한 제1정점까지 타원둘레를 이루는 점들을 구하고, 구해진 각 점들로부터 수평축에 대해 대칭인 점까지 직선으로 연결하여 메꾸며, 상기 구해진 각 점들을 수직축에 대해 대칭시킨 점들로부터 이 점들과 수평축에 대해 대칭인 점들까지 직선으로 연결하여 메꾸는 제4단계를 포함함을 특징으로하는 그래픽에서 타원 메꿈방법.
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019970032938A KR100243224B1 (ko) | 1997-07-15 | 1997-07-15 | 그래픽에서 타원 메꿈방법 |
CN98106671A CN1108589C (zh) | 1997-07-15 | 1998-04-20 | 填充椭圆图形的方法 |
US09/069,976 US6226014B1 (en) | 1997-07-15 | 1998-04-30 | Ellipse filling graphics method |
JP10146086A JP2977155B2 (ja) | 1997-07-15 | 1998-05-27 | グラフィックにおける楕円充填方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019970032938A KR100243224B1 (ko) | 1997-07-15 | 1997-07-15 | 그래픽에서 타원 메꿈방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR19990010240A KR19990010240A (ko) | 1999-02-05 |
KR100243224B1 true KR100243224B1 (ko) | 2000-02-01 |
Family
ID=19514590
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019970032938A KR100243224B1 (ko) | 1997-07-15 | 1997-07-15 | 그래픽에서 타원 메꿈방법 |
Country Status (4)
Country | Link |
---|---|
US (1) | US6226014B1 (ko) |
JP (1) | JP2977155B2 (ko) |
KR (1) | KR100243224B1 (ko) |
CN (1) | CN1108589C (ko) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6011271B2 (ja) * | 2012-01-17 | 2016-10-19 | 株式会社リコー | 情報処理装置、システム、情報処理方法、プログラム、記憶媒体 |
US9465835B2 (en) * | 2012-06-25 | 2016-10-11 | Sap Se | Columnwise spatial aggregation |
CN104809752B (zh) * | 2015-04-20 | 2016-02-24 | 广东工业大学 | 一种非规则区域的矩形块填充方法 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6272078A (ja) | 1985-09-25 | 1987-04-02 | Casio Comput Co Ltd | 円内塗りつぶし描画装置 |
JPH07122905B2 (ja) * | 1987-10-21 | 1995-12-25 | ダイキン工業株式会社 | 多角形ぬりつぶし制御装置 |
JPH0683971A (ja) * | 1992-06-11 | 1994-03-25 | Nec Corp | 図形表示装置 |
US5463723A (en) * | 1993-09-20 | 1995-10-31 | International Business Machines Corporation | Method and apparatus for filling polygons |
-
1997
- 1997-07-15 KR KR1019970032938A patent/KR100243224B1/ko not_active IP Right Cessation
-
1998
- 1998-04-20 CN CN98106671A patent/CN1108589C/zh not_active Expired - Fee Related
- 1998-04-30 US US09/069,976 patent/US6226014B1/en not_active Expired - Fee Related
- 1998-05-27 JP JP10146086A patent/JP2977155B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
CN1205492A (zh) | 1999-01-20 |
KR19990010240A (ko) | 1999-02-05 |
US6226014B1 (en) | 2001-05-01 |
JP2977155B2 (ja) | 1999-11-10 |
CN1108589C (zh) | 2003-05-14 |
JPH1139498A (ja) | 1999-02-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7280121B2 (en) | Image processing apparatus and method of same | |
US9330495B2 (en) | Extending DX11 GPU for programmable vector graphics | |
US7362325B2 (en) | 2D/3D line rendering using 3D rasterization algorithms | |
US5333248A (en) | Method and system for the smooth contouring of triangulated surfaces | |
US20190266781A1 (en) | Method of rendering computer graphics curves | |
US20050068326A1 (en) | Image processing apparatus and method of same | |
CN111986303A (zh) | 流体渲染方法、装置、存储介质及终端设备 | |
KR100243224B1 (ko) | 그래픽에서 타원 메꿈방법 | |
US20180204337A1 (en) | System and method for rendering smooth color gradients across multiple shapes | |
Sato et al. | Fast image generation of construcitve solid geometry using a cellular array processor | |
US7034830B2 (en) | Method for generating a two-dimensional distance field within a cell associated with a corner of a two-dimensional object | |
JPH0628438A (ja) | 図面処理システム | |
US20040189644A1 (en) | Method for animating two-dimensional objects | |
US20040189618A1 (en) | Method for converting two-dimensional pen strokes to distance fields | |
EP0644509A2 (en) | Method and apparatus for filling polygons | |
CN1248032A (zh) | 图形涂抹装置 | |
WO2004086298A1 (en) | Method for converting a two-dimensional distance field to a set of boundary descriptors | |
EP4309920A1 (en) | Tire | |
EP4309919A1 (en) | Tire | |
JPH0350686A (ja) | 図形処理方式 | |
Godin | WHAT'S THE PROBLEM? MAXIMIZING RECTANGLES | |
RU2025777C1 (ru) | Способ фиксации изображения объекта | |
JPS62285188A (ja) | 線分の表示方法 | |
KR19990015445A (ko) | 사각형을 이용한 래스터화 방법 | |
KR100435258B1 (ko) | 컴퓨터 그래픽의 3차원 직선 그리는 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20080918 Year of fee payment: 10 |
|
LAPS | Lapse due to unpaid annual fee |