JPH08138067A - 線分アンチエイリアシング装置 - Google Patents

線分アンチエイリアシング装置

Info

Publication number
JPH08138067A
JPH08138067A JP6280180A JP28018094A JPH08138067A JP H08138067 A JPH08138067 A JP H08138067A JP 6280180 A JP6280180 A JP 6280180A JP 28018094 A JP28018094 A JP 28018094A JP H08138067 A JPH08138067 A JP H08138067A
Authority
JP
Japan
Prior art keywords
reduction rate
line segment
pixel
register
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.)
Withdrawn
Application number
JP6280180A
Other languages
English (en)
Inventor
Hiroshi Nakayama
寛 中山
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP6280180A priority Critical patent/JPH08138067A/ja
Publication of JPH08138067A publication Critical patent/JPH08138067A/ja
Withdrawn legal-status Critical Current

Links

Landscapes

  • Controls And Circuits For Display Device (AREA)
  • Image Processing (AREA)
  • Image Generation (AREA)

Abstract

(57)【要約】 【目的】 理論線の上下又は左右の予め定められた幅の
画素の位置と理論線との距離を、計算せずに低減率を求
め、高速にアンチエイリアシング処理を行う装置を提供
すること。 【構成】 線分を出力手段に表示するために、線分の各
画素のデータをフレームバッファに記憶させるグラフィ
ックス装置において、線分の副軸方向に対して複数個の
画素データを順次発生させる画素発生手段31、32
と、各画素の輝度低減率を保持する低減率レジスタ33
1と、前記画素発生手段の動作に同期して前記低減率レ
ジスタ331から必要な低減率データを取り出して各画
素データを出力する出力手段330を具備した副軸処理
手段を設けたことを特徴とする。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明はグラフィックス処理装置
に係り、特に線分を表示するときに生ずるギザギザつま
りエイリアシングを抑制して表示するデータの品質を向
上する線分アンチエイリアシング装置に関する。
【0002】一般にグラフィックス処理では、ユーザが
表示したい図形の形状や色、輝度などの情報を図形リス
トとして記述し、グラフィックス処理装置は図形リスト
を記述された順番に処理して、表示用の記憶手段に色や
輝度を格納することにより、最終的に絵を表示させてい
る。このようなグラフィックス処理装置は、電子回路や
部品の設計などのCAD分野等に用いられている。
【0003】
【従来の技術】このようなグラフィックス処理装置で
は、CRTディスプレイ装置などの表示手段に線分を表
示することが重要な技術である。近年の装置では、表示
画面の解像度に合わせたフレームバッファに線分データ
を書き込み、そのデータをCRTディスプレイのラスタ
走査に同期して読み出し、表示するのが一般的である。
【0004】例えばワークステーションにおいて128
0×1024ドットの白黒ディスプレイでは、1280
×1024×1ビットのメモリ配列に表示データを格納
する。1280×1024の各単位は画素と呼ばれ、各
画素に「1」か「0」のデータを書き込むことによって
文字データや図形データを表示する。
【0005】しかしこの方式では、メモリに離散的にデ
ータを格納するため、線分の表示においてエイリアシン
グと呼ばれるギザギザが発生して表示画像の品質を低下
させる。
【0006】その例を図11により説明する。図11の
点線の格子はフレームバッファの各画素を表す。図11
(A)の実線Lは使用者の表示したい線分データを意味
する。使用者が表示したい線分は、本来図11(A)に
示すように、連続した実線である。ところがデータの格
納時においては、図11(B)に示すように、離散的配
列であるフレームバッファの各画素に黒くデータを書き
込むため、線分は階段状に表示される。この現象は一般
的にエイリアシングと呼ばれている。
【0007】このようなエイリアシングを除去する技術
としてアンチエイリアシングと呼ばれる表示方法が提案
されている。このアルゴリズムを図11及び図12を用
いて説明する。図11の格子状の配列において、横方向
をX軸、縦方向をY軸と定義する。図11の線分の場
合、線分の傾きは縦方向の方が小さく、このような線分
を主軸X、副軸Yの横線分という。このような横線分で
は、横方向に1ドットずれるとき、Y座標が±1ドット
以内の範囲で変化する。なお縦線分は横線分のXとYの
役目を逆転すれば実現可能であるので、以下の説明では
横線分についてのみ説明する。
【0008】図11(B)に示す如く、通常の線分の描
画においては、横線分の左端点から各画素の描画を行
い、横方向に1ドット進行するに従い、理論線L上のY
座標に最も近い画素を選択し、その画素にデータを格納
する。
【0009】一方、アンチエイリアシングと呼ばれるア
ルゴリズムは、図12に示す如く、通常の描画方法によ
り描画される画素〔●〕に加え、上下1画素〔★〕ずつ
を描画する。つまりあるX座標に対してY軸方向に3画
素が描画されることになる。この際描画する画素の中心
点と、理論線Lとの間の距離を求め、その距離に応じて
描画する画素の輝度を変化させる。実際には、描画する
画素が理論線Lから離れるほど輝度を低くする。このよ
うにして見かけ上、線分の表示をぼかしてエイリアシン
グの影響を低減させる。
【0010】なお、アンチエイリアシングを実現するた
めには、中間調の輝度が必要であるため、各画素で8ビ
ット程度の輝度情報が必要である。
【0011】
【発明が解決しようとする課題】最近のグラフィックス
装置では、安価なメモリにより、この程度のメモリ量は
問題となっていない。しかしこのアルゴリズムを実現す
るためには、各画素ごとに輝度の低減率を計算する必要
があり、多大な演算量を必要とする。
【0012】従来ではこの演算量を低減するため、テー
ブルを用いて各画素ごとに低減率を求めているが、それ
でも各画素毎に理論線Lとの距離を1つ1つ計算するの
で、通常の描画に比較して性能が著しく低減するという
問題点があった。本発明の目的は、これを改善した、簡
単な構成で高速なアンチエイリアシング装置を提供する
ことである。
【0013】
【課題を解決するための手段】前記目的を達成するた
め、本発明では、図1(A)に示す如く、制御部1と、
主軸処理部2と、副軸処理部3を設ける。主軸処理部2
は、横線分の場合、図1(B)に示す理論線LがX軸
(主軸)方向に増加したときにそのX座標の増分加算
と、Y座標の増分加算と、画素の輝度の低減率を算出す
るものであり、X座標演算部21、Y座標演算部22、
低減率演算部23を有する。
【0014】副軸処理部3は、横線分の場合Y軸(副
軸)方向の増加分加算と、理論線Lの存在する画素とそ
の上下2画素との合計3画素の輝度の低減率を算出する
ものであり、X座標演算部31、Y座標演算部32、低
減率演算部33を有する。
【0015】また低減率演算部23には参照テーブル2
31が設けられ、セレクタ230からのアドレスにより
参照されたとき、例えば8ビットのサイズの、副軸方向
の3画素分の低減率データを出力する。
【0016】制御部1は、理論線Lの始点座標(Xs、
Ys)とX増分値(1.0)、Y増分値(dy)を主軸
処理部2に送出し、またX増分値(0.0)とY増分値
(1.0)とシフト量(この例では8ビット)を副軸処
理部3に出力する。このとき、横線分の場合、始点のX
座標の小数部フィールドは0として入力される。また主
軸処理部2のY座標演算部22に入力されるY増分値
(dy)は、理論線Lにおいて、X座標が1.0だけ増
分したときのY座標の増分値を示す。
【0017】
【作用】初め、制御部1は主軸処理部2のX座標演算部
21に対して理論線LのX始点XsとX増分値(1.
0)を送出し、X始点レジスタ211、X増分レジスタ
213にセットされる。同時に制御部1はY座標演算部
22に対して理論線LのY始点YsとY増分値dyを送
出し、Y始点レジスタ221、Y増分レジスタ223に
セットされる。なお横線分の場合、このときX始点レジ
スタ211にセットされるX始点XsのX座標の小数部
フィールドは0として入力される。
【0018】また制御部1は、副軸処理部3のX座標演
算部31に対してはX増分値(0)を送出してX増分レ
ジスタ313にこのゼロがセットされ、Y座標演算部3
2に対してはY増分値(1.0)を送出してY増分レジ
スタ23にこの1.0がセットされ、低減率演算部33
に対しては参照テーブル231に記入された低減率のサ
イズが8ビットであることにより、シフト量8を送出し
てシフト量レジスタ333にこの8がセットされる。
【0019】最初は、主軸処理部2のX始点レジスタ2
11には理論線LのX始点Xs(整数部のみのため図1
(B)に示す画素E00の中心値のX座標X0 である)
がセットされ、X増分レジスタ213には増分値1.0
がセットされ、Y始点レジスタ221には理論線LのY
始点として(Ys−1)がセットされ、Y増分レジスタ
223にはY増分値dyがセットされる。そして横線分
のときセレクタ230はY座標演算部22からの出力を
選択する。
【0020】従って、主軸処理部2のX座標演算部21
からはX始点Xsの整数部X0 が出力されてX座標演算
部31のX始点レジスタ311にセットされ、Y座標演
算部22からはY始点(Ys−1)が出力されてY座標
演算部32のY始点レジスタ321にセットされ、参照
テーブル231はこのY始点Ysの小数部をアドレスと
してアクセスされたことにより得られる、図1(B)に
示す画素E00、E01、E02に対する3つの低減率
が出力され低減率レジスタ331にセットされる。
【0021】それ故、最初に副軸処理部3のX座標演算
部31より図1(B)における画素E00〜E02のX
始点X0 が出力され、Y座標演算部32よりYs−1が
出力され、また低減率レジスタ331より画素E00に
対する減衰率が出力される。
【0022】これにより出力制御部4では、画素E00
に対し、理論線Lの輝度にこの減衰率を乗じた値の輝度
で出力表示を行う。次にY座標演算部32では加算器3
20によりY始点レジスタ321の値に対してY増分レ
ジスタ323にセットされている数値1が加算されて
(Ys−1)+1=YsがY始点レジスタ321にセッ
トされ、これが出力制御部4に出力される。
【0023】このとき、X座標演算部31でも、加算器
310により同様な演算が行われるが、このときX増分
レジスタにセットされた数値は0であるので、0加算が
行われる。従ってY座標演算部32から前記Ysが出力
されたときX座標演算部31からX0 が出力されるの
で、今度は画素E01に対する低減率が低減率レジスタ
331より出力される。
【0024】それからY座標演算部32では更に+1加
算が行われYs+1がY始点レジスタ321にセットさ
れ、この値が出力制御部4に出力される。このとき、X
座標演算部31からX0 が出力されるので、今度は画素
E02に対する低減率が、低減率レジスタ331より出
力制御部4に出力され、この低減率により画素E02が
表示制御される。
【0025】この間に、主軸処理部2では加算器210
によりX始点レジスタ211にセットされたX0 とX増
分レジスタ213にセットされた数値1が加算されてX
0 +1がX始点レジスタ211にセットされ、加算器2
20によりY始点レジスタ221にセットされたYs−
1とY増分レジスタ223にセットされたY増分値dy
が加算されて(Ys+dy−1)がY始点レジスタ22
1にセットされる。
【0026】従って、前記の如く、画素E01、E0
0、E02に対する低減率がこれら画素データに同期し
て順次出力制御部4に出力されたあと、今度は同様にし
て画素E11、E10、E12に対する低減率が出力制
御部4に出力される。このようにして、順次アンチエイ
リアシングのためのデータが得られ、アンチエイリアシ
ングが行われる。
【0027】
【実施例】本発明の一実施例を図1〜図5に基づき詳述
する。制御部1は、図1に示す線分アンチエイリアシン
グ装置全体の制御と線分データの入力処理を行うもので
あり、図2に示す如き形式のデータが入力される。この
データは、横線分か縦線分かを示すヘッダHと、理論線
のX座標始点Xs、Y座標始点Ysと、終点座標E(横
線分の場合はそのX座標XE 、縦線分の場合はそのY座
標YE )と、線分の傾きd(横線分の場合は縦方向つま
りY増分値dy、縦線分の場合は横方向つまりX増分値
dx)等で構成される。
【0028】座標データ及び傾きデータは、整数部フィ
ールドと、理論線を精度よく表現するため、線分アンチ
エイリアシング装置として物理的に許容される範囲の小
数部フィールドを持つ。ただし横線分の場合、X座標の
小数部フィールドは0として入力される。また縦線分の
場合、Y座標の小数部フィールドが0として入力され
る。これらのデータの生成は、一般的なCPUで行われ
る。
【0029】実際には、この入力段階において、始点の
Y座標については本来の値に0.5を加えておく。これ
は、Y座標の増分加算を行った結果に対して、四捨五入
する処理をするのと同等の効果を簡単に実現するため、
予めY座標に0.5を加えておき小数部を切捨てる、つ
まり整数部だけを取り出すという、一般的な方式であ
る。
【0030】さらに本発明では、それから数値1.0を
引いたものを始点のY座標入力とする。これにより、副
軸処理部3のY座標演算部32において、Y増分として
+1を行うことにより本来の理論線の位置及びそれに+
1、−1した位置の、副軸方向の連続3画素の位置を求
めることができる。
【0031】即ち、本発明では、四捨五入処理を行うた
めに、予めY座標に0.5を加えておき、整数部だけを
取り出し、さらにそれから1.0を引いたものつまり、
本来のY座標から0.5を引いたものを始点のY座標入
力とする。これにより、図3に示す実線を本来の理論線
とした場合、本発明の主軸処理部2で増分加算を行うの
は点線L′で示す線分である。
【0032】制御部1は、前記各パラメータをX始点レ
ジスタ211、X増分レジスタ213、Y始点レジスタ
221、Y増分レジスタ223に設定してX座標演算部
21、Y座標演算部22を起動する。ここで横線分の場
合、前記の如く、X増分レジスタ213に数値1.0を
設定する。X座標演算部21、Y座標演算部22は、起
動がかかるとX始点レジスタ211、Y始点レジスタ2
21のデータをそれぞれ副軸処理部3に出力する。そし
てX座標演算部21では、加算器210によりX始点レ
ジスタ211にセットされたデータとX増分レジスタ2
13にセットされたデータが加算されて、これが新たな
始点データとしてX始点レジスタ211にセットされ
る。
【0033】同様にY座標演算部22では、加算器22
0によりY始点レジスタ221にセットされたデータと
Y増分レジスタ223にセットされたデータ即ちY増分
値dyが加算されて、これが新たな始点データとしてY
始点レジスタ221にセットされる。但し、副軸処理部
3がビジーの場合、主軸処理部2は出力処理の途中で副
軸処理部3が非ビジーになるまでウエイトする。
【0034】次に低減率演算部23の参照テーブル23
1のデータと参照方法について説明する。図4はアンチ
エイリアシングを施される各画素と理論線Lとの距離を
示すものである。図4において、各画素の中心〔●〕が
X、Y座標の整数の位置を示す。
【0035】図4において、X=1.0とX=2.0で
は理論線Lからの距離の計算方式が異なる。座標X=
1.0上では縦方向の3画素の中心画素(Y=2.0)
と理論線LのY座標を比較するとY=2.0の位置の方
が大きく、図4における距離d01、d02、d03は
次式により算出される。
【0036】 d01=3画素中心のY座標−理論線のY座標 d02=1.0−d01 }・・・ d03=1.0+d01 また座標X=2.0上では、縦方向の3画素の中心画素
(Y=2.0)理論線LのY座標を比較すると、Y=
2.0の方が小さく、図4における距離d11、d1
2、d13は次式により算出される。
【0037】 d11=理論線のY座標−3画素中心のY座標 d12=1.0+d11 }・・・ d13=1.0−d11 となる。
【0038】アンチエイリアシング処理では、このよう
にして求められた距離を用いて、各画素毎にテーブルを
参照するのが一般的であるが、本発明ではこれらの処理
を単純化して扱うため、参照テーブル231を以下のよ
うに構成する。
【0039】まず距離d01やd11に対して、図5
(A)に示す如く、3画素分の低減率をパッキングした
値を参照テーブル231のエントリとする。図5(A)
では、各低減率を8ビットで表現している。
【0040】しかし前記式、から明らかなように、
距離d01とd11とは値が同一でも参照する値が異な
るため、これらを区別して扱うように参照テーブル23
1を工夫する必要がある。
【0041】実際には、参照テーブル231を、図5
(B)に示す如く、231−0と231−1とに2区分
しておき、Y座標の小数部の最上位ビット(0.5を表
現するビット)が0か1かにより参照テーブル231の
アクセス先を区分231−0か区分231−1かに変更
する。以下その理由について説明する。
【0042】例えば図4において、X=1.0における
理論線L上の(★)のY座標は、 1.5≦Y<2.0 であり、X=2.0における理論線L上の(☆)のY座
標は、 2.0≦Y<2.5 である。
【0043】本発明では、前記の如く、Y座標から予め
0.5が減算されているので、X=1.0では 1≦Y<1.5 であり、X=2.0では、 1.5≦Y<2.0 となる。
【0044】ここで、この小数部だけを取り出すと、X
=1.0では、 .0〜.4999・・・ ・・・ となり、X=2.0では、 .5〜.999・・・・ ・・・ となる。
【0045】従って、前記ととを区別することが、
前記式と式を区別することになるが、これはこの
とから明らかなように、の場合はY座標の小数部の
最上位ビットは0であり、の場合はY座標の小数部の
最上位ビットは1であるので、図5(B)に示す如く、
Y座標の小数部の最上位ビットが0のとき、前記式の
場合は参照テーブル231の区分231−0を参照し、
前記式の場合は区分231−1を参照すればよい。
【0046】図5(B)の例では、参照アドレスとして
Y座標の小数部の5ビットを使用している。そしてこの
参照テーブル231から得られた3つの低減率は、副軸
処理部3の低減率レジスタ331に出力される。
【0047】図1(A)に示す本発明の動作について、
横線分の例により説明する。制御部1に、図2に示す如
き形式のデータが入力される。これにより制御部1は、
主軸処理部2のX始点レジスタ211にX座標始点Xs
の整数部をセットし、X増分レジスタ213に増分値デ
ータ1.0をセットし、Y始点レジスタ221には本来
の値のY座標始点Ysより0.5を加えて1.0を引い
たもの、つまり本来の値より0.5を引いたものをセッ
トし、Y増分レジスタ223には傾きとして、横線分の
場合にはY増分値dyをセットする。
【0048】このときセレクタ230はY始点レジスタ
221にセットされたデータを出力し、これにより参照
テーブル231が参照される。図1(B)の理論線Lの
場合には、始点の場合は、前記式のケースに相当する
ので、図5(B)に示す区分231−1がアクセスされ
て、図5(A)に示すd11に対するLUTデータが出
力される。
【0049】また副軸処理部3の、X始点レジスタ31
1には、主軸処理部2のX始点レジスタ211より出力
されたX座標始点の整数部がセットされ、X増分レジス
タ313には制御部1より送出されたX増分値0がセッ
トされ、Y始点レジスタ321には主軸処理部2のY始
点レジスタ221より出力された、本来の値より0.5
を引いたY始点のデータがセットされ、Y増分レジスタ
323には制御部1より出力されたY増分値1.0が設
定される。
【0050】そして低減率レジスタ331には参照テー
ブル231より出力された8×3=24ビットのLUT
データがセットされ、シフト量レジスタ333には制御
部1より出力されたこの参照テーブル231のサイズに
依存した、シフト量8がセットされる。
【0051】このようにして、副軸処理部3のX座標演
算部31、Y座標演算部32、低減率演算部33は、そ
れぞれ各レジスタが設定されると制御部1からの指示に
より動作を開始する。主軸処理部2のX座標演算部2
1、Y座標演算部22、低減率演算部23も、同様にし
て動作を行う。
【0052】X座標演算部31では、動作を開始する
と、X始点レジスタ311にセットされた始点データ、
例えば図3におけるX0 を出力制御部4に出力するとと
もに、始点データとX増分レジスタ313にセットされ
たX増分値0が加算器310により加算され、この加算
値が新たな始点データとしてX始点レジスタ311にセ
ットされる。この出力と加算をさらに2回繰り返すと停
止する。従って、図3に示すX0 が3回出力される。
【0053】Y座標演算部32では、動作開始すると、
Y始点レジスタ321にセットされた始点データ、例え
ば図3におけるY0 を出力制御部4に出力するととも
に、始点データとY増分レジスタ323にセットされた
Y増分値dyが加算器320により加算され、この加算
値が新たな始点データとしてY始点レジスタ311にセ
ットされる。この出力と加算をさらに2回繰り返すと停
止する。従って、図3に示すY0 、Y0 +1、Y0 +2
が順次出力される。
【0054】低減率演算部33では、動作開始すると、
低減率レジスタ331にセットされた最初の8ビットの
低減率(図5(A)のd11に対する場合は、d12に
対する低減率)を出力するとともに、シフタ330はシ
フト量レジスタ333にセットされた8ビット分右シフ
トして再び低減率レジスタ331にセットし、次の8ビ
ット(d11に対する低減率)を出力する。このような
出力とシフトをさらに2回繰り返すと停止する。従って
例えばd12、d11、d13に対する低減率が前記画
素データの発生と同期して順次出力される。
【0055】出力制御部4は、このようにして、最初
は、座標値X0 と座標値Y0 と低減率d12を受け取
る。このとき、副軸処理部3のY座標演算部32から整
数部のみ出力することにより4捨5入されたY座標値Y
0 を得る。かくして得られた(X 0 、Y0 )と低減率d
12つまり画素E00とその低減率d12を出力し、こ
れに応じた表示制御が行われる。
【0056】次に出力制御部4は座標値X0 、Y0 +1
の整数部Y1 と低減率d11を受け取り、かくして得ら
れた(X0 、Y1 )と低減率d11つまり画素E01と
その低減率d11を出力し、これに応じた表示制御が行
われる。
【0057】同様にして3回目に画素E02とその低減
率d13が出力され、これに応じた表示制御が行われ
る。このようにして、画素E00、E01、E02に対
するアンチエイリアシングが行われる。この場合、座標
値及び低減率データは必要なビット幅のデータを外部に
出力することができる。
【0058】この間に主軸処理部2では、X座標演算部
21においてX始点レジスタ211にセットされた始点
データとX増分レジスタ213にセットされたX増分値
1.0が加算器210で加算され、得られたデータ、即
ち図3におけるX1 がX始点レジスタ211にセットさ
れ、これが副軸処理部3のX始点レジスタ311にセッ
トされる。
【0059】同様にY座標演算部22では、Y始点レジ
スタ221にセットされた始点データy0 とY増分レジ
スタ223にセットされたY増分値dyが加算器220
で加算され、得られたデータ(y0 +dy)、即ち図3
におけるy1 がY始点レジスタ221にセットされ、こ
れが副軸処理部3のY始点レジスタ321にセットされ
る。
【0060】また低減率演算部23では、前記y1 に基
づき、前記と同様に参照テーブル231をアクセスし、
LUTデータを出力し、これが副軸処理部3の低減率レ
ジスタ331にセットされる。
【0061】これにより、前記と同様の処理が行われ、
今度は、図3における画素E10、E11、E12に対
するアンチエイリアシングが行われる。このようなこと
を理論線Lの終端のX座標まで同様に行うことによりア
ンチエイリアシングが完了する。
【0062】本発明の第2実施例を図6により説明す
る。図6では、画素データ発生手段の入力情報を保持す
るレジスタ群及び各画素の低減率を保持するレジスタを
2面構成で持つ。即ち、主軸処理部2におけるX座標演
算部21ではX始点レジスタを211と211′、X増
分レジスタを213と213′の2面構成とし、Y座標
演算部22ではY始点レジスタを221と221′、Y
増分レジスタを223と223′の2面構成とする。
【0063】また副軸処理部3におけるX座標演算部3
1ではX始点レジスタを311と311′、X増分レジ
スタを313と313′の2面構成とし、Y座標演算部
32ではY始点レジスタを321と321′、Y増分レ
ジスタを323と323′の2面構成とする。また低減
率演算部33では低減率レジスタ331と331′の2
面構成とする。
【0064】このように構成することにより2面構成の
一方をデータ入力用とし他方を作業用とし、データ入力
用で受けたデータを作業用にコピーして加算処理とか、
シフト処理等を行う。
【0065】このように構成することにより、例えば、
副軸処理部3において、図3に示すX0 に関する処理、
つまり画素E00、E01、E02に対する演算処理を
実行中に、次のX1 に関するデータを主軸処理部2より
入力できる。このように、処理を実行中でも次の処理に
関するデータを受け取ることができ、連続的に処理を行
うことができるので、全体として高速処理が可能であ
る。
【0066】なお2面構成は、副軸処理部3のみでも充
分な高速処理が可能である。本発明の第3実施例を図7
に基づき説明する。図7に示す第3実施例では、前記図
6に説明した副軸処理部と同様に、副軸処理部103の
X座標演算部1031、Y座標演算部1032、低減率
演算部1033において、X始点レジスタ、Y始点レジ
スタ、低減率レジスタをそれぞれ入力用X始点レジスタ
1041と作業用X始点レジスタ1041′、入力用Y
始点レジスタ1051と作業用Y始点レジスタ105
1′、入力用低減率レジスタ1061と作業用低減率レ
ジスタ1061′の2面構成で持つ。また、X増分レジ
スタ、Y増分レジスタをそれぞれ入力用X増分レジスタ
1043と作業用X増分レジスタ1043′、入力用Y
増分レジスタ1053と作業用Y増分レジスタ105
3′の2面構成で持つ。
【0067】また出力制御部104に分配器105を設
け、例えばY座標の奇数、偶数に応じて2つのフレーム
バッファ制御装置110、111及び2つのフレームバ
ッファ112、113に出力を分配する。
【0068】即ち、X座標演算部1031、Y座標演算
部1032、低減率演算部1033等が動作を開始する
と、入力用X始点レジスタ1041の値を作業用X始点
レジスタ1041′にコピーし、入力用Y始点レジスタ
1051の値を作業用Y始点レジスタ1051′にコピ
ーし、入力用低減率レジスタ1061の値を作業用低減
率レジスタ1061′にコピーする。また、入力用X増
分レジスタ1043の値を作業用増分レジスタ104
3′にコピーし、入力用Y増分レジスタ1053の値を
作業用Y増分レジスタ1053′にコピーする。そして
これら各作業用のレジスタを用いて加算又はシフト動
作、及び出力動作を行う。
【0069】これによりX座標演算部1031、Y座標
演算部1032、低減率演算部1033等が動作中に、
次の3画素分の処理を行うためのデータを主軸処理部が
入力用X始点レジスタ1041、入力用Y始点レジスタ
1051、入力用低減率レジスタ1061、入力用X増
分レジスタ1043、入力用Y増分レジスタ1053に
設定することが可能になり、処理を高速化することがで
きる。
【0070】出力制御部104は、分配器105を設
け、例えばY座標の整数部の最下位1ビットの値により
偶数Y座標出力と奇数Y座標出力に出力を分配する。こ
のような分配器105を持つことにより、2つのフレー
ムバッファ制御装置110、111にデータを分配す
る。これはメモリアクセスが遅く、フレームバッファ制
御装置を並列に使用するような場合に効果がある。
【0071】この例では、Y座標の下位1ビットを用い
て分配制御したが、フレームバッファのメモリ構成によ
ってはX座標を用いてもよいし、また分配に関し下位の
複数ビットを用いて並列度を増してもよい。フレームバ
ッファ制御装置110、111は、分配器105から入
力される画素の低減率と理論線の輝度に基づいた輝度を
フレームバッファ112、113の画素の位置に記入す
る。
【0072】本発明の第4実施例を図8に基づき説明す
る。図8では副軸処理部3の出力X座標値、Y座標値及
び低減率を出力制御部114、115、116、117
に同時に出力し、出力制御部114〜117で選択され
たものをそれぞれフレームバッファ制御装置161〜1
64に出力してフレームバッファ171〜174のこれ
らX座標値、Y座標値で指示された画素に、その低減率
に基づきフレームバッファ制御装置で演算された輝度を
記入するものである。
【0073】前記図7に示す第3実施例では、複数のフ
レームバッファ制御装置を介して複数のフレームバッフ
ァに対して出力する場合、フレームバッファ制御装置数
を増加することにより出力ピンの数が増加するので、こ
れをLSI化するとき問題となる。
【0074】しかし、図8に示す第4実施例によれば、
出力制御部114、115、116、117の単位で並
列化するので各出力制御部におけるピン数は増加せずに
すむ。
【0075】なお図8においては、出力制御部114に
比較器120と、マスク情報レジスタ121と、出力無
効制御部122が設けられ、比較器120においてマス
ク情報レジスタ121に記入されたマスク情報の下位2
ビットが副軸処理部3から出力されたY座標値と比較さ
れ、一致したとき比較器120は出力無効制御部122
を有効状態に制御し、副軸処理部3から出力されたX座
標値、Y座標値、低減率をフレームバッファ制御装置1
61に出力する。出力制御部115、116、117
も、選択値を除き出力制御部114と同様に構成されて
いる。
【0076】図8の例では、マスク情報レジスタ121
のマスク情報である下位2ビットが数値ゼロを示し、マ
スク情報レジスタ131のマスク情報である下位2ビッ
トが数値1を示し、マスク情報レジスタ141のマスク
情報である下位2ビットが数値2を示し、マスク情報レ
ジスタ151のマスク情報である下位2ビットが数値3
を示している。
【0077】従ってY座標値の下位2ビットが「00」
であれば、比較器120の出力により出力無効制御部1
22は出力有効状態となり、そのとき副軸処理部3より
出力されたX座標値、Y座標値、低減率を出力し、これ
らはフレームバッファ制御装置161に入力され、前記
X座標値、Y座標値で指示されたフレームバッファ17
1の画素に低減率に基づく輝度が記入される。
【0078】Y座標値の下位2ビットが「01」であれ
ば、比較器130の出力により出力無効制御部132は
そのときのX座標値、Y座標値、低減率を出力し、フレ
ームバッファ制御装置162にこれらが入力され、その
X座標値、Y座標値で指示されたフレームバッファ17
2の画素にこの低減率に基づく輝度が記入される。
【0079】Y座標値の下位2ビットが「10」であれ
ば、比較器140の出力により出力無効制御部142は
そのときのX座標値、Y座標値、低減率を出力し、フレ
ームバッファ制御装置163にこれらが入力され、その
X座標値、Y座標値で指示されたフレームバッファ17
3の画素にこの低減率に基づく輝度が記入される。
【0080】またY座標値の下位2ビットが「11」で
あれば、比較器150の出力により出力無効制御部15
2はそのときのX座標値、Y座標値、低減率を出力し、
フレームバッファ制御装置164にこれらが入力され、
そのX座標値、Y座標値で指示されたフレームバッファ
174の画素にこの低減率に基づく輝度が記入される。
【0081】上記図8に対する説明ではY座標の下位2
ビットを比較した例について説明したが、勿論出力制御
部の並列接続数に応じてこのマスク情報のビット数は変
更可能である。
【0082】本発明の第5実施例を図9により説明す
る。線分のアンチエイリアシング方式として、グラフィ
ックスの規格(例えばシリコングラフィックス社のG
L)では、各画素の本来の輝度と、フレームバッファの
対応する画素の輝度とをブレンドする規格があり、一般
に広く用いられている。これを式で表現すると下記の式
となる。
【0083】 出力輝度=線分の輝度×低減率+フレームバッファの輝度・・・ この処理は、例えば前記図7に示すフレームバッファ制
御装置110、111によって実施される。
【0084】しかし前記式では、連続する線分の接続
点で同一の画素が2度描画されるため、格納される輝度
値が大きくなってしまう。例えば図9(B)に示す如
く、線分L1 、L2 、L3 ・・・をアンチエイリアシン
グするとき、接続点P1 、P2では同一の画素が2度描
画されるので輝度値が大きくなってしまう。
【0085】これを回避するため、本発明の第5実施例
では、前記主軸処理部2の低減率演算部23に、図9
(A)に示す如く、通常の参照テーブル231とは別に
端点(始点、終点)用の参照テーブル232を別に持
ち、この端点用の参照テーブル232に予め減衰させた
低減率データを登録しておく。例えば通常の参照テーブ
ル231よりも1/2にした低減率データを登録してお
く。
【0086】そして加算器53とベースアドレスレジス
タ55を設け、ベースアドレスレジスタ55のベースア
ドレスデータを、セレクタ230より出力されたデータ
に加算したとき、端点用の参照テーブル232をアクセ
スし、ベースアドレスデータを加算しないときは通常の
参照テーブル231をアクセスするように構成する。
【0087】いま、図9(B)に示す横線分である線分
1 が、例えば図6に示す制御部1に入力されたとき、
制御部1から前記の如く、X始点、データ、X増分値、
Y始点データ、Y増分値等が主軸処理部2、副軸処理部
3等に送出されるが、このとき図9(A)の加算器53
に対して端点信号が送出され、この線分L1 に対する始
点については、セレクタ230から選択送出されたY座
標値とベースアドレスレジスタ55から出力されたベー
スアドレスが加算されて端点用の参照テーブル232が
アクセスされる。
【0088】線分L1 の中間点に対する処理の場合、加
算器53に端点信号が印加されないため、セレクタ23
0の出力により通常の参照テーブル231がアクセスさ
れる。ところで制御部1では、カウンタにより、この線
分L1 の終点座標をカウントしておき、処理が終点に達
するとき、端点信号を再び加算器53に出力し、同様の
制御が行われる。このようにして線分L1 、L2 、・・
・の端点に対しては、端点用の参照テーブル232がア
クセスされるので、端点の2度書きによる輝度増加の影
響を防ぐことが可能となる。
【0089】本発明の第6実施例を図10により説明す
る。前記図9では、通常の処理の参照テーブル231と
端点用の参照テーブル232との2面の参照テーブルを
必要とする。しかしメモリの物理的制限により参照テー
ブルを2面持つことができない場合が存在する。本発明
の第6実施例はこのような場合に対処するものである。
【0090】第6実施例では、前記低減率演算部33
に、図10に示す如く、シフト演算部340を設け、端
点に対し作業用低減率レジスタ331′の出力を1ビッ
ト右にシフト出力させる。
【0091】シフト演算部340は、データを1ビット
右にシフトする1ビットシフタ341と、ゼロを出力す
るマスクデータレジスタ342と、1ビットシフタ34
1の出力の先頭にマスクデータレジスタ342の出力を
挿入するマスク演算器343を具備する。
【0092】前記制御部1から端点信号がオンつまりイ
ネーブル(enable)信号が入力されたとき、シフ
ト演算部340が動作し、図10(B)に示す如く、作
業用低減率レジスタ331′から出力された、例えば8
ビットのX1 2 ・・・X78 が1ビットシフタ34
1により1ビット右にシフトされたX1 2 ・・・X 7
がマスク演算部343に入力される。
【0093】このときマスク演算部343には、マスク
データレジスタ342からマスクデータ0が入力されて
おり、これを最上位ビットに記入した0X1 2 ・・・
7を演算してこれを出力する。これにより1ビットの
右シフトにより、端点の低減衰を50%減衰することが
可能である。
【0094】前記制御部1は、端点の処理でないとき端
点信号をオフつまりデゼーブル(desable)信号
が入力され、作業用低減率レジスタ331′の出力がそ
のままスルーでシフト演算部340から出力される。
【0095】前記実施例では参照テーブルに記入された
低減率が8ビットの例について説明したが、本発明は勿
論これに限定されるものではない。また前記実施例では
横線分の場合について説明したが本発明では勿論縦線分
に対しても適用できるものである。
【0096】
【発明の効果】請求項1に記載された本発明によれば、
対称性のよい同期がとり易く、簡単な構成で高速な線分
アンチエイリアシング装置を提供することができる。
【0097】請求項2に記載された本発明によれば、一
層の高速処理化を図ることができる。請求項3に記載さ
れた本発明によれば、処理の効率化を図ることができ
る。
【0098】請求項4に記載された本発明によれば、L
SIのピン数をあまり増加させることなく複数の出力制
御装置、フレームバッファ制御装置、フレームバッファ
等を並列接続できるので、LSI化し易くなる。
【0099】請求項5に記載された本発明によれば、線
分の端点の輝度を適正化することができる。請求項6に
記載された本発明によれば、線分の端点の輝度の適正化
を一枚の参照テーブルで可能となるので小形化できる。
しかも計算で行うので輝度の適性化を高速処理できる。
【図面の簡単な説明】
【図1】本発明の一実施例構成図及び線分説明図であ
る。
【図2】入力データ形式説明図である。
【図3】本来の理論線と本発明で増分計算を行う理論線
の関係状態説明図である。
【図4】描画画素と理論線の距離を示す図である。
【図5】参照テーブルのデータ構成及び参照状態説明図
である。
【図6】本発明の第2実施例構成図である。
【図7】本発明の第3実施例構成図である。
【図8】本発明の第4実施例構成図である。
【図9】本発明の第5実施例構成図である。
【図10】本発明の第6実施例構成図である。
【図11】理論上の線分とエイリアシング発生線分説明
図である。
【図12】アンチエイリアシングを施した線分の説明図
である。
【符号の説明】
1 制御部 2 主軸処理部 3 副軸処理部 4 出力制御部 21 X座標演算部 22 Y座標演算部 23 低減率演算部 31 X座標演算部 32 Y座標演算部 33 低減率演算部
───────────────────────────────────────────────────── フロントページの続き (51)Int.Cl.6 識別記号 庁内整理番号 FI 技術表示箇所 G09G 5/20 9377−5H G06F 15/68 310 J

