JP2001307115A - 画像処理装置および画像処理方法 - Google Patents

画像処理装置および画像処理方法

Info

Publication number
JP2001307115A
JP2001307115A JP2000122195A JP2000122195A JP2001307115A JP 2001307115 A JP2001307115 A JP 2001307115A JP 2000122195 A JP2000122195 A JP 2000122195A JP 2000122195 A JP2000122195 A JP 2000122195A JP 2001307115 A JP2001307115 A JP 2001307115A
Authority
JP
Japan
Prior art keywords
paths
path
tree structure
image processing
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
JP2000122195A
Other languages
English (en)
Inventor
Toshio Yamazaki
寿夫 山崎
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.)
Fujifilm Business Innovation Corp
Original Assignee
Fuji Xerox Co 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 Fuji Xerox Co Ltd filed Critical Fuji Xerox Co Ltd
Priority to JP2000122195A priority Critical patent/JP2001307115A/ja
Publication of JP2001307115A publication Critical patent/JP2001307115A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Image Generation (AREA)
  • Editing Of Facsimile Originals (AREA)

Abstract

(57)【要約】 【課題】 図形の内部領域を1つ以上の台形に分割して
塗り潰す場合に、不必要な台形への分割を抑え、理想的
な台形分割を行えるようにする。 【解決手段】 描画すべき図形を構成する複数のパスを
X軸方向およびY軸方向にソートしたツリー構造で表す
とともに、前記複数のパスの中で互いに交差するパスが
あればこれらをその交点で分割してその分割後のパスを
前記ツリー構造で表すデータ変換手段12a,12b
と、前記ツリー構造で表されるパス群の中から2つずつ
パスを抽出してそのパス間に位置する領域を順次塗り潰
す領域塗り手段12c,12dとを備える画像処理装置
において、前記領域塗り手段12c,12dが、抽出し
たパス間に他のパスの始点または終点が位置しているか
否かに応じて、当該パス間に位置する領域の範囲を可変
させるようにする。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、図形の描画命令を
受け取って、その図形の内側領域の塗り潰し処理を行う
画像処理装置および画像処理方法に関するものである。
【0002】
【従来の技術】近年、パーソナルコンピュータやワーク
ステーション等のコンピュータ装置で文書や画像等のド
キュメントを電子的に作成し、そのドキュメントをコン
ピュータ装置とネットワークを介して接続するプリンタ
装置にて印刷出力する、といったことが広く行われてい
る。このようなコンピュータ装置とプリンタ装置とを備
えてなる画像形成システムでは、一般に、ドキュメント
の印刷出力に当たり、コンピュータ装置側からページ記
述言語(Page Description Language;以下「PDL」と
略す)で記述された描画命令を送出するようになってお
り、描画命令の送出があるとプリンタ装置側にてその描
画命令を基にフォントやグラフィックス等の図形を描画
するようになっている。
【0003】このような図形の描画は、プリンタ装置が
搭載している画像処理装置において、いわゆるスキャン
コンバージョン処理を利用して行われることが多い。ス
キャンコンバージョン処理とは、描画すべき図形の外郭
と、その図形が描かれるXY座標系のX軸(またはY
軸)に平行な仮想線(以下、この仮想線を「スキャンラ
イン」と称す)との交点を基にして行われる図形の描画
処理である。詳しくは、描画すべき図形の外郭とスキャ
ンラインとの交点から、そのスキャンラインに沿って当
該図形を展開したときの開始点と終了点を算出し、エッ
ジと呼ばれる水平線をこの開始点と終了点とに従って描
画するとともに、そのエッジを図形とスキャンラインと
の交点の全てについて描画することで、当該描画すべき
図形を形成するものである。なお、このようなスキャン
コンバージョン処理のうち、スキャンラインが描画ピク
セルの中間を通る場合は、特にハーフスキャンライン・
スキャンコンバージョン処理と呼ばれている。
【0004】ところで、上述したような描画処理を行う
画像処理装置では、その描画処理を、直線状または曲線
状のパスが複数組み合わさってなる図形の内部領域の塗
り潰しによって行うことがある。なお、ここでいうパス
とは、図形の頂点同士を結ぶ線分、すなわち図形の一辺
を構成する線分のことをいう。
【0005】従来、図形の内部領域を塗り潰す場合の描
画アルゴリズムとしては、例えばオーダードエッジリス
ト・アルゴリズムが知られている(「実践コンピュータ
グラフィックス」参照、山口富士夫監修、日刊工業新聞
社刊)。オーダードエッジリスト・アルゴリズムでは、
多角形のエッジに対してBresenhamやDDAアルゴリズ
ム等を用いることにより、描画すべき図形の外郭と描画
ピクセルの中間を通るハーフスキャンラインとの交点を
決定し、各ハーフスキャンライン毎に求められた交点の
X座標値を小さい順にソーティングする。その後、各ハ
ーフスキャンラインに対して、X座標値でソートされた
リストの中から交点の対x1,x2を抽出し、そのハー
フスキャンライン上でx1≦x≦x2であるような整数
値xに対するピクセルを選択し描画することで、当該描
画すべき図形の内部領域の塗り潰しを行うようになって
いる。
【0006】具体的には、図12(a)に示すように、
オーダードエッジ・アルゴリズムによって、図形の外郭
に位置するピクセルPiと、その図形の内部領域に位置す
るピクセルPeとが描画される。なお、図12(b)は、
オーダードエッジ・アルゴリズムによって生成されるデ
ータ構造例を示している。図中において、スキャンライ
ンとは、ハーフラインスキャンラインの意である。
【0007】ところが、オーダードエッジ・アルゴリズ
ムでは、描画される図形に交差するスキャンライン毎
に、交点のリストを構築する必要がある。そのため、描
画される図形を構成するピクセル数が多い場合には、そ
の分スキャンライン数も多くなるので、処理速度の減少
・使用メモリ量の増大等の問題が生じるおそれがある。
つまり、大きい図形や複雑な図形を描画する場合や、出
力デバイスの解像度が向上した場合等には、一定の大さ
さの図形を描画する際のスキャンライン数が増大し、処
理速度の低下、使用メモリ量の増大等の問題が生じてし
まう。
【0008】このことから、図形の内部領域を塗り潰す
場合の他の描画アルゴリズムとして、エッジを描画する
のではなく、高さのある台形を描画する手法が、従来か
ら提案されている。例えば、特開平4−134576号
公報には、上述したオーダードエッジリスト・アルゴリ
ズムにおいて全てのスキャンラインについて求めていた
交点を、各エッジの始点・終点・交点上のスキャンライ
ンのみに限定し、それらスキャンラインと求められた交
点で分割されたエッジとで構成される台形を描画するこ
とにより、処理速度の低下、使用メモリ量の増大等を抑
えることが開示されている。
【0009】具体的には、図13(a)に示すように、
星型と矩形の図形を一度に描画する場合を例に挙げて考
えると、特開平4−134576号公報に開示された描
画アルゴリズムでは、スキャンラインを、各図形を構成
するパスの始点、終点および交点を通過するものだけに
限定する。そして、そのスキャンラインとそれぞれのパ
スとに囲まれる台形、詳しくは図例の場合であれば星型
の図形でs1〜s16、矩形の図形でr1〜rllの総
計27個の台形について、その内部領域について塗り潰
しを行う。これにより、本描画アルゴリズムでは、オー
ダードエッジ・アルゴリズムの場合に比べて、スキャン
ラインの数が減少するので、処理速度の低下、使用メモ
リ量の増大等を抑えることが可能となる。
【0010】なお、ここでいう台形とは、スキャンライ
ンの一部分を底とし、各図形を構成するパスの一部分を
脚とする四角形をいう。図中の星型の図形に含まれる台
形s1等については三角形として図示されているが、実
際には上底または下底が少なくとも1ピクセル分の長さ
を有しているので、ここではこれら全てを台形と称する
ものとする。
【0011】
【発明が解決しようとする課題】しかしながら、特開平
4−134576号公報に開示されたような台形描画を
利用した描画アルゴリズムでは、オーダードエッジ・ア
ルゴリズムの場合に比べて処理速度の低下、使用メモリ
量の増大等を抑えることが可能とはなるが、複数の図形
を一度に描画しようとすると、本来は必要の無い台形へ
の分割をも行ってしまうため、多くの台形描画が発生し
てしまうことになる。
【0012】具体的には、図13(a)に示すような星
型と矩形の図形を一度に描画する場合であれば、同時に
描画される各図形同士が互いに細かな台形に分割描画さ
れてしまい、上述したように星型の図形でs1〜s1
6、矩形の図形でr1〜rllの総計27個の台形描画
が発生してしまうが、これらについての理想的な台形分
割について考えると、図13(b)に示すように、星型
でs1〜s10、矩形でr1の総計11個の台形描画を
行えば十分であることが分かる。
【0013】したがって、従来の台形描画を利用した描
画アルゴリズムは、理想的な台形分割を行った場合に比
べて多くの台形描画が発生してしまうことから、処理速
度の低下、使用メモリ量の増大等を抑える上で、必ずし
も好適であるとはいえない。
【0014】そこで、本発明は、図形の内部領域の塗り
潰しを行う場合に、不必要な台形の分割を抑え、理想的
な台形分割を行うことにより、処理速度の低下、使用メ
モリ量の増大等を従来よりも改善しつつ、その塗り潰し
処理をはじめとした図形描画処理を行うことのできる画
像処理装置および画像処理方法を提供することを目的と
する。
【0015】
【課題を解決するための手段】本発明は上記目的を達成
するために案出されたもので、請求項1記載の画像処理
装置は、直線状または曲線状のパスが複数組み合わさっ
てなる図形の内側領域を塗り潰すためのものであって、
前記図形を構成する複数のパスを当該図形が描かれるX
Y座標系のX軸方向およびY軸方向にソートしたツリー
構造で表すとともに、前記複数のパスの中で互いに交差
するパスがあれば当該交差するパスをその交点で分割し
てその分割後のパスを前記ツリー構造で表すデータ変換
手段と、前記ツリー構造で表されるパス群の中から所定
規則に従って2つずつパスを抽出して、当該パスの間に
位置する領域を順次塗り潰す領域塗り手段とを備え、そ
のうちの領域塗り手段が、抽出した2つのパスの間に他
のパスの始点または終点の少なくとも一方が位置してい
るか否かに応じて、当該2つのパスの間に位置する領域
の範囲を可変させることを特徴とする。
【0016】請求項3記載の画像処理装置は、前記図形
を構成する複数のパスを当該図形が描かれるXY座標系
のX軸方向およびY軸方向にソートしたツリー構造で表
すとともに、前記複数のパスの中で互いに交差するパス
があれば当該交差するパスをその交点で分割してその分
割後のパスを前記ツリー構造で表すデータ変換手段と、
前記ツリー構造で表されるパス群の中から所定規則に従
って2つずつパスを抽出して、当該パスの間に位置する
領域を順次塗り潰す領域塗り手段とを備え、そのうちの
領域塗り手段が、抽出した2つのパスの外側領域に他の
パスが偶数本存在しているか否かに応じて、当該2つの
パスの間に位置する領域の範囲を可変させることを特徴
とする。
【0017】請求項5記載の画像処理装置は、前記図形
を構成する複数のパスを当該図形が描かれるXY座標系
のX軸方向およびY軸方向にソートしたツリー構造で表
すとともに、前記複数のパスの中で互いに交差するパス
があれば当該交差するパスをその交点で分割してその分
割後のパスを前記ツリー構造で表すデータ変換手段と、
前記ツリー構造で表されるパス群の中から所定規則に従
って2つずつパスを抽出して、当該パスの間に位置する
領域を順次塗り潰す領域塗り手段とを備え、そのうちの
領域塗り手段が、抽出した2つのパスの間に他のパスの
始点または終点の少なくとも一方が位置しているか否か
を判断し、かつ、当該2つのパスの外側領域に他のパス
が偶数本存在しているか否かを判断し、これらの判断結
果に応じて当該2つのパスの間に位置する領域の範囲を
可変させることを特徴とする。
【0018】また、本発明は上記目的を達成するために
案出された方法で、請求項7記載の画像処理方法は、直
線状または曲線状のパスが複数組み合わさってなる図形
の内側領域を塗り潰すための方法であって、前記図形を
構成する複数のパスを当該図形が描かれるXY座標系の
X軸方向およびY軸方向にソートしたツリー構造で表す
とともに、前記複数のパスの中で互いに交差するパスが
あれば当該交差するパスをその交点で分割してその分割
後のパスを前記ツリー構造で表し、前記ツリー構造で表
されるパス群の中から所定規則に従って2つずつパスを
抽出して当該パスの間に位置する領域を順次塗り潰すと
ともに、当該塗り潰しにあたって、抽出した2つのパス
の間に他のパスの始点または終点の少なくとも一方が位
置しているか否かに応じて、当該2つのパスの間に位置
する領域の範囲を可変させることを特徴とする。
【0019】請求項9記載の画像処理方法は、前記図形
を構成する複数のパスを当該図形が描かれるXY座標系
のX軸方向およびY軸方向にソートしたツリー構造で表
すとともに、前記複数のパスの中で互いに交差するパス
があれば当該交差するパスをその交点で分割してその分
割後のパスを前記ツリー構造で表し、前記ツリー構造で
表されるパス群の中から所定規則に従って2つずつパス
を抽出して当該パスの間に位置する領域を順次塗り潰す
とともに、当該塗り潰しにあたって、抽出した2つのパ
スの外側領域に他のパスが偶数本存在しているか否かに
応じて、当該2つのパスの間に位置する領域の範囲を可
変させることを特徴とする。
【0020】請求項11記載の画像処理方法は、前記図
形を構成する複数のパスを当該図形が描かれるXY座標
系のX軸方向およびY軸方向にソートしたツリー構造で
表すとともに、前記複数のパスの中で互いに交差するパ
スがあれば当該交差するパスをその交点で分割してその
分割後のパスを前記ツリー構造で表し、前記ツリー構造
で表されるパス群の中から所定規則に従って2つずつパ
スを抽出して当該パスの間に位置する領域を順次塗り潰
すとともに、当該塗り潰しにあたって、抽出した2つの
パスの間に他のパスの始点または終点の少なくとも一方
が位置しているか否かを判断し、かつ、当該2つのパス
の外側領域に他のパスが偶数本存在しているか否かを判
断し、これらの判断結果に応じて当該2つのパスの間に
位置する領域の範囲を可変させることを特徴とする。
【0021】上記構成の画像処理装置および上記手順の
画像処理方法によれば、いずれも、図形の内部領域を塗
り潰すのにあたって、抽出した2つのパスの間に他のパ
スの始点または終点が位置しているか否かと、抽出した
2つのパスの外側領域に他のパスが偶数本存在している
か否かとの、いずれか一方または両方に応じて、当該2
つのパスの間に位置する領域の範囲を可変させるように
なっている。すなわち、例えば2つのパスの間に他のパ
スの始点または終点が位置している場合にのみ、その2
つのパスの間に位置する領域の範囲を、当該始点または
終点を基準にしてさらに小さく分割するように可変させ
る。また、例えば2つのパスの外側領域に他のパスが偶
数本存在していない場合にのみ、その2つのパスの間に
位置する領域の範囲を、当該他のパスを基準にしてさら
に小さく分割するように可変させる。したがって、上記
構成の画像処理装置および上記手順の画像処理方法によ
れば、不必要な領域分割を抑えられるので、図形の内部
領域の塗り潰しを行う際の理想的な台形分割を行い得る
ようになる。
【0022】
【発明の実施の形態】以下、図面に基づき本発明に係る
画像処理装置および画像処理方法について説明する。た
だし、ここでは、本発明を、ドキュメントの印刷出力を
行うプリンタ装置に搭載された画像処理装置およびその
画像処理装置が実行する画像処理方法に適用した場合を
例に挙げて説明する。
【0023】〔装置構成の説明〕先ず、本実施形態にお
ける画像処理装置の概略構成について説明する。図1
は、本実施形態における画像処理装置の概略構成を示す
ブロック図である。
【0024】図例のように、本実施形態の画像処理装置
1は、図示しないコンピュータ装置で生成されたPDL
データを、そのコンピュータ装置からネットワーク2を
介して受信すると、受信したPDLデータによって記述
された描画コマンド(直線、曲線、フォント、ラスタ画
像、塗り潰し等の描画命令)を解釈して図形描画処理を
行い、描画後におけるラスタ状の図形データを、画像形
成処理を行うプリンタエンジン3に対して送出するもの
である。そのために、画像処理装置1は、入力インター
フェース(以下、インターフェースを「I/F」と略
す)11と、CPU(Central Processing Unit )12
と、ROM(Read Only Memory)13と、RAM(Rand
om Access Memory)14と、プリンタエンジンI/F1
5と、これらを互いに接続する内部バス16と、を備え
て構成されている。
【0025】入力I/F11は、コンピュータ装置から
のPDLデータをネットワーク2を介して受信するため
のものである。この入力I/F11が受信するPDLデ
ータには、図形の描画コマンドが含まれているものとす
る。また、当該図形の描画を行う場合には、その図形の
外郭データがPDLデータとして入力I/F11に与え
られるものとする。
【0026】CPU12は、画像処理装置1全体の動作
制御の他に、入力I/F11を介して受け取ったPDL
データを解釈して、その解釈結果に基づいて図形の描画
処理を行うものである。この描画処理を行うために、C
PU12では、詳細を後述するように、ツリー構造変換
部12a、パス交差処理部12b、塗り潰し部12cお
よび台形描画部12dとしての機能を有している。
【0027】ROM13は、CPU12が描画処理を行
うのに必要となる描画プログラム13aを予め格納して
いるものである。このROM13内の描画プログラム1
3aを実行することによって、CPU12では、上述し
た各部12a〜12dとしての機能を発揮するようにな
っている。
【0028】RAM14は、CPU12が描画処理を行
う際のワークメモリとして用いられるものである。詳し
くは、CPU12による描画処理の過程で後述するツリ
ー構造データを格納することになるツリー構造データ保
持部14aとしての記憶領域と、CPU12による描画
結果が書き込まれることでプリンタエンジン3に出力す
るためのラスターデータを格納することになるページバ
ッファ14bとしての記憶領域とを有しているものであ
る。
【0029】プリンタエンジンI/F15は、CPU1
2による制御に従いつつ、RAM14内のページバッフ
ァ14bに作成されたラスターデータをプリンタエンジ
ン3に送出するためのものである。なお、プリンタエン
ジンI/F15がラスターデータを送出する先であるプ
リンタエンジン3は、周知の電子写真技術を利用してラ
スターデータを印刷出力するものであっても、あるいは
周知のインクジェット方式の印刷技術を利用してラスタ
ーデータを印刷出力するものであってもよい。また、プ
リンタエンジン3は、用紙上への印刷出力を行うもので
はなく、CRT(Cathode Ray Tube)等のディスプレイ
装置であっても構わない。
【0030】〔処理動作の概要の説明〕次に、以上のよ
うに構成された画像処理装置1における処理動作の概
要、すなわち本実施形態における画像処理方法の概要に
ついて簡単に説明する。図2は本実施形態の画像処理装
置における処理動作全体の流れを示すデータフロー図で
あり、図3はその処理動作の概略手順を示すフローチャ
ートである。なお、ここでは、説明を簡略化するため
に、パス図形のみの描画が可能な画像処理装置および画
像処理方法について説明する。その他のイメージや文字
に関しては、本発明に含まれないので、その説明を省略
する。
【0031】図2に示すように、本実施形態の画像処理
装置1が実施する図形描画処理は、パスデータ入力処理
21と、辺テーブルリスト生成処理22と、辺交差処理
23と、描画辺抽出処理24と、描画図形決定処理25
と、台形描画処理26と、から成り立っている。
【0032】通常、PDLデータを基に図形を描画する
場合は、図形の外郭線分、すなわち直線状または曲線状
のパスの集合により、その図形を表すことが一般的であ
る。このことから、画像処理装置1では、図形描画処理
を行うのにあたって、始めに、パスデータ入力処理21
を行う。パスデータ入力処理21は、PDLデータで記
述されたパスを、CPU12が有するPDL解釈モジュ
ール12eが解釈して、パスデータとしてRAM14内
に一時的に保存する処理である。
【0033】その後、PDL解釈モジュール12eがパ
スの塗り潰し命令を解釈すると、画像処理装置1では、
パスの塗り潰し処理を開始する。パスの塗り潰し処理
は、辺テーブルリスト生成処理22、辺交差処理23、
描画辺抽出処理24、描画図形決定処理25および台形
描画処理26からなる処理である。なお、パスデータ入
力処理21によってRAM14内に一時的に蓄えられた
パスデータ群は、パスの描画時と同様に、パスの塗り潰
し処理を実行する際にも、図形描画時のデータとして利
用される。
【0034】パスの塗り潰し処理にあたっては、図3に
示すように、先ず、CPU12のツリー構造変換部12
aが、辺テーブルリスト生成処理22を行う。すなわ
ち、ツリー構造変換部12aは、辺テーブルリスト生成
処理22として、上述の一時的なパスデータを図形の辺
を表すデータ(以下「辺データ」と称す)として順次取
出し、X軸方向およびY軸方向にソーティングされたツ
リー構造となるテーブルをRAM14のツリー構造デー
タ保持部14a内に生成する(ステップ101、以下ス
テップを「S」と略す)。このX軸方向およびY軸方向
にソーティングされた辺データのツリー構造のテーブル
を、以下「辺テーブルリスト」と称す。したがって、辺
テーブルリスト生成処理22の後は、RAM14内のパ
スデータ群が辺テーブルリストによって表されることに
なる。なお、辺データおよび辺テーブルリストについて
は、その詳細を後述するものとする。
【0035】次いで、CPU12のパス交差処理部12
bは、辺交差処理23を行う。すなわち、パス交差処理
部12bは、辺交差処理23として、辺テーブルリスト
の中に互いに交差する辺があると、これらの辺同士を抽
出して、その交点で分割し、その分割後の辺をツリー構
造で表して再び辺テーブルリストに登録する(S10
2)。このときの交点分割についても、その詳細は後述
するものとする。
【0036】辺テーブルリストの生成および交差する辺
の分割が終了すると、その後、CPU12の塗り潰し部
12cは、描画辺抽出処理24および描画図形決定処理
25を行う。すなわち、塗り潰し部12cは、描画辺抽
出処理24として、辺テーブルリストの中から所定規則
に従って描画対象の辺を2つ抽出し(S103)、その
2つの辺の描画に影響を与え得る辺を、辺テーブルリス
トを検索して探し出す(S104)。なお、ここでいう
影響についても、その詳細は後述するものとする。
【0037】このとき、影響を与える辺が存在していな
ければ(S105)、塗り潰し部12cは、描画図形決
定処理25として、抽出した2つの辺に基づいて、描画
が確定した台形、すなわち抽出した2つの辺の間に位置
する塗り潰し領域を算出する(S106)。一方、影響
を与える辺が存在していれば(S105)、塗り潰し部
12cは、描画図形決定処理25として、その影響を与
える辺と抽出した2つの辺との両方に基づいて、描画が
確定した台形を算出する(S107)。
【0038】このようにして台形を算出すると、次い
で、CPU12の台形描画部12dは、台形描画処理2
6を行う。すなわち、台形描画部12dは、台形描画処
理26として、描画が確定した台形の内部領域の塗り潰
しを、ページバッファ14b内に対して行う(S10
8)。これにより、ページバッファ14b内には、当該
台形のラスターデータが書き込まれることになる。
【0039】そして、以上のような処理(S103〜S
108)を辺テーブルリスト中の全ての辺について繰り
返し行い、全ての辺の描画が終了したら(S109)、
パスの塗り潰し処理を終了する。
【0040】〔辺テーブルリスト生成処理の詳細説明〕
ここで、上述した図形描画処理のうちの辺テーブルリス
ト生成処理22(図3中に示すS101の処理)につい
て詳しく説明する。図4は辺テーブルリスト生成処理の
手順を示すフローチャートであり、図5は辺テーブルリ
ストを生成する際に用いられるデータ構造の一例を示す
説明図であり、図6は辺テーブルリストの生成結果の一
例を示す説明図である。
【0041】図4に示すように、辺テーブルリスト生成
処理22を行う場合に、ツリー構造変換部12aは、先
ず、RAM14内に一時的に蓄えられたパスデータ群の
中から、図形の1つの辺(線分)を表すデータを辺デー
タとして取出す(S201)。
【0042】このとき、ツリー構造変換部12aでは、
図5に示すように、始点座標値と終点座標値とによって
特定可能となるデータ構造によって、辺データの取出し
を行う。なお、図中では、取出した辺データを、その始
点y座標値で管理するためのスキャンラインをも示して
いる。
【0043】ところで、図形の辺は、必ずしも図例のよ
うな直線状であるとは限らず、曲線状であることも考え
られる。このことから、図4に示すように、取出すべき
辺が曲線状の線分の場合には(S202)、これを直線
近似して直線状の線分の集合に変換した後に、当処理
(辺テーブルリスト生成処理)を再帰的に呼び出す(S
203)。このとき、再帰的に呼び出された場合も同じ
辺テーブルリストに辺が登録されるものとする。
【0044】1つの辺データの取出しを行うと、ツリー
構造変換部12aは、その辺データについて、始点のy
座標値が終点のy座標値より小さくなるように始点と終
点の座標値を入れ替えた後に(S204)、これをRA
M14のツリー構造データ保持部14a内の辺テーブル
リストに登録する。
【0045】ただし、このとき、ツリー構造変換部12
aは、辺データの登録に先立って、その辺データの始点
y座標値と等しいスキャンライン値を持つスキャンライ
ンデータを、その辺データを登録すべき辺テーブルリス
トの中から探し出す(S205)。そして、該当するス
キャンラインデータが存在しなければ(S206)、ツ
リー構造変換部12aは、ツリー構造データ保持部14
a内の辺テーブルリストに、始点y座標値と等しいスキ
ャンラインデータを新たに生成して追加する(S20
7)。
【0046】このときに追加されるスキャンラインデー
タのy座標値は、以下の条件が満たされているものとす
る。(1)スキャンラインデータのy座標値はリスト中
下側のスキャンラインデータのy座標値よりも大きく、
(2)同一のy座標値を持つスキャンラインデータはリ
スト中に存在しない。すなわち、ツリー構造変換部12
aは、辺データの辺テーブルリストへの登録にあたっ
て、(1)および(2)の条件を満足することを保証す
る。
【0047】そして、ツリー構造変換部12aは、新た
に追加したスキャンラインデータまたは既に存在してい
るスキャンラインデータにリンクさせて、一時的なパス
データ群の中から取出した辺データを、ツリー構造デー
タ保持部14a内の辺テーブルリストへ追加登録する
(S208)。このとき、辺テーブルリスト内の辺デー
タ間では、以下の条件が満たされているものとする。
(3)始点x座標値はリスト中左隣の辺データのほうが
小さく、(4)始点x座標値が等しい場合、終端のx座
標値はリスト中左隣の辺データのほうが小さい。すなわ
ち、ツリー構造変換部12aは、辺データの辺テーブル
リストへの登録にあたって、(3)および(4)の条件
を満足することを保証する。
【0048】その後、ツリー構造変換部12aは、一時
的なパスデータ群の中に未処理の辺データ(線分)が残
っているか否か判断し(S209)、残っていれば再び
上述した各ステップを行い(S201〜S209)、図
形描画に必要な全ての辺データの処理が終了するまでこ
れを繰り返す。これにより、ツリー構造データ保持部1
4a内には、辺データとスキャンラインデータとによ
り、辺データをY軸方向とX軸方向にソーティングし、
かつ、ツリー構造にして表した辺テーブルリストが構築
されることになる。
【0049】具体的には、図6(a)に示すような辺1
〜4からなる図形であれば、上述した辺テーブルリスト
生成処理22によって、図6(b)に示すような辺テー
ブルリストが構築される。すなわち、入力された辺1〜
4についての各辺データから、各々の始点を通るスキャ
ンライン(L1〜3)に対応してスキャンラインデータ
が生成され、それらスキャンラインデータが前述の条件
に従ってリスト構造を構成するとともに、各々の辺が同
じスキャンライン上に始点のある辺毎に辺データとして
前述の条件に従ってリスト構造を構成する。したがっ
て、ツリー構造データ保持部14a内の辺テーブルリス
トは、辺の始点が存在するスキャンラインデータにリン
クされ、スキャンラインデータと辺データのリストによ
りX軸方向およびY軸方向へソートされた2次元のツリ
ー構造を構成することになる。
【0050】〔辺交差処理の詳細説明〕次いで、上述し
た図形描画処理のうちの辺交差処理23(図3中に示す
S102の処理)について詳しく説明する。図7は辺交
差処理の手順を示すフローチャートであり、図8は辺交
差処理後における辺テーブルリストの一例を示す説明図
である。
【0051】辺テーブルリスト生成処理22により一時
的なパスデータが全て辺テーブルリストに変換される
と、続いて、パス交差処理部12bが辺交差処理23を
開始するが、その場合に、パス交差処理部12bは、図
7に示すように、先ず、辺テーブルリストに保存されて
いる中から交差判定の対象となる辺データを1つ取出す
(S301)。そして、取出した辺データの始点のy座
標値を「sy」、終点のy座標値を「ey」として保存
しておく(S302)。
【0052】さらに、パス交差処理部12bは、S30
1で取出した辺データとは別の辺データを1つ取出す
(S303)。このときに取出される辺データは、S3
02において保存されたsyの値を持つスキャンライン
データからeyの他を持つスキャンラインデータまでの
スキャンラインデータにリンクされている辺テーブルリ
ストから取得される。
【0053】その後、パス交差処理部12bは、S30
1で取得した辺データと、S303で取得した辺データ
との間で、交差判定を行う。交差判定には、公知の手法
を用いればよいが、その一例として以下に述べるような
ものがある(参考文献:画像データベース、坂内正夫、
大沢裕共著、昭晃堂刊)。
【0054】2つの線分A、Bの2端点の座標を、それ
ぞれ(xa1,ya1)、(xa2,ya2)、(xb
1,yb1)、(xb2,yb2)とした場合に、以下
の(1)〜(3)式で3つのパラメータξ,η,Δを求
める。
【0055】 ξ=(yb2−yb1)(xb2−xa1)−(xb2−xb1)(yb2− ya1)・・・(1)
【0056】 η=(yb2−ya1)(xb2−xa1)+(xa2−xa1)(yb2− ya1)・・・(2)
【0057】 Δ=(xa2−xa1)(yb2−yb1)−(ya2−ya1)(xb2− xb1)・・・(3)
【0058】このとき、ξ,η,Δ−ξ,Δ−ηの全て
の符号が等しいとき、2線分A,Bは交差する。このと
きの交点は、λ=ξ/Δとしたときに、以下の(4),
(5)式のようになる。
【0059】 x=xb1+λ(xa2−xa1)・・・(4)
【0060】 y=ya1+λ(ya2−ya1)・・・(5)
【0061】このような交差判定の結果、交差がなけれ
ば(S305)、パス交差処理部12bは、続いて、交
差判定する辺データが存在するか否かを判断し(S30
6)、存在するのであれば再び上述したステップ(S3
03〜S305)を繰り返す。
【0062】一方、交差判定の結果、交差があれば(S
305)、パス交差処理部12bは、その交差判定によ
って得られた交点にて、交差判定される辺データと交差
判定する辺データ、すなわちS301とS303とで取
得したそれぞれの辺データを分割し、新たに作られた分
割後の辺データを辺テーブルリストへ登録する(S30
7)。なお、このときも上述した(1)〜(4)の条件
は保証されるものとする。
【0063】その後、パス交差処理部12bは、辺テー
ブルリスト内の全ての辺データについての処理が終了す
るまで、上述した各ステップ(S301〜S307)を
繰り返す。これにより、辺テーブルリスト内にリンクさ
れている辺データ問では、交差が存在しないことが保証
される。
【0064】具体的には、図6(a)に示すような辺1
〜4からなり、かつ、辺1と辺3とが互いに交差してい
る図形であれば、上述した辺交差処理23によって、図
8(a)に示すように、辺1が辺7と辺8に、また辺3
が辺5と辺6に、それぞれ分割される。そして、辺1と
辺3の交点を通るスキャンラインデータ(L4)が生成
され、分割によって生じる新たな辺(辺6,8)の辺デ
ータがそこにリンクされることになる。
【0065】〔描画辺抽出処理、描画図形決定処理およ
び台形描画処理の詳細説明〕次いで、本実施形態におけ
る最も特徴的な点である、上述した図形描画処理のうち
の描画辺抽出処理24(図3中に示すS103の処
理)、描画図形決定処理25(図3中に示すS104〜
S107の処理)および台形描画処理26(図3中に示
すS108の処理)について詳しく説明する。図9は描
画辺抽出処理、描画図形決定処理および台形描画処理の
手順を示すフローチャートであり、図10および11は
台形描画の一具体例を示す説明図である。
【0066】辺交差処理23により互いの辺の交差が存
在しないことが保証されると、続いて、塗り潰し部12
cは、描画辺抽出処理24を開始する。このとき、塗り
潰し部12cは、図9に示すように、辺テーブルリスト
から描画判定される辺データを、X軸方向Y軸方向に始
点の座標値が小さいほうから順に2つずつ取出す(S4
01)。ここで取得した2本の辺データを、以下「描画
辺データ」と称する。
【0067】描画辺データの取得は、次に述べる順序に
従って行われる。すなわち、(1)辺データの始点のx
座標値、y座標値とも最小の辺データが最初に取得され
る。また、(2)y座標値が同一の場合は、取得される
2つの辺データの始点x座標値が小さい順から取得され
る。そして、(3)上述した(2)の順で取得される辺
データが存在しない場合は、辺データの始点y座標値が
小さい順から再び取得される。なお、塗り潰される図形
のパスは閉じている必要があることから、上記の(1)
〜(3)の順序に従って辺データが取得される限り、同
時に取得される2つの描画辺データの始点y座標値は等
しい、という条件が必ず成立するようになる。
【0068】描画辺抽出処理24により描画辺データを
取得すると、続いて、塗り潰し部12cは、描画図形決
定処理25を開始する。描画図形決定処理25では、そ
の後に行う台形描画処理26にて塗り潰す台形の形状を
決定する。詳しくは、描画辺抽出処理24で得られた描
画辺データを基に、その描画辺データによって表される
2本の辺の始点y座標値を通過するスキャンラインを下
底とし、これら2本の辺を脚(斜辺)とする台形を求め
る。このとき、台形の上底は、原則、これら2本の辺の
終点y座標値のうち、小さいほうを通過するスキャンラ
インとなる。
【0069】ただし、例えば図10(a)に示す辺1,
2を描画辺データとして取得した場合について考えてみ
ると、単純に2つの辺1,2から台形の形状を決定する
と、図10(b)に示すように、その後の台形描画処理
26にて不要な塗り潰し(図中の斜線部分)が発生して
しまう。これは、辺1,2からなる描画辺データにより
決定される台形が、他の辺3,4に影響されるためであ
る。
【0070】そこで、塗り潰し部12cでは、描画図形
決定処理25を行うのにあたって、描画辺データに影響
を与える他の辺を考慮しつつ台形の形状を決定する。し
たがって、台形の上底は、描画辺データによって表され
る2本の辺の終点y座標値と、これらの辺に影響する他
の辺の始点y座標値または終点y座標値との中で、最も
小さい箇所を通過するスキャンラインとなる。つまり、
塗り潰し部12cは、描画辺データとこれに影響する辺
データとに基づいて、例えば図10(c)に示すよう
に、その後の台形描画処理26にて塗り潰すべき台形を
求める。なお、このとき、描画辺データは、台形の上底
によって分割される可能性があるが、分割された後はこ
れまでのデータと同様に辺テーブルに登録され次の描画
を待つものとする。
【0071】以下に、この描画図形決定処理25の詳細
な手順を説明する。図9において、描画辺抽出処理24
により描画辺データを取得すると、続いて、塗り潰し部
12cは、その描画辺データから「sy」と「ey」を
求める(S402)。ここで、Syは辺データの始点y
座標値である。この値は、描画辺抽出処理24における
条件(1)〜(3)により、どちらの辺データから取得
されても等しい値となる。ところが、描画辺データ各々
の、辺データの終点y座標値は異なっている可能性があ
るため、eyは両者の辺データ終点y座標値のうち、小
さい値を選択する。
【0072】そして、塗り潰し部12cは、描画辺デー
タによる台形描画に影響を与え得る辺データが存在する
スキャンラインデータを取得する(S403)。ここで
取得されるスキャンラインデータは、そのスキャンライ
ンデータのスキャンライン値を「y」とすると、S40
2で求めたsyおよびeyとの間に、sy<y<eyの
条件が成立するスキャンラインデータでなければならな
い。ここで取得したスキャンラインデータを、以下「検
索対象スキャンラインデータ」と称する。
【0073】これらの処理を具体例で説明すると、例え
ば図10(a)に示す辺1,2を描画辺データとして取
得した場合、syはLl、eyはL4となるので、Ll
〜L4の間のスキャンラインデータが検索対象スキャン
ラインデータとなる。図例の場合、辺データが存在する
スキャンラインデータがL2のみなので、検索対象スキ
ャンラインデータとなるのはL2のみである、
【0074】検索対象スキャンラインデータを取得する
と、続いて、塗り潰し部12cは、図9に示すように、
検索対象スキャンラインデータからこれにリンクされて
いる辺テーブルリストを取出す(S404)。ここで取
得した辺テーブルリストを、以下「検索対象辺テーブル
リスト」と称する。また、検索対象辺テーブルリストに
含まれる辺データを、以下「検索対象辺データ」と称す
る。
【0075】この処理を具体例で説明すると、例えば図
10(a)に示す辺1,2を描画辺データとして取得し
た場合、検索対象スキャンラインデータとしてL2のス
キャンラインデータが選択されているから、これにリン
クする辺3,辺4についての辺データが検索対象辺デー
タとして選択されることになる。
【0076】検索対象辺データを選択すると、次いで、
塗り潰し部12cは、その検索対象辺データが、描画辺
データによる台形描画に影響を与えるか否かを判定す
る。
【0077】この判定にあたって、塗り潰し部12c
は、先ず、図9に示すように、複数存在する検索対象辺
データの中で、検索対象辺データの始点y座標値上のス
キャンラインと、描画辺データが表す辺との交点より
も、始点x座標値が小さい検索対象辺データの数を、検
索対象のスキャンライン各々についてカウントしてお
き、その最大値を保存しておく(S405)。これは、
描画すべき台形の外側(特にx座標値の小さい側)に検
索対象辺データがいくつ存在するかを認識するためのも
のである。
【0078】さらに、塗り潰し部12cは、描画辺デー
タが構成する四角形または三角形の内側に始点が位置す
る辺データを探し出す(S406)。詳しくは、検索対
象辺データの始点y座標値上のスキャンラインと、描画
辺データが表す辺との交点との間に、始点が位置する検
索対象辺データを探し出す。これは、描画すべき台形の
内側に、他の辺の始点が位置するか否かを認識するため
のものである。
【0079】この処理を具体例で説明すると、例えば図
10(d)に示すように、辺1,2で構成される台形の
描画判定を行う場合、スキャンラインデータL2と各辺
1,2との交点の間に辺3、4の始点が位置している
と、明らかに辺3、4が辺1,2で構成される台形描画
に影響を与えることが分かる。これに対し、例えば図1
0(e)に示すように、スキャンラインデータL2と各
辺1,2との交点の間に辺3、4の始点が位置していな
ければ、辺3、4の始点がスキャンラインデータL2上
にあっても、辺3、4が辺1,2で構成される台形描画
に影響を与えてしまうことはない。
【0080】したがって、図9に示すように、描画辺デ
ータの間に始点が位置する辺データが存在すれば(S4
07)、塗り潰し部12cは、例外的に、検索対象辺デ
ータの始点y座標値が上底のy座標値となるように、台
形の形状を決定する(S408)。
【0081】具体的には、図10(c)に示すように、
辺1,2が描画辺データであるとき、辺3または辺4が
存在するので、辺3または辺4の始点y座標値を台形の
上底とする。すなわち、塗り潰し部12cは、スキャン
ラインLlが下底、スキャンラインL2が上底、辺1,
2が脚となるように、台形の形状を決定する。したがっ
て、単純に2つの辺1,2から台形の形状を決定する図
10(b)の場合のように、その後の台形描画処理26
にて不要な塗り潰しが発生してしまうことがない。
【0082】また、図9に示すように、描画辺データの
間に始点が位置する辺データは存在しないが(S40
7)、始点x座標値の小さい検索対象辺データのカウン
ト数の最大値が奇数であれば(S409)、塗り潰し部
12cは、例外的に、検索対象スキャンラインのスキャ
ンラインy座標値が上底のy座標値となるように、台形
の形状を決定する(S410)。
【0083】この処理を具体例で説明すると、例えば図
11に示すように、辺1,2が描画辺データであると
き、スキャンラインL2と辺1との交点よりも始点x座
標値の小さい辺の数が辺3のみの1本であれば、辺3が
存在する検索対象スキャンラインデータのスキャンライ
ン値はL2であるから、Llが下底、L2が上底、辺
1、2が脚となるように、台形の形状を決定する。した
がって、単純に2つの辺1,2から台形の形状を決定す
る場合のように、その後の台形描画処理26にて不要な
塗り潰し(図中の斜線部分)が発生してしまうことがな
い。
【0084】このように、始点x座標値が小さい辺デー
タの数を基にするのは、交差している辺の片側が水平線
の場合の塗り潰し台形の判定を行うためである。通常、
水平線は塗り潰しに影響されないため、辺テーブルリス
トに登録されない。そのため、図11に示すように、水
平線で交差しているパスにおける辺1,2で生成される
台形の描画の場合、不正な描画(図中の斜線部分)が発
生してしまう可能性がある。そこで、描画される辺デー
タよりも、始点x座標値が小さい辺データの数をカウン
トし(図中の辺3)、その数が奇数の場合には、その辺
が所属するスキャンラインデータが、描画される台形の
上底とするようにする。この判定条件により、水平線を
含む図形でも適切な台形描画が可能となる。
【0085】その後、塗り潰し部12cは、図9に示す
ように、検索対象スキャンラインデータの更新を行う
(S411)。すなわち、注目しているスキャンライン
データの上側(y座標値の大きい側)のスキャンライン
データに検索対象を変更するように更新を行う。そし
て、全ての検索対象スキャンラインデータについて判定
が終了しても(S412)、描画辺データによる台形描
画に影響を与える辺データが辺テーブルリスト中に存在
していなければ、塗り潰し部12cは、原則通り、描画
辺データの始点y座標値が下底y座標値、描画辺データ
の終点y座標値のうち小さいほうのy座標値が上底y座
標値となるように、台形の形状を決定する。
【0086】このようにして、塗り潰し部12cが台形
の形状を決定すると、続いて、台形描画部12dは、台
形描画処理26を開始する。台形描画処理26では、描
画図形決定処理25によって描画が確定した台形の内部
領域の塗り潰しを行う(S413)。そして、以上のよ
うな処理(S401〜S413)を辺テーブルリスト中
の全ての辺データについて行ったか否かを判定し(S4
14)、全ての辺データについて終了したら描画辺抽出
処理24、描画図形決定処理25および台形描画処理2
6からなる台形生成&描画処理を終了する。なお、この
とき、描画された台形の上底で描画辺データは分割され
るが、再び辺テーブルリストに登録されて、次の描処理
が繰り返されるようになっている。
【0087】以上のように、本実施形態の画像処理装置
1およびその画像処理装置1が実施する画像処理方法に
よれば、図形の内部領域を塗り潰すのにあたって、描画
辺データの間に他の辺データの始点が位置しているか、
および描画辺データの外側領域に検索対象辺データがい
くつ(偶数か奇数か)存在しているかの判定結果に応じ
て、当該描画辺データの間に位置する領域の範囲、すな
わち当該描画辺データが構成する台形の形状を可変させ
るので、不必要な領域分割を抑えられ、図形の内部領域
の塗り潰しを行う際の理想的な台形分割を行うことがで
きる。例えば、図13(a)に示すような星型と矩形の
図形を一度に描画する場合であっても、図13(b)に
示すような理想的な台形分割を行えるようになる。
【0088】したがって、本実施形態の画像処理装置1
および画像処理方法によれば、図形の内部領域の塗り潰
しを行う場合であっても、不必要な台形の分割を抑え、
理想的な台形分割が行えるので、従来のような処理速度
の低下や使用メモリ量の増大等を招いてしまうことな
く、その塗り潰し処理をはじめとした図形描画処理を行
うことができるようになる。
【0089】また、本実施形態の画像処理装置1および
画像処理方法によれば、描画すべき図形に曲線状の辺が
ある場合に、その辺を直線状の辺の集合に近似変換した
後に、これをツリー構造データ保持部14a内の辺テー
ブルリストに登録するようになっている。したがって、
直線状の辺により構成された図形のみならず、曲線状の
辺を含む図形であっても、その塗り潰し処理をはじめと
した図形描画処理を行う際に、理想的な台形分割を行え
るようになる。
【0090】なお、本実施形態では、描画辺データの取
得を始めとした各処理を、X軸方向、Y軸方向共に、座
標値の小さいほうから順に行う場合を例に挙げて説明し
たが、本発明はこれに限定されるものではなく、座標値
の大きいほうから順に行うようにしても構わない。ただ
し、この場合には、台形描画に影響を与える辺を、描画
すべき台形の内側に他の辺の終点が位置するか否か、並
びに、描画すべき台形よりもx座標値の大きい側にいく
つの辺が存在するか、に基づいて探し出すことになる。
【0091】また、本実施形態では、本発明を、ドキュ
メントの印刷出力を行うプリンタ装置に搭載された画像
処理装置およびその画像処理装置が実行する画像処理方
法に適用した場合を例に挙げて説明したが、本発明はこ
れに限定されるものではない。すなわち、図形の描画命
令を受け取って、その図形の内側領域の塗り潰し処理を
行うものであれば、他の画像処理装置および画像処理方
法であっても適用可能である。他の画像処理装置等とし
ては、図形をディスプレイ表示するために描画するアプ
リケーションプログラム等が挙げられる。
【0092】
【発明の効果】以上に説明したように、本発明に係る画
像処理装置および画像処理方法によれば、任意の多角形
からなる複数の図形を一度に描画する場合であっても、
その図形の内部領域を1つ以上の台形に分割して塗り潰
すのにあたって、不必要な領域分割を抑え、理想的な台
形分割を行うことができる。したがって、従来のように
処理速度の低下や使用メモリ量の増大等を招いてしまう
ことがなく、迅速で、かつ、少ない使用メモリ量で、そ
の塗り潰し処理をはじめとした図形描画処理を行うこと
ができる。
【図面の簡単な説明】
【図1】 本発明に係る画像処理装置の概略構成の一例
を示すブロック図である。
【図2】 本発明に係る画像処理方法の全体の流れの一
例を示すデータフロー図である。
【図3】 本発明に係る画像処理方法の概略手順の一例
を示すフローチャートである。
【図4】 辺テーブルリスト生成処理の手順の一例を示
すフローチャートである。
【図5】 辺テーブルリストを生成する際に用いられる
データ構造の一例を示す説明図である。
【図6】 辺テーブルリストの生成結果の一例を示す説
明図であり、(a)は各辺の描画状態を示す図、(b)
は各辺のデータ構造を示す図である。
【図7】 辺交差処理の手順の一例を示すフローチャー
トである。
【図8】 辺交差処理後における辺テーブルリストの一
例を示す説明図であり、(a)は各辺の描画状態を示す
図、(b)は各辺のデータ構造を示す図である。
【図9】 描画辺抽出処理、描画図形決定処理および台
形描画処理の手順の一例を示すフローチャートである。
【図10】 台形描画の一具体例を示す説明図(その
1)であり、(a)は台形を構成する各辺の描画状態お
よびデータ構造を示す図、(b)は不要な塗り潰し状態
を示す図、(c)は適正な塗り潰し状態を示す図、
(d)は台形描画に影響を及ぼす辺を示す図、(e)は
台形描画に影響を及ぼさない辺を示す図である。
【図11】 台形描画の一具体例を示す説明図(その
2)である。
【図12】 オーダードエッジリスト・アルゴリズムに
よる図形の描画例を示す説明図であり、(a)はそのピ
クセル状態を示す図、(b)はそのデータ構造を示す図
である。
【図13】 台形分割の一具体例を示す説明図であり、
(a)は従来の台形分割を示す図、(b)は理想的な台
形分割を示す図である。
【符号の説明】
1…画像処理装置、12…CPU、12a…ツリー構造
変換部、12b…パス交差処理部、12c…塗り潰し
部、12d…台形描画部、14…RAM、14a…ツリ
ー構造データ保持部、14b…ページバッファ、21…
パスデータ入力処理、22…辺テーブルリスト生成処
理、23…辺交差処理、24…描画辺抽出処理、25…
描画図形決定処理、26…台形描画処理

