KR100679289B1 - System of processing image for vector pixel - Google Patents

System of processing image for vector pixel Download PDF

Info

Publication number
KR100679289B1
KR100679289B1 KR1020060092801A KR20060092801A KR100679289B1 KR 100679289 B1 KR100679289 B1 KR 100679289B1 KR 1020060092801 A KR1020060092801 A KR 1020060092801A KR 20060092801 A KR20060092801 A KR 20060092801A KR 100679289 B1 KR100679289 B1 KR 100679289B1
Authority
KR
South Korea
Prior art keywords
vector
image
information
data
control
Prior art date
Application number
KR1020060092801A
Other languages
Korean (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 최금영
Application granted granted Critical
Publication of KR100679289B1 publication Critical patent/KR100679289B1/en
Priority to US11/697,465 priority Critical patent/US7916141B2/en

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
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/20Processor architectures; Processor configuration, e.g. pipelining
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10024Color image

Abstract

An image processing system using a vector pixel is provided to reduce the quantity of data and the quantity of operations for producing an image by changing an image data representing method. An image processing system includes a vector pixel(10) composed of a vector information unit(11), a data unit structure(110), a data unit(100), a file generator(300), and a data processor(400). The vector information unit stores one of eight vectors with respect to eight directions based on X and Y axes at lower four bits of 1 byte. The data unit structure is composed of vector pixels and includes a boundary indicator(111) at the end. The data unit is composed of data unit structures and includes a terminator(101) at the end. The file generator constructs the data unit according to a specific command, generates and stores a computer image file based on the data unit. The data processor processes direction indication according to vector information of the image file generated by the file generator.

Description

벡터화소를 이용한 이미지 처리 시스템{SYSTEM OF PROCESSING IMAGE FOR VECTOR PIXEL} Image processing system using vector pixels {SYSTEM OF PROCESSING IMAGE FOR VECTOR PIXEL}

도 1은 본 발명에 따른 벡터화소를 이용한 이미지 처리 시스템을 이루는 각각의 세부 구성을 나타내는 개념도 및 블록도. BRIEF DESCRIPTION OF THE DRAWINGS Fig. 1 is a conceptual diagram and block diagram showing each detailed configuration of an image processing system using a vector pixel according to the present invention.

도 2는 본 발명에 따른 이미지 파일에서의 헤더를 나타내는 설명도.2 is an explanatory diagram showing a header in an image file according to the present invention;

도 3a, b는 본 발명에 따른 컨트롤 부를 나타내는 설명도.3A and 3B are explanatory diagrams showing a control unit according to the present invention.

도 4는 본 발명에 따른 이미지 처리 시스템에 의한 선 그리기 알고리즘 구현도.4 is an implementation diagram of a line drawing algorithm by the image processing system according to the present invention;

도 5는 본 발명에 따른 이미지 처리 시스템에 의한 원 그리기 알고리즘 구현도.5 is an implementation drawing of the circle drawing algorithm by the image processing system according to the present invention.

도 6은 본 발명에 따른 이미지 처리 시스템에 의한 자유곡선 작도 원리도.6 is a schematic diagram of a freehand drawing by the image processing system according to the present invention;

(A) 베지어 곡선 작성 원리도      (A) Bezier curve creation principle

(B) 자유곡선 개념도       (B) Free curve conceptual diagram

도 7은 본 발명에 따른 이미지 처리 시스템에 의한 도형 변형 원리도.7 is a diagram illustrating a deformation of the figure by the image processing system according to the present invention;

도 8은 본 발명에 따른 이미지 처리 시스템에 의한 이미지 변형 원리도.8 is an image deformation principle diagram by the image processing system according to the present invention;

도 9는 본 발명에 따른 이미지 처리 시스템에 의한 분할 이미지 표현 개념도.9 is a conceptual diagram of a segmented image representation by an image processing system according to the present invention;

도 10은 본 발명에 따른 이미지 처리 시스템에 의한 3차원 이미지의 구현 시 벡터 종류를 나타내는 개념도.10 is a conceptual diagram showing the types of vectors in the implementation of the three-dimensional image by the image processing system according to the present invention.

<도면 주요 부분에 대한 부호의 설명><Explanation of symbols for the main parts of the drawings>

10: 벡터화소 21b: 컨트롤 문자 식별자10: vector pixel 21b: control character identifier

10a: 기본형 벡터화소 22: 컨트롤 파라미터10a: basic vector pixel 22: control parameters

10b: 확장형 벡터화소 100: 데이터 부10b: Scalable Vector Pixel 100: Data Division

11: 벡터정보부 101: 터미네이터11: vector information 101: terminator

12: 보조벡터정보부 110: 데이터단위구조12: auxiliary vector information unit 110: data unit structure

13: 색상 정보부 111: 경계표시자13: color information 111: landmark sight

20: 컨트롤 부 200: 헤더20: control unit 200: header

21a: 컨트롤 문자 표시자 300: 파일 생성부21a: control character indicator 300: file generator

400: 데이터 처리부400: data processing unit

본 발명은 컴퓨터 프로그램에서 벡터화소를 이용한 이미지 시스템에 관한 것으로서, 보다 상세히는 컴퓨터 프로그램에서 도형의 작도와 이미지 처리 시에 1 단위의 데이터, 즉 상, 하, 좌, 우, 좌상, 우상, 좌하, 우하의 8가지 벡터 중 어느 하나의 방향 정보를 포함시켜 작도, 확대, 축소, 회전, 변형을 하며, 이 데이터를 컴퓨터에서 쓰고, 읽고, 저장할 수 있는 시스템에 관한 것이다.The present invention relates to an image system using vector pixels in a computer program. More specifically, the present invention relates to an image system using vector pixels. More specifically, the computer program includes one unit of data, i.e., top, bottom, left, right, top, left, bottom, The present invention relates to a system that includes direction information of any one of the right and bottom vectors to draw, enlarge, reduce, rotate, transform, and write, read, and store the data on a computer.

컴퓨터 프로그램에서 이용하는 그림, 즉 이미지(映像, Image)의 표현 단위는 도형(圖形, Drawing)을 표시하는 좌표와 Bitmap을 표시하는 화소(畵素, PIXEL, Picture Element)의 2가지로 대별할 수 있다. 좌표는 수평(X)축과 수직(Y)축의 위치를 수치화하여 1점을 표시하는데 통상 4바이트(X 좌표 2바이트, Y 좌표 2바이트)가 소요되고, 화소는 Red, Green, Blue의 3원색에 1바이트씩 배정하여 3바이트로 1점의 색상을 표시한다. There are two types of expression units used in computer programs, namely, image representation units, coordinates for drawing, and pixels for displaying bitmaps. . Coordinates usually take 4 bytes (2 bytes of X coordinates, 2 bytes of Y coordinates) to display one point by digitizing the position of the horizontal (X) axis and the vertical (Y) axis, and the pixels are the three primary colors of red, green, and blue. Each byte is assigned one byte to display one color in three bytes.

따라서 어떤 점의 위치정보와 색상정보를 동시에 독립적으로 표시하려면 1점 당 7바이트가 소요되어 메모리를 많이 차지하게 되므로 극히 필요한 경우가 아니라면 잘 사용하지 않는다. 이러한 이유로 통상 이미지정보의 표시는 가로, 세로로 정해진 4각형 속에 3바이트 크기의 화소를 차례대로 나열하는 방법을 사용하고 있다. Therefore, to display the location information and color information of a point independently at the same time takes 7 bytes per point, which takes up a lot of memory, so it is not used well unless it is extremely necessary. For this reason, the display of image information generally uses a method of arranging pixels of 3 byte size in order in a horizontal and vertical quadrangular shape.

현재 사용 중인 이미지 파일포맷들은 GIF 또는 JPG, BMP 파일포맷과 같은 것으로, 이들 이미지 파일들은 다음과 같은 차이점이 있다.Currently used image file formats are GIF, JPG, and BMP file formats. These image files have the following differences.

현재 Web Site에서 볼 수 있는 그림은 JPEG(JPG)와 GIF 파일이 대부분이다. 이 두 가지 파일은 놀라운 압축율과 여러 가지 장점 때문에 널리 쓰이는 그래픽이며, 간단한 차이는 사진이나 색상 수가 많은 그림에는 JPEG를, 그리고 그 나머지는 GIF를 대부분 사용하고 있다. Most of the pictures that can be viewed on the Web site are JPEG (JPG) and GIF files. These two files are popular graphics because of their amazing compression ratios and other advantages, with the simple difference being that they use JPEG for photos and pictures with a lot of colors, and GIF for the rest.

GIF(Graphics Interchange Format)파일은 256 Colors로 그림을 저장할 때 용량이 적기 때문에 홈페이지의 아이콘 등에 널리 쓰이고 있으며, 인터넷상에서 움직 이는 그림은 모두 gif 파일이다. GIF (Graphics Interchange Format) files are widely used for homepage icons because of their small capacity when storing pictures in 256 colors. All the moving pictures on the Internet are gif files.

JPEG(Joint Photographic Experts Group)파일은 사진이나 색상 수가 많은 그림을 저장할 때 압축률이 매우 높기 때문에 그림의 용량을 놀라울 만큼 줄일 수 있다. Joint Photographic Experts Group (JPEG) files have a very high compression rate when storing photos or pictures with a large number of colors, which can dramatically reduce the picture size.

BMP(Bitmap) 파일은 압축하지 않은 상태의 파일로서 크기가 매우 크기 때문에 인터넷 화면에서 나타나는 시간이 매우 느려 통상 압축파일을 많이 사용하나 압축률을 높이면 그림의 선명도가 많이 떨어진다. BMP (Bitmap) files are uncompressed files, which are very large in size, so they appear on the Internet screen very slowly, so they usually use a lot of compressed files.

압축에는 손실 압축기법이 있고 비 손실 압축기법이 있다. 이미지 파일에 있어서 압축의 기본 원리는 반복되는 색상(내용)에 대해서 나름대로의 규칙을 갖고 줄여나가는 것이다.Compression has a lossy compression method and a non-lossy compression method. The basic principle of compression in an image file is to reduce it with its own rules for repeated colors (content).

JPG의 경우 손실 압축기법을 사용한다. JPG는 24bit, 즉 2의 24승인 16,777,216색을 표현할 수 있다. 압축과정에서 반복하여 색의 수를 줄이다 보니 이미지에 손상을 주게 되어 손실 압축기법이라 한다. 하지만 표현 가능한 색이 많아서 사진 같은 실사 이미지의 표현에 적절하며 압축률도 뛰어나다.In the case of JPG, the lossy compression method is used. JPG can express 16 bits, 24 bits, or 16,777,216 colors. Repeatedly reducing the number of colors in the compression process damages the image is called a lossy compression method. However, due to the many colors that can be expressed, it is suitable for expressing photorealistic images such as photographs and has a high compression ratio.

GIF의 경우 비 손실 압축기법을 사용한다. 즉, GIF 파일포맷을 사용할 경우 원본이미지를 손상시키지 않고도 압축이 가능하다. 그러나 GIF는 색상 정보에 대해 8bit만을 사용하기 때문에, 256색을 표현할 수 있을 뿐이며, 그 결과 사진 같은 이미지의 경우 GIF 파일포맷으로 저장하면 표현할 수 있는 256가지의 색 이외의 색은 전부 없애버리고 만다. 따라서 GIF는 직접 그린 그림 등을 표현하는데 좋은 것이다. For GIF, use the lossless compression method. In other words, if you use the GIF file format, it can be compressed without damaging the original image. However, since GIF uses only 8 bits for color information, it can only display 256 colors. As a result, images such as photographs are removed from the 256 colors that can be expressed by storing them in the GIF file format. Therefore, GIF is good for expressing pictures drawn directly.

JPG와 GIF 이후로 둘의 장점을 합친 것이 PNG 형식이다. JPG의 높은 화질과 그리고 GIF의 투명, 비 손실 압축, 거기에 보너스로 메타데이터(추가적인 정보, 예로 레이어 정보 등)를 지원하지만 애석하게도 애니메이션 기능은 지원하지 않고, 아직 웹 브라우저에서는 지원이 안 되고 있다.Since JPG and GIF, the best of both worlds is the PNG format. JPG's high quality and GIF's transparency, lossless compression, plus bonus metadata (additional information, e.g. layer information), but unfortunately it doesn't support animation and is not yet supported by web browsers. .

전 세계에 널리 알려진 Auto CAD와 같은 작도 프로그램(CAD, Computer Aided Drawing)의 도형(Drawing) 정보는 좌표를 나타내는 4바이트 정보이나 양적인 부담(메모리 크기, 디스크 저장용량, 통신 속도 저하 등) 때문에 중간점은 모두 생략하고 직선의 시작점과 끝점, 혹은 원의 중심점이나 곡선의 기준점처럼 필수불가결한 점만을 보관하고, 그때그때 직선이나 원호, 혹은 베지어(Bezier) 곡선 등으로 연결하여 도형을 표시하는 방법을 사용한다. 또한, CAD소프트웨어에서는 색상 표현을 최소화해서 데이터의 양을 줄이고 있다.Drawing information in a drawing program (CAD, Computer Aided Drawing) such as Auto CAD, which is widely known around the world, is a midpoint due to 4-byte information indicating coordinates or due to quantitative burden (memory size, disk storage capacity, communication speed, etc.). Omit all of them, and keep only the essential points such as the starting point and end point of the straight line, or the center point of the circle or the reference point of the curve, and then connect them with a straight line, an arc, or a Bezier curve. use. In addition, CAD software reduces the amount of data by minimizing color representation.

한편, 마이크로소프트사 윈도우(Windows)의 Bitmap으로 대표되는 이미지 파일의 정보 저장체계는 정해진 4각형 내부에 3바이트의 색상 정보를 차례대로 나열하는 방식을 따르고 있다. 따라서 단색의 의미 없는 배경 부분도 생략이 불가하여 파일이 커지는 단점이 생기는데 이를 보완하기 위하여 여러 가지 파일압축 방법을 개발해 놓고 있다. 이 압축 방법에 따라 JPG, GIF, TIF, PNG 등 여러 가지 형식이 출현한 것이다. 그러나 압축을 해도 4각형의 틀을 벗어날 수는 없기 때문에 임의의 형상을 표현해야 할 경우에는 대응이 어렵다. 이를 보완하기 위하여 특정 색상을 투명 처리하는 방법(GIF 방식)과 또 하나의 단순 이미지를 마스크용으로 병용(竝用)하는 방식(윈도우의 Bitmap)을 쓰고 있다. On the other hand, the information storage system of image files represented by Bitmap of Microsoft's Windows follows a method of sequentially arranging three bytes of color information inside a predetermined square. Therefore, it is impossible to omit the meaningless background part of a single color, which leads to the disadvantage that the file becomes large. To solve this problem, various file compression methods have been developed. According to this compression method, various formats such as JPG, GIF, TIF, PNG appeared. However, even if the compression does not escape the frame of the quadrilateral, it is difficult to respond when it is necessary to express an arbitrary shape. To compensate for this, a method of transparently processing a specific color (GIF method) and another simple image for a mask (Bitmap) are used.

이러한 일반적인 이미지 파일 및 종래 방식에 의한 이미지 처리의 경우, 미래의 컴퓨터 응용 분야인 게임이나 모바일 컴퓨팅, 애니메이션 등에서 동영상, 3차원 그래픽, 다양한 형태의 글자체(Font)에 대해 보다 압축되고 더 빠른 처리의 요구가 증대하고 있는 현실에 부응하고 있지 못하는 바, 방향정보와 색상정보를 동시에 표현하면서 그 데이터 크기를 최소화하는 기술이 절실히 요구되고 있는 실정이다.In the case of such a general image file and conventional image processing, the need for more compressed and faster processing for video, 3D graphics, and various types of fonts in games, mobile computing, animation, etc., which are future computer applications. As a result, the technology for minimizing the size of data while simultaneously expressing direction information and color information is urgently needed.

본 발명은 상기 기술의 문제점을 극복하기 위해 안출된 것으로, 기존의 이미지 데이터 표시형태(BMP, JPG, TIF, GIF 등)와 같이 데이터를 압축하는 기술이 아니라 이미지 데이터의 표현 방식을 바꾸어 데이터의 양과 이미지 영상(映像, Image)을 제작하는 작업의 양을 근본적으로 줄이는 새로운 파일구조를 생성, 실행하는 시스템을 제시하는 것을 주목적으로 한다.SUMMARY OF THE INVENTION The present invention has been made to overcome the problems of the above technique, and it is not a technique of compressing data as in the conventional image data display forms (BMP, JPG, TIF, GIF, etc.), but rather the amount of data by changing the representation method of image data The main objective is to present a system that creates and executes a new file structure that radically reduces the amount of work to produce an image.

본 발명의 다른 목적은 문자열 취급 함수의 다양함을 이용하여 벡터를 손쉽게 치환, 합성, 복사함으로써 일반적인 CAD 프로그램이 모든 도형을 작도 후에는 변형시키지 못하고 그리기 전에 복잡한 계산을 모두 마쳐야 하는 제약을 가진 종래의 방식에 대한 단점을 이미 그려 놓은 도형을 임의의 방향으로 확대, 축소하는 방법으로 보완하는 것이다.Another object of the present invention is to easily replace, synthesize, and copy vectors using a variety of string handling functions so that a general CAD program does not have to transform all shapes after drawing, but has to constrain all complicated calculations before drawing. The drawback of the method is to supplement the figure already drawn by expanding and contracting in an arbitrary direction.

본 발명의 또 다른 목적은 일반적으로 색상 정보를 나열하는 구조를 가진 이미지 파일의 색상 정보 속에는 0을 포함하는 모든 숫자를 다 포함하고 있어서 별도 의 컨트롤 문자 등을 포함시키기 어렵기 때문에 TIF나 PNG처럼 처음부터 뒤따르는 데이터의 길이를 선언해 놓고 맞춰 나가는 방법이 이용되고 있으나, 방법의 번잡성에 비하여 효용이 탁월하지 못하여 크게 보급되지 못하고 있는 실정을 감안하여 사전에 뒤따르는 데이터 길이를 선언해 놓지 않고 이를 극복할 수 있는 구성을 제공하는 것이다.Another object of the present invention is that the color information of an image file having a structure that lists color information generally includes all numbers including 0 in the color information, so it is difficult to include a separate control character, such as TIF or PNG. Declaration of the length of data that follows is used, but the method is used.However, it is not superior to the complicatedness of the method. It is to provide a configuration that can be done.

본 발명의 다른 목적은 브레제남 선/원 그리기 방법 및 베지어 곡선 방법을 응용하여 자유로이 다양한 선, 도형을 그릴 수 있고 더불어 최적의 변형, 치환방법을 제시하는 것이다.Another object of the present invention is to apply the Brezenam line / circle drawing method and the Bezier curve method to freely draw a variety of lines, figures and to propose an optimal deformation, substitution method.

본 발명의 추가 목적은 파일 구조에 3차원 정보를 담아, 작도해 놓은 점들을 옮기고 바꿀 수 있다는 특성과 간단한 데이터 구조로 3차원 좌표를 표현할 수 있는 특성에 따라 간편하게 3차원 이미지를 구현할 수 있는 구성을 제공하는 것이다.It is a further object of the present invention to construct a structure that can easily implement a three-dimensional image according to the characteristic that the three-dimensional information can be moved and changed by putting the three-dimensional information in the file structure and the characteristic that can express three-dimensional coordinates with a simple data structure. To provide.

상기 목적을 달성하기 위하여, 본 발명에 따른 벡터화소를 이용한 이미지 처리 시스템은, X, Y축에 따른 상, 하, 좌, 우, 좌상, 우상, 좌하, 우하 방향에 대한 8가지 벡터 중 어느 하나의 벡터 정보를 1 바이트 중 하위 4비트에 저장한 벡터정보부(11)로 이루어진 벡터화소(10); 상기 벡터화소(10)가 조합되어 부분 이미지를 구성하되 말미에 부분 이미지의 경계를 의미하는 경계표시자(111)를 구비한 데이터단위구조(110); 상기 데이터단위구조(110)가 조합되어 전체 이미지를 구성하되 말미에 전체 이미지의 종결을 의미하는 터미네이터(101)를 구비한 데이터 부(100); 특정 명령에 따라 상기 데이터 부(100)를 구성하고 이 데이터 부(100)를 근거로 컴퓨터 이미지 파일을 생성 및 저장하는 파일 생성부(300); 상기 파일 생성부(300)에 의해 생성된 이미지 파일의 벡터 정보에 따라 방향 표시를 처리함으로 이미지를 구현하는 데이터 처리부(400);로 구성된 것을 특징으로 한다.In order to achieve the above object, the image processing system using a vector pixel according to the present invention, any one of eight vectors for the up, down, left, right, top, right, left, bottom, right direction along the X, Y axis A vector pixel (10) consisting of a vector information unit (11) storing the vector information of the data in the lower four bits of one byte; A data unit structure (110) having a landmark viewer (111), which combines the vector pixels (10) to form a partial image and means a boundary of the partial image; A data unit (100) having a terminator (101) which means that the data unit structure (110) is combined to form an entire image but is terminated at the end; A file generation unit 300 constituting the data unit 100 according to a specific command and generating and storing a computer image file based on the data unit 100; And a data processor 400 for implementing an image by processing a direction indication according to the vector information of the image file generated by the file generator 300.

또한, 상기 벡터화소(10)의 1 바이트에서 상기 벡터정보부(11) 전방의 상위 4비트 중 2비트에는 Z축에 따른 전, 후 방향에 대한 벡터 정보가 저장되어 있는 것을 특징으로 한다.In addition, in one byte of the vector pixel 10, two bits of the upper four bits in front of the vector information unit 11 store vector information about the front and rear directions along the Z axis.

더불어, 상기 벡터화소(10)의 기능을 보조하기 위하여 좌표값 내지 추가 벡터 정보 내지 색상 정보 중 어느 하나의 정보를 컨트롤 명령 형식으로 포함함으로 상기 데이터단위구조(110)에서 상기 벡터화소(10)와 조합 구성되는 적어도 4바이트로 이루어진 것으로, 컨트롤 명령 정보가 수록된 컨트롤 문자(21)와, 상기 컨트롤 문자(21)에 대한 명령 처리에 필요한 컨트롤 파라미터(22)로 구성된 컨트롤 부(20);를 추가로 구비하는 것을 특징으로 한다.      In addition, in order to assist the function of the vector pixel 10, any one of coordinate values, additional vector information, and color information is included in the form of a control command so that the vector pixel 10 and the vector pixel 10 may be separated from the data unit structure 110. A control unit (20) consisting of a control character (21) containing control command information and control parameters (22) required for command processing for the control character (21); It is characterized by including.

추가적으로, 상기 데이터 부(100)의 기능을 보조 내지 명령 처리를 선언하기 위하여 시작점 내지 좌표값 내지 추가 벡터 정보 내지 색상 정보 중 어느 하나의 정보를 명령 형식으로 포함함으로 상기 데이터 부(100)의 전방에 헤더(200);를 추가로 구비하는 것을 특징으로 한다.In addition, in order to declare the function of the data unit 100 to assist or command processing, any one of a starting point, a coordinate value, additional vector information, and color information is included in a command format in front of the data unit 100. Header 200; characterized in that further comprising.

이하 첨부된 도면을 참조하여 본 발명의 바람직한 실시 예를 상세하게 설명하도록 한다. 하기에 기술된 내용은 본 발명의 기본적 사상을 설명하고자 하는 하 나의 예로서, 본 발명의 사상이 반드시 상기 실시예로 한정되는 것은 아니고 유사 범주의 어플리케이션(application)까지 확대될 수 있음은 물론이다. Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings. The following description is an example for explaining the basic idea of the present invention, and the spirit of the present invention is not necessarily limited to the above embodiments, but may be extended to applications in a similar category.

1. 본 발명에 따른 이미지 처리의 개괄적 설명1. General description of image processing according to the present invention

도 1은 본 발명에 따른 벡터화소를 이용한 이미지 처리 시스템의 개략적인 구성을 나타내는 블록도이다.1 is a block diagram showing a schematic configuration of an image processing system using a vector pixel according to the present invention.

도 1을 보아 알 수 있듯이, 본 발명에 따른 시스템은 바람직하게는 컴퓨터에서 실행될 수 있는 것으로, 먼저 시스템을 이루는 기본 데이터 구조 및 관계를 설명하기로 한다.As can be seen from FIG. 1, the system according to the present invention is preferably executable on a computer, and the basic data structures and relationships constituting the system will be described first.

본 발명에서 가장 기본이 되는 데이터 구조는, 상, 하, 좌, 우, 좌상, 우상, 좌하, 우하에 대한 8가지 벡터 중 하나의 벡터 정보를 1 바이트 중 하위 4비트에 저장한 기본형 벡터화소(10a) 혹은 이 기본형 벡터화소(10a)에 3바이트의 색상 정보를 추가적으로 더한 확장형 벡터화소(10b)를 기본 데이터 최소 유닛으로 하는 벡터화소(10)이다. The most basic data structure of the present invention is a basic vector pixel in which vector information of one of eight vectors for up, down, left, right, top left, top right, bottom left and bottom right is stored in the lower four bits of one byte. 10a) or a vector pixel 10 having the basic vector minimum unit as an extended vector pixel 10b obtained by adding 3 bytes of color information to the basic vector pixel 10a.

