JPH0831138B2 - Polygonal fill device in scanning display device - Google Patents

Polygonal fill device in scanning display device

Info

Publication number
JPH0831138B2
JPH0831138B2 JP60215771A JP21577185A JPH0831138B2 JP H0831138 B2 JPH0831138 B2 JP H0831138B2 JP 60215771 A JP60215771 A JP 60215771A JP 21577185 A JP21577185 A JP 21577185A JP H0831138 B2 JPH0831138 B2 JP H0831138B2
Authority
JP
Japan
Prior art keywords
vertex
data
minimum value
polygon
maximum value
Prior art date
Legal status (The legal status 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 status listed.)
Expired - Lifetime
Application number
JP60215771A
Other languages
Japanese (ja)
Other versions
JPS6274164A (en
Inventor
達彦 大阪
智章 上田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Daikin Industries Ltd
Original Assignee
Daikin Industries Ltd
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 Daikin Industries Ltd filed Critical Daikin Industries Ltd
Priority to JP60215771A priority Critical patent/JPH0831138B2/en
Priority to US06/911,551 priority patent/US4791582A/en
Publication of JPS6274164A publication Critical patent/JPS6274164A/en
Publication of JPH0831138B2 publication Critical patent/JPH0831138B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Digital Computer Display Output (AREA)
  • Image Generation (AREA)

Description

【発明の詳細な説明】 〈産業上の利用分野〉 この発明は走査型ディスプレイ装置上に一筆書き状に
表示される多角形の内部をぬりつぶす装置に関する。
Description: BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a device for filling the inside of a polygon displayed in a single stroke on a scanning display device.

〈従来の技術〉 従来から走査型ディスプレイ上に一筆書き状に表示さ
れる多角形の内部をぬりつぶす方式が採用されている。
<Prior Art> Conventionally, a method of filling the inside of a polygon displayed in a single stroke on a scanning display has been adopted.

上記多角形の形状は種々雑多であり、大別すれば、第
9図に示すように1走査線を1の連続部分のみに区画す
るもの、および第10図に示すように1走査線を2以上の
連続部分に区画する可能性があるものに区分される。
The shapes of the polygons are various, and roughly classified, one scanning line is divided into only one continuous portion as shown in FIG. 9 and one scanning line is divided into two as shown in FIG. It is divided into those that may be divided into the above continuous parts.

そして、第9図に示す多角形であれば、走査線との交
点の間の領域を単純にぬりつぶし表示すればよいのであ
るが、第10図に示す多角形であれば、走査線との交点が
2対以上となる部分が存在し、何れの交点同士の間の領
域をぬりつぶし表示すべきかを判別する必要がある。
Then, in the case of the polygon shown in FIG. 9, the area between the intersections with the scanning lines can be simply filled and displayed. However, in the case of the polygon shown in FIG. 10, the intersections with the scanning lines can be obtained. There are two or more pairs, and it is necessary to determine which of the intersections should be filled and displayed.

このような点を考慮して、上記のぬりつぶし方式とし
ては、多角形の各頂点データを、走査線の方向と直角な
処理方向についてソーティングし、必要があれば走査線
の方向についてソーティングし、走査線と交点を有する
稜線のリストを作成して、始点−終点として対応する稜
線の間を補間する。そして、全ての走査線について上記
稜線のリストの作成、および対応する稜線の間の補間を
行なうことにより、多角形の内部をぬりつぶし表示する
方式が採用され、どのような種類の多角形でも、内部を
ぬりつぶすことができるようにしている。
In consideration of such a point, as the above-mentioned filling method, each vertex data of the polygon is sorted in the processing direction perpendicular to the scanning line direction, and if necessary, in the scanning line direction, and then scanned. A list of edges having intersections with lines is created and interpolation is performed between the corresponding edges as a start point-end point. Then, by creating a list of the above-mentioned ridge lines for all scanning lines and performing interpolation between the corresponding ridge lines, a method of displaying the inside of the polygon in a solid state is adopted. So that it can be filled.

また、上記第9図に示す種類の多角形についてのみ内
部をぬりつぶすことができるようにした方式としては、
画像メモリと別個に面生成用メモリプレーンを有し、多
角形の各頂点のデータに基いて隣り合う頂点間を補間す
ることにより多角形の閉ループを表わす閉ループデータ
を画像メモリに書込むと同時に面生成用メモリプレーン
にも閉ループデータを書込み、この閉ループデータの最
大値、および最小値を検出しておき、最大値、および最
小値により定まる領域についてのみ上記面生成用メモリ
プレーンを走査して上記閉ループデータを読出すに際
し、各走査毎に閉ループと走査ラインとの交点を得、一
対の交点の間に対応させて、上記画像メモリ、または面
生成用メモリプレーンに所定の論理信号を書込んで、上
記閉ループで囲まれる領域内を所定の表示データでぬり
つぶした面画像データを生成する方式がある(特開昭55
−3069号公報、および特開昭55−3070号公報参照)。
Further, as a method capable of filling the inside only with respect to the polygon of the type shown in FIG.
It has a memory plane for surface generation separately from the image memory and writes closed loop data representing the closed loop of the polygon to the image memory by interpolating between adjacent vertices based on the data of each vertex of the polygon. The closed-loop data is also written in the generation memory plane, the maximum value and the minimum value of the closed-loop data are detected, and the surface generation memory plane is scanned only in the area determined by the maximum value and the minimum value to close the closed-loop data. When reading the data, the intersection of the closed loop and the scan line is obtained for each scan, and a predetermined logic signal is written in the image memory or the plane for memory generation in correspondence with a pair of intersections, There is a method of generating surface image data in which a region surrounded by the closed loop is filled with predetermined display data (Japanese Patent Laid-Open No. 55-55).
-3069, and JP-A-55-3070).