Claims (12)

    【特許請求の範囲】
  1. 【請求項1】 直線状または曲線状のパスが複数組み合
    わさってなる図形の内側領域を塗り潰すための画像処理
    装置であって、 前記図形を構成する複数のパスを当該図形が描かれるX
    Y座標系のX軸方向およびY軸方向にソートしたツリー
    構造で表すとともに、前記複数のパスの中で互いに交差
    するパスがあれば当該交差するパスをその交点で分割し
    てその分割後のパスを前記ツリー構造で表すデータ変換
    手段と、 前記ツリー構造で表されるパス群の中から所定規則に従
    って2つずつパスを抽出して、当該パスの間に位置する
    領域を順次塗り潰す領域塗り手段とを備え、 前記領域塗り手段は、抽出した2つのパスの間に他のパ
    スの始点または終点の少なくとも一方が位置しているか
    否かに応じて、当該2つのパスの間に位置する領域の範
    囲を可変させるものであることを特徴とする画像処理装
    置。
  2. 【請求項2】 前記パスが曲線状である場合に、当該パ
    スを直線状のパスの集合に近似変換した後に、これを前
    記データ変換手段に前記ツリー構造で表させる直線近似
    手段を備えることを特徴とする請求項1記載の画像処理
    装置。
  3. 【請求項3】 直線状または曲線状のパスが複数組み合
    わさってなる図形の内側領域を塗り潰すための画像処理
    装置であって、 前記図形を構成する複数のパスを当該図形が描かれるX
    Y座標系のX軸方向およびY軸方向にソートしたツリー
    構造で表すとともに、前記複数のパスの中で互いに交差
    するパスがあれば当該交差するパスをその交点で分割し
    てその分割後のパスを前記ツリー構造で表すデータ変換
    手段と、 前記ツリー構造で表されるパス群の中から所定規則に従
    って2つずつパスを抽出して、当該パスの間に位置する
    領域を順次塗り潰す領域塗り手段とを備え、 前記領域塗り手段は、抽出した2つのパスの外側領域に
    他のパスが偶数本存在しているか否かに応じて、当該2
    つのパスの間に位置する領域の範囲を可変させるもので
    あることを特徴とする画像処理装置。
  4. 【請求項4】 前記パスが曲線状である場合に、当該パ
    スを直線状のパスの集合に近似変換した後に、これを前
    記データ変換手段に前記ツリー構造で表させる直線近似
    手段を備えることを特徴とする請求項3記載の画像処理
    装置。
  5. 【請求項5】 直線状または曲線状のパスが複数組み合
    わさってなる図形の内側領域を塗り潰すための画像処理
    装置であって、 前記図形を構成する複数のパスを当該図形が描かれるX
    Y座標系のX軸方向およびY軸方向にソートしたツリー
    構造で表すとともに、前記複数のパスの中で互いに交差
    するパスがあれば当該交差するパスをその交点で分割し
    てその分割後のパスを前記ツリー構造で表すデータ変換
    手段と、 前記ツリー構造で表されるパス群の中から所定規則に従
    って2つずつパスを抽出して、当該パスの間に位置する
    領域を順次塗り潰す領域塗り手段とを備え、 前記領域塗り手段は、抽出した2つのパスの間に他のパ
    スの始点または終点の少なくとも一方が位置しているか
    否かを判断し、かつ、当該2つのパスの外側領域に他の
    パスが偶数本存在しているか否かを判断し、これらの判
    断結果に応じて当該2つのパスの間に位置する領域の範
    囲を可変させるものであることを特徴とする画像処理装
    置。
  6. 【請求項6】 前記パスが曲線状である場合に、当該パ
    スを直線状のパスの集合に近似変換した後に、これを前
    記データ変換手段に前記ツリー構造で表させる直線近似
    手段を備えることを特徴とする請求項5記載の画像処理
    装置。
  7. 【請求項7】 直線状または曲線状のパスが複数組み合
    わさってなる図形の内側領域を塗り潰すための画像処理
    方法であって、 前記図形を構成する複数のパスを当該図形が描かれるX
    Y座標系のX軸方向およびY軸方向にソートしたツリー
    構造で表すとともに、前記複数のパスの中で互いに交差
    するパスがあれば当該交差するパスをその交点で分割し
    てその分割後のパスを前記ツリー構造で表し、 前記ツリー構造で表されるパス群の中から所定規則に従
    って2つずつパスを抽出して当該パスの間に位置する領
    域を順次塗り潰すとともに、当該塗り潰しにあたって、
    抽出した2つのパスの間に他のパスの始点または終点の
    少なくとも一方が位置しているか否かに応じて、当該2
    つのパスの間に位置する領域の範囲を可変させることを
    特徴とする画像処理方法。
  8. 【請求項8】 前記パスが曲線状である場合に、当該パ
    スを直線状のパスの集合に近似変換した後に、これを前
    記ツリー構造で表すようにすることを特徴とする請求項
    7記載の画像処理方法。
  9. 【請求項9】 直線状または曲線状のパスが複数組み合
    わさってなる図形の内側領域を塗り潰すための画像処理
    方法であって、 前記図形を構成する複数のパスを当該図形が描かれるX
    Y座標系のX軸方向およびY軸方向にソートしたツリー
    構造で表すとともに、前記複数のパスの中で互いに交差
    するパスがあれば当該交差するパスをその交点で分割し
    てその分割後のパスを前記ツリー構造で表し、 前記ツリー構造で表されるパス群の中から所定規則に従
    って2つずつパスを抽出して当該パスの間に位置する領
    域を順次塗り潰すとともに、当該塗り潰しにあたって、
    抽出した2つのパスの外側領域に他のパスが偶数本存在
    しているか否かに応じて、当該2つのパスの間に位置す
    る領域の範囲を可変させることを特徴とする画像処理方
    法。
  10. 【請求項10】 前記パスが曲線状である場合に、当該
    パスを直線状のパスの集合に近似変換した後に、これを
    前記ツリー構造で表すようにすることを特徴とする請求
    項9記載の画像処理方法。
  11. 【請求項11】 直線状または曲線状のパスが複数組み
    合わさってなる図形の内側領域を塗り潰すための画像処
    理方法であって、 前記図形を構成する複数のパスを当該図形が描かれるX
    Y座標系のX軸方向およびY軸方向にソートしたツリー
    構造で表すとともに、前記複数のパスの中で互いに交差
    するパスがあれば当該交差するパスをその交点で分割し
    てその分割後のパスを前記ツリー構造で表し、 前記ツリー構造で表されるパス群の中から所定規則に従
    って2つずつパスを抽出して当該パスの間に位置する領
    域を順次塗り潰すとともに、当該塗り潰しにあたって、
    抽出した2つのパスの間に他のパスの始点または終点の
    少なくとも一方が位置しているか否かを判断し、かつ、
    当該2つのパスの外側領域に他のパスが偶数本存在して
    いるか否かを判断し、これらの判断結果に応じて当該2
    つのパスの間に位置する領域の範囲を可変させることを
    特徴とする画像処理方法。
  12. 【請求項12】 前記パスが曲線状である場合に、当該
    パスを直線状のパスの集合に近似変換した後に、これを
    前記ツリー構造で表すようにすることを特徴とする請求
    項11記載の画像処理方法。