이와 같은 8가지로 표현될 수 있는 방향 정보를 가진 기본형/확장형 벡터화소(10a,10b)로 이루어진 벡터화소(10)가 연속적으로 나열/조합되어 이미지 표현을 위한 구조인 데이터단위구조(110)를 만들고 이러한 데이터단위구조(110)가 역시 조합되어 전체적인 이미지를 표현하는 데이터 부(100)를 특정 명령에 따라 생성하고 이를 저장하는 파일 생성부(300) 및 파일 생성부(300)의 정보 및 명령을 통해 이미 지를 구현하는 데이터 처리부(400)를 구비하는 것이 본 발명에 따른 시스템의 기조가 되는 것이다.The data unit structure 110, which is a structure for image representation, is formed by sequentially arranging / combining the vector pixels 10 including the basic type / expanded vector pixels 10a and 10b having the direction information that can be expressed as such eight kinds. And the data unit structure 110 is also combined to generate information and commands of the file generator 300 and the file generator 300 for generating and storing the data unit 100 expressing the overall image according to a specific command. Having a data processing unit 400 to implement an image through is the basis of the system according to the present invention.

또한 데이터단위구조(110)에서 벡터화소(10)와 조합되는 것으로, 일정한 컨트롤 정보를 담은 컨트롤 부(20)가 상위 1바이트에 컨트롤 문자(21)와 하위 최소 3바이트에 상기 컨트롤 문자(21)의 명령 수행에 필요한 데이터인 컨트롤 파라미터(22)로 총 최소 4바이트의 구조로 이루어져, 이러한 컨트롤 부(20)가 벡터화소(10)를 보조할 수 있으며 이러한 컨트롤 부(20)를 본 발명에 따른 시스템의 보조 단위로 한다. In addition, the data unit structure 110 is combined with the vector pixel 10, the control unit 20 containing a certain control information, the control character 21 in the upper 1 byte and the control character 21 in the lower minimum 3 bytes. The control parameter 22, which is data necessary for the execution of the command, has a structure of a total of at least 4 bytes, such that the control unit 20 can assist the vector pixel 10 and the control unit 20 according to the present invention As an auxiliary unit of the system.

즉, 상술한 기본 단위인 벡터화소(10)와 보조 단위인 컨트롤 부(20)를 조합하여 일정한 값의 경계표시자(111)로 구분되는 데이터단위구조(110)를 구성하고 파일 생성부(300)의 기능에 의하여 이 데이터단위구조(110)가 하나 이상 모여 데이터 부(100)가 구성되는 것이다. That is, the data unit structure 110 divided by the landmark viewer 111 having a constant value is formed by combining the above-described vector pixel 10, which is the basic unit, and the control unit 20, which is the auxiliary unit, and the file generation unit 300. One or more of the data unit structures 110 are gathered together to form a data unit 100.

본 발명에 따른 시스템은 이 데이터 부(100)의 전방에 필요한 경우 헤더(200)를 선택적으로 추가 포함하여 시작부로서의 선언적 의미 내지 기본 전제가 되는 명령을 실행하는 근거를 마련할 수가 있다.The system according to the present invention can optionally include a header 200 optionally in front of the data portion 100 to provide a basis for executing instructions that are declarative or basic premise as a beginning.

이러한 기본적 구성을 가진 본 발명에 따른 시스템은, 컴퓨터 프로그램에서 도형의 작도와 이미지 처리 시 단위 데이터에 상, 하, 좌, 우, 좌상, 우상, 좌하, 우하의 8가지 벡터를 포함시켜 작도, 확대, 축소, 회전, 변형을 하며, 상기 설명한 바와 같이 구성된 데이터를 컴퓨터에서 쓰고, 읽고, 저장하는 방식을 동시에 제시할 수가 있다. The system according to the present invention having such a basic configuration includes a vector of up, down, left, right, top left, top right, bottom left and bottom right in a computer program, including a figure of a figure and image data in image processing. , Reduction, rotation, and transformation, and simultaneously present a method of writing, reading, and storing data configured as described above on a computer.

상기 언급이 되었으나 다시금 부연 설명을 하면, 여기서 말하는 데이터의 기본 단위는 16진수(이하 "0x1" ~ "0xf"로 표기)로 표기되는 벡터 단독의 문자열 형식 또는 벡터를 저장한 벡터정보부(11)/보조벡터정보부(12)로 이루어진 1바이트 단위의 기본형 벡터화소(10a) 내지 상기 기본형 벡터화소(10a)에 3바이트의 색상정보가 포함되는 색상정보부(13)로 이루어진 총 4바이트 크기의 확장형 벡터화소(10b) 중 어느 하나를 기본 단위로 하는 벡터화소(10)(이하, 'VEXEL'이라고도 표시함)인 것이다.As mentioned above, however, again, the basic unit of data referred to herein is a vector information string 11 or a string format of a vector alone or a vector expressed in hexadecimal (hereinafter referred to as "0x1" to "0xf"). Extended vector pixel having a total size of 4 bytes consisting of a color type information unit 13 including 3 bytes of color information included in the basic vector pixel 10a having the auxiliary vector information unit 12 and the basic vector pixel 10a. It is a vector pixel 10 (hereinafter also referred to as "VEXEL") which has any one of (10b) as a basic unit.

특히, 1바이트 단위로 이루어진 벡터화소(10)는 하위 4비트의 위치에 위치한 벡터정보부(11)에서 8가지 중 하나의 벡터 정보를 저장하고, 상위 4비트에 해당하는 보조벡터정보부(12)에서는 별개의 독립 벡터를 저장시키거나 3차원 중 1차원(구체적으로는 Z축 전, 후 방향 정보에 해당)에 해당하는 추가 벡터를 포함시키며, 선택적으로 벡터화소(10)가 하나 이상 연속된 데이터에서 컨트롤 명령을 포함하는 컨트롤 부(20)를 추가시켜 여러 가지 기능을 수행토록 한다.In particular, the vector pixel 10 having a unit of 1 byte stores one of eight pieces of vector information in the vector information unit 11 positioned at the lower four bits, and in the auxiliary vector information unit 12 corresponding to the upper four bits. Stores separate independent vectors or includes additional vectors corresponding to one of three dimensions (specifically, information about the direction before and after the Z-axis), and optionally, the vector pixel 10 is stored in one or more consecutive data. The control unit 20 including the control command is added to perform various functions.

이렇게 방향 정보를 나타낸 벡터화소 중 기본형 벡터화소(10a)의 집합은 1바이트 데이터의 연속, 즉 String(문자열)과 형태가 같아져서 컴퓨터 CPU의 레지스터(Register)가 직접 수행하는 문자열 처리 함수(C의 strcpy, strcat, strlen 등)를 이용할 수 있게 되며 더불어 상기 벡터화소(10)에 의하여 이미 그려 놓은 도형의 구성점 들을 하나하나 다룰 수 있게 해주며, 확장형 벡터화소(10b) 집합의 경우는 기본형에서 쉽게 변환할 수 있다.The set of basic vector pixels 10a among the vector pixels representing the direction information is a sequence of one-byte data, that is, the same form as a String, so that a string processing function (that is, C) is performed directly by a register of the computer CPU. strcpy, strcat, strlen, etc.), and also makes it possible to handle components of a figure already drawn by the vector pixel 10 one by one. I can convert it.

일반적으로 이미지 파일은 색상 정보를 나열하는 구조인데 색상 정보 속에는 0을 포함하는 모든 숫자를 다 포함하고 있어서 별도의 컨트롤 문자 등을 포함시키기 어렵다. 이를 극복할 수 있는 한 가지 방법은 TIF나 PNG처럼 처음부터 뒤따르는 데이터의 길이를 선언해 놓고 맞춰 나가는 방법인데, 이는 방법의 번잡성에 비하여 효용이 탁월하지 못하여 크게 보급되지 못하고 있는 실정이다. 본 발명에 따른 벡터화소(10)에 따른 이미지 파일에서는 사전에 뒤따르는 데이터 길이를 선언해 놓지 않고 이를 극복하는 특수한 방식을 따른다.Generally, an image file is a structure that lists color information. It is difficult to include a separate control character because all the numbers including 0 are included in the color information. One way to overcome this is to declare the length of the data following from the beginning, such as TIF or PNG, which is not useful because of its complexity. The image file according to the vector pixel 10 according to the present invention follows a special way of overcoming this without declaring a data length that follows.

