(57)【特許請求の範囲】
【請求項１】
多角形の画像データを、行（もしくは列）単位で分割し、行（もしくは列）ごとに描画するように、画像メモリに格納しつつ、前記画像データを出力する際に生ずるエイリアシングを中間色で補完する画像描画装置において、
前記画像メモリに前記多角形の一部をなす画素の画情報を格納する際に、該画素の画素位置と直前の行（もしくは列）における描画開始（もしくは描画終了）にかかる画素位置との差分に基づいて、前記エイリアシングの補完対象となる一連の画素群を特定する特定手段と、
前記特定手段により特定された一連の画素群の画素数に基づいて該一連の画素群を形成する各画素の半透明率を算定する半透明率算定手段と、
前記半透明率算定手段により算定された半透明率に基づいて前記補完対象となる一連の画素群の半透明処理をおこなう処理手段と、
を備えたことを特徴とする画像描画装置。
【請求項２】
多角形の画像データを、行（もしくは列）単位で分割し、行（もしくは列）ごとに描画するように、画像メモリに格納しつつ、前記画像データを出力する際に生ずるエイリアシングを中間色で補完する画像描画装置において、
前記多角形の辺の傾きを算定する傾き算定手段と、
前記画像メモリに前記多角形の一部をなす画素の画情報を格納する際に、該画素の画素位置と直前の行（もしくは列）における描画開始（もしくは描画終了）にかかる画素位置との差分に基づいて、前記エイリアシングの補完対象となる一連の画素群を特定する特定手段と、
前記特定手段により特定された一連の画素群の画素数に基づいて該一連の画素群を形成する各画素の半透明率を算定する第１の半透明率算定手段と、
前記傾き算定手段により算定された傾きから算出した補完対象となる画素の座標位置に基づいて該画素の半透明率を算定する第２の半透明率算定手段と、
前記第１の半透明率算定手段または前記第２の半透明率算定手段により算定された半透明率に基づいて補完対象となる各画素の半透明処理をおこなう処理手段と、
を備えたことを特徴とする画像描画装置。
【請求項３】
多角形の画像データを、行（もしくは列）単位で分割し、行（もしくは列）ごとに描画するように、画像メモリに格納しつつ、前記画像データを出力する際に生ずるエイリアシングを中間色で補完する画像描画方法において、
前記画像メモリに前記多角形の一部をなす画素の画情報を格納する際に、該画素の画素位置と直前の行（もしくは列）における描画開始（もしくは描画終了）にかかる画素位置との差分に基づいて、前記エイリアシングの補完対象となる一連の画素群を特定する特定工程と、
前記特定工程により特定された一連の画素群の画素数に基づいて該一連の画素群を形成する各画素の半透明率を算定する半透明率算定工程と、
前記半透明率算定工程により算定された半透明率に基づいて前記補完対象となる一連の画素群の半透明処理をおこなう処理工程と、
を含んだことを特徴とする画像描画方法。
【請求項４】
多角形の画像データを、行（もしくは列）単位で分割し、行（もしくは列）ごとに描画するように、画像メモリに格納しつつ、前記画像データを出力する際に生ずるエイリアシングを中間色で補完する画像描画方法において、
前記多角形の辺の傾きを算定する傾き算定工程と、
前記傾き算定工程により算定した傾きが４５度未満の場合には、前記画像メモリに前記多角形の一部をなす画素の画情報を格納する際に、該画素の画素位置と直前の行（もしくは列）における描画開始（もしくは描画終了）にかかる画素位置との差分に基づいて、前記エイリアシングの補完対象となる一連の画素群を特定し、特定した一連の画素群の画素数に基づいて該一連の画素群を形成する各画素の半透明率を算定し、前記傾き算定工程により算定した傾きが４５度を超える場合には、該傾き算定工程により算定された傾きから算出した補完対象となる画素の座標位置に基づいて該画素の半透明率を算定する半透明率算定工程と、
前記半透明率算定工程により算定された半透明率に基づいて補完対象となる各画素の半透明処理をおこなう処理工程と、
を含んだことを特徴とする画像描画方法。
【請求項５】
多角形の画像データを、行（もしくは列）単位で分割し、行（もしくは列）ごとに描画するように、画像メモリに格納しつつ、前記画像データを出力する際に生ずるエイリアシングを中間色で補完する画像描画方法をコンピュータに実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体において、
前記画像メモリに前記多角形の一部をなす画素の画情報を格納する際に、該画素の画素位置と直前の行（もしくは列）における描画開始（もしくは描画終了）にかかる画素位置との差分に基づいて、前記エイリアシングの補完対象となる一連の画素群を特定させる特定工程と、
前記特定工程により特定された一連の画素群の画素数に基づいて該一連の画素群を形成する各画素の半透明率を算定させる半透明率算定工程と、
前記半透明率算定工程により算定された半透明率に基づいて前記補完対象となる一連の画素群の半透明処理をおこなわせる処理工程と、
を実行させるためのプログラムを記録したことを特徴とするコンピュータ読み取り可能な記録媒体。
【請求項６】
多角形の画像データを、行（もしくは列）単位で分割し、行（もしくは列）ごとに描画するように、画像メモリに格納しつつ、前記画像データを出力する際に生ずるエイリアシングを中間色で補完する画像描画方法をコンピュータに実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体において、
前記多角形の辺の傾きを算定させる傾き算定工程と、
前記傾き算定工程により算定した傾きが４５度未満の場合には、前記画像メモリに前記多角形の一部をなす画素の画情報を格納する際に、該画素の画素位置と直前の行（もしくは列）における描画開始（もしくは描画終了）にかかる画素位置との差分に基づいて、前記エイリアシングの補完対象となる一連の画素群を特定させ、特定された一連の画素群の画素数に基づいて該一連の画素群を形成する各画素の半透明率を算定させ、前記傾き算定工程により算定された傾きが４５度を超える場合には、該傾き算定工程により算定された傾きから算出した補完対象となる画素の座標位置に基づいて該画素の半透明率を算定させる半透明率算定工程と、
前記半透明率算定工程により算定された半透明率に基づいて補完対象となる各画素の半透明処理をおこなわせる処理工程と、
を実行させるためのプログラムを記録したことを特徴とするコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、多角形の画像データを画像メモリに格納しつつ、この画像データを表示出力または印刷出力（以下「出力」と言う。）する出力する際に生ずるエイリアシングを中間色で補完する画像描画装置、画像処理方法および記録媒体に関し、特に、多角形の各辺に現れる画素単位の階段状の境界を滑らかに見せるアンチエイリアシング処理を少ないメモリ容量下で高速におこなうことができる画像描画装置、画像処理方法および記録媒体に関する。
【０００２】
【従来の技術】
従来、ディスプレイ装置やスクリーンなどに多角形を表示すると、その境界にエイリアシング（aliasing）と呼ばれる階段状の部分が生ずるため、このエイリアシングを取り除くアンチエイリアシング（anti-aliasing）技術を採用した画像描画装置が知られている。このアンチエイリアシング技術とは、図形の境界部分に中間色を与え、境界部分の輝度差を目立たせないようにする技術である。
【０００３】
かかる従来の代表的なアンチエイリアシング技術として、オーバーサンプリング方式、面積比方式および２度描き方式などがある。オーバーサンプリング方式とは、表示画素よりも大きな画像空間に多角形などを描画し、これを縮小して表示する際に、複数の画素を混ぜ合わせて１表示画素とする技術である。
【０００４】
また、面積比方式とは、多角形の各辺を形成する直線を画素よりも細かな単位で算出し、境界画素において多角形が本来占める面積の割合を算出し、その割合にしたがって、すでに描画されている画素との間で半透明処理をおこなう技術である。
【０００５】
さらに、２度描き方式とは、アンチエイリアシング処理をおこなう直線描画装置を有し、多角形の描画とは別個に多角形の各辺に沿ってアンチエイリアシング処理を施した直線描画をおこなう技術である。
【０００６】
【発明が解決しようとする課題】
しかしながら、かかる従来のアンチエイリアシング技術を用いた場合には、大きなメモリ容量を要したり、描画処理が遅延するという問題が生ずる。すなわち、上記オーバーサンプリング方式を用いた場合には、本来表示に必要となるメモリ領域よりも大きなメモリ領域を描画空間用に保持しなければならず、また描画空間を広げた分だけ処理負担が増加して処理遅延が生ずる。
【０００７】
また、面積比方式を用いた場合には、境界部分を形成する各画素ごとに面積を算出する処理をおこなう必要があるため、描画処理に時間を要するという問題が生ずる。
【０００８】
さらに、２度描き方式を用いた場合には、本来の多角形描画処理のほかに、この多角形描画処理と独立な直線描画処理をおこなわなければならないため、近傍のメモリ領域ほど高速に処理できるというメモリ一般の利点を活かせず、結果的に処理遅延が生ずる。
【０００９】
このように、従来のアンチエイリアシング処理では、メモリ容量および処理遅延の観点から見て大きな問題があったため、多角形の各辺に現れる画素単位の階段状の境界を滑らかに見せるアンチエイリアシング処理を少ないメモリ容量下でいかに高速に実現するかが極めて重要な課題となっている。
【００１０】
この発明は、上記問題（課題）に鑑みてなされたものであり、多角形の各辺に現れる画素単位の階段状の境界を滑らかに見せるアンチエイリアシング処理を少ないメモリ容量下で高速におこなうことができる画像描画装置、画像描画方法および記録媒体を提供することを目的とする。
【００１１】
【課題を解決するための手段】
上記目的を達成するために、本発明に係る画像描画装置は、画像メモリに多角形の一部をなす画素の画情報を格納する際に、図２に示す線形補完処理部１７が該画素の画素位置と画像メモリに以前に格納した画素の画素位置との差分に基づいて、エイリアシングの補完対象となる画素列を特定し、特定した画素列の画素数に基づいて該画素列を形成する各画素の半透明率を算定し、図２に示す半透明処理部１８がこの線形補完処理部１７により算定された半透明率に基づいて補完対象となる画素列の半透明処理をおこなうこととしたので、多角形を画像メモリに描画する際に、描画メモリ以外の作業メモリ領域を必要とすることなく、高速にアンチエイリアシング処理をおこなうことができる。
【００１２】
また、本発明に係る画像描画装置は、上記の発明において、図２に示す傾き算出部１１が多角形の辺の傾きを算定し、算定した傾きが４５度を超える場合には、列方向の画素位置と行方向の画素位置を変換して補完対象となる画素列を特定するようにしてもよい。これにより、傾きが４５度未満または４５度を超えるいずれの場合であっても、効率良くアンチエイリアシング処理をおこなうことができる。
【００１３】
また、本発明に係る画像描画装置は、上記の発明において、画像メモリに前回格納した第１の画素の画素位置と、該画像メモリに現在格納する第２の画素の画素位置との間に所在する画素数を算定し、この第１の画素に隣接する当該画素数分の画素列を補完対象となる画素列とするようにしてもよい。これにより、補完対象となる画素列を効率良く特定することができる。
【００１４】
また、本発明に係る画像描画装置は、上記の発明において、特定された画素列を形成する各画素の半透明率を線形に増加させるようにしてもよい。これにより、補完対象となる画素列を形成する画素に迅速に半透明率を割り当てることができる。
【００１５】
また、本発明に係る画像描画装置は、上記の発明において、特定された画素列の画素数に基づいて半透明率の基準値（補完値差分）を算定し、図３に示すカウンタ１７ｆ、半透明率出力部１７ｇおよび加算器１７ｈによりこの基準値を巡回的に加算した値を画素列を形成する各画素の半透明率とするようにしてもよい。これにより、巡回回路を用いて軽易に半透明率を算出することができる。
【００１６】
また、本発明に係る画像描画装置は、図９に示す傾き算出部１１が多角形の辺の傾きを算定し、算定した傾きから算出した補完対象となる画素の座標位置に基づいて図９に示す小数部９１、小数部９２、選択器９３および減算器９４が該画素の半透明率を算定し、算定した半透明率に基づいて図９に示す半透明処理部１８が補完対象となる画素の半透明処理をおこなうこととしたので、座標の小数部分を用いた極めて単純な演算のみで高速に半透明処理をおこなうことができる。
【００１７】
また、本発明に係る画像描画装置は、上記の発明において、算定された傾きが４５度未満の場合には列方向の画素位置の小数部分を基準として半透明率を算定し、該傾きが４５度を超える場合には行方向の画素位置の小数部分を基準として半透明率を算定するようにしてもよい。これにより、傾きが４５度未満または４５度を超えるいずれの場合であっても、効率良くアンチエイリアシング処理をおこなうことができる。
【００１８】
また、本発明に係る画像描画装置は、上記の発明において、算定された傾きから算出した補完対象となる画素の座標位置の小数部分を１から減算した値を半透明率とするようにしてもよい。これにより、減算という単純な演算のみで半透明率を高速に算定することができる。
【００１９】
さらに、本発明に係る画像描画装置は、図９に示す小数部９１および小数部９２により補完対象となる画素の列方向および行方向の座標位置の小数部分をそれぞれ抽出し、算出された傾きに基づいて抽出したいずれか一方の小数部分を図９に示す選択器９３が選択し、図９に示す減算器９４を用いて選択された小数部分を１から減算するようにしてもよい。これにより、行および列の小数部のいずれかを１から減算するという極めて単純な演算のみで半透明率を算定することができる。
【００２０】
また、本発明に係る画像描画装置は、図１１に示す傾き算出部１１が多角形の辺の傾きを算出し、図１１に示す線形補完部１７が画像メモリに多角形の一部をなす画素の画情報を格納する際に、該画素の画素位置と画像メモリに以前に格納した画素の画素位置との差分に基づいて、エイリアシングの補完対象となる画素列を特定し、特定した画素列の画素数に基づいて該画素列を形成する各画素の半透明率を算定するか、または図１１に示す小数部９２および減算器９４により傾き算出部１１が算出した傾きから補完対象となる画素の座標位置に基づいて該画素の半透明率を算定するかによって半透明率を求め、いずれかで求めた半透明率に基づいて図１１に示す半透明処理部１８が補完対象となる各画素の半透明処理をおこなうこととしたので、半透明率を２種類の半透明率算定手段の適切な一方を用いて効率良くアンチエイリアシング処理をおこなうことができる。
【００２１】
また、本発明に係る画像描画装置は、上記の発明において、算定された傾きが４５度未満の場合には、前者の半透明率算定手段により半透明率を算定し、該傾きが４５度を超える場合には、後者の半透明率算定手段により半透明率を算定するようにしてもよい。これにより、辺の傾きが４５度未満であるか４５度を超えるかによってより適切な半透明率算定手段を用いた半透明率の算定をおこなうことができる。
【００２２】
また、本発明に係る画像描画装置は、上記の発明において、多角形を形成する画素の画情報を前記半透明率に乗算した値と、半透明率を１から減算した値（１−半透明率）を多角形以外の背景をなす画素の画情報に乗算した値とを加算した加算値を画素列を形成する各画素の画情報とすることとしたので、簡単な演算で効率良く半透明処理をおこなうことができる。
【００２３】
また、本発明に係る画像描画装置は、上記の発明において、オン／オフ器１９により算定した傾きが４５度でない場合には半透明処理を可能とし、該傾きが４５度である場合には半透明処理を不能とするようにしてもよい。これにより、エイリアシングが生じない場合の処理をなくし、もって処理をさらに高速化することができる。
【００２４】
また、本発明に係る画像描画方法は、画像メモリに多角形の一部をなす画素の画情報を格納する際に、該画素の画素位置と画像メモリに以前に格納した画素の画素位置との差分に基づいて、エイリアシングの補完対象となる画素列を特定し、特定した画素列の画素数に基づいて該画素列を形成する各画素の半透明率を算定し、算定した半透明率に基づいて補完対象となる画素列の半透明処理をおこなうこととしたので、多角形を画像メモリに描画する際に、描画メモリ以外の作業メモリ領域を必要とすることなく、高速にアンチエイリアシング処理をおこなうことができる。
【００２５】
また、本発明に係る画像描画方法は、上記の発明において、多角形の辺の傾きを算定し、算定した傾きが４５度を超える場合には、列方向の画素位置と行方向の画素位置を変換して補完対象となる画素列を特定するようにしてもよい。これにより、傾きが４５度未満または４５度を超えるいずれの場合であっても、効率良くアンチエイリアシング処理をおこなうことができる。
【００２６】
また、本発明に係る画像描画方法は、上記の発明において、画像メモリに前回格納した第１の画素の画素位置と、該画像メモリに現在格納する第２の画素の画素位置との間に所在する画素数を算定し、この第１の画素に隣接する当該画素数分の画素列を補完対象となる画素列とするようにしてもよい。これにより、補完対象となる画素列を効率良く特定することができる。
【００２７】
また、本発明に係る画像描画方法は、上記の発明において、特定された画素列を形成する各画素の半透明率を線形に増加させるようにしてもよい。これにより、補完対象となる画素列を形成する画素に迅速に半透明率を割り当てることができる。
【００２８】
また、本発明に係る画像描画方法は、上記の発明において、特定された画素列の画素数に基づいて半透明率の基準値（補完値差分）を算定し、算定した基準値を巡回的に加算した値を画素列を形成する各画素の半透明率とするようにしてもよい。これにより、巡回回路を用いて軽易に半透明率を算出することができる。
【００２９】
また、本発明に係る画像描画方法は、多角形の辺の傾きを算定し、算定された傾きから算出した補完対象となる画素の座標位置に基づいて該画素の半透明率を算定し、算定された半透明率に基づいて補完対象となる画素の半透明処理をおこなうこととしたので、座標の小数部分を用いた極めて単純な演算のみで高速に半透明処理をおこなうことができる。
【００３０】
また、本発明に係る画像描画方法は、上記の発明において、算定された傾きが４５度未満の場合には列方向の画素位置の小数部分を基準として半透明率を算定し、該傾きが４５度を超える場合には行方向の画素位置の小数部分を基準として半透明率を算定するようにしてもよい。これにより、傾きが４５度未満または４５度を超えるいずれの場合であっても、効率良くアンチエイリアシング処理をおこなうことができる。
【００３１】
また、本発明に係る画像描画方法は、上記の発明において、算定された傾きから算出した補完対象となる画素の座標位置の小数部分を１から減算した値を半透明率とすることとしてもよい。これにより、減算という単純な演算のみで半透明率を高速に算定することができる。
【００３２】
また、本発明に係る画像描画方法は、さらに、補完対象となる画素の列方向および行方向の座標位置の小数部分をそれぞれ抽出し、算出された傾きに基づいて抽出したいずれか一方の小数部分を選択し、選択された小数部分を１から減算するようにしてもよい。これにより、行および列の小数部のいずれかを１から減算するという極めて単純な演算のみで半透明率を算定することができる。
【００３３】
また、本発明に係る画像描画方法は、多角形の辺の傾きを算定し、画像メモリに多角形の一部をなす画素の画情報を格納する際に、該画素の画素位置と画像メモリに以前に格納した画素の画素位置との差分に基づいて、エイリアシングの補完対象となる画素列を特定し、特定した画素列の画素数に基づいて該画素列を形成する各画素の半透明率を算定するか、または算定された傾きから算出した補完対象となる画素の座標位置に基づいて該画素の半透明率を算定するかによって半透明率を求め、いずれかで求めた半透明率に基づいて補完対象となる各画素の半透明処理をおこなうこととしたので、辺の傾きが４５度未満であるか４５度を超えるかによってより適切な半透明率算定手段を用いた半透明率の算定をおこなうことができる。
【００３４】
また、本発明に係る画像描画方法は、上記の発明において、多角形を形成する画素の画情報を前記半透明率に乗算した値と、半透明率を１から減算した値（１−半透明率）を多角形以外の背景をなす画素の画情報に乗算した値とを加算した加算値を画素列を形成する各画素の画情報とするようにしてもよい。これにより、簡単な演算で効率良く半透明処理をおこなうことができる。
【００３５】
また、本発明に係る画像描画方法は、上記の発明において、オン／オフ器１９により算定した傾きが４５度でない場合には半透明処理を可能とし、該傾きが４５度である場合には半透明処理を不能とするようにしてもよい。これにより、エイリアシングが生じない場合の処理をなくし、もって処理をさらに高速化することができる。
【００３６】
また、本発明に係る記録媒体は、画像メモリに多角形の一部をなす画素の画情報を格納する際に、該画素の画素位置と画像メモリに以前に格納した画素の画素位置との差分に基づいて、エイリアシングの補完対象となる画素列を特定し、特定した画素列の画素数に基づいて該画素列を形成する各画素の半透明率を算定し、算定した半透明率に基づいて補完対象となる画素列の半透明処理をおこなうこととしたので、多角形を画像メモリに描画する際に、描画メモリ以外の作業メモリ領域を必要とすることなく、高速にアンチエイリアシング処理をおこなう動作をコンピュータによって実現することができる。
【００３７】
また、本発明に係る記録媒体は、多角形の辺の傾きを算定し、算定した傾きから算出した補完対象となる画素の座標位置に基づいて該画素の半透明率を算定し、算定した半透明率に基づいて補完対象となる画素の半透明処理をおこなうこととしたので、座標の小数部分を用いた極めて単純な演算のみで高速に半透明処理をおこなう動作をコンピュータによって実現することができる。
【００３８】
また、本発明に係る記録媒体は、多角形の辺の傾きを算定し、画像メモリに多角形の一部をなす画素の画情報を格納する際に、該画素の画素位置と画像メモリに以前に格納した画素の画素位置との差分に基づいて、エイリアシングの補完対象となる画素列を特定し、特定した画素列の画素数に基づいて該画素列を形成する各画素の半透明率を算定するか、または算定された傾きから算出した補完対象となる画素の座標位置に基づいて該画素の半透明率を算定するかによって半透明率を求め、いずれかで求めた半透明率に基づいて補完対象となる各画素の半透明処理をおこなうこととしたので、辺の傾きが４５度未満であるか４５度を超えるかによってより適切な半透明率算定手段を用いた半透明率の算定をおこなう動作をコンピュータによって実現することができる。
【００３９】
【発明の実施の形態】
以下に添付図面を参照して、この発明に係る画像描画装置、画像描画方法およびその方法をコンピュータに実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体の好適な実施の形態を詳細に説明する。なお以下では、本発明に係わる描画位置差分の線形補完方式を実施の形態１で説明し、描画座標小数部利用方式を実施の形態２で説明し、これらの複合方式を実施の形態３で説明することとする。
【００４０】
（実施の形態１）
まず最初に、本実施の形態１で用いる描画位置差分の線形補完方式の概念について説明する。この描画位置差分の線形補完方式は、直前の描画位置を記憶しておき、記憶した直前の描画位置と現在の描画位置とから処理対象となる領域を特定し、特定した領域に含まれる画素にアンチエイリアシング処理を施して画素値を補完するものである。
【００４１】
図１は、この実施の形態１で用いる描画位置差分の線形補完方式の概念を示す説明図である。図中の０〜６は行番号を示し、Ａ〜Ｇは列番号を示し、黒丸で示す画素が多角形の一部を形成する画素とする。なお、ここでは多角形を行単位で分割し、行ごとに描画する場合を示すこととする。
【００４２】
同図（ａ）に示すように、あらかじめ記憶した直前（前回）の描画位置を行１の列Ｆ（以下、（Ｆ，１）と表記する。）とし、現在の描画位置を（Ｂ，２）とすると、図中の破線で囲んだ領域２０に含まれる画素（Ｃ，１）、（Ｄ，１）および（Ｅ，１）がアンチエイリアシング処理の処理対象となる。
【００４３】
そして、まず最初にこの領域２０の両端に位置する描画済みの画素の画素値を用いて領域２０に含まれる画素（Ｃ，１）、（Ｄ，１）および（Ｅ，１）の半透明処理の割合（半透明率）を決定する。
【００４４】
具体的には、同図（ａ）に示す場合には、この領域２０の右側に位置する画素（Ｆ，１）の半透明率を１００％とし、また（Ｂ，１）の半透明率を０％として、その間の半透明率を一定の割合で変化させる。その結果、画素（Ｃ，１）の半透明率が２５％となり、画素（Ｄ，１）の半透明率が５０％となり、画素（Ｅ，１）の半透明率が７５％となる。なお、この半透明率が１００％であるとは、透過しないことを意味し、たとえば背景が白色の白黒画像の場合には、黒画素に相当する。また、半透明率が０％であるとは、完全に透過して背景色そのものとすることを意味し、たとえば背景が白画素の白黒画像の場合には白画素に相当する。
【００４５】
ここで、この半透明処理では、領域２０の次の行に位置する画素列（Ｃ，２）〜（Ｅ，２）を描画元とし、領域２０に含まれる画素列（Ｃ，１）〜（Ｅ，１）を描画先とし、描画元の画素と描画先の画素との間で半透明処理をおこなって、その結果を描画先の画素に描画する。たとえば、画素（Ｃ，１）については、描画元の画素（Ｃ，２）と描画先の画素（Ｃ，１）との間で半透明処理をおこない、その結果を画素（Ｃ，１）に描画することになる。
【００４６】
このように、多角形を行単位で分割して行ごとに描画することとすると、同図（ａ）に示すように、多角形の辺の傾きが４５度未満となる場合には上記処理を適用することができるが、同図（ｂ）に示すように、多角形の辺の傾きが４５度を越える場合には、同様の手順で領域２１を特定することはできない。このため、かかる場合には、行と列の関係を入れ替えて上記処理をおこなう。なお以下では、ｘｙ平面上でｘ＝ｙまたはｘ＝−ｙに該当するエイリアシングが生じない場合を傾きが４５度であるとする。なお、この場合に、ｘ＝０またはｙ＝０の場合も含めて考えるものとする。
【００４７】
このように、本実施の形態１に係る描画位置差分の線形補完方式では、直前の描画位置を記憶し、記憶した直前の描画位置と現在の描画位置とから処理対象となる領域を特定し、特定した領域に含まれる画素にアンチエイリアシング処理を施して画素値を補完する。
【００４８】
次に、本実施の形態１に係る描画位置差分の線形補完方式を用いた画像描画装置の構成について説明する。なお、ここでは行ごとに画素描画をおこないつつ、その１行前の画素をアンチエイリアシング処理するものとする。
【００４９】
図２は、本実施の形態１に係る描画位置差分の線形補完方式を用いた画像描画装置の構成を示すブロック図である。同図に示す画像描画装置１０は、傾き算出部１１と、列方向座標算出部１２と、行方向座標算出部１３と、画素描画処理部１４と、フレームバッファ１５と、描画位置記憶部１６と、線形補完処理部１７と、半透明処理部１８と、オン／オフ器１９とを有する。
【００５０】
傾き算出部１１は、多角形の辺の傾きを算出する処理部であり、算出した傾きを線形補完処理部１７およびオン／オフ器１９に出力する。算出した傾きを線形補完処理部１７に出力する理由は、線形補完部１７において傾きが４５度未満か否かにより行と列を入れ替えた処理をおこなうためである。また、算出した傾きをオン／オフ器１９に出力する理由は、傾きが４５度の場合にはこのオン／オフ器１９をオフにしてアンチエイリアシング処理自体をおこなわないようにするためである。
【００５１】
列方向座標算出部１２は、フレームバッファ１５に描画する列方向の座標位置を算出する処理部であり、行方向座標算出部１３は、フレームバッファ１５に描画する行方向の座標位置を算出する処理部である。
【００５２】
画素描画処理部１４は、列方向座標算出部１２が算出した列座標および行方向座標算出部１３が算出した行座標で指示されたフレームバッファ１５上の座標位置に画素値を付与して画像を描画する処理部である。フレームバッファ１５は、多角形の画像データを格納する２次元メモリである。たとえば、このフレームバッファ１５としてダイナミックＲＡＭ（Random Access Memory）を使用することができる。このダイナミックＲＡＭは、連続領域での処理が最も効率が良いため、かかるダイナミックＲＡＭの特性を活かして、多角形を行単位に分割し、行ごとに描画する。
【００５３】
描画位置記憶部１６は、直前（前回）の描画位置である列方向の座標と行方向の座標を記憶する記憶部である。行方向の座標を記憶する理由は、傾き算出部１１が算出した傾きが４５度未満の場合に、行方向の座標と列方向の座標の入れ替えをおこなうためである。
【００５４】
線形補完処理部１７は、本発明に係る描画位置差分の線形補完処理をおこなう処理部である。具体的には、この線形補完処理部１７では、前回の描画位置と今回の描画位置との描画位置差分を求め、求めた描画位置差分に基づいて処理対象領域を特定し、特定した処理対象領域に所在する画素の半透明率（透過率）を求める。
【００５５】
半透明処理部１８は、線形補完処理部１７により算出した半透明率に基づいて、処理対象領域に所在する画素（描画先の画素）と描画元の画素との間で半透明処理をおこなう処理部である。
【００５６】
オン／オフ器１９は、傾き算出部１１が算出した傾きに基づいて半透明処理をおこなうか否かを切り換える切換器であり、具体的には、傾き算出部１１が算出した傾きが４５度である場合には、階段状のエイリアシングがもともと生じないため、このオン／オフ器１９をオフにしてアンチエイリアシング処理をおこなわないようにする。また、この傾きが４５度以外であれば、エイリアシングが生じるため、このオン／オフ器１９をオンにしてアンチエイリアシング処理をおこなう。
【００５７】
上記構成を有する画像描画装置１０を用いることにより、上記描画位置差分の線形補完方式を用いたアンチエイリアシング処理をおこないつつ、フレームバッファ１５への画像の描画をおこなうことができる。なお、このフレームバッファ１５に描画した画像データは、図示しない表示制御部または印刷制御部により表示装置または印刷装置に出力される。
【００５８】
すなわち、この画像描画装置１０では、多角形の描画情報が入力されると、傾き算出部１１が辺の傾きを算出した後、列方向座標算出部１２および行方向座標算出部１３がそれぞれ列方向座標および行方向座標を算出し、画像描画処理部１４がフレームバッファ１５の該当する座標位置に画素値を格納する。
【００５９】
ここで、描画位置記憶部１６には、前回の描画位置が記憶されているので、線形補完処理部１７はこの前回の描画位置と今回の描画位置とを用いて半透明率を算出し、算出した半透明率を用いて半透明処理部１８が半透明処理をおこなう。なお、この半透明処理部１８がおこなう半透明処理には、描画先の画素と描画元の画素の画素値が必要となるため、必要な画素値についてはフレームバッファ１５から取り込むことになる。
【００６０】
次に、図２に示す線形補完処理部１７の具体的な構成について説明する。図３は、図２に示す線形補完処理部１７の具体的な構成を示す図である。同図に示すように、この線形補完処理部１７は、選択器１７ａおよび１７ｂと、減算器１７ｃと、除算器１７ｄと、補完値差分保持部１７ｅと、カウンタ１７ｆと、半透明率出力部１７ｇと、加算器１７ｈとを有する。
【００６１】
そして、この線形補完処理部１７では、傾き算出部１１が算出した傾きに基づいて、選択器１７ａおよび１７ｂを用いて前回位置と今回位置とを選択する。具体的には、この選択器１７ａでは、傾き算出部１１が算出した角度が４５度未満であれば、描画位置記憶部１６に記憶した列方向の座標を前回位置の列方向の座標として選択し、４５度を超える場合には、描画位置記憶部１６に記憶した行方向の座標を前回位置の列方向の座標として選択する。
【００６２】
また、選択器１７ｂでは、傾き算出部１１が算出した傾きが４５度未満であれば、列方向座標算出部１２が算出した列方向の座標を今回の列方向の座標として選択し、４５度を超える場合には、行方向座標算出部１３が算出した行方向の座標を今回の列方向の座標として選択する。
【００６３】
その後、減算器１７ｃは、前回位置の列方向の座標と今回の列方向の座標の差分を求め、アンチエイリアシング処理の処理対象となる画素の画素数を取得する。ここで、処理対象となる画素数を算出すれば、基準となる前回位置がわかっているので、結果的に処理対象となる画素を特定できる。なお、行方向の座標の差分値を求めていない理由は、ここでは画素描画処理部１４が画素を描画する行から１行遅れてアンチエイリアシングを処理をおこなうこととしているためである。
【００６４】
具体的には、図１（ａ）の場合には、前回位置の列方向の座標から今回位置の列方向の座標を減算すると４画素となる。なお、ここでは処理対象を４画素として算定するが、後述する処理で１画素目の半透明率は０％となるため、実質上の処理対象は上述したように画素（Ｃ，１）〜（Ｅ，１）の３画素となる。
【００６５】
その後、除算器１７ｄにおいて「１」を減算器１７ｃの出力値で除算し、補完値差分を取得し、補完値差分保持部１７ｅに保持する。たとえば、減算器１７ｃの出力値が「４」である場合には、かかる補完値差分は０．２５となる。
【００６６】
一方、減算器１７ｃからの出力値はカウンタ１７ｆに入力され、カウンタ１７ｆのカウント値に画素数が設定される。たとえば、減算器１７ｃからの出力値が「４」であれば、カウンタ１７ｆのカウント値が「４」となる。
【００６７】
そして、半透明率出力部１７ｇが、その初期値である「０」を加算器１７ｈおよび半透明処理部１８に出力すると、加算器１７ｈがこの半透明率出力部１７ｇからの出力と補完値差分保持部１７ｅが保持した補完値差分とを加算して、半透明率出力部１７ｇに出力する。たとえば、補完値差分保持部１７ｅが保持する補完値差分が０．２５の場合には、この０．２５が半透明率出力部１７ｇに出力される。
【００６８】
同様にして、カウンタ１７ｆが保持する回数だけ半透明率出力部１７ｇが出力すると、たとえば補完値差分が０．２５の場合には、この半透明率出力部１７ｇからは、「０」、「０．２５」、「０．５」および「０．７５」が順次出力されることとなる。
【００６９】
このように、かかる線形補完処理部１７では、補完する画素を間接的に特定するとともに、補完する各画素の半透明処理に必要となる半透明率を前回位置と今回位置から算定して半透明処理部１８に出力している。
【００７０】
次に、図２に示す半透明処理部１８の具体的な構成について説明する。図４は、図２に示す半透明処理部１８の具体的な構成の一例を示す説明図である。同図に示すように、この半透明処理部１８は、２つの乗算器１８ａおよび１８ｂと加算器１８ｃとからなる。
【００７１】
乗算器１８ａは、フレームバッファ１５から取得した描画元の画素の描画色と線形補完処理部１７から受け取った半透明率とを乗算する回路部であり、乗算器１８ｂは、背景色すなわち描画先の画素の画素値と１−半透明率とを乗算する回路部である。加算器１８ｃは、乗算器１８ａと乗算器１８ｂの出力を加算して描画先の画素の画素値として出力する回路部である。
【００７２】
たとえば、図１（ａ）に示す画素（Ｃ，１）を描画先の画素とした場合には、描画元の画素である画素（Ｃ，２）の画素値が描画色となり、描画先の画素（Ｃ，１）の画素値が背景色となる。そして、この場合の半透明率が２５％であるので、描画先の画素（Ｃ，１）の画素値は、
（Ｃ，２）×０．２５＋（Ｃ，１）×０．７５
となる。なお、ここでは乗算器１８ｂに（１−半透明率）を入力することとしたが、実際には「１」から線形補完処理部１７の出力を減算する減算器を新たに設けることとなる。
【００７３】
図５は、図２に示す半透明処理部１８の他の構成の一例を示す図である。同図に示すように、この半透明処理部１８は、減算器１８ｄと、乗算器１８ｅと、加算器１８ｆとからなる。
【００７４】
減算器１８ｄは、描画元の画素の画素値である描画色から描画先の画素の画素値である背景色を減算して差分を求める回路部であり、乗算器１８ｅは、この減算器１８ｄが求めた差分に半透明率を加算する回路部である。また、加算器１８ｆは、乗算器１８ｅの出力に上記背景色を加算する回路部である。
【００７５】
たとえば、図１（ａ）に示す画素（Ｃ，１）を描画先の画素とした場合には、画素（Ｃ，２）の画素値から画素（Ｃ，１）の画素値を減算した値に半透明率である０．２５を乗算し、その結果に画素（Ｃ，１）の画素値を加算するので、
｛（Ｃ，２）−（Ｃ，１）｝×０．２５＋（Ｃ，１）  ＝（Ｃ，２）×０．２５＋（Ｃ，１）×０．７５
となり、結果的に図４に示すものと同じ計算結果が得られる。
【００７６】
このように、かかる半透明処理部１８では、描画色、背景色および半透明率を入力パラメータとして、アンチエイリアシング処理の処理対象となる画素の画素値を算定している。
【００７７】
ところで、上記一連の説明では、本発明に係る描画位置差分の線形補完方式をハードウエア回路で構築した場合を示したが、本発明はこれに限定されるものではなく、ソフトウエアで実現することもできる。
【００７８】
そこで以下では、本発明に係る描画位置差分の線形補完方式をソフトウエアで実現した場合について説明する。ただし、本来の画素の描画を行ごとにおこないつつ、１行遅れでアンチエイリアシング処理をおこなう場合を前提とした場合を説明する。
【００７９】
図６は、本発明に係る描画位置差分の線形補完方式をソフトウエアで実現した場合における画像描画装置のハードウエア構成を示すブロック図である。同図において、ＣＰＵ６１は、画像描画装置全体を制御する中央処理装置であり、ＲＯＭ６２から読み出したプログラムを実行して、ＲＡＭ６３上に設けたページメモリ領域（図２のフレームバッファ１５に対応する。）に画像データを書き込む処理等をおこなう。なお、このプログラムには、本発明に係わる描画位置差分の線形補完処理をおこなうプロセスが内在されている。
【００８０】
ＲＯＭ６２は、オペレーティングシステムの他に、本発明に係わる描画位置差分の線形補完処理をおこなうプロセスを内在した画像描画プログラムを記憶するメモリである。ＲＡＭ６３は、ＣＰＵ６１のワークエリアとして使用されるメモリであり、このＲＡＭ６３上には、画像描画をおこなうためのページメモリ領域が確保される。
【００８１】
また、６４はＣＰＵ６１の制御にしたがってＨＤ（ハードディスク）６５に対するデータのリード／ライトを制御するＨＤＤ（ハードディスクドライブ）を、６５はＨＤＤ６４の制御で書き込まれたデータを記憶するＨＤをそれぞれ示している。
【００８２】
また、６６はＣＰＵ６１の制御にしたがってＦＤ（フロッピーディスク）６７に対するデータのリード／ライトを制御するＦＤＤ（フロッピーディスクドライブ）を、６７はＦＤＤ６６の制御で書き込まれたデータを記憶する着脱自在な記憶媒体の一例としてのＦＤを、６８はドキュメント、画像、機能情報等を表示するディスプレイをそれぞれ示している。
【００８３】
また、６９は通信回線７０を介してネットワークに接続され、そのネットワークと内部のインターフェイスを司るインターフェイス（Ｉ／Ｆ）を、７１は文字、数値、各種指示等の入力のためのキーを備えたキーボードを、７２はカーソルの移動や範囲選択、あるいは表示画面に表示されたアイコンやボタンの押下やウインドウの移動やサイズの変更等をおこなうマウスをそれぞれ示している。
【００８４】
また、７３はＯＣＲ（Ｏｐｔｉｃａｌ  Ｃｈａｒａｃｔｅｒ  Ｒｅａｄｅｒ）機能を備えた画像を光学的に読み取るスキャナを、７４は検索結果その他表示画面に表示されたデータの内容等を印刷するプリンタを、７５は上記各部を結合するためのバスをそれぞれ示している。
【００８５】
次に、図６に示す画像描画装置による描画処理手順について説明する。図７は、図６に示す描画処理装置による描画処理手順を示すフローチャートである。図７のフローチャートに示すように、この画像描画装置では、まず最初に画素描画をおこなう画素の位置座標を示すＸ座標およびＹ座標を算出し（ステップＳ７０１）、ページメモリ領域の該当する位置に画素を描画するとともに（ステップＳ７０２）、本発明に係る描画位置差分の線形補完方式によるアンチエイリアシング処理をおこなう。
【００８６】
すなわち、前回の描画位置と今回の描画位置から補完対象となる画素を特定し（ステップＳ７０３）、特定した補完対象画素の半透明率を算定する（ステップＳ７０４）。具体的には、「１」を補完対象画素列で除算した値を補完値差分とし、前回の描画位置に近づくほど半透明率が線形に増加するようにこの補完値差分を加算する。
【００８７】
そして、各補完対象画素の半透明率をそれぞれ求めたならば、描画元の画素と描画先の画素との間で半透明率を用いた半透明処理をおこなって、各補完対象画素の画素値を算定し（ステップＳ７０５）、算定した画素値を該当する補完対象画素に書き込む（ステップＳ７０６）。具体的には、描画元の画素の画素値に半透明率を乗算した値と、描画先の画素の画素値に（１−半透明率）を乗算した値とを加算して補完対象画素の画素値とする。
【００８８】
そして、このステップＳ７０１〜Ｓ７０６の処理を未処理の画素がなくなるまで繰り返し（ステップＳ７０７肯定）、未処理の画素がなくなった時点で（ステップＳ７０７否定）処理を終了する。
【００８９】
上記一連の処理をおこなうことにより、描画位置差分の線形補完方式を用いたアンチエイリアシング処理およびページメモリ領域への画像の描画をソフトウエアを用いておこなうことができる。
【００９０】
上述してきたように、この実施の形態１では、前回の描画位置を描画位置記憶部１６に記憶しておき、線形補完処理部１７がこの描画位置記憶部１６に記憶した前回の描画位置と今回の描画とから補完対象画素を特定して、特定した補完対象画素の半透明率を算定し、半透明処理部１８が半透明率を用いて各補完対象画素の画素値を算定するよう構成したので、アンチエイリアシング処理を少ないメモリで高速におこなうことができる。
【００９１】
（実施の形態２）
ところで、上記実施の形態１で示した描画位置差分の線形補完方式では、前回の描画位置と今回の描画位置の差分を用いて半透明率を算定することとしたが、かかる差分を用いなくとも半透明率を算定することができる。そこで、本実施の形態２では、多角形の辺の傾きを利用して直接半透明率を求める描画座標小数部利用方式について説明する。
【００９２】
まず最初に、本実施の形態２で用いる描画座標小数部利用方式の概念について説明する。この描画座標小数部利用方式は、多角形の辺の傾きを利用して半透明率を高速に算出し、算出した半透明率を用いて補完対象画素にアンチエイリアシング処理を施して画素値を補完するものである。
【００９３】
図８は、この実施の形態２で用いる描画座標小数部利用方式の概念の説明図である。図中の０〜６は行番号を示し、Ａ〜Ｇは列番号を示し、図中黒丸で示す画素が多角形の一部を形成する画素であるものとする。
【００９４】
同図（ａ）に示すように、Ｃ列を現在の描画位置と考えた場合には、画素（Ｂ，２）、（Ｂ，３）または（Ｂ，４）がアンチエイリアシング処理の対象画素となる。
【００９５】
ここで、この描画座標小数部利用方式は、辺の傾きから算出した列方向の座標の小数部分を１から減算した値を半透明率とするものであるので、かかる値を半透明率とした理由について説明する。
【００９６】
たとえば、この辺の傾きがｙ＝４ｘとなる場合には、ｙ＝１．０（行１）の場合にはｘ＝０．２５となり、ｙ＝２．０（行２）の場合にはｘ＝０．５となり、ｙ＝３．０（行３）の場合にはｘ＝０．７５となる。
【００９７】
すなわち、辺がｙ＝４ｘという傾きを有する場合には、本来は１行目の画素は列Ａから０．２５だけ列Ｂ側にずれるべきであり、２行目の画素は列Ａから０．５だけ列Ｂ側にずれるべきであり、３行目の画素は列Ａから０．７５だけ列Ｂ側にずれるべきである。
【００９８】
また、列Ａと列Ｂとを考えた場合に、列Ｂ側に大きくずれている場合には列Ｂの画素がそのずれ分を吸収できるので、この場合の半透明率をさほど大きくする必要はないが、列Ａ側に大きくずれている場合には、列Ｂの画素がそのずれ分を吸収できないので、この場合の半透明率は大きくする必要がある。
【００９９】
このことは、列Ａと列Ｂの間のみならず、列Ｂと列Ｃ、列Ｃと列Ｄの間でも成り立つので、本実施の形態２で用いる描画座標小数部利用方式では、辺の傾きから算出した列方向の座標の小数部を１から減算した値を半透明率としている。
【０１００】
このようにして、アンチエイリアシング処理の処理対象となる画素（Ｂ，２）〜（Ｂ，４）の半透明率を求めたならば、上記実施の形態１と同様に、描画元の画素を（Ｃ，２）〜（Ｃ，４）とし、描画先の画素を（Ｂ，２）〜（Ｂ，４）として半透明処理をおこない、その結果を画素（Ｂ，２）〜（Ｂ，４）に格納することになる。なお、同図（ｂ）に示すように、多角形の辺の傾きが４５度を越える場合には列座標の小数部ではなく、行座標の小数部を使用する。
【０１０１】
次に、本実施の形態２に係る描画座標小数部利用方式を用いた画像描画装置の構成について説明する。図９は、本実施の形態２で用いる描画座標小数部利用方式を用いた画像描画装置の構成を示すブロック図である。なお、図２に示す画像描画装置と同様の機能を有する部位には同一の符号を付すこととしてその詳細な説明を省略する。
【０１０２】
同図に示す画像描画装置９０は、傾き算出部１１、列方向座標算出部１２、行方向座標算出部１３、画素描画処理部１４、フレームバッファ１５、半透明処理部１８およびオン／オフ器１９と、小数部９１および９２と、選択器９３と、減算器９４とを有する。
【０１０３】
小数部９１は、列方向座標算出部１２が算出した列方向座標の小数部分のみを抽出する処理部であり、小数部９２は、行方向算出部１３が算出した行方向座標の小数部分のみを抽出する処理部である。
【０１０４】
選択器９３は、傾き算出部１１が算出した傾き角度が４５度未満か４５度を超えるかによって列座標を用いるか行座標を用いるかを選択する処理部であり、具体的には、４５度未満である場合には小数部９１の出力を選択し、４５度を超える場合には小数部９２の出力を選択する。
【０１０５】
減算器９４は、選択器９３の出力を１から減じる処理部である。かかる減算をおこなう理由は、選択器９３の出力である小数を１から減じたものを半透明率として半透明処理部１８に出力するためである。
【０１０６】
上記構成を有する画像描画装置９０を用いることにより、描画座標小数部利用方式を用いたアンチエイリアシング処理をおこないつつ、フレームバッファ１５への画像の描画をおこなうことができる。
【０１０７】
次に、本実施の形態２に係る描画座標小数部利用方式をソフトウエアで実現する場合について説明する。なお、この場合に用いる画像描画装置の構成は、図６に示すものと同様のものとなるので、ここではその処理手順についてのみ説明する。
【０１０８】
図１０は、実施の形態２に係る描画座標小数部利用方式をソフトウエアで実現した場合の処理手順を示すフローチャートである。図１０に示すように、まず最初に、画素描画をおこなう画素の位置座標を示すＸ座標およびＹ座標を算出し（ステップＳ８０１）、ページメモリ領域の該当する位置に画素を描画するとともに（ステップＳ８０２）、本発明に係る描画座標小数部利用方式によるアンチエイリアシング処理をおこなう。
【０１０９】
すなわち、列座標および行座標の小数部分をそれぞれ取得し（ステップＳ８０３）、辺の傾きに基づいて取得した小数部分のいずれか一方を選択し、選択した小数部分を「１」から減じて半透明率を算定する（ステップＳ８０４）。
【０１１０】
そして、補完対象画素の半透明率を求めたならば、描画元の画素と描画先の画素との間で半透明率を用いた半透明処理をおこなって、各補完対象画素の画素値を算定し（ステップＳ８０５）、算定した画素値を該当する補完対象画素に書き込む（ステップＳ８０６）。具体的には、描画元の画素の画素値に半透明率を乗算した値と、描画先の画素の画素値に（１−半透明率）を乗算した値とを加算して補完対象画素の画素値とする。
【０１１１】
そして、このステップＳ８０１〜Ｓ８０６の処理を未処理の画素がなくなるまで繰り返し（ステップＳ８０７肯定）、未処理の画素がなくなった時点で（ステップＳ８０７否定）処理を終了する。
【０１１２】
上記一連の処理をおこなうことにより、描画座標小数部利用方式を用いたアンチエイリアシング処理およびページメモリ領域への画像の描画をソフトウエアを用いておこなうことができる。
【０１１３】
上述してきたように、この実施の形態２では、列座標および行座標の小数部分を小数部９１および９２で取得し、選択器９３が傾き角度に応じて取得した小数部分の一方を選択し、選択した小数部分を１から減算した値を半透明率とし、半透明処理部１８がこの半透明率を用いて各補完対象画素の画素値を算定するよう構成したので、アンチエイリアシング処理をより高速におこなうことができる。
【０１１４】
（実施の形態３）
ところで、上記実施の形態１および実施の形態２では、傾き算出部１１が算出した傾き角度が４５度未満の場合だけでなく４５度を越える場合についても、それぞれ描画位置差分の線形補完方式および描画座標小数部利用方式を適用することとしたが、両方式を併有してアンチエイリアシング処理をおこなうこともできる。そこで、この実施の形態３では、上記描画位置差分の線形補完方式および描画座標小数部利用方式を併有した複合方式について説明する。
【０１１５】
一般の画像描画装置では、画像格納領域であるフレームバッファ１５にダイナミックＲＯＭを使用することが多い。その理由は、ダイナミックＲＯＭは、連続領域での処理を最も効率良く実行できるからである。このため、かかる連続領域での高速処理を考慮して、通常は多角形を行単位に分割し、行ごとに描画することになる。
【０１１６】
ここで、上記実施の形態１で説明した描画位置差分の線形補完方式は、傾き角度が４５度未満の場合には行単位分割に対応することができるが、この傾き角度が４５度を超えると半透明率が列方向に変化するため、その対応が難しい。
【０１１７】
これに対して、上記実施の形態２で説明した描画座標小数部利用方式は、傾き角度が４５度を越える場合にはそのまま行単位分割に対応することができるが、この傾き角度が４５度未満の場合には、行単位描画では本来必要のない列方向の座標を計算せねばならない。
【０１１８】
そこで、本実施の形態３に係る複合方式では、傾き角度が４５度未満の場合には描画位置差分の線形補完方式を利用し、この傾き角度が４５度を超える場合には描画座標小数部利用方式を利用することとしている。
【０１１９】
次に、本実施の形態３に係る複合方式を用いた画像描画装置の構成について説明する。図１１は、本実施の形態３に係る複合方式を用いた画像描画装置の構成を示すブロック図である。
【０１２０】
同図に示す画像描画装置１１０は、傾き算出部１１、列方向座標算出部１２、行方向座標算出部１３、画素描画処理部１４、フレームバッファ１５、描画位置記憶部１６、線形補完処理部１７、半透明処理部１８およびオン／オフ器１９と、小数部９２、選択器９３および減算器９４とを有する。
【０１２１】
そして、この画像描画装置１１０は、傾き算出部１１が算出した傾きが４５度未満の場合には、描画位置記憶部１６に記憶した前回の列座標位置と今回の列座標位置とを用いて描画位置差分の線形補完方式のアンチエイリアシング処理をおこなう。具体的には、線形補完装置１７が前回位置と今回位置とを用いて半透明率を算定し、半透明処理部１８による半透明処理をおこなう。
【０１２２】
これに対して、傾き算出部１１が算出した傾きが４５度を越える場合には、行方向座標の小数部分を小数部９２が取得し、取得した小数部分を減算器９４において１から減算して半透明率を算定し、算定した半透明率を用いて半透明処理部１８が半透明処理をおこなう。
【０１２３】
上述してきたように、本実施の形態３では、傾き算出部１１が算出した傾きが４５度未満の場合には描画位置差分の線形補完方式の処理をおこない、また傾き算出部１１が算出した傾きが４５度を越える場合には描画座標小数部利用方式の処理をおこなうよう構成したので、両方式の利点を兼ね備えたアンチエイリアシング処理をおこなうことができる。
【０１２４】
【発明の効果】
以上説明したように、本発明によれば、画像メモリに多角形の一部をなす画素の画情報を格納する際に、該画素の画素位置と画像メモリに以前に格納した画素の画素位置との差分に基づいて、エイリアシングの補完対象となる画素列を特定し、特定した画素列の画素数に基づいて該画素列を形成する各画素の半透明率を算定し、算定した半透明率に基づいて補完対象となる画素列の半透明処理をおこなうよう構成したので、多角形を画像メモリに描画する際に、描画メモリ以外の作業メモリ領域を必要とすることなく、高速にアンチエイリアシング処理をおこなうことができる。
【０１２５】
また、本発明によれば、多角形の辺の傾きを算定し、算定した傾きが４５度を越える場合には、列方向の画素位置と行方向の画素位置を変換して補完対象となる画素列を特定するよう構成したので、傾きが４５度未満または４５度を超えるいずれの場合であっても、効率良くアンチエイリアシング処理をおこなうことができる。
【０１２６】
また、本発明によれば、画像メモリに前回格納した第１の画素の画素位置と、該画像メモリに現在格納する第２の画素の画素位置との間に所在する画素数を算定し、この第１の画素に隣接する当該画素数分の画素列を補完対象となる画素列とするよう構成したので、補完対象となる画素列を効率良く特定することができる。
【０１２７】
また、本発明によれば、特定された画素列を形成する各画素の半透明率を線形に増加させるよう構成したので、補完対象となる画素列を形成する画素に迅速に半透明率を割り当てることができる。
【０１２８】
また、本発明によれば、特定された画素列の画素数に基づいて半透明率の基準値（補完値差分）を算定し、算定した基準値を巡回的に加算した値を画素列を形成する各画素の半透明率とするよう構成したので、巡回回路を用いて軽易に半透明率を算出することができる。
【０１２９】
また、本発明によれば、多角形の辺の傾きを算定し、算定した傾きから算出した補完対象となる画素の座標位置に基づいて該画素の半透明率を算定し、算定した半透明率に基づいて補完対象となる画素の半透明処理をおこなうよう構成したので、座標の小数部分を用いた極めて単純な演算のみで高速に半透明処理をおこなうことができる。
【０１３０】
また、本発明によれば、算定された傾きが４５度未満の場合には列方向の画素位置の小数部分を基準として半透明率を算定し、該傾きが４５度を超える場合には行方向の画素位置の小数部分を基準として半透明率を算定するよう構成したので、傾きが４５度未満または４５度を超えるいずれの場合であっても、効率良くアンチエイリアシング処理をおこなうことができる。
【０１３１】
また、本発明によれば、算定された傾きから算出した補完対象となる画素の座標位置の小数部分を１から減算した値を半透明率とするよう構成したので、減算という単純な演算のみで半透明率を高速に算定することができる。
【０１３２】
また、本発明によれば、補完対象となる画素の列方向および行方向の座標位置の小数部分をそれぞれ抽出し、算出された傾きに基づいて抽出したいずれか一方の小数部分を選択し、選択した小数部分を１から減算するよう構成したので、行および列の小数部のいずれかを１から減算するという極めて単純な演算のみで半透明率を算定することができる。
【０１３３】
また、本発明によれば、多角形の辺の傾きを算定し、画像メモリに多角形の一部をなす画素の画情報を格納する際に、該画素の画素位置と画像メモリに以前に格納した画素の画素位置との差分に基づいて、エイリアシングの補完対象となる画素列を特定し、特定した画素列の画素数に基づいて該画素列を形成する各画素の半透明率を算定するか、または算定された傾きから算出した補完対象となる画素の座標位置に基づいて該画素の半透明率を算定するかによって半透明率を求め、いずれかで求めた半透明率に基づいて補完対象となる各画素の半透明処理をおこなうよう構成したので、半透明率を２種類の半透明率算定手段の適切な一方を用いて効率良くアンチエイリアシング処理をおこなうことができる。
【０１３４】
また、本発明によれば、算定された傾きが４５度未満の場合には、前者の半透明率算定手段により半透明率を算定し、該傾きが４５度を超える場合には、後者の半透明率算定手段により半透明率を算定するよう構成したので、辺の傾きが４５度未満であるか４５度を超えるかによってより適切な半透明率算定手段を用いた半透明率の算定をおこなうことができる。
【０１３５】
また、本発明によれば、多角形を形成する画素の画情報を前記半透明率に乗算した値と、半透明率を１から減算した値（１−半透明率）を多角形以外の背景をなす画素の画情報に乗算した値とを加算した加算値を画素列を形成する各画素の画情報とするよう構成したので、簡単な演算で効率良く半透明処理をおこなうことができる。
【０１３６】
また、本発明によれば、算定した傾きが４５度でない場合には半透明処理を可能とし、該傾きが４５度である場合には半透明処理を不能とするよう構成したので、エイリアシングが生じない場合の処理をなくし、もって処理をさらに高速化することができる。
【図面の簡単な説明】
【図１】実施の形態１で用いる描画位置差分の線形補完方式の概念を示す説明図である。
【図２】実施の形態１に係る描画位置差分の線形補完方式を用いた画像描画装置の構成を示すブロック図である。
【図３】図２に示す線形補完処理部の具体的な構成を示す説明図である。
【図４】図２に示す半透明処理部の具体的な構成の一例を示す説明図である。
【図５】図２に示す半透明処理部の他の構成の一例を示す説明図である。
【図６】実施の形態１で用いる描画位置差分の線形補完方式をソフトウエアで実現した場合の画像描画装置のハードウエア構成を示すブロック図である。
【図７】図６に示す画像描画装置による描画処理手順を示すフローチャートである。
【図８】実施の形態２で用いる描画座標小数部利用方式の概念の説明図である。
【図９】実施の形態２で用いる描画座標小数部利用方式を用いた画像描画装置の構成を示すブロック図である。
【図１０】実施の形態２に係る描画座標小数部利用方式をソフトウエアで実現した場合の処理手順を示すフローチャートである。
【図１１】本実施の形態３に係る複合方式を用いた画像描画装置の構成を示すブロック図である。
【符号の説明】
１０      画像描画装置
１１      傾き算出部
１２      列方向座標算出部
１３      行方向座標算出部
１４      画素描画処理部
１５      フレームバッファ
１６      描画位置記憶部
１７      線形補完処理部
１７ａ，１７ｂ  選択器
１７ｃ    減算器
１７ｄ    除算器
１７ｅ    補完値差分保持部
１７ｆ    カウンタ
１７ｇ    半透明率出力部
１７ｈ    加算器
１８      半透明処理部
１８ａ，１８ｂ  乗算器
１８ｃ    加算器
１８ｄ    減算器
１８ｅ    乗算器
１８ｆ    加算器
１９      オン／オフ器
２０，２１  アンチエイリアシング処理の対象領域
９０      画像描画装置
９１，９２  小数部
９３      選択器
９４      減算器
【図１】
0003649947.tif 000002
【図２】
0003649947.tif 000003
【図３】
0003649947.tif 000004
【図４】
0003649947.tif 000005
【図５】
0003649947.tif 000006
【図６】
0003649947.tif 000007
【図７】
0003649947.tif 000008
【図８】
0003649947.tif 000009
【図９】
0003649947.tif 000010
【図１０】
0003649947.tif 000011
【図１１】
0003649947.tif 000012