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

面塗り処理方式

Info

Publication number
JPH0290282A
JPH0290282A JP24213588A JP24213588A JPH0290282A JP H0290282 A JPH0290282 A JP H0290282A JP 24213588 A JP24213588 A JP 24213588A JP 24213588 A JP24213588 A JP 24213588A JP H0290282 A JPH0290282 A JP H0290282A
Authority
JP
Japan
Prior art keywords
turned
pixels
pixel
polygon
painting
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
JP24213588A
Other languages
English (en)
Inventor
Tsutomu Matsushima
松島 勤
Nobuhiko Minamoto
源 信彦
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.)
PFU Ltd
Original Assignee
PFU 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 PFU Ltd filed Critical PFU Ltd
Priority to JP24213588A priority Critical patent/JPH0290282A/ja
Publication of JPH0290282A publication Critical patent/JPH0290282A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Image Generation (AREA)

Abstract

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

Description

【発明の詳細な説明】 〔概要〕 多角形の内部の領域を塗りつぶす面塗り処理方式に関し
多角形の辺が交差する場合にもその多角形の内部の領域
を塗りつぶすことを可能とすることを目的とし。
その内部を塗りつぶすべき多角形の各辺を生成する辺生
成部と、前記塗りつぶしを行う面塗り部と、前記各辺を
定義する線を前記辺生成部で生成された各辺に重ねて描
画する定義線描画部とを備え、前記辺生成部が、1つの
辺に対して1本の走査線につき1つの画素をオンとする
ことにより前記各辺を生成すると共に、前記オンとされ
た画素のうち所定の条件の画素をオフとし、前記面塗り
部が、各走査線につきオンとされた画素の間に存在する
画素をオンとすることにより前記塗りつぶしを行い、前
記定義線描画部が、前記辺生成部においてオフとされた
前記所定の条件の画素をオンとするように構成する。
〔産業上の利用分野〕
本発明は面塗り処理方式に関し、更に詳しくは。
多角形の内部の領域を塗りつぶす面塗り処理方式コンピ
ュータグラフィックスにおいて1画面上に表示された多
角形等の閉領域の内部をある1つの色に塗りつぶすこと
(面塗り)が行われる。
〔従来の技術〕
第9図は従来技術説明図であり、同図において。
5は表示のための画面1点線はラスクスキャンの走査線
(ラスクスキャンの方向を示す)、「・」は1つの画素
でありて面塗りの結果オンとされたものである。
頂点aないしdの各座標が与えられ、各頂点を第9図図
示の如く結んで形成される多角形(2つの三角形)の内
部を面塗りするとする。
従来のスキャンコンバージョンと呼ばれる方式では、走
査線をスキャンしながら各走査線での面塗りの始点X1
及び終点X2を頂点の座標から計算により求めていた。
そして、始点XIから面塗り、即ち1画素の点燈(オン
)を開始し、終点X2まで画素をオンとする。これを、
走査線毎にくり返すことにより1面塗りを行っていた。
例えば、始点XIは頂点す及びCの座標から辺bc上の
点として求められ、同様に終点X2は辺ba、ad又は
dc上の点として求められる。そして、スキャンされた
時、始点Xiに対応する画素から終点X2に対応する画
素までがオンとされる。
なお、スキャンは9図示の両面5上において。
左から右へ走査線に沿って行われ、走査線は上から順に
走査される。
〔発明が解決しようとする課題〕
前述の従来技術によれば、第9図図示の2つの三角形の
うち上のものについては、その内部の面塗りを問題なく
行うことができるが、下のものについては内部の面塗り
を行うことができない。
即ち、始点x1の存在する辺beと終点X2の存在する
辺adとが交点eで交差すると、始点X1は走査方向に
おいて終点X2の後(右)に存在することになる。この
ため、第9図図示の如く。
下の三角形sdcについては画素は始点X1からオンと
され始め走査線の終端までがオンとされる。
この結果、下の三角形は、その外側が面塗りされてしま
う。
このような不都合を避けるために1例えば、交点eを求
め、それ以後始点X1と終点X2とを交換することが考
えられる。しかし、交点eを求める計算は複雑で描画時
間の短縮化の方向に反するので採用できない、また、始
点X1と終点X2の値を比較して必要に応じて始点Xi
と終点X2を交換することが考えられるが、これも、比
較のための計算を走査線毎に行う必要があり、交差する
辺が多数になると計算時間が長くなるという問題がある
このため、従来は、多角形の辺が交差する(eの如き交
点を有する)時は、各多角形毎の面塗り。
即ち、上の三角形beaの面塗りを行った後、別に、改
めて下の三角形edcの面塗りを行っていた。
本発明は、多角形の辺が交差する場合にもその多角形の
内部の領域を塗りつぶすことが可能な面塗り処理方式を
提供することを目的とする。
〔課題を解決するための手段〕
第1図は本発明の原理構成図であり3本発明による処理
システムを示している。
第1図において、1は面塗り処理部、2は辺生成部、3
は面塗り部、4は定義線描画部、5は画面である。
辺生成部2は、その内部を塗りつぶすべき多角形の頂点
の座標が与えられると、これを用いて当該多角形の各辺
を生成する。即ち1辺生成部2は。
1つの辺に対して、1本の走査線につき1つの画素をオ
ンとすることをくり返して行って、当該辺を生成する0
画素は、オン(画面5上で点燈される状態)とされるこ
とにより、これを塗りつぶした状態となる。
また9辺生成部2は1辺の生成のためにオンとされた(
実際には、オンとされるべき)画素のうち、所定の条件
の画素をオフ(点燈されない状態。
即ち、塗りつぶされない状態)とする、ここで。
所定の条件の画素とは9面塗り部3による面塗りの際に
、その始点及び終点としてはならない画素に該当するも
のである。
面塗り部3は、各走査線につき、オンとされた2つの画
素の間に画素が存在すれば、これらの画素をオンとする
ことにより塗りつぶしを行う。
定義線描画部4は、頂点の座標を用いて各辺を定義する
線を求め、この線に対応する画素を全てオンとする。こ
の線は1辺生成部2で生成された各辺と条件によりオフ
とされた画素とを合せたものと等しい、即ち、定義線描
画部4は1辺生成部2で生成された各辺上に重ねて定義
線を描画し。
また、オフとされた画素を再びオンとする。
〔作用〕
第2図は本発明の作用説明図であり、同図において、5
は表示のための画面1点線はラスクスキャンの走査線(
ラスクスキャンの方向を示す)。
「Ll」は1つの画素であって面塗りの結果オンとされ
たもの、「X」は1つの画素であって辺生成の課程でオ
フとされたものである。
第9図と同様に、頂点aないしdの各座標が与えられ、
各頂点を第2図図示の如く結んで形成される多角形(2
つの三角形)の内部を面塗りするとする。
以下、第3図に示す本発明の処理フローに従って、第2
図について説明する。
■ 辺生成部2は、頂点aないしdの座標から計算によ
り、頂点を結ぶ線と各走査線との交点(又はその近似点
)に存在する1つの画素を求め、これをオンとする。こ
れにより、第2図図示の如く、頂点を結ぶ線上にオンと
された画素が並び5辺が生成される。
また1辺生成部2は5辺の生成のためにオンとすべき画
素のうち、所定の条件の(面塗りの際の始点及び終点と
してはならない)画素を認識して、これらをオフとする
。これにより、第2図図示の如く2点す、c及びeに対
応する画素がオフとされる。
■ 面塗り部3は、走査線を順にスキャンしてゆき、既
に処理■でオンとされた画素があったら。
これを認識して、これに続く画素をオンにしながらスキ
ャンしてゆく、そして、再び既に処理■でオンとされた
画素があったら、これを認識して、続り画素をオンとす
るのを中止する。即ち1面塗り部3は1面塗りのための
始点及び終点を固定することなく1例えば、奇数番目の
既にオンにされた画素を始点として、偶数番目の既にオ
ンにされた画素を終点として認識し、これらの間の画素
をオンとする面塗りを行う。
これにより、第2図図示の如く、生成された辺に挟まれ
た部分の画素がオンとされ、上の三角形baa及び下の
三角形edcの内部が共に面塗りされる。一方1点す、
c及びeはオンとされないまま残る。
■ 定義線描画部4は、頂点を結ぶ線、即ち、各辺を定
義する線を求め、対応する画素を全てオンとする。即ち
9辺生成部2で生成された辺は再度描画され(オンとさ
れ)、また1点す、  c及びeもオンとされる。これ
により1面塗りが完成する。
このように2本発明では、−度の(連続した)面塗りに
より、多角形の辺が交差する場合にもその多角形の内部
の領域を塗りつぶすことができる。
〔実施例〕
第4図は実施例構成図であり、処理システムを示してい
る。
第4図において、6は中央処理装置(CP U)とメモ
リからなる処理装置、7は画面の描画用メモリ (RA
M)、8はフラグ用レジスタである。
描画用メモリ7は、画面5の全画素に対して1対1に対
応するビット数(メモリセル)を持ち。
そのメモリ構成も画面5の構成と同一にされる。
描画用メモリ7の各ビット(メモリセル)は、対応する
画素のオン及びオフに応じて8各々、オン(“l”)及
びオフ(“O”)とされる。
面塗り処理部1が行う辺生成1面塗り、定義線描画の各
処理において、前述の如く行われる画面をスキャンして
画素をオン又はオフとする処理は。
実際は、n素ではなく、描画用メモリ7をスキャンして
そのビットをオン又はオフとする(“l”又は“0°を
書込む)処理である0面塗り処理部lは、描画用メモリ
7の内容に従って、処理装置6の画面制御部(図示して
いない)を介して画面5に表示を行う。
なお、描画用メモリ7の各ビットは、処理開始前にクリ
アされて、全てオフとされる。
フラグ用レジスタ8は1面塗り部3が描画用メモリ7を
スキャンした時に2辺生成部2により既にオンとされた
ビットがあったら、“l”が書込まれる(フラグが′1
′″とされる)、そして、再び既にオンとされたビット
があったら、フラグが“O″に戻される。フラグは、画
面5の走査線の右端にあたるピントまでスキャンしたら
、°0′にクリアされる。
面塗り部3は、フラグが“loの間は描画用メモリ7の
ビットをオンにしてスキャンを続け、フラグが0”の間
はこれを中止する。これにより。
始点と終点を固定することなく、複雑な図形でも正しく
面塗りができる。
次に、第5図及び第6図により2辺生成について説明す
る。
第5図及び第6図において1点線は走査線。
「、」及び「X」は、各々、1つの画素であって。
オン及びオフとされたものである。
辺生成のロジックとしては、第5図(A)。
(B)に示す如き2種類の方法がある0本発明では、生
成した辺を面塗りの始点又は終点(を示すフラグ)とし
て用いる。そこで、第5図(A)の如く走査方向に複数
のオンとされた画素が並ぶロジ、りは採らず、第5図(
B)の如<、1つの辺については1走査線上で1つの画
素がオンとされる方法が採られる。これにより1辺生成
を面塗りの前処理とすることができる。
辺生成の際の多角形の頂点の取扱いは、第6図(八)、
(B)に示すようにされる。
第6図(A)、 (B)に図示の如き頂点a及びCに挟
まれた頂点すについて、 (yc−3’b)及び(yb
−ya)を求める。ここで、y、ないしycは各頂点の
y座標であり、その頂点の対応する走査線が何本口のも
のであるかを示す。
このy座標演算処理の結果、(yc−3’b)と(yb
−ya)とが異符号となったら(第6図(A)の場合)
、各頂点を結ぶ辺は全部生成する(全画素をオンとする
)こととする、即ち1辺abと辺bcとが頂点すで重な
る。一方、 (y。
y、)と(yb −ya )とが同符号となったら(第
6図図示(B)の場合)、一方の辺(例えば辺ab)は
全部生成し、他方の辺(例えば辺bC)は挟まれた頂点
すについては生成せずその次の画素から辺生成を行うこ
ととする。
この後、生成した辺の各画素について1例えば各走査線
毎に排他的論理和(E−OR)の演算を行う、即ち、同
一の画素が重ねてオンとされている場合はオフとされ、
異なる画素がオンとされている場合はそのままとされる
このE−OR演算処理の結果、第6図(A)及び(B)
における点すは、各々、オフ及びオンとされる。なお、
第2図における点す及びCは第6図(A)と同様であり
、同図における点eも点a及びb又は点d及びCに挟ま
れた点として考えれば第6図(A)と同様である。また
、同図の点a及びdは第6図(B)と同様である。これ
により。
始点及び終点としてはならない画素を1辺生成によりオ
ンとされる画素から除いてオフとすることができる。
なお0辺生成後、 E−OR演算処理を先に行いオフと
された画素についてy座標演算処理を行ってオン又はオ
フに分けてもよい。
辺生成の際の水平線(走査線に一敗する線)の取扱いは
、第6図(C)ないしくG)に示すいずれかにされる。
即ち、水平線の始点又は終点の1つの画素がオンとされ
る。これにより、生成された辺を面塗りの始点又は終点
とすることができる。
次に、第7図ないし第8図(A)により0面塗りについ
て説明する。
第7図は面塗り部3が行う面塗り処理フローを示してい
る。
■ 画素(実際は対応するビット)のアドレスを(x、
  y)で示し、Xは走査方向の位置、yは何本目の走
