JPH01237775A - 描画データ塗り潰し方法 - Google Patents

描画データ塗り潰し方法

Info

Publication number
JPH01237775A
JPH01237775A JP6342188A JP6342188A JPH01237775A JP H01237775 A JPH01237775 A JP H01237775A JP 6342188 A JP6342188 A JP 6342188A JP 6342188 A JP6342188 A JP 6342188A JP H01237775 A JPH01237775 A JP H01237775A
Authority
JP
Japan
Prior art keywords
data
point
points
coordinate
drawing data
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
JP6342188A
Other languages
English (en)
Inventor
Masakazu Ishikawa
雅一 石川
Masayuki Saito
雅行 斎藤
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP6342188A priority Critical patent/JPH01237775A/ja
Publication of JPH01237775A publication Critical patent/JPH01237775A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Image Generation (AREA)

Abstract

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

Description

【発明の詳細な説明】 [産業上の利用分野] この発明は、文字フォントや図形の塗り潰しに必要な開
領域描画データの塗り潰し方法に関し、特に輪郭点を用
いた高速度な描画データ塗り潰し方法に関するものであ
る。
[従来の技術] −mに、レーザプリンタやグラフィックデイスプレィに
図形を出力する場合は、図形に対応した描画データを作
成する必要がある。
第4図は一般的なLED(発光ダイオード)プリンタの
データ処理部を示すブロック図であり、図において、(
1)はホストコンピュータ(図示せず)から図形データ
が入力される入力インクフェイス、(2)はCPU(3
)及び描画用LSI(4)を含み図形データを描画デー
タに変換するためのデータ制御部、(5)はデータ制御
部(4)からの描画データを座標系内のディジタル2値
(ドツトイメージ)図形として格納するためのフレーム
メモリ、(6)はフレームメモリ(5)からの描画デー
タをプリンタ(図示せず)に送出するためのプリンタイ
ンタフェイス、(7)はこれらの構成要素(1)〜(6
)を相互接続してデータ及びプログラム命令等の伝達を
行なうためのバスである。
まず、ホストコンピュータから出力された図形データは
、入力インタフェイス(1)を介してデータ制御部(2
うに取り込まれ、CP U (3)により解釈されて描
画用のコマンドに変換される。描画用t、5I(4)は
、描画用のコマンドに基づいて描画データを作成し、こ
れをフレームメモリ(5)内に書き込む。
フレームメモリ(5)は、X軸及びY軸の座標軸を持つ
2次元空間であり、各描画データの位置は整数座標によ
って表わされ、各座標点は「1」又はrQJの1ビツト
に対応している。
データ制御部(2)は、フレームメモリ(5)に1頁分
の描画データが書き込まれた時点で、この描画データを
プリンタインタフェイス(6)を介してプリンタに送出
し、所望の図形を出力する。
このような描画データの作成において、輪郭点で囲まれ
た図形の閉領域を塗り潰す必要がある場合、従来は、塗
り潰し点が閉領域をはみ出さないように且つ確実に塗り
潰すため、以下の方法が用いられている。
第5図は、例えばジェームス・デイ−・フオレイ(JA
MES D 、FOLEY)及びアンドリース・パンダ
ム(ANDRIES  VANDAM)著の「相互ノコ
ンピュータ図形の基本(Fundamental of
 I nteractive ComputerGra
ph 1es) Jの第446〜451頁に記載された
、従来の描画データ塗り潰し方法を示す説明図である。
この方法は、フレームメモリ(5)内の閉領域を示すデ
ータを整数座標上に展開し、閉領域内の1点から順次塗
り潰しを行なう方法であり、第5図(a)〜(d)はフ
レームメモリ(5)内の座標空間内に刻々と書き込まれ
ていく描画データを示し、黒丸は輪郭点、白丸は塗り潰
し点を示している。尚、ここでは、塗り潰し順序の優先
順位を、例えば、右、左、下、上、としている。
まず、輪郭点で囲まれた閉領域内の成る1点を指定して
開始点psとし、この開始点psから右方向に描画デー
タを順次書き込んでいく、このとき、塗り潰し点の上下
左右に近接するフレームメモリ(5〉上の状態、即ち、
データが有る(rlJ)か無い(’OJ)かを常に観察
する。
そして、開始点PSから塗り潰し点P1まで書き込んだ
ときに、上部のデータが「1」から「0」に変わったこ
とを判別し、塗り潰し点P、の上部に閉領域内の点があ
ることを、データ制御部(2)内のスタックに情報とし
て格納する。又、このとき、塗り潰し点P1の右側のデ
ータはrlJであるから、ここを図形の境界と認識して
右方向の描画データ書き込みは終了する。
次に、開始点Psから左方向の描画データ書き込みを順
次行ない、塗り潰し点P2及びP、についての情報を、
塗り潰し点P、の場合と同様にスタックに格納する。そ
して、塗り潰し点P4において、左側のデータが「1」
になったことを認識して左方向の描画データ書き込みを
終了する。
次に、開始点psを含む横ラインの下側のデータ状態(
どの点から左に閉領域内の点があるが)を示す情報をス
タックに格納する。この場合、塗り潰し点P1の下部か
ら左に閉領域内の点(空白部)があるという情報が、上
記情報の上にブツシュダウンされてスタックに格納され
る。
従って、第5図(a)のように、開始点Ps及び塗り潰
し点p、−p、を含む1ラインの境界から境界までの書
き込みが終了した時点で、スタックには、塗り潰し点P
1〜P5の上部に空白部があるという情報と、塗り潰し
点P1の下部に空白部があるという情報とが順に格納さ
れている。
次に、スタックに格納された情報内容のうちの1つ(最
新の情報)を取り出し、次の1ライン分の描画データ書
き込み動作の開始点・を決める0例えば、第5図(b)
のように、塗り潰し点P1の下部に関する情報をスタッ
クから取り出し、塗り潰し点P1の真下の点を開始点と
して、左方向に1ラインの書き込みを前述と同様に行な
う゛、このとき、下部に空白部を有する塗り潰し点P5
及びP6に関する情報が、新たにスタックに格納される
次に、塗り潰し点P6に関する(最新の)情報をスタッ
クから取り出し、第5図(c)のように、塗り潰し点P
6の真下の点を開始点として、左方向に1ラインの書き
込みを行なう、このとき、同様に下部に空白部を有する
塗り潰し点P、に関する情報が、最新情報としてスタッ
クに格納される。
更に、塗り潰し点P、に関する情報に基づいて、1ライ
ンの書き込みを行なうことにより、第5図(d)のよう
に、左下部分の描画データ書き込みが終了する。
以下、同様に、塗り潰し点P5及びP3〜P、に関する
情報に基づいて、順次上記動作を繰り返すことにより、
スタック内の情報が無くなり、閉領域内の描画データ書
き込み(塗り潰し)は全て終了する。
[発明が解決しようとする課題] 従来の描画データ塗り潰し方法は以上のように、最初に
開始点を求める必要があり、又、1点毎に描画データを
書き込む際に、上下左右のデータ状態を常に観察してス
タックに格納する必要があるので、アルゴリズムが複雑
になると共にプログラム容量が大きくなり、処理に時間
がかかるという問題点があった。
この発明は上記のような問題点を解決するためになされ
たもので、アルゴリズムが簡単で高速処理が可能な描画
データ塗り潰し方法を得ることを目的とする。
[課題を解決するための手段〕 この発明に係る描画データ塗り潰し方法は、図形の輪郭
点を順次追跡しながら一方の座標軸に関する配列位置に
他方の座標軸の値を代入し、一方の座標軸の同一座標上
に2つの輪郭点が存在したときには、これら2点間のデ
ータを反転させると共に配列位置内の他方の座標軸の値
をクリアするようにしたものである。
[作用コ この発明においては、図形データの輪郭点追跡中に、走
査方向に2つの輪郭点が存在することを認識する毎に、
これら2点間に挾まれたデータを反転する。
[実施例] 以下、この発明の一実施例を図について説明する。第1
図はこの発明の一実施例を示すフローチャート図であり
、この発明が適用される装置は例えば第4図に示したも
のと同様である。又、第2図及び第3図はフレームメモ
リ(5)(第4図参照)に書き込まれる描画データの輪
郭点を示す説明図であり、i 2rA内ノJIL P 
(0)、P(1)、P(2)、・・・、P(N)は順次
追跡されるベクトル上の輪郭点、白丸はデータ無しく’
OJ)の状態を示し、第3図の黒丸Pは特異な輪郭点を
示している・ 尚・データ制御部(2>(、第4図参照)は、フレーム
メモリ(5)の座標空間をX軸及びY軸からなる2次元
座標系に展開し、塗り潰しに必要な配列を走査方向(X
軸)に垂直なY軸に関して形成している。従って、図形
の高さに相当するY軸の座標値Yl〜Y、を添字とした
配列位置に対応させて、各輪郭点P (0)〜P (N
 )のX軸の座標値X o 、X +、・・・、Xnが
順次、代入されるようになっている。
まず、変数iをi=1に初期設定しくステップS1)、
始点となる輪郭点P(0)を求めて、このX軸座標値X
0を、対応するY軸の配列位置Y2に代入する(ステッ
プS2)。
このとき、輪郭点P(0)の座標値jt(Xo、Yt)
に対応するフレームメモリ(5)のデータは「1」とな
って描画データが書き込まれる。
続いて、図形データに基づくベクトルにより、次の輪郭
点P(1)が求められ(ステップS3)、同様に描画デ
ータが書き込まれる。
そして、輪郭点P(1)と同じYIlil[標値Y、の
点が配列に存在するか否かを判別しくステップS4)、
もし無ければ、輪郭点P(1)のX軸座標値X1を配列
位’I Y +に代入しくステップS5)、変数iをイ
ンクリメント(ステップS6)シた後、ステップS3に
戻る。
これにより、次の輪郭点P(2)が求められ、更にステ
ップS4に進む、このとき、輪郭点P(2)のY軸座標
値はY、であるが、配列位ff1y+には既に輪郭点P
(1)のX軸座’IA X +が代入されているため、
同一座標Y、上に2つの輪郭点P(1)及びP(2)が
存在することになる。
従って、輪郭点P(2)と同じY軸座標値Y、の点が有
ることが判別されてステップS7に進み、輪郭点P(1
)及びP(2)間のフレームメモリ(5)のデータ(白
丸で示す)を反転させ、「0」から「1」にして描画デ
ータを書き込む。
次に、このときの輪郭点P(2)が終点か否かを判別し
くステップS8)、もし終点でなければ、反転させた配
列位置Y1内のX軸座標値Xlをクリアし(ステップS
9)、ステップS6で変数iをインクリメントした後、
ステップS3に戻る。
以上の動作は、終点の輪郭点P(N)となるまで繰り返
し実行され、ステップS8で終点P(N)を判別したと
きに終了する。
このように、X軸と平行な′方向に描画データの書き込
みを行なうので、第2図の白丸で示すように連続する同
一のY軸座標値を持つ点は求める必要はなく、黒丸で示
すように1点のみを求めればよい。
又、第3図のように、1つのY軸座標値に1点のみが対
応する特異な輪郭点Pの場合は、輪郭点Pのみの描画デ
ータを書き込む必要がある。
尚、上記実施例では、フレームメモリ(5)内のデータ
を反転するためのデータ制御部(2)が描画用LSI(
4)を用いた場合を例にとって説明したが、描画用LS
I(4)を用いず、全てCPU(3)による制御で反転
させてもよい。
又、データの反転処理をハードウェアで行なえば、更に
高速な描画データの書き込みが可能となる。
更に、ベクトル点からなる輪郭点P(0)〜P (N)
を順次追跡する場合について説明したが、ホストコンピ
ュータからの図形データによっては輪郭点の求め方が異
なっていてもよい、この場合も、前述のように第2図の
黒丸で示した点のみを求めれば、塗り潰しは短時間で行
なうことができ、同等の効果を奏することは言うまでも
ない。
[発明の効果] 以上のようにこの発明によれば、図形の輪郭点を順次追
跡しながら一方の座標軸に関する配列位置に他方の座標
軸の値を代入し、一方の座標軸の同一座標上に2つの輪
郭点が存在することを認識したときには、これら2点間
のデータを反転させると共に配列位置内の他方の座標軸
の値をクリアするようにしたので、アルゴリズムが簡単
で高速処理が可能な描画データ塗り潰し方法が得られる
効果がある。
【図面の簡単な説明】
第1図はこの発明の一実施例を示すフローチャート図、
第2図はこの発明による描画データの輪郭点を示す説明
図、第3図は輪郭点の特異点を示す説明図、第4図は一
般的なプリンタのデータ処理部を示すブロック図、第5
図は従来の描画データ塗り潰し方法を示す説明図である
。 S2、S5・・・座標値を代入するステ・ンプS3、S
6・・・輪郭点を追跡するステ・ンプS4・・・同−座
標値の点を判別するステ・ンプS7・・・データを反転
するステップ P(0)〜P(N)・・・輪郭点 T1〜Y、・・・配列位置  X、〜Xn・・・X軸座
標値尚、図中、同一符号は同−又は相当部分を示す。 W)1図 扇4図 沌51 (Q) 乃 (b)

