JPH04117582A - 図形描画装置及び図形描画方法 - Google Patents
図形描画装置及び図形描画方法Info
- Publication number
- JPH04117582A JPH04117582A JP21075890A JP21075890A JPH04117582A JP H04117582 A JPH04117582 A JP H04117582A JP 21075890 A JP21075890 A JP 21075890A JP 21075890 A JP21075890 A JP 21075890A JP H04117582 A JPH04117582 A JP H04117582A
- Authority
- JP
- Japan
- Prior art keywords
- address
- memory
- bits
- 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
Links
Landscapes
- Image Input (AREA)
- Image Generation (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
(イ)産業上の利用分野
本発明は、ワードプロセッサ、ディスクトップパブリッ
シング(以下、DTPと略記する。)、またはワークス
テーションなどのコンピュータグラフィックにおける線
を描画する図形描画装置に関する。
シング(以下、DTPと略記する。)、またはワークス
テーションなどのコンピュータグラフィックにおける線
を描画する図形描画装置に関する。
(ロ)従来の技術
ワードプロセッサ、DTP等のシステムにおいて、各種
文字、記号等の高品位化が要求されている。しかしドツ
トフォントで大きさの異なる文字を持つことは、フォン
ト容量が膨大になり好ましくない。そのため、文字の輪
郭情報のみ記憶しておき、表示または印字する際には輪
郭情報に基き、図形描画装置にて輪郭を描き内側を塗り
つぶすいわゆるアウトラインフォントにより、文字を表
示または印字することが行なわれている。
文字、記号等の高品位化が要求されている。しかしドツ
トフォントで大きさの異なる文字を持つことは、フォン
ト容量が膨大になり好ましくない。そのため、文字の輪
郭情報のみ記憶しておき、表示または印字する際には輪
郭情報に基き、図形描画装置にて輪郭を描き内側を塗り
つぶすいわゆるアウトラインフォントにより、文字を表
示または印字することが行なわれている。
上述した文字の輪郭は、いくつかの直線に分けて描画さ
れる。そして、各直線はプレゼンハムアルゴリズム等を
用いた図形描画装置により演算され画素ビットが作成さ
れる。その画素ビットを画像メモリに書き込むことによ
り線の描画を行なっている。
れる。そして、各直線はプレゼンハムアルゴリズム等を
用いた図形描画装置により演算され画素ビットが作成さ
れる。その画素ビットを画像メモリに書き込むことによ
り線の描画を行なっている。
ところで、従来プロセッサ等を用いた図形描画装置と画
像メモリの動作速度を比較すると、図形描画装置の方が
格段に速度が速い。そのため、図形描画装置は、画像メ
モリの動作速度に合わせている。すなわち、画像メモリ
の読み出し及び書き込みのメモリサイクルに合わせて動
作スピードを調整し、各種の基本図形をメモリの1サイ
クルごとに1ドツトづつ描画し、そして、lサイクルづ
つ読み出したものを図形描画装置の処理するビット幅の
応じた数だけ全て論理和して、画像メモリの同一アドレ
スに書き込むことにより、線描画が行われている。
像メモリの動作速度を比較すると、図形描画装置の方が
格段に速度が速い。そのため、図形描画装置は、画像メ
モリの動作速度に合わせている。すなわち、画像メモリ
の読み出し及び書き込みのメモリサイクルに合わせて動
作スピードを調整し、各種の基本図形をメモリの1サイ
クルごとに1ドツトづつ描画し、そして、lサイクルづ
つ読み出したものを図形描画装置の処理するビット幅の
応じた数だけ全て論理和して、画像メモリの同一アドレ
スに書き込むことにより、線描画が行われている。
(ハ)発明が解決しようとする課題
上述した従来の図形描画装置においては、画像メモリの
読み出し及び書き込みのメモリサイクルと動作速度がネ
ックとなり、図形描画装置を構成するプロセッサの処理
速度が速くても、画像メモリのメモリサイクル並びに動
作速度に合わせて、1ドツトづつ描画しなければならず
、図形描画に時間がかかるという問題があった。しかも
速度の向上もメモリの速度に依存し、高速メモリが必要
などメモリに制約があり、高速化を図るためには、高価
なメモリの使用を余儀なくされている6本発明は上述し
た従来の問題点を解消すべくなされたものにして、メモ
リのサイクル並びに動作速度に無関係で短時間に描画処
理が可能な図形描画装置を提供することをその課題とす
る。
読み出し及び書き込みのメモリサイクルと動作速度がネ
ックとなり、図形描画装置を構成するプロセッサの処理
速度が速くても、画像メモリのメモリサイクル並びに動
作速度に合わせて、1ドツトづつ描画しなければならず
、図形描画に時間がかかるという問題があった。しかも
速度の向上もメモリの速度に依存し、高速メモリが必要
などメモリに制約があり、高速化を図るためには、高価
なメモリの使用を余儀なくされている6本発明は上述し
た従来の問題点を解消すべくなされたものにして、メモ
リのサイクル並びに動作速度に無関係で短時間に描画処
理が可能な図形描画装置を提供することをその課題とす
る。
(ニ)課題を解決するための手段
本発明は、線分の始点及び終点データを設定する手段、
始点及び終点データに従って線分を作成する線描画手段
、この線描画手段にて作成された画素データを記憶する
画像メモリ、画素データのX、Y方向の両アドレスの変
化を検出するアドレス検出手段、前記画素データのビッ
ト数を検出する手段、前記画像メモリのサイクルタイム
と線描画手段の処理サイクルタイムの比により一括して
処理するビット数を決定する処理ビット数決定手段、を
備え、前記アドレス検出手段により、一括処理可能な方
向以外のアドレス変化を検出するが、または前記画素デ
ータのビット数が処理ビット数決定手段のビット数と一
致した際、前記画素データを一括して画像メモリに書き
込むことを特徴とする。
始点及び終点データに従って線分を作成する線描画手段
、この線描画手段にて作成された画素データを記憶する
画像メモリ、画素データのX、Y方向の両アドレスの変
化を検出するアドレス検出手段、前記画素データのビッ
ト数を検出する手段、前記画像メモリのサイクルタイム
と線描画手段の処理サイクルタイムの比により一括して
処理するビット数を決定する処理ビット数決定手段、を
備え、前記アドレス検出手段により、一括処理可能な方
向以外のアドレス変化を検出するが、または前記画素デ
ータのビット数が処理ビット数決定手段のビット数と一
致した際、前記画素データを一括して画像メモリに書き
込むことを特徴とする。
(ホ)作用
本発明によれば、1回の画像メモリの読み出し及び書き
込みサイクルに対して、複数ドツトを同時に描画できる
。従って、描画速度を画像メモリのサイクルに無関係に
同時に描画するドツト数を増加させることにより向上さ
せることができる。
込みサイクルに対して、複数ドツトを同時に描画できる
。従って、描画速度を画像メモリのサイクルに無関係に
同時に描画するドツト数を増加させることにより向上さ
せることができる。
(へ)実施例
以下、本発明の実施例につき図面に従い説明する。
第1図は、本発明の一実施を示すブロック回路図である
。
。
第1図において、1は画像メモリであり、この画像メモ
リlは第3図に示すように、プロセッサの処理ビット数
に合わせてX方向の1アドレスに8ビツトづつ、Y方向
の1アドレスに対してはlビットづつメモリマツピング
されている。
リlは第3図に示すように、プロセッサの処理ビット数
に合わせてX方向の1アドレスに8ビツトづつ、Y方向
の1アドレスに対してはlビットづつメモリマツピング
されている。
30は画像メモリ1の書き込み及び読み出しアドレスを
設定するためのアドレス演算部であり、アドレスデータ
を格納するアドレスレジスタ2、アドレスを算出するた
めのパラメータが格納されるランダムアクセスメモリ(
以下、RAMと略記する。)からなるアドレスメモリ6
、およびこのアドレスメモリ6からのデータを加減算し
、アドレスを演算するアドレス演算回路5を備え、アド
レス演算回路5にてアドレス演算されたアドレスデータ
がアドレスレジスタ2及びアドレスメモリ6へ再格納さ
れる。
設定するためのアドレス演算部であり、アドレスデータ
を格納するアドレスレジスタ2、アドレスを算出するた
めのパラメータが格納されるランダムアクセスメモリ(
以下、RAMと略記する。)からなるアドレスメモリ6
、およびこのアドレスメモリ6からのデータを加減算し
、アドレスを演算するアドレス演算回路5を備え、アド
レス演算回路5にてアドレス演算されたアドレスデータ
がアドレスレジスタ2及びアドレスメモリ6へ再格納さ
れる。
3は画像メモリlの書き込み及び読み出しのデータを格
納するデータレジスタである。
納するデータレジスタである。
一方アドレス演算回路5からはデータバス4ヘアドレス
が変化する毎にキャリー出力を出力し、このキャリー出
力がバス4を介してコントローラ14に入力される。
が変化する毎にキャリー出力を出力し、このキャリー出
力がバス4を介してコントローラ14に入力される。
コントローラ14はこのキャリー出力により、画像メモ
リ1のアドレス変化を検出する。
リ1のアドレス変化を検出する。
アドレスメモリ6の出力はメモリの各アドレスにより画
像メモリlに描画すべきドツト配列が記憶されたリード
・オンリ・メモリ(以下、ROMと略記する。)7.8
に与えられる。このROM7は第9図(a)に示すよう
に、アドレス(SXL)に対する配列(MRML)が記
憶され、ROM8は第9図(b)に示すようにアドレス
(SXR)に対して配列(MRMR)が記憶されている
。
像メモリlに描画すべきドツト配列が記憶されたリード
・オンリ・メモリ(以下、ROMと略記する。)7.8
に与えられる。このROM7は第9図(a)に示すよう
に、アドレス(SXL)に対する配列(MRML)が記
憶され、ROM8は第9図(b)に示すようにアドレス
(SXR)に対して配列(MRMR)が記憶されている
。
この両ROM?、8からの出力はアンド回路9、マルチ
プレクサlO1及びオア回路12を介して画像データ処
理RAMIIに書き込まれ、このRAMIIから第4図
に示す描画すべき線のドツトデータがデータレジスタ3
に格納される。
プレクサlO1及びオア回路12を介して画像データ処
理RAMIIに書き込まれ、このRAMIIから第4図
に示す描画すべき線のドツトデータがデータレジスタ3
に格納される。
40は線描画処理回路で、プレゼンハムアルゴリズムに
基いて描画ドツトを演算するもので、レジスタ17.1
8.20およびマルチプレクサ16.19並びに加減算
器15より構成される。
基いて描画ドツトを演算するもので、レジスタ17.1
8.20およびマルチプレクサ16.19並びに加減算
器15より構成される。
22は線描画の演算に用いられる各パラメータが格納さ
れるパラメータRAMであり、外部よりデータバス4を
介して入力される始点及び終点デーJ (XS、YS)
(XE、YE)並びにコノ両データに基くブレゼンハム
アルゴリズムのパラメータが格納される。更に、このパ
ラメータRAM22には、コントローラ14にて算出さ
れた画像メモリlのメモリサイクルタイムと線描画回路
40の処理サイクルタイムの比により決定される一括し
て画像メモリ1に書き込まれる処理ビット数(CNTE
)が設定される。
れるパラメータRAMであり、外部よりデータバス4を
介して入力される始点及び終点デーJ (XS、YS)
(XE、YE)並びにコノ両データに基くブレゼンハム
アルゴリズムのパラメータが格納される。更に、このパ
ラメータRAM22には、コントローラ14にて算出さ
れた画像メモリlのメモリサイクルタイムと線描画回路
40の処理サイクルタイムの比により決定される一括し
て画像メモリ1に書き込まれる処理ビット数(CNTE
)が設定される。
13は線描画回路40の処理サイクル数をカウントする
カウンタ、21は加減算器であり、パラメータRAM2
2の各データを演算し、各パラメータをパラメータRA
M22に再格納する。
カウンタ、21は加減算器であり、パラメータRAM2
2の各データを演算し、各パラメータをパラメータRA
M22に再格納する。
23は第5図に示す線方向ベクトルのデータが格納され
るDIRレジスタである。
るDIRレジスタである。
次に、本発明の動作につき更に説明する。
本実施例の画像メモリ1は第3図に示すように、Xアド
レスlに対して8ビツトすなわち1バイトに割り付けら
れている。従って、例えば、第3図に示すように、X方
向の1アドレスに3ビツトづつドツトを描画する場合、
従来においては、X方向のNo、 lのアドレスとX方
向のNo、 5のアドレスを3回アドレス指定し、読み
出して論理和をとって再書き込みを行なう処理が行なわ
れている。これに対して、本発明においては、メモリサ
イクルと線描画処理回路40の処理サイクルとの比によ
って決定される処理ビット数だけ、一括して画像メモリ
lに書き込むものである。
レスlに対して8ビツトすなわち1バイトに割り付けら
れている。従って、例えば、第3図に示すように、X方
向の1アドレスに3ビツトづつドツトを描画する場合、
従来においては、X方向のNo、 lのアドレスとX方
向のNo、 5のアドレスを3回アドレス指定し、読み
出して論理和をとって再書き込みを行なう処理が行なわ
れている。これに対して、本発明においては、メモリサ
イクルと線描画処理回路40の処理サイクルとの比によ
って決定される処理ビット数だけ、一括して画像メモリ
lに書き込むものである。
本実施例においては、第7図に示すように1メモリサイ
クルに対して、線描画回路40の速度が3回の処理が可
能であるとし、1メモリサイクルに3回の演算を行なう
ものとする。
クルに対して、線描画回路40の速度が3回の処理が可
能であるとし、1メモリサイクルに3回の演算を行なう
ものとする。
而して、画像メモリlのアドレスのアクセス条件が第8
図に示すように、ハツチングを施したドツトが矢印方向
に変化した場合コントローラ14は画像メモリ1に線ド
ツトデータを書き込むように11J御する。すなわち、
アドレスが第8図(a)に示すように、X方向に変化す
る場合、また同図(b)に示すようにX方向のアドレス
が変化する場合、或は同図(C)に示すように、1つ前
のメモリアクセスからの線描画処理回路40の処理サイ
クルタイムの合計がメモリサイクルに等しくなった時、
本実施例においては3回の処理が終った時に、夫々画像
メモリlをアクセスして画像メモリlにデータレジスタ
3から線描画ドツトを書き込む。
図に示すように、ハツチングを施したドツトが矢印方向
に変化した場合コントローラ14は画像メモリ1に線ド
ツトデータを書き込むように11J御する。すなわち、
アドレスが第8図(a)に示すように、X方向に変化す
る場合、また同図(b)に示すようにX方向のアドレス
が変化する場合、或は同図(C)に示すように、1つ前
のメモリアクセスからの線描画処理回路40の処理サイ
クルタイムの合計がメモリサイクルに等しくなった時、
本実施例においては3回の処理が終った時に、夫々画像
メモリlをアクセスして画像メモリlにデータレジスタ
3から線描画ドツトを書き込む。
さて、上述した動作を第1図を参照して説明すると、先
ず線分の始点(XS、YS)及び終点データ(XE、Y
E)を外部よりデータバス4を介して、パラメータRA
M22の夫々の領域に格納するとともに、このデータに
基きブレゼンハムアルゴリズムの各パラメータが演算さ
れ、夫々パラメータRAM22の所定領域に格納される
。この一連の作業はコントローラ14の制御の下で実行
される。
ず線分の始点(XS、YS)及び終点データ(XE、Y
E)を外部よりデータバス4を介して、パラメータRA
M22の夫々の領域に格納するとともに、このデータに
基きブレゼンハムアルゴリズムの各パラメータが演算さ
れ、夫々パラメータRAM22の所定領域に格納される
。この一連の作業はコントローラ14の制御の下で実行
される。
更に、このパラメータRAM22には図形描画処理回路
40の処理サイクルタイムを1としたときのメモリサイ
クルタイムとの比が変数CNTEとして与えられる。本
実施例においては3が格納されている。
40の処理サイクルタイムを1としたときのメモリサイ
クルタイムとの比が変数CNTEとして与えられる。本
実施例においては3が格納されている。
このパラメータ22から各データがブレゼンハムアルゴ
リズムに基いて線を描画する線描画回路40の各レジス
タ17.18及び20に与えられる。このレジスタ17
.18.20にて後述するディジタル微分解析(DDA
)により線分の各描画ドツトが演算され、マルチプレク
サ16及び加減算器15を介してコントローラ14に与
えられる。コントローラ14はこの作成データをアドレ
ス演算部30に与える。
リズムに基いて線を描画する線描画回路40の各レジス
タ17.18及び20に与えられる。このレジスタ17
.18.20にて後述するディジタル微分解析(DDA
)により線分の各描画ドツトが演算され、マルチプレク
サ16及び加減算器15を介してコントローラ14に与
えられる。コントローラ14はこの作成データをアドレ
ス演算部30に与える。
アドレス演算部30においては、上述の作成データをア
ドレスメモリ6に入力し、このアドレスメモリ6に入力
されたデータと前回に入力されたデータとが比較され、
上述したアドレスの変化があるか否かコントローラ14
は判断する。
ドレスメモリ6に入力し、このアドレスメモリ6に入力
されたデータと前回に入力されたデータとが比較され、
上述したアドレスの変化があるか否かコントローラ14
は判断する。
またカウンタ13には描画処理回路40の処理サイクル
数がカウントされる。すなわち、描画処理回路40が処
理する毎にカウンタ13がカウントアツプされ、このカ
ウンタ13の値とパラメータRAM22のCNTEの値
が比較される。
数がカウントされる。すなわち、描画処理回路40が処
理する毎にカウンタ13がカウントアツプされ、このカ
ウンタ13の値とパラメータRAM22のCNTEの値
が比較される。
そして、描画処理回路40からの作成データが前述した
第8図に示すアクセス条件を満足すると、アドレス演算
部30にて作成された画像メモリ1のアドレスをアクセ
スするとともに、ROM7.8をアクセスしその両配列
パターンをアンド回路9でアンドした描画ドツトをデー
タレジスタ3を介して画像メモリ1に書き込むことによ
り、lメモリサイクル内に複数ドツトを一度に画像メモ
リlに書き込まれる。そして、第6図に示すように、画
像メモリl内に線が描画される。
第8図に示すアクセス条件を満足すると、アドレス演算
部30にて作成された画像メモリ1のアドレスをアクセ
スするとともに、ROM7.8をアクセスしその両配列
パターンをアンド回路9でアンドした描画ドツトをデー
タレジスタ3を介して画像メモリ1に書き込むことによ
り、lメモリサイクル内に複数ドツトを一度に画像メモ
リlに書き込まれる。そして、第6図に示すように、画
像メモリl内に線が描画される。
次に本実施例の動作につき第1O図のフローチャートに
従い更に説明する。
従い更に説明する。
動作を開始すると、ステップSlにおいて、各レジスタ
並びにパラメータRAM22を初期化し、更に、パラメ
ータRAM22のCNTEに一括して画像メモリlに描
画できるビット数を書き込み、ステップS2へ進む。
並びにパラメータRAM22を初期化し、更に、パラメ
ータRAM22のCNTEに一括して画像メモリlに描
画できるビット数を書き込み、ステップS2へ進む。
ステップS2において、線描画のために外部よりデータ
バス4を介して入力された始点(XS、YS)及び終点
(XE%YE)のデータをパラメータRAM22の所定
領域に格納する。
バス4を介して入力された始点(XS、YS)及び終点
(XE%YE)のデータをパラメータRAM22の所定
領域に格納する。
続いて、プレゼンハムアルゴリズムに基きX座標とY座
標の始点と終点間の距離を求める。すなわち、DX=X
E−XS、DY=YE−YS(7)演算が行なわれ、そ
の演算結果がパラメータRAM22の所定領域に格納さ
れる。そして、第5図に示す線ベクトルの方向を示すD
IRを二進数で標記したフラグの3ビツト目に相当する
フラグFLlを” 1″と仮定し、パラメータRAM2
2に格納しステップS4へ進む。
標の始点と終点間の距離を求める。すなわち、DX=X
E−XS、DY=YE−YS(7)演算が行なわれ、そ
の演算結果がパラメータRAM22の所定領域に格納さ
れる。そして、第5図に示す線ベクトルの方向を示すD
IRを二進数で標記したフラグの3ビツト目に相当する
フラグFLlを” 1″と仮定し、パラメータRAM2
2に格納しステップS4へ進む。
ステップS4において、DYが正か負か判断され、負の
場合にはステップS5に進み、DYに”−1′°をかけ
てその値をパラメータRAM22の所定領域に再格納し
、フラグFLIを0″に設定した後、ステップS6に進
む。
場合にはステップS5に進み、DYに”−1′°をかけ
てその値をパラメータRAM22の所定領域に再格納し
、フラグFLIを0″に設定した後、ステップS6に進
む。
ステップS4において、DYが正の場合はそのままステ
ップS6へ進む。
ップS6へ進む。
ステップS6において、DXが正か負か判断され、負の
場合にはステップS7に進み、DXに”−1″をかけて
その値をパラメータRAM22の所定領域に再格納し、
DIRを二進数で標記したフラグの2ビツト目に相当す
るフラグFL2を”1″に設定した後ステップS8へ進
む。
場合にはステップS7に進み、DXに”−1″をかけて
その値をパラメータRAM22の所定領域に再格納し、
DIRを二進数で標記したフラグの2ビツト目に相当す
るフラグFL2を”1″に設定した後ステップS8へ進
む。
ステップS6において、DXが正の場合はそのままステ
ップS8へ進む。
ップS8へ進む。
ステップS8において、X方向とY方向の傾きがどちら
が大きいか、すなわち、DX<DYを判断し、Y方向の
傾きが大きい(DX<DY)場合、ステップS9におい
て、DXとDYを入れ替え、DIRを二進数で標記した
フラグの1ビツト目に相当するフラグFL3を”ビに設
定した後、ステップS10へ進む。
が大きいか、すなわち、DX<DYを判断し、Y方向の
傾きが大きい(DX<DY)場合、ステップS9におい
て、DXとDYを入れ替え、DIRを二進数で標記した
フラグの1ビツト目に相当するフラグFL3を”ビに設
定した後、ステップS10へ進む。
またX方向の傾きが大きい、すなわちDXがDYより大
きい場合にはそのままステップSIOへ進む。このとき
FL3は初期設定のままの0″である。
きい場合にはそのままステップSIOへ進む。このとき
FL3は初期設定のままの0″である。
そして、ステップSIOにおいて、線方向ベクトルDI
Rを求めてその値をDIRレジスタ″?3へ格納し、更
にプレゼンハムアルゴリズムに基くパラメータのC0N
52を算出して、対応のレジスタ17に格納する。
Rを求めてその値をDIRレジスタ″?3へ格納し、更
にプレゼンハムアルゴリズムに基くパラメータのC0N
52を算出して、対応のレジスタ17に格納する。
更にステップSitにおいて、プレゼンハムアルゴリズ
ムのパラメータの誤差E及びC0N5Lを算出し、夫々
対応のレジスタ18.20に格納しステップ312へ進
む。
ムのパラメータの誤差E及びC0N5Lを算出し、夫々
対応のレジスタ18.20に格納しステップ312へ進
む。
ステップS12において、パラメータRAM22のX、
Y領域に夫々xS%YSを格納するとともに、絶対アド
レスSXを求めパラメータRAM22の所定領域に格納
し、ステップS13へ進む。
Y領域に夫々xS%YSを格納するとともに、絶対アド
レスSXを求めパラメータRAM22の所定領域に格納
し、ステップS13へ進む。
ステップ313において、線分カウンタC1をカウント
アツプし、そのカウント値をパラメータRAM22の所
定領域に格納する。
アツプし、そのカウント値をパラメータRAM22の所
定領域に格納する。
続いて、ステップS14において、線描画処理回路40
の処理サイクル数をカララントするカウウンタ13をカ
ウントアツプし、ステップS15へ進む。
の処理サイクル数をカララントするカウウンタ13をカ
ウントアツプし、ステップS15へ進む。
ステップS15においては、アドレスメモリ6の領域x
O及びYにパラメータRAM22のX及びYの値を格納
し、画像メモリlのアドレスを演算する。そして、アド
レスメモリ6のxOの下位ビットによりROM7がアク
セスされる。すなわち、この下位ビットが第9図(b)
のSXHに相当する。
O及びYにパラメータRAM22のX及びYの値を格納
し、画像メモリlのアドレスを演算する。そして、アド
レスメモリ6のxOの下位ビットによりROM7がアク
セスされる。すなわち、この下位ビットが第9図(b)
のSXHに相当する。
そして、ステップS16において、サブルーチンDDA
Iを呼び出す。サブルーチンDDAlは第11図(a)
に示すように、ディジタル微分解析(DDA)により、
線方向ベクトル(D I R)に対して、次描画のXY
アドレスを求め、このアドレスをアドレス演算部30に
逐次与え、アドレスメモリ6を書き換える。サブルーチ
ンDDA 1が終了すると、ステップS17へ進む。こ
のとき第8図(a)に示す条件が発生するときはパラメ
ータRAM22のフラグFLが”1′′に設定される。
Iを呼び出す。サブルーチンDDAlは第11図(a)
に示すように、ディジタル微分解析(DDA)により、
線方向ベクトル(D I R)に対して、次描画のXY
アドレスを求め、このアドレスをアドレス演算部30に
逐次与え、アドレスメモリ6を書き換える。サブルーチ
ンDDA 1が終了すると、ステップS17へ進む。こ
のとき第8図(a)に示す条件が発生するときはパラメ
ータRAM22のフラグFLが”1′′に設定される。
ステップS17においては、プレゼンハムアルゴリズム
に基いて、レジスタ20の値が”O″より大きいか否か
判断され、′0”より大きい場合はステップS18へ進
み、小さい場合にはステップS19に進む。
に基いて、レジスタ20の値が”O″より大きいか否か
判断され、′0”より大きい場合はステップS18へ進
み、小さい場合にはステップS19に進む。
EがO”より大きい場合には、ステップ818において
、サブルーチンDDA2を呼び出すとともに、レジスタ
2のEの値とレジスタ18の値を加算器15にて加算し
、レジスタ20に再格納する。サブルーチンDDA2は
第11図(b)に示すように、ディジタル微分解析によ
り、線方向ベクトル(D I R)に対して、次描画の
XYアドレスを求め、このアドレスをアドレス演算部3
0に逐次与え、アドレスメモリ6を書き換える。サブル
ーチンDDA2が終了すると、ステップS20へ進む、
このとき第8図(a)に示す条件が発生するときはパラ
メータRAM22のフラグPLが1″に設定される。
、サブルーチンDDA2を呼び出すとともに、レジスタ
2のEの値とレジスタ18の値を加算器15にて加算し
、レジスタ20に再格納する。サブルーチンDDA2は
第11図(b)に示すように、ディジタル微分解析によ
り、線方向ベクトル(D I R)に対して、次描画の
XYアドレスを求め、このアドレスをアドレス演算部3
0に逐次与え、アドレスメモリ6を書き換える。サブル
ーチンDDA2が終了すると、ステップS20へ進む、
このとき第8図(a)に示す条件が発生するときはパラ
メータRAM22のフラグPLが1″に設定される。
一方、ステップS19においては、プレゼンハムアルゴ
リズムに基いて、レジスタ20の値とレジスタ17の値
を加算器15により加算し、その値をレジスタ20に再
格納し、ステップS20に進む。
リズムに基いて、レジスタ20の値とレジスタ17の値
を加算器15により加算し、その値をレジスタ20に再
格納し、ステップS20に進む。
ステップS20において、新しく算出したXアドレスの
絶対アドレスを求めステップS21に進む。
絶対アドレスを求めステップS21に進む。
ステップS21において、カウンタ13の値CNTと1
を比較し、CNTが1と等しい、すなわちそのY座標の
Xアドレスの最初となるとステップS22に進む。
を比較し、CNTが1と等しい、すなわちそのY座標の
Xアドレスの最初となるとステップS22に進む。
ステップS22においては、アドレスメモリ6に格納さ
れたxOの下位ビットによりROM7がアクセスされる
。すなわち、この下位ビットが第9図(a)のSXLに
相当する。そして、ステップS23に進む。
れたxOの下位ビットによりROM7がアクセスされる
。すなわち、この下位ビットが第9図(a)のSXLに
相当する。そして、ステップS23に進む。
一方、ステップS21において、CNTとCNTEが等
しくない場合にはそのままステップS23に進む。
しくない場合にはそのままステップS23に進む。
ステップS23においては、第8図に示す条件を満足す
るか否か、すなわち、一括して画像メモリ1に描画ドツ
トを書き込むために画像メモリ1をアクセスするか否か
が判断される。そして、第8図に示すいずれかの条件を
満足するとステップS24に進み、いずれも満足しない
場合にはステップS26へ進む。
るか否か、すなわち、一括して画像メモリ1に描画ドツ
トを書き込むために画像メモリ1をアクセスするか否か
が判断される。そして、第8図に示すいずれかの条件を
満足するとステップS24に進み、いずれも満足しない
場合にはステップS26へ進む。
ステップS24において、画像メモリ1の物理アドレス
を求め、そして、xOの下位ビットによりROM8をア
クセスする。この下位ビットが第9図(b)のSXRに
相当する。更に、カウンタ13をクリアし、ステップS
25に進む。
を求め、そして、xOの下位ビットによりROM8をア
クセスする。この下位ビットが第9図(b)のSXRに
相当する。更に、カウンタ13をクリアし、ステップS
25に進む。
ステップS25において、画像メモリlに算出した描画
ドツトを一括して書き込む。すなわち、第4図に示すよ
うに、ROM?、8の出力がアンド回路9、オア回路1
2を介してデータ処理RAM1lに書き込まれていたデ
ータがデータレジスタ3から、アドレス演算部30でア
ドレス指定された領域に書き込まれる。例えば第3図お
よび第6図の例においてはXアドレス1.Yアドレス5
の領域に3ドツトが1メモリサイクルで一括して描画さ
れる。
ドツトを一括して書き込む。すなわち、第4図に示すよ
うに、ROM?、8の出力がアンド回路9、オア回路1
2を介してデータ処理RAM1lに書き込まれていたデ
ータがデータレジスタ3から、アドレス演算部30でア
ドレス指定された領域に書き込まれる。例えば第3図お
よび第6図の例においてはXアドレス1.Yアドレス5
の領域に3ドツトが1メモリサイクルで一括して描画さ
れる。
その後、ステップS26においては、線描画のカウンタ
値C1がDXと等しくなったか否か判断され、等しくな
っていない場合には線分が描画されていないので、ステ
ップS13に戻り前述の動作を繰り返す。また等しくな
ったときには線分の描画が終了したので、ステップS2
7へ進む。
値C1がDXと等しくなったか否か判断され、等しくな
っていない場合には線分が描画されていないので、ステ
ップS13に戻り前述の動作を繰り返す。また等しくな
ったときには線分の描画が終了したので、ステップS2
7へ進む。
そして、ステップS27において、終点の物理アドレス
を求め、ステップS28において、終点のドツトを画像
メモリ1に描画することにより動作を終了する。
を求め、ステップS28において、終点のドツトを画像
メモリ1に描画することにより動作を終了する。
第2図は本発明の第二の実施例を示すもので、第1図の
実施例と相違するところは、第1図のものにおいては、
ドツト配列を二つのROM7.8に記憶せしめ、その両
者の値をアンド回路10で論理積をとっているのに対し
て、第二の実施例のものにおいては、第9図(C)に示
すパターン配列を有する一個のROM7aを用いて、ア
ンド回路を省略したものであり、その他の構成は第1図
のものと同じである。
実施例と相違するところは、第1図のものにおいては、
ドツト配列を二つのROM7.8に記憶せしめ、その両
者の値をアンド回路10で論理積をとっているのに対し
て、第二の実施例のものにおいては、第9図(C)に示
すパターン配列を有する一個のROM7aを用いて、ア
ンド回路を省略したものであり、その他の構成は第1図
のものと同じである。
第12図は第2図に示した本発明の第二の実施例の動作
を示すフローチャートである。上述したように、第一の
実施例と第二の実施例とはドツト配列を記憶したROM
構成のみ相違しているので、このフローチャートにおい
てもその部分のみ相違する。すなわち、ステップ515
aとステップ824aのみ相違すると共に、第10図の
ステップ821.22が省略されている。この両者のス
テップにおいてもROMのアクセスが相違するだけであ
り、実質的には第10図のものと変りはない。
を示すフローチャートである。上述したように、第一の
実施例と第二の実施例とはドツト配列を記憶したROM
構成のみ相違しているので、このフローチャートにおい
てもその部分のみ相違する。すなわち、ステップ515
aとステップ824aのみ相違すると共に、第10図の
ステップ821.22が省略されている。この両者のス
テップにおいてもROMのアクセスが相違するだけであ
り、実質的には第10図のものと変りはない。
また、その他のステップは第10図と同じであり、ここ
では同じステップ番号を付し説明を省略する。
では同じステップ番号を付し説明を省略する。
(ト)発明の効果
上述したように、本発明によれば、1回の画像メモリの
読み出し及び書き込みサイクルに対して、複数ドツトを
同時に描画できる。従って、描画速度を画像メモリのサ
イクルに無関係に同時に描画するドツト数を増加させる
ことにより向上させることができる。
読み出し及び書き込みサイクルに対して、複数ドツトを
同時に描画できる。従って、描画速度を画像メモリのサ
イクルに無関係に同時に描画するドツト数を増加させる
ことにより向上させることができる。
第1図は本発明の第一の実施例を示すブロック回路図、
第2図は本発明の第二の実施例を示すブロック回路図で
ある。 第3図は本発明に用いられる画像メモリの格納領域を示
す模式図、第4図は画像メモリに書き込むドツトを示す
模式図である。 第5図は線方向ベクトルを示す説明図、第6図は本発明
により線描画を行なった状態を示す模式図、第7図はメ
モリサイクルと演算処理サイクルの関係を示すタイミン
グ図である。 第8図は本発明の画像メモリへの書き込み条件を示す模
式図。 第9図は本実施例のアドレスとドツト配列の関係を示す
図である。 第10図は本発明の第一の実施例の動作を説明−するフ
ローチャート、第11図はディジタル微分解析を示すフ
ローチャート、第12図は本発明の第二の実施例の動作
を説明するフローチャートである。 1・・・画像メモ1ハ 14・・・コントローラ。 22・・・パラメータ、30・・・アドレス演算部、4
0・・・線描画回路。 第2 図 第 図 第 図 第10図(b) A 第10図(C) 第11図(a) 第11図(b) 第12図(b) 第12図(C)
第2図は本発明の第二の実施例を示すブロック回路図で
ある。 第3図は本発明に用いられる画像メモリの格納領域を示
す模式図、第4図は画像メモリに書き込むドツトを示す
模式図である。 第5図は線方向ベクトルを示す説明図、第6図は本発明
により線描画を行なった状態を示す模式図、第7図はメ
モリサイクルと演算処理サイクルの関係を示すタイミン
グ図である。 第8図は本発明の画像メモリへの書き込み条件を示す模
式図。 第9図は本実施例のアドレスとドツト配列の関係を示す
図である。 第10図は本発明の第一の実施例の動作を説明−するフ
ローチャート、第11図はディジタル微分解析を示すフ
ローチャート、第12図は本発明の第二の実施例の動作
を説明するフローチャートである。 1・・・画像メモ1ハ 14・・・コントローラ。 22・・・パラメータ、30・・・アドレス演算部、4
0・・・線描画回路。 第2 図 第 図 第 図 第10図(b) A 第10図(C) 第11図(a) 第11図(b) 第12図(b) 第12図(C)
Claims (1)
- (1)線分の始点及び終点データを設定する手段、始点
及び終点データに従って線分を作成する線描画手段、こ
の線描画手段にて作成された画素データを記憶する画像
メモリ、画素データのX、Y方向の両アドレスの変化を
検出するアドレス検出手段、前記画素データのビット数
を検出する手段、前記画像メモリのサイクルタイムと線
描画手段の処理サイクルタイムの比により一括して処理
するビット数を決定する処理ビット数決定手段、とを備
え、 前記アドレス検出手段により、一括処理可能な方向以外
のアドレス変化を検出するか、または前記画素データの
ビット数が処理ビット数決定手段のビット数と一致した
際、前記画素データを一括して画像メモリに書き込むこ
とを特徴とする図形描画装置。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP13651590 | 1990-05-25 | ||
| JP2-136515 | 1990-05-25 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH04117582A true JPH04117582A (ja) | 1992-04-17 |
Family
ID=15176982
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP21075890A Pending JPH04117582A (ja) | 1990-05-25 | 1990-08-08 | 図形描画装置及び図形描画方法 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH04117582A (ja) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US10172340B2 (en) | 2015-06-23 | 2019-01-08 | Jean-Rene BERNARDINI | Portage system for fishing rods, spikes and accessories |
-
1990
- 1990-08-08 JP JP21075890A patent/JPH04117582A/ja active Pending
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US10172340B2 (en) | 2015-06-23 | 2019-01-08 | Jean-Rene BERNARDINI | Portage system for fishing rods, spikes and accessories |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP2541539B2 (ja) | 図形処理装置 | |
| EP0416421B1 (en) | A clipping processor | |
| US4998211A (en) | Method of and apparatus for generating a filled pattern defined by contour vectors | |
| US5867172A (en) | Thickened and thinned character generating device including elements for removing undesirably formed outline portions | |
| KR920003459B1 (ko) | 화상처리장치 | |
| US5269000A (en) | Curve generator | |
| US5020002A (en) | Method and apparatus for decomposing a quadrilateral figure for display and manipulation by a computer system | |
| JP2634851B2 (ja) | 画像処理装置 | |
| JPS60136793A (ja) | 画像データ処理装置及び方法 | |
| JPH04117582A (ja) | 図形描画装置及び図形描画方法 | |
| JP2770582B2 (ja) | 図形塗潰し装置 | |
| US5428719A (en) | Method and apparatus for generating high-quality pattern in accordance with an edge defining a character pattern | |
| EP0391401A2 (en) | Method and apparatus for generating high-quality pattern | |
| JP2980732B2 (ja) | アウトラインフォントの生成方法 | |
| JP2630843B2 (ja) | 直線描画方法及び装置 | |
| JP2985275B2 (ja) | アウトラインフォントの文字発生方式 | |
| JP3347042B2 (ja) | 画像処理装置 | |
| JP2606176B2 (ja) | 図形処理装置 | |
| JP2605609B2 (ja) | ドット表示処理装置 | |
| JPH0418686A (ja) | 画像処理方法 | |
| JP2835056B2 (ja) | 高品質文字パターン発生方式 | |
| JPS63304293A (ja) | 表示メモリ制御回路 | |
| JPH0766349B2 (ja) | シフタ回路 | |
| JPS6169096A (ja) | 図形処理装置 | |
| JPH09169150A (ja) | 展開回路 |