JPH04344989A - 画像処理装置 - Google Patents

画像処理装置

Info

Publication number
JPH04344989A
JPH04344989A JP14667991A JP14667991A JPH04344989A JP H04344989 A JPH04344989 A JP H04344989A JP 14667991 A JP14667991 A JP 14667991A JP 14667991 A JP14667991 A JP 14667991A JP H04344989 A JPH04344989 A JP H04344989A
Authority
JP
Japan
Prior art keywords
straight line
point
image processing
coordinate
memory
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
JP14667991A
Other languages
English (en)
Inventor
Masashi Yoshida
吉田 政志
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.)
Ricoh Co Ltd
Original Assignee
Ricoh 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 Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP14667991A priority Critical patent/JPH04344989A/ja
Publication of JPH04344989A publication Critical patent/JPH04344989A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Image Generation (AREA)

Abstract

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

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】この発明は、パーソナルコンピュ
ータやオフィスコンピュータ、ワークステーション、組
版システム(DTP)、グラフィック編集その他各種の
図形処理機能を備えた画像処理装置の改良に係り、特に
、始点座標と終点座標の情報を入力することにより直線
を描画する機能を備えた画像処理装置において、直線の
描画時に、演算回数とメモリのアクセス回数を減少する
と共に、メモリアクセスの際のアドレス制御を簡略化す
ることにより、高速の描画処理を可能にした画像処理装
置に関する。
【0002】
【従来の技術】従来から、図形を描画する機能、いわゆ
る図形処理機能を備えた画像処理装置は、公知であり、
また、直線の描画に際して、その始点座標と終点座標の
情報を入力することにより、指示された2点間に直線を
描画する描画方式も用いられている。
【0003】この指示された2点間に直線を描画する従
来の直線描画方式においては、一般に、DDA( Di
gital Differential Analiz
er )変換方式として、ブレセンハム( Brese
nham )アルゴリズムが用いられている。
【0004】図6は、従来のDDA変換方式による直線
描画機能を有する画像処理装置において、直線描画時の
動作を説明する図である。図において、x1,y1は始
点座標、xn,ynは終点座標、Δxはそのx軸方向の
絶対値、Δyはそのy軸方向の絶対値、ΔMajとΔM
inは軸方向の長さを示し、大きい方が主軸でΔMaj
、小さい方が副軸でΔMinとする。
【0005】この図6に示すように、従来のDDA変換
方式の直線描画方式では、始点座標(x1,y1)と、
終点座標(xn,yn)とが指定されると、最初に、座
標上の移動量を、次の式(1) と(2) によって演
算する。         Δx=|xn−x1|       
                       ……
 (1)        Δy=|yn−y1|   
                         
  …… (2)
【0006】次に、このx軸方向の絶
対値Δxと、y軸方向の絶対値Δyとを比較し、大きい
方を主軸、小さい方を副軸とする。この図6では、x軸
方向の絶対値Δxが大きい場合、すなわち、Δx≧Δy
のときを示しているので、         ΔMaj = Δx        
                         
   …… (3)        ΔMin = Δ
y                        
            …… (4)となり、x軸方
向が主軸、y軸方向が副軸となる。
【0007】逆に、Δy≧Δxであれば、      
  ΔMaj = Δy              
                      …… 
(5)        ΔMin = Δx     
                         
      …… (6)となり、y軸方向が主軸、x
軸方向が副軸となる。
【0008】ここで、実際の直線と、実際に補間される
画素との距離を副軸方向について測った場合の値を、誤
差値e1 とする。したがって、誤差値e1 は、  
      e1 = 2・ΔMin − ΔMaj 
                      …… 
