JPH01130289A - 多角形の面塗りベクトル発生方式 - Google Patents

多角形の面塗りベクトル発生方式

Info

Publication number
JPH01130289A
JPH01130289A JP28872487A JP28872487A JPH01130289A JP H01130289 A JPH01130289 A JP H01130289A JP 28872487 A JP28872487 A JP 28872487A JP 28872487 A JP28872487 A JP 28872487A JP H01130289 A JPH01130289 A JP H01130289A
Authority
JP
Japan
Prior art keywords
vector
polygon
apex
fill
vertex
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
JP28872487A
Other languages
English (en)
Inventor
Yuji Nakagawa
祐治 中川
Toshiya Mima
美間 俊哉
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 JP28872487A priority Critical patent/JPH01130289A/ja
Publication of JPH01130289A publication Critical patent/JPH01130289A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Image Generation (AREA)

Abstract

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

Description

【発明の詳細な説明】 〔IR要〕 グラフィックデイスプレィ装置で多角形の面塗りを行な
うために用いられる面塗りベクトルの発生方式に関し、 面塗りベクトルの発生を高速に行なうことを目的とし、 多角形の内側、を面塗りして表示するための面塗りベク
トルを発生する多角形の面塗りベクトル発生方式におい
てζ法条角形の各頂点を表示画面の上方向に凸の山頂点
及び下方向に凸の谷頂点及びそれ以外の継i点夫々に分
類し、該各頂点を多角形の内部の角度が180度より大
なる外側と、1hO度より小なる内側とに内外分類し、
外側の山頂点を該表示画面の上から下方向にソートし、
任意の内側の山頂点から該表示画面の下方向に順次面塗
りベクトルの発生を開始し、頂点が出現する毎にその頂
点が山頂点又は谷頂点又は継続点、□かつ内側又は外側
であるかによって多角形分類を行ない、該表示画面の横
方向の面塗りベクトルを発生している領域内に内側の山
頂点又は外側の谷頂点が出現したとき夫々の面塗り領域
の情報を第1スタック又は第2スタックに格納し、既に
面塗りベクトルを発生している領域の右又は左の内側の
山頂点を探して面塗りベクトルの発生を繰り返し、該多
角形の内部全ての面塗りを行なうよう構成する。
〔産業上の利用分野〕
本発明は多角形の面塗りベクトル発生方式に関し、グラ
・フィックデイスプレィ装置で多角形の面塗りを行なう
ために用いられる面塗りベクトルの発生方式に関する。
ラスタスキャン方式のグラノイックディスプレイ装置で
多角形の内部を所望の色に塗る多角形の面塗りを行なう
場合、この多角形の辺上に始点及び終点を持ちラスタの
スー1ヤシ方向の向きを持つ面塗りベクトルをラスク毎
に発生し、この複数の血塗りベクトルを用いて面塗りが
行なわれる。
多角形が凹条角形である場合には血塗りベクトルの発生
が複雑となり、これを高速に行なうことが要望されてい
る。
〔従来の技術〕
第11図は従来方式の一例のブロック図を示す。
同図中、交点語停部11は端子10より入来する例えば
第12図に示す如き多角形についての図形要素中の頂点
情報より、各スキャンライン(X軸方向)毎にスキャン
ラインと多角形の各辺との交点を針線して求める。例え
ばスキャンラインS−Ci については交点P1〜P4
の座標が得られる。
交点ソート部12は求められた交点P1〜P4をX座標
についてソートする。
面塗りベクトル発生部13はソートされた交点を2つず
つの組(PlとP2)、(P3とP4)にして各組の一
方を始点、他方を終点とする面塗りベクトルを生成する
直線発生部14は面塗りベクトル及び境界線ベクトルの
始点と終点との間を点列で補完する。
このようにして得られた点列の表示用データはフレーム
バック715に格納され、ここから順次読み出されて表
示Fi516で表示される。
〔発明が解決しようとする問題点〕
従来方式では、各スキャンライン夫々について多角形の
各辺の交点を求め、この交点をXs!標についてソート
、2つずつ組にして面塗りベクトルを生成する。
従って、各辺を順次取り換えて交点針線を行なう操作、
及びソートの操作が頻繁に生じ、処理速度が低下すると
いう問題点があった。
本発明は上記の点に名みてなされたもので、面塗りベク
トルの発生を高速に行なう多角形の面塗りベクトル発生
り式を提供することを目的とする。
〔問題点を解決するための手段〕
本発明の多角形の面塗りベクトル発生方式は、多角形の
内側を面塗りして表示するための面塗りベクトルを発生
する多角形の面塗りベクトル発生方式において、 多角形の各頂点を表示画面の上方向に凸の山頂点及び下
方向に凸の谷頂点及びそれ以外の継続点夫々に分類しく
21)、 各頂点を多角形の内部の角度が180度より大なる外側
と、180度より小なる内側とに内外分類しく22)、 外側の山頂点を表示画面の上から下方向にソ−トしく2
4)、 任意の内側の山頂点から表示画面の下方向に順次面塗り
ベクトルの発生を開始し、頂点が出現する毎にその頂点
が山頂点又は谷頂点又は継続点、かつ内側又は外側であ
るかによって多角形分類を行ない(25)、 表示画面の横方向の面塗りベクトルを発生している領域
内に内側の山頂点又は外側の谷頂点が出現したとき夫々
の面塗り領域の情報を第1スタック(26)又は第2ス
タック(27)に格納し、既に面塗りベクトルを発生し
ている領域の右又は左の内側の山頂点を探して面塗りベ
クトルの発生を繰り返す(28)。
〔作用〕       ′ 本発明方式においては、面塗りベクトルを発生している
領域に頂点が出現したとき、その頂点の分類によって多
角形分類を行ない左右の内側の山頂点を探して血塗りベ
クトルの発生を繰り返し、このため従来の如き交点計算
及びソートを頻繁に行なう必要がなく面塗りの処理を高
速化できる。
〔実施例〕
第1図は本発明の多角形の面塗りベクトル発生方式の一
実施例のブロック図を示す。
同図中、頂点分類部21は端子20より入来する多角形
についての図形型集中の頂点情報より各頂点を分類する
。ここでは着目している頂点Piと、その前後の頂点P
・ 、Pi+1との3点で形+−1 成される2辺のY座標の変化によって第2図の表に示す
如く分類する。これによって、第3図(A)、(B)、
(C)夫々で、頂点P、は山頂点、谷頂点、継続点と夫
々分類される。
内外分類部22は多角形の各頂点について、多角形の内
部の角度が180度より大なる外側と、180度より小
なる内側に分類する。
各頂点での多角形の内部の角度を知るためには、既に各
頂点の内外分類がなされていなければならず矛盾を生ず
る。
そこで、山頂点と谷頂点では内側の頂点数が外側の頂点
数よりも大であるという事実を用いて、各頂点を二種類
に分類した後、数の大小関係により内外分類を行なう。
各頂点を二種類に分類するには、ある頂点P。
の前後の点P・ 、Pi+1の3点より、ベクトルP、
  P・とベクトルPiPi+1を作り、これらの外積