벡터화소(10)의 기본 골격은 좌표값을 포함하지 않은 상태에서 순수하게 방향 정보만 포함하고 있기 때문에 기존 벡터에 기인한 작도 방식과는 전혀 새로운 개념으로 인식이 된다. 공지되어 있는 다른 이미지 파일에서 기본으로 삼는 색상 정보는 본 발명에서는 필요한 경우 추가하는 구조이므로 그 근본이 다르다. 따라서 이러한 연속적인 벡터화소 구조(10)를 조합(조합 단위는 데이터단위구조 및 데이터 부가 됨)하여 생성한 이미지 파일(이하 "GRIM" 파일이라고도 칭함)은 엄격한 의미에서 이미지 파일이라 할 수 없다. 그렇다고 방향이 아닌 '위치' 정보를 담고 있는 CAD 파일의 범주에도 넣을 수 없다. 왜냐하면 기준점만 가지는 CAD 파일과 달리 본 발명에 따른 시스템에서는 이미지 구현을 위해 각각의 연속된 벡터화소(10)에서 나타낼 모든 점의 방향 정보를 빠짐없이 다 가지기 때문이다. Since the basic skeleton of the vector pixel 10 contains only the direction information in a state without including a coordinate value, it is recognized as a completely new concept from the method of drawing due to the existing vector. Since the color information based on other known image files is added in the present invention if necessary, the basis thereof is different. Therefore, an image file (hereinafter, also referred to as a "GRIM" file) generated by combining the continuous vector pixel structure 10 (combination unit is added with data unit structure and data) is not an image file in a strict sense. However, you can't put it in a category of CAD files that contain 'location' information, not direction. This is because, unlike a CAD file having only a reference point, the system according to the present invention has all the direction information of all points to be represented in each successive vector pixel 10 for image realization.

이러한 이유로 기존의 CAD 파일은 직선을 그리는 함수나 원을 그리는 함수,즉 매개 작도 함수의 도움 없이는 읽을 수 없지만, 본 발명에 따른 GRIM 파일은 매개 작도 함수의 도움이 없어도 된다. 윈도우에서 지원하는 WMF (Windows Metafile Format) 파일의 경우도 윈도우의 내장 작도 함수를 필요로 한다.For this reason, the existing CAD file can not be read without the help of a function for drawing a straight line or a function for drawing a circle, that is, an intermediate drawing function, but the GRIM file according to the present invention does not need the help of an intermediate drawing function. Windows Metafile Format (WMF) files supported by Windows also require Windows' built-in drawing functions.

다시 말하자면, 본 발명에서 도입한 벡터의 개념은 위치 정보를 포함하지 않는 '방향'만 가진 단위 벡터와 이의 연속된 문자열 형식의 데이터이다. 이러한 점에서, 지금까지 공지되어 있는 "벡터 그래픽"이나 "벡터 폰트"의 개념과는 근본적으로 다르다. 이들은 모두 수치화된 '좌표' 데이터를 기본으로 하고 있다. 즉, 방향 표시가 없는 좌표 수치를 순서에 따라 읽고 해석한다는 의미의 벡터이므로 원래의 벡터 의미가 아니었다 할 수 있다. 그러나 본 발명의 벡터는 수학적으로 완벽한 의미의 벡터이다.In other words, the concept of a vector introduced in the present invention is a unit vector having only a 'direction' which does not include position information and data in a continuous string format thereof. In this respect, it is fundamentally different from the concept of "vector graphics" or "vector font" known so far. They are all based on digitized 'coordinate' data. That is, the vector does not mean the original vector because it means that the coordinate value without the direction indication is read and interpreted in order. However, the vector of the present invention is a vector of mathematically perfect meaning.

1.1 단위 벡터의 집합1.1 set of unit vectors

(1) 본 발명에 따른 시스템을 구성하는 기본 데이터는 단위 벡터, 즉 벡터화소(10)의 연속된 집합이다. 단위 벡터의 크기는 기본적으로 1이지만 이는 얼마든지 바꿀 수 있다. 예를 들어 단위 벡터의 크기를 0.1로 정하여 모든 처리를 한 후 그 10배, 즉 1의 단위로 축출해 내면 정교하고 품질 높은 이미지를 얻을 수 있다. 이렇게 벡터의 크기를 바꾸는 것은 본 발명에 따른 시스템을 활용한 어플리케이션, 구체적으로 각 벡터화소(단위벡터) 정보에 대한 크기에 대한 수치값을 변경하는 '크기 변경 모듈'을 데이터 처리부(400)에서 추가로 포함함으로 인해 실현시킬 수가 있다.(1) The basic data constituting the system according to the present invention is a contiguous set of unit vectors, that is, vector pixels 10. The size of the unit vector is 1 by default, but you can change it anyway. For example, if the size of the unit vector is set to 0.1 and all the processing is performed, then extracted 10 times, that is, the unit of 1, a fine and high quality image can be obtained. Changing the size of the vector is an application utilizing the system according to the present invention, specifically, a 'size change module' for changing the numerical value of the size of each vector pixel (unit vector) information is added in the data processor 400. It can be realized by including

(2) 공작 기계 분야에 적용할 경우 요구 정밀도에 따라 단위를 미크론 혹은 0.1mm로 정해 주면 별다른 변경 없이 동일한 결과를 기대할 수 있다.(2) When applied to the field of machine tool, if the unit is set to micron or 0.1mm according to the required precision, the same result can be expected without any change.

1.2 방향을 가진 화소Pixel with 1.2 direction

(1) 기존의 도면(Drawing)이나 이미지 데이터는 수치로 된 좌표일 뿐, 움직여 나가는 방향이 없다. 본 발명에 따른 방향만을 가진 벡터화소(10)는 여러 가지 특수성을 발휘한다. 움직여 나가는 방향의 오른쪽 혹은 왼쪽에 있는 점을 계속 취하면 임의의 곡선에 대하여 일정한 두께(후술하겠지만 '겹 그림' 구조에 의한 방법)를 줄 수 있고, 임의의 폐곡선에 대하여 내부 점, 외부 점을 쉽게 판정할 수 있다.(1) Existing drawing or image data are numerical coordinates only, and there is no moving direction. The vector pixel 10 having only a direction according to the present invention exhibits various specificities. Continue to take the point to the right or left of the moving direction to give a certain thickness for any curve (as described later by the 'ply-figure' structure), and to easily plot internal and external points for any closed curve. It can be determined.

(2) 방향을 가지기 때문에 당연히 '순서'를 가진다. 공지의 좌표값을 가지는 그래픽 처리 데이터는 여러 개의 점을 순서에 관계없이 표시해도 결과는 같지만 본 발명에 따른 벡터화소(10)에서는 다른 결과를 나타낸다. 또한 순서에 따라 단위 변위(기본량: 1)가 합산되어 나가기 때문에 1점의 방향을 바꾸면 뒤따르는 모든 점의 위치가 바뀐다. 이 특성은 형상의 편집, 2개의 데이터단위구조(110)의 합성, 대칭 형상 등 연관된 그림의 작성 등을 가능하게 해 준다.(2) Because it has a direction, of course it has a 'order'. Graphic processing data having a known coordinate value has the same result even if several points are displayed regardless of the order, but the vector pixel 10 according to the present invention shows different results. In addition, since the unit displacement (base amount: 1) is added in sequence, changing the direction of one point changes the positions of all following points. This feature enables editing of shapes, compositing two data unit structures 110, and creating associated pictures such as symmetric shapes.

1.3 생략의 원칙1.3 principle of omission

본 발명에 따른 벡터화소를 이용한 이미지 처리 시스템에서는 꼭 필요하지 않은 데이터는 생략하는 것을 원칙으로 한다. 기존 처리 방식의 이미지 데이터는 정해진 틀 속에서는 필요 없을 경우 0으로 채우는 한이 있더라도 생략할 수 없는 것과 대조된다. In principle, in the image processing system using the vector pixel according to the present invention, data that is not necessary is omitted. The image data of the conventional processing method is contrasted with that which cannot be omitted even if it is filled with 0 when it is not necessary in a predetermined frame.

구체적으로 선택적으로 포함이 되는 헤더(200)가 그러하고, 또한 컨트롤 부(20)의 명령 등을 통하여 예를 들어 4각형 이미지의 의미 없는 배경을 같은 색으로 채우느냐 아니냐가 그러하다. 상기 언급한 예들은 위에 이미 언급된 바와 같이 데이터단위구조(110)에 컨트롤 부(20)를 포함할 수 있고 방향을 가진 화소가 위치를 담을 수 있기 때문에 가능한 특성이다.Specifically, this is the case with the header 200 optionally included, and whether or not, for example, fills the meaningless background of the quadrilateral image with the same color through a command of the control unit 20 or the like. The above-mentioned examples are possible characteristics because the control unit 20 may be included in the data unit structure 110 as mentioned above and a pixel having a direction may contain a position.

2. 본 발명에 따른 데이터 및 파일의 기본적인 구조2. Basic structure of data and file according to the present invention

2.1 데이터 구조2.1 data structure

본 발명에서 도입하는 화소(화면의 1점) 즉, 벡터화소(10)(이하 "Vexel"이라 부름) 및 부속적인 컨트롤 부(20)와 같은 데이터, 이들이 조합하여 이루어진 데이터단위구조(110), 더 나아가 데이터 부(100)의 구조 내지 구성은 도 1에서 보여 주고 있으며 이러한 구성은 바이트의 구조 별로 다음과 같이 구분할 수 있다.Pixels (one point of the screen) introduced in the present invention, that is, data such as a vector pixel 10 (hereinafter referred to as "Vexel") and an accompanying control unit 20, a data unit structure 110 formed by combining them, Furthermore, the structure or configuration of the data unit 100 is shown in FIG. 1, and such a configuration may be classified according to the structure of the byte as follows.

(1) 1 바이트 이내 범위에서 이루어질 수 있는 구조 (1) A structure that can be made within the range of 1 byte

a. 기본형 벡터화소(10a) : 1바이트의 하위 4비트, 즉 벡터정보부(11)에 상, 하, 좌, 우, 좌상, 우상, 좌하, 우하에 대한 8가지 벡터 중 하나를 저장하고 있 다.(상위 4비트, 즉 보조벡터정보부에 수록된 값의 의미에 대해서는 하기에서 설명)(도 1(a) 참조)a. Basic vector pixel 10a stores one of eight vectors of up, down, left, right, top left, top right, bottom left and bottom right in the lower four bits of one byte, that is, vector information unit 11. The meaning of the upper 4 bits, i.e., the value contained in the auxiliary vector information section, is described below) (see FIG. 1 (a)).

b. 경계표시자(111) : 일정한 값(바람직스럽게는 16진수 ff)을 가진 상태에서 부분 이미지를 표현하는 각 데이터단위구조(10) 간의 경계를 표시하거나 후술할 무한 길이 데이터를 구분한다.(도 1(e) 내지 (f) 참조)b. Landmark indicator 111: Indicate a boundary between each data unit structure (10) representing a partial image in a state having a constant value (preferably hexadecimal ff) or distinguishes infinite length data to be described later. (e) to (f))

c. 터미네이터(101) : 전체 이미지를 표현하는 데이터 부(100)의 끝을 나타내는 일정 값을 가져, 전체 이미지의 종결을 나타낸다.(도 1(f) 참조)c. Terminator 101: Has a certain value indicating the end of the data portion 100 representing the entire image, indicating the end of the entire image (see Fig. 1 (f)).

d. 3차원 벡터 정보 : 벡터정보부(11)에 수록된 상기 8가지 기본형 벡터 이외에 2비트로 이루어질 수 있는 전, 후 벡터(예를 들어 Z 축 관련 방향)가 보조 벡터정보부(12)에 수록되어 있는 것을 의미한다.(도 1(b) 참조)d. Three-dimensional vector information: means that the front and back vectors (for example, Z-axis-related directions) that can be composed of two bits in addition to the eight basic vectors included in the vector information unit 11 are stored in the auxiliary vector information unit 12. (See FIG. 1 (b))

e. 겹 그림 벡터 정보 : 상기 벡터정보부(11)에 수록된 벡터 정보를 기본형 벡터화소(10a)의 상위 4비트, 즉 보조벡터정보부(12)에 동일한 정보로서 가진 것을 의미한다.(도 1(b) 참조)e. Layered picture vector information: This means that the vector information contained in the vector information section 11 has the same four bits as the same information in the upper four bits of the basic vector pixel 10a, that is, the auxiliary vector information section 12 (see Fig. 1 (b)). )

(2) 4바이트 구조 (2) 4-byte structure

a. 확장형 벡터화소(10b) : 1바이트 단위의 기본형 벡터화소(10a) 뒤에 연결된 3바이트의 색상정보부(13)를 포함한 구조로서, 이 3바이트의 색상정보부(13)에 R(Red), G(Green), B(Blue)의 3원색 색상 정보를 가진다.a. Extended vector pixel 10b: A structure including a three-byte color information unit 13 connected behind a basic vector pixel 10a in units of one byte, and R (Red) and G (Green) in this three-byte color information unit 13 ), B (Blue) has three primary color information.

b. 컨트롤 부(20) : 적어도 4바이트의 공간 이내에서 1 내지 2번째, 바람직하게는 첫 번째 1 바이트에 컨트롤 문자(21), 뒤따르는 적어도 3 바이트(만일 상기 컨트롤 문자가 2바이트에 해당할 경우에는 적어도 2바이트의 크기를 가짐)에 상기 컨트롤 문자(21)의 명령 수행에 필요한 컨트롤 파라미터(22)로 구성된 최소 4바이트로 이루어진 구조로서, 1점을 표시하는 화소는 아니며 상기 벡터화소(10)와 병행/조합되어 데이터단위구조(110)를 이룬다. 즉, 4바이트로 이루어진 컨트롤 부(20)에서 추가적인 벡터 정보, 색상 정보를 표시할 수도 있고 기타 필요한 명령을 발생 및 수행하도록 하여 방향 정보만으로 이루어진 벡터화소(10)의 기능을 보조하는 역할을 수행한다. 이는 도 3에서 보다 구체적으로 설명하기로 한다.b. Control unit 20: control character 21 in the first to second, preferably the first one byte within at least 4 bytes of space, followed by at least 3 bytes (if the control character corresponds to 2 bytes Has a size of at least 2 bytes) and consists of at least 4 bytes of control parameters 22 necessary for executing the command of the control character 21, and is not a pixel for displaying one point, but the vector pixel 10 and the vector pixel. Parallel / combination forms the data unit structure 110. That is, the control unit 20 composed of 4 bytes may display additional vector information and color information, and generate and execute other necessary commands to assist the function of the vector pixel 10 composed only of direction information. . This will be described in more detail with reference to FIG. 3.

(3) 무한 길이를 가지는 데이터 구조 (3) infinitely long data structures

a. 비정형 데이터 : 일정한 값의 구분자로 시작하고 구분자로 끝나는 화소 이외의 데이터(보통은 텍스트 정보)를 말한다.a. Unstructured data: Non-pixel data (usually textual information) that begins with a delimiter and ends with a delimiter.

b. 데이터단위구조(110) : 부분 이미지를 구현하는 기능을 수행하는 것으로, 경계표시자(111)로 끝나며 벡터화소(10) 내지 컨트롤 부(20) 혹은 상기 비정형 데이터를 포함할 수 있다.(도 1(e) 참조)b. Data unit structure 110: performs a function of implementing a partial image, ending with the landmark viewer 111 may include the vector pixel 10 to the control unit 20 or the atypical data (FIG. 1). (e) see)

c. 데이터 부(100) : 전체 이미지를 구현하는 기능을 수행하는 것으로, 터미네이터(101)로 끝나며 데이터단위구조(110)의 조합 및 후술할 헤더(200)를 전방에 위치시킬 수 있다.(도 1(f) 참조)c. Data unit 100: to perform the function of implementing the entire image, the terminator 101 ends in the combination of the data unit structure 110 and the header 200 to be described later can be located in front. f))

2.2 헤더의 구조2.2 Header Structure

(1) 기본형(1) basic

1바이트의 control, 1바이트의 type, 2바이트의 ID, 4바이트의 mode, 4바이트의 Pini(시작점의 좌표), 4바이트의 color; 합계 16바이트로 구성되며 상세 사항은 도 2의 (A)에 나타나 있다.1 byte of control, 1 byte of type, 2 bytes of ID, 4 bytes of mode, 4 bytes of Pini (coordinate of starting point), 4 bytes of color; It consists of 16 bytes in total and details are shown in FIG.

(2) 확장형 (2) extended

상기 기본형에 더하여 8바이트의 post, 12바이트의 name을 동시에 가지며 상세 사항은 도 2의 (B)에 나타나 있다.In addition to the basic type, it has a 8-byte post and 12-byte name at the same time, and details are shown in FIG.

2.3 이미지 파일의 구조2.3 Image File Structure

도 1(g)에 나타나 있으며 헤더(200), 데이터 부(100)로 이루어져 있다. 헤더(200)는 조건에 따라 생략할 수 있다.It is shown in FIG. 1 (g) and consists of a header 200 and a data part 100. The header 200 may be omitted according to a condition.