〈発明が解決しようとする問題点〉 上記前者の方式であれば、処理方向についてのソーテ
ィングを行なうことが必須であり、しかも演算の対象と
する稜線のリストを作成して管理しなければならないの
で、メモリの管理が必要になるという問題があるととも
に、データの読出し、ソーティング、演算等の処理、デ
ータの書込み等、CPUによる処理が多くなり、データが
与えられてから内部がぬりつぶされた多角形を走査型デ
ィスプレイ上に表示するまでに長時間がかかるという問
題がある。
<Problems to be Solved by the Invention> In the former method, it is indispensable to sort the processing directions, and moreover, a list of ridge lines to be operated must be created and managed. In addition to the problem that memory management is required, there is more processing by the CPU such as data reading, sorting, calculation, etc., data writing, etc. There is a problem that it takes a long time to display on the scanning display.

また、上記後者の方式であれば、直線補間回路が1回
路しかなく、しかも多角形の各稜線の補間が何れの頂点
から開始するのかが分からないので、画像メモリとは別
個に面表示を行なうための、特別のメモリが多重に必要
になるという問題があるのみならず、面表示のために、
メモリからのデータの読出し、およびメモリへのデータ
の書込みに長時間がかかるとともに、直線補間されるべ
き稜線の始点と終点とを得るまでに長時間がかかり、直
線補間回路がかなりの時間ウェイト状態になるので、デ
ータが与えられてから内部がぬりつぶされた多角形を走
査型ディスプレイ上に表示するまでに長時間がかかると
いう問題がある。
Further, in the latter method, since there is only one linear interpolation circuit and it is not known from which vertex the interpolation of each ridgeline of the polygon starts, surface display is performed separately from the image memory. In addition to the problem that special memory is required for multiple,
It takes a long time to read the data from the memory and write the data to the memory, and it takes a long time to obtain the start point and the end point of the ridge line to be linearly interpolated, and the linear interpolation circuit waits for a considerable time. Therefore, there is a problem that it takes a long time to display the polygon whose interior is filled in on the scanning display after the data is given.

〈発明の目的〉 この発明は上記の問題点に鑑みてなされたものであ
り、ぬりつぶしのために必要なメモリの増加を抑制し、
しかもデータが与えられてから内部がぬりつぶされた多
角形を走査型ディスプレイ上に表示するまでの所要時間
を短縮することができる走査型ディスプレイ装置におけ
る多角形ぬりつぶし装置を提供することを目的としてい
る。
<Object of the Invention> The present invention has been made in view of the above problems, and suppresses an increase in memory required for filling,
Moreover, it is an object of the present invention to provide a polygon filling device for a scanning display device, which can shorten the time required from displaying data to displaying a polygon whose inside is filled on a scanning display.

〈問題点を解決するための手段〉 1走査線を1の連続部分のみに区画する多角形の頂点
データを、転送順に、順次格納するリストメモリと、走
査方向と直角な方向についての各頂点の座標値の最大
値、および最小値に対応する頂点を、当該頂点の転送順
位とリストメモリに記憶することにより検出する頂点検
出手段と、頂点検出手段により検出された最大値、およ
び最小値に対応する頂点を基準とし、かつ転送順序に基
づいて頂点を区分する区分手段と、区分手段により区分
された各区分毎に頂点検出手段により検出された最大値
に対応する頂点から頂点検出手段により検出された最小
値に対応する頂点に向かって互に隣り合う頂点同士の頂
点データを補間し、かつこの補間を両区分について並行
して行なうことにより、同時に1対の稜線データを得る
稜線データ算出手段と、走査線と稜線データ算出手段に
より得られた1対の稜線との交点を、上記転送順序およ
び稜線の補間順序に対応させて始点または終点とする始
終点算出手段と、頂点検出手段により検出された最大
値、および最小値に対応する両頂点の何れか一方から他
方に向かって順に、始点と終点との間に対応する走査線
部分をぬりつぶし表示するぬりつぶし表示手段とを含む
ものである。
<Means for Solving Problems> A list memory that sequentially stores polygon vertex data that divides one scanning line into only one continuous portion in the transfer order, and a vertex memory in a direction orthogonal to the scanning direction. Corresponds to the vertex detection means for detecting the vertex corresponding to the maximum value and the minimum value of the coordinate values by storing the transfer order of the vertex and the list memory, and the maximum value and the minimum value detected by the vertex detection means. The vertex detecting means detects the vertex from the vertex corresponding to the maximum value detected by the vertex detecting means for each of the partitions divided by the dividing means, based on the vertices as the reference and based on the transfer order. By interpolating the vertex data of the vertices adjacent to each other toward the vertex corresponding to the minimum value, and performing this interpolation in parallel for both sections, a pair of ridge line data is simultaneously obtained. The calculation of the start and end points is based on the ridge line data calculating means for obtaining the data and the intersection of the scanning line and the pair of ridge lines obtained by the ridge line data calculating means as the start point or the end point corresponding to the transfer order and the interpolation order of the ridge lines Means and the maximum value and the minimum value detected by the apex detection means, in order from one of the two vertices corresponding to the other toward the other, a scanning line portion corresponding to the area between the start point and the end point is displayed as a solid display. And means.

