(57)【要約】【課題】ベクタグラフィックスにおける閉領域図形の塗潰し処理を行う際に、輪郭線と走査線との交差位置のソートを不要とし、判定バッファの書換え処理量を低減でき、かつ、バッファのサイズに依存しない塗潰し処理を可能とする塗潰し処理装置、図形表示装置及び塗潰し処理方法を得ること。【解決手段】交差位置を走査線ごとのテーブルに記憶するテーブル記憶手段４と、書換え処理判定手段５による判定結果を走査線ごとに保持する塗潰し判定保持手段６とを組み込むことで、輪郭線と走査線との交差位置のソートを不要とし、判定バッファの書換え処理量を低減できる。書換え処理判定手段５による判定値の書換えの判定とともに、テーブルから交差位置の情報を消去させることで、バッファのサイズに依存しない塗潰し処理が可能となる。【選択図】          図２
2008282208.tif 000002
【特許請求の範囲】
【請求項１】
ベクタグラフィックスにおける閉領域図形を囲む輪郭線を辿る過程において、前記輪郭線と走査線とが交差する交差位置を判定する交差位置判定手段と、
前記交差位置判定手段により判定された前記交差位置を前記走査線ごとのテーブルに記憶するテーブル記憶手段と、
前記交差位置判定手段により判定された前記交差位置である第１交差位置と同一の前記走査線上であって、前記第１交差位置とは異なる交差位置である第２交差位置が、前記テーブルに記憶されているか否かを判定する交差位置記憶判定手段と、
前記交差位置記憶判定手段による判定に応じて、前記第１交差位置及び前記第２交差位置の間について判定値を書き換えるか否かを判定する書換え処理判定手段と、
前記書換え処理判定手段による判定結果を前記走査線ごとに保持する塗潰し判定保持手段と、
予め設定された塗潰し条件と、前記塗潰し判定保持手段に保持された前記判定結果とを比較することにより塗潰し領域を決定する塗潰し条件比較手段と、
前記塗潰し条件比較手段により決定された前記塗潰し領域に対して塗潰し処理を施す塗潰し生成手段と、
を備え、
前記書換え処理判定手段による前記判定値の書換えの判定とともに、前記テーブルから前記第２交差位置の情報を消去させることを特徴とする塗潰し処理装置。
【請求項２】
前記書換え処理判定手段は、前記判定値を反転させるか否かを判定することを特徴とする請求項１に記載の塗潰し処理装置。
【請求項３】
前記交差位置判定手段により判定された前記交差位置における前記輪郭線のベクトル方向を判定する輪郭線向き判定手段を備え、
前記テーブル記憶手段は、前記輪郭線向き判定手段により判定された前記ベクトル方向を前記テーブルに記憶し、
前記書換え処理判定手段は、前記第２交差位置について前記テーブルに記憶された前記ベクトル方向に応じて前記判定値を加算又は減算するか否かを判定し、
前記書換え処理判定手段による加算又は減算の判定とともに、前記テーブルから前記ベクトル方向の情報を消去させることを特徴とする請求項１に記載の塗潰し処理装置。
【請求項４】
表示器と、
ベクタグラフィックスにおける閉領域図形を囲む輪郭線を辿る過程において、前記輪郭線と走査線とが交差する交差位置を判定する交差位置判定手段と、
前記交差位置判定手段により判定された前記交差位置を前記走査線ごとのテーブルに記憶するテーブル記憶手段と、
前記交差位置判定手段により判定された前記交差位置である第１交差位置と同一の前記走査線上であって、前記第１交差位置とは異なる交差位置である第２交差位置が、前記テーブルに記憶されているか否かを判定する交差位置記憶判定手段と、
前記交差位置記憶判定手段による判定に応じて、前記第１交差位置及び前記第２交差位置の間について判定値を書き換えるか否かを判定する書換え処理判定手段と、
前記書換え処理判定手段による判定結果を前記走査線ごとに保持する塗潰し判定保持手段と、
予め設定された塗潰し条件と、前記塗潰し判定保持手段に保持された前記判定結果とを比較することにより塗潰し領域を決定する塗潰し条件比較手段と、
前記塗潰し条件比較手段により決定された前記塗潰し領域に対して塗潰し処理を施す塗潰し生成手段と、
前記塗潰し生成手段により塗潰し処理が施された前記閉領域図形を前記表示器に表示させる表示手段と、
を備え、
前記書換え処理判定手段による前記判定値の書換えの判定とともに、前記テーブルから前記第２交差位置の情報を消去させることを特徴とする図形表示装置。
【請求項５】
ベクタグラフィックスにおける閉領域図形を囲む輪郭線を辿る過程において、前記輪郭線と走査線とが交差する交差位置を判定する交差位置判定手段と、
前記交差位置判定手段により判定された前記交差位置を前記走査線ごとのテーブルに記憶するテーブル記憶手段と、
前記交差位置判定手段により判定された前記交差位置である第１交差位置と同一の前記走査線上であって、前記第１交差位置とは異なる交差位置である第２交差位置が、前記テーブルに記憶されているか否かを判定する交差位置記憶判定手段と、
前記交差位置記憶判定手段による判定に応じて、前記第１交差位置及び前記第２交差位置の間について判定値を書き換えるか否かを判定する書換え処理判定手段と、
前記書換え処理判定手段による判定結果を前記走査線ごとに保持する塗潰し判定保持手段と、
予め設定された塗潰し条件と、前記塗潰し判定保持手段に保持された前記判定結果とを比較することにより塗潰し領域を決定する塗潰し条件比較手段と、
前記塗潰し条件比較手段により決定された前記塗潰し領域に対して塗潰し処理を施す塗潰し生成手段と、
を備え、
前記書換え処理判定手段による前記判定値の書換えの判定とともに、前記テーブルから前記第２交差位置の情報を消去させることを特徴とする塗潰し処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ベクタグラフィックスにおける閉領域図形に対して塗潰し処理を実行する塗潰し処理装置、図形表示装置及び塗潰し処理方法の技術に関する。
【背景技術】
【０００２】
従来、コンピュータ図形処理のベクタグラフィックスにおいて、閉領域図形に対して塗潰し処理を実行するための手法として、例えば、走査線に交差する輪郭線を抽出し、走査線と輪郭線の交差位置を走査方向にソートするものがある。交差する順番に走査線を辿り、交差位置に辿り着いたときに二値の反転や、輪郭線のベクトル方向に応じて加算器にて値の１加算又は１減算をし、その結果に従い走査線方向へ塗潰し処理を行う。また、ソートを行わない手法として、走査線の開始位置から輪郭線までの領域について輪郭線の向きによって＋−（又はXOR）することで判定バッファを書換え、かかる処理を交差位置の数だけ実行するものがある。塗潰し判定は、その結果得られた判定バッファの内容に従って行われる。また、輪郭線上の一点を頂点とし輪郭線に沿って隣接する三角形の領域について、頂点の向きによって二値の反転や＋−の書き換えをし、その結果得られた判定バッファの内容に従って塗潰し判定を行うものがある（例えば、特許文献１参照）。
【０００３】
【特許文献１】特公平７−６０４６５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
従来の手法によると、走査線ごとに輪郭線との交差位置を毎回抽出し、交差位置を走査方向へソートする場合には、長い処理時間が必要となる。走査線ごとに交差位置を抽出する処理に代えて、交差位置の座標を保持する場合には、保持可能な座標数がバッファのサイズに左右されることとなる。特許文献１に記載された技術では、三角形の各領域について判定バッファを書換え、図形の塗潰し領域を判定する。この場合、描画を行わない領域に対しても判定バッファの書換えを行う必要があることから、余分な処理のために判定バッファの書換え処理量が増大することとなる。
【０００５】
本発明は、上記に鑑みてなされたものであって、ベクタグラフィックスにおける閉領域図形の塗潰し処理を行う際に、輪郭線と走査線との交差位置のソートを不要とし、判定バッファの書換え処理量を低減でき、かつ、バッファのサイズに依存しない塗潰し処理を可能とする塗潰し処理装置、図形表示装置及び塗潰し処理方法を得ることを目的とする。
【課題を解決するための手段】
【０００６】
上述した課題を解決し、目的を達成するために、本発明は、ベクタグラフィックスにおける閉領域図形を囲む輪郭線を辿る過程において、輪郭線と走査線とが交差する交差位置を判定する交差位置判定手段と、交差位置判定手段により判定された交差位置を走査線ごとのテーブルに記憶するテーブル記憶手段と、交差位置判定手段により判定された交差位置である第１交差位置と同一の走査線上であって、第１交差位置とは異なる交差位置である第２交差位置が、テーブルに記憶されているか否かを判定する交差位置記憶判定手段と、交差位置記憶判定手段による判定に応じて、第１交差位置及び第２交差位置の間について判定値を書き換えるか否かを判定する書換え処理判定手段と、書換え処理判定手段による判定結果を走査線ごとに保持する塗潰し判定保持手段と、予め設定された塗潰し条件と、塗潰し判定保持手段に保持された判定結果とを比較することにより塗潰し領域を決定する塗潰し条件比較手段と、塗潰し条件比較手段により決定された塗潰し領域に対して塗潰し処理を施す塗潰し生成手段と、を備え、書換え処理判定手段による判定値の書換えの判定とともに、テーブルから第２交差位置の情報を消去させることを特徴とする。
【発明の効果】
【０００７】
この発明によれば、交差位置を走査線ごとのテーブルに記憶するテーブル記憶手段と塗潰し判定保持手段とを組み込むことにより、輪郭線と走査線との交差位置のソートを不要にできる。描画を行わない領域に対する判定バッファの書換えを不要とすることで、判定バッファの書換え処理量を低減できる。テーブルに記憶された交差位置の情報は書換え処理の判定とともに消去されるため、バッファのサイズに依存しない塗潰し処理が可能となる。これにより、ベクタグラフィックスにおける閉領域図形の塗潰し処理を行う際に、輪郭線と走査線との交差位置のソートを不要とし、判定バッファの書換え処理量を低減でき、かつ、バッファのサイズに依存しない塗潰し処理を可能にできるという効果を奏する。
【発明を実施するための最良の形態】
【０００８】
以下に図面を参照して、本発明に係る塗潰し処理装置、図形表示装置及び塗潰し処理方法の最良な実施の形態を詳細に説明する。
【０００９】
実施の形態１．
図１は、本発明の実施の形態１に係る図形表示装置の構成図である。ＣＰＵ（Central  Processing  Unit）１５は、装置全体の制御を行うとともに、表示器５１において図形を表示させるためのプログラムを実行する。主メモリ１６は、ＣＰＵ１５が処理するデータやプログラムを記憶する。ＣＤ−ＲＯＭコントローラ１７は、ＣＤ−ＲＯＭの図形情報をアクセスする。通信コントローラ１８は、不図示の他の装置との情報を送受する。
【００１０】
グラフィックスプロセッサ２０は、グラフィックスメモリ４０内の表示領域において図形を描画し、さらに描画したデータを読み出して表示器５１に図形を表示させる表示手段を構成する。グラフィックスメモリ４０を構成する素子としては、例えばＤＲＡＭを用いるのが望ましい。ＤＲＡＭは、他のメモリと比べて、チップ面積に対するトランジスタの集積度が高いという特長を備える。また、高速ページモードアクセスというアクセス方式を持っており、アドレスの上位部分（例えばビット９以上）が一致している場合の連続アクセスにおいて、高速なアクセスが可能になる。ＤＡＣ（Digital  to  Analog  Converter）５０は、グラフィックスプロセッサ２０が出力するディジタル方式の表示データをアナログデータに変換する。
【００１１】
グラフィックスプロセッサ２０のＣＰＵ  Ｉ／Ｆ２１は、システム制御レジスタ３２等のレジスタ類やグラフィックスメモリ４０へＣＰＵ１５がアクセスするための制御を行う。描画ユニット２３は、グラフィックスメモリ４０内のディスプレイリストをフェッチし、そのリストに示されるコマンドに従って描画を行う。パラメータ変換部２２は、必要に応じてコマンドのパラメータを変換する。表示コントローラ２４は、描画ユニット２３が描画したデータを表示するための制御を行う。
【００１２】
グラフィックスプロセッサ２０は、各要素が何らかの処理を行う度にグラフィックスメモリ４０へアクセスするため、グラフィックスメモリ４０へのアクセス効率を高めることが処理速度の向上につながる。そこで、グラフィックスプロセッサ２０は、アクセス要求単位にキャッシュやＦＩＦＯを持つことでアクセス効率を高める。
【００１３】
ＣＰＵ  ＦＩＦＯ２５は、ＣＰＵ１５によるグラフィックスメモリ４０のアクセスを高速化させる。キャッシュ２６、２７、２８は、それぞれコマンド専用、テクスチャ専用、描画専用のキャッシュである。表示バッファ２９は、表示データ用のバッファである。
【００１４】
メモリコントローラ３０は、キャッシュ２６〜２８やＣＰＵ  ＦＩＦＯ２５等から、グラフィックスメモリ４０に対するアクセス要求を受け入れ、決定した優先順位に応じてアクセスを制御する。メモリコントローラ３０は、表示コントローラ２４からのアクセスを最優先する。但し、ＣＰＵ１５や描画ユニット２３からのアクセスが行われる間は、ＣＰＵ１５や描画ユニット２３からのアクセスが表示コントローラ２４からのアクセスより優先される。
【００１５】
システム制御レジスタ３２は、グラフィックスプロセッサ２０の動作モードを指定するレジスタである。システム制御レジスタ３２は、ＣＰＵ１５のキャッシュモードを指定するＣＡＭ（CPU  Access  Mode）３２０を有している。
【００１６】
次に、グラフィックスプロセッサ２０及びグラフィックスメモリ４０により構成される塗潰し処理装置の特徴的な機能である、ベクタグラフィックスにおける閉領域図形の塗潰し処理について説明する。
【００１７】
図２は、塗潰し処理を実行する塗潰し処理装置の機能構成を示すブロック図である。塗潰し処理装置は、交差判定器１、交差位置判定器２、交差位置記憶判定器３、記憶テーブル４、書換え処理判定器５、塗潰し判定バッファ６、塗潰し条件比較器７、及び塗潰し生成器８を備える。
【００１８】
交差判定器１は、閉領域図形を囲む輪郭線を辿る過程において、輪郭線と走査線との交差の有無を判定する。交差位置判定器２は、輪郭線と走査線とが交差する交差位置を判定する交差位置判定手段を構成する。交差位置記憶判定器３は、第２交差位置が記憶テーブル４に記憶されているか否かを判定する交差位置記憶判定手段を構成する。交差位置判定手段により判定された交差位置を第１交差位置とすると、第２交差位置は、第１交差位置と同一の走査線上であって、第１交差位置とは異なる交差位置である。記憶テーブル４は、交差位置判定器２により判定された交差位置を走査線ごとのテーブルに記憶するテーブル記憶手段を構成する。
【００１９】
書換え処理判定器５は、交差位置記憶判定器３による判定に応じて、第１交差位置及び第２交差位置の間について判定値を書き換えるか否かを判定する書換え処理判定手段を構成する。判定値とは、走査線上の画素の画素値である。書換え処理判定器５は、判定値を反転させるか否かを判定する。また、書換え処理判定器５による判定値の反転の判定とともに、テーブルから第２交差位置の情報を消去させる。
【００２０】
塗潰し判定バッファ６は、書換え処理判定器５による判定結果を走査線ごとに保持する塗潰し判定保持手段を構成する。塗潰し判定バッファ６は、書換え処理判定器５の判定に応じて判定値を反転させ、その結果を保持する。塗潰し条件比較器７は、予め設定された塗潰し条件と、塗潰し判定バッファ６に保持された判定結果とを比較することにより塗潰し領域を決定する塗潰し条件比較手段を構成する。塗潰し生成器８は、塗潰し条件比較器７により決定された塗潰し領域に対して塗潰し処理を施す塗潰し生成手段を構成する。
【００２１】
次に、塗潰し処理装置の動作について説明する。直線や曲線を組合せた図形の輪郭線等のデータを記録するベクタグラフィックスでは、図３に示すように、閉領域を示す輪郭線の終了位置は、開始位置と一致する。開始位置から輪郭線の向きに辿る間、交差判定器１は、走査線と輪郭線との交差の有無を判定する。ここでは、塗潰しのための判定値の書換えについて、図３に示す閉領域図形の輪郭線と、走査線Ａ、走査線Ｂ、走査線Ｃとの交差位置１０１〜１１０を例として説明する。輪郭線の向きは、図中矢印で表す。
【００２２】
図４−１及び図４−２は、記憶テーブル４における記憶、及び塗潰し判定バッファ６における情報の保持について説明する図である。塗潰し判定バッファ６は、処理前において全て判定値「０」で初期化されている。図４−１に示すように開始位置から輪郭線の向きに輪郭線を辿ると、交差位置判定器２は、走査線Ｂに対する交差位置１０８を判定する。交差位置記憶判定器３は、走査線Ｂに対する他の交差位置が記憶テーブル４に記憶されているか否かを判定する。走査線Ｂに対するテーブルＴＢに交差位置は記憶されていないため、走査線Ｂに対するテーブルＴＢに交差位置１０８が記憶される。次に、交差位置判定器２は、走査線Ａに対する交差位置１０４を判定する。走査線Ａに対するテーブルＴＡに交差位置は記憶されていないため、走査線Ａに対するテーブルＴＡに交差位置１０４が記憶される。
【００２３】
次に、交差位置判定器２は、走査線Ａに対する交差位置１０１を判定する。判定された交差位置１０１を第１交差位置とすると、走査線Ａに対するテーブルＴＡには第２交差位置である交差位置１０４が記憶されている。書換え処理判定器５は、両交差位置１０４、１０１間の判定値を反転させる判定を行う。両交差位置１０４、１０１間の判定値は「０」から「１」へ反転され、塗潰し判定バッファ６に保持される。また、書換え処理判定器５による判定値の反転の判定とともに、第２交差位置である交差位置１０４の情報がテーブルＴＡから消去される。
【００２４】
次に、交差位置判定器２は、走査線Ｂに対する交差位置１０６を判定する。走査線Ｂに対するテーブルＴＢには他の交差位置１０８が記憶されている。両交差位置１０８、１０６間の判定値は「０」から「１」へ反転され、塗潰し判定バッファ６に保持される。また、交差位置１０８の情報がテーブルＴＢから消去される。
【００２５】
さらに、交差位置判定器２は、図４−２に示すように、走査線Ｂに対する交差位置１０７を判定する。走査線Ｂに対するテーブルＴＢに交差位置は記憶されていないため、走査線Ｂに対するテーブルＴＢに交差位置１０７が記憶される。これと同様に、走査線Ａに対するテーブルＴＡには交差位置１０３が記憶される。
【００２６】
次に、交差位置判定器２は、走査線Ａに対する交差位置１０２を判定する。走査線Ａに対するテーブルＴＡには他の交差位置１０３が記憶されている。両交差位置１０３、１０２間の判定値は「１」から「０」へ反転され、塗潰し判定バッファ６に保持される。また、交差位置１０３の情報がテーブルＴＡから消去される。
【００２７】
次に、交差位置判定器２は、走査線Ｂに対する交差位置１０５を判定する。走査線Ｂに対するテーブルＴＢには他の交差位置１０７が記憶されている。書換え処理判定器５により両交差位置１０７、１０５間の判定値を反転させる判定がなされることで、交差位置１０５、１０６間の判定値は「０」から「１」へ反転され、塗潰し判定バッファ６に保持される。また、交差位置１０６、１０７間の判定値は「１」から「０」へ反転され、塗潰し判定バッファ６に保持される。交差位置１０７の情報は、テーブルＴＡから消去される。
【００２８】
次に、交差位置判定器２は、走査線Ｃに対する交差位置１１０を判定する。走査線Ｃに対するテーブルＴＣに交差位置は記憶されていないため、走査線Ｃに対するテーブルＴＣに交差位置１１０が記憶される。さらに、交差位置判定器２により走査線Ｃ上の交差位置１０９が判定されると、両交差位置１０９、１１０間の判定値は「０」から「１」へ反転され、塗潰し判定バッファ６に保持される。また、交差位置１１０の情報がテーブルＴＣから消去される。
【００２９】
開始位置から輪郭線の向きに輪郭線を辿り、再び開始位置に到達する間、塗潰し処理装置は、以上のような処理を全ての走査線について実行する。塗潰し条件比較器７は、塗潰し判定バッファ６に保持された内容と塗潰し条件とを比較し、塗潰し領域に対して塗潰し処理を行うための塗潰し制御信号を出力する。塗潰し条件としてノン・ゼロ方式を採用する場合、「０」以外の判定値である領域を塗潰すこととなる。塗潰し生成器８は、塗潰し制御信号に応じて、ピクセルごとの塗潰しを実行する。以上により、塗潰し処理装置は、閉領域の塗潰し処理を実行する。グラフィックスプロセッサ２０（図１参照）は、塗潰し生成器８により塗潰し処理が施された閉領域図形を表示器５１（図１参照）に表示させる。
【００３０】
記憶テーブル４の領域は有限であることから、全ての交差位置を保持する従来の技術の場合、走査線ごとに確保されるテーブルのサイズによっては複雑な図形に対応できないことがある。複雑な図形に対応するためには、描画面を分割し、各分割画面に対してテーブルを割り当てることも考えられる。この場合、画面の分割数だけ同様の処理の繰り返しが必要となるため、処理量が増大することとなる。
【００３１】
本発明の塗潰し処理装置は、記憶テーブル４と塗潰し判定バッファ６を組み込むことにより、輪郭線と走査線との交差位置のソートを不要とし、かつ塗潰し判定バッファ６の書換え処理量を低減できる。テーブルに記憶された交差位置の情報は書換え処理の判定とともに消去されるため、各走査線について１つの交差位置の情報を記憶可能であれば足りる。よって、バッファのサイズに依存しない塗潰し処理を可能にできる。
【００３２】
実施の形態２．
図５は、本発明の実施の形態２に係る塗潰し処理装置の機能構成を示すブロック図である。本実施例の塗潰し処理装置は、交差判定器１、交差位置判定器２、輪郭線向き判定器１１、交差位置記憶判定器３、記憶テーブル１２、書換え処理判定器１３、塗潰し判定バッファ１４、塗潰し条件比較器７、及び塗潰し生成器８を備える。上記実施の形態１と同一の部分には同一の符号を付し、重複する説明を省略する。
【００３３】
輪郭線向き判定器１１は、交差位置判定器２により判定された交差位置における輪郭線のベクトル方向を判定する輪郭線向き判定手段を構成する。ベクトル方向は、例えば、上向きか下向きかにより判定される。記憶テーブル１２は、交差位置判定器２により判定された交差位置を走査線ごとのテーブルに記憶するテーブル記憶手段を構成する。また、記憶テーブル１２は、輪郭線向き判定器１１により判定されたベクトル方向をテーブルに記憶する。
【００３４】
書換え処理判定器１３は、交差位置記憶判定器３による判定に応じて、第１交差位置及び第２交差位置の間について判定値を書き換えるか否かを判定する書換え処理判定手段を構成する。書換え処理判定器１３は、第２交差位置についてテーブルに記憶されたベクトル方向に応じて判定値を加算又は減算するか否かを判定する。ここで、書換え処理判定器１３は、第１交差位置及び第２交差位置を比較し、ベクトル向きが上向きである交差位置の座標が他方の交差位置の座標より大きければ判定値を１加算する判定を行い、ベクトル向きが上向きである交差位置の座標が他方の交差位置の座標より小さければ判定値を１減算する判定を行う。なお、図中横方向の座標は、左から右へ行くに従い大きくなるものとする。
【００３５】
また、書換え処理判定器１３による判定値の加算又は減算の判定とともに、テーブルから第２交差位置の情報、及び第２交差位置におけるベクトル方向の情報を消去させる。塗潰し判定バッファ１４は、書換え処理判定器１３による判定結果を走査線ごとに保持する塗潰し判定保持手段を構成する。塗潰し判定バッファ１４は、書換え処理判定器１３の判定に応じて判定値を加算又は減算させ、その結果を保持する。
【００３６】
図６−１及び図６−２は、記憶テーブル１２における記憶、及び塗潰し判定バッファ１４における情報の保持について説明する図である。図６−１に示すように、開始位置から輪郭線の向きに輪郭線を辿ると、交差位置判定器２は、走査線Ｂに対する交差位置１０８を判定する。輪郭線向き判定器１１は、交差位置における輪郭線の向きが上向きであるか下向きであるかを判定する。交差位置１０８において、輪郭線の向きは上向きである。
【００３７】
交差位置記憶判定器３は、走査線Ｂに対する他の交差位置が記憶テーブル４に記憶されているか否かを判定する。走査線Ｂに対するテーブルＴＢに交差位置は記憶されていないため、走査線Ｂに対するテーブルＴＢに交差位置１０８が記憶される。また、テーブルＴＢには、ベクトル向きが上向きである旨が記憶される。これと同様に、走査線Ａに対するテーブルＴＡには交差位置１０４が記憶される。また、テーブルＴＡには、交差位置１０４におけるベクトル向きが上向きである旨が記憶される。
【００３８】
次に、交差位置判定器２は、走査線Ａに対する交差位置１０１を判定する。交差位置１０１において、輪郭線の向きは下向きである。判定された交差位置１０１を第１交差位置とすると、走査線Ａに対するテーブルＴＡには第２交差位置である交差位置１０４が記憶されている。
【００３９】
両交差位置１０４、１０１を比較すると、ベクトル向きが上向きである交差位置１０４の座標が他方の交差位置１０１の座標より大きい。よって、書換え処理判定器１３は、両交差位置１０４、１０１間の判定値を１加算させる判定を行う。両交差位置１０４、１０１間の判定値は１加算により「０」から「１」へ変換され、塗潰し判定バッファ１４に保持される。また、書換え処理判定器１３による判定値の加算の判定とともに、第２交差位置である交差位置１０４の情報、及び交差位置１０４におけるベクトル向きの情報がテーブルＴＡから消去される。
【００４０】
次に、交差位置判定器２は、走査線Ｂに対する交差位置１０６を判定する。交差位置１０６において、ベクトルの向きは下向きである。走査線Ｂに対するテーブルＴＢには他の交差位置１０８が記憶されている。両交差位置１０８、１０６を比較すると、ベクトル向きが上向きである交差位置１０８の座標が他方の交差位置１０６の座標より大きい。書換え処理判定器１３は、交差位置１０８、１０６間の判定値を１加算させる判定を行う。両交差位置１０８、１０６間の判定値は１加算により「０」から「１」へ変換され、塗潰し判定バッファ１４に保持される。また、書換え処理判定器１３による判定値の加算の判定とともに、交差位置１０８の情報、及び交差位置１０８におけるベクトル向きの情報がテーブルＴＢから消去される。
【００４１】
さらに、交差位置判定器２は、図６−２に示すように、走査線Ｂに対する交差位置１０７を判定する。走査線Ｂに対するテーブルＴＢに交差位置は記憶されていないため、走査線Ｂに対するテーブルＴＢに交差位置１０７が記憶される。また、テーブルＴＢには、交差位置１０７におけるベクトル向きが上向きである旨が記憶される。走査線Ａに対するテーブルＴＡには、交差位置１０３が記憶される。さらに、テーブルＴＡには、交差位置１０３におけるベクトル向きが上向きである旨が記憶される。
【００４２】
次に、交差位置判定器２は、走査線Ａに対する交差位置１０２を判定する。交差位置１０２において、ベクトルの向きは下向きである。走査線Ａに対するテーブルＴＡには他の交差位置１０３が記憶されている。両交差位置１０３、１０２を比較すると、ベクトル向きが上向きである交差位置１０３の座標が他方の交差位置１０２の座標より大きい。よって、書換え処理判定器１３は、交差位置１０３、１０２間の判定値を１加算させる判定を行う。両交差位置１０３、１０２間の判定値は１加算により「１」から「２」へ変換され、塗潰し判定バッファ１４に保持される。また、書換え処理判定器１３による判定値の加算の判定とともに、交差位置１０３の情報、及び交差位置１０３におけるベクトル向きの情報がテーブルＴＡから消去される。
【００４３】
次に、交差位置判定器２は、走査線Ｂに対する交差位置１０５を判定する。交差位置１０５において、ベクトルの向きは下向きである。走査線Ｂに対するテーブルＴＢには他の交差位置１０７が記憶されている。両交差位置１０７、１０５を比較すると、ベクトル向きが上向きである交差位置１０７の座標が他方の交差位置１０５の座標より大きい。よって、書換え処理判定器１３は、交差位置１０７、１０５の間の判定値を１加算させる判定を行う。両交差位置１０５、１０６間の判定値は１加算により「０」から「１」へ変換され、塗潰し判定バッファ１４に保持される。また、両交差位置１０６、１０７間の判定値は１加算により「１」から「２」へ変換され、塗潰し判定バッファ１４に保持される。交差位置１０７の情報、及び交差位置１０７におけるベクトル向きの情報は、テーブルＴＡから消去される。
【００４４】
次に、交差位置判定器２は、走査線Ｃに対する交差位置１１０を判定する。走査線Ｃに対するテーブルＴＣに交差位置は記憶されていないため、走査線Ｃに対するテーブルＴＣに交差位置１１０が記憶される。また、テーブルＴＣには、交差位置１１０におけるベクトル向きが下向きである旨が記憶される。さらに、交差位置判定器２は、走査線Ｃに対する交差位置１０９を判定する。交差位置１０９において、ベクトルの向きは上向きである。走査線Ｃに対するテーブルＴＣには他の交差位置１１０が記憶されている。
【００４５】
両交差位置１１０、１０９を比較すると、ベクトル向きが上向きである交差位置１０９の座標が他方の交差位置１１０の座標より小さい。書換え処理判定器１３は、交差位置１１０、１０９間の判定値を１減算させる判定を行う。両交差位置１１０、１０９間の判定値は１減算により「０」から「−１」へ変換され、塗潰し判定バッファ１４に保持される。また、書換え処理判定器１３による判定値の減算の判定とともに、交差位置１１０の情報、及び交差位置１１０におけるベクトル向きの情報がテーブルＴＣから消去される。
【００４６】
開始位置から輪郭線の向きに輪郭線を辿り、再び開始位置に到達する間、塗潰し処理装置は、以上のような処理を全ての走査線について実行する。塗潰し条件比較器７は、塗潰し判定バッファ６に保持された内容と塗潰し条件とを比較し、塗潰し領域に対して塗潰し処理を行うための塗潰し制御信号を出力する。塗潰し条件としてノン・ゼロ方式を採用する場合、「０」以外の判定値である領域を塗潰すこととなる。また、イーブン・オッド方式を採用する場合、奇数の判定値である領域を塗潰すこととなる。塗潰し生成器８は、塗潰し制御信号に応じて、ピクセルごとの塗潰しを実行する。以上により、塗潰し処理装置は、閉領域の塗潰し処理を実行する。
【００４７】
本実施の形態の場合も、上記実施の形態１の場合と同様に、輪郭線と走査線との交差位置のソートを不要とし、かつ塗潰し判定バッファ１４の書換え処理量を低減できる。テーブルに記憶された交差位置の情報、及びベクトル向きの情報は書換え処理の判定とともに消去されるため、各走査線について１つの交差位置の情報、及びベクトル向きの情報を記憶可能であれば足りる。よって、バッファのサイズに依存しない塗潰し処理を可能にできる。
【産業上の利用可能性】
【００４８】
以上のように、本発明に係る塗潰し処理装置、図形表示装置及び塗潰し処理方法は、グラフィックスプロセッサにおけるベクタグラフィックスの高速化に適している。
【図面の簡単な説明】
【００４９】
【図１】本発明の実施の形態１に係る図形表示装置の構成図である。
【図２】塗潰し処理装置の機能構成を示すブロック図である。
【図３】閉領域の輪郭線と走査線との交差を示す模式図である。
【図４−１】記憶テーブルへの記憶等について説明する図である。
【図４−２】記憶テーブルへの記憶等について説明する図である。
【図５】本発明の実施の形態２に係る塗潰し処理装置の機能構成を示すブロック図である。
【図６−１】記憶テーブルへの記憶等について説明する図である。
【図６−２】記憶テーブルへの記憶等について説明する図である。
【符号の説明】
【００５０】
２  交差位置判定器
３  交差位置記憶判定器
４、１２  記憶テーブル
５、１３  書換え処理判定器
６、１４  塗潰し判定バッファ
７  塗潰し条件比較器
８  塗潰し生成器
１１  輪郭線向き判定器
５１  表示器
【図１】
2008282208.tif 000003
【図２】
2008282208.tif 000004
【図３】
2008282208.tif 000005
【図４−１】
2008282208.tif 000006
【図４−２】
2008282208.tif 000007
【図５】
2008282208.tif 000008
【図６−１】
2008282208.tif 000009
【図６−２】
2008282208.tif 000010