2.4 본 발명에 대한 전체 시스템의 구조2.4 Structure of the Entire System for the Invention

도 1(g)에 도시되어 있듯이, 헤더(200), 데이터 부(100)로 이루어진 이미지 파일을 특정 명령 내지 필요 조합 의미에 따라 생성하기 위한 파일 생성부(300) 및 헤더(200) 내지 데이터 부(100) 내의 컨트롤 부(20)에 대한 명령을 처리 및 컨트롤하여 궁극적으로 이미지를 모니터 등에서 출력 및 구현하기 위한 데이터 처리 부(400)로 이루어져 있다.As shown in FIG. 1G, the file generator 300 and the header 200 to the data unit for generating an image file including the header 200 and the data unit 100 according to a specific command or necessary combination meaning. It is composed of a data processing unit 400 for processing and controlling commands to the control unit 20 in the 100 to ultimately output and implement an image on a monitor.

3. 본 발명에 따른 시스템을 이루는 데이터의 구조적 특성3. Structural characteristics of the data constituting the system according to the present invention

3.1 기본형 벡터화소(10a) 및 이를 집합시킨 데이터 구조의 특성3.1 Characteristic of Basic Vector Pixel 10a and Data Structure

(1) 방향 정보 이외에 수치화된 좌표 정보를 가지지 않는다. (1) It does not have numerical coordinate information other than direction information.

이는 기본형 벡터화소(10a)에 대응하는 기존의 CAD 파일, 폰트 파일 등등이 모두 수치화된 좌표 정보를 기본 데이터로 가지기 때문에 본 발명에 따른 벡터화소(10)는 이에 비교될 수 있는 두드러진 특성으로 꼽을 수 있다. 일반 그래픽이나 벡터 그래픽을 막론하고 수치로 된 좌표를 데이터로 보관하지 않는 그래픽 처리 방식은 알려진 바 없다.Since the existing CAD files, font files, and the like corresponding to the basic vector pixels 10a all have digitized coordinate information as basic data, the vector pixels 10 according to the present invention can be regarded as outstanding characteristics that can be compared thereto. have. There is no known graphic processing method that does not store numerical coordinates as data regardless of general or vector graphics.

(2) 표시해야 할 모든 구성 점들의 위치 정보(벡터 형식)를 빠짐없이 보관한다.(2) Keep all positional information (vector format) of all construction points to be displayed.

일반적으로 컴퓨터 용 도면(Drawing)의 구성 데이터는 그 정보의 단순성과 과다한 메모리 부담 때문에 시작점과 끝점, 중심점 등과 같은 대표 위치에 대해서만 보관하고 중간점에 대한 정보는 필요시 계산으로 구하여 사용하는데 반하여 본 발명에 따른 벡터 화소에서는 이들을 한꺼번에 빠짐없이 모두 표시할 수가 있다. In general, the configuration data of a drawing for a computer is stored only for representative positions such as a start point, an end point, and a center point because of the simplicity of the information and the excessive memory burden. In the vector pixel according to, all of them can be displayed at once.

즉, 1점의 위치를 1/2 ~ 1 바이트의 벡터로 표시할 수 있어서 메모리 부담이 적고 모든 해당 점의 정보를 가짐으로 해서 이들을 편집할 수 있는 등의 중요한 장점이 생기기 때문이다.That is, since the positions of one point can be represented by a vector of 1/2 to 1 byte, there is an important advantage such that the memory burden is small, and the information of all the corresponding points can be edited to edit them.

(3) 데이터단위구조(110)의 끝을 표시하는 경계표시자(111)를 규정한다.(3) A landmark indicator 111 for specifying the end of the data unit structure 110 is defined.

기존의 도면이나 이미지 데이터는 0을 포함한 모든 수치를 포함하기 때문에 어떤 특수한 용도의 문자나 정보를 별도로 가질 수 없다. 그러나 본 발명에 따른 벡터화소(10)는 기본 1바이트의 단위로 구비되어 4비트에서 16종류로 표현될 수 있는 수치 중에서 8종류의 방향 표시만 사용하고, 나머지 4비트로 여러 가지 특수 역할을 배분 관리할 수 있는데, 물론 경계표시자(111)는 별도의 바이트 공간에서 데이터단위구조(110)의 말미에 위치할 수가 있으나, 선택적으로는 4비트의 공간으로도 충분히 그 목적을 달성할 수 있는바 예를 들어 벡터화소(10)에서 보조백터정보부(12)에 해당하는 상위 4비트의 공간에서 보조벡터정보부(12)를 대신하여 위치할 수도 있다. Existing drawings or image data contain all numeric values, including zero, so that no special purpose text or information can be included separately. However, the vector pixel 10 according to the present invention is provided in units of 1 basic byte, and uses only 8 types of direction indications among the values that can be expressed from 4 bits to 16 types, and manages various special roles with the remaining 4 bits. Of course, the landmark indicator 111 may be located at the end of the data unit structure 110 in a separate byte space, but optionally 4 bits of space can sufficiently achieve the purpose. For example, the vector pixel 10 may be positioned in place of the auxiliary vector information unit 12 in a space of the upper four bits corresponding to the auxiliary vector information unit 12.

(4) 데이터 부(100)의 끝을 표시하는 터미네이터(101)를 가진다.(4) It has a terminator 101 for marking the end of the data portion 100.

데이터 부(100)의 끝을 표시하는 터미네이터(101)로서 0을 의무적으로 가진다. C 프로그램 언어의 문자열 데이터와 호환할 수 있고 많은 장점을 제공하기 때문이다.As the terminator 101 which marks the end of the data part 100, it has a compulsory zero. This is because it is compatible with the string data of the C programming language and provides many advantages.

(5) 컨트롤 부(20)를 추가로 포함한다.(5) It further includes a control unit 20.

컨트롤 부(20)는 방향 정보만을 가진 벡터화소(10)의 기능을 보충/부연하기 위한 것으로, 여러 명령을 실행할 수 있도록 하는 근거가 되며, 이는 별도로 설명하기로 한다.The control unit 20 is for supplementing / defining the function of the vector pixel 10 having only the direction information, which is the basis for executing various commands, which will be described separately.

3.2 확장형 벡터화소(10b)의 특성3.2 Characteristics of the Expandable Vector Pixel 10b

(1) 기본형 벡터화소(10a)에 색상 정보를 결합시킨 형태를 말한다. (1) The color vector is combined with the basic vector pixel 10a.

기본형 벡터화소(10a)의 모든 특성을 그대로 계승하며 색상 정보는 직전 화소와 같을 때 헤더(200) 혹은 컨트롤 부(20)의 설정에 따라 생략할 수 있다.All characteristics of the basic vector pixel 10a are inherited as it is, and color information may be omitted according to the setting of the header 200 or the control unit 20 when the same as the previous pixel.

(2) 정해진 4각형이나 고정 형상이 아니다.(2) It is not a fixed square or fixed shape.

기존의 이미지 파일은 모두 정해진 가로, 세로 크기의 4각형에 대하여 색상 정보를 차례대로 나열하는 형식을 취하고 있다. 그러나 본 발명에 따른 벡터화소(10)에서는 벡터정보부(11)에 의하여 위치가 규정되기 때문에 임의의 형상을 가질 수 있다. 즉, 투명한 부분이나 동일한 색상을 가진 배경 부분을 생략할 수 있다.All existing image files have a format of sequentially arranging color information for a fixed horizontal and vertical sized square. However, in the vector pixel 10 according to the present invention, since the position is defined by the vector information unit 11, it may have any shape. That is, the transparent portion or the background portion having the same color may be omitted.

(3) 크기를 지정하기 위한 공지의 헤더가 불필요하다.(3) A well-known header for specifying the size is unnecessary.

상기 (2)에 따라 당연한 귀결이지만 거의 모든 기존의 이미지 파일이 이미지의 크기만을 지정하기 위해서라도 헤더를 필연적으로 가질 수밖에 없는 것에 반하 여 본 발명에 따른 확장형 벡터화소(10b)에서는 그럴 필요가 없다. 즉, 본 발명에서도 헤더(200)가 포함될 수는 있으나 이 때 본 발명의 헤더(200)는 필수적인 구성이 아닌 선택적 구성으로서의 의미를 가질 수 있다는 것이다.As a matter of course according to the above (2), almost all existing image files inevitably have a header even in order to specify only the size of the image, but it is not necessary in the extended vector pixel 10b according to the present invention. That is, the header 200 may also be included in the present invention, but at this time, the header 200 of the present invention may have a meaning as an optional configuration rather than an essential configuration.

3.3 컨트롤 부(20)의 특성3.3 Characteristics of the control unit 20

벡터 화소(10)는 연속되는 화소의 상호 인접점 사이의 상대 위치밖에 표현할 수 없기 때문에 불연속점을 표시하거나 추가 벡터 정보, 색상 정보 기타 기능을 추가시키기 위하여 특수한 구성을 마련할 필요가 생긴다. 이 목적에 부응하여 주로 현재 표시할 화소의 위치를 지정하는 정보 및 기타 기능을 명령 형식으로 표현하는 것이 컨트롤 부(20)의 역할이다. 물론 위치 지정 이외에도 도 3에 예시한 바와 같이 여러 가지 역할을 수행한다.Since the vector pixel 10 can only represent relative positions between adjacent points of successive pixels, it is necessary to provide a special configuration to display discontinuities or to add additional vector information, color information, and other functions. In response to this purpose, it is the role of the control unit 20 to express, in command form, information and other functions that mainly specify the position of the pixel to be currently displayed. Of course, in addition to positioning, as shown in FIG.

컨트롤 부(20)는 대부분의 경우 최소 4바이트의 일정한 길이를 가지지만 무한 길이를 가지는 특수한 경우도 있다.The control unit 20 has a constant length of at least 4 bytes in most cases, but there is a special case having an infinite length.

(1) 컨트롤 부(20)의 구성 (1) Configuration of Control Unit 20

도 1(d)에 보인 바와 같이 컨트롤 부(20)는 최소 4바이트로 이루어지게 되는데, 1 내지 2바이트의 컨트롤 문자(21)와 적어도 2바이트(이 때 2바이트는 상기 컨트롤 문자가 2바이트로 이루어져 있을 때에 해당이 되고, 기본적으로는 3바이트)의 부속 데이터인 컨트롤 파라미터(22)로 구성된다. As shown in (d) of FIG. 1, the control unit 20 is composed of at least 4 bytes, wherein the control character 21 of 1 to 2 bytes and at least 2 bytes (in which 2 bytes, the control character is 2 bytes). The control parameter 22 which is applicable when it is made and is basically attached data of 3 bytes) is comprised.

(2) 컨트롤 문자(21) (2) control character (21)

상위 4비트는 컨트롤 부(20)의 시작점, 즉 컨트롤 문자임을 선언 내지 표시하는 일정 값(기본 값:'15',16진수로는 'f'값)의 컨트롤 표시자(21a)로 채워지고 하위 4비트는 컨트롤의 종류를 식별하기 위한 컨트롤 식별자(16진수의 0 ~ f)(21b)로 구성된다.(도 3a 참조) The upper 4 bits are filled with the control indicator 21a of a certain value (default value: '15', hexadecimal 'f' value) that declares or indicates the control character 20, that is, the control character. The 4 bits consist of a control identifier (0 to f in hexadecimal) 21b for identifying the type of control (see Fig. 3A).

그러면 16진수(이하 접두사 "0x"와 함께 표시) f0 ~ ff 사이의 16개의 컨트롤 문자(21)가 확보된다. 이 16가지의 컨트롤 문자(21)가 할 수 있는 역할은 도 3에 예시해 두었다. 이들은 본 발명에 따른 시스템의 구현 시에 얼마든지 내용을 변경할 수 있다.This ensures 16 control characters 21 between hexadecimal (denoted with the prefix "0x") f0-ff. The role that these 16 control characters 21 can play is illustrated in FIG. They can be changed at any time in the implementation of the system according to the invention.

(3) 컨트롤 파라미터(22) (3) control parameters (22)

컨트롤 부(20)의 컨트롤 문자(21)를 제외한 컨트롤 파라미터(22)는 컨트롤 문자(21)의 명령 처리에 필요한 파라미터로서 바이트 구비 정도에 따라서 2가지 경우로 나눌 수 있다. 물론, 이 때에는 컨트롤 문자(21) 역시 각각에 따라 2가지로 나누어지며 이는 도 3a, b에 잘 나타나 있다.The control parameter 22 except for the control character 21 of the control unit 20 is a parameter required for command processing of the control character 21 and can be divided into two cases according to the degree of byte provision. Of course, at this time, the control character 21 is also divided into two according to each, which is well shown in Figures 3a, b.

그 첫째 경우는 주로 색상 정보, X, Y 좌표 등과 같이 3바이트 이상의 스페이스를 요하는 명령을 위한 것이며(도 3 예시의 경우 0xf1 ~ 0xfe 해당), 둘째 경우는 2바이트 정도의 공간으로 수행할 수 있는 명령으로 컨트롤 파라미터(22)의 첫째 바이트(컨트롤 부의 2번째 바이트)에 추가 컨트롤 문자(21)를 가진다(도 3b 예 시의 경우 0x10 ~ 0x40 해당).The first case is mainly for instructions that require more than 3 bytes of space such as color information, X, Y coordinates, etc. (in the example of FIG. 3, 0xf1 to 0xfe), and the second case can be executed with about 2 bytes of space. The command has an additional control character 21 in the first byte of the control parameter 22 (second byte of the control part) (corresponding to 0x10 to 0x40 in the example of FIG. 3B).

특히, 둘째 경우에 의하면 첫째 바이트로 16가지의 컨트롤밖에 처리할 수 없다는 한정성에서 탈피하여 추가 컨트롤 문자(21)에 의해 전체적으로 2 바이트의 컨트롤 문자가 확보되기 때문에 첫 번째 바이트에서 4비트의 컨트롤 문자 표시자(21a)를 제외한 나머지 4비트에서 나타날 수 있는 16 종류와 2번째 바이트에서 나타날 수 있는 16종류(이론적으로는 2번째 바이트에서 256가지의 종류가 표현 가능하나 최소 16가지의 정보를 표현하는 정도로 바이트 공간이 활용된다고 가정)를 통해 '16*16-1'의 255가지의 명령을 더 처리할 수 있게 된다.In particular, according to the second case, the control byte of 4 bits in the first byte is obtained because the control byte of 2 bytes is secured by the additional control character 21 from the limitation that only the 16 controls can be handled by the first byte. 16 kinds that can appear in 4 bits except indicator 21a and 16 kinds that can appear in 2nd byte (in theory, 256 kinds can be represented in 2nd byte, but at least 16 kinds of information can be represented) (Assuming that byte space is utilized), it is possible to process more than 255 instructions of '16 * 16-1 '.

(4) 무한 길이 컨트롤 (4) infinite length control

지도상의 지명과 같이 일정한 길이로는 처리하기 어려운 데이터의 삽입을 위하여 마련된 컨트롤로 일정한 컨트롤 문자(21)(기본 값 0xff)의 선행 시작과 끝막음으로 구분된다.As a place name on the map, a control provided for insertion of data that is difficult to process at a constant length, and is divided into a leading start and end of a constant control character 21 (default value 0xff).

시작하는 0xff 다음 첫 문자가 컨트롤의 종류를 규정하는 추가 컨트롤 문자(21)일 수도 있고 생략할 수도 있다. 생략하면 기본적으로 데이터단위구조(110)를 뜻하나 이 기본마저 헤더의 mode에서 바꿔 줄 수 있다. 추가 컨트롤은 문자열의 폰트 종류, 크기, 색상 등이 가능하지만 특별히 예시하지는 않았다.The first character after the beginning 0xff may be an additional control character (21) that specifies the type of control or may be omitted. If omitted, it basically means the data unit structure 110, but this basic can also be changed in the mode of the header. Additional controls allow the font type, size, and color of the string, but are not specifically illustrated.

경계표시자(111) 직후에 터미네이터(101)가 뒤따를 때는 경계표시자(111)를 생략할 수 있다.When the terminator 101 follows immediately after the landmark indicator 111, the landmark indicator 111 may be omitted.

3.4 헤더의 특성3.4 Header Characteristics

(1) 시작점의 위치, 벡터화소(10)의 보조벡터정보부(12)의 의미 등등 도 1(a)에 규정된 정보를 위해서는 기본형 헤더를 가지고, 데이터단위구조(110)의 ID에 해당하는 상세한 정보가 필요한 경우에는 확장형 헤더를 가질 수 있다.(1) the position of the starting point, the meaning of the auxiliary vector information unit 12 of the vector pixel 10, etc., for the information specified in FIG. 1 (a), having a basic header, and corresponding to the ID of the data unit structure 110; If information is needed, it may have an extended header.

