JP3330030B2 - データ処理装置 - Google Patents

データ処理装置

Info

Publication number
JP3330030B2
JP3330030B2 JP25903596A JP25903596A JP3330030B2 JP 3330030 B2 JP3330030 B2 JP 3330030B2 JP 25903596 A JP25903596 A JP 25903596A JP 25903596 A JP25903596 A JP 25903596A JP 3330030 B2 JP3330030 B2 JP 3330030B2
Authority
JP
Japan
Prior art keywords
pixel
color value
drawn
storage device
straight line
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.)
Expired - Lifetime
Application number
JP25903596A
Other languages
English (en)
Other versions
JPH10105724A (ja
Inventor
和彦 立花
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.)
Toshiba Corp
Original Assignee
Toshiba Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toshiba Corp filed Critical Toshiba Corp
Priority to JP25903596A priority Critical patent/JP3330030B2/ja
Priority to US08/941,000 priority patent/US5898440A/en
Publication of JPH10105724A publication Critical patent/JPH10105724A/ja
Application granted granted Critical
Publication of JP3330030B2 publication Critical patent/JP3330030B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/20Drawing from basic elements, e.g. lines or circles
    • G06T11/203Drawing of straight lines or curves
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/12Indexing scheme for image data processing or generation, in general involving antialiasing

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、コンピュータ・グ
ラフィックス等に使用されるデータ処理装置に関し、特
に直線描画の際にアンチエリアシングを施す機能を備え
たデータ処理装置に関する。
【0002】
【従来の技術】従来、コンピュータ・グラフィックスに
おいて、DDA(Digital Different
ial analyzer:差分生成器)を使って、図
10に示すように、座標(X0,Y0)から座標(X
1,Y1)まで直線を描画しようとしたとき、各々のピ
クセル中に示した数字(1〜12)の順番でピクセルが
描画される。同図では、横方向にX軸、縦方向にY軸に
とり、点線の格子は画面上の座標を表し、マス1個がピ
クセルを表している。
【0003】このような直線を描画するためのアルゴリ
ズムとしては、ブレセンハム(bresenham)の
アルゴリズムが一般的に知られている。図11は、上記
図10に示した直線を描画する際に用いるブレセンハム
のアルゴリズムをC言語ライクで記述したものである。
【0004】同図において、直線の描画が開始されると
(ステップS111)、まず、その初期化として、Xの
変化量(ステップS112)、Yの変化量(ステップS
113)、YのXに対する単位変化量(ステップS11
4)、Xの初期座標(ステップS115)、及びYの初
期座標(ステップS116)をそれぞれ設定すると共
に、ピクセルの中心から直線の中心までの距離dMの初
期値として0.5を設定し(ステップS117)、さら
にピクセルの明るさを設定する(ステップS118)。
【0005】次いで、直線の発生を行う。そのために、
XをX0からX1まで増加させる(ステップS11
9)。その間に、座標(X,Y)に輝度Iのピクセルを
描画し(ステップS120)、deltaYを蓄積し
(ステップS121)、dMが1を越えたら(ステップ
S122)、Yを+1インクリメントし(ステップS1
23)、さらにdMをリセットして(ステップS12
4)、終了する。
【0006】このようなブレセンハムのアルゴリズムで
あれば、DDAへのインプリメントも容易に行うことが
できる。
【0007】しかし、上述のような傾いた直線は階段状
のギザギザを生じる。これは、ジャギーと呼ばれるもの
で、このジャギーをなくすことをアンチエリアシングと
いう。直線のアンチエリアシングの方法については、G
upta一Sproull(グプタ・スプロール)の論
文であるFiltering Edges forGr
ay−Scale Displays(米国、Comp
uter Graphics誌、Volume15,N
umber3 Augst 1981)に開示されたも
のがある。
【0008】一般に直線は、上述の図10に示すよう
に、DDAを使って1ピクセルずつ描画していくのだ
が、この論文によれば、本来、直線を描画する方向に対
して上下方向に1ピクセルずつ描画するところを、グラ
デーションをかけて3ピクセルずつ描画していく。すな
わち、3ピクセル分の幅を持った直線領域の中央部分に
位置するピクセルについては輝度値を比較的大きくし、
境界部分のピクセルは輝度値を小さくすることにより、
境界部分での輝度差を目立たなくし、ジャギーを解消す
るものである。
【0009】この様子を図12(a)に示す。同図の直
線TAは座標(Xa1,Ya1)から座標(Xa2,Y
a2)まで、直線TBは座標(Xb1,Yb1)から座
標(Xa2,Ya2)までの傾きを持って描画されてい
る。図12(a)中の直線TAのピクセルは、図12
(b)に示すように四角で表わされ、直線TBで描画さ
れるピクセルは円で表わされている。また、これらのピ
クセルの輝度は、図12(c)に示すように5階調の輝
度値で表わされ、さらに図12(a)中の各々のピクセ
ル中に示した数字はピクセルが描画される順番で、数字
に付いている「’」または「’’」は同時に描画される
ピクセルを表わしている。
【0010】図13は、上述のしたような直線描画を行
うための従来のデータ処理装置(グラフィックシステ
ム)の要部構成図である。
【0011】このデータ処理装置は、直線のパラメ一タ
を与えるMPU111と、アンチエリアス機能を持った
直線を発生させるDDA112と、直線を描画するフレ
ームバッファ(VRAM)113と、フレームバッファ
113に描画された直線を画面に表示するCRT114
と、その制御を行うCRT制御装置115から構成され
ている。
【0012】
【発明が解決しようとする課題】しかしながら、上記の
論文に示されたアンチエリアシングの方法では、複数の
直線を描画する際に次のような問題点があった。
【0013】図12(a)の描画例に示すのように描画
する直線が離れている場合は問題ないのだが、その直線
が接近した場合、つまり図14の描画例に示すように直
線TAを描画して、次に直線TBを描画したときに、直
線TAと直線TBが接近しているため、直線TAと直線
TBのアンチエリアシングのためのピクセルが重なって
しまう。なお、図14において、ピクセルの形状やピク
セル輝度の階調を示す斜線表示は、上記図12(b),
(c)と同様である。
【0014】図14中の太線で囲まれている部分Pが直
線TAと直線TBのピクセルの重なりを示している。こ
の場合、直線TBが後に描画されているので、直線TB
のピクセルが上から描画されることになる。このとき、
直線TAと直線TBのアンチエリアシングのために描画
したピクセルのグラデーションに大きな差があると、ア
ンチエリアシングが正しく行なうことができなくなり、
描画した直線が不自然になる。
【0015】より具体的に説明すると、図14で直線T
Aが描画された後に直線TBが描画され、太線で囲まれ
ている部分Pが重なっているのだが、例えば、直線TB
の3番目のビクセルB3のグラデーションをかけたピク
セルB3”が、既に描画されている直線TAの2番目の
ピクセルA2のグラデーションをかけたピクセルA2’
の上に描画する時、ピクセルB3”がピクセルA2’よ
り暗いと、描画した直線が不自然に見える。このような
問題は、直線が交差したときも同様に生じ得る。
【0016】本発明は、上述の如き従来の問題点を解決
するためになされたもので、その目的は、直線のアンチ
エリアシングを行なった場合において、直線が接近また
は交差したときでも、アンチエリアシングを正しく行う
ことができるデータ処理装置を提供することである。ま
たその他の目的は、直線のアンチエリアシングを行なっ
た場合において、アンチエリアシングを正しく行い且つ
高速処理が可能なデータ処理装置を提供することであ
る。
【0017】
【課題を解決するための手段】上記目的を達成するため
に、第1の発明の特徴は、表示装置に表示する図形をビ
ットマップに対応して記憶する記憶装置と、アンチエリ
アス機能を持った直線のデータを生成し、この直線のデ
ータを前記記憶装置のビットマップ上に描画するデータ
生成手段とを備えたデータ処理装置において、これから
描画されるピクセルに対応した前記記憶装置のアドレス
から、既に描画されている色値を読み出す読み出し手段
と、前記記憶装置から読み出されたピクセルの色値とこ
れから描画されるピクセルの色値との大小比較を行い、
これから描画されるピクセルの色値の方が大きいときの
み、書き込み信号を出力する比較手段とを設け、前記記
憶装置は、前記比較手段から前記書き込み信号を受けた
ときに、これから描画されるピクセルの色値を書き込む
ように構成し、前記比較手段は、赤、緑、青の色値に対
応してそれぞれ前記大小比較を行う第1、第2及び第3
の比較器と、これら第1、第2及び第3の比較器の各比
較結果の多数決をとり、その多数決結果に応じて前記書
き込み信号を生成する多数決回路とで構成したことにあ
る。
【0018】この第1の発明によれば、複数の直線のア
ンチエリアシングを行なった場合に、直線が接近または
交差してピクセルが重なったときでも、常に明るいピク
セルが描画されるので、アンチエリアシングが正しく行
われ、描画された直線は不自然に見えることはなくな
る。
【0019】第2の発明の特徴は、上記第1の発明にお
いて、アンチエリアシングを施すために、直線を描画す
る方向に対して上下方向に3ピクセルを描画しその色
を調節して2点間を結ぶ直線のデータを生成するように
前記データ生成手段を構成にしたことにある。
【0020】この第2の発明によれば、1度に3ピクセ
ル描画する直線のアンチエリアシングにおいて、上記第
1の発明と同様に、直線の接近または交差時に、その描
画された直線が不自然に見えることはなくなる。
【0021】第3の発明の特徴は、上記第1の発明にお
いて、アンチエリアシングを施すために、直線を描画す
る方向に対して上下方向に2ピクセルを描画しその色
を調節して2点間を結ぶ直線のデータを生成するように
前記データ生成手段を構成にしたことにある。
【0022】この第3の発明によれば、1度に2ピクセ
ル描画する直線のアンチエリアシングにおいて、上記第
1の発明と同様に、直線の接近または交差時に、その描
画された直線が不自然に見えることはなくなる。
【0023】第4の発明の特徴は、表示装置に表示する
図形をビットマップに対応して記憶する記憶装置と、前
記記憶装置のビットマップ上で2点間を結ぶ直線を描画
するために、その描画されるピクセルのアドレスとそ
値を生成する色値生成手段と、この色値生成手段によ
って生成された色値を、該色値生成手段によって生成さ
れた前記記憶装置のアドレスにピクセルとして描画する
描画実行手段と、この描画実行手段で描画されるピクセ
の色値をアンチエリアシングのための所定の条件に応
じて変化させる色値変化手段とを備えたデータ処理装置
において、これから描画されるピクセルに対応した前記
記憶装置のアドレスから、既に描画されている色値を読
み出す読み出し手段と、前記記憶装置から読み出された
ピクセルの色値とこれから描画されるピクセルの色値と
の大小比較を行い、これから描画されるピクセルの色
の方が大きいときのみ、書き込み信号を出力する比較手
段とを設け、前記記憶装置は、前記比較手段から前記書
き込み信号を受けたときに、これから描画されるピクセ
の色値を書き込むように構成にし、前記比較手段は、
赤、緑、青の色値に対応してそれぞれ前記大小比較を行
う第1、第2及び第3の比較器と、これら第1、第2及
び第3の比較器の各比較結果の多数決をとり、その多数
決結果に応じて前記書き込み信号を生成する多数決回路
とで構成したことにある。
【0024】
【0025】第5の発明の特徴は、表示装置に表示する
図形をビットマップに対応して記憶する記憶装置と、前
記記憶装置のビットマップ上で2点間を結ぶ直線を描画
するために、その描画されるピクセルのアドレスとそ
値を生成する色値生成手段と、この色値生成手段によ
って生成された色値を、該色値生成手段によって生成さ
れた前記記憶装置のアドレスにピクセルとして描画する
描画実行手段と、この描画実行手段で描画されるピクセ
の色値をアンチエリアシングのための所定の条件に応
じて変化させる色値変化手段とを備えたデータ処理装置
において、これから描画される前記記憶装置のピクセル
の色値を記憶する第1の記憶手段と、これから描画され
る前記ピクセルに対応した前記記憶装置のアドレスか
ら、既に描画されている色値を読み出して記憶する第2
の記憶手段と、前記第1の記憶装置中の色値と前記第2
の記憶装置中の色値との大小比較を行い、これから描画
するピクセルの色値の方が大きいときのみ、書き込み信
号を出力する比較手段とを設け、前記記憶装置は、前記
比較手段から前記書き込み信号を受けたときに、これか
ら描画するピクセルの色値を書き込むように構成にし、
前記比較手段は、赤、緑、青の色値に対応してそれぞれ
前記大小比較を行う第1、第2及び第3の比較器と、こ
れら第1、第2及び第3の比較器の各比較結果の多数決
をとり、その多数決結果に応じて前記書き込み信号を生
成する多数決回路とで構成したことにある。
【0026】この第5の発明によれば、これから描画さ
れるピクセルの色値は第1の記憶手段に記憶される。一
方、そのピクセルのアドレスにおいて既に描画されてい
る色値は第2の記憶手段に記憶される。これにより、比
較手段は、第1の記憶装置中の色値と前記第2の記憶装
置中の色値との大小比較を的確に行うことができ、複数
の直線のアンチエリアシングを行なった場合に直線が接
近または交差してピクセルが重なったときでも、より正
確にアンチエリアシングを施すことができる。
【0027】
【0028】
【0029】第の発明の特徴は、上記第4または第5
の発明において、前記色値生成手段は、直線を描画する
方向に対して上下方向に3ピクセルのアドレスとその色
値を生成することにある。
【0030】この第の発明によれば、1度に3ピクセ
ル描画する直線のアンチエリアシングにおいて、直線の
接近または交差時に、その描画された直線が不自然に見
えることはなくなる。
【0031】第7の発明の特徴は、上記第4または第5
の発明において、前記色値生成手段は、直線を描画する
方向に対して上下方向に2ピクセルのアドレスとその色
値を生成することにある。
【0032】この第の発明によれば、1度に2ピクセ
ル描画する直線のアンチエリアシングにおいて、直線の
接近または交差時に、その描画された直線が不自然に見
えることはなくなる。
【0033】
【発明の実施の形態】以下、本発明の実施形態を図面に
基づいて説明する。図1は、本発明の第1実施形態に係
るデータ処理装置(グラフィックスシステム)の基本構
成を示すブロック図である。
【0034】このデータ処理装置は、直線の描画を指示
して直線のパラメ一タ(座標データ等)を出力するMP
U1を有し、その出力側には、DDA2、フレームバッ
ファ(VRAM)3、CRT制御装置4、及びCRT5
が順次接続されている。
【0035】DDA2は、MPU1からの直線描画の指
示を受けて、アンチエリアス機能を持った直線のデータ
を生成し、この直線のデータをフレームバッファ3のビ
ットマップ上に描画するデータ生成手段として機能す
る。すなわち、DDA2は、フレームバッファ3のビッ
トマップ上で2点間を結ぶ直線を描画するために、その
描画されるピクセルのアドレスとその輝度値を生成する
手段と、この手段によって生成された輝度値を、フレー
ムバッファ3のアドレスにピクセルとして描画する手段
と、この手段で描画されるピクセルの輝度値をアンチエ
リアシングのための所定の条件に応じて変化させる手段
とを備えている。
【0036】そして、DDA2中のこれらの手段は、後
述の図3に示すアルゴリズムに従って実行される。その
際、生成された制御信号及びアドレスはそれぞれのポー
トを通してフレームバッファ3へ直接供給されるように
なっている。
【0037】フレームバッファ3は、CRT5に表示す
る直線をビットマップに対応して記憶(描画)するもの
であり、例えば1280×1024個のピクセル(画
素)で構成されている。また、DDA2とフレームバッ
ファ3との間には、本発明の特徴を成す記憶手段6、記
憶手段7及び比較器8が設けられている。
【0038】記憶手段6は、DDA2より、これから描
画するピクセルの輝度値を受取りこれを一時的に保持す
る機能を有し、例えばレジスタ等で構成されている。記
憶手段7は、フレームバッファ3の前記ピクセル(これ
から描画するピクセル)のアドレスから、既に描画され
ている輝度値を読み出して記憶する機能を有し、例えば
レジスタ等で構成されている。
【0039】比較器8は、グレースケール用(ピクセル
は輝度だけで色がない)として後述の図2に示すような
構成を成し、前記記憶手段6中の輝度値SAと前記記憶
手段7中の輝度値SBとの大小比較を行い、これから描
画するピクセルの輝度値SAの方が大きいときのみ、書
き込み信号WRを活性化してフレームバッファ3のライ
トイネーブル端子へ出力する。そして、フレームバッフ
ァ3は、比較器8から書き込み信号WRを受けたとき
に、これから描画するピクセルの輝度値SAを記憶手段
6からトライステートバッファ9を通して書き込むよう
に働く。
【0040】また、CRT制御装置4は、フレームバッ
ファ3のシリアルポートを制御し、このシリアルポート
より描画データを受取り、CRT5に表示するようにな
っている。
【0041】図2は、図1中の比較器8の構成図であ
る。
【0042】前記比較器8は、減算器11で構成され、
その入力A(輝度値SA)と入力B(輝度値SB)の差
を取り、A≧Bの時は1(書き込み信号WRの活性時)
を、A<Bの時は0(書き込み信号WRの非活性時)を
出力する。この減算器11の入力Aには記憶手段6の出
力端が、入力Bには記憶手段7の出力端がそれぞれ接続
されている。
【0043】図3は、1度に3ピクセル描画する直線の
アンチエリアシングのためのアルゴリズムをC言語ライ
クで記述した例を示す図であり、このアルゴリズムは、
図1中のDDA2にインプリメントされているものとす
る。
【0044】本例は、座標(X0,Y0)から座標(X
1,Y1)までの直線を輝度I0で描画する場合を示す
もので、描画する輝度は、dM,dx,dyなどの関数
で表わされ、関数fはそれぞれのアンチエリアスの方法
により決定し、ここでは輝度IはI0*f(dM,Y)
で決定されることとする。
【0045】まず、同図において、アンチエリアシング
を行う直線の描画が開始されると(ステップS11)。
まず、その初期化として次の設定を行う。Xの変化量d
xをX1−X0に(ステップS12)、Yの変化量dy
をY1−Y0にそれぞれ設定し(ステップS13)、さ
らに、YのXに対する単位変化量deltaYをdy/
dxに(ステップS14)、Xの初期座標をX0に(ス
テップS15)、Yの初期座標Y0に(ステップS1
6)それぞれ設定する。加えて、ピクセルの中心から直
線の中心までの距離dMの初期値として0.5を設定し
(ステップS17)、またピクセルの明るさIをI0に
設定する(ステップS18)。
【0046】次いで、直線の発生を行う。そのために、
XをX0からX1まで増加させる(ステップS19)。
その間に、3点を描画するアンチエリアスを行うため、
座標(X,Y+1)に輝度Iのピクセルを描画し(ステ
ップS20)、座標(X,Y)に輝度Iのピクセルを描
画し(ステップS21)、座標(X,Y−1)に輝度I
のピクセルを描画し(ステップS22)、deltaY
を蓄積し(ステップS23)、dMが1を越えたら(ス
テップS24)、Yを+1インクリメントし(ステップ
S25)、さらにdMをリセットして(ステップS2
6)、終了する。
【0047】以上のように、アンチエリアシングを行な
う直線描画は先に述べた直線描画と基本的に同じで、輝
度を求める関数fを付け加えることで実現できる。この
アルゴリズムのハードウェアへのインプリメントは注意
することがある。それはこの関数fをハードウェアにイ
ンプリメントすると、非常に複雑で大きなハードウェア
になる点であり、輝度を決める関数fはアンチエリアス
の方法により代わってくるが、前述したグプタ・スプロ
ールの方法では平方根、乗算などが必要となる。このよ
うな場合は、テーブルを用いて計算を簡略化することな
どの改善方法をとる。
【0048】次に、本実施形態の動作を説明する。
【0049】MPU1は、直線の始点及び終点の座標と
直線の輝度をDDA2へ渡し、描画開始の信号を出力す
る。これを受けたDDA2は描画するピクセルのX−Y
座標及び輝度を生成し、直線を描画していく。
【0050】まず、DDA2は描画するピクセルの輝度
を記憶手段6に書き込む。それと同時にDDA2は描画
する座標に対応したアドレスをフレームバッファ3に出
し、既に描画されているピクセルの輝度データを読み出
し、記憶手段7に書き込む。
【0051】次いで、比較器8は、記憶手段6と記憶手
段7内の輝度データの大小比較を行い、記憶手段6の輝
度値が大きいとき、つまりこれから描画する方が明るい
とき、フレームバッファ3へ活性化された書き込み信号
WRを出力する。その結果、トライステートバッファ9
が出力状態となり、記憶手段6の値、つまりこれから描
画するDDA2で生成されたピクセルの輝度がフレーム
バッファ3に書き込まれる。
【0052】一方、比較器8の前記大小比較により記憶
手段7の値の方が大きいとき、つまり既に描画されてい
る方が明るいときは、フレームバッファ3への書き込み
信号WRは活性化しない。その結果、トライステートバ
ッファ9は非出力状態となり、記憶手段6の値、すなわ
ちこれから描画するDDA2で生成されたピクセルの輝
度はフレームバッファ3に書き込まれない。以上の動作
を直線を描画し終えるまで行う。
【0053】先の図14に示す例で説明すると、例え
ば、直線TBの3番目のビクセルB3のグラデーション
をかけたピクセルB3”が、既に描画されている直線T
Aの2番目のピクセルA2のグラデーションをかけたピ
クセルA2’の上に描画する時、ピクセルB3”がピク
セルA2’より暗いと、描画した直線が不自然に見え
る。そこで、ピクセルB3”を描画する前に、ピクセル
A2’の輝度値を読み出してきて、ピクセルB3”とピ
クセルA2’の輝度値を比較して、ピクセルB3”が明
るい場合はピクセルB3”を描画し、ピクセルA2’が
明るい場合はピクセルB3”は描画しないようにする。
このように描画するピクセルと既に描画されているピク
セルの明るさを比べて、これから描画するピクセルが、
既に描画されているピクセルより明るい時だけそのピク
セルを描画する。
【0054】このように、本実施形態においては、複数
の直線のアンチエリアシングを行なった場合に、先の図
14に示すように直線が接近または交差してピクセルが
重なったときでも、常に明るいピクセルが描画されるの
で、描画された直線は不自然に見えることはなくなる。
【0055】図4は、図1中の比較器8の他の構成例
(第1の例)を示す図である。
【0056】上記した比較器8は、グレースケール用と
して構成されたものであったが、本例では、ピクセルが
色を持っている場合の比較器つまりR,G,B(赤、
緑、青)対応の比較器を示す。
【0057】この比較器8は、R,G,Bそれぞれ専用
に減算器21,22,23を持ち、各々の色同士で比較
し、その結果を多数決回路24で判断し、書き込み信号
WRを生成する。各減算器21,22,23の一方入力
Ar,Ag,Abには、記憶手段6の輝度データSAが
共通して供給され、他方入力Br,Bg,Bbには、記
憶手段7の輝度データSBが共通して供給される。
【0058】減算器21は、入力Arと入力Brの差を
取り、Ar≧Brの時に1を、Ar<Brの時に0を出
力する。同様に、減算器22は、Ag≧Bgの時に1
を、Ag<Bgの時に0を出力し、減算器23は、Ab
≧Bbの時に1を、Ab<Bbの時に0を出力する。
【0059】多数決回路24は、3入力ANDゲート2
4a,24b,24c,24dと、これらの出力端に接
続された4入力ORゲート24eとで構成されている。
3入力ANDゲート24a〜24dのうちのANDゲー
ト24b〜24dは、それぞれ1つ入力がアクティブ
“L”となっている。そして、ORゲート24eの出力
端から書き込み信号WRが出力される。
【0060】このようなR,G,B(赤、緑、青)対応
のデータ処理装置は、図1に示すデータ処理装置におい
て、比較器8を図4に示すものに代えるだけで機能する
ことになる。
【0061】図5は、図1中の比較器8の他の構成例
(第2の例)を示す図である。
【0062】上記した比較器8は、グレースケール用ま
たはカラー(R,G,B)用いずれか一方として構成さ
れたものであったが、本例では、グレースケールとカラ
ー(R,G,B)の両方に対応した比較器を示す。本例
の比較器8は、図4に示した構成において、多数決回路
24のANDゲートを4入力にし、新たに2入力のAN
Dゲートを付加した。大小比較のための3個の減算は、
1個の減算器として使うために、それぞれの減算器にキ
ャリーを伝搬させるため、CinまたCoutを付加
し、キャリーの伝搬を制御するANDゲートを付加し
た。これらにグレースケール/カラーを切替える、モー
ド切替え信号MODを供給するように構成した。モード
切替え信号MODが”1”のときはカラーモードとな
り、”0”のときはグレースケールモードに切替えられ
る。このモード切替え信号MODはDDA2またはMP
U1で生成するものとする。
【0063】このようなカラー/グレースケールの両方
に対応したデータ処理装置は、図1に示すデータ処理装
置において、比較器8を図5に示したもの置き換えるこ
とで、機能することになる。
【0064】但し、R,G,Bとグレースケールのデー
タの対応は、例えば図6に示すようになっている必要が
ある。すなわち、グレースケール及びR,G,Bがそれ
ぞれ24ビットで表わされているものとする(R,G,
Bについては、Red,Green,Blueがそれぞ
れ8ビット)。この場合、グレースケールでは、bit
23側が最上位ビットで、R,G,Bでは上位ビット側
がRedで順にGreen,Blueとなっている必要
がある。
【0065】次に、本発明の第2実施形態を説明する。
【0066】図7は、本発明の第2実施形態に係るデー
タ処理装置の基本構成を示すブロック図である。
【0067】本実施形態は、3次元のグラフィックシス
テムに本発明を組み込んだ場合に例を示すものである。
本第2実施形態においても上記第1実施形態と同じアル
ゴリズムで直線のアンチエリアシングを行う。
【0068】図7に示すように、本実施形態のデータ処
理装置は、上記第1実施形態のMPU1、DDA2、フ
レームバッファ3、CRT制御装置4、及びCRT5と
それぞれ同様の機能を持ったMPU31、DDA32、
フレームバッファ33、CRT制御装置34、及びCR
T35を備えている。これに加えて、3次元グラフィッ
クスを実現するためのZバッファ36と、ピクセルの輝
度を比較する本発明の特徴を成す比較器37とが設けら
れている。
【0069】Zバッファ36は、ワークメモリとして使
われ、フレームバッファ33と全く同じデータが書き込
まれるようになっている。すなわち、DDA32のアド
レスポートは、フレームバッファ33及びZバッファ3
6の各アドレスポートに接続され、DDA32のランダ
ムポート制御用端子は、フレームバッファ33及びZバ
ッファ36の各ランダムポート制御用端子に接続され、
さらにDDA32の輝度データ用端子は、フレームバッ
ファ33及びZバッファ36の各ランダムポートに接続
されている。
【0070】そして、DDA32のシリアルポート制御
用端子は、Zバッファ36のシリアルポート制御用端子
に接続されている。Zバッファ36のシリアルポートは
比較器37の一方入力端に接続され、その他方入力端に
はDDA32の輝度データ用端子が接続されている。さ
らに、比較器37の出力端がフレームバッファ33及び
Zバッファ36の各ライトイネーブルに接続されてい
る。
【0071】上記のように、本発明は従来の3次元のグ
ラフィックスシステムに僅かな機能(比較器37)を付
け加えるだけで容易に実現することができる。
【0072】次に、第2実施形態の動作について説明す
る。
【0073】MPU31は、描画する直線の始点と終点
の座標をDDA32に渡し、直線描画を始める信号を出
力する。DDA32がこれを受けて、直線描画のための
ピクセルのデータを生成する。DDA32は、まず描画
するピクセルのアドレスを生成し、フレームバッファ3
3とZバッファ36に渡す。
【0074】すると、Zバッファ36からは、既に描画
したピクセルの輝度がシリアルポートを通して読み出さ
れ、比較器37の一方入力端に入力される。また、DD
A32より、これから描画するピクセルの輝度が同じく
比較器37の他方入力端に入力され、既に描画されてい
たピクセルの輝度とこれから描画するピクセルの輝度の
大小が比較される。
【0075】その比較した結果、これから描画するピク
セルの輝度が大きいとき、つまり明るいときは、比較器
37から書き込み信号WRが出力され、これから描画す
るピクセルがフレームバッファ33及びZバッファ36
に書き込まれる。また、既に書き込まれたピクセルの輝
度の方が明るいときは、書き込み信号WRは出されず、
フレームバッファ33及びZバッファ36には何も書き
込まれない。このようにして、直線を描画していく。
【0076】第2実施形態では、Zバッファ36をワー
クメモリとして使って、フレームバッファ33と全く同
じデータが書き込まれるようになっている。そのため、
既に描画したピクセルの輝度データを早く読み出せ、こ
れから描画するピクセルの輝度データと直ぐに比較がで
きる。
【0077】さらに、上記第1実施形態のように読み出
した輝度データを記憶手段に一時保持させないで、比較
器37に直接入力して書き込み信号WRを出しているの
で、高速に処理を行なうことができる。
【0078】また、第2実施形態でも、図4に示す比較
器を使えばカラーのデータも扱え、さらに図5に示す比
較器を使用すれば、カラー/グレイスケール両方のデー
タにも対応できる。
【0079】次に、本発明の第3実施形態を説明する。
【0080】上記第1及び第2実施形態では、DDA
は、アンチエリアスのために3点描画するが、本実施形
態は、このDDAのアルゴリズムを変えて、2点描画す
ることでアンチエリアスを行うようにしたものである。
【0081】例えば2点描画するアルゴリズムは、図8
に示すようになる。
【0082】図8は、1度に2ピクセル描画する直線の
アンチエリアシングのためのアルゴリズムをC言語ライ
クで記述した例を示す図である。
【0083】本例は、座標(X0,Y0)から座標(X
1,Y1)までの直線を輝度I0で描画する場合を示す
もので、描画する輝度は、dM,dx,dyなどの関数
で表され、関数fはそれぞれのアンチエリアスの方法に
より決定し、ここでは輝度IはI0*f(dM,Y)で
決定されることとする。
【0084】まず、同図において、アンチエリアシング
を行う直線の描画が開始されると(ステップS31)、
まず、その初期化として次の設定を行う。Xの変化量d
xをX1−X0に(ステップS32)、Yの変化量dy
をY1−Y0にそれぞれ設定し(ステップS33)、さ
らに、YのXに対する単位変化量deltaYをdy/
dxに(ステップS34)、Xの初期座標をX0に(ス
テップS35)、Yの初期座標Y0に(ステップS3
6)それぞれ設定する。加えて、ピクセルの中心から直
線の中心までの距離dMの初期値として0.5を設定し
(ステップS37)、またピクセルの明るさIをI0に
設定する(ステップS38)。
【0085】次いで、直線の発生を行う。そのために、
XをX0からX1まで増加させる(ステップS39)。
その間に、2点を描画するアンチエリアスを行う。すな
わち、dMが正であると(ステップS40)、(X,
Y)と(X,Y+1)を描画する(ステップS41,S
42)。また、dMが負であると(ステップS43)、
(X,Y)と(X,Y−1)を描画する(ステップS4
4,S45)。そして、deltaYを蓄積し(ステッ
プS46)、dMが1を越えたら(ステップS47)、
Yを+1インクリメントし(ステップS48)、さらに
dMをリセットして(ステップS49)、終了する。
【0086】このように、dMは直線との距離を表すも
のであるので、このdMの値を使って描画を行ってい
る。dM>=0のときは、描画するピクセルとその上側
のピクセルを描画し、dM<0のときは、描画するピク
セルとその下側のピクセルを描画する。ピクセルの輝度
(色)値は、これもdMの値を使い、直線が幅を持って
いると考えると、dMは直線のピクセル占有率と考える
ことができる。図9(a)は、このルールに従って直線
TAを描画した例を示している。
【0087】なお、図9(a)中の直線TAのピクセル
は、図9(b)に示すように四角で表されている。ま
た、これらのピクセルの輝度は、図9(c)に示すよう
に5階調の輝度値で表され、さらに図9(a)中の各々
のピクセル中に示した数字はピクセルが描画される順番
で、数字に付いている「’」は同時に描画されるピクセ
ルを表わしている。
【0088】上記2点描画によるアンチエリアスを行う
直線描画は、上記図1または図7に示す構成において、
DDA2のアルゴリズムを変えるだけで実現することが
できる。このようなの2点描画の場合においても、直線
が接近または交差してピクセルが重なったとき、常に明
るいピクセルが描画されるので、描画された直線は不自
然に見えることはなくなる。
【0089】
【発明の効果】以上詳細に説明したように、発明によ
れば、複数の直線のアンチエリアシングを行なった場合
に、直線が接近または交差してピクセルが重なったとき
でも、アンチエリアシングが正しく行われ、描画された
直線が不自然に見えるのを回避することが可能になる。
【0090】
【0091】
【0092】
【0093】
【0094】
【0095】
【0096】
【図面の簡単な説明】
【図1】本発明の第1実施形態に係るデータ処理装置の
基本構成を示すブロック図である。
【図2】図1中の比較器8の構成図である。
【図3】第1実施形態に係るアルゴリズムをC言語ライ
クで記述した例を示す図である。
【図4】図1中の比較器8の他の構成例(第1の例)を
示す図である。
【図5】図1中の比較器8の他の構成例(第2の例)を
示す図である。
【図6】図5の例におけるR,G,Bとグレースケール
のデータの対応を示す図である。
【図7】本発明の第2実施形態に係るデータ処理装置の
基本構成を示すブロック図である。
【図8】本発明の第3実施形態に係るアルゴリズムをC
言語ライクで記述した例を示す図である。
【図9】第3実施形態に係る直線描画例を示す図であ
る。
【図10】DDAによる直線の発生を示す図である。
【図11】図10に示す直線を描画する際のアルゴリズ
ムをC言語ライクで記述した例を示す図である。
【図12】従来のアンチエリアシングを行った直線描画
例を示す図である。
【図13】従来のデータ処理装置の要部構成図である。
【図14】アンチエリアシングを行った直線が接近した
例を示す図である。
【符号の説明】
1,31 MPU 2、32 DDA 3,33 フレームバッファ 4,34 CRT制御装置 5,35 CRT 6,7 記憶手段 8,37 比較器 36 Zバッファ WR 書き込み信号

