JPH1052950A - 描画処理装置 - Google Patents

描画処理装置

Info

Publication number
JPH1052950A
JPH1052950A JP8211258A JP21125896A JPH1052950A JP H1052950 A JPH1052950 A JP H1052950A JP 8211258 A JP8211258 A JP 8211258A JP 21125896 A JP21125896 A JP 21125896A JP H1052950 A JPH1052950 A JP H1052950A
Authority
JP
Japan
Prior art keywords
processing
data
area
unit
range
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.)
Granted
Application number
JP8211258A
Other languages
English (en)
Other versions
JP3728820B2 (ja
Inventor
Kazutaka Hayashi
千登 林
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 JP21125896A priority Critical patent/JP3728820B2/ja
Publication of JPH1052950A publication Critical patent/JPH1052950A/ja
Application granted granted Critical
Publication of JP3728820B2 publication Critical patent/JP3728820B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Record Information Processing For Printing (AREA)

Abstract

(57)【要約】 【課題】 負荷を均一に割り当て、高速な並列描画処理
を行う描画処理装置を提供することを目的とする。 【解決手段】 描画データ生成手段20は、ページ記述
言語10から描画データを生成する。負荷推定補正値算
出手段30は、描画データから負荷推定補正値を算出す
る。描画データ格納制御手段40は、描画データと負荷
推定補正値とを格納する。描画処理手段60a〜60n
は、描画データ格納制御手段40から描画データを読み
だして並列に描画処理を行う。処理担当範囲割り当て手
段50は、負荷推定補正値によって決定した描画処理範
囲を描画処理手段60a〜60nに均一に割り当てる。
処理結果格納制御手段70は、描画処理手段60a〜6
0nで描画処理された結果を格納し、出力装置200に
転送する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は描画処理装置に関
し、特にページ記述言語を入力として描画処理を行う描
画処理装置に関する。
【0002】
【従来の技術】現在、ページプリンタでは、Inter
press(米国ゼロックス社の登録商標)やPost
Script(米国アドビ・システムズ社の商標)など
のPDL(ページ記述言語)を入力として印刷を実行し
ている。
【0003】このようなPDLを入力として印刷を実行
する際には、PDL形式のデータからラスタ出力デバイ
スに適した形式のデータに変換するイメージング処理を
行う必要がある。ところが、一般にイメージング処理に
かかる時間は非常に長く、このことは特に高速のページ
プリンタに出力するシステムなどでは問題となってい
る。
【0004】例えば、カラーの高速ページプリンタは毎
分40枚以上の出力能力を持つものがあるにもかかわら
ず、イメージング処理にかかる時間は、10数秒から数
分かかってしまい、高価な高速ページプリンタの能力を
十分に生かせなかった。したがって、イメージング処理
を高速に行うために、並列描画処理を行う必要がある。
【0005】図30は、描画領域を均等に分割して並列
描画処理を行う場合の図である。この図の描画要素4
は、描画領域の中心部分に要素が多く、かつ重なり合い
が複雑になっている。そして、このような描画要素4に
対して、領域単位が均等に分割されて各描画処理部1〜
3で並列描画処理が行われるものとする。
【0006】
【発明が解決しようとする課題】しかし、上述したよう
に描画要素4の領域単位を均等に分割して描画処理部1
〜3に等しく割り当てたとしても、描画要素の数や図形
同士の重なり合いなどの描画要素自体の複雑さがあるた
め、描画処理部1〜3が担当する負荷の重さはそれぞれ
異なるものになる。
【0007】図31は、図30で示した各描画処理部の
描画処理動作タイミングを示す図である。このタイミン
グが示す各単位描画領域あたりの処理時間は、各領域内
に属する描画要素の数だけではなく、描画要素同士の重
なり具合などの影響も含めている。図から描画処理部
1、2に比べて複雑な描画要素を担当した描画処理部3
に負荷が集中してしまうことにより、他の描画処理部
1、2が待ち状態に陥っていることがわかる。
【0008】このように描画領域を均等に分割して並列
描画処理を行うと、重い負荷が割り当てられた描画処理
部が律速となって、並列描画処理の効果を落とすという
問題があった。
【0009】また、これらの並列描画処理をマルチプロ
セッサなどの複数のCPU上でソフトウェアとして実現
した場合に処理量を等しくなるように負荷を分配したと
しても、各CPU上で他のプロセスが動作する時間やタ
イミングなどのバラツキにより、処理の実行時間は等し
くならないという問題があった。
【0010】本発明はこのような点に鑑みてなされたも
のであり、負荷の重さが均一になるように描画処理範囲
を割り当てて高速な並列描画処理を行う描画処理装置を
提供することを目的とする。
【0011】
【課題を解決するための手段】本発明では上記課題を解
決するために、ページ記述言語を入力として描画処理を
行う描画処理装置において、前記ページ記述言語を変換
してイメージを描画するための描画データを生成する描
画データ生成手段と、単位領域内の前記描画データの負
荷を推定して負荷推定補正値を算出する負荷推定補正値
算出手段と、前記描画データと前記負荷推定補正値の格
納及び送信の制御を行う描画データ格納制御手段と、前
記描画データ格納制御手段から前記描画データを読みだ
して並列描画処理を行う複数の描画処理手段と、前記負
荷推定補正値から前記負荷の重さが均一になるように描
画処理範囲を決定して前記描画処理手段に割り当てる処
理担当範囲割り当て手段と、前記描画処理手段で処理さ
れた結果を格納して出力装置に送信する処理結果格納制
御手段と、を有することを特徴とする描画処理装置が提
供される。
【0012】ここで、描画データ生成手段は、ページ記
述言語から描画データを生成する。負荷推定補正値算出
手段は、描画データから負荷推定補正値を算出する。そ
して、描画データ格納制御手段は、描画データと負荷推
定補正値とを格納する。処理担当範囲割り当て手段は、
負荷推定補正値から描画処理範囲を決定し、描画処理手
段に均一に描画データを割り当てる。複数の描画処理手
段は、割り当てられた描画データを並列に描画処理す
る。処理結果格納制御手段は、並列描画処理後の結果を
格納し、出力装置に送信する。
【0013】
【発明の実施の形態】以下、本発明の実施の形態を図面
を参照しながら説明する。図1は、本発明の描画処理装
置の原理図である。描画データ生成手段20は、図示し
ない入力手段から入力されるページ記述言語10である
描画記述の解釈・展開を行い、描画記述に記述されてい
たイメージを描画するための描画データを生成する。そ
して、この描画データから後述する負荷推定補正値を負
荷推定補正値算出手段30で算出する。また、描画デー
タと負荷推定補正値とは、描画データ格納制御手段40
に送信される。
【0014】描画データ格納制御手段40は、複数の描
画処理手段60a〜60nに、描画データを送信する。
さらに、描画データの存在範囲を指定するためのデータ
と負荷推定補正値とを処理担当範囲割り当て手段50に
送信する。
【0015】処理担当範囲割り当て手段50は、描画デ
ータ格納制御手段40から描画データの存在範囲と負荷
推定補正値とを受信して、描画処理手段60a〜60n
が要求する担当描画処理範囲に対しての制御を行う。
【0016】描画処理手段60a〜60nは、処理担当
範囲割り当て手段50で均一に割り当てられた担当描画
処理範囲の描画処理を行う。そして、処理結果格納制御
手段70は、描画処理手段60a〜60nで処理された
処理結果を格納し、出力装置200にその結果を送信す
る。
【0017】また、これらの各手段はその初期化や処理
の開始、終了、同期などは図示しない制御手段により制
御されて動作する。図2は、本発明の描画処理装置が適
用されるシステムの概念図である。このシステムは、ネ
ットワーク400に接続されたネットワークインタフェ
ース300を介して、描画処理装置100が接続され
る。そして、描画処理装置100からの処理結果を出力
する出力装置200が接続される。
【0018】システムの動作としては、図示しないクラ
イアント・コンピュータから、ネットワークや専用線を
介して描画出力用のデータが送られる。この描画出力用
のデータはネットワークインタフェース300を介し
て、描画処理装置100に受信され処理される。そし
て、処理の終ったデータは出力装置200に転送されて
紙やフィルムなどの媒体上にイメージが再現される。
【0019】以上説明したように、本発明は、クライア
ントとなるコンピュータからネットワークあるいは専用
通信路などを通じて、描画データを受信してプリンタ等
の出力機用のデータに変換する装置内に配置される。
【0020】図3は、描画処理装置の全体処理の流れを
示すフローチャートである。ここでは1ページ分の処理
の流れの例を簡略化して示している。描画記述が入力さ
れると、描画データ格納制御手段40、処理結果格納制
御手段70、処理担当範囲割り当て手段50、描画処理
手段60a〜60nに対して、初期化命令を発行し初期
化処理が行われる(ステップS1)。そして、入力され
た描画記述から描画データを生成するために、描画デー
タ生成手段20に処理の開始を指示する(ステップS
2)。その後、描画記述の処理が予め定められた描画領
域分、あるいは予め定められた描画記述のデータ量分生
成し終えると、描画処理手段60a〜60nに対して、
描画処理の開始を指示する(ステップS3)。この後、
図1で図示してない制御手段は、複数の描画処理手段6
0a〜60nの処理が全て終了したことを、描画処理手
段60a〜60nからの通知を通して知るか、あるいは
未処理の描画領域が無くなったことを処理担当範囲割り
当て手段50からの通知を通して知ると、処理結果格納
制御手段70内のデータを出力装置200に対して転送
する(ステップS4)。
【0021】次に、描画処理装置の各手段について詳し
く説明する。図4は、描画データ生成手段20の処理の
流れを示すフローチャートである。ただし、入力データ
の中に負荷推定補正値が既に記述されているものする。
【0022】描画データ生成手段20は、処理の開始を
指示されるとページ記述言語である描画記述データを読
み込み、負荷推定補正値が記述されているかどうかを判
断する(ステップS10)。記述されていない場合は、
描画処理手段60a〜60nが処理できる形式である描
画データに変換して、描画データ格納制御手段40に転
送する(ステップS11)。また、描画記述データ中に
負荷推定補正値が記述されていた場合には、負荷推定補
正値を切り出して、これを読みこんで描画データ格納制
御手段40に転送する(ステップS12)。そして、描
画データが入力済みかどうかを判断する。入力済みの場
合は終了し、そうでない場合は、ステップS10に戻
る。
【0023】図5は、描画データ生成手段20で処理さ
れる描画データのデータ構造の一例を示す図である。走
査線方向に平行な2辺を持つ台形表現により描画領域を
表現する描画データ20aと、そのデータ構造20bと
を示している。そして、副走査線方向をY座標軸、走査
線方向にX座標軸をとって描画領域上での位置をXY座
標系で表現している。
【0024】データ構造20bの描画領域に関する値
(YMIN,YMAX,X1,X2,DX1,DX2)以外には、色などの塗りつ
ぶし属性値(ATTR) と、重ね塗の順番を制御する塗りつ
ぶし優先順位の値(PRIO) などが格納される。また、台
形データによる塗りつぶし領域の表現はさまざまなもの
が挙げられるが、ここではその一例を示している。図で
はY座標の最大値YMAXと最小値YMIN、左側の辺について
はY座標の最小値の位置におけるX座標値X1、Y座標が
単位量増加した際のX座標の増分値DX1 、右側の辺につ
いてはY座標の最小値の位置におけるX座標値X2、Y座
標が単位量増加した際のX座標の増分値DX2 、により台
形領域を少なくとも規定できる。
【0025】なお、本実施の形態においては、説明の簡
単のため描画データとして台形表現により描画領域を表
現する描画データを用いているが、描画データは主走査
線方向に平行な2辺を持つ台形表現である必要はない。
例えば、点列やベクトル表現による多角形表現、曲線を
含めた線分列表現、向かい合う線分列同士を関係づけた
線分列ペアによる表現、描画領域を三角形や矩形で分割
した表現でもよい。
【0026】次に、負荷推定補正値算出手段30につい
て説明する。図6は、負荷推定補正値算出手段30の構
成図である。描画データ参照手段31は、描画データを
参照して後の処理手段に対して必要なデータを分配す
る。描画データ種別判別手段32は、参照されている描
画データの種類を判定する。
【0027】描画データ領域代替データ算出手段33
は、参照されている描画データのおおまかな存在範囲を
算出あるいは、おおまかな存在範囲がすでに描画データ
の中に記述されている場合には、そのデータを取り出し
て、描画データ領域代替データを作成する。この描画デ
ータ領域代替データとしては描画データの存在範囲を正
確に記述できるデータを使用してもよいが、目的とする
負荷推定補正値を算出するためには、図形の外接矩形程
度の情報量があればよいため、以降では説明の簡単のた
めに、この描画データ代替データが描画データの外接矩
形データであるものとする。
【0028】また、この外接矩形データは、描画データ
の正確な存在範囲である必要はないため、描画データを
表現している点列などの座標値から単純に算出したもの
でもよいし、単純に算出される外接矩形にマージンを加
えたものであってもよい。
【0029】描画データ種別負荷推定補正値算出手段3
4は、描画データ種別判別手段32から、処理中の描画
データの種類を示すデータを得る。このデータを元に描
画データ種別負荷推定補正値算出手段34は、その描画
データの負荷推定補正値を求める。この求め方は、単純
に描画データの種類別に負荷推定補正値の値や算出式が
格納されたテーブルを用意しておき、そのテーブルを引
いて求めることで容易に実現可能である。
【0030】負荷推定補正値の係数が求まると、描画デ
ータ領域代替データ算出手段33から、描画データ領域
代替データを得て、描画データの存在範囲を算出する。
その後、算出した存在範囲について求めた負荷推定補正
値の値を加算するという指示を負荷推定補正値累算手段
37に伝える。
【0031】例えば、描画データがラスタイメージデー
タであった場合に、描画データの種類別に負荷推定補正
値を格納したテーブル内に負荷推定補正値=(分割描画
領域内の存在範囲の概算面積)×100という算出式が
格納されていたとする。このとき描画領域代替データか
らこの描画データが関係する分割描画領域内の存在範囲
の概算面積を描画領域代替データから求め、この値を用
いて各分割描画領域毎に算出した負荷推定補正値を負荷
推定補正値累算手段37に通知する。
【0032】重なり度算出手段35は、描画データ同士
の重なり関係から負荷推定補正値を算出する。この重な
り度算出手段35においては、例えば、分割描画領域ご
とにその分割描画領域内で描画データ同士の重なりが何
回あるかを概算し、その数値に何らかの演算を行って負
荷推定補正値として負荷推定補正値累算手段37に通知
する。分割描画領域内での描画データ同士の重なり回数
の概算については後述する。
【0033】負荷推定補正値累算手段37は、描画デー
タ種別負荷推定補正値算出手段34からのデータを分割
描画領域毎に累算するとともに、重なり度算出手段35
から得られる分割描画領域内の描画データ同士の重なり
回数の概算値から算出される負荷推定補正値を格納し、
これら両者を分割描画領域毎に演算を行って合成して、
分割描画領域ごとの負荷推定補正値を作る。
【0034】そして、描画データ種別負荷推定補正値算
出手段34のデータをα、重なり度算出手段35のデー
タをβとして、合成するときの合成式は、floor
(3.95・floor(α/128.5)+5.3・
floor(β/3.3)+1)のような式を用いる。
ただし、この式に限定されるものではない。
【0035】次に、分割描画領域毎の描画データ同士の
重なり回数の概算について説明する。ここでは、描画デ
ータ同士の重なり回数の概算を行うための入力データと
して、描画データ領域代替データを使用する。このデー
タは、描画データ領域代替データ保持手段36に蓄積さ
れているものである。描画データ領域代替データは、描
画データの外接矩形などの比較的単純な図形データで領
域を表現しているものであり、同種のデータの2つの間
では、容易に重なり判定を行うことができる。
【0036】例えば、描画データ領域代替データが描画
データの外接矩形であった場合には、2つの描画データ
領域代替データ間の重なり判定には2つの長方形の交わ
りの有無を判定する問題になり、実現は容易である。以
降、描画データ領域代替データを単に矩形データと呼
ぶ。
【0037】分割描画領域ごとの矩形データ間の重なり
回数の算出は、描画領域を一方向に走査しながら処理す
ることができる。この走査処理の際に、走査位置に対応
する矩形データを描画データ領域代替データ保持手段3
6から順に取り出すことにより、各走査位置において
は、その位置で走査処理が進む方向と直交する直線上に
存在する矩形データを全て集め、その直線上に存在しな
い矩形データを排除した集合を作り処理することができ
る。
【0038】これを実現するために描画データ領域代替
データ保持手段36は、描画データ領域代替データを単
純に一方向に順に並べ直したリストでもよいし、この走
査処理の処理単位ステップごとのきざみをもったテーブ
ルの様なものを用意して、各描画データ領域代替データ
をその片側の座標値をキーとしてそのテーブルに登録し
てもよい。
【0039】以降、この走査処理は描画領域に向かって
上方向から下方向に進むものとして説明を行い、走査処
理を重なり走査、重なり走査処理の方向に直交する方向
の直線を重なり走査処理補助線と呼ぶ。また、各走査位
置における重なり走査処理補助線上にある矩形データ集
合を保持、管理する手段を重なり走査処理補助線上矩形
データ集合管理手段と呼ぶ。
【0040】図7は、重なり走査処理補助線上の矩形デ
ータ間の共通区間を示す図である。重なり合う矩形デー
タA〜Cの組み合わせについて、1回ずつ重なりを検出
するには、例えば、重なり走査処理が進んで走査位置が
変更になることにより、新たに矩形データが参照された
時に、その時に1回、重なり走査処理補助線30a上の
矩形データ集合管理手段に管理されている矩形データB
と、新たに読み込まれた矩形データCとの共通の区間3
0b(重なり走査処理補助線方向の区間)を持つものを
探索することにより実現できる。
【0041】この探索処理は、新たに参照された矩形デ
ータとの総当たりのチェックでも実現できるが、通常
は、重なり走査処理補助線上矩形データ集合管理手段を
各矩形データを重なり走査処理補助線方向の区間により
管理するツリー構造で実現することによって重なり合う
矩形データの組を探索する処理の負荷を軽減する。
【0042】図8は、一方向の区間を持つデータを示す
概念図であり、図9は、一方向の区間でデータを管理す
るツリー構造の例を示す図である。以降、一方向の区間
を持つデータを区間データと言い替えて説明する。この
ツリー構造の各ノードは2le vel ×nから2level ×
(n+1)の区間のデータを管理する。各ノードが直接
管理する描画データは(2level ×n+2level ×(n
+1))/2の位置、すなわち、各ノードが管理する領
域の中点をまたぐデータであり、中点よりも左の領域に
ある描画データはそのノードの左側の枝の下に管理さ
れ、中点よりも右の領域にある描画データはそのノード
の右側の枝の下に管理される。
【0043】そして、このツリー構造に対して、特定の
区間データと交わる区間データを探索する際には、探索
する区間データと関係のない枝を探索する必要がなくな
るので効率的に探索を実現することができる。図9で
は、区間データをツリー構造に格納してあり、この時区
間データ〔9,13〕について重なるものを探索した時
の探索の道筋を例示してある。探索はまず0〜16のノ
ードに格納されている区間データ〔3,10〕について
重なりチェックを行う。これは、区間同士の単純な比較
により重なりがあることが判定できる。
【0044】そして、区間データ〔9,13〕は0〜1
6のノードが管理する範囲の中点8よりも右側にあるた
め、0〜8以下の枝については探索する必要がなくな
り、8〜16のノード以下の枝について同様の探索を繰
り返す。その結果8〜16のノードで区間データ〔1
0,14〕、8〜12のノードで区間データ〔9,1
1〕を見つけることができる。12〜16のノードにつ
いては探索されない。そして、探索後、あるいは探索の
途中で重なりを問い合わせた区間データ〔9,13〕は
8〜16のノードに格納される。
【0045】以上により、重なりあう矩形データの組を
順に見つけることができ、各分割描画領域ごとに重なり
回数を計算してその回数から各分割描画領域ごとの負荷
推定補正値を求めることが可能である。なお、単純に重
なり回数から負荷推定補正値を求めるのではなく、重な
り部分の面積や重なりあう描画要素の種類の組み合わせ
などにより、負荷推定値を求めてもよい。また、重なり
を検出した際に単純に各分割描画領域ごとに回数を増や
すのではなく、重なりの組み合わせの検出毎に負荷推定
補正値を算出してそれを累積してもよい。
【0046】次に、描画データ格納制御手段40につい
て説明する。図10は、描画データ格納制御手段40の
構成を示す図である。まず、データ格納用インターフェ
ース41は、描画データ生成手段20からの描画データ
を受信する。描画データ存在範囲抽出手段42は、受信
した各描画データから副走査線方向(以降説明の簡単の
ため、副走査線の方向をY方向、副走査線方向の位置を
示す数値をY座標値、これに対し走査線の方向をX方
向、走査線方向の位置を示す数値をX座標値と呼ぶ。)
に対する存在範囲を検出する。
【0047】描画データ存在範囲集計手段43は、検出
したY方向の存在範囲を集計する。負荷推定補正値登録
手段44は、描画領域の特定の範囲についての負荷推定
の補正値を格納する。負荷推定基データ用インタフェー
ス45は、処理担当範囲割り当て手段50と通信する。
描画データ登録手段46は、Y方向の存在範囲から、Y
座標値の最大値、最小値の少なくとも一つの座標値をも
とに描画データを抽出できるように登録する。描画デー
タ送出用インタフェース47は、描画処理手段60a〜
60nと通信を行う。
【0048】描画データ格納制御手段40は、大きく分
けると少なくとも4種類の処理フェーズを持つ。それら
は、初期化、データの格納、描画データの送出、負荷推
定基データの送出である。
【0049】図11は、描画データ格納制御手段40の
初期化の処理の流れを示したフローチャートである。描
画データ格納制御手段40は、描画データ存在範囲集計
手段43の初期化(ステップS20)と、描画データ登
録手段46の初期化(ステップS21)と、負荷推定補
正値登録手段44の初期化(ステップS22)を行う。
【0050】図12は、描画データ格納制御手段40が
描画データ生成手段20から描画データを受信して格納
する際の処理の流れを示すフローチャートである。描画
データ生成手段20と負荷推定補正値算出手段30とか
らデータが送信されると、描画データであるか、負荷推
定の補正値であるかを判定する(ステップS30)。描
画データであると、描画データ存在範囲抽出手段42に
よりその描画データのY方向の存在範囲を検出し(ステ
ップS31)、この両端を描画データ存在範囲集計手段
43に登録する(ステップS32)。
【0051】例えば、描画データ存在範囲抽出手段42
が描画データのY方向の座標値の最大値と最小値を抽出
する。そして、最大値に当てはまる個数、最小値に当て
はまる個数をカウントする1組ずつのカウンタが単位Y
座標毎に用意されている描画データ存在範囲集計手段4
3中の対応するカウンタをインクリメントする。
【0052】以降、ここで例に挙げたようなカウンタの
テーブルについて参照する際には、最小値側のカウンタ
を進入カウンタ、最大値側のカウンタを退出カウンタと
呼ぶ。
【0053】次に、描画データを描画データ登録手段4
6に登録する(ステップS33)。例えば、描画領域の
Y方向の単位領域に対応する描画データテーブルを用意
し、各描画データをY方向の座標値の例えば最小値に対
応する場所に、描画データを登録することにより実現で
きる。そして、これらの操作は描画データ生成手段20
により生成されるすべての描画データについて行われ
る。
【0054】一方、負荷推定の補正値であった場合に
は、負荷推定補正値登録手段44にこれを登録する(ス
テップS34)。この負荷推定補正値登録手段44も例
えば、同様に描画領域のY方向の単位領域に対応するテ
ーブル領域を用意し、このテーブル領域に受け取った補
正値データを登録することにより実現できる。
【0055】なお、本実施の形態においては、描画デー
タ格納制御手段40内の描画データ存在範囲集計手段4
3、描画データ登録手段46、負荷推定補正値登録手段
44等にテーブル形式のデータ構造を使用するが、これ
は説明の簡単のためであり、他のデータ構造を用いても
よい。リスト構造や、ツリー構造、ハッシュ機構などさ
まざまな他のデータ構造を利用しても同様の機能を得る
ことは可能である。
【0056】その後、描画データが入力済みかどうかを
判断する。入力済みの場合は終了し、そうでない場合
は、ステップS30に戻る(ステップS35)。図13
は、描画データ格納制御手段40から、描画処理手段6
0a〜60nに描画データを送出する際の処理の流れを
示すフローチャートである。描画データ格納制御手段4
0は、描画データの転送要求を受け取ると、要求された
範囲に登録されている描画データを抽出して(ステップ
S40)、転送要求もとの描画処理手段に送出する(ス
テップS41)。この時、抽出した描画データを全て送
出してもよいし、抽出した描画データの中から、要求さ
れた範囲の片側の端にかからないデータを除いてから送
出することもできる。
【0057】また、描画データ格納制御手段40のデー
タ送出の機能は、描画処理手段60a〜60n間の共有
メモリ上に構成されている場合には、描画データ格納制
御手段40が能動的な機能を果たさずとも、描画処理手
段60a〜60nが必要な範囲に登録されている描画デ
ータにアクセスできるデータ構造を提供するだけでもよ
い。このとき各描画処理手段60a〜60nはそれぞれ
勝手に描画データを読みだしていくことが可能である。
【0058】次に、処理担当範囲割り当て手段50につ
いて説明する。図14は、処理担当範囲割り当て手段5
0に対する描画データ格納制御手段40の処理の流れを
示すフローチャートである。処理担当範囲割り当て手段
50は、描画処理手段60a〜60nに対して、描画領
域を分割して処理の担当を割り当てる。この描画領域の
分割を決定する際には、分割した描画領域における描画
処理の負荷の推定値を算出する。
【0059】以降、Y方向の最小分割単位を単位描画領
域と呼び、処理担当範囲割り当て手段50により大きさ
と位置を決められて各描画処理手段60a〜60nに割
り当てられる領域を分配描画領域と呼ぶ。例えば、単位
描画領域は走査線1〜数本分のX方向に細長い領域であ
り、分配描画領域はこの単位描画領域数個から数十個程
度の大きさの領域となる。
【0060】処理担当範囲割り当て手段50が分配描画
領域を決定する際には、割り当てる分配描画領域を各描
画処理手段60a〜60nが処理する場合の負荷の推定
値にもとづいて計算する。この時、負荷の推定値を計算
する範囲について、描画データ格納制御手段40に対し
て、図10で説明した描画データ存在範囲集計手段43
に登録されているデータの要求(ステップS50)と、
図10で説明した負荷推定補正値登録手段44に登録さ
れているデータの要求(ステップS51)を行う。
【0061】描画データ格納制御手段40は、この要求
に対して描画データ存在範囲集計手段43と負荷推定補
正値登録手段44とを指定された描画位置をもとに検索
することによりデータを集め、これを処理担当範囲割り
当て手段50に送出する(ステップS52)。
【0062】図15は、処理担当範囲割り当て手段50
の構成を示す図である。排他的インタフェース51は、
描画処理手段60a〜60nからいずれか1つの描画処
理手段の要求を受け付ける。すると、分配描画処理領域
決定手段52で決定された分配描画領域の範囲が通知さ
れる。分配描画領域の範囲は、この分配描画領域の負荷
推定値が予め定められた基準に見合うように決定され
る。
【0063】この予め定められた基準は分配描画処理領
域決定手段52内に保持されており、図示しない制御手
段により供給される。例えば、順次、分配描画領域の範
囲を広げていき、分配描画領域の負荷推定値が予め定め
ておいた基準値を越えるところで分配描画領域を決定し
てもよい。
【0064】描画範囲判定手段53は、描画処理の進行
にともない処理すべき描画領域がなくなった状態を判定
する。未処理位置保持手段54は、Y方向の未処理位置
を保持するための保持手段であり、描画処理手段60a
〜60nに単位描画処理領域を割り当てる際に更新され
る。負荷推定値算出手段55は、負荷推定基データ保持
手段56に保持されているデータに加えて、負荷推定値
を算出している領域に関する補正値が描画データ格納制
御手段40から得られれば、これを組み合わせて、単位
描画領域ごとに負荷推定値を算出する。この負荷推定値
は単位描画領域ごとに算出された後、例えば加算のよう
な演算により複数の単位描画領域にわたって結合され
て、分配描画領域の負荷推定値が算出される。
【0065】負荷推定基データ保持手段56は、描画デ
ータ格納制御手段40に問い合わせることにより得た描
画データの存在範囲の集計値等から算出した負荷推定基
データが格納される。
【0066】図16は、処理担当範囲割り当て手段50
の処理の流れを示すフローチャートである。処理担当範
囲割り当て手段50は、全体の処理の開始時に初期化が
行われる他に、描画処理手段60a〜60nから問い合
わせがあると以下に示すような処理を行う。
【0067】描画処理手段60a〜60nからの要求
は、排他的インタフェース51によりアクセスを制御さ
れ、同時に、描画処理手段60a〜60nからいずれか
1つの描画処理手段の要求を受け付ける(ステップS6
0)。担当範囲の割り当て要求があると、描画範囲判定
手段53を参照し、まだ未処理の描画領域があるかどう
かを判断する(ステップS61)。未処理の描画領域が
既になければ、その旨を要求元の描画処理手段に通知
し、後述するステップS66に行く。
【0068】未処理の描画領域がまだある場合には、未
処理位置保持手段54に保持されている位置から順に、
単位描画領域についての負荷推定値を算出する。すなわ
ち、描画データ格納制御手段40に対してその単位描画
領域ごとの描画要素の数などを問い合わせ(ステップS
62)、その単位描画領域についての負荷推定補正値も
要求して算出する(ステップS63)。
【0069】この推定値は例えば、その単位描画領域か
ら始まる描画要素の数と、負荷推定基データ保持手段5
6に保持されている直前の単位描画領域から続いている
描画要素の値を足すことによりその単位描画領域に存在
する描画要素の数を推定し、この値に、負荷推定補正値
があればこれを係数としてかけ合わせた数値を、単位描
画領域の負荷推定値とすることができる。単位描画領域
の値を算出すると、その単位描画領域で終る描画要素の
数をその単位描画領域における描画要素の数から引いた
値を負荷推定基データ保持手段56に格納しておく。
【0070】そして、未処理位置保持手段54に保持さ
れている位置から順に、同様の処理により単位描画領域
ごとの負荷推定値を算出して、これを累算していき、分
配描画領域の負荷推定値を算出する(ステップS6
4)。そして、累算値が、予め定めておいた値を越える
かどうかを判断する(ステップS65)。値を越えない
場合は、ステップS61へ戻り、そうでない場合はステ
ップS66に行く。
【0071】そして、割り当てる分配描画領域があるか
どうかを判断する(ステップS66)。ない場合は、分
配する描画領域のないことを要求元に送信する。ある場
合は、要求元の描画処理手段に対して送信して(ステッ
プS68)、未処理位置保持手段54に保持されている
位置を次の未処理の描画位置に更新する(ステップS6
9)。
【0072】次に、描画処理手段60a〜60nについ
て説明する。描画処理手段の内部構成は、いずれも同じ
なので描画処理手段60として説明する。図17は、描
画処理手段60の構成を示す図である。処理済み描画位
置保持手段61は、処理済みの描画位置を保持する。担
当描画範囲保持手段62は、処理担当範囲割り当て手段
50から得られた、担当する描画処理範囲を保持するた
めの保持手段であり、半導体記憶装置や磁気ディスク装
置により実現できる。
【0073】描画データ保持手段63は、描画データ格
納制御手段40から得た描画データを一時保持すると共
に、先に処理した他の描画領域から引き継がれる描画デ
ータをも保持するための保持手段である。この描画デー
タ保持手段63も半導体記憶装置などのさまざまな記憶
手段により実現することが可能である。
【0074】描画データ判定・破棄手段64は、描画機
構65が処理対象とする描画位置が更新されることに伴
い、描画データ保持手段63内の描画データの内、描画
処理の行われる位置が、その描画データの存在範囲外に
なってしまったものを描画機構65の処理の対象から除
いて、描画機構65の処理の効率をあげると共に、描画
データ保持手段63の必要記憶容量を削減するためのも
のである。
【0075】描画機構65は、内部に描画位置を保持
し、描画データ保持手段63内のデータを描画処理バッ
ファ66をワーク領域として利用しながら処理して、担
当描画領域に関して、ラスタイメージデータと対応のと
れる処理結果データに変換する。処理結果データの形式
としては、ラスタイメージデータを代表として、主走査
線方向の範囲と色により表現されるランレングスデー
タ、これらのデータをデータ圧縮の技術により圧縮した
データ等さまざまな形式がありうる。
【0076】描画機構65は、処理結果を単位描画処理
領域ごとに処理結果格納制御手段70に格納してもよ
い。また、ある程度集めてから処理結果格納制御手段7
0内に格納してもよい。この処理結果格納制御手段70
は、複数の描画処理手段60a〜n間の共有メモリ上に
構築され副走査方向のテーブルの領域が予め確保されて
いれば、描画処理手段60a〜60nが各々、そのテー
ブルに処理結果を格納した記憶領域のアドレスを登録し
てもよい。
【0077】図18は、描画処理手段60の処理の流れ
を示すフローチャートである。描画処理手段60は、描
画データ格納制御手段40に予め定められた範囲のデー
タが格納されると動作の開始を指示される。処理の開始
時には、処理済み描画位置保持手段61と描画データ保
持手段63の初期化が行われる(ステップS70)。初
期化動作が終ると、処理担当範囲割り当て手段50に対
して処理を担当する描画領域の範囲の問い合わせを行う
(ステップS71)。処理を担当する描画領域が伝えら
れると、これを担当描画範囲保持手段62に格納し、描
画処理位置を担当描画範囲保持手段62に格納された範
囲の片側の位置に設定する(ステップS72)。
【0078】まず、描画データ判定・破棄手段64が描
画データ保持手段63内に保持されている描画データを
検査して、描画位置に影響を与えなくなった描画データ
を選び、破棄する(ステップS73)。そして、処理済
み描画位置保持手段61に格納されている位置と描画処
理位置を組み合わせたデータとを使用して描画データ格
納制御手段40に描画データの要求を行う。例えば、こ
の段階の処理は、描画データ格納制御手段40が共有メ
モリ上の記憶領域として実現されていた場合には、各描
画処理手段60a〜60nが処理済み描画位置保持手段
61に格納されていた位置から、描画位置までに登録さ
れている描画データを読み込むという処理になる(ステ
ップS74)。
【0079】この際、描画位置に影響を与えない描画デ
ータは読み込まれない、あるいは読み込んでから破棄さ
れる。そして、担当する描画領域の処理が終了かどうか
を判断し(ステップS76)、終了でなければ描画位置
を更新し(ステップS77)、そうでなければ終了す
る。
【0080】また、描画機構65により描画データ保持
手段63内に保持されている描画データから、描画処理
バッファ66を使用して処理が行われ、処理結果データ
が作成される(ステップS75)。この段階での描画機
構65としての機能を発揮するものは、さまざまのもの
が提案されているので、それらの内、出力結果データの
種類に応じたものを用いてもよい。ここでは、描画処理
バッファ66をラインバッファとして使用して、走査線
単位で描画データを優先順位の低い順に重ね塗りを行っ
て走査線毎のラスタデータを作成していくとする。描画
位置が決まると、描画処理バッファ66内のラインバッ
ファ領域の初期化を行う。そして、描画データ保持手段
63内のデータを優先順位の低い方から取り出し、これ
に対して決定された描画位置に対応する走査線方向の色
塗情報を表現するランレングスデータを生成して、ライ
ンバッファの対応する場所に色データを格納する。これ
を、描画データ保持手段63内に格納されている描画デ
ータ分繰り返して処理する。
【0081】描画位置の処理が終ると、描画処理手段6
0は描画処理バッファ66内の処理結果を処理結果格納
手段70に転送する。描画処理手段60が共有記憶装置
を有する並列計算機システム上に構築されている場合に
は、描画位置の更新時に描画処理バッファ66を共有メ
モリ上の領域として確保して描画機構65を動作させ
る。そして、処理結果の格納は、処理結果格納制御手段
70内の描画位置を示すテーブルの描画位置に対応する
場所に、処理結果を格納した領域のアドレスの値を記録
するだけでよい。
【0082】描画機構65は、処理結果を処理結果格納
制御手段70に転送すると、処理済み描画位置保持手段
61に処理の終った描画位置を記録した後、描画位置を
進める。描画位置が担当している描画領域内であれば、
描画データ保持手段63内のデータの整理から繰り返し
て同様の処理を行う。
【0083】描画処理手段の処理の過程において、例外
的な動作をする場合は、処理担当範囲割り当て手段50
により描画領域内に担当すべき未処理領域がないことを
告げられた場合である。このとき、描画処理手段60は
処理を終了して停止する。
【0084】次に、具体的な描画サンプルを用いて、本
発明である描画処理装置の動作を説明する。図19は、
入力描画記述データと、その入力描画記述データが表す
描画サンプルの概念図を示している。以降の説明では、
この入力描画記述データを入力した時の描画処理を例と
して説明を行う。描画サンプル11は、3つの楕円と2
つの三角形からなる。そして、入力描画記述データ12
は、楕円の記述データovalと三角形の記述データt
riangleと負荷推定補正値FukaRとからな
る。例えば、triangle(184,128,21
6,192,184,192,15)は、(X1,Y
1)=(184,128)、(X2,Y2)=(21
6,192)、(X3,Y3)=(184,192)で
あり、ハッチングパターンが15であることを示してい
る。また、FukaR(2,184,200)は、Y軸
の座標位置184〜200間で負荷が2倍大きいことを
示している。その他も同様なので説明は省略する。
【0085】図20は、図19に示した入力描画記述デ
ータから、描画データ生成手段20により生成される描
画データの概念図を示したものである。ここでの例で
は、描画記述中のそれぞれの描画オブジェクトは、台形
による描画領域を表現する形式に分割され、描画データ
D1〜D11のフォーマットに変換され、描画データ格
納制御手段40に送信される。
【0086】図21は、単位描画領域の例を示した概念
図である。描画領域20cを走査線単位の単位描画領域
R1〜R16に分割する。描画データD1〜D11は、
描画データ生成手段20により生成されると、描画デー
タ格納制御手段40に転送される。描画データ格納制御
手段40に転送されると、描画データD1〜D11は、
図12で説明した処理を受けて描画データ格納制御手段
40内に格納される。
【0087】図22は、描画データD1〜D11が描画
データ格納制御手段40内に格納された状態の一例を示
している。図10で説明した描画データ存在範囲集計手
段43内には、進入テーブル43aと退出テーブル43
bがあり、進入テーブル43aには、各単位描画領域に
おいて、その位置にY座標値の最小値(上側の座標)を
持つ描画データがいくつあるかを集計しており、退出テ
ーブル43bには、各単位描画領域において、その位置
にY座標値の最大値(下側の座標)を持つ描画データが
いくつあるかを集計している。
【0088】図10で説明した描画データ登録手段46
はここでは、単位描画領域ごとにエントリを持つテーブ
ル46aから構成されており、各描画データD1〜D1
1はそれぞれの最小のY座標値に対応するエントリの位
置と関係づけられて格納されている。
【0089】そして、図10で説明した負荷推定補正値
登録手段44もまた、単位描画領域ごとに数値を登録で
きるテーブルで構成されている。この例では、ほぼ中央
の領域に対応する数値が2となり、他の数値はみな1と
なっている。これは、数値が2となっている領域では描
画要素の重なり具合や描画要素自体の複雑さなどの理由
により、描画要素の数などから単純に推測した負荷の値
の2倍程度の負荷量となることを入力データ中のヒント
情報から抽出したものである。
【0090】以下の説明では、描画処理を3つの描画処
理手段60a、60b、60cで行うものとして説明す
る。描画データ格納制御手段40に描画データが格納さ
れると、描画処理手段に対して起動命令が発行される。
描画処理手段60a〜60cはほぼ同時に起動するが、
処理担当範囲割り当て手段50へのアクセスが排他的に
制御されているため、この段階で順序づけられる。
【0091】ここでは、最初の処理担当範囲割り当て手
段50へのアクセスが描画処理手段60a、描画処理手
段60b、描画処理手段60cの順で許可されたものと
する。
【0092】図23は、描画処理手段60aが最初に処
理担当範囲割り当て手段50に対して、担当描画領域を
要求した時の処理を示す概念図である。描画処理手段6
0aから問い合わせがあると処理担当範囲割り当て手段
50は、最初の単位描画領域R1から順に負荷の推定値
を算出しながら、分配描画領域を広げていく。
【0093】ここでは、領域を分割する基準値の例を8
としておく。単位描画領域R1においては、まず描画デ
ータ格納制御手段40に問い合わせを行い、単位描画領
域R1から始まる描画データが2つあり(描画データD
1、D10)、終るデータが0個である。よって、次の
単位描画領域に受け渡す描画データの数は、0(前の領
域からつながっている描画データの数)+2(進入テー
ブル43aの値)−0(退出テーブル43bの値)=2
である。また、負荷の推定を補正するためのデータが1
(補正情報特になし)というデータを負荷推定補正値登
録手段44から得る。これから、単位描画領域R1にお
ける負荷の推定値は、(0(直前の単位描画領域から受
け渡された描画データの数)+2(描画データ数))×
1(負荷推定の補正値)=2となる。
【0094】単位描画領域R2においては、描画データ
格納制御手段40に問い合わせの結果、単位描画領域R
2から始まる描画データが0個、終るデータが0個であ
り、負荷の推定を補正するためのデータが1(補正情報
特になし)であるという情報が得られる。すなわち、単
位描画領域R2においては描画データの個数は単位描画
領域R1と同じ2個であり、負荷の推定値は2(描画デ
ータ数)×1(負荷推定の補正値)=2となる。
【0095】単位描画領域R3においては、描画データ
格納制御手段40に問い合わせの結果、単位描画領域R
3から始まる描画データが0個、終るデータが1個であ
り、負荷の推定を補正するためのデータが1(補正情報
特になし)であるという情報が得られる。すなわち、単
位描画領域R3においては描画データの個数は単位描画
領域R2と同じ2個であり、負荷の推定値は2(描画デ
ータ数)×1(負荷推定の補正値)=2となる。ここ
で、単位描画領域R3で終る描画データが1つあるた
め、次の単位描画領域R4に渡される描画データは2−
1で1になる。単位描画領域R3の段階までは、分配描
画領域の負荷の推定値は2+2+2で6にしかならなら
ないため、さらに単位描画領域R4に分配描画領域を広
げる。
【0096】単位描画領域R4においては、描画データ
格納制御手段40に問い合わせの結果、単位描画領域R
4から始まる描画データが1個、終るデータが0個であ
り、負荷の推定を補正するためのデータが1(補正情報
特になし)である。すなわち、描画データは単位描画領
域R3から引き継いだ描画データが1個、新しく入って
来た描画データが1個で合計2個である。負荷の推定値
は2(描画データ数)×1(負荷推定の補正値)=2と
なり、ここまでの分配描画領域の負荷の推定値は8とな
る。
【0097】処理担当範囲割り当て手段50は、この段
階で描画処理手段60aに対して、処理の担当範囲を単
位描画領域R1〜単位描画領域R4に割り当てて、次の
描画処理手段の要求の処理に移る。この時、図15で説
明した未処理位置保持手段54は単位描画領域R5にセ
ットされると共に、図15で説明した負荷推定基データ
保持手段56には、単位描画領域R5に受け渡される描
画データの個数2がセットされる。
【0098】描画処理手段60aは、処理の担当範囲を
受け取ると、描画データ格納制御手段40から描画デー
タを読み込み、順に処理する。ここで読み込まれて描画
処理の対象となる描画データは単位描画領域R1から単
位描画領域R4の間にY方向の最小値(上側の座標値)
を持ち、単位描画領域R1よりも上側にY方向の最大値
(下側の座標値を持たない)D1,D2,D3である。
描画処理手段60aは、これらの描画データを処理して
単位描画領域R1から単位描画領域R4に対応する処理
結果データを作成して処理結果格納制御手段70に登録
する。
【0099】そして、描画処理手段60aは再度、処理
担当範囲割り当て手段50に処理担当範囲の割り当て要
求を行って処理を続けることになる。図24は、描画処
理手段60bが描画処理手段60aの次に処理担当範囲
割り当て手段50に対して、担当描画領域を要求した時
の処理を示す概念図である。
【0100】描画処理手段60bから問い合わせがある
と処理担当範囲割り当て手段50は、図15で説明した
未処理位置保持手段54に保持されている単位描画領域
R5から順に負荷の推定値を算出しながら、分配描画領
域を広げていく。
【0101】単位描画領域R5においては、まず描画デ
ータ格納制御手段40に問い合わせを行い、単位描画領
域R5から始まる描画データが1個あり、終るデータが
0個であり、負荷の推定を補正するためのデータが1
(補正情報特になし)というデータを得る。これから、
単位描画領域R5の描画データの個数は図15で説明し
た負荷推定基データ保持手段56に保持されていた値2
と単位描画領域R5から始まる描画データの数1とを足
した3となる。
【0102】そして、負荷の推定値は3(描画データ
数)×1(負荷推定の補正値)=3となる。以下同様の
処理を行い、描画処理手段60bには、単位描画領域R
5、単位描画領域R6、単位描画領域R7が割り当てら
れる。このとき、未処理位置保持手段54は、単位描画
領域R8、負荷推定基データ保持手段56には数値1が
格納される。
【0103】描画処理手段60bは、処理の担当範囲を
受け取ると、描画データ格納制御手段40から描画デー
タを読み込み、順に処理する。描画処理手段60bは、
図17で説明した処理済み描画位置保持手段61が初期
化されたままであるため、単位描画領域R5からではな
く、単位描画領域R1から描画データを要求し、単位描
画領域R7までの間にY方向の最小値(上側の座標値)
を持ち、単位描画領域R5よりも上側にY方向の最大値
(下側の座標値)を持たない描画データとしてD2、D
10、D6を読み込んで処理の対象とする。
【0104】描画処理手段60bは、これらの描画デー
タを処理して単位描画領域R5から単位描画領域R7に
対応する処理結果データを作成して処理結果格納制御手
段70に登録する。そして、描画処理手段60bは再
度、処理担当範囲割り当て手段50に処理担当範囲の割
り当て要求を行って処理を続けることになる。
【0105】図25は、描画処理手段60cが描画処理
手段60bの次に処理担当範囲割り当て手段50に対し
て、担当描画領域を要求した時の処理を示す概念図であ
る。描画処理手段60cから問い合わせがあると処理担
当範囲割り当て手段50は、図15で説明した未処理位
置保持手段54に保持されている単位描画領域R8から
同様の処理を行うが、単位描画領域R8の領域において
は描画要素の数を同様に算出すると4となり、負荷推定
補正値の値が2になっているため、この単位描画領域R
8だけで基準として設定している値8に達してしまう。
このため、描画処理手段60cに対して、単位描画領域
R8だけを担当範囲として設定する。
【0106】描画処理手段60cは、処理の担当範囲を
受け取ると、描画データ格納制御手段40から描画デー
タを読み込み、順に処理する。描画処理手段60cは、
図17で説明した処理済み描画位置保持手段61が初期
化されたままであるため、単位描画領域R8からではな
く、単位描画領域R1から描画データを要求し、単位描
画領域R8までの間にY方向の最小値(上側の座標値)
を持ち、単位描画領域R8よりも上側にY方向の最大値
(下側の座標値)を持たない描画データとしてD10、
D3、D9、D7を読み込んで処理の対象とする。描画
処理手段60cは、これらの描画データを処理して単位
描画領域R8に対応する処理結果データを作成して処理
結果格納制御手段70に登録する。
【0107】図26は、描画処理手段60aが最初の処
理が終わって再度、処理担当範囲割り当て手段50に対
して、担当描画領域を要求した時の処理を示す概念図で
ある。 描画処理手段60aから問い合わせがあると処
理担当範囲割り当て手段50は、図15で説明した未処
理位置保持手段54に保持されている単位描画領域R9
から同様の処理を行うが、単位描画領域R9の領域にお
いては単位描画領域R8の領域と同様に、描画要素の数
を同様に算出すると4、負荷推定補正値の値が2になっ
ているため、この単位描画領域R9だけで基準として設
定している値8に達してしまう。このため、描画処理手
段60aに対して、単位描画領域R9だけを担当範囲と
して設定する。
【0108】描画処理手段60aは、処理の担当範囲を
受け取ると、描画データ格納制御手段40から描画デー
タを読み込み、順に処理する。描画処理手段60aは、
図17で説明した処理済み描画位置保持手段61が以前
の処理により単位描画領域R4に設定されているため、
単位描画領域R9からではなく、単位描画領域R4から
描画データを要求し、単位描画領域R9までの間にY方
向の最小値(上側の座標値)を持ち、単位描画領域R8
よりも上側にY方向の最大値(下側の座標値)を持たな
い描画データとしてD3、D9、D7、D11を読み込
んで処理の対象とする。
【0109】描画処理手段60aは、これらの描画デー
タを処理して単位描画領域R9に対応する処理結果デー
タを作成して処理結果格納制御手段70に登録する。図
27は、描画処理手段60bが最初の処理が終って再
度、処理担当範囲割り当て手段50に対して、担当描画
領域を要求した時の処理を示す概念図である。
【0110】描画処理手段60bから問い合わせがある
と処理担当範囲割り当て手段50は、図15で説明した
未処理位置保持手段54に保持されている単位描画領域
R10から同様の処理を行った結果、単位描画領域R1
0から単位描画領域R12を担当範囲として描画処理手
段60bを設定する。
【0111】描画処理手段60bは、処理の担当範囲を
受け取ると、描画データ格納制御手段40から描画デー
タを読み込み、順に処理する。描画処理手段60bは、
図17で説明した処理済み描画位置保持手段61が以前
の処理により単位描画領域R7に設定されているため、
単位描画領域R8から描画データを要求し、単位描画領
域R12までの間にY方向の最小値(上側の座標値)を
持ち、単位描画領域R10よりも上側にY方向の最大値
(下側の座標値)を持たない、描画データとしてD8、
D4、D11を読み込んで処理の対象とする。
【0112】描画処理手段60bは、これらの描画デー
タを処理して単位描画領域R10から単位描画領域R1
2に対応する処理結果データを作成して処理結果格納制
御手段70に登録する。
【0113】図28は、並列描画処理のタイムチャート
の概略を示す。この例は、負荷推定補正値が十分な精度
を持っていない場合を示している。負荷の推定値で重み
づけを行った単位描画領域R7、単位描画領域R8は、
重みづけを行わなかった場合に単位描画領域R7、単位
描画領域R8がまとめて一つの描画処理手段に割り当て
られるところをそれぞれ別の描画処理手段に割り当てる
ことができたという点で効果を発揮しているが、単位描
画領域R7、単位描画領域R8の処理は予想外に重く、
仮に次に設定されるであろう分配描画領域を順番に描画
処理手段60aに割り当てると描画処理手段60bの処
理能力を余らせたまま、描画処理手段60cの処理の終
了待ちという状態が生じてしまう。
【0114】しかし、本実施の形態においては、処理の
終った描画処理手段がそれぞれ処理担当範囲割り当て手
段50に対して担当範囲の割り当てを要求するため、次
に担当範囲を要求する描画処理手段は自動的に描画処理
手段60bとなる。これにより、静的に割り当てる場合
よりもより効率的に描画処理手段の並列描画処理を実現
することが可能となる。
【0115】図29は、処理の結果として処理結果格納
制御手段70に格納される処理結果データ70aの概念
図を示す。本実施の形態において、担当描画処理領域を
最初から最小の描画処理範囲ごとに割りふることも可能
ではあるが、この場合、アクセスを排他制御している処
理担当範囲割り当て手段50へのアクセス頻度が高まっ
てしまうことにより、処理担当範囲割り当て手段50へ
のアクセスの競合が頻繁におこり、かえって処理効率が
落ちてしまうという結果となる。
【0116】このため、処理担当範囲割り当て手段50
へのアクセス回数を適度に抑えるとともに、適度な粒度
で描画領域を分割するために負荷の推定手段が必要であ
り、この負荷の推定をより精度を上げるために負荷推定
補正値を利用している。逆に、負荷の推定を完全なもの
にすることは非常に難しいため、この誤差や実行時の揺
れを吸収するために動的な割り当てが効果を発揮する。
【0117】上記の説明では、処理担当範囲割り当て手
段50が分配描画領域の大きさを決定する際に使用して
いる基準値は固定としたが実行時に可変であってもよ
い。また、処理の後半において、何らかの原因でどれか
の描画処理手段が遅くなってしまった場合などを救済す
るためには、描画領域の処理の後半ほどこの基準値の大
きさを小さくして、分配描画領域の大きさを小さくして
おいてもよい。
【0118】また、並列動作の効果を高めるために上記
実施の形態においては、負荷の推定を基準にして各描画
処理手段に対して割り当てる描画領域の範囲を決定した
が、予め定めた大きさの描画領域を各描画処理手段に対
して要求順に与え、そして、割り当てる描画領域の大き
さを処理の進み具合で変化させてもよい。例えば、処理
の後半ほど小さくする、なども本実施の形態では容易に
実現できる。ただし、この場合、描画データ格納制御手
段40と処理担当範囲割り当て手段50との間の通信路
は必ずしも必要ではない。
【0119】以上説明したように、本発明の描画処理装
置は、描画処理の負荷を処理実行時に均一に分割して並
列描画処理を行う構成とした。これにより、描画対象と
なるページイメージに部分的な偏りがあった場合にも、
描画処理の高速化を可能とする。さらに、負荷が軽い領
域での資源へのアクセス競合によるオーバーヘッドも削
減することが可能になる。
【0120】また、実行時に他のプロセスによる影響な
どにより特定の部分処理を担当している処理手段の処理
が一時的に遅れた場合にも描画処理の高速化を可能とす
る。
【0121】
【発明の効果】以上説明したように、本発明の描画処理
装置は、描画データの負荷の重さが均一になるように描
画処理範囲を決定し各描画処理手段に割り当てることに
したので、高速な並列描画処理を行うことが可能にな
る。
【図面の簡単な説明】
【図1】本発明の描画処理装置の原理図である。
【図2】描画処理装置が適用されるシステムの概念図で
ある。
【図3】描画処理装置の全体処理の流れを示すフローチ
ャートである。
【図4】描画データ生成手段の処理の流れを示すフロー
チャートである。
【図5】描画データ生成手段で処理される描画データの
データ構造の一例である。
【図6】負荷推定補正値算出手段の構成図である。
【図7】重なり走査処理補助線上の矩形データ間の共通
区間を示す図である。
【図8】一方向の区間を持つデータを示す概念図であ
る。
【図9】一方向の区間でデータを管理するツリー構造の
例を示す図である。
【図10】描画データ格納制御手段の構成を示す図であ
る。
【図11】描画データ格納制御手段の初期化の処理の流
れを示すフローチャートである。
【図12】描画データ格納制御手段が描画データ生成手
段から描画データを受信して格納する際の処理の流れを
示すフローチャートである。
【図13】描画データ格納制御手段から、描画処理手段
に描画データを送出する際の処理の流れを示すフローチ
ャートである。
【図14】処理担当範囲割り当て手段に対する描画デー
タ格納制御手段の処理の流れを示すフローチャートであ
る。
【図15】処理担当範囲割り当て手段の構成を示す図で
ある。
【図16】処理担当範囲割り当て手段の処理の流れを示
すフローチャートである。
【図17】描画処理手段の構成を示す図である。
【図18】描画処理手段の処理の流れを示すフローチャ
ートである。
【図19】入力描画記述データと描画サンプルの概念図
である。
【図20】描画データの概念図である。
【図21】単位描画領域の例を示した概念図である。
【図22】描画データD1〜D11が描画データ格納制
御手段内に格納された状態の一例を示す図である。
【図23】描画処理手段60aが最初に処理担当範囲割
り当て手段に対して担当描画領域を要求した時の処理を
示す概念図である。
【図24】描画処理手段60bが描画処理手段60aの
次に処理担当範囲割り当て手段に対して、担当描画領域
を要求した時の処理を示す概念図である。
【図25】描画処理手段60cが描画処理手段60bの
次に処理担当範囲割り当て手段に対して、担当描画領域
を要求した時の処理を示す概念図である。
【図26】描画処理手段60aが最初の処理が終わって
再度、処理担当範囲割り当て手段に対して、担当描画領
域を要求した時の処理を示す概念図である。
【図27】描画処理手段60bが最初の処理が終わって
再度、処理担当範囲割り当て手段に対して、担当描画領
域を要求した時の処理を示す概念図である。
【図28】並列描画処理のタイムチャートの概略を示
す。
【図29】処理の結果として処理結果格納制御手段に格
納される処理結果データの概念図である。
【図30】描画領域を均等に分割して並列描画処理を行
う場合の図である。
【図31】描画処理部の描画処理動作タイミングを示す
図である。
【符号の説明】
10 ページ記述言語 20 描画データ生成手段 30 負荷推定補正値算出手段 40 描画データ格納制御手段 50 処理担当範囲割り当て手段 60a〜60n 描画処理手段 70 処理結果格納制御手段 80 出力装置

Claims (7)

    【特許請求の範囲】
  1. 【請求項1】 ページ記述言語を入力として描画処理を
    行う描画処理装置において、 前記ページ記述言語を変換してイメージを描画するため
    の描画データを生成する描画データ生成手段と、 単位領域内の前記描画データの負荷を推定して負荷推定
    補正値を算出する負荷推定補正値算出手段と、 前記描画データと前記負荷推定補正値との格納及び送信
    の制御を行う描画データ格納制御手段と、 前記描画データ格納制御手段から前記描画データを読み
    だして並列描画処理を行う複数の描画処理手段と、 前記負荷推定補正値から前記負荷の重さが均一になるよ
    うに描画処理範囲を決定して前記描画処理手段に割り当
    てる処理担当範囲割り当て手段と、 前記描画処理手段で処理された結果を格納して出力装置
    に送信する処理結果格納制御手段と、 を有することを特徴とする描画処理装置。
  2. 【請求項2】 前記描画データ格納制御手段は、前記描
    画データの格納時に描画データの存在範囲を抽出する描
    画データ存在範囲抽出手段と、抽出した存在範囲を描画
    領域上での位置と対応づけて集計する描画データ存在範
    囲集計手段と、前記負荷推定補正値を描画領域上での位
    置と関係づけて登録する負荷推定補正値登録手段と、を
    含むことを特徴とする請求項1記載の描画処理装置。
  3. 【請求項3】 前記処理担当範囲割り当て手段は、予め
    定められた大きさの領域に描画範囲を区切って、描画処
    理の実行時に動的に前記描画処理範囲を割り当てること
    を特徴とする請求項1記載の描画処理装置。
  4. 【請求項4】 前記処理担当範囲割り当て手段は、描画
    処理が進むにつれて割り当てる描画範囲を小さくするこ
    とを特徴とする請求項1記載の描画処理装置。
  5. 【請求項5】 前記処理担当範囲割り当て手段は、描画
    処理が進むにつれて前記描画処理手段に割り当てる描画
    範囲を決定するために使用している負荷の基準値を変化
    させることを特徴とする請求項1記載の描画処理装置。
  6. 【請求項6】 前記描画データ格納制御手段は、複数の
    前記描画処理手段間の共有メモリ上に構成されているこ
    とを特徴とする請求項1記載の描画処理装置。
  7. 【請求項7】 前記処理結果格納制御手段は、複数の前
    記描画処理手段間の共有メモリ上に構成されていること
    を特徴とする請求項1記載の描画処理装置。
JP21125896A 1996-08-09 1996-08-09 描画処理装置 Expired - Fee Related JP3728820B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP21125896A JP3728820B2 (ja) 1996-08-09 1996-08-09 描画処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP21125896A JP3728820B2 (ja) 1996-08-09 1996-08-09 描画処理装置

Publications (2)

Publication Number Publication Date
JPH1052950A true JPH1052950A (ja) 1998-02-24
JP3728820B2 JP3728820B2 (ja) 2005-12-21

Family

ID=16602940

Family Applications (1)

Application Number Title Priority Date Filing Date
JP21125896A Expired - Fee Related JP3728820B2 (ja) 1996-08-09 1996-08-09 描画処理装置

Country Status (1)

Country Link
JP (1) JP3728820B2 (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010120196A (ja) * 2008-11-17 2010-06-03 Canon Inc 画像処理方法及び画像処理装置ならびに該画像処理方法を実行するためのプログラム
JP2012200956A (ja) * 2011-03-24 2012-10-22 Fuji Xerox Co Ltd 画像処理システムおよび画像処理プログラム
JP2014228888A (ja) * 2013-05-17 2014-12-08 株式会社フィックスターズ 図形情報作成装置、領域分割装置、図形情報作成方法、領域分割方法、およびプログラム
JP2015231141A (ja) * 2014-06-05 2015-12-21 富士ゼロックス株式会社 画像処理装置及び画像処理プログラム
JP2016007759A (ja) * 2014-06-24 2016-01-18 富士ゼロックス株式会社 画像処理装置及びプログラム

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010120196A (ja) * 2008-11-17 2010-06-03 Canon Inc 画像処理方法及び画像処理装置ならびに該画像処理方法を実行するためのプログラム
US8379262B2 (en) 2008-11-17 2013-02-19 Canon Kabushiki Kaisha Method, apparatus, and program for generating bitmap data
JP2012200956A (ja) * 2011-03-24 2012-10-22 Fuji Xerox Co Ltd 画像処理システムおよび画像処理プログラム
JP2014228888A (ja) * 2013-05-17 2014-12-08 株式会社フィックスターズ 図形情報作成装置、領域分割装置、図形情報作成方法、領域分割方法、およびプログラム
JP2015231141A (ja) * 2014-06-05 2015-12-21 富士ゼロックス株式会社 画像処理装置及び画像処理プログラム
CN105282394A (zh) * 2014-06-05 2016-01-27 富士施乐株式会社 图像处理装置和图像处理方法
JP2016007759A (ja) * 2014-06-24 2016-01-18 富士ゼロックス株式会社 画像処理装置及びプログラム

Also Published As

Publication number Publication date
JP3728820B2 (ja) 2005-12-21

Similar Documents

Publication Publication Date Title
US6067097A (en) Drawing processing apparatus
JP3179560B2 (ja) 印字オーバーランを防止するための方法及び装置
JP3728820B2 (ja) 描画処理装置
JP6007516B2 (ja) リソース配分システム、リソース配分方法、及びリソース配分プログラム
EP1947602B1 (en) Information processing device, graphic processor, control processor, and information processing method
JPH08272981A (ja) 画像処理装置
JP2000353237A (ja) マルチプロセッサ構成画像処理システム
JP2000132350A (ja) 描画処理装置
JP2000132349A (ja) 描画処理装置
US6064403A (en) Apparatus for and method of performing image-drawing processing
JP3707208B2 (ja) 描画処理装置
JPH0512228A (ja) 分散処理システム
JP2002063582A (ja) 画像形成装置及び画像形成方法
JP3787907B2 (ja) 電子印刷装置
US5668714A (en) Control system for multi-processor apparatus
CN113835852B (zh) 任务数据的调度方法及装置
JP2829553B2 (ja) 分散処理制御装置
JPH10333852A (ja) 描画処理装置
JP3467753B2 (ja) 画像処理システム、画像処理方法および画像処理モジュールを記録した媒体
JP4086448B2 (ja) 画像情報処理装置、画像情報処理方法、記憶媒体
JPH10305639A (ja) 印刷処理装置および印刷処理方法
JPH08279050A (ja) 描画装置および描画方法
JP2004102989A (ja) 画像処理システム、画像処理方法および画像処理モジュールを記録した媒体
JPH04301473A (ja) プリンタ制御装置
JP2710131B2 (ja) 文字処理装置及び方法

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040817

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20041015

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050621

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050822

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20050913

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20050926

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091014

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101014

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101014

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111014

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121014

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121014

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131014

Year of fee payment: 8

LAPS Cancellation because of no payment of annual fees