(2) 그러나 간단한 1, 2개의 정보를 위해서는 헤더를 생략하고 데이터 부(100)는 바로 컨트롤 부(20)로 시작할 수도 있다. 도 3의 설명 중의 많은 종류(RETURN 명령과 같이 첫머리에서 오면 의미가 없어지는 것을 제외함)는 이미지 파일의 첫머리에 올 수 있다. 헤더(200)의 유무에 상관없이, 이미지 표시 진행 포인터가 첫째 점을 벗어나기 전의 위치에 있는 동안을 '시작 부'에 있는 것으로 정의한다.However, for simple one or two pieces of information, the header may be omitted, and the data unit 100 may immediately start with the control unit 20. Many of the descriptions in FIG. 3 (except for meaning that does not make sense at the beginning, such as the RETURN command) may be at the beginning of the image file. Regardless of the presence or absence of the header 200, while the image display progress pointer is in the position before deviating from the first point, it is defined as being at the beginning.

(3) 따라서 상기 (2)의 시작 부 규정을 잘 이용하면 2가지 종류의 헤더가 아니라 더 많은 종류의 헤더를 선택해 쓸 수 있는 효과를 얻을 수 있다.(3) Therefore, if the beginning provision of (2) above is used well, it is possible to obtain an effect of selecting and using more types of headers rather than two types of headers.

(4) 구성 인자별 특성 (4) Characteristics by Configuration Factors

Pini 는 출발점의 좌표를 표시하는데, 생략할 수도 있을 것 같지만 뒤에 설명할 데이터단위구조(110)와 관련하여 타 데이터단위구조(110)의 호출을 받을 경우, 혹은 여러 데이터단위구조(110)가 연결되어 큰 이미지를 형성할 경우 상대 위치를 나타내는 데 필요하다. Pini displays the coordinates of the starting point, which may be omitted, but is received when another data unit structure 110 is called with respect to the data unit structure 110 described later, or several data unit structures 110 are connected. This is necessary to indicate the relative position when forming a large image.

color 는 현 위치에서의 색상을 나타낸다. 이미지 파일을 압축하는 기법 중 가장 보편적인 기법인 중복 색상 생략 기법을 구현하는데 다음 화소의 색상이 color와 같은 경우는 생략하고 벡터만 표기하기 위해서 필요하다. 여기에 일일이 나열하지는 않았지만 Hcolor 항목을 하나 더 추가하면 후술할 겹 그림 작성 방법에서 설명하는 겹 그림의 색상을 지정할 수 있고 색상 정보를 생략하고 벡터만으로 다음 점을 표시할 수 있는 확률을 높일 수 있다. 개략적인 통계를 해 본 결과 color 하나만으로 파일 크기를 1/3 전후 정도 줄일 수 있었고, 2가지 기준 색으로는 거의 1/2까지 줄일 수 있었다. 그 대신 기준색이 동일색인지 비교하는 시간이 소요되므로 대형 그림의 경우나 속도보다는 파일의 크기가 중요할 경우에 채택할 수 있다. color represents the color at the current position. It implements the overlapping color omission technique, the most common technique of compressing image files. It is necessary to mark only the vector without omitting the case where the color of the next pixel is the same as color . Although not listed here, adding one more Hcolor item allows you to specify the color of the overlay picture described in How to Create a Layer Picture, below, and increases the probability of omitting the color information and displaying the next point with only the vector. As a result of the rough statistics, the color alone can reduce the file size by about 1/3, and the two standard colors can be reduced by almost 1/2. Instead, it takes time to compare whether the target color is the same color, so it can be adopted for large pictures or when the size of the file is more important than speed.

post 는 자신을 호출한 그림(Caller)의 주소를 보관하고 있다가 RETURN 시 돌아갈 위치를 나타낸다. post holds the address of the calling caller and indicates where to return on return.

name 은 특정 데이터단위구조(110)가 다른 이미지 파일에 있을 경우 이미지 파일 명을 표기해 줄 수 있게 하며 사용자가 기억하기 쉬운 이름을 정해 줄 필요가 있을 경우 문자열로 식별자를 나타낼 수 있게 해 준다. name allows an image file name to be displayed when a specific data unit structure 110 exists in another image file, and an identifier as a string if the user needs to specify a name that is easy to remember.

control 은 파일의 종류를 나타낸다. 헤더(200)의 유무 및 그 종류를 나타내고 색상 데이터의 추가 방법을 나타낸다. 색상 데이터 추가의 기본은 도 3에 표시되어 있는 바와 같이 0xf3, 0xf4, 0xf5 중 하나를 벡터 대신 쓰고 색상 정보를 이어 쓰는 것이다. 색상 정보가 있을 경우는 연속된 이미지의 경우이므로 좌표가 다양하게 움직이지 않기 때문에 3가지 방향만 있어도 임의의 형상을 채울 수 있다. 그러나 다양한 벡터 방향을 필요로 하는 경우에 대비하여 색상 추가 방법을 별도로 마련한다. 예를 들어 파일 첫머리의 control을 0xf2로 설정하면 모든 데이터를 바 이트 단위가 아닌 4바이트 단위로 읽는 것이다. 따라서 3가지가 아닌 8가지 벡터를 모두 읽을 수 있지만 그 대신에 색상 정보를 생략할 수 없다. 인접한 동일 색상도 모두 반복 표기해 주어야 한다. control indicates the type of file. The presence or absence of the header 200 and the type thereof are shown, and a method of adding color data is shown. The basic of adding color data is to write one of 0xf3, 0xf4, and 0xf5 instead of a vector and write color information as shown in FIG. If there is color information, it is a case of a continuous image, so the coordinates do not move in various ways, so it is possible to fill an arbitrary shape with only three directions. However, in case of requiring various vector directions, a method of adding color is separately prepared. For example, setting control at the beginning of the file to 0xf2 reads all data in 4-byte units rather than bytes. So you can read all 8 vectors instead of 3, but you can't skip color information instead. All adjacent same colors should be repeated.