上記の装置であれば、1走査線を1の連続部分のみに
区画する多角形の各頂点データを、転送順、即ち一筆書
き状の順序でリストメモリに格納し、走査方向と直角な
方向についての各頂点の座標値の最大値、および最小値
に対応する頂点を、当該頂点の転送順位を記憶すること
により検出し、最大値、および最小値に対応する頂点を
基準とし、かつ転送順序を考慮して頂点を区分する。そ
して、一方の区分については、リストメモリに格納され
た順序にしたがって、最大値に対応する頂点から最小値
に対応する頂点に向かって互に隣り合う頂点同士に頂点
データを補間して得た稜線データと走査線との交点を、
転送順序が左回りであるか、右回りであるかに対応させ
て始点または終点とし、他方の区分については、リスト
メモリに格納された順序と逆の順序にしたがって、最大
値に対応する頂点から最小値に対応する頂点に向かって
互に隣り合う頂点同士の頂点データを補間して同時に得
た1対の稜線データと走査線との交点を、転送順序が左
回りであるか、右回りであるかに対応させて終点または
始点とし、最大値に対応する頂点から最小値に対応する
頂点に向かって、または最小値に対応する頂点から最大
値に対応する頂点に向かって、順に、始点と終点との間
に対応する走査線部分をぬりつぶし表示することによ
り、内部がぬりつぶされた多角形を走査型ディスプレイ
上に表示することができる。
In the case of the above apparatus, each vertex data of a polygon that divides one scanning line into only one continuous portion is stored in the list memory in the transfer order, that is, the one-stroke writing order, and the direction perpendicular to the scanning direction is stored. The vertices corresponding to the maximum and minimum coordinate values of each vertex are detected by storing the transfer order of the vertices, the vertices corresponding to the maximum value and the minimum value are used as a reference, and the transfer order is determined. Divide the vertices in consideration. Then, for one of the sections, the ridge line obtained by interpolating the vertex data between the vertices adjacent to each other from the vertex corresponding to the maximum value to the vertex corresponding to the minimum value according to the order stored in the list memory. The intersection of the data and the scan line,
Depending on whether the transfer order is left-handed or right-handed, the start point or the end point is set, and for the other division, from the vertex corresponding to the maximum value according to the order opposite to the order stored in the list memory. The intersection of the pair of ridge line data and the scanning line, which are obtained simultaneously by interpolating the vertex data of the vertices adjacent to each other toward the vertex corresponding to the minimum value, is transferred in the counterclockwise or clockwise direction. Depending on whether there is an end point or a start point, from the vertex corresponding to the maximum value to the vertex corresponding to the minimum value, or from the vertex corresponding to the minimum value to the vertex corresponding to the maximum value, in order, By painting the corresponding scanning line portion between the end point and the end point, a polygon whose interior is filled can be displayed on the scanning display.

また、上記走査方向と直角な方向についての各頂点の
座標値の最大値、および最小値に対応する頂点の検出
を、当該頂点の転送順位を記憶することにより行なうも
のであるから、転送順位のみに基いて始点側の稜線、お
よび終点側の稜線を把握することができ、カウンタ等の
ハードウェアによる対応が可能となる。
Further, since the vertices corresponding to the maximum value and the minimum value of the coordinate values of each vertex in the direction perpendicular to the scanning direction are detected by storing the transfer order of the vertex, only the transfer order is stored. Based on the above, the ridgeline on the start point side and the ridgeline on the end point side can be grasped, and it becomes possible to deal with the hardware such as a counter.

〈実施例〉 以下、実施例を示す添付図面によって詳細に説明す
る。
<Examples> Hereinafter, detailed description will be given with reference to the accompanying drawings illustrating examples.

第1図はこの発明の多角形ぬりつぶし方式を実施する
ための、一実施例を示すブロック図である。
FIG. 1 is a block diagram showing an embodiment for carrying out the polygon filling method of the present invention.

図において、座標変換処理、クリッピング処理等が施
された図形データ(例えば第9図に示す多角形の各頂点
の座標値、輝度値を示すデータ)が、最大、最小値頂点
検出回路(1)、リストメモリ(2)、およびリストメ
モリ制御回路(3)に印加されている。そして、リスト
メモリ制御回路(3)による制御下においてリストメモ
リ(2)から読出された頂点データが左一辺終了検出回
路(4)、右一辺終了検出回路(5)、および一多角形
終了検出回路(6)に印加されているとともに、左辺補
間回路(7)、右辺補間回路(8)にも印加され、上記
左辺補間回路(7)、および右辺補間回路(8)からの
補間データがDDA回路(直線補間描画回路)(9)に印
加されている。さらに、上記左一辺終了検出回路
(4)、右一辺終了検出回路(5)、および一多角形終
了検出回路(6)からの終了検出信号が上記リストメモ
リ制御回路(3)に印加されている。
In the figure, the figure data subjected to coordinate conversion processing, clipping processing, etc. (for example, the data indicating the coordinate value and the brightness value of each vertex of the polygon shown in FIG. 9) is the maximum and minimum value vertex detection circuit (1). , List memory (2) and list memory control circuit (3). Then, the vertex data read from the list memory (2) under the control of the list memory control circuit (3) has the left one side end detection circuit (4), the right one side end detection circuit (5), and the one polygon end detection circuit. In addition to being applied to (6), it is also applied to the left side interpolation circuit (7) and the right side interpolation circuit (8), and the interpolation data from the above left side interpolation circuit (7) and right side interpolation circuit (8) is the DDA circuit. (Linear interpolation drawing circuit) (9). Further, the end detection signals from the left one-side end detection circuit (4), the right one-side end detection circuit (5), and the one-polygon end detection circuit (6) are applied to the list memory control circuit (3). .

