JPH04229385A - 面塗り処理方式 - Google Patents

面塗り処理方式

Info

Publication number
JPH04229385A
JPH04229385A JP2408317A JP40831790A JPH04229385A JP H04229385 A JPH04229385 A JP H04229385A JP 2408317 A JP2408317 A JP 2408317A JP 40831790 A JP40831790 A JP 40831790A JP H04229385 A JPH04229385 A JP H04229385A
Authority
JP
Japan
Prior art keywords
graphic
vector
coordinate
scanning line
intersections
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.)
Pending
Application number
JP2408317A
Other languages
English (en)
Inventor
Takaaki Miyoshi
隆明 三好
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2408317A priority Critical patent/JPH04229385A/ja
Publication of JPH04229385A publication Critical patent/JPH04229385A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Image Generation (AREA)
  • Controls And Circuits For Display Device (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は面塗り方式に関し、グラ
フィックディスプレイ装置で図形の面塗りを行なう面塗
り処理方式に関する。
【0002】グラフィックディスプレイ装置で行なう面
塗り処理はベクトル描画で実現しているため、ベクトル
の始点及び終点の算出に時間を要し、処理をより高速化
することが要望されている。
【0003】
【従来の技術】図9は従来方式のフローチャートを示す
【0004】同図中、ステップ10では面塗り対象の図
形(多角形)の各辺を表わすベクトルデータを全て読込
んでベクトルテーブルを作成し、またステップ11で全
ベクトルデータの始点及び終点のY座標の最小値を変数
Yにセットする。
【0005】ステップ12ではベクトルデータを始点及
び終点のY座標により昇順にソートする。次に変数Yが
全ベクトルデータのY座標の最大値と同一かどうかを判
別し(ステップ13)、同一でなければステップ14で
変数YをY座標とするX軸に平行な走査線と各ベクトル
との交点のX座標を求め、ベクトルテーブルに設定する
(ステップ14)。次にこの交点のX座標を昇順にソー
トし(ステップ15)、ソート順に奇数番目のX座標を
始点とし、偶数番目のX座標を終点とする描画ベクトル
を発生してベクトル描画を行なう(ステップ16)。こ
の後、変数Yを1だけインクリメントして1ライン分上
げ(ステップ17)、ステップ12に戻り、ステップ1
5のソートで順序がバラバラになったベクトルデータを
再び始点及び終点のY座標でソートしなおし以降の処理
を繰り返す。
【0006】
【発明が解決しようとする課題】従来方式は、任意のY
座標についてX軸と平行な描画ベクトルが複数本必要な
複雑な図形も描画できるようにするため、ステップ12
,14夫々のソートが必要である。
【0007】しかし、三角形及び凸四角形の如き単純な
図形では各Y座標について軸に平行な描画ベクトルは1
本しかなく上記ステップ12,14のソートは必要がな
く、単純な図形についても上記ソートを行なうために描
画時間が長くなるという問題があった。
【0008】本発明は上記の点に鑑みなされたもので、
描画時間を短縮して高速描画を行なう面塗り処理方式を
提供することを目的とする。
【0009】
【課題を解決するための手段】本発明の面塗り処理方式
は、図形をX方向又はY方向の走査線上の描画ベクトル
を用いて面塗りを行なう面塗り処理方式において、図形
が一走査線上に複数の描画ベクトルを必要とする複雑図
形か、一走査線上に単一の描画ベクトルで済む単純図形
かを判別し、複雑図形は走査線と図形の各辺との交点を
昇順又は降順にソートして隣接する2つの交点から各描
画ベクトルを得、単純図形は走査線と図形の2辺との2
つの交点から描画ベクトルを得る。
【0010】
【作用】本発明においては、描画対象の図形が複雑図形
か単純図形かを判別し、単純図形については走査線と図
形の2辺との2つの交点からそのまま描画ベクトルを得
て、複雑図形のように走査線と各辺との交点をソートす
る必要がなく、それだけ高速の描画を行なうことができ
る。
【0011】
【実施例】図1は本発明方式の図形判定のフローチャー
トを示す。
【0012】同図中、ステップ20ではシンプルフラグ
をオンとし、ステップ21でXカウンタ及びYカウンタ
夫々をゼロリセットする。
【0013】次にステップ22で図形の一辺を表わすベ
クトルデータをこの図形を一筆書きする順に読み込み、
ベクトルデータがなくならない限り(ステップ23)、
ステップ24に進む。ステップ24ではベクトルデータ
の読み込みがその図形における1回目かを判別し、2回
目以降であればステップ25で前のベクトルデータに対
してX方向,Y方向夫々について方向が変わったかどう
かを判別する。ここでX座標が増加から減少又は減少か
ら増加となったときをX方向の変化ありとし、Y方向の
変化についても同様である。X方向の変化又はY方向の
変化があったときはステップ26でXカウンタ又はYカ
ウンタを1だけ加算した後、ステップ27でXカウンタ
,Yカウンタが共に「2」を越えているかどうかを判別
し、共に「2」を越えているときにはステップ28でシ
ンプルフラグをオフとする。この後、ステップ29で読
み込んだベクトルデータを頂点テーブルにセーブしてス
テップ22に戻り、処理を繰り返す。
【0014】これによって図2(A)に示す単純図形で
はXカウンタ,Yカウンタ共に「2」となりシンプルフ
ラグはオンのままである。図2(B)の図形ではXカウ
ンタは「4」であるがYカウンタが「2」でシンプルフ
ラグはオンのままで単純図形とされ、図2(C)の複雑
図形ではXカウンタ,Yカウンタ共に「4」となり、シ
ンプルフラグはオフとなる。
【0015】上記図形判定が終了すると続いて面塗り処
理を行なう。図3,図4は面塗り処理のフローチャート
を示す。
【0016】図3において、ステップ31ではシンプル
フラグがオンかオフかで描画対象の図形が単純図形かど
うかを判別し、複雑図形の場合にはステップ32の複雑
図形処理を実行する。この処理は図9に示す従来方式と
同一である。単純図形の場合はX,Y座標の各最大値,
最小値と初期化し、変数iに「1」をセットする(ステ
ップ33)。
【0017】ステップ34で変数iが描画対象の図形の
頂点総数以下の場合には、ステップ35で図7(B)に
示す各図形毎の頂点テーブルからi番目の頂点のX座標
X(i)をX最小値と比較し、X座標X(i)が小さけ
ればX座標X(i)をX最小値にセットし(ステップ3
6)、変数iをX最小点番号にセットする(ステップ3
7)。X座標X(i)が大きければステップ38でX座
標X(i)をX最大値と比較してX座標X(i)が大き
い場合には、これをX最大値にセットする(ステップ3
9)。
【0018】この後、ステップ40でi番目の頂点のY
座標Y(i)をY最小値と比較し、Y座標Y(i)が小
さければY座標Y(i)をX最小値にセットし(ステッ
プ41)、変数iをY最小点番号にセットする(ステッ
プ42)。Y座標Y(i)が大きければステップ43で
Y座標Y(i)をY最大値と比較してY座標Y(i)が
大きい場合には、これをY最大値にセットする(ステッ
プ44)。この後、ステップ45で変数iを「1」だけ
インクリメントしてステップ34に戻り処理を繰り返す
【0019】ステップ34で変数iが頂点総数と同一と
判別されると図4のステップ48に進み、図7(A)に
示す如くX最大値とX最小値との差をとって幅を求め、
Y最大値とY最小値との差をとって高さを求める。この
幅又は高さが「0」の場合はステップ49,50で判別
してステップ51,52で垂直線描画、水平線描画を行
なう。幅,高さが共に「0」でなければXカウンタ,Y
カウンタ夫々の値をステップ53,54で判別し、Xカ
ウンタの値が「2」でなければ縦方向について複雑な図
形であるためステップ56で横走査を行ない、Yカウン
タの値が「2」でなければ横方向について複雑な図形で
あるためステップ57で縦走査を行なう。Xカウンタ,
Yカウンタの値が共に「2」のときはステップ55で幅
と高さとを比較し、縦長の図形は縦走査,横長の図形は
横走査を行なう。
【0020】横走査のフローチャートを図5に示す。同
図中、ステップ60でY最小点番号を左,右夫々のポイ
ンタL,Rにセットし、座標X(L),X(R)を夫々
交点座標LX,RXにセットし、Y最小値を変数Yにセ
ットし、終了フラグを偽にセットする。
【0021】次に描画コマンドを発行して交点座標LX
,RX間を描画する(ステップ61)。
【0022】ステップ62では座標Y(L)を変数Yと
比較し、同一であれば左ポインタ移動を行ない(ステッ
プ63)、交点座標LXを増分△LXだけ加算する(ス
テップ64)。
【0023】ステップ65では座標Y(R)を変数Yと
比較し、同一であれば右ポインタ移動を行ない(ステッ
プ66)、交点座標RXを増分△RXだけ加算する(ス
テップ67)。この後、変数Yを1ライン分増加させ(
ステップ68)、終了フラグが偽であれば(ステップ6
9)ステップ61に戻り処理を繰り返す。
【0024】なお、縦走査も上記横走査と同様であり、
その説明を省略する。図6は左ポインタ移動のフローチ
ャートを示す。同図中、ステップ71では初期化(ステ
ップ60)直後ではなく、かつポインタLとRとが等し
いという終了条件が満足されるかとをかを判別し、満足
されなければステップ72で座標X(L),Y(L)を
夫々変数X0,Y0にセットする。次に左ポインタLを
「1」だけデクリメントし(ステップ73)、変数Lの
値が「1」以上でなければ頂点の総数を左ポインタLに
セットする(ステップ75)。
【0025】この後、座標X(L),Y(L)から夫々
変数X0,Y0を減算して増分△X,△Yを求め(ステ
ップ76)、増分△Yが1ラインに相当する値「4」未
満の場合(ステップ77)はステップ71に戻る。増分
△Yが「4」以上であればステップ78で増分△LX(
=△X/△Y)を求め、変数X0を交点座標LXにセッ
トする。
【0026】なお、右ポインタ移動もこの左ポインタ移
動と同様であり、その説明を省略する。
【0027】上記図5,図6の処理においては、図8(
A)に示す如く、描画用の走査線Iが左ポインタLの位
置まで上がった時点で同図(B)の如く左ポインタ移動
を行ない、同図(C)に示す如く辺bcの傾き△Y/△
Xを求める。また走査線Iが右ポインタRの位置まで上
がった時点で同図(D)の如く右ポインタ移動を行ない
、更に走査線Iが左ポインタLの位置まで上がった時点
で同図(E)の如く左ポインタ移動を行なう。そして走
査線がポインタL,Rの位置まで来ると、それ以前に図
6のステップ71の終了条件が満たされてステップ80
で終了フラグが真となっているために同5のステップ6
9で終了フラグが真と判別され横走査を終了する。
【0028】このように、描画対象の図形が複雑図形か
単純図形かを判別し、単純図形については走査線と図形
の2辺との2つの交点からそのまま描画ベクトルを得て
、複雑図形のように走査線と各辺との交点をソートする
必要がなく、それだけ描画時間を短縮化でき、面塗り処
理全体についても高速化がなされる。
【0029】
【発明の効果】上述の如く、本発明の面塗り処理方式に
よれば、単純図形の描画時間を短縮化でき、処理全体の
高速化ができ、実用上きわめて有用である。
【図面の簡単な説明】
【図1】本発明方式の図形判定のフローチャートである
【図2】図形判定を説明するための図である。
【図3】本発明方式の面塗り処理のフローチャートであ
る。
【図4】本発明方式の面塗り処理のフローチャートであ
る。
【図5】横走査のフローチャートである。
【図6】左ポインタ移動のフローチャートである。
【図7】図形及び頂点テーブルを示す図である。
【図8】ポインタ移動を示す図である。
【図9】従来方式のフローチャートである。
【符号の説明】
20〜80  ステップ

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】  図形をX方向又はY方向の走査線上の
    描画ベクトルを用いて面塗りを行なう面塗り処理方式に
    おいて、図形が一走査線上に複数の描画ベクトルを必要
    とする複雑図形か、一走査線上に単一の描画ベクトルで
    済む単純図形かを判別し、複雑図形は走査線と図形の各
    辺との交点を昇順又は降順にソートして隣接する2つの
    交点から各描画ベクトルを得、単純図形は走査線と図形
    の2辺との2つの交点から描画ベクトルを得ることを特
    徴とする面塗り処理方式。
JP2408317A 1990-12-27 1990-12-27 面塗り処理方式 Pending JPH04229385A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2408317A JPH04229385A (ja) 1990-12-27 1990-12-27 面塗り処理方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2408317A JPH04229385A (ja) 1990-12-27 1990-12-27 面塗り処理方式

Publications (1)

Publication Number Publication Date
JPH04229385A true JPH04229385A (ja) 1992-08-18

Family

ID=18517782

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2408317A Pending JPH04229385A (ja) 1990-12-27 1990-12-27 面塗り処理方式

Country Status (1)

Country Link
JP (1) JPH04229385A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06342474A (ja) * 1992-12-11 1994-12-13 Nec Corp 領域描画システム

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01166181A (ja) * 1987-12-22 1989-06-30 Fujitsu Ltd 多角形の塗潰し処理装置

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01166181A (ja) * 1987-12-22 1989-06-30 Fujitsu Ltd 多角形の塗潰し処理装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06342474A (ja) * 1992-12-11 1994-12-13 Nec Corp 領域描画システム

Similar Documents

Publication Publication Date Title
JP2667835B2 (ja) コンピユータグラフイツクス表示装置
US5448690A (en) Image processing system enabling real-time output of image signal based on polygon image information
US4935879A (en) Texture mapping apparatus and method
US5379371A (en) Displaying method and apparatus for three-dimensional computer graphics
JP3151774B2 (ja) 画像をディスプレイへ表示する方法
US3812491A (en) Raster-scanned display devices
JPH06223198A (ja) 光線追跡による画像生成装置及び方法
JPS646476B2 (ja)
US5739826A (en) Polygon display based on x coordinates of edges on scan line
JP2612260B2 (ja) テクスチヤマツピング装置
US4829456A (en) Three-dimensional surface display method
JPH07160899A (ja) 多角形分割描画方法および装置
US4996653A (en) Line generation in a display system
EP0714057A1 (en) Method and apparatus for displaying a cursor along a two dimensional representation of a computer generated three dimensional surface
US5280569A (en) Three dimensional model describing method
JPH04229385A (ja) 面塗り処理方式
EP0382495B1 (en) Figure processing apparatus
US4393453A (en) Region information processing system
JP2680295B2 (ja) 電子ビーム露光装置の描画データ作成方法及びその装置
JP2768331B2 (ja) 曲線の直線近似装置
JP2569952B2 (ja) Aーバッファ法における隠面処理方法およびその装置
JPH0644346A (ja) 距離画像処理方法及び装置
JP3246991B2 (ja) 高速dda装置
KR950012266A (ko) 패스트 퐁 묘영용 삼각형 보간기 및 탐색방법
JPH07122906B2 (ja) 図形表示装置

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 19990302