Claims (6)

    【特許請求の範囲】
  1. 【請求項1】 線分を表示するために、線分の各画素の
    データをフレームバッファに記憶させるグラフィックス
    装置において、 線分の副軸方向に対して複数個の画素データを順次発生
    させる画素発生手段と、各画素の輝度低減率を保持する
    低減率レジスタと、前記画素発生手段の動作に同期して
    前記低減率レジスタから必要な低減率データを取り出し
    て各画素データを出力する出力手段を具備した副軸処理
    手段を設けたことを特徴とする線分アンチエイリアシン
    グ装置。
  2. 【請求項2】 各画素の輝度低減率を保持する前記低減
    率レジスタと、前記画素発生手段の入力情報を保持する
    レジスタ群を2面構成とし、第1の画素データを処理し
    ている期間に、第2の処理を行うための入力情報を設定
    するようにしたことを特徴とする請求項1に記載された
    線分アンチエイリアシング装置。
  3. 【請求項3】 前記副軸処理手段により発生された各画
    素の縦軸方向の座標値又は横軸方向の座標値の下位ビッ
    トの情報をもとに、複数個のフレームバッファ制御装置
    に画素データを分配する分配手段を有することを特徴と
    する請求項1又は請求項2に記載された線分アンチエイ
    リアシング装置。
  4. 【請求項4】 前記副軸処理手段により発生された各画
    素の縦軸方向の座標値又は横軸方向の座標値の下位ビッ
    トの情報をマスク情報と比較する比較手段を設けること
    により、複数個のフレームバッファを並列に配置構成す
    るようにしたことを特徴とする請求項1又は請求項2に
    記載された線分アンチエイリアシング装置。
  5. 【請求項5】 低減率が記入された第1の参照テーブル
    と、第1の参照テーブルに記入された低減率よりも減衰
    された低減率の記入された第2の参照テーブルを設け、
    線分の端点のみ前記第2の参照テーブルを参照するよう
    に構成したことを特徴とする請求項1又は請求項2に記
    載された線分アンチエイリアシング装置。
  6. 【請求項6】 各画素の低減率を前記低減率レジスタか
    ら取り出して出力するとき、低減率データをシフトする
    シフト手段を設け、線分の端点のみ低減率データを減衰
    して出力するように構成したことを特徴とする請求項1
    又は請求項2に記載された線分アンチエイリアシング装
    置。