type 은 좀 더 세부적인 그림의 종류를 표현한다. 컨트롤 문자(21)가 있는지, 벡터화소(10)의 상위 4비트가 별도의 벡터 구실을 하는지, 만일 그렇다면 벡터정보부(11)의 하위 벡터와 별개인지 합산하는지(기본적으로는 없으며, 있을 경우에는 독립적임), 상위 벡터용 색상이 있는지, 문자열 데이터가 있는지, 3차원 위치를 표시하는지, 등등을 표시한다. type represents a more detailed kind of picture. Whether the control character 21 is present, the upper 4 bits of the vector pixel 10 serve as a separate vector, and if so, whether they are separate from the lower vector of the vector information section 11 or not (summed by default, if independent Whether there is a color for the parent vector, if there is string data, if it displays a three-dimensional position, and so on.

mode 는 주로 현재의 설정 상태를 표시해 주는 용도이다. 이 중 특기할 만한 것은 몇 가지 그림 호출 스위치가 포함되어 있다는 점이다. 스위치의 On, Off 상태에 따라 어떤 부분 그림을 호출할 수도 있고 그렇지 않을 수도 있음을 관리하는 용도이다. 또한 name이 설정되었는지, post가 설정되었는지 등을 나타내기도 하지만 프로그래머가 아닌 사람에게는 크게 연관이 없으므로 부연 설명을 하지 않는다. mode is mainly for displaying the current setting status. Of particular note is the inclusion of several picture call switches. The purpose is to manage the fact that some parts may or may not be called depending on the On or Off state of the switch. It also indicates whether name is set, post is set, etc. However, it is not relevant to non-programmers.

4. 본 발명에 따른 시스템에 대한 부연 설명4. A further explanation of the system according to the invention

4.1 보조벡터정보부(12)4.1 Auxiliary Vector Information Section (12)

1바이트 단위의 기본형 벡터화소(10a)의 상위 4비트인 보조벡터정보부(12)의 특성을 정리하면 다음과 같다.The characteristics of the auxiliary vector information unit 12, which is the upper four bits of the basic vector pixel 10a in units of one byte, are summarized as follows.

(1) 0x0인 경우 (1) 0x0

기본형 벡터화소(10a)에서 별도의 추가 벡터 정보가 없는 것임을 의미하며 뒤에 색상 정보가 있는지 없는지는 헤더(20) 수준 혹은 데이터 처리부(400) 수준에서 정해진 바에 따른다. This means that there is no additional vector information in the basic vector pixel 10a, and whether there is color information later depends on the level of the header 20 or the data processor 400.

(2) 0x3이하인 경우 (2) 0x3 or less

3차원 벡터임을 표시한다. 즉, 상기 설명한 8개의 방향 정보가 평면 2차원적인 표현인데 비하여 이 값이 포함이 되면 Z축에 해당하는 전, 후 방향 정보를 가져 기본형 벡터화소(10a)는 결국 3차원 벡터를 표시한다. Indicates that this is a three-dimensional vector. That is, when the above-described eight direction information is a planar two-dimensional representation, when this value is included, the basic vector pixel 10a eventually displays a three-dimensional vector with the forward and backward direction information corresponding to the Z axis.

만일 처리 속도에 민감한 경우에는 도 2에 설명된 바의 type에 규정하여 극복할 수 있으나 벡터화소(10)의 기본(Default) 처리는 3차원 데이터로 인식하는 것이다. 여기서 0인 경우 즉 3차원 벡터에서 전, 후 성분이 없는 경우 상기 (1)과 같아지나 3차원 중에서 한 차원이 0인 경우가 2차원임을 감안한다면 문제가 될 수 없다.If it is sensitive to the processing speed, it can be overcome by defining the type described in FIG. 2, but the default processing of the vector pixel 10 is recognized as three-dimensional data. In the case of 0, that is, if there is no before and after components in the 3D vector, the same as in (1), but it is not a problem considering that the case where one of the 3D dimensions is 0 is 2D.

(3) 기타 값 :(3) other values:

별도의 벡터이다. 이는 4비트 이내에서 표현이 될 수 있다. 벡터정보부(11)와 동일 벡터정보를 가지게 하는 방식으로 표현이 되는 겹 그림 혹은 1바이트로 2점을 표시하는 경우이다. 물론 이 설정은 헤더(200) 혹은 컨트롤 부(20)로 미리 설정할 수 있도록 하는 것이 바람직하다.It is a separate vector. This can be represented within 4 bits. This is a case where two points are displayed in a layered picture or one byte expressed in a manner of having the same vector information as the vector information unit 11. Of course, it is preferable to set this setting to the header 200 or the control unit 20 in advance.

4.2 포인터 이동 함수4.2 Pointer Movement Function

본 발명에 따른 벡터화소(10)는 각각의 단위마다 벡터 정보를 보유하고 있고 추가적으로 데이터단위구조(110)에서는 다양한 명령을 가지는 컨트롤 부(20)를 추가로 포함할 수 있기 때문에 규격이 복잡해지는 단점이 생긴다. 이렇게 복잡한 규격을 일일이 구분하다 보면 그림을 읽어 나가는 속도에 문제가 생길 수 있기 때문에 다음 픽셀로 넘어가는 함수를 여러 종류 마련해 두고 그 종류를 선택하는데 필요한 규격을 따로 관리한다. 그 구현이 헤더의 2번째 바이트 type이다.Since the vector pixel 10 according to the present invention has vector information for each unit and the data unit structure 110 may further include a control unit 20 having various commands, the specification becomes complicated. This occurs. This sorting of complex specifications can cause problems in the speed of reading a picture, so we have several kinds of functions to move to the next pixel and manage the specifications for selecting those types separately. The implementation is the second byte type of the header.

5. 브레제남(Bresenham)의 선 그리기 알고리즘 구현5. Implementation of Bresenham's Line Drawing Algorithm

도 4는 브레제남 선 그리기 방식을 예시한 그래프이다.4 is a graph illustrating a Bregenin line drawing method.

1965년 J. E. Bresenham이 발표(IBM System Journal 4(1) 1965, pp.25~30)한 알고리즘으로서, 2개의 주어진 픽셀 사이에 이어지는 직선과 가장 가깝게 위치하는 픽셀들의 집합을 (x, y) 좌표로 출력해 나가면서 도 5와 같이 화면상의 해당 픽셀을 Setting해 나가는 방식이다. 수학적인 원리는 간단하다. X 값이 dx(좌표로 1)만큼 증가할 때마다 Y 값은 dy만큼씩 증가하는데 비례 계산에 필요한 곱셈과 나눗셈을 덧셈과 뺄셈으로 바꾼 것이 특징이다. 곱셈은 계속 더해 나가고 나눗셈은 계속 빼어 나가는 방식이다.An algorithm, published in 1965 by JE Bresenham (IBM System Journal 4 (1) 1965, pp. 25-30), that sets a set of pixels closest to a straight line between two given pixels in (x, y) coordinates. While outputting, the corresponding pixel on the screen is set as shown in FIG. 5. The mathematical principle is simple. Whenever the value of X increases by dx (1 in coordinates), the value of Y increases by dy. It is characterized by the addition and subtraction of multiplication and division necessary for proportional calculation. Multiplication keeps adding and division keeps subtracting.

본 발명에 따른 시스템에서는 좌표 대신에 현재점(現在点)에 대한 다음 점의 상대 위치를 4비트, 즉 상(x'1000'), 하(x'0100'), 좌(x'0010'), 우(x'0001') 좌 상(x'1010'), 우상(x'1001'), 좌하(x'0110'), 우하(x'0101') 등의 8가지 단위 벡터로 출력하여 데이터의 저장 공간, 즉 버퍼(Buffer)에 저장하는 방식으로 구현한다. 같은 원리로 출발하지만 그 결과 내용에는 다음과 같은 차이가 있다.In the system according to the present invention, instead of the coordinates, the position of the next point with respect to the current point is 4 bits, that is, upper (x'1000 '), lower (x'0100'), left (x'0010 '). Data by outputting 8 unit vectors such as top (x'0001 ') top left (x'1010'), top right (x'1001 '), bottom left (x'0110'), bottom right (x'0101 ') Implemented by storing in a storage space, that is, a buffer. It starts with the same principle, but there are differences in the contents as follows.

(1) 벡터 출력된 직선 문자열에는 출발점도 없고 도착점도 없이 끝나는 점까지의 오프셋이 숨어 있을 뿐이다. 도 5의 출발점(x1, y1)에서 도착점(x2, y2)까지 직선을 그릴 때 dx와 dy는 변화가 없더라도 x1과 y1이 달라지면, 좌표로 출력되는 내용은 그때그때 다르지만 벡터로 출력된 내용은 동일하다는 뜻이다. 다시 말해서기울기가 같고 길이가 같은 직선은 출발점의 위치에 관계없이 동일하다는 것이다. 이것은 벡터의 성질상 당연한 결과다. 따라서 출력되는 문자열의 내용에 관한 한 모든 직선은 실제 좌표와 상관없이 원점을 기점으로 하여 오프셋으로 그려도 같은 결과를 얻는다.(1) The vector output straight string only hides the offset to the ending point without the starting point and the ending point. When a straight line is drawn from the starting point (x1, y1) to the arrival point (x2, y2) of FIG. 5, if x1 and y1 are different even though dx and dy are unchanged, the content outputted by the coordinates is different at that time, but the content outputted by the vector is the same. It means. In other words, straight lines with the same slope and the same length are the same regardless of the position of the starting point. This is a natural consequence of the nature of the vector. Therefore, as far as the contents of the output string are output, the same result is obtained even if all the straight lines are offset from the origin regardless of the actual coordinates.

(2) 문자열의 길이는 오프셋의 수직 성분과 수평 성분 중 큰 쪽과 일치한다. 이 성질은 출발점에서 도착점까지 진행하면서 X가 증감하든, Y가 증감하든 혹은 양쪽이 동시에 변하든 한 문자(1점의 좌표)씩 출력하기 때문이다. 이 성질은 향후 논리 전개나 프로그램에서 상당히 중요한 역할을 한다.(2) The length of the string corresponds to the larger of the vertical and horizontal components of the offset. This is because as you progress from the starting point to the arrival point, X prints one character (coordinate of one point), whether X increases or decreases, or both sides change simultaneously. This property plays a significant role in future logic development and programs.

(3) 실질적인 직선 작도 프로그램은 브레제남의 선 그리기 원형처럼 포인트마다 X 증감, Y 증감을 따질 필요 없이 수직, 수평 성분 중 더 큰 성분을 찾아 상, 하, 좌, 우 중 하나로 기본 방향을 정하고 그 크기에 상당하는 문자열을 먼저 만든 후, 여기에 직각되는 보조 성분 및 그 크기를 결정하여 균등 분산 OR연산을 해 주면 된다.(3) Practical straight line drawing program, like Bregenin's line drawing circle, finds the bigger component among vertical and horizontal components and sets the basic direction to one of the top, bottom, left, and right, without having to measure the X increase or decrease for each point. First, make a string corresponding to the size, and then determine an auxiliary component and its size that are orthogonal to the size, and perform an evenly distributed OR operation.

좀 더 쉽게 예를 든다면 출발점(0, 0)에서 도착점(3, 10)까지 직선을 그린다 할 때, X 오프셋 3보다는 Y 오프셋 10이 더 크기 때문에 기본 방향은 「하(↓)」가 되고 보조 성분은 X 오프셋 3에 해당하는「우(→)」가 된다. 따라서 기본 문자열은 「하(↓)」가 10개 반복된 "하하하하하하하하하하"가 되고 이중에서 3개의 「하(↓)」에 보조 방향 벡터 「우(→)」를 더하여 「우하(↘)」로 만들어 주면된다는 뜻이다. 최종 결과는 "하,하,우하,하,하,우하,하,하,우하,하"가 된다.For example, if you draw a straight line from the starting point (0, 0) to the arrival point (3, 10), the default direction is `` lower (↓) '' because the Y offset 10 is larger than the X offset 3 The component becomes "right (→)" corresponding to X offset 3. Therefore, the basic character string becomes "ha ha ha ha ha ha ha ha" with 10 repeated "ha (↓)", of which three auxiliary "vectors" are added to the three "ha (↓)" and "uha (↘)". It means you make it. The end result is a "ha, ha, the lower right, lower, lower, lower right, lower, lower, lower right, and".

6. 브레제남(Bresenham)의 원 그리기 알고리즘 구현6. Implementing Bresenham's Circle Drawing Algorithm

선 그리기와 같은 방법으로 원주 상의 한 점에서 다음 점이 위치할 좌표를 구하여 그려 나가는 방식이나 특기할 점은 원의 1/8만 계산으로 구하고 나머지 7/8의 원은 X 축, Y축을 중심으로 한 대칭점을 구하여 해결하는 것이다. 즉, 1상한의 1점 (x, y)의 2 상한 해당 점은 (-x, y)가 되고 3 상한점은 (-x, -y)이 되며 4 상한점은 (x, -y)이 된다.(이 설명은 도 6의 상한 배치 순서와 무관함) 나머지 4개의 점은 각 상한 해당 점의 직선 y = x 혹은 y = -x 에 대한 대칭점이다. (x, y) 점의 y = x 직선에 대한 대칭점은 (y, x)가 된다.In the same way as drawing a line, the method of drawing the coordinates where the next point is located from one point on the circumference or the point to be noted is calculated by calculating only 1/8 of the circle and the other 7/8 circle centered on the X and Y axes. The solution is to find the point of symmetry. In other words, the upper limit of one point (x, y) of one upper limit is (-x, y), the upper limit of three is (-x, -y), and the upper limit of four is (x, -y). (This description is irrelevant to the upper limit arrangement order of FIG. 6). The remaining four points are symmetry points with respect to the straight line y = x or y = −x of each upper limit corresponding point. The symmetry point of the (x, y) point with respect to the y = x straight line is (y, x).

도 5는 본 발명에 따른 원 그리기 알고리즘의 구현 방식을 나타내기 위한 원 그래프이다.5 is a circle graph for illustrating a method of implementing a circle drawing algorithm according to the present invention.

본 발명에서는 도 5와 같이 직선의 경우처럼 좌표 출력을 벡터 출력으로 바꾸어 주는 방법으로 1/8 원을 그린다. 그러나 같은 방법으로 대칭점들은 그릴 수 없다. 단순한 좌표와 방향을 가진 벡터의 차이점 때문이다. 따라서 하나의 1/8 원을 각각 8분상한(도 5에 도시된 바와 같이 직각 좌표축이 나누는 4개의 부분 평면을 다시 45도 기울어진 직선 축으로 나누면 8개의 부분 평면이 되는데 이를 '8분상한'이라 부르고, 양의 x축에서 출발하여 양의 y축 방향으로 1상한, 2상한, ... 8상한 등으로 등분한 것임)의 해당 원호로 변환해 주는 알고리즘이 필요해 진다.In the present invention, as shown in FIG. 5, a 1/8 circle is drawn by changing the coordinate output to the vector output as in the case of the straight line. But you cannot draw symmetry points in the same way. This is because of the difference between vectors with simple coordinates and directions. Therefore, if one 1/8 circle is divided into eight quadrants (as shown in Fig. 5), the four partial planes divided by the Cartesian coordinate axis are divided into eight linear planes that are inclined at 45 degrees. This method requires an algorithm that starts from the positive x-axis and converts it into the corresponding arc of 1 upper limit, 2 upper limits, ... 8 upper limits, etc. in the positive y-axis direction.

도 5에서는 1상한과 8상한에 대하여 X축에 가까운 4점씩을 예시해 놓았다. 그 벡터의 내용은 1상한[하, 하, 좌하, 하]이고 8상한 [하, 우하, 하, 하]이다. 따라서 8상한 벡터는1상한 벡터에서 [좌]의 값만 [우]로 바꾸어 준 후에 그 순서를 뒤집은 것임을 쉽게 알 수 있다. 마찬가지 방법으로 나머지 6개의 8분 상한에 대하여 변환 규칙을 찾아보면 다음과 같다.In FIG. 5, four points close to the X-axis are illustrated for one upper limit and eight upper limits. The content of the vector is 1 upper limit [lower, lower, lower left, lower] and 8 upper limit [lower, lower, lower, lower]. Therefore, it is easy to see that the eight-quadrant vector is reversed after changing only the value of [left] to [right] in the first quadrant vector. Similarly, the conversion rule for the remaining six eight-minute upper bounds is as follows.

1상한: 기본Upper limit 1: default

2상한: 하 -> 좌, 좌 -> 하Upper limit 2: lower-> left, left-> lower

3상한: 하 -> 좌, 좌 -> 상Upper limit 3: lower-> left, left-> upper

4상한: 하 -> 상4: Upper limit: Lower-> Upper

5상한: 하 -> 상, 좌 -> 우5 Upper limit: Lower-> Upper, Left-> Right

6상한: 하 -> 우, 좌 -> 상6 Upper Limit: Lower-> Right, Left-> Upper

7상한: 하 -> 우, 좌 -> 하7 Upper Limit: Lower-> Right, Left-> Lower

8상한: 좌 -> 우8 upper limit: Left-> Right

짝수 상한: 순서 뒤집음Even Upper Limit: Flip Order

이 변환은 조금만 수정하면 모든 도형이나 이미지를 45도 단위로 회전하는데 사용할 수 있다.This transformation can be used to rotate any figure or image by 45 degrees with a few modifications.

7. 자유곡선 작도법의 구현7. Implementation of Spiral Drawing Method

도 6은 본 발명에 따른 시스템을 이용하여 표현되는 자유 곡선 작도 원리를 나타내는 개념도이다.6 is a conceptual diagram illustrating the principle of constructing a free curve represented using a system according to the present invention.

본 발명에서 자유곡선의 작도는 도 7에서 보는 바와 같이 2가지 방법으로 구현한다. 하나는 널리 알려져 있는 베지어 곡선을 벡터 방식으로 구현하는 것이고 또 하나는 벡터화소법의 특유의 방법이다.The construction of the free curve in the present invention is implemented in two ways as shown in FIG. One is to implement a well-known Bezier curve in a vector manner, and the other is a unique method of the vector pixel method.

(A) 베지어(Bezier) 곡선의 구현(A) Implementation of Bezier curve

베지어 곡선은 1960년대 말 프랑스의 르노 자동차 회사에 근무하던 피에르 베지어(P. Bezier)가 처음 고안한 것이다. 그 작도법은 도 6(A)에 도시되어 있다.The Bezier curve was first conceived by P. Bezier, who worked for the French Renault car company in the late 1960s. The drawing method is shown in Fig. 6A.

그림에서 M0은 P1P2의 중점, M2는 P2P3의 중점이다. 그리고 M3과 M4는 각각 M0M1과 M1M2의 중점이며 M5는 M3M4의 중점이다. 그러면 P0P1P2P3으로 정의되는 베지어 곡선을 P0M0M3M4로 이루어지는 곡선과 M5M4M2M3으로 이루어지는 곡선의 2개로 분할할 수 있다. 이제 왼쪽의 부분곡선인 P0M0M3M4에 대해서 똑 같은 방식으로 중점들을 구하여 2개로 나누고 또 그 나누어진 곡선들을 다시 분할하고 이런 식으로 곡선을 계속 나누어 나가면 곡선이 점점 작아지면서 직선에 가까워지므로 적당한 선에서 곡선을 그리는 대신 P0와 P3를 직선으로 이어 버리면 원하는 곡선을 얻게 된다.In the figure, M0 is the center of P1P2 and M2 is the center of P2P3. M3 and M4 are the centers of M0M1 and M1M2, and M5 is the center of M3M4. The Bezier curve defined by P0P1P2P3 can then be divided into two, a curve consisting of P0M0M3M4 and a curve consisting of M5M4M2M3. Now find the midpoints in the same way for P0M0M3M4, the left side curve, divide the divided curves into two again and continue dividing the curves in this way. Instead, draw a straight line between P0 and P3 to get the desired curve.

본 발명에 따른 시스템으로는 마지막 직선 연결을 벡터 문자열로 구현하면 완벽한 구현이 된다. In the system according to the present invention, the final straight line connection is implemented as a vector string.

그러나 벡터 바이트의 상위 4비트를 버퍼로 삼아 마크를 표시하고 이를 기준점으로 하여 상기 과정을 진행시키는 방법이 있다. 그 과정은 다음과 같다.However, there is a method of marking the mark using the upper 4 bits of the vector byte as a buffer and proceeding the above process using the mark as a reference point. The process is as follows.

처음 P0P1P2P3의 벡터 문자열을 만들 때 P1과 P2의 해당점 상위비트에 꼭지점 표시 마크(임의의 숫자)를 한다. 그러면 P1P2의 중점 M0는 상기 직선 문자열 성질 (2)에 의하여 P1과 P2의 해당 벡터 사이의 문자열 2등분 점(문자열의 길이가 N이라면 N/2 번째 문자)이 되며 이 문자(M0)의 상위 비트에 중점이라는 마크를 할 수 있다. 마찬가지로 P0P1, P2P3에 대해서도 중점 표시를 할 수 있다. 그러면 표시된 마크(꼭지점과 중점)를 찾아 위에 설명한 직선 연결 등을 행함으로써 각 단계별 해당하는 문자열을 얻을 수 있다.When first creating a vector string of P0P1P2P3, place a vertex mark (any number) on the upper bits of the corresponding point of P1 and P2. Then, the midpoint M0 of P1P2 becomes the string bipartite point (N / 2th character if the length of the string is N) between the corresponding vectors of P1 and P2 according to the straight string property (2), and the higher bit of this character (M0). Mark the emphasis. Similarly, midpoint display can also be performed for P0P1 and P2P3. Then, by finding the marked marks (vertexes and midpoints) and performing a straight line connection as described above, a string corresponding to each step can be obtained.

이 방법으로 2가지 이점을 얻을 수 있다. 하나는 베지어 곡선 작도 원형(原形)의 경우 사전에 중점(中點)의 개수를 추정하여 이를 보관할 메모리 공간을 마련해야 하는데 이 방법에서는 그럴 필요가 없고, 원형(原形)의 경우 상기 곡선 분할 차수(次數)를 결정해 놓아야 하는데 여기서는 그럴 필요가 없다. 왜냐하면 꼭지점과 꼭지점 사이의 거리가 미리 정해 둔 최소치에 도달하면 반복 조작을 끝낼 수 있으며 차수가 늘어나도 많아지는 중점들의 좌표를 보관할 필요가 없기 때문이다. 따라서 큰 곡선과 작은 곡선 사이의 곡선 품질의 차이를 없앨 수 있는 것이다.There are two advantages to this approach. One is to estimate the number of midpoints in advance in the case of Bezier curve construction prototypes and to prepare a memory space to store them. In this method, there is no need to do so, and in the case of prototypes, the curve division order (次數) should be decided here, but it is not necessary here. Because the distance between the vertex and the vertex reaches a predetermined minimum, it is possible to end the iterative operation, and it is not necessary to keep the coordinates of the midpoints that increase as the order increases. This eliminates the difference in curve quality between large and small curves.

(B) 다른 방법의 자유 곡선의 구현(B) the implementation of free curves of other methods

도 6(B)에서는 베지어 곡선과 다른 방법으로 자유 곡선을 그리는 방법이 도시되어 있다. 3각형 ABC에 대하여 AB 변을 n 등분 하고, BC 변을 n 등분하여 각 등분점을 차례대로 연결해 나가면 베지어 곡선과 비슷한 곡선이 얻어진다. 각 변의 중점(中點)의 중점을 지나기 때문에 위에 기술한 베지어 곡선과 같은 종류의 스플라인 곡선이라는 것을 기하학적으로 증명할 수 있다. 중점은 n/2 번째 점이며 이를 서로 연결한 선의 중점이기 때문이다. 6 (B) shows a method of drawing a free curve differently from the Bezier curve. For triangular ABCs, AB sides are divided into n and BC sides are divided into n to connect each equal point in sequence to obtain a curve similar to a Bezier curve. Since we pass the midpoint of each side, we can geometrically prove that it is the same type of spline curve as the Bezier curve described above. This is because the midpoint is the n / 2th point and the midpoint of the lines connecting them.

n 번째 점에서 BC변의 n 번째 점을 향하여 직선을 그려 나가다가 n+1 번째 직선과 만나는 점에서 방향을 바꾸어 나가는 것을 반복하면 벡터 문자열이 얻어진다. 이것은 상기 유연성을 가진 본 발명에 따른 벡터화소를 이용한 시스템의 직선 작도 방법 때문에 구현할 수 있다.If you draw a straight line from nth point to nth point of BC side and then change direction at the point where it meets n + 1th straight line, you get a vector string. This can be realized because of the linear drawing method of the system using the vector pixel according to the present invention having the above flexibility.

8. 곡선 및 이미지의 변형(확대, 축소, 회전)8. Deformation (zoom in, zoom out, rotation) of curves and images

도 7은 본 발명에 따른 시스템을 이용하여 표현되는 도형 변형의 원리를 나타낸 개념도이다.7 is a conceptual diagram illustrating the principle of deformation of a figure expressed using the system according to the present invention.

도 7에서 보는 바와 같이 물결 모양의 곡선 AB를 변형하여 곡선 AC를 얻는 것은 수학적으로 복잡하고 어렵다. 이는 크기가 AB: AC로 확대되어 있고, 각도 ∠BAC 만큼 시계 방향으로 회전하여 있기 때문이다. 그러나 벡터의 개념으로 보면 - 곡선 AB가 벡터화소로 이루어져 있다면 그 속에 있는 상, 하, 좌, 우의 단위벡터의 합은 직선 AB의 단위 벡터 합과 일치한다. 곡선 AC와 직선 AC도 마찬가지다. 따라서 곡선 AB와 곡선 AC의 벡터 총합의 차이는 직선 AB와 직선 AC의 벡터 총합의 차이와 일치하며 이것은 직선 BC와 같다.As shown in FIG. 7, it is mathematically complicated and difficult to obtain the curve AC by modifying the wavy curve AB. This is because the size is enlarged to AB: AC and rotates clockwise by the angle ∠ BAC. However, in the concept of a vector-if the curve AB consists of vector pixels, the sum of the upper, lower, left, and right unit vectors in it coincides with the sum of the unit vectors of the straight line AB. The same applies to curve AC and straight line AC. Thus, the difference between the sum of the vectors of curves AB and AC is equal to the difference between the sum of vectors of straight lines AB and AC.

따라서 2점 B, C를 잇는 직선 문자열을 작성하여 곡선 AB에 적당히 분산 삽입해 주면 곡선 AC가 얻어진다. 여기서 적당히 분산한다 함은 문자열의 길이를 등분하여 삽입할 수도 있고, 수평, 수직의 위치를 따져서 이를 등분하여 삽입할 수도 있음을 뜻한다. 이 변형은 도형뿐 아니라 이미지에도 적용할 수 있다.Therefore, a straight line character string connecting two points B and C is distributed and properly distributed in the curve AB to obtain the curve AC. In this case, "distribute appropriately" means that the length of the character string can be divided into equal parts, and the horizontal and vertical positions can be divided into equal parts. This transformation can be applied to images as well as shapes.

도 8은 본 발명에 따른 시스템을 이용하여 표현이 되는 이미지의 변형 원리를 보여 주는 개념도이다. 8 is a conceptual diagram illustrating a principle of deformation of an image to be expressed using a system according to the present invention.

도 8(A)에서 수평선으로 표현된 방향으로 벡터와 색상 정보를 나열하면 윤곽으로 표시된 모양의 이미지가 된다. 여기서 색상 정보는 그대로 두고 벡터 바이트만 도 8(B)와 같이 사선으로 바꾸어 주면 해당하는 각도만큼 회전한 이미지가 얻어진다.Arranging the vector and the color information in the direction represented by the horizontal line in Fig. 8A results in an image of a shape indicated by the outline. Here, if the color information is left as it is and only the vector byte is changed to an oblique line as shown in FIG. 8 (B), an image rotated by a corresponding angle is obtained.

9. 큰 이미지를 작은 이미지로 나누기9. Divide large images into smaller ones

도 9는 하나의 이미지를 A, B, C 세 부분으로 나눈 구획을 보여 주고 있는 개념도이다. 9 is a conceptual diagram illustrating a partition in which an image is divided into three parts A, B, and C.

본 발명에 따른 벡터화소(10) 구조에 의한 이미지 파일은 특별한 형식을 규정하지 않고 데이터 중의 어디서나 새로운 위치, 새로운 ID, 새로운 형식까지 규정 할 수 있게 되어 있기 때문에 몇 개의 이미지를 연속하여 혼합해 놓을 수 있다. 따라서 A, B, C 세 부분을 서로 다른 형식의 이미지로 완성하여 각각 ID를 부여하여 혼합할 수 있는 것이다.Since the image file by the structure of the vector pixel 10 according to the present invention can define a new position, a new ID, and a new format anywhere in the data without specifying a special format, several images can be mixed in succession. have. Therefore, the three parts A, B, and C can be mixed into images of different formats by assigning IDs.

특히 C 부분은 4각형 이미지이기 때문에 헤더의 type이나 컨트롤에 비트맵 식별자를 부여하고 별도의 파일 혹은 부분 이미지로 저장할 수 있다. 부분 이미지의 끝에 상기에서 기술한 RETURN 명령을 붙이면 독립적인 이미지가 되는 것이다. 이때 효율적인 전체 이미지 배치의 한 가지 예는 파일의 시작부에 모든 부분 이미지를 호출하는 CALL 명령의 집합을 늘어놓는 것이지만 다른 방법도 얼마든지 있을 수 있다.In particular, since the C part is a square image, the bitmap identifier can be assigned to the header type or control and saved as a separate file or partial image. At the end of the partial image, the RETURN command described above becomes an independent image. One example of efficient full image placement is to arrange a set of CALL commands that call all partial images at the beginning of a file, but there are many other ways.

부분 이미지는 평면적인 부분을 나눌 수도 있고 같은 위치의 레이어를 표시할 수도 있으며 색상별 채널을 표시할 수도 있고 동영상의 프레임을 나타낼 수도 있다. 컨트롤 문자로 Z-index(표시 우선순위)를 부여하여 배경과 표면 그림을 나눌 수도 있다. The partial image may be divided into flat portions, may display layers at the same position, may display channels for each color, or may represent frames of a video. You can also divide the background and surface pictures by assigning a Z-index (display priority) as the control character.

10. 3차원 이미지의 구현10. Implementation of 3D Images

도 10은 본 발명에 따른 이미지 처리 시스템에 따른 3차원 이미지 구현에 대한 방식 이론을 설명하기 위한 개념도이다.10 is a conceptual diagram illustrating a method theory for implementing a 3D image according to the image processing system according to the present invention.

도 10과 같이 벡터화소(10)에서 하위 4비트, 즉 벡터정보부(11)를 X, Y 축, 상위 4비트 중 2 비트를 Z 축으로 하여 '전', '후' 방향 성분을 추가하면 3차원 좌 표를 표현할 수 있다. 그림에 나타나 있지만 이때는 방향벡터가 8개가 아닌 26개로 늘어난다.As shown in FIG. 10, when the lower 4 bits, that is, the vector information unit 11 is the X, Y axis, and 2 bits among the upper 4 bits are Z axes, the components 'forward' and 'after' are added as shown in FIG. You can express dimensional coordinates. Although shown in the figure, the direction vectors increase to 26 instead of eight.

컨트롤 문자(21) 중 0xf0는 상위 4비트를 모두 설정하므로 Z축 벡터 2비트가 모두 설정되는 결과를 초래하는데 이는 서로 반대되는 방향벡터가 동시에 설정되는 것이므로 벡터로서의 의미는 없어서 영향이 없다. 즉, 3차원 이미지의 경우에도 컨트롤 문자(21)는 쓸 수 있다.Since 0xf0 of all control characters 21 sets all the upper 4 bits, this results in setting all 2 bits of the Z-axis vector. This is because the direction vectors opposite to each other are set at the same time. That is, even in the case of a three-dimensional image, the control character 21 can be written.

3차원 이미지를 화면에 표시하기 위해서는 각 포인트를 2차원 좌표로 변환해 주어야 한다. 관찰자 시선의 방향에 따라 26종의 벡터 중 기본 6종(상, 하, 좌, 우, 전, 후)에 대해서 비례 계산으로 변환을 해 주어야 하는데 이때 브레제남 방식의 비례 계산을 쓸 수 있다. 기존의 좌표는 절대 값이기 때문에 곱셈 나눗셈으로 변환할 수밖에 없지만 벡터 데이터는 증분을 표시하기 때문에 해당 증분을 반영할지 무시할지 판단하여 결과를 얻을 수 있는 것이다. 예를 들어 X 좌표의 1/6을 Z 좌표에서 빼어 주어야 할 때 절대 값의 경우는 X/6을 계산해야 하지만 벡터의 경우는 우(→)가 5번 나타날 때까지 무시하다가 6번째 나타났을 때 반영해 주면된다는 뜻이다.In order to display a 3D image on the screen, each point must be converted to 2D coordinates. Depending on the direction of the observer's eye, the basic six types (up, down, left, right, front and back) of the 26 kinds of vectors should be converted into proportional calculations. Since the existing coordinates are absolute values, they have to be converted to multiplication division, but since the vector data represents an increment, it is possible to determine whether to reflect or ignore the increment. For example, when 1/6 of X coordinate is to be subtracted from Z coordinate, X / 6 should be calculated in case of absolute value, but in case of vector, it is ignored until right (→) appears 5 times and then appears 6th. It means that it is reflected.

이것은 작도(作圖, Drawing)에서 도면의 정면도와 평면도를 통합할 수 있고, 부품도와 조립도를 통합할 수 있으며, 도면과 투영도(投影圖)를 통합할 수 있다. 각 부품도에 고유 번호를 컨트롤로 부여해 놓으면 부품도만 따로 출력할 수도 있고 전체를 통합 출력할 수도 있다. 조립도의 작성 과정에서 인근 부품과의 간섭을 간단히 발견할 수 있어서 설계를 쉽게 해 줄 수 있다. 이는 이미지 분야뿐 아니라 산 업 디자인이나 NC 기계의 곡면해석에 적용할 수도 있다. It can integrate the front and top views of a drawing in a drawing, integrate parts and assembly drawings, and integrate drawings and projections. If you give each part a unique number as a control, you can print only the part drawing or you can print the whole part. During assembly drawing, it is easy to detect interference with nearby components, which makes the design easier. This can be applied not only to the imaging field but also to industrial design or surface analysis of NC machines.

11. 상/하위 비트의 벡터 합성을 이용한 편집11. Editing using vector synthesis of upper and lower bits

컨트롤 부(20)의 컨트롤 명령 정보에 대한 비트를 버퍼로 삼아 독립된 단위 벡터를 나열하고 상위 벡터와 하위 벡터를 합성하여 움직이면 편집 효과를 얻을 수 있다. 예를 들어 하위 벡터가 "상상상상"이면 수직으로 상승하는 4개의 픽셀로 이루어진 직선인데 해당하는 바이트의 상위 비트에 "우우우우"라는 벡터를 추가한 후 동시에 해석하면 "우상우상우상우상"이 되어 우상으로 45도 기울어진 직선이 되는 것이다. 헤더의 type에 「상위 벡터 종속적 이동」이라는 형식이 규정되어 있는데 이 경우를 위한 것이다. By using the bits for the control command information of the control unit 20 as a buffer, the independent unit vectors are listed, and the upper and lower vectors are synthesized and moved to obtain an editing effect. For example, if the lower vector is "imaginary image," a straight line of 4 pixels that rises vertically. If the vector "woo" is added to the upper bits of the corresponding byte and interpreted at the same time, it becomes "idol idol." It will be a straight line tilted 45 degrees to the upper right. The format of the header specifies the parent vector dependent shift, which is for this case.

물론 현재의 위치를 이동시키는 포인터 이동 함수를 적절히 만들어야 한다는 전제가 있다. 원본 데이터를 상쇄시키는 추가 벡터가 나타나면 포인터는 제자리에 있을 것이고 원본과 같은 성분이 추가되면 2픽셀 이동하게 될 것이다. 움직임이 없으면 다음 데이터를 읽고 2픽셀을 움직이면 2번에 걸쳐서 좌표를 반환하는 조치가 필요하다.Of course, there is a premise that you must properly create a pointer movement function that moves the current position. If an additional vector appears to offset the original data, the pointer will be in place and will move 2 pixels when the same component as the original is added. If there is no movement, then the next data reading and moving 2 pixels need to return the coordinates twice.

이는 상기 6에서 설명한 '곡선 및 이미지의 변형(확대, 축소, 회전)'과 원리는 같지만 경우는 다르다. 6에서는 원본 그림을 변형시키는 것이나, 여기에서는 원본 그림을 변형시키지는 않고 화면에 그려 줄 때 상위 벡터에 표시된 독립 벡터와 결합하여 형상을 바꿔 줌을 뜻한다. 별도로 적시하지는 않았지만 완전히 독립된 외 부 문자열과 결합하여 편집 효과를 얻는 경우도 있을 수 있다. 각각의 경우에 용도나 특징이 다르다.This is the same principle as 'deformation (magnification, reduction, rotation) of curves and images' described in 6 above, but the case is different. In 6, the original picture is transformed, but in this case, the original picture is transformed by combining it with the independent vector shown in the parent vector when drawing on the screen. In some cases, editing effects may be combined with external strings, which are not separately noted. In each case, their use and characteristics are different.

(1) 원본 변경(상기 '6'의 내용)의 경우, 편집된 결과에 대하여 곡선의 원활화(Smoothen) 과정을 거쳐서 품질을 높일 수 있다.(1) In the case of the original change (contents of '6'), the quality can be improved by performing a smoothing process on the edited result.

(2) 상위 벡터와 결합하는 경우, 하나의 원본에 대하여 수많은 변형이 필요한 경우 쓸 수 있다.(2) When combined with higher vectors, it can be used when numerous modifications are required for a single original.

(3) 독립된 외부 벡터와 결합/변경할 수 없는 원본에 대하여 상황에 따라 다른 형상으로 나타내야 할 필요가 있을 경우 쓸 수 있다.(3) Can be used when it is necessary to express different shape depending on the situation for the original which cannot be combined / modified with independent external vector.

3가지 모두 도형의 경우나 이미지의 경우 공통으로 해당한다. 하나의 풀잎이나 머리카락 원형에 대하여 임의 변형된 형상을 얻을 수 있고 많은 이미지 정보를 처리해야 하는 온라인 게임에 각각 이용할 수 있을 것이다.All three correspond to the case of figures or images. Arbitrarily deformed shapes can be obtained for a blade of grass or hair, and each can be used for an online game that needs to process a lot of image information.

12. 이미지의 프로그램화12. Program the image

그림에 고유 번호를 부여하고 컨트롤에 호출 명령을 배정하여 그림을 그려 나가는 도중에 다른 그림을 불러 와서 원하는 회수만큼 반복적으로 그려 줄 수 있음은 이미 상기 내용에서 간접적으로 설명되었다. 덧붙일 것은 호출 조건이다. 컨트롤 문자 CALLGRIM의 파라미터(4바이트 블록에서 명령 문자를 제외하고 남는 바이트) 중 첫 번째 바이트가 호출 조건이다. 이것은 호출 시점에 mode 속의 호출 스위치 바이트와 AND 연산을 하여 호출 여부를 결정짓는다. 어떤 종류의 스위치를 마련 하고 어느 시점에 어떻게 이를 끄고 켜느냐가 프로그램화의 요체다.It has already been explained indirectly above that it is possible to assign a unique number to a picture and assign a call command to the control to call another picture and draw it repeatedly as many times as desired while drawing the picture. The addition is a call condition. The first byte of the control character CALLGRIM parameter (bytes remaining in the 4-byte block except for the command character) is the call condition. It ANDs the call switch byte in mode at the time of the call to determine whether it is called. What kind of switch is in place and how and when to turn it on and off is the point of programming.

하나의 그림이 호출되어 실행(화면 표시나 동영상의 실행)된 후 RETURN 명령을 따를 때 다음 연관 동급 그림의 스위치를 켜거나 끄면 어떤 동작을 연속시킬 수 있다. 예를 들어 칼을 휘두르는 동영상의 끝에 방패 그림의 스위치를 켜는 파라미터를 넣으면 2 그림이 연속으로 나타난다.When a picture is called and executed (screen display or motion picture execution), when the RETURN command is followed, switching on or off the next associative equivalent picture can continue any operation. For example, if you put a parameter to switch on the shield picture at the end of the sword-wielding video, two pictures appear in succession.

헤더 수준의 type이나 mode에 파일의 종류를 규정하면서 「곡선을 따라가는 그림」 같은 종류를 하나 마련하면 외부에서 제공되는 곡선 문자열의 벡터를 따라 움직이는 이미지를 만들 수 있다. 헤더의 Pini를 곡선 문자열의 현재 위치에 연결하여 변경시키면 된다. 물론 1점을 움직이는 시간 길이는 기본으로 정해 두어야 한다.By defining one type of file in the header level type or mode, you can create an image that moves along a vector of externally provided curved strings. This can be done by concatenating the Pini in the header to the current position of the curve string. Of course, the length of time to move one point should be set as a base.

그림의 종류에는 다른 그림을 따라 움직이게 하는 ROUTE, 화면에 구획을 만드는 REGION, 이들을 만드는 PATH, 움직이는 ANIMATION, 호출용 조각 그림을 모아 두는 LIBRARY, 호출 명령만을 모아 둔 DUMMYGRIM 등등이 있다.Types of pictures include ROUTE to move along another picture, REGION to create a section on the screen, PATH to make them, moving ANIMATION, LIBRARY to collect caller thumbnails, and DUMMYGRIM to collect only calling commands.

13. 상/하위 비트의 벡터를 이용한 겹 그림 작성13. Create overlap picture using vector of high / low bit

1바이트 단위의 벡터화소(10)에서 상위 4비트를 이용하는 여러 가지 경우를 기술해 왔지만 가장 평범한 이용은 하위 벡터와 마찬가지로 별도의 벡터로 쓰는 경우일 것이다. 다시 말해, 1바이트로 2개의 점을 표현하는 것이다. 도형의 경우는 정확히 메모리 소요가 반으로 줄어들 것이므로 폰트의 정의 같은 고정되고 적은 메 모리에 대한 요구가 큰 분야에 적용 가능하다.Although various cases of using the upper four bits in the vector pixel 10 of 1 byte unit have been described, the most common use will be the case of writing as a separate vector like the lower vector. In other words, two points are represented by one byte. In the case of figures, the memory requirement will be cut in half, so it is applicable to the field where fixed and small memory requirements such as font definition are large.

이미지의 경우는 색상 정보를 2중으로 관리해야 하기 때문에 단순히 2픽셀을 나타내는 용도로는 적합하지 않다. 따라서 이미지 위에 화살표나 심볼 같은 단일 색의 형상을 곁들여 표현하는데 적합하다. 하위 벡터를 원본 이미지로 볼 때 원본을 손상시키지 않으면서 추가 정보를 담을 수 있는 용도로 사용할 수 있다.In the case of an image, color information must be managed in duplicate, so it is not suitable for simply displaying 2 pixels. Therefore, it is suitable for displaying a single color shape such as an arrow or a symbol on an image. When viewing a subvector as an original image, it can be used to hold additional information without damaging the original.

좌우 대칭형이나 어떤 규칙에 따라서 2개의 직선이나 곡선이 움직이면서 일정한 형상을 만들어 내는 경우도 상/하위 비트를 독립적으로 움직여 겹 그림을 구현할 수 있다. 또한 2점 사이를 어떤 규칙으로 색상을 변경시키면서 채워 줄 필요가 있을 경우 적용이 가능하다.Even when two straight lines or curves move to form a certain shape by symmetrical symmetry or a certain rule, a layered picture can be realized by moving the upper and lower bits independently. It can also be applied if you need to fill the color between two points with some rules.

14. 문자 혼합 가능(可能)14. Characters can be mixed

본 발명에 따른 이미지 처리 시스템은 이미지 정보 속에 문자를 넣을 수 있는 기능을 몇 가지 마련해 두고 있다. 물론 화살표를 그리듯이 상위 벡터로 문자 모양을 그려 넣을 수도 있겠지만 이것은 문자라기보다 그림이다. 문자 정보로 삽입하는 것은 컨트롤 문자에 의한 것이다.The image processing system according to the present invention has several functions for inserting text into image information. Of course, you can also draw a glyph with the parent vector as if you were drawing an arrow, but this is more a picture than a letter. Inserting as character information is by control character.

문자를 넣을 수 있는 컨트롤 문자(21)가 3종 마련되어 있다. 2바이트 명령, 3바이트 명령, 무한 길이 명령이다. 2바이트, 3바이트 명령은 컨트롤 문자 뒤에 해당 길이의 문자 정보를 삽입하면 그만이니까 더 긴 설명이 필요 없다. Three kinds of control characters 21 which can put a character are provided. 2-byte, 3-byte, and infinite length instructions. The two-byte and three-byte commands only need to insert character information of that length after the control character, so no longer explanation is required.

문제는 무한 길이 명령이다. 0xff는 특수 컨트롤 문자로서 다음 번 0xff가 나올 때까지 기본적으로 문자열 정보로 인식한다. 헤더나 별도 설정된 mode에 0xff 직후 문자가 컨트롤의 종류라고 규정되어 있지 않으면 문자열 정보로 인식한다는 뜻이다. 문자열 데이터 속에는 32보다 적은 수는 없으니까 특별히 본 발명에 따른 방법의 데이터 체계와 충돌할 소지도 없다.The problem is the infinite length command. 0xff is a special control character that is basically recognized as string information until the next 0xff. If the character immediately after 0xff is not defined as a kind of control in the header or other set mode, it means that it is recognized as string information. Since there is no less than 32 in the string data, there is no particular conflict with the data system of the method according to the present invention.

파일 수준의 컨트롤 문자(21)로 기본 폰트 크기를 지정해 두고(이에 대한 컨트롤 문자는 별도로 구체적으로 예시하지는 않았다) 1포인트 증감에 따라 상, 하 벡터로 문자 크기를 조절할 수 있다. 문자가 인쇄될 위치는 0xff가 나타나기 전에 좌표 벡터로 관리되었을 것이므로 방향 벡터는 문자열 내부에서 필요가 없다. 따라서 벡터는 폰트 크기 관리에 사용할 수 있는 것이다. 물론 상위 벡터는 문자열 데이터와 충돌하여 쓸 수가 없다.The default font size is designated as the file-level control character 21 (the control character for this is not illustrated in detail), and the character size can be adjusted with the up and down vectors according to one-point increment. The direction vector is not needed inside the string because the position where the character will be printed would have been managed as a coordinate vector before 0xff appeared. Thus, vectors can be used to manage font sizes. Of course, higher vectors cannot collide with string data.

구체적인 내용을 기술하지는 않았지만 0xff 이후 첫 번째 바이트를 컨트롤 문자(21)로 사용하도록 정하고 폰트 종류, 폰트 크기, 문자 색상 등등 필요한 인자들을 컨트롤 할 수 있는 규정을 한다면 미세하게 관리가 된 문자열 정보를 내장시킬 수 있을 것이다.Although not described in detail, if the first byte after 0xff is defined as a control character (21) and a rule is provided to control necessary parameters such as font type, font size, and character color, finely managed string information may be embedded. Could be.

15. 컨트롤 비트를 이용한 동영상의 시계열 편집 15. Time series editing of video using control bits

mode의 CALLGRIM 스위치 비트의 값을 오토매터(Aotomata) 프로그램 내의 시계의 시간 흐름에 따라 자동으로 변경해 주어 하루 시간의 흐름에 따른 동영상물의 밝기 변경, 태양의 방향 변경에 따른 그림자 변경을 자동화할 수 있으며, 컨트롤 비트의 변경에 따른 영상물의 계절 변경, 바람 방향 변경 등을 자동화할 수 있다.By changing the value of the CALLGRIM switch bit of mode automatically according to the time flow of the clock in the automata program, it is possible to automate the change of the brightness of the video according to the time of day and the change of the shadow according to the direction of the sun. It is possible to automate the change of season, wind direction, etc. according to the change of control bit.

간단한 예를 든다면 호출용 그림을 밝은 그림, 어두운 그림의 2종(혹은 그 이상)으로 마련해 놓고 시간에 따라 밝은 그림의 스위치를 켜고 어두운 그림의 스위치를 끈다거나 그 반대 조작을 한다면 밝기 조절이 된다. 물론 더 미세한 조작을 위해서는 상기 10항에 설명한 것처럼 그림의 종류를 따로 마련하고 밝기 조절 프로그램을 내장시키면 된다.As a simple example, call pictures can be set up as two types (or more) of a bright picture, a dark picture, and the brightness is controlled by switching on the bright picture and switching off the dark picture over time. . Of course, for finer operation, as described in section 10, a kind of picture may be separately provided and a brightness control program may be incorporated.

지금까지 설명한 바와 같이, 본 발명에 따른 벡터화소를 이용한 이미지 처리 시스템의 구성 및 작용을 상기 설명 및 도면에 표현하였지만 이는 예를 들어 설명한 것에 불과하여 본 발명의 사상이 상기 설명 및 도면에 한정되지 않으며, 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 다양한 변화 및 변경이 가능함은 물론이다.As described so far, the configuration and operation of the image processing system using the vector pixel according to the present invention have been expressed in the above description and the drawings, but this is merely an example, and the spirit of the present invention is not limited to the above description and the drawings. Of course, various changes and modifications are possible without departing from the spirit of the present invention.

이상에서 설명한 바와 같이, 본 발명에 따른 벡터화소를 이용한 이미지 처리 시스템에 따르면,As described above, according to the image processing system using the vector pixel according to the present invention,

1) 이미지 데이터의 컴퓨터 메모리 저장용량을 줄여 컴퓨터의 주 기억장치, 디스크장치의 용량을 줄일 뿐만 아니라 데이터의 축소에 따른 처리속도 향상과 데이터 통신 시간을 단축할 수 있는 장점을 가지고,1) By reducing the computer memory storage capacity of image data, it not only reduces the capacity of the main memory and disk device of the computer, but also has the advantage of improving the processing speed and data communication time due to the reduction of data.