(7)の式(7) が成立する。
【0009】次に、このようなDDA変換方式によって
直線を描画する機能を備えた従来の画像処理装置につい
て、説明する。
【0010】図7は、従来の画像処理装置について、そ
のDDA変換処理部における要部の一構成例を示す機能
ブロック図である。図において、1は第1のレジスタ、
2は第2のレジスタ、3は第1の減算器、4は第2の減
算器、5はマルチプレクサ、6は加算器、7はx,y座
標制御回路を示し、また、e1 は誤差値、C1 は第
2の減算器4の出力値、C2 は第2のレジスタ2の出
力値、ΔMajとΔMinは図6に示す画軸方向の長さ
である。
【0011】この図7に示す画像処理装置は、図示され
ないCPU等の中央処理装置によって制御されて、先の
図6で説明したように、始点座標と終点座標とが指定さ
れると、その間を結ぶ直線を描画する。
【0012】まず、第1のレジスタ1には、主軸方向の
値ΔMajがセットされ、また、第2のレジスタ2には
、副軸方向の値ΔMinがセットされる。第1の減算器
3には、両レジスタ1,2の出力が入力されており、そ
の減算結果が、誤差値e1 として得られる。第2の減
算器4にも、両レジスタ1,2の出力が入力されており
、その減算結果が、出力値C1 として発生される。
【0013】この第2の減算器4の出力値C1 は、マ
ルチプレクサ5の入力端子Aへ与えられる。このマルチ
プレクサ5の入力端子Bには、副軸方向の値ΔMinが
セットされた第2のレジスタ2から、その出力値C2が
与えられる。なお、マルチプレクサ5の入力端子Cは、
接地されている。
【0014】加算器6には、第1の減算器3からの誤差
値e1 と、マルチプレクサ5からの出力とが入力され
る。この加算器6の加算結果と、第1の減算器3からの
誤差値e1 とが、x,y座標制御回路7に与えられて
、直線を形成する画素のx,y座標が得られる。
【0015】図8は、従来の画像処理装置において、D
DA変換方式による直線描画時の主要な処理の流れを示
すフローチャートである。図において、#1〜#11は
ステップを示す。
【0016】DDA変換方式による直線描画の処理が指
示されると、この図8のフローがスタートする。ステッ
プ#1で、n=1,X1=x1,Y1=y1をセットし
、誤差値e1 を上記の式(7) によって演算する。 また、第2の減算器4の出力値C1 と、第2のレジス
タ2の出力値C2 とを次の式(8) と(9) によ
って演算する。         C1 = 2・ΔMin − 2・Δ
Maj                   …… 
(8)        C2 = 2・ΔMin   
                         
     …… (9)
【0017】ステップ#2で、
終点の座標(xn,yn)をプロットする。ステップ#
3へ進み、n=n+1にする。ステップ#4で、Xn=
X(n−1)+1にする。
【0018】次のステップ#5で、Xn=xnであるか
どうか判断し、もし、Xn=xnであれば、ステップ#
11へ進んで、この図8のフローを終了する。
【0019】これに対して、このステップ#5の判断で
、Xn=xnでなければ、ステップ#6へ進み、誤差値
enが、en≧0であるかどうか判断する。このステッ
プ#6の判断で、en≧0であれば、ステップ#7へ進
んで、en=e(n−1)+C1 の処理を行い、次の
ステップ#8で、yn=y(n−1)+1にする。
【0020】そして、再び先のステップ#2へ戻り、以
下、ステップ#5で、Xn=xnが成立したことを判断
するまで、同様の処理を繰り返えす。また、先のステッ
プ#6で判断した結果、en≧0でなければ、ステップ
#9へ進んで、en=e(n−1)+C2 の処理を行
い、次のステップ#10で、yn=y(n−1)にする
【0021】この場合にも、再び先のステップ#2へ戻
り、ステップ#5で、Xn=xnが成立したことを判断
するまで、以下同様の処理を繰り返えす。以上のステッ
プ#1〜#11の処理により、図6のような直線が描画
される。
【0022】なお、この図8のフローでは、図6に示し
たΔx≧Δyの直線、すなわち、式(3) と式(4)
 が成立する場合について説明した。もし、Δy≧Δx