JP6280180A 1994-11-15 1994-11-15 線分アンチエイリアシング装置 Withdrawn JPH08138067A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP6280180A JPH08138067A (ja) 1994-11-15 1994-11-15 線分アンチエイリアシング装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP6280180A JPH08138067A (ja) 1994-11-15 1994-11-15 線分アンチエイリアシング装置

Publications (1)

Publication Number Publication Date
JPH08138067A true JPH08138067A (ja) 1996-05-31

Family

ID=17621418

Family Applications (1)

Application Number Title Priority Date Filing Date
JP6280180A Withdrawn JPH08138067A (ja) 1994-11-15 1994-11-15 線分アンチエイリアシング装置

Country Status (1)

Country Link
JP (1) JPH08138067A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005004105A1 (ja) * 2003-07-03 2005-01-13 Sharp Kabushiki Kaisha 文字表示装置、 文字表示方法、 文字表示プログラムおよび記録媒体
WO2009107554A1 (ja) * 2008-02-28 2009-09-03 シャープ株式会社 情報処理装置、情報処理方法、およびプログラム
WO2017042933A1 (ja) * 2015-09-10 2017-03-16 コヨミ株式会社 画像処理装置、画像処理システム、画像処理方法、画像処理プログラム、及び画像データ構造

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005004105A1 (ja) * 2003-07-03 2005-01-13 Sharp Kabushiki Kaisha 文字表示装置、 文字表示方法、 文字表示プログラムおよび記録媒体
KR100749873B1 (ko) * 2003-07-03 2007-08-21 샤프 가부시키가이샤 문자 표시 장치, 문자 표시 방법 및 가독 기록 매체
CN100437746C (zh) * 2003-07-03 2008-11-26 夏普株式会社 字符显示设备和字符显示方法
US7701467B2 (en) 2003-07-03 2010-04-20 Sharp Kabushiki Kaisha Character display apparatus, character display method, character display program, and recording medium
WO2009107554A1 (ja) * 2008-02-28 2009-09-03 シャープ株式会社 情報処理装置、情報処理方法、およびプログラム
WO2017042933A1 (ja) * 2015-09-10 2017-03-16 コヨミ株式会社 画像処理装置、画像処理システム、画像処理方法、画像処理プログラム、及び画像データ構造
JPWO2017042933A1 (ja) * 2015-09-10 2018-05-24 コヨミ株式会社 画像処理装置、画像処理システム、画像処理方法、画像処理プログラム、及び画像データ構造