2) 많은 양의 이미지 정보를 다루고 이를 준비해야 하는 애니메이션이나 온 라인 게임 분야에서 영상자료 또는 동영상 제작을 위한 오토매타(Automata) 등과 같은 프로그램 도구 개발로 작업의 양을 대폭적으로 줄일 수 있다는 이점이 있으며,2) In the field of animation or online games that need to handle and prepare a large amount of image information, there is an advantage that the amount of work can be drastically reduced by the development of program tools such as automata for making video materials or videos. ,

3) 산업 부문에서 3차원 도면의 활용으로 조립도와 부품도가 따로 없는 종합적인 응용 CAD 프로그램을 실용화할 수 있고, 3차원 곡선의 해석으로 컴퓨터 제어 공작기계의 작동을 위한 프로그램 개발에 활용될 수 있고,3) The application of three-dimensional drawings in the industrial sector can be applied to a comprehensive application CAD program without assembly and parts, and the analysis of three-dimensional curves can be used to develop programs for the operation of computer-controlled machine tools. ,

4) 기타, 이미지의 국부적인 부분을 바꾸는 몽따쥬, 확대축소가 요구되고 선과 윤곽, 문자 정보 등이 혼합되어야 하는 지도 작성 등의 부문에서 획기적인 효과를 발휘할 수가 있다.4) Others, such as montage to change the local parts of the image, maps that need to be reduced and mixed with lines, outlines, text information, etc. can have a significant effect.