のとき、すなわち、式(5) と式(6) が成立する
場合には、この図8のフローで、Δx=ΔMin,Δy
=ΔMajとして、x軸を副軸、y軸を主軸に変更すれ
ばよい。
【0023】ところで、図8のフローに示したDDA変
換方式による直線描画処理では、演算した画素のメモリ
への書き込み動作は、直線を構成するドットを算出する
度ごとにメモリアクセスして、直線の描画を行っている
。すなわち、始点座標から終点座標へ向って画素データ
を求める度ごとに、メモリへ画素データの書き込みを行
っている。そのため、メモリアクセスは、直線を構成す
るドットの数と同じ回数だけ実行されることになる。
【0024】図9は、始点座標(x1,y1)から終点
座標(x18,y4)へ直線を描画する場合の画素デー
タの一例を示す図である。次の図10は、図9に示した
直線を描画する場合において、従来の描画方式によるメ
モリアクセス方法を説明する図である。
【0025】まず、始点座標(x1,y1)と、終点座
標(x18,y4)とが指示されると、図9の(x1,
y1)の座標値をメモリに書く。次に、図9の画素(x
2,y1)のデータを求め、その座標値(x2,y1)
をメモリに書く。
【0026】同様に、図9で、次の画素(x3,y1)
のデータを求め、その座標値(x3,y1)をメモリに
書く。以下同様に、図9において、画素(x4,y2)
、(x5,y2)、……、(x17,y4)、(x18
,y4)のデータを順次求め、それぞれの座標値をメモ
リに書く。
【0027】したがって、この図9のように、18個の
画素によって形成される直線の場合には、始点と終点の
座標を除いて計16回の演算と、18回のメモリアクセ
スとが必要である。また、従来の直線描画方式では、D
DA変換方式で求めた画素の位置は、x座標とy座標と
で示されるので、メモリへの書き込みの際には、直線を
構成する各画素の座標値をメモリのアドレスに変換して
いる。
【0028】ここで、従来の画像処理装置について、そ
の直線描画演算部における座標変換回路の詳細な構成を
説明する。
【0029】図11は、従来の画像処理装置について、
その直線描画演算部における座標変換回路の要部の一構
成例を示す機能ブロック図である。図において、11は
乗算器、12は加算器を示し、また、PWは描画エリア
のx方向バウンダリ数、ynはy座標、xnはx座標を
示す。
【0030】この図11で、描画エリアのx方向バウン
ダリ数PWは、描画エリアのx方向のバウンダリ数を意
味しており、メモリアクセスがバイト処理であれば、1
バウンダリは8ビット(8画素分)となり、また、ワー
ド処理であれば、1バウンダリは16ビット(16画素
分)となる。従来の座標変換回路は、この図11に示す
ように、乗算器11と加算器12によって構成されてい
る。
【0031】次の図12は、図11に示した従来の座標
変換回路によって得られる各種のデータについて、その
メモリ上のデータの一格納例と、直線を形成する座標位
置とを示す図である。図において、PWは描画エリアの
x方向バウンダリ数を示す。
【0032】この図12では、x方向バウンダリ数PW
がnの場合について示している。このように、従来のD
DA変換方式による直線描画処理では、指定された始点
座標から終点座標まで、1画素ずつ誤差値e1 を求め
ながら、順次メモリに書き込む、という処理を行ってい
る。
【0033】そのため、特に長い直線を描画する場合に
は、演算回数やメモリアクセス回数が非常に多くなる上
、メモリアクセスの際の座標変換もアドレスが変わる度
ごとに乗算と加算とを行う必要があるので、高速処理が
できない、という不都合があった。
【0034】
【発明が解決しようとする課題】この発明では、従来の
直線描画機能を有する画像処理装置で生じるこれらの不
都合、すなわち、特に長い直線を描画する場合には、演
算回数やメモリアクセス回数が非常に多くなる上、メモ
リアクセスの際の座標変換もアドレスが変わる度ごとに
乗算と加算とを行う必要があるので、高速処理ができな
い、という不都合を解決し、演算回数およびメモリアク
セス回数を少なくすると共に、メモリアクセスの際のア
ドレス制御を簡略化することによって、高速度の直線描
画を可能にした画像処理装置を提供することを目的とす
る。
【0035】
【課題を解決するための手段】この発明では、第1に、
始点座標から終点座標に直線を描画する直線描画機能を
有する画像処理システムにおいて、始点と終点との間の
連続した画素データについて、副軸方向に変化する点を
検出する変化点検出手段を備え、該変化点検出手段によ
り検出された回数だけ始点と終点との間の連続した画素
データの演算を行って直線を描画するように構成してい
る。
【0036】第2に、上記第1の画像処理システムにお
いて、始点から終点との間の連続した画素データについ
て、副軸方向に変化する点を検出する変化点検出手段を
備え、画像処理までの画素データをメモリに書き込む際
のメモリアクセスを水平方向のバウンダリ単位で行って
直線を描画するように構成している。
【0037】第3に、始点座標から終点座標に直線を描
画する直線描画機能を有する画像処理システムにおいて
、始点と終点との間の連続した画素データについて、副
軸方向に変化する点を検出する変化点検出手段と、該変
化点検出手段により検出された回数だけ始点と終点との
間の連続した画素データを演算する演算手段、とを備え
、指示された始点情報と終点情報、および始点のメモリ
上のアドレス情報とによって、その間を結ぶ直線を描画
するように構成している。
【0038】第4に、上記第3の画像処理システムにお
いて、メモリに画素データを書き込む際に、座標値(x
,y座標)からメモリアドレスに変換する演算手段とし
て、加算器とカウンタとを備えた構成である。
【0039】
【作用】この発明では、直線描画操作に際して、始点座
標と終点座標とが指定されたとき、画素を求める演算を
1画素毎に行わず、副軸方向(短い軸方向)に移動した
場合にのみ行う。これに対して、従来の直線描画方式で
は、直線の主軸方向に並ぶ画素の数だけ演算を行ってい
る(なお、始点座標と終点座標とは指定されているので
、その演算は不要である)。すなわち、直線の副軸方向
に並ぶ画素の数だけ演算を行うことによって、演算の回
数を減少させている(請求項1の発明)。
【0040】また、このような処理によって、メモリア
クセスも画素単位ではなく、主軸方向の所定量の単位毎
に行うことが可能となるので、メモリアクセスの回数を
減少させることができる(請求項2の発明)。
【0041】さらに、メモリに書き込む際の座標変換処
理も、予め直線の始点座標のメモリ上でのアドレスを与
えることにより、画素データをメモリに書き込む際のア
ドレス演算が簡略化される(請求項3の発明)。
【0042】その上、直線の描画操作では、次の画素デ
ータの位置は、縦・横・斜めのいずれかであるから、加
減算だけで演算することが可能であり(請求項4の発明
)、高速度の直線描画が実現される。
【0043】すでに述べたように、この発明では、直線
描画操作に際して、始点座標と終点座標とが指定される
と、座標上の移動量を求め、その比較によって主軸と副
軸とを決定し、副軸方向に画素が移動する点を順次求め
ながら直線描画を行う点に特徴を有している。
【0044】すなわち、始点座標が指定されると、その
x,y座標値と、メモリ上のアドレスとの2つのパター
ンが与えられ、また、終点座標が指定されると、そのx
,y座標値のみが与えれるので、それらの座標値から座
標上の移動量を求めて、先の図6で説明したように、主
軸(ΔMaj)と副軸(ΔMin)とを決定する。この
場合の決定方法は、従来と同様で、先の式(1) と(
2) によって演算し、大きい方を主軸、小さい方を副
軸とする。
【0045】次に、得られた主軸と副軸に対して、その
始点から終点にかけて、副軸方向に画素が移動する点の
座標を順次求め、始点座標と終点座標との間に直線を描
画していく。
【0046】例えば、先の図9に示した直線の場合には
、始点座標(x1,y1)と終点座標(xn,yn)と
が与えられ、主軸(ΔMaj)と副軸(ΔMin)とが
決定されると、短い方の副軸方向に画素が移動する点を
順次求めて、直線を描画する。
【0047】次に、図9の示した直線を描画する場合に
ついて、従来の描画方式によるメモリアクセス方法と、
この発明の画像処理装置によるメモリアクセス方法とを
対比して説明する。
【0048】図2は、図9に示した直線を描画する場合
において、この発明の画像処理装置によるメモリアクセ
ス方法を説明する図である。
【0049】まず、図9の始点座標(x1,y1)と、
終点座標(x18,y4)とが指示されると、画素(x
4,y2)のデータを求める(第1回目の演算)。座標
(x1,y1)から座標(x3,y1)までの座標値を
メモリに書く(第1回目のメモリアクセス)。
【0050】画素(x10,y3)のデータを求める(
第2回目の演算)。座標(x4,y2)から座標(x9
,y2)までの座標値をメモリに書く(第2回目のメモ
リアクセス)。
【0051】画素(x16,y4)のデータを求める(
第3回目の演算)。そして、座標(x16,y3)から
座標(x15,y3)までの座標値をメモリに書く(第
3回目のメモリアクセス)。
【0052】画素(x21,y5)のデータを求める(
第4回目の演算)。最後に、座標(x16,y4)から
座標(x18,y4)までの座標値をメモリに書く(第
4回目のメモリアクセス)。
【0053】以上のように、この発明の画像処理装置に
よれば、座標演算とメモリアクセスを共に4回ずつ実行
するだけで、先の図9と同じ直線を描画することができ
る。これに対して、従来の方式では、図6と図10で説
明したように、座標演算とメモリアクセスを共に18回
ずつ実行する必要がある。
【0054】
【実施例】次に、この発明の画像処理装置について、図
面を参照しながら、その実施例を詳細に説明する。
【0055】図1は、この発明画像処理装置について、
その直線描画演算部の要部構成の一実施例を示す機能ブ
ロック図である。図において、21は第1のレジスタ、
22は第2のレジスタ、23は除算器、24は第3のレ
ジスタ、25は第4のレジスタ、26はセレクタ、27
は第1の加算器、28は第2の加算器、29はx,y座
標制御回路を示し、また、ΔMajは主軸の始点と終点
間の絶対値データ、ΔMinは副軸の始点と終点間の絶
対値データ、Aは第3のレジスタ24の出力、Bは第4
のレジスタ25の出力、CPnは第2の加算器28の出
力で、副軸方向へ画素が移動する座標を示す。
【0056】次の図3は、この発明の画像処理装置にお
ける直線描画動作を説明する図である。図における符号
は、図6と同様である。
【0057】図1に示したこの発明の画像処理装置では
、主軸の始点と終点間の絶対値データΔMajを第1の
レジスタ21へ、副軸の始点と終点間の絶対値データΔ
Minを第2のレジスタ22へ、それぞれ初期値として
取り込む。
【0058】そして、次の除算器23によって、ΔMa
j/ΔMin(=A)と、(A/2)+1(=B)の除
算を行い、第3のレジスタ24へ除算値A、第4のレジ
スタ25へ除算値B、をそれぞれセットする。なお、除
算値A,Bは、共に実数で表わされる。
【0059】次に、最初に副軸方向へ画素が移動するx
座標CP1を求める。この画素のx座標CPnは、小数
点以下を切り捨てて整数とする。その後、始点の座標x
1から、このCP1の1つ手前のx座標まで、メモリに
書き込む。この場合には、図3の水平線の画素1〜2の
座標が書き込まれる。
【0060】そして、(CPn−1)≧xn(xnは終
点のx座標)となるまで、処理を行う。
【0061】この処理は、図1のセレクタ26と、第1
の加算器27と、第2の加算器28と、x,y座標制御
回路29によって行われる。すなわち、第2の加算器2
8によって、副軸方向(図3の場合にはy軸方向)へ画
素が移動する座標CPn(x座標)が順次求められる。
【0062】その後、x,y座標制御回路29により、
メモリアドレスが演算されて、メモリに画素データが書
き込まれる。
【0063】図3の直線の場合には、2回目で、画素3
〜5が書き込まれ、以下、3〜6回目の処理が行われ、
最後の7回目で、画素16〜17が書き込まれる。
【0064】したがって、図3の直線は、副軸方向に変
化する7個所について、計7回の座標演算とメモリアク
セスとを行うことにより描画される。このように、メモ
リアドレスは、x,y座標制御回路29によって求めら
れ、メモリに画素データが書き込まれる。
【0065】図4は、この発明の画像処理装置において
、直線描画時の主要な処理の流れを示すフローチャート
である。図において、#21〜#30はステップを示す
【0066】直線描画の動作が指示されると、この図4
のフローがスタートする。ステップ#21は、初期値の
設定である。まず、n=1,X1=x1,Y1=y1を
セットし、A(=ΔMaj/ΔMin)と、B(=A/
2)の除算を行う。
【0067】次のステップ#22で、副軸方向へ画素が
移動する最初のx座標CPnを求める。このx座標CP
nは、(n−1)A+B+1で求められる。ステップ#
23へ進み、CPn−1=xnが成立しているかどうか
判断する。
【0068】このステップ#23で判断した結果、CP
n−1=xnが成立していれば、ステップ#30へ進み
、この図4のフローを終了する。これに対して、このス
テップ#23の判断で、CPn−1=xnでなければ、
ステップ#24へ進んで、(CPn−1)>xnが成立
しているかどうか判断する。
【0069】このステップ#24で判断した結果、(C
Pn−1)>xnが成立しているときは、ステップ#2
9へ進み、(Xn,Yn)から(xn,Yn)までの直
線の水平方向の画素を全てプロットし、ステップ#30
へ進んで、この図4のフローを終了する。
【0070】もし、先のステップ#24で判断した結果
、(CPn−1)>xnが成立していなければ、ステッ
プ#25へ進む。そして、ステップ#25で、(Xn,
Yn)から〔(CPn−1),Yn〕までの直線の水平
方向の画素を全てプロットする。
【0071】次に、ステップ#26へ進み、n=n+1
をセットする。次のステップ#27で、Yn=Y(n−
1)+1にセットする。ステップ#28で、Xn=1+
〔CP(n−1)〕にセットして、再び先のステップ#
22へ戻る。
【0072】そして、同様の処理を繰り返えし、ステッ
プ#23で、CPn−1=xnであることを判断したと
き、あるいは、ステップ#24で、(CPn−1)>x
nが成立したことを判断して、ステップ#29の処理を
終了したとき、この図4のフローを終了する。以上のス
テップ#21〜#30の処理によつて、この発明の画像
処理装置による直線描画の演算が行われ、画素データが
書き込まれる。なお、主軸と副軸が異なる場合には、従
来と同様に、XとYとを入れ換える。
【0073】次に、図4のフローによって求められた画
素データを、メモリに書き込む際に使用する座標変換回
路について説明する。
【0074】直線描画の処理では、画素は、始点から終
点まで、必ず縦か、横か、斜めのいずれかの方向に連続
して並んでいる。したがって、始点のアドレスが判れば
、その位置から終点までの画素のアドレスは、加減算の
みによって求めることができる。
【0075】そこで、この発明の画像処理装置では、こ
のアドレス演算が簡単かつ高速度で処理できるように、
従来と同様の始点座標(x,y座標)の他に、始点座標
のメモリアドレスの情報も同時に与える。
【0076】図5は、この発明の画像処理装置について
、その直線描画演算部における座標変換回路の要部構成
の一実施例を示す機能ブロック図である。図において、
41はカウンタ、42は加減算器、43はセレクタを示
し、また、SAは始点座標のアドレス、KJFは加減算
フラグ、PWは描画エリアのx方向バウンダリ数を示す
【0077】この図5の座標変換回路は、アドレス演算
を行う機能を有している。まず、カウンタ41に、始点
座標のアドレスSAをロードし、描画する直線の方向に
応じて、加減算フラグKJFで、このカウンタ41をカ
ウントアップするかカウントダウンするかの制御(x方
向への移動制御)を行う。
【0078】この加減算フラグKJFは、同時に、加減
算器42の加減算をも制御するよう機能し、このフラグ
KJFによって、y方向の移動制御が行われる。例えば
、右下りの直線描画で、副軸がx方向、主軸がy方向で
あるとすれば、x方向は正で、y方向は負の方向に向う
直線であるから、カウンタ41はアップモード、加減算
器42は、減算器として動作される。なお、セレクタ4
3は、カウンタ41の出力と、加減算器42の出力とを
セレクトする。
【0079】また、描画エリアのx方向バウンダリ数(
PW)は、従来と同様に、メモリアクセスがバイト処理
であれば、1バウンダリ=8ビット、ワード処理であれ
ば、1バウンダリ=16ビットである。
【0080】以上に詳細に説明したように、この発明の
画像処理装置では、演算回数は副軸方向への移動点(回
数)によって決定され、また、メモリアクセスの回数も
この演算回数に依存するので、直線の方向が、水平線や
水平方向に対して鋭角な直線を描画する場合等には、副
軸方向の移動点が少ないので、その効果が一層顕著に現
われる。しかし、どのような直線でも、従来の描画方式
に比べて、演算回数とメモリアクセス回数が少なくて済
む理由については、すでに述べたとおりである。
【0081】
【発明の効果】この発明では、従来の直線描画方式に比
べて、より少ない演算回数で直線描画を行うことができ
るので、特に長い直線でも、高速度で描画することが可
能になる(請求項1の発明に対応する効果)。
【0082】また、水平方向に連続して並ぶ画素は、所
定量づつまとめてメモリに書き込むことができるので、
メモリのアクセス回数が少なくて済むため、同様に、高
速度で直線を描画することが可能になる(請求項2の発
明に対応する効果)。
【0083】さらに、始点位置と終点位置の情報と共に
、始点のメモリ上のアドレス情報が与えられるので、直
線を形成する次の画素データのメモリアドレスを加減算
のみで演算することができ、回路も簡単になる(請求項
3の発明に対応する効果)。
【0084】その上、メモリアドレス制御を行う座標変
換回路を簡単な回路で構成することができるので、高速
度で直線描画処理のアドレス制御が可能になると共に、
結果的に、故障率が低く、信頼性の高い回路が実現され
る(請求項4の発明に対応する効果)、等の多くの優れ
た効果が奏せられる。
【図面の簡単な説明】
【図1】この発明の画像処理装置について、その直線描
画演算部の要部構成の一実施例を示す機能ブロック図で
ある。
【図2】図9に示した直線を描画する場合において、こ
の発明の画像処理装置によるメモリアクセス方法を説明
する図である。
【図3】この発明の画像処理装置における直線描画動作
を説明する図である。
【図4】この発明の画像処理装置において、直線描画時
の主要な処理の流れを示すフローチャートである。
【図5】この発明の画像処理装置について、その直線描
画演算部における座標変換回路の要部構成の一実施例を
示す機能ブロック図である。
【図6】従来の直線描画機能を有する画像処理装置にお
ける直線描画動作を説明する図である。
【図7】従来の画像処理装置について、そのDAA変換
処理部における要部の一構成例を示す機能ブロック図で
ある。
【図8】従来の画像処理装置において、DAA変換方式
による直線描画時の主要な処理の流れを示すフローチャ
ートである。
【図9】始点座標(x1,y1)から終点座標(x18
,y4)へ直線を描画する場合の画素データの一例を示
す図である。
【図10】図9に示した直線を描画する場合において、
従来の描画方式によるメモリアクセス方法を説明する図
である。
【図11】従来の画像処理装置について、その直線描画
演算部における座標変換回路の要部の一構成例を示す機
能ブロック図である。
【図12】図11に示した従来の座標変換回路によって
得られる各種のデータについて、そのメモリ上のデータ
の一格納例と直線を形成する座標位置とを示す図である
【符号の説明】
21  第1のレジスタ 22  第2のレジスタ 23  除算器 24  第3のレジスタ 25  第4のレジスタ 26  セレクタ 27  第1の加算器 28  第2の加算器 29  x,y座標制御回路 31  カウンタ 32  加減算器 33  セレクタ