査線かを示すとする。
多角形の頂点の座標が与えられると、走査すべき最小の
矩形を求め、その内の最も上の走査線のアドレスを0と
する。y=0として、最も上の走査線についてスキャン
を開始する。
■ フラグが“OSにクリアされる。
■ 1本の走査線で、最小の矩形の内部に含まれる最も
左側の画素のアドレスをOとする。x=Oとして、この
画素について調べる。
■ アドレス(0,0)の画素が9辺生成部2によって
既にオンとされているか否かが調べられる。
■ 当該画素がオフの時、フラグが“0″が“1”かが
調べられる。
フラグが0″であれば、この画素はオンとされるべきも
のではない、また1画素がオフであるから面塗りの始点
でも終点でもないのでフラグの変更も不要である。そこ
で、フラグが“0°なら何らの処理も行わず9次処理0
を行う。
■ フラグが′1”であれば、この画素はオンとされる
べきものである。そこで、当日亥画素をオフからオンと
する。il素がオフであったからフラグはそのままとさ
れる。
■ 当該画素がオンの時、フラグが“0′が“1゛かが
調べられ、この画素が面塗りの始点か終点かが調べられ
る。
■ フラグ力ぴ01であれば1画素のオンと合せて5面
塗りの始点であることが判る。そこで。
画素は既にオンとされているから、続く画素をオンとす
るために、フラグを“1”とする。
■ フラグが“l”であれば9画素のオンと合せて1面
塗りの終点であることが判る。そこで。
続く画素をオンとしない(オフとする)ために。
フラグを“1”から“0”にする。
[相] 以上で1つの画素についての処理を終り9次ア
ドレスの画素の処理のため、x=x+lとする。
■ 新しいXの値が前述の最小の矩形内であれば。
処理■ないし[相]をくり返す。
■ 新しいXの値が最小の矩形外であれば、当該走査線
上の画素の処理が終ったものとして2次アドレスの画素
の処理のためy−y+1とする。
0 新しいyの値が最小の矩形内の走査線を指すもので
あれば、処理■ないし0をくり返す、!&小の矩形外の
走査線を指すものであれば1面塗り処理は終了する。
以上の面塗り処理によって1例えば、第8図(A)に図
示の如く、その内部の領域を塗りつぶしたものが得られ
る。この時には、まだ1点aや辺(水平線)bの如く、
塗りつぶすべき画素がオフのまま残されている。なお2
辺すが残るのは。
第6図(D)又は(E)に従って5辺すの先頭の画素が
オフとされたためである。
この後、定義線を重ねて描画することにより。
点aと辺すとを塗りつぶし、第8図(B)に図示する完
成図が得られる。
〔発明の効果〕
以上説明したように9本発明によれば、多角形等の閉領
域の内部の面塗り処理において1辺生成により生成した
辺を面塗りの始点及び終点として用いることにより、−
度の連続した面塗りにより。
多角形の辺が交差したりするような複雑な図形について
も、その内部の領域を正しく面塗りすることができる。
【図面の簡単な説明】
第1図は本発明の原理構成図。 第2図は本発明の作用説明図。 第3図は本発明の処理フロー 第4図は実施例構成図。 第5図及び第6図は辺生成の説明図。 第7図は面塗り処理フロー 第8図は面塗りの説明図。 第9図は従来技術説明図。 1は面塗り処理部、2は辺生成部、3は面塗り部、4は
定義線描画部、5は画面、6は処理装置。 7は描画用メモリ、8はフラグ用レジスタである。 特許出願人 株式会社ピーエフニー