Claims (7)

    (57)【特許請求の範囲】
  1. 【請求項1】 表示装置に表示する図形をビットマップ
    に対応して記憶する記憶装置と、アンチエリアス機能を
    持った直線のデータを生成し、この直線のデータを前記
    記憶装置のビットマップ上に描画するデータ生成手段と
    を備えたデータ処理装置において、 これから描画されるピクセルに対応した前記記憶装置の
    アドレスから、既に描画されている色値を読み出す読み
    出し手段と、 前記記憶装置から読み出されたピクセルの色値とこれか
    ら描画されるピクセルの色値との大小比較を行い、これ
    から描画されるピクセルの色値の方が大きいときのみ、
    書き込み信号を出力する比較手段とを設け、 前記記憶装置は、前記比較手段から前記書き込み信号を
    受けたときに、これから描画されるピクセルの色値を書
    き込むように構成し、前記比較手段は、赤、緑、青の色値に対応してそれぞれ
    前記大小比較を行う第1、第2及び第3の比較器と、こ
    れら第1、第2及び第3の比較器の各比較結果の多数決
    をとり、その多数決結果に応じて前記書き込み信号を生
    成する多数決回路とで構成した ことを特徴とするデータ
    処理装置。
  2. 【請求項2】 前記データ生成手段は、アンチエリアシ
    ングを施すために、直線を描画する方向に対して上下方
    向に3ピクセルを描画しその色値を調節して2点間を結
    ぶ直線のデータを生成する構成にしたことを特徴とする
    請求項1記載のデータ処理装置。
  3. 【請求項3】 前記データ生成手段は、アンチエリアシ
    ングを施すために、直線を描画する方向に対して上下方
    向に2ピクセルを描画しその色値を調節して2点間を結
    ぶ直線のデータを生成する構成にしたことを特徴とする
    請求項1記載のデータ処理装置。
  4. 【請求項4】 表示装置に表示する図形をビットマップ
    に対応して記憶する記憶装置と、前記記憶装置のビット
    マップ上で2点間を結ぶ直線を描画するために、その描
    画されるピクセルのアドレスとその色値を生成する色
    生成手段と、この色値生成手段によって生成された色
    を、該色値生成手段によって生成された前記記憶装置の
    アドレスにピクセルとして描画する描画実行手段と、こ
    の描画実行手段で描画されるピクセルの色値をアンチエ
    リアシングのための所定の条件に応じて変化させる色
    変化手段とを備えたデータ処理装置において、 これから描画されるピクセルに対応した前記記憶装置の
    アドレスから、既に描画されている色値を読み出す読み
    出し手段と、 前記記憶装置から読み出されたピクセルの色値とこれか
    ら描画されるピクセルの色値との大小比較を行い、これ
    から描画されるピクセルの色値の方が大きいときのみ、
    書き込み信号を出力する比較手段とを設け、 前記記憶装置は、前記比較手段から前記書き込み信号を
    受けたときに、これから描画されるピクセルの色値を書
    き込むように構成にし、前記比較手段は、赤、緑、青の色値に対応してそれぞれ
    前記大小比較を行う第1、第2及び第3の比較器と、こ
    れら第1、第2及び第3の比較器の各比較結果の多数決
    をとり、その多数決結果に応じて前記書き込み信号を生
    成する多数決回路とで構成した ことを特徴とするデータ
    処理装置。
  5. 【請求項5】 表示装置に表示する図形をビットマップ
    に対応して記憶する記憶装置と、前記記憶装置のビット
    マップ上で2点間を結ぶ直線を描画するために、その描
    画されるピクセルのアドレスとその色値を生成する色
    生成手段と、この色値生成手段によって生成された色
    を、該色値生成手段によって生成された前記記憶装置の
    アドレスにピクセルとして描画する描画実行手段と、こ
    の描画実行手段で描画されるピクセルの色値をアンチエ
    リアシングのための所定の条件に応じて変化させる色
    変化手段とを備えたデータ処理装置において、 これから描画される前記記憶装置のピクセルの色値を記
    憶する第1の記憶手段と、 これから描画される前記ピクセルに対応した前記記憶装
    置のアドレスから、既に描画されている色値を読み出し
    て記憶する第2の記憶手段と、 前記第1の記憶装置中の色値と前記第2の記憶装置中
    値との大小比較を行い、これから描画するピクセル
    値の方が大きいときのみ、書き込み信号を出力する比
    較手段とを設け、 前記記憶装置は、前記比較手段から前記書き込み信号を
    受けたときに、これから描画するピクセルの色値を書き
    込むように構成にし、前記比較手段は、赤、緑、青の色値に対応してそれぞれ
    前記大小比較を行う第1、第2及び第3の比較器と、こ
    れら第1、第2及び第3の比較器の各比較結果の多数決
    をとり、その多数決結果に応じて前記書き込み信号を生
    成する多数決回路とで構成した ことを特徴とするデータ
    処理装置。
  6. 【請求項6】 前記色値生成手段は、直線を描画する方
    向に対して上下方向に3ピクセルのアドレスとその色
    を生成することを特徴とする請求項4または5記載のデ
    ータ処理装置。
  7. 【請求項7】 前記色値生成手段は、直線を描画する方
    向に対して上下方向に2ピクセルのアドレスとその色
    を生成することを特徴とする請求項4または5記載のデ
    ータ処理装置。