Claims (1)

    【特許請求の範囲】
  1. 座標系内のディジタル2値図形で表わされた描画データ
    の閉領域を塗り潰す方法において、図形の輪郭点を順次
    追跡しながら一方の座標軸に関する配列位置に他方の座
    標軸の値を代入し、前記一方の座標軸の同一座標上に2
    つの輪郭点が存在したときには、これら2点間のデータ
    を反転させると共に前記配列位置内の前記他方の座標軸
    の値をクリアすることを特徴とする描画データ塗り潰し
    方法。
JP6342188A 1988-03-18 1988-03-18 描画データ塗り潰し方法 Pending JPH01237775A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP6342188A JPH01237775A (ja) 1988-03-18 1988-03-18 描画データ塗り潰し方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP6342188A JPH01237775A (ja) 1988-03-18 1988-03-18 描画データ塗り潰し方法

Publications (1)

Publication Number Publication Date
JPH01237775A true JPH01237775A (ja) 1989-09-22

Family

ID=13228807

Family Applications (1)

Application Number Title Priority Date Filing Date
JP6342188A Pending JPH01237775A (ja) 1988-03-18 1988-03-18 描画データ塗り潰し方法

Country Status (1)

Country Link
JP (1) JPH01237775A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5579410A (en) * 1992-10-09 1996-11-26 Mitsubishi Electric Semiconductor Software Corporation Region filling circuit and method of filling a region

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5579410A (en) * 1992-10-09 1996-11-26 Mitsubishi Electric Semiconductor Software Corporation Region filling circuit and method of filling a region