JP2000122195A 2000-04-24 2000-04-24 画像処理装置および画像処理方法 Pending JP2001307115A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000122195A JP2001307115A (ja) 2000-04-24 2000-04-24 画像処理装置および画像処理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000122195A JP2001307115A (ja) 2000-04-24 2000-04-24 画像処理装置および画像処理方法

Publications (1)

Publication Number Publication Date
JP2001307115A true JP2001307115A (ja) 2001-11-02

Family

ID=18632702

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000122195A Pending JP2001307115A (ja) 2000-04-24 2000-04-24 画像処理装置および画像処理方法

Country Status (1)

Country Link
JP (1) JP2001307115A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101106391B1 (ko) 2003-12-09 2012-01-17 지멘스 프로덕트 라이프사이클 매니지먼트 소프트웨어 인크. 투명 렌더링을 위한 시스템 및 방법
US10366532B2 (en) 2016-04-06 2019-07-30 Samsung Electronics Co., Ltd. Method and apparatus for performing path rendering

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101106391B1 (ko) 2003-12-09 2012-01-17 지멘스 프로덕트 라이프사이클 매니지먼트 소프트웨어 인크. 투명 렌더링을 위한 시스템 및 방법
US10366532B2 (en) 2016-04-06 2019-07-30 Samsung Electronics Co., Ltd. Method and apparatus for performing path rendering