上記最大、最小値頂点検出回路(1)は、第2図に示
すように、データバス(11)を通して転送される多角形
の角数データが当初入力され、頂点データが入力される
毎にカウントダウンする角数ダウンカウンタ(12)と、
上記多角形の各頂点データを入力として最大値、最小値
をそれぞれ検出する最大値検出回路(13)、最小値検出
回路(14)と、ポインタ用アップカウンタ(15)と、上
記最大値検出回路(13)からのラッチ信号に基いてポイ
ンタ用アップカウンタ(15)からのポインタ信号をラッ
チする最大値ポインタラッチ回路(16)と、上記最小値
検出回路(14)からのラッチ信号に基いてポインタ用ア
ップカウンタ(15)からのポインタ信号をラッチする最
小値ポインタラッチ回路(17)とを有している。
As shown in FIG. 2, the maximum / minimum value vertex detection circuit (1) is initially inputted with polygonal corner number data transferred through the data bus (11), and counts down every time vertex data is inputted. With the angle down counter (12),
A maximum value detection circuit (13), a minimum value detection circuit (14) for respectively detecting the maximum value and the minimum value by inputting each vertex data of the polygon, an up counter for pointer (15), and the maximum value detection circuit A maximum value pointer latch circuit (16) that latches the pointer signal from the pointer up counter (15) based on the latch signal from (13), and a pointer based on the latch signal from the minimum value detection circuit (14). And a minimum value pointer latch circuit (17) for latching the pointer signal from the up counter (15).

そして、上記角数ダウンカウンタ(12)からのカウン
トゼロ信号を上記最大値ポインタラッチ回路(16)、お
よび最小値ポインタラッチ回路(17)に印加することに
より、各ポインタラッチ回路(16)(17)にラッチされ
ているポインタを上記データバス(11)に出力すること
ができるようにしている。
Then, the count zero signal from the angle down counter (12) is applied to the maximum value pointer latch circuit (16) and the minimum value pointer latch circuit (17), whereby each pointer latch circuit (16) (17) ), The pointer latched in () can be output to the data bus (11).

即ち、多角形の各頂点データをリストメモリ(2)に
書込む間に、最大値、最小値に対応するポインタを得、
多角形の全ての頂点データの書込みを終了した時点で、
上記ポインタをリストメモリ(2)に書込むことがで
き、ポインタを得るための特別の処理時間は必要でない
ことになる。
That is, while writing each vertex data of the polygon into the list memory (2), the pointers corresponding to the maximum value and the minimum value are obtained,
When the writing of all vertex data of the polygon is completed,
The pointer can be written to the list memory (2) and no special processing time is needed to get the pointer.

上記リストメモリ(2)は、第3図に示すように、行
アドレスと列アドレスとで各データのアドレスを割付け
られているものであり、行アドレスが0であり、かつ列
アドレスが0であるメモリエリアに多角形の角数データ
を格納し、行アドレスが1からnであるメモリエリアに
多角形(nの角数の多角形)の各頂点データを格納し、
行アドレスがn+1であり、かつ列アドレスが0である
メモリエリアに最大値ポインタを格納し、行アドレスが
n+1であり、かつ列アドレスが1であるメモリエリア
に最小値ポインタを格納している。そして、上記行アド
レスが1からnまでのメモリエリアは、列アドレスが0
から3までのメモリエリアに区画されており、2次元輝
度変化なし、2次元輝度変化あり、3次元輝度変化な
し、および3次元輝度変化ありの各モードの何れのデー
タ(x,y),(x,y,I),(x,y,z),(x,y,z,I)にも対
応できるようにしている。
In the list memory (2), as shown in FIG. 3, the address of each data is assigned by the row address and the column address, and the row address is 0 and the column address is 0. The polygon corner number data is stored in the memory area, and each vertex data of the polygon (polygon with the number of corners n) is stored in the memory area whose row address is 1 to n.
The maximum value pointer is stored in the memory area where the row address is n + 1 and the column address is 0, and the minimum value pointer is stored in the memory area where the row address is n + 1 and the column address is 1. The memory area having the row addresses 1 to n has the column address 0.
It is divided into memory areas from 3 to 3, and has no 2D luminance change, 2D luminance change, 3D luminance change, and 3D luminance change data (x, y), ( x, y, I), (x, y, z), (x, y, z, I) are also supported.

以後の多角形についても、同様の配列(多角形の角数
データ、各頂点データ、最大値ポインタ、および最小値
ポインタの配列)で各メモリエリアにデータが格納され
ている。
For the subsequent polygons, data is stored in each memory area in the same array (polygon angle data, each vertex data, maximum value pointer, and minimum value pointer array).

上記リストメモリ制御回路(3)は、第4図に示すよ
うに、先頭行アドレスと、多角形の角数に1を加算して
得たデータとを加算して最大値ポインタ、および最小値
ポインタが格納されている行アドレス(第3図の場合に
はn+1)を得、上記行アドレスに格納されている最大
値ポインタと、上記先頭行アドレスとを加算することに
より最大値行アドレスを得ることができる。もちろん最
小値ポインタと先頭行アドレスとを加算することにより
最小値行アドレスを得ることができる。
As shown in FIG. 4, the list memory control circuit (3) adds the first row address and the data obtained by adding 1 to the number of corners of the polygon to obtain a maximum value pointer and a minimum value pointer. To obtain the maximum value row address (n + 1 in the case of FIG. 3) and add the maximum value pointer stored in the above row address and the above-mentioned first row address to obtain the maximum value row address. You can Of course, the minimum value row address can be obtained by adding the minimum value pointer and the top row address.