Similar Documents

Publication Publication Date Title
US6414685B1 (en) Method of processing animation by interpolation between key frames with small data quantity
KR930000998B1 (ko) 컴퓨터 그래픽스의 문자 그리고/또는 도형처리 방법 및 그의 장치
US6057825A (en) Image processing apparatus with paint-in of outline interiors
JPH06222899A (ja) マルチウィンドウ表示方式
JPH01237775A (ja) 描画データ塗り潰し方法
JPH02270019A (ja) 高品質文字パターン発生方式
JPH11296696A (ja) 3次元画像処理装置
JPS63137378A (ja) グラフイツクス処理システム
JP3129717B2 (ja) 画像処理装置および画像処理方法
JP2698170B2 (ja) 閉領域塗りつぶし表示方法
JP3791203B2 (ja) 画像処理装置
JP3132220B2 (ja) 3次元モデルの形状作成方法
JP3354293B2 (ja) 3次元グラフィックス装置
JP2664948B2 (ja) 画像処理装置および画像処理方法
JPH01201236A (ja) 画像処理装置
JP3156729B2 (ja) 描画装置
JPH0245889A (ja) 領域塗り潰し方法
JPH09319893A (ja) 画像表示方法およびその表示装置
JP3018961B2 (ja) ペンプロッタ
JP3099556B2 (ja) データ変換装置
JP3347756B2 (ja) 文字生成方法及びその装置
JP2835056B2 (ja) 高品質文字パターン発生方式
JPS63296094A (ja) 液晶表示型の電子機器
JP2976419B2 (ja) 印字装置
JPH0346826B2 (ja)