Similar Documents

Publication Publication Date Title
US8723884B2 (en) Scan converting a set of vector edges to a set of pixel aligned edges
JP4370438B2 (ja) ベクター画像描画装置、ベクター画像描画方法およびプログラム
US8705118B2 (en) Threshold-based load balancing printing system
JP2001307115A (ja) 画像処理装置および画像処理方法
JP6590606B2 (ja) 画像処理装置、画像処理方法、プログラム
JP4775723B2 (ja) 画像処理装置および画像処理プログラム
JP2003162728A (ja) 画像処理装置及び画像出力装置
JP3606006B2 (ja) 画像形成装置およびグラデーション描画方法
JP6541320B2 (ja) 画像処理装置、画像処理方法、コンピュータプログラム
WO2013175520A1 (ja) 文字描画装置
US9727808B1 (en) Method and system for rendering rectangle drawing objects using a clip region
US11341383B2 (en) Methods and apparatus to detect effective tiling area and fill tiles efficiently
JP3843794B2 (ja) 図形処理装置
JP3266905B2 (ja) 図形処理装置
JP2002244643A (ja) 画像処理装置
JP5473782B2 (ja) 画像処理装置及び画像処理プログラム
JP5492911B2 (ja) 文字作成方法、および文字作成装置
JPH1185428A (ja) 画像形成方法及び画像形成装置
JP2000099750A (ja) 画像処理装置及び画像処理方法
JP3536894B2 (ja) 図形処理装置
JP4764730B2 (ja) 画像形成装置及び画像形成方法
JP2002133431A (ja) 画像処理装置及び画像処理方法
JP2002208017A (ja) 描画処理装置
US8976418B2 (en) Image processing apparatus for determining a X coordinate value of an edge on a current scan line from among a plurality of X coordinate values
JP3567727B2 (ja) 画像処理方法および装置