JP25903596A 1996-09-30 1996-09-30 データ処理装置 Expired - Lifetime JP3330030B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP25903596A JP3330030B2 (ja) 1996-09-30 1996-09-30 データ処理装置
US08/941,000 US5898440A (en) 1996-09-30 1997-09-30 Method of and apparatus for processing graphics data

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP25903596A JP3330030B2 (ja) 1996-09-30 1996-09-30 データ処理装置

Publications (2)

Publication Number Publication Date
JPH10105724A JPH10105724A (ja) 1998-04-24
JP3330030B2 true JP3330030B2 (ja) 2002-09-30

Family

ID=17328437

Family Applications (1)

Application Number Title Priority Date Filing Date
JP25903596A Expired - Lifetime JP3330030B2 (ja) 1996-09-30 1996-09-30 データ処理装置

Country Status (2)

Country Link
US (1) US5898440A (ja)
JP (1) JP3330030B2 (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2885239B1 (ja) * 1998-02-27 1999-04-19 日本電気株式会社 画像処理装置
WO1999052072A1 (fr) * 1998-04-07 1999-10-14 Omron Corporation Dispositif et procede de traitement d'images, support de stockage de programme pour traitement d'images, et dispositif d'inspection
US7061507B1 (en) * 2000-11-12 2006-06-13 Bitboys, Inc. Antialiasing method and apparatus for video applications
TWI269239B (en) * 2002-03-05 2006-12-21 Silicon Integrated Sys Corp Fast line-plotting method
FR2869146B1 (fr) * 2004-04-20 2006-09-15 Thales Sa Procede de generation graphique de lignes a extremites arrondies
CN101887592B (zh) * 2010-07-30 2011-11-02 中国测绘科学研究院 一种矢量图形地图符号的绘制方法
US9098938B2 (en) * 2011-11-10 2015-08-04 The Directv Group, Inc. System and method for drawing anti-aliased lines in any direction

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5528738A (en) * 1993-10-06 1996-06-18 Silicon Graphics, Inc. Method and apparatus for antialiasing raster scanned, polygonal shaped images
JPH07160899A (ja) * 1993-12-07 1995-06-23 Fujitsu Ltd 多角形分割描画方法および装置
US5714986A (en) * 1995-01-31 1998-02-03 Compag Computer Corporation Run slice line draw engine with enhanced line configurations

Also Published As

Publication number Publication date
JPH10105724A (ja) 1998-04-24
US5898440A (en) 1999-04-27

Similar Documents

Publication Publication Date Title
JP2621568B2 (ja) 図形描画方法およびその装置
US20020122036A1 (en) Image generation method and device used therefor
US6683617B1 (en) Antialiasing method and image processing apparatus using same
EP1847965A1 (en) Plotting device and plotting method
US5877769A (en) Image processing apparatus and method
JPH0863608A (ja) コンピュータ・グラフィック・システム及びフレーム・バッファ使用方法
US6271848B1 (en) Image processing device, image processing method and storage medium for storing image processing programs
US7362339B2 (en) Image processing method and apparatus
US8064734B2 (en) Image processing device image processing method, and computer program
JP4707782B2 (ja) 画像処理装置およびその方法
JP3330030B2 (ja) データ処理装置
JP2976945B2 (ja) 画像描画装置
US6549209B1 (en) Image processing device and image processing method
JPH03138783A (ja) 陰面消去回路
JP2001126086A (ja) ビデオゲームにおける立体モデル表示方法及び装置、ゲーム装置並びにビデオゲーム用立体モデル表示プログラムを格納したコンピュータ読み取り可能な記録媒体
US20030059114A1 (en) Rendering processing method and device, semiconductor device, rendering process program and recording medium
JPH05249953A (ja) 画像表示装置
US5831634A (en) Three-dimensional graphic controller
JP3052839B2 (ja) 画像処理装置及びその処理方法
EP0593012B1 (en) Video picture display device and method for controlling video picture display
JPH06223199A (ja) 画像合成装置
JP3626709B2 (ja) アンチエイリアス処理装置
JPH0822556A (ja) テクスチャマッピング装置
JPH10149431A (ja) 画像処理方法
JPH11339069A (ja) 画像合成装置および画像合成方法

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080719

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20090719

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20090719

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20100719

Year of fee payment: 8