Claims (9)

벡터화소를 이용한 이미지 처리 시스템으로서,An image processing system using vector pixels, X, Y축에 따른 상, 하, 좌, 우, 좌상, 우상, 좌하, 우하 방향에 대한 8가지 벡터 중 어느 하나의 벡터 정보를 1 바이트 중 하위 4비트에 저장한 벡터정보부로 이루어진 벡터화소;A vector pixel comprising a vector information unit storing vector information of any one of eight vectors for up, down, left, right, top, bottom, top, bottom, and bottom directions along the X and Y axes in the lower four bits of one byte; 상기 벡터화소가 조합되어 부분 이미지를 구성하되 말미에 부분 이미지의 경계를 의미하는 경계표시자를 구비한 데이터단위구조;A data unit structure in which the vector pixels are combined to form a partial image, and having a landmark indicator at the end indicating a boundary of the partial image; 상기 데이터단위구조가 조합되어 전체 이미지를 구성하되 말미에 전체 이미지의 종결을 의미하는 터미네이터를 구비한 데이터 부;A data unit having a terminator for combining the data unit structure to form an entire image and ending the entire image; 특정 명령에 따라 상기 데이터 부를 구성하고 이 데이터 부를 근거로 컴퓨터 이미지 파일을 생성 및 저장하는 파일 생성부;A file generator for constructing the data portion according to a specific command and generating and storing a computer image file based on the data portion; 상기 파일 생성부에 의해 생성된 이미지 파일의 벡터 정보에 따라 방향 표시를 처리함으로 이미지를 구현하는 데이터 처리부;로 구성된 것을 특징으로 하는, 벡터화소를 이용한 이미지 처리 시스템.And a data processor which implements an image by processing a direction indication according to the vector information of the image file generated by the file generator. 2. 제 1항에 있어서,The method of claim 1, 상기 벡터화소의 1 바이트에서 상기 벡터정보부 전방의 상위 4비트 중 2비트에는 Z축에 따른 전, 후 방향에 대한 벡터 정보가 저장되어 있는 것을 특징으로 하는, 벡터화소를 이용한 이미지 처리 시스템.2 bits of the upper 4 bits in front of the vector information unit in one byte of the vector pixel, the vector information for the front and rear directions along the Z-axis is stored. 제 1항에 있어서,The method of claim 1, 상기 벡터화소의 1 바이트에서 상기 벡터정보부 전방의 상위 4비트에는 상기 벡터정보부에 있는 벡터 정보와 동일한 벡터 정보가 수록되어 있는 것을 특징으로 하는, 벡터화소를 이용한 이미지 처리 시스템.And the same vector information as the vector information in the vector information section is stored in the upper 4 bits in front of the vector information section in one byte of the vector pixel. 제 1항에 있어서,The method of claim 1, 상기 벡터화소는, RGB 색상 값을 저장한 3바이트의 색상정보부를 더 포함하여 총 4바이트의 단위를 가지는 확장형 벡터화소인 것을 특징으로 하는, 벡터화소를 이용한 이미지 처리 시스템.The vector pixel is an extended vector pixel having a unit of 4 bytes in total, further comprising a 3 byte color information unit storing an RGB color value. 제 1항에 있어서,The method of claim 1, 상기 벡터화소의 기능을 보조하기 위하여 좌표값 내지 추가 벡터 정보 내지 색상 정보 중 어느 하나의 정보를 컨트롤 명령 형식으로 수록함으로 상기 데이터단위구조에서 상기 벡터화소와 조합 구성되는 적어도 4바이트로 이루어진 것으로, In order to assist the function of the vector pixel, information of any one of coordinate values, additional vector information, and color information is recorded in the form of a control command, and the data unit structure is composed of at least 4 bytes in combination with the vector pixel. 컨트롤 명령 정보가 수록된 컨트롤 문자와, 상기 컨트롤 문자에 대한 명령 처리에 필요한 컨트롤 파라미터로 구성된 컨트롤 부;를 추가로 구비하는 것을 특징으로 하는, 벡터화소를 이용한 이미지 처리 시스템.And a control unit comprising a control character containing control command information and a control parameter necessary for processing a command for the control character. 제 5항에 있어서,The method of claim 5, 상기 컨트롤 문자는, 상기 컨트롤 문자임을 표시하는 일정 값을 가진 컨트롤 문자 표시자와, 컨트롤의 종류를 식별하기 위한 컨트롤 문자 식별자로 구성된 것을 특징으로 하는, 벡터화소를 이용한 이미지 처리 시스템.The control character is an image processing system using a vector pixel, characterized in that consisting of a control character indicator having a predetermined value indicating that the control character, and a control character identifier for identifying the type of control. 제 5항 또는 제 6항에 있어서,The method according to claim 5 or 6, 상기 컨트롤 부는,The control part, 상기 컨트롤 문자는 상기 컨트롤 문자 식별자에 16가지의 명령이 수록될 수 있도록 1바이트로 이루어지고, 상기 컨트롤 파라미터는 상기 컨트롤 문자의 명령 처리를 할 수 있는 공간으로서 3바이트로 이루어진 것을 특징으로 하는, 벡터화소를 이용한 이미지 처리 시스템.The control character is composed of 1 byte so that 16 commands can be included in the control character identifier, and the control parameter is a space for command processing of the control character. Image processing system using pixels. 제 5항 또는 제 6항에 있어서,The method according to claim 5 or 6, 상기 컨트롤 부는,The control part, 상기 컨트롤 문자는 상기 컨트롤 문자 식별자에 255가지의 명령이 수록될 수 있도록 2바이트로 이루어지고, 상기 컨트롤 파라미터는 상기 컨트롤 문자의 명령 처리를 할 수 있는 공간으로서 2바이트로 이루어진 것을 특징으로 하는, 벡터화소를 이용한 이미지 처리 시스템.The control character is composed of 2 bytes so that 255 kinds of commands can be stored in the control character identifier, and the control parameter is a space capable of command processing of the control character. Image processing system using pixels. 제 1항에 있어서,The method of claim 1, 상기 데이터 부의 기능을 보조 내지 명령 처리를 선언하기 위하여 시작점 내 지 좌표값 내지 추가 벡터 정보 내지 색상 정보 중 어느 하나의 정보를 명령 형식으로 수록함으로 상기 데이터 부의 전방에 헤더;를 추가로 구비하는 것을 특징으로 하는, 벡터화소를 이용한 이미지 처리 시스템.And a header in front of the data unit by including any one of the starting point, the coordinate value, the additional vector information, and the color information in a command format in order to declare the function of the data unit or to declare the command processing. An image processing system using a vector pixel.
KR1020060092801A 2006-04-10 2006-09-25 System of processing image for vector pixel KR100679289B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US11/697,465 US7916141B2 (en) 2006-04-10 2007-04-06 Image processing system using vector pixel

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020060032274 2006-04-10
KR20060032274 2006-04-10

Publications (1)

Publication Number Publication Date
KR100679289B1 true KR100679289B1 (en) 2007-02-06

Family

ID=38105510

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020060092801A KR100679289B1 (en) 2006-04-10 2006-09-25 System of processing image for vector pixel

Country Status (1)

Country Link
KR (1) KR100679289B1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100955949B1 (en) 2008-07-01 2010-05-03 삼성전기주식회사 image data processing method and recording media for the same
KR100958159B1 (en) 2008-07-01 2010-05-18 삼성전기주식회사 image data processing method and recording media for the same

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR19990062869A (en) * 1997-12-08 1999-07-26 이데이 노부유끼 Data conversion device and image generating device
US6088034A (en) 1995-08-04 2000-07-11 Sun Microsystems, Inc. Decompression of surface normals in three-dimensional graphics data

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6088034A (en) 1995-08-04 2000-07-11 Sun Microsystems, Inc. Decompression of surface normals in three-dimensional graphics data
US6307557B1 (en) 1995-08-04 2001-10-23 Sun Microsystems, Inc. Decompression of three-dimensional graphics data including quantization, delta-encoding, and variable-length encoding
KR19990062869A (en) * 1997-12-08 1999-07-26 이데이 노부유끼 Data conversion device and image generating device

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100955949B1 (en) 2008-07-01 2010-05-03 삼성전기주식회사 image data processing method and recording media for the same
KR100958159B1 (en) 2008-07-01 2010-05-18 삼성전기주식회사 image data processing method and recording media for the same

Similar Documents

Publication Publication Date Title
JP4796500B2 (en) Markup language and object model for vector graphics
JP5419822B2 (en) Image processing apparatus, image display apparatus, image processing method, and data structure of image file
JPH06309466A (en) Equipment and method for displaying graphical image
JP5218109B2 (en) Visualization data processing device, visualization data processing device control method, and visualization data processing device control program
CN111324837B (en) Three-dimensional chart visualization method and device based on GIS system at web front end
JPH0627930A (en) Method and apparatus for formation, storage generation of three-dimensional image font character and for execution of three- dimensional typesetting
JP2007509420A (en) Video and scene graph interface
CN116670723A (en) System and method for high quality rendering of composite views of customized products
JP5028263B2 (en) Presentation display device, computer control method and program
CN110428504B (en) Text image synthesis method, apparatus, computer device and storage medium
US7916141B2 (en) Image processing system using vector pixel
US8669996B2 (en) Image processing device and image processing method
KR100679289B1 (en) System of processing image for vector pixel
JP3350473B2 (en) Three-dimensional graphics drawing apparatus and method for performing occlusion culling
JP2012014657A (en) Image display device and control method thereof, and program and recording medium
CN113436307B (en) Mapping algorithm based on osgEarth image data to UE4 scene
JP3979162B2 (en) Image processing apparatus and method
CN111563929B (en) 2.5D webpage development method based on browser
KR100848687B1 (en) 3-dimension graphic processing apparatus and operating method thereof
JP3002972B2 (en) 3D image processing device
JP2000339499A (en) Texture mapping and texture mosaic processor
JP2004233711A (en) Map data construction system
JP5481751B2 (en) Concealment processing program, visualization processing method and apparatus
JP3317201B2 (en) Information display device and recording medium recording information display program
TW397695B (en) A method for generating polygon data, and a video image processor and an extended functional board employing the same

Legal Events

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

Payment date: 20121123

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20140124

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20141128

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20160111

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20171128

Year of fee payment: 12

LAPS Lapse due to unpaid annual fee