Claims (1)

  1. 【特許請求の範囲】 その内部を塗りつぶすべき多角形の各辺を生成する辺生
    成部(2)と、 前記塗りつぶしを行う面塗り部(3)と、 前記各辺を定義する線を前記辺生成部(2)で生成され
    た各辺に重ねて描画する定義線描画部(4)とを備え、 前記辺生成部(2)が、1つの辺に対して1本の走査線
    につき1つの画素をオンとすることにより前記各辺を生
    成すると共に、前記オンとされた画素のうち所定の条件
    の画素をオフとし、 前記面塗り部(3)が、各走査線につきオンとされた画
    素の間に存在する画素をオンとすることにより前記塗り
    つぶしを行い、 前記定義線描画部(4)が、前記辺生成部 (2)においてオフとされた前記所定の条件の画素をオ
    ンとする ことを特徴とする面塗り処理方式。
JP24213588A 1988-09-27 1988-09-27 面塗り処理方式 Pending JPH0290282A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP24213588A JPH0290282A (ja) 1988-09-27 1988-09-27 面塗り処理方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP24213588A JPH0290282A (ja) 1988-09-27 1988-09-27 面塗り処理方式

Publications (1)

Publication Number Publication Date
JPH0290282A true JPH0290282A (ja) 1990-03-29