Claims (4)

    【特許請求の範囲】
  1. 【請求項1】  始点座標から終点座標に直線を描画す
    る直線描画機能を有する画像処理システムにおいて、始
    点と終点との間の連続した画素データについて、副軸方
    向に変化する点を検出する変化点検出手段を備え、該変
    化点検出手段により検出された回数だけ始点と終点との
    間の連続した画素データの演算を行って直線を描画する
    ことを特徴とする画像処理装置。
  2. 【請求項2】  請求項1の画像処理システムにおいて
    、始点から終点との間の連続した画素データについて、
    副軸方向に変化する点を検出する変化点検出手段を備え
    、画像処理までの画素データをメモリに書き込む際のメ
    モリアクセスを水平方向のバウンダリ単位で行って直線
    を描画することを特徴とする画像処理装置。
  3. 【請求項3】  始点座標から終点座標に直線を描画す
    る直線描画機能を有する画像処理システムにおいて、始
    点と終点との間の連続した画素データについて、副軸方
    向に変化する点を検出する変化点検出手段と、該変化点
    検出手段により検出された回数だけ始点と終点との間の
    連続した画素データを演算する演算手段、とを備え、指
    示された始点情報と終点情報、および始点のメモリ上の
    アドレス情報とによって、その間を結ぶ直線を描画する
    ことを特徴とする画像処理装置。
  4. 【請求項4】  請求項3の画像処理システムにおいて
    、メモリに画素データを書き込む際に、座標値(x,y
    座標)からメモリアドレスに変換する演算手段として、
    加算器とカウンタとを備えたことを特徴とする画像処理
    装置。