Vの7@成分■2 v2= (p、−1p、xP、 Pi+1 )2を求め
、V2の正負により分類する。
例えば第4図(A)に示す時計回りに定義された多角形
では頂点P11.P13.P14.P15が負、頂点P
12が正の値となり、第4図(B)に示す半時針目りに
定義された多角形では頂点P11− PI3゜PI3.
PI3が正、頂点P1□が負の値となり、夫々の場合で
個数の多い負又は正の頂点P11.P13゜PI3.P
15夫々が内側、個数の少ない頂点P12が外側と分類
される。
最高内山頂点探査部23はY座標が最大の内山頂点(内
側の山頂点)を探し、また外出ソー、ト部24は外出頂
点(外側の山頂点)をY座標の太きい順にソートする。
なお、最高内山頂点探査部23は必ずしも設けなくても
良い。
多角形分類部25は、任意の山頂点から面塗りベクトル
の生成が開始された後、頂点が出現する毎に面塗りべ〜
クトルの発生を連続するかどうかを判断するため、多角
形分類を行なう。
ここで、面塗り領域のY座標を減少させて、外出頂点が
出現する第5図(A)、(B)に示すタイプ1と、各省
頂点く外側の谷頂点)が出現する第5図(C)、(D)
、(E)に示すタイプ2と、継続点が出現する第5図(
、F)、(G)、(H)に示す、タイプ3と、内容頂点
(内側の谷頂点)が°出現する第5図(1)、(J)に
示すタイプ4とに分類される。
タイプ1は外出頂点Piが面塗り領域(実線■。
■間)の外にあるタイプ1−1と、内にあるタイプ1−
2に分けられる。タイプ2は各省頂点Pj。
Pj、1が左右にあるタイプ2−1、右にあるタイプ2
−2、左にあるタイプ2−3に分けられる。
タイプ3は継続点Pk 、Pk+1が左右にあるタイプ
3−1、右にあるタイプ3−2、左にあるタイプ3−3
に分けられる。
上記のタイプのうちタイプ1−2.2−1.2−2.2
−3の場合に面塗りベクトルの生成が一時停止される。
多角形分類を行なうためには、山頂点につながる辺の左
右判定が必要である。辺の左右判定は、多角形の頂点が
時計回りに定義されているか反時計回りに定義されてい
るかに依存する。そこでベクトルの外積を用いて判定を
行うことにする。すなわち、ある山頂点P1の前後の点
Pi−1’Pi+1の3点より、ベクトルP1 ・Pl
−1とベクトルP・ ・Pi+1を作り、これらの外W
4vの2軸成分v2を求め、 V=(P、 ・Pi−1×Pi ”Pi+1 )zI V2の正負により左右を判定する。第6ffi(A)。
(B)夫々に示すように、多角形の頂点が時計回りに定
義されている時はv2〉0となり辺P、  ・Pl−1
が左側、辺Pi −Pi+fが右側と判定され、反時計
回りの時はV2く0となるので、辺Pi ・Pl−1が
右側、辺Pi −Pi+1が左側と容易に判定できる。
面塗りベクトル発生制御部28は多角形分類の結果を用
いて面塗りベクトル発生の制御を行なう。
ここで、第5図(0)のタイプ1−2のように外用頂点
が面塗り領域の内部にある時、面ζり区間が左右に分離
される。そこで、右側の面塗り区間の情報を第1スタッ
ク26に退避させて左側の面塗りを行ない、左側の面塗
りが終わった時点で第1スタック26を呼出して右側の
面塗りを続行する。
第7図に示す如く、同じ高さの谷頂点が連続して出現し
た場合、面塗りの順番を考y1Bないとスタックの接続
が複雑になる。
そこで、このような場合には、第8図に示すルールに従
い多角形分類のタイプに2応じて、自由頂点の探査方向
を変えるながらデータを第2のスタック27にスタック
する。
第2スタック27に保存されるデータは、左右のいずれ
かの面塗りデータと接続フラグである。
面塗りデータとは、面塗りが一時停止した時の面塗りベ
クトルの始点または終点の座標値および面塗り未終了の
頂点の番号を言う。接続フラグとは、スタックした区間
の接続が終了し、面塗り可能かどうかを判定するフラグ
であり、第2スタック27の両端に接続フラグが立って
いる時、接続完了とする。
第8図において矢印・→、←は次の自由頂点の探査方向
を示し、O印は接続フラグが立っている状態を示し、Δ
印は接続フラグが立ってない状穣を示している。例えば
タイプ2−1で右向きに面塗りベクトルを発生している
際に内容頂点Pj。
Pjや、が出現した場合、未だ第2スタック27にスタ
ックがなされてなければ内容頂点Pj。
Pjや1の面ψリデータをスタックし、右方向に次の自
由頂点を探す。既に第2スタック27にスタックがされ
ているとき、最も右側の一内谷頂点Pj+1の面ζリデ
ータをスタックし、右方向に次の自由頂点を探す。
なお、タイプ2−2右向き、及びタイプ2−3の左向き
夫々の謂において、既に第2スタック27のスタックが
なされているという場合は存在しない。
第7図の多角形において各頂点は時51回りに定義され
ており、内山偵点りから面塗りが開始されたとすると、
3角形hgiの面塗りが終了したとき、これはタイプ2
−1であるから次の自由頂点の探査は右向きに行なわれ
自由頂点jが得られ、3角形jikの面ψりが行なわれ
、同様にして[kv、fuqの面塗りが行なわれる。こ
れによって区間U、Vが接続完了となり、区間e、mま
で血塗りされる。
このとき、自由頂点の探査は左向きとなっており、自由
頂点d、b、n、p、rの順に探査が行なわれ、3角形
dec、bct、nmo、 pOQ。
rqwが順にtitすされる。これによって区間t。
Wが接続完了となり、区間a、Sまで面塗りが行なわれ
て、面塗りが終了する。
ところで而ζりとは、面塗りベクトルを発生することで
あり、この血塗りベクトルの発生は歯抜は対応ODA 
(ディジタル微分解析器)29によって行なわれ、血塗
りベクトル発生制御部28は歯抜は対応ODAに対して
面塗りを行なう部分の頂点の座標と共に、歯抜【プ制御
フラグを設定し、かつ辺の始点となるmv:頂点のベク
トル発生制御を行なう。
歯抜は制御フラグとは、歯抜は対応DDΔ29によって
発生された複数の点列のうち、多角形の最も内側にある
点がどれであるかを指定するためのフラグであり、最も
内側となりうる点はY座標が変化する直前か直後の点で
ある。従って、歯抜は制御フラグは、Y座標が1だけ変
化する直前か1だけ変化した直後かを指定する。
第9図(A)、([3)の如く左側の辺で傾きが正のと
き及び右側の辺で傾きが負のとき、辺のY座標が変化直
後を指定し、第9図(B)、(C)の如く左側の辺で傾
きが負のとき及び右側の辺で傾きが正のとき、辺のY座
標が変化直前を指定する。第9図中、白丸の点は輪郭を
表示する点であり、黒丸の点が面塗りベクトルの始点又
は終点となる。
辺の始点におけるベクトルの発生制御とは、多角形の辺
に沿ってDDAを走らせた時、始点と同一のYJI標を
持つベクトルの端点を面塗りベクトルの始点または終点
とするかどうかを制御するもので、内w1続頂点では第
10図(A)の如く辺BC1−発生された最初の点b1
と辺ABの最後の点b2のX座標を比較し、内側にある
点をベクトルの始点(又は終点)とし、同様に点e1.
e2のうちelをベクトルの始点(又は終点)とする。
また、外継続頂点では第10図(B)の如く辺KL、N
oについては最初の点に、nlを発生せず辺JK、MN
の点に2.n2をベクトルの始点(又は終点)とする。
この歯抜は対応DDAは本出願人が先に特願昭61〜2
04337号発明の名称[凸多角形と直線の表示方式」
で提案したものであり、第9図。
第10図において破線で示すスキャンライン方向で、か
つ黒丸の始点及び終点を結ぶ面塗りベクトルを発生し、
この血塗りベクトルが端子30より出力される。
これによって、3次元物体を任意の方向から見たときの
表示画像について、表示画像の輪郭がとぎれて表示され
る歯抜けを防止できる。
上記の面塗りベクトルの発生においては、従来の如く、
多角形の各辺を順次取り換えて交点計算を行なう操作及
びソートの操作を繰り返す必要がなく、処理速度が高速
となる。
〔発明の効果〕
上述の如く、本発明の多角形の面塗りベクトル発生り式
によれば、面塗りベクトルの発生が高速化し、実用上き
わめて有用である。
【図面の簡単な説明】
第1図は本発明方式の一実施例のブロック図、第2図は
頂点分類表を示す図、 第3図は頂点分類の例を示す図、 第4図は頂点の内外分類を示ず図、 第5図は多角形の分類を示す図、 第6図は辺の左右判定を示寸図、 第7図は多角形の面塗りの順序を示す図、第8図は血塗
り順序のルール表を示す図、第9図は1!I扱は制御フ
ラグの設定を示す図、第10図は継続頂点でのベクトル
発生制御を示す図、 第11図は従来方式の一例のブロック図、第12図は従
来方式の面塗りベクトル発生を示す図である。 図において、 21は頂点分類部、 22は内外分類部、 23は最高自由頂点探査部、 24は外出ソート部、 25は多角形分類部、 26は第1スタック、 27は第2スタック、 28は血塗りベクトル発生制御部、 29は出抜は対応ODA を示す。 参に方式のプローv2図 第を図 1奥fr@表1ネオ目 高2図 (A)       (B)       (C)7t
l妻分1/7例【ホ″′を目 第3図 (A)                 CB )1
瑛ず内9ト穆(ネす凹 第4図 (P47・1−1)           (P47″
1−2)(#7’3−1)             
(Pイア°3−2)             (り4
7°3−3)多角形全輪tす1図 第5図 Pi                PiVz > 
OVz < 0 (A)            (B)辺J左石判2t
ホT図 第6図 ゛ 多角影の荀垂、1の)@序1゛ホオ田 イめるヒリ@芦トの)レージし♂ζ玄宝オb]5TAR
T        5TART、  ○シーーーー  
    Q・−一−−−−−−−−−−Q側−−−−−
−       〇・−−一一一一−−−O・−−−−
−−−−−0・−−一一一一一−ΔX≦0      
     ΔX>0(A)            (
B)START         5TART−−−−
一−−−−−・O−−−一・0+  −−@O−−−−
−−−6゜ END                      
ENDΔX<OΔX≧O 第5り艶1.kLYTフ蝙オI:faff      
          ズn’l l’lλrhYtp亥
イt*Qヒ(()             (D)出
抜は書制御7ラグ冶tし翅Sホ亨巳 第9図 A             D ○・7−−−−−−−−−−−−−−−−−−−−−・
000・−−一−−−−−−−・ OOO・−m−−−・ F (A) 」                        
 MLQ・−一一一−−−−−−−−−−−−−−・o
oO(B) 謎きた;li其マ゛゛のべ゛2トル哨≦支常制御【示1
1日第i0図

Claims (1)

  1. 【特許請求の範囲】 多角形の内側を面塗りして表示するための面塗りベクト
    ルを発生する多角形の面塗りベクトル発生方式において
    、 該多角形の各頂点を表示画面の上方向に凸の山頂点及び
    下方向に凸の谷頂点及びそれ以外の継続点夫々に分類し
    (21)、 該各頂点を多角形の内部の角度が180度より大なる外
    側と、180度より小なる内側とに内外分類し(22)
    、 外側の山頂点を該表示画面の上から下方向にソートし(
    24)、 任意の内側の山頂点から該表示画面の下方向に順次面塗
    りベクトルの発生を開始し、頂点が出現する毎にその頂
    点が山頂点又は谷頂点又は継続点、かつ内側又は外側で
    あるかによつて多角形分類を行ない(25)、 該表示画面の横方向の面塗りベクトルを発生している領
    域内に内側の山頂点又は外側の谷頂点が出現したとき夫
    々の面塗り領域の情報を第1スタック(26)又は第2
    スタック(27)に格納し、既に面塗りベクトルを発生
    している領域の右又は左の内側の山頂点を探して面塗り
    ベクトルの発生を繰り返し(28)、 該多角形の内部全ての面塗りを行なうことを特徴とする
    多角形の面塗りベクトル発生方式。
JP28872487A 1987-11-16 1987-11-16 多角形の面塗りベクトル発生方式 Pending JPH01130289A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP28872487A JPH01130289A (ja) 1987-11-16 1987-11-16 多角形の面塗りベクトル発生方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP28872487A JPH01130289A (ja) 1987-11-16 1987-11-16 多角形の面塗りベクトル発生方式

Publications (1)

Publication Number Publication Date
JPH01130289A true JPH01130289A (ja) 1989-05-23

Family

ID=17733866

Family Applications (1)

Application Number Title Priority Date Filing Date
JP28872487A Pending JPH01130289A (ja) 1987-11-16 1987-11-16 多角形の面塗りベクトル発生方式

Country Status (1)

Country Link
JP (1) JPH01130289A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6295073B1 (en) 1998-06-08 2001-09-25 Matsushita Electric Industrial Co., Ltd. Figure filling apparatus

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6295073B1 (en) 1998-06-08 2001-09-25 Matsushita Electric Industrial Co., Ltd. Figure filling apparatus

Similar Documents

Publication Publication Date Title
EP0356103B1 (en) Scan-conversion process and processor
CN113963044B (zh) 一种基于rgbd相机的货物箱智能装载方法及系统
JPH0196771A (ja) 円弧部認識方法
WO1997008649A1 (en) Drawing pixmap to vector conversion
JPH01191275A (ja) 多角形の充填方法
KR19980025852A (ko) 평면쓸기기법을 이용한 점객체용 명칭배치방법
GB2282515A (en) Method and system for drawing network diagrams
JP2013114655A (ja) 画像処理装置、画像処理方法、及びコンピュータプログラム
JPH05506730A (ja) イメージ発生装置
CN1107281C (zh) 可生成字符组成要素带连笔的字模的字模生成装置
JPH01130289A (ja) 多角形の面塗りベクトル発生方式
KR20000005993A (ko) 도형색칠장치
US5694536A (en) Method and apparatus for automatic gap closing in computer aided drawing
CN107016388A (zh) 一种一维码区域的定位方法及装置
US5574839A (en) Method and apparatus for automatic gap closing in computer aided drawing
CN104182930B (zh) Sift图像快速匹配的尺寸预处理方法
CN104143198A (zh) 一种图像描述方法和装置
JP2000011208A (ja) 画像表示装置及び方法
JPS62232087A (ja) 文字ドツト・フオント線分化方式
JPH01166180A (ja) 図形の塗潰し処理装置
JP2726994B2 (ja) 多角形領域選択方法
JP3635734B2 (ja) 三次元多関節構造体形状生成方法
JPS6275884A (ja) 文書パタ−ンの記述方法
CN104751177A (zh) 一种用于标识数字图像中给定模糊数字直线段的方法
JPH0414190A (ja) 塗りつぶし回路