Similar Documents

Publication Publication Date Title
JP2637920B2 (ja) コンピュータ・グラフィック・システム及びフレーム・バッファ使用方法
JP3763136B2 (ja) 描画方法および描画装置
JP2910979B2 (ja) コンピュータグラフィックシステムのサブピクセルマスク発生方法および装置
US7362339B2 (en) Image processing method and apparatus
JP3038868B2 (ja) 画像データのブロック転送装置
JP2005077522A (ja) 画像処理装置および画像処理方法
JPH08138067A (ja) 線分アンチエイリアシング装置
JP2755289B2 (ja) レンダリング方法
JPH05249953A (ja) 画像表示装置
US6677950B1 (en) Graphics computer
JP2003132347A (ja) 画像処理装置
JP3846142B2 (ja) 画像データ転送装置及び画像表示処理システム
JP3872056B2 (ja) 描画方法
JP2005128689A (ja) 画像描画装置
JP2003187260A (ja) 描画処理プログラム、描画処理プログラムを記録した記録媒体、描画処理装置及び方法
JPH03164872A (ja) 図形処理システム
JP4596678B2 (ja) 線分描画装置
JP2903514B2 (ja) 高速描画方法
JP2004227338A (ja) 画像処理装置、画像処理方法、画像処理プログラム、および電子機器装置
JP4195953B2 (ja) 画像処理装置
JPS62204389A (ja) 任意多角形によるクリツピング・シ−ルデイング方法
JP2605609B2 (ja) ドット表示処理装置
KR0155919B1 (ko) 그래픽 가속기에서 화소데이타 처리방법 및 그 장치
JP4580475B2 (ja) 演算処理装置およびグラフィック演算装置
JP2006227498A (ja) 画像処理装置

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20020115