したがって、最大値ポインタ、および最小値ポインタ
に基いて簡単に、最大値、および最小値に対応する頂点
の行アドレスを得ることができ、例えば、転送されてく
る多角形の各頂点データの順序が反時計回りであれば、
行アドレスを順次増加させることにより(例えば、与え
られた多角形の角数nと等しい進数のアップカウンタを
順次カウントしてゆくことにより)、最大値に対応する
頂点から最小値に対応する頂点に向かう頂点データを順
次得ることができ、または行アドレスを順次減少させる
ことにより(例えば、与えられた多角形の角数nと等し
い進数のダウンカウンタを順次カウントしてゆくことに
より)、最小値に対応する頂点から最大値に対応する頂
点に向かう頂点データを逆の順序、即ち、最大値に対応
する頂点から最小値に対応する頂点に向かう順序で順次
得ることができる。
Therefore, the row address of the vertex corresponding to the maximum value and the minimum value can be easily obtained based on the maximum value pointer and the minimum value pointer. For example, the order of the vertex data of the transferred polygon is Counterclockwise,
By sequentially increasing the row address (for example, by sequentially counting the up-counter with a decimal number equal to the number n of angles of the given polygon), the vertex corresponding to the maximum value is changed to the vertex corresponding to the minimum value. The heading vertex data can be obtained sequentially, or by decreasing the row address sequentially (eg, by sequentially counting down counters with a decimal number equal to the number of corners n of a given polygon), to the minimum value. The vertex data from the corresponding vertex to the vertex corresponding to the maximum value can be sequentially obtained in the reverse order, that is, the order from the vertex corresponding to the maximum value to the vertex corresponding to the minimum value.

上記左一辺終了検出回路(4)は、第5図に示すよう
に、y座標(走査線と直角な方向の座標)を基準とし
て、開始点(y座標がy0)から一点補間する毎にy座標
値を減算し、稜線の終了点のy座標値ynと一致した時点
での1の稜線の補間が終了したことを検出し、終了検出
信号をリストメモリ制御回路(3)に印加する。
As shown in FIG. 5, the left one-side end detection circuit (4) uses the y-coordinate (coordinates in the direction perpendicular to the scanning line) as a reference, and performs y-interpolation at each point from the start point (y-coordinate is y0). The coordinate value is subtracted, and it is detected that the interpolation of the edge line of 1 at the time when the y-coordinate value yn of the end point of the edge line coincides is completed, and the end detection signal is applied to the list memory control circuit (3).

上記右一辺終了検出回路(5)についても同様であ
る。
The same applies to the right side end detection circuit (5).

上記一多角形終了検出回路(6)は、第6図に示すよ
うに、y座標値が最大の点ymaxから左右両辺の補間を行
なってゆき、y座標値が最小値yminと一致した時点で1
の多角形の処理が終了したことを検出し、終了検出信号
をリストメモリ制御回路(3)に印加する。
As shown in FIG. 6, the one-polygon end detection circuit (6) performs interpolation on both left and right sides from the point ymax having the maximum y coordinate value, and when the y coordinate value matches the minimum value ymin. 1
It is detected that the processing of the polygon has been completed, and an end detection signal is applied to the list memory control circuit (3).

上記左辺補間回路(7)、および右辺補間回路(8)
は、例えば、多角形の各頂点データが反時計回りに転送
され、しかもy座標値の最大値から順に補間を行なって
ゆく場合には、それぞれ左側の稜線に対応する頂点アド
レス用アップカウンタ、右側の稜線に対応する頂点アド
レス用ダウンカウンタを有し、両カウンタに初期値とし
てy座標値の最大値アドレスをロードし、第7図に示す
ように、最大値アドレスを基準として同時にカウントア
ップ、およびカウントダウンを行ない、左右の稜線を同
時に補間し、左の稜線の補間値を始点、右の稜線の補間
値を終点としてDDA回路(9)に印加する。
The left side interpolation circuit (7) and the right side interpolation circuit (8)
Is, for example, when each vertex data of the polygon is transferred counterclockwise and the interpolation is performed in order from the maximum y coordinate value, the vertex address up counter corresponding to the left edge line, Has a down counter for the vertex address corresponding to the ridge line, loads the maximum value address of the y coordinate value as an initial value into both counters, and simultaneously counts up with the maximum value address as a reference, as shown in FIG. A countdown is performed, the left and right ridge lines are simultaneously interpolated, and the interpolated value of the left ridge line is applied to the DDA circuit (9) with the interpolated value of the right ridge line as the end point.

以上の構成であれば、座標変換、クリッピング等が施
されたデータ(多角形の角数データ、および各頂点デー
タ)をリストメモリ(2)に格納する間に、最大、最小
値頂点検出回路(1)により、走査線とy座標値(走査
線と直角な方向の座標値)の最大値、および最小値に対
応する頂点のポインタを検出して、リストメモリ(2)
の上記データの後に格納する。
With the above configuration, the maximum / minimum value vertex detection circuit (while storing the data (polygon angle data and each vertex data) subjected to coordinate conversion, clipping, etc. in the list memory (2). According to 1), the pointer of the vertex corresponding to the maximum value and the minimum value of the scanning line and the y coordinate value (the coordinate value in the direction perpendicular to the scanning line) is detected, and the list memory (2)
It is stored after the above data of.

そして、リストメモリ制御回路(3)の制御下におい
て上記ポインタに基いて最大値に対応する頂点データを
左辺補間回路(7)、および右辺補間回路(8)に入力
するとともに、上記頂点データの後の頂点データ、およ
び前の頂点データをそれぞれ左辺補間回路(7)、およ
び右辺補間回路(8)に入力し、y座標値の最大値を基
準として各稜線の補間を行ない、両補間値をDDA回路
(9)に印加する。以上の場合において、各稜線の補間
が終了したと判別された場合には、左一辺終了検出回路
(4)、または右一辺終了検出回路(5)からの終了検
出信号に基いてリストメモリ制御回路(3)の制御下に
おいて次の頂点データを対応する補間回路に入力する。
Then, under the control of the list memory control circuit (3), the vertex data corresponding to the maximum value is input to the left side interpolation circuit (7) and the right side interpolation circuit (8) based on the pointer, and after the vertex data, Vertex data and the previous vertex data are input to the left side interpolation circuit (7) and the right side interpolation circuit (8), respectively, and the ridge lines are interpolated using the maximum y coordinate value as a reference, and both interpolation values are set to DDA. Apply to circuit (9). In the above case, when it is determined that the interpolation of each ridge line is completed, the list memory control circuit is based on the end detection signal from the left one side end detection circuit (4) or the right one side end detection circuit (5). Under the control of (3), the next vertex data is input to the corresponding interpolation circuit.