Family

ID=17084831

Family Applications (1)

Application Number Title Priority Date Filing Date
JP24213588A Pending JPH0290282A (ja) 1988-09-27 1988-09-27 面塗り処理方式

Country Status (1)

Country Link
JP (1) JPH0290282A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006209654A (ja) * 2005-01-31 2006-08-10 Matsushita Electric Ind Co Ltd パターン付多角形描画装置

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5971093A (ja) * 1982-10-18 1984-04-21 株式会社日立製作所 塗潰し図形発生装置

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5971093A (ja) * 1982-10-18 1984-04-21 株式会社日立製作所 塗潰し図形発生装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006209654A (ja) * 2005-01-31 2006-08-10 Matsushita Electric Ind Co Ltd パターン付多角形描画装置

Similar Documents

Publication Publication Date Title
US4967392A (en) Drawing processor for computer graphic system using a plurality of parallel processors which each handle a group of display screen scanlines
EP0360155A2 (en) Image transformation method and device
US5579461A (en) Method and apparatus for filling polygons
KR100520652B1 (ko) 도형 색칠 장치
JPH0290282A (ja) 面塗り処理方式
JPH0146914B2 (ja)
US5371843A (en) Method and system for filling non-complex polygons using vertical spans
JPS63305478A (ja) パタ−ン情報復元装置
JP2806185B2 (ja) 多角形塗りつぶし装置
US7667714B2 (en) Patterned polygon rendering apparatus
JPH0350686A (ja) 図形処理方式
JP4214644B2 (ja) 2次元パターン生成装置
JPH0259871A (ja) 画像処理装置および画像処理方法
JP2836617B2 (ja) レンダリングプロセッサ
JP4214643B2 (ja) 2次元パターン生成方法及び装置
JP2822856B2 (ja) グラフィック処理装置
JPS62285188A (ja) 線分の表示方法
JP2782904B2 (ja) 多角形塗りつぶし方式
JPS61241880A (ja) 閉図形塗りつぶし装置
JP4515877B2 (ja) 輪郭強調描画装置
JP2000067254A (ja) 図形塗りつぶし装置
JP2941688B2 (ja) グラフィック処理装置
JP2613653B2 (ja) 画像処理装置
JPH05225353A (ja) 多角図形の塗り潰し表示方法
JP3350324B2 (ja) キャラクタ出力装置