JP14667991A 1991-05-22 1991-05-22 画像処理装置 Pending JPH04344989A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP14667991A JPH04344989A (ja) 1991-05-22 1991-05-22 画像処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP14667991A JPH04344989A (ja) 1991-05-22 1991-05-22 画像処理装置

Publications (1)

Publication Number Publication Date
JPH04344989A true JPH04344989A (ja) 1992-12-01

Family

ID=15413147

Family Applications (1)

Application Number Title Priority Date Filing Date
JP14667991A Pending JPH04344989A (ja) 1991-05-22 1991-05-22 画像処理装置

Country Status (1)

Country Link
JP (1) JPH04344989A (ja)

Similar Documents

Publication Publication Date Title
US4675665A (en) Realtime tracking of a movable cursor
US4538144A (en) Graphic display device having graphic generator for shading graphs
JPH0214714B2 (ja)
KR940001880B1 (ko) 묘화처리(描畵處理)의 방법 및 장치
JPH04246790A (ja) ベクトル/円錐曲線/エリアフィルプリミティブジェネレータ
JP2634851B2 (ja) 画像処理装置
JPH04344989A (ja) 画像処理装置
JP2674287B2 (ja) グラフィックマイクロコンピュータ
JPH09325750A (ja) 画像処理装置および方法
JPH0368086A (ja) 直線補間回路
JP2630843B2 (ja) 直線描画方法及び装置
JP2684609B2 (ja) 図形データ処理装置における図形表示方法
CN116092095B (zh) 原笔迹手写笔锋的生成方法
JP2605609B2 (ja) ドット表示処理装置
JP2611098B2 (ja) ベクタ・ラスタ変換方式
JP2908194B2 (ja) 文字の変形制御方式
JPH09134441A (ja) 曲線の直線近似装置
JP2606176B2 (ja) 図形処理装置
JP2830320B2 (ja) 画像メモリへの描画方法
JPH03125277A (ja) ベクトルデータ/イメージデータ変換方式
JP2000242802A (ja) 図形処理装置
JPH04153786A (ja) 四辺形塗りつぶし装置
JPH07121730A (ja) 円描画装置
JPS6312077A (ja) グリツド描画方式
JPS62120583A (ja) 画像メモリの書込方式