以上のようにして全ての稜線の補間が終了した場合に
は、一多角形終了検出回路(6)からの終了検出回路に
基いてリストメモリ制御回路(3)の制御下において次
の多角形のデータを読出して、上記と同様の処理を反復
することにより、必要な全ての多角形についての処理を
行なうことができる。
When the interpolation of all the edges is completed as described above, the next polygon is controlled under the control of the list memory control circuit (3) based on the end detection circuit from the one polygon end detection circuit (6). By reading the data and repeating the same processing as described above, the processing for all necessary polygons can be performed.

第8図はより具体化した実施例を示している。尚、第
8図には、第1図、第2図の各構成要素に対応する参照
符号が付記されている。
FIG. 8 shows a more specific embodiment. Incidentally, in FIG. 8, reference numerals corresponding to the respective constituent elements of FIG. 1 and FIG. 2 are added.

図において(11)はデータバスであり、(18)はデー
タバスを通して転送されるデータの最初のワードとして
のモードワード(2次元輝度変化なし、2次元輝度変化
あり、3次元輝度変化なし、および3次元輝度変化あり
の各モードを示す情報、多角形の角数を示す情報等)を
解析するモードワード解析部であり、データバス(11)
を通して転送される多角形の角数データが当初入力さ
れ、頂点データが入力される毎にダウンカウントする角
数ダウンカウンダ(12)をも兼ねている。(13)は最大
値検出部であり、(14)は最小値検出部であり、(15)
はポインタ用アップカウンタであり、(16)は最大値ポ
インタラッチ部であり、(17)は最小値ポインタラッチ
部であり、(19)は上記モードワード解析部(18)から
の、モード情報を入力としてモード別の制御信号を出力
する属性別制御部であり、(20)は属性別制御部(19)
からのアドレスインクリメント信号を入力として入力側
アドレスを発生させるアップカウンタである。
In the figure, (11) is a data bus, and (18) is a mode word as the first word of data transferred through the data bus (no two-dimensional luminance change, two-dimensional luminance change, three-dimensional luminance change, and Data bus (11) is a mode word analysis unit that analyzes information indicating each mode with three-dimensional brightness change, information indicating the number of corners of a polygon, etc.
The polygonal corner number data transferred through is initially input, and it also serves as a corner number down counter (12) that counts down each time vertex data is input. (13) is a maximum value detection unit, (14) is a minimum value detection unit, (15)
Is a pointer up counter, (16) is a maximum value pointer latch unit, (17) is a minimum value pointer latch unit, and (19) shows mode information from the mode word analysis unit (18). An attribute-based control unit that outputs a control signal for each mode as an input, and (20) is an attribute-based control unit (19)
Is an up-counter which receives an address increment signal from and generates an input side address.

(21)(22)(23)(24)は、それぞれx座標値用、
y座標値用、z座標値用、インデックス値(輝度値等)
用のリストメモリであり、それぞれ2枚のRAMで構成さ
れている。ここで、各リストメモリが2枚のRAMで構成
されているのは、1枚のRAMに格納可能なポリゴン数を
越えた場合に、他のRAMを用いてポリゴンの各頂点デー
タの格納を行なわせることができるようにするためであ
るとともに、リストメモリの下位側が処理要求の要求を
行なっており、かつ上位側で現在転送中のものが完了し
たことを条件としてRAMの切換を行なわせて上位・下位
間の速度差を吸収するためである。
(21) (22) (23) (24) are for x coordinate value,
For y coordinate value, for z coordinate value, index value (luminance value etc.)
List memory for each of the two, and each is composed of two RAMs. Here, each list memory is composed of two RAMs. When the number of polygons that can be stored in one RAM is exceeded, other RAMs are used to store each vertex data of polygons. In addition to the above, the lower side of the list memory is requesting a processing request, and the upper side allows the RAM to be switched on condition that the one currently being transferred is completed.・ To absorb the speed difference between lower ranks.

(25)はポリゴン数カウンタであり、(26)は各2枚
づつのRAMを切換えるためのRAM切換制御部であり、(2
7)(28)(29)はそれぞれ左辺を補間するための減算
部、除算部、加算部であり、(30)(31)(32)はそれ
ぞれ右辺を補間するための減算部、除算部、加算部であ
り、(33)は両辺の補間演算同期部である。
(25) is a polygon number counter, (26) is a RAM switching control unit for switching each two RAMs, (2)
7), (28) and (29) are a subtraction unit, a division unit and an addition unit for interpolating the left side, and (30), (31) and (32) are subtraction units and a division unit for interpolating the right side, respectively. The addition unit (33) is an interpolation calculation synchronization unit on both sides.

(34)はDDA側アドレス発生部であり、(35)は実行
終了検出部であり、(36)(37)はモードワードラッチ
部である。
(34) is a DDA side address generation section, (35) is an execution end detection section, and (36) and (37) are mode word latch sections.

したがって、この実施例の場合にも、例えば、第7図
中に矢印で示すように、転送順序が左回りの場合に(任
意の頂点を基準として反時計回り方向に、上位プロセッ
サから頂点データが順次転送される場合に)、最大値に
対応する頂点から最小値に対応する頂点に向かって互に
隣り合う頂点同士の頂点データを補間して得た稜線(第
7図中の左辺参照)と走査線との交点を始点として把握
することができるとともに、最小値に対応する頂点から
最大値に対応する頂点に向かって互に隣り合う頂点同士
の頂点データを補間して得た稜線(第7図中の右辺参
照)と走査線との交点を終点として把握することができ
(転送順序が左回りの場合)、この把握結果に基いてぬ
りつぶし表示を行なうことができるので、ぬりつぶした
面データを書込むメモリは必要でなく、しかもメモリか
らの読出し、およびメモリへの書込みの頻度を著しく減
少させて、データが与えられてから内部がぬりつぶされ
た多角形を走査型ディスプレイ上に表示するまでの所要
時間を著しく短縮することができる。具体的には、従来
800ポリゴン/sec.程度の速度であったのに比べて、上記
実施例によれば40000ポリゴン/sec.程度の速度にするこ
とができた。ここで、1ポリゴンは20ドット×20ドット
の任意方向に傾斜した正方形を意味している。
Therefore, also in the case of this embodiment, for example, when the transfer order is counterclockwise as indicated by the arrow in FIG. Ridge lines (refer to the left side in FIG. 7) obtained by interpolating the vertex data of the vertices adjacent to each other from the vertex corresponding to the maximum value to the vertex corresponding to the minimum value (when sequentially transferred). It can be grasped as an intersection with a scanning line as a starting point, and a ridge line obtained by interpolating vertex data of vertices adjacent to each other from the vertex corresponding to the minimum value to the vertex corresponding to the maximum value (7th The intersection between the scanning line (see the right side in the figure) and the scanning line can be grasped as the end point (when the transfer order is counterclockwise), and the filled display can be performed based on this grasped result. Memo to write Is not necessary, and the frequency of reading from memory and writing to memory is significantly reduced, and the time required from displaying data to displaying a polygon with a filled inside on a scanning display is reduced. It can be significantly shortened. Specifically,
According to the above-mentioned embodiment, the speed was about 40,000 polygons / sec., While the speed was about 800 polygons / sec. Here, one polygon means a square of 20 dots × 20 dots inclined in an arbitrary direction.

尚、この発明においては、1走査線を1の連続部分の
みに区画する多角形についてのみぬりつぶし処理を行な
わせることができるので、上記以外の多角形については
従来方式によるぬりつぶし処理を行なう必要があるが、
特に3次元図形においては殆どが上記多角形に該当する
ので、非常に有用性が高いものであるといえる。
In the present invention, it is possible to perform the filling processing only on polygons that divide one scanning line into only one continuous portion, so that it is necessary to perform the filling processing by the conventional method on polygons other than the above. But,
In particular, most of the three-dimensional figures correspond to the above-mentioned polygons, so it can be said that they are very useful.

〈発明の効果〉 以上のようにこの発明は、ぬりつぶしのために必要な
メモリの増加を抑制することができるとともに、転送順
位のみに基いて始点側の稜線、および終点側の稜線を把
握することができ、カウンタ等のハードウェアにより対
応が可能になり、しかもメモリからの読出し、およびメ
モリへの書込みの頻度を減少させて、データが与えられ
てから内部がぬりつぶされた多角形を走査型ディスプレ
イ上に表示するまでの所要時間を短縮することができる
という特有の効果を奏する。
<Effects of the Invention> As described above, according to the present invention, it is possible to suppress an increase in the memory required for filling, and to grasp the ridgeline on the start point side and the ridgeline on the end point side only based on the transfer order. It is possible to handle with a hardware such as a counter, and the frequency of reading from the memory and writing to the memory is reduced, and the scanning type display of a polygon whose inside is filled after data is given. It has a unique effect that the time required for the display above can be shortened.

【図面の簡単な説明】[Brief description of drawings]

第1図はこの発明の多角形ぬりつぶし方式を実施するた
めの、一実施例を示すブロック図、 第2図は最大、最小値頂点検出回路を詳細に示す図、 第3図はリストメモリの内容を示す図、 第4図はリストメモリ制御回路の動作を説明する図、 第5図は左一辺終了検出回路の動作を説明する図、 第6図は一多角形終了検出回路の動作を説明する図、 第7図は左辺補間回路、および右辺補間回路の動作を説
明する図、 第8図はより具体化した実施例を示すブロック図、 第9図、および第10図は異なるタイプの多角形を示す
図。 (1)……最大、最小値頂点検出回路、(2)……リス
トメモリ、(3)……リストメモリ制御回路、(7)…
…左辺補間回路、(8)……右辺補間回路、(9)……
DDA回路
FIG. 1 is a block diagram showing an embodiment for carrying out the polygon filling method of the present invention, FIG. 2 is a diagram showing a maximum / minimum value vertex detection circuit in detail, and FIG. 3 is a list memory content. 4 is a diagram for explaining the operation of the list memory control circuit, FIG. 5 is a diagram for explaining the operation of the left one-side end detection circuit, and FIG. 6 is a diagram for explaining the operation of the one polygon end detection circuit. FIG. 7 is a diagram for explaining the operation of the left side interpolation circuit and the right side interpolation circuit, FIG. 8 is a block diagram showing a more concrete embodiment, and FIGS. 9 and 10 are different types of polygons. FIG. (1) ... Maximum / minimum value vertex detection circuit, (2) ... List memory, (3) ... List memory control circuit, (7) ...
… Left side interpolation circuit, (8) …… Right side interpolation circuit, (9) ……
DDA circuit

Claims (1)

【特許請求の範囲】[Claims] 【請求項1】1走査線を1の連続部分のみに区画する多
角形の頂点データを、転送順に、順次格納するリストメ
モリと、走査方向と直角な方向についての各頂点の座標
値の最大値、および最小値に対応する頂点を、当該頂点
の転送順位をリストメモリに記憶することにより検出す
る頂点検出手段と、頂点検出手段により検出された最大
値、および最小値に対応する頂点を基準とし、かつ転送
順序に基づいて頂点を区分する区分手段と、区分手段に
より区分された各区分毎に頂点検出手段により検出され
た最大値に対応する頂点から頂点検出手段により検出さ
れた最小値に対応する頂点に向かって互に隣り合う頂点
同士の頂点データを補間し、かつこの補間を両区分につ
いて並行して行なうことにより、同時に1対の稜線デー
タを得る稜線データ算出手段と、走査線と稜線データ算
出手段により得られた1対の稜線との交点を、上記転送
順序および稜線の補間順序に対応させて始点または終点
とする始終点算出手段と、頂点検出手段により検出され
た最大値、および最小値に対応する両頂点の何れか一方
から他方に向かって順に、始点と終点との間に対応する
走査線部分をぬりつぶし表示するぬりつぶし表示手段と
を含むことを特徴とする走査型ディスプレイ装置におけ
る多角形ぬりつぶし装置。
1. A list memory that sequentially stores polygonal vertex data that divides one scanning line into only one continuous portion in the order of transfer, and a maximum coordinate value of each vertex in a direction perpendicular to the scanning direction. , And a vertex corresponding to the minimum value by storing the transfer order of the vertex in a list memory, and a vertex corresponding to the maximum value and the minimum value detected by the vertex detection means as a reference. Corresponding to the minimum value detected by the apex detection means from the apex corresponding to the maximum value detected by the apex detection means for each of the divisions made by the aforesaid division means. Edge data for obtaining a pair of edge line data at the same time by interpolating vertex data of adjacent vertices toward each other and performing this interpolation in parallel for both sections. A calculation means; a start / end point calculation means for setting an intersection point of the scanning line and the pair of ridge lines obtained by the ridge line data calculation means as a start point or an end point in correspondence with the transfer order and the ridge line interpolation order; A maximum value and a minimum value detected from one of the two vertices corresponding to the other, in order from the other to the other, including a solid display means for solidly displaying the corresponding scanning line portion between the start point and the end point. A polygon fill device for a scanning display device.
JP60215771A 1985-09-27 1985-09-27 Polygonal fill device in scanning display device Expired - Lifetime JPH0831138B2 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP60215771A JPH0831138B2 (en) 1985-09-27 1985-09-27 Polygonal fill device in scanning display device
US06/911,551 US4791582A (en) 1985-09-27 1986-09-25 Polygon-filling apparatus used in a scanning display unit and method of filling the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP60215771A JPH0831138B2 (en) 1985-09-27 1985-09-27 Polygonal fill device in scanning display device

Publications (2)

Publication Number Publication Date
JPS6274164A JPS6274164A (en) 1987-04-04
JPH0831138B2 true JPH0831138B2 (en) 1996-03-27

Family

ID=16677950

Family Applications (1)

Application Number Title Priority Date Filing Date
JP60215771A Expired - Lifetime JPH0831138B2 (en) 1985-09-27 1985-09-27 Polygonal fill device in scanning display device

Country Status (1)

Country Link
JP (1) JPH0831138B2 (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2725915B2 (en) * 1990-11-15 1998-03-11 インターナショナル・ビジネス・マシーンズ・コーポレイション Triangle drawing apparatus and method
JPH0683969A (en) * 1990-11-15 1994-03-25 Internatl Business Mach Corp <Ibm> Graphics processor and method of graphics and data processing
US5463723A (en) * 1993-09-20 1995-10-31 International Business Machines Corporation Method and apparatus for filling polygons
JP2971765B2 (en) * 1993-12-28 1999-11-08 松下電器産業株式会社 Polygon drawing method and polygon drawing device

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5214052A (en) * 1976-07-27 1977-02-02 Gifu Asahi Kogyo Kk Structure of a fixing of a door closing device attached to a twin door

Also Published As

Publication number Publication date
JPS6274164A (en) 1987-04-04

Similar Documents

Publication Publication Date Title
US4974177A (en) Mapping circuit of a CRT display device
US4697178A (en) Computer graphics system for real-time calculation and display of the perspective view of three-dimensional scenes
US4967392A (en) Drawing processor for computer graphic system using a plurality of parallel processors which each handle a group of display screen scanlines
US4858149A (en) Method and system for solid modelling
US6172687B1 (en) Memory device and video image processing apparatus using the same
JPH04287292A (en) Method and device for rendering trimmed parametric surface
JPH0628485A (en) Texture address generator, texture pattern generator, texture plotting device and texture address generating method
GB2336982A (en) Improvements relating to computer 3D rendering systems
JPH01207886A (en) Three-dimensional graphic processor
CN1430769B (en) Tiled graphics architecture
JPH0831138B2 (en) Polygonal fill device in scanning display device
JPH03119387A (en) Method and apparatus for forming contour of digital type surface
CN100489900C (en) Image processing apparatus and image processing method
JPH0743771B2 (en) Polygon type discriminating device
JPH0827842B2 (en) Polygonal vertex data tracking device in scanning display device
JP2637959B2 (en) Image generation device
JP2707605B2 (en) Image data conversion method
JPH02308381A (en) Polygon painting-out system
JPS6340967A (en) Plane input device
JP2799041B2 (en) Dot development method and dot development device
JPH02281386A (en) Image display method
JPS6380376A (en) Z sorting device
JP2668864B2 (en) Cross-section drawing device
JPH0431971A (en) Three-dimensional shape display system
JPS6380374A (en) Polygon painting-out device

Legal Events

Date Code Title Description
EXPY Cancellation because of completion of term