(57)【要約】【課題】境界線と画素とで囲まれる面積を正確かつ高速に算出することができる。【解決手段】表示領域に設けられたｘ，ｙ軸方向に従って配置された画素の辺と交点を有する境界線の両端の２点が入力されて（Ｓ１１）、境界線がｘ軸またはｙ軸と平行であれば、境界線と画素とで囲まれる方形の面積が出力され（Ｓ１４）、境界線がｘ軸またはｙ軸と平行でなく、さらに、等間隔の交点のうち隣接する交点間に辺と別の交点が無ければ、境界線と１つの画素とで囲まれる四角形の面積と（Ｓ１８）、別の交点が有れば、境界線と１つの画素とで囲まれる三角形の面積と（Ｓ１９）、境界線と２つの画素とで囲まれる四角形の面積と（Ｓ２０）、境界線と２つの画素とで囲まれる四角形から三角形を除いた多角形の面積と（Ｓ２１）が、出力される。【選択図】図１
2008226132.tif 000002
【特許請求の範囲】
【請求項１】
画素を横切る描画領域の境界線と前記画素とで囲まれた面積に基づいてギザギザ現象を抑えるアンチエイリアシング処理方法において、
表示領域にｘ，ｙ軸方向が設けられ、前記方向に従って配置された前記画素の辺と交点を有する前記境界線の両端の２点を入力する工程と、
前記２点により、前記境界線の傾き値を算出する工程と、
前記境界線が前記ｘ軸もしくは前記ｙ軸と平行であれば、前記境界線と前記画素とで囲まれる方形の前記面積を算出する工程と、
前記境界線が前記ｘ軸もしくは前記ｙ軸と平行でなく、さらに、等間隔の前記交点のうち隣接する前記交点間に前記辺と別の交点が無ければ、前記境界線と１つの前記画素とで囲まれる四角形の前記面積と、前記別の交点が有れば、前記境界線と１つの前記画素とで囲まれる三角形の前記面積と、前記境界線と２つの前記画素とで囲まれる四角形の前記面積と、前記境界線と２つの前記画素とで囲まれる四角形から前記三角形を除いた多角形の前記面積と、を出力する工程と、
を有することを特徴とするアンチエイリアシング処理方法。
【請求項２】
前記境界線が前記ｘ軸もしくは前記ｙ軸と平行でない場合、あらかじめ、処理の最初に算出される、前記境界線と１つの前記画素とで囲まれる四角形および前記三角形を含む大三角形の前記面積を算出する工程をさらに有することを特徴とする請求項１記載のアンチエイリアシング処理方法。
【請求項３】
前記境界線と１つの前記画素との四角形の前記面積は、前記四角形と隣接する別の四角形である先行四角形の前記面積から前記傾き値を差し引くことによって算出されることを特徴とする請求項１または２に記載のアンチエイリアシング処理方法。
【請求項４】
前記境界線と２つの前記画素との四角形の前記面積は、前記三角形の前記先行四角形の前記面積に１画素の面積を加えるとともに、前記傾き値を差し引くことによって算出されることを特徴とする請求項１乃至３に記載のアンチエイリアシング処理方法。
【請求項５】
画素を横切る描画領域の境界線と前記画素とで囲まれた面積に基づいてギザギザ現象を抑えるアンチエイリアシング処理装置において、
表示領域にｘ，ｙ軸方向が設けられ、前記方向に従って配置された前記画素の辺と交点を有する前記境界線の両端の２点を入力する手段と、
前記２点により、前記境界線の傾き値を算出する手段と、
前記境界線が前記ｘ軸もしくは前記ｙ軸と平行であれば、前記境界線と前記画素とで囲まれる方形の前記面積を算出する手段と、
前記境界線が前記ｘ軸もしくは前記ｙ軸と平行でなく、さらに、等間隔の前記交点のうち隣接する前記交点間に前記辺と別の交点が無ければ、前記境界線と１つの前記画素とで囲まれる四角形の前記面積と、前記別の交点が有れば、前記境界線と１つの前記画素とで囲まれる三角形の前記面積と、前記境界線と２つの前記画素とで囲まれる四角形の前記面積と、前記境界線と２つの前記画素とで囲まれる四角形から前記三角形を除いた多角形の前記面積と、を出力する手段と、
を有することを特徴とするアンチエイリアシング処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はアンチエイリアシング処理方法およびアンチエイリアシング処理装置に関し、特に、画素を横切る画像境界線と画素とで囲まれた面積に基づいてギザギザ現象を抑えるアンチエイリアシング処理方法およびアンチエイリアシング処理装置に関する。
【背景技術】
【０００２】
コンピュータのＣＲＴ（Cathode Ray Tube）ディスプレイなどの表示装置でラインや三角形などの図形を表示する時に、斜め線が階段状のギザギザになることがある。
図９は、表示装置におけるギザギザ現象を示す模式図である。
【０００３】
表示領域２００は、図９に示すように、複数の画素（ピクセル）２２１によって構成されており、描画対象の境界線２１０が画素２２１を横切るように引かれている（ただし、境界線２１０の傾きｋは、−１＜ｋ＜０、または、０＜ｋ＜１とする。）。この境界線２１０の下方（図９における境界線２１０から下側領域であって、着色が施されている領域）を描画領域２２０とし、描画領域２２０と境界線２１０との輪郭にて、階段状のギザギザ（ジャギー）部分が生じる。このギザギザ現象が生じると、出力される画像や文字などの輪郭がギザギザとなって、不鮮明に表示されるため、ギザギザ現象を抑える工夫がなされている。なお、１画素の大きさを１×１とする。
【０００４】
そこで、このようなギザギザ現象を抑えるためにアンチエイリアシングという技術が用いられている。
アンチエイリアシングとは、境界線と画素とで囲まれる図形の面積を基に、その面積割合をブレンド率として用いて、その図形の既存色と描画色とを合わせて（ブレンドして）、境界線の周囲にブレンドした色を配置する手法である。
【０００５】
以下に、ブレンド率について説明する。
図１０は、ブレンド率について説明するための模式図である。
図１０は、描画領域の画素を横切る描画対象の境界線を示しており、図１０（Ａ）では、１つの画素を、図１０（Ｂ）では、２つの画素を横切る境界線である。なお、図１０では、特に断りが無い限り、図９と同様の符号、１画素の大きさおよび傾きを利用することにする。
【０００６】
図１０（Ａ）では、１つの画素２２１ａを横切る境界線２１０の両端点を（Ｘα，Ｙα）、（Ｘα+1，Ｙα+1）（Ｙα＞Ｙα+1）とする場合、各長さは以下のように表すことができる。なお、ｆｒａｃ（Ｙα）はＹαの小数部、ｋは境界線２１０の傾き、｜ｋ｜は傾きｋの絶対値を表す。
【０００７】
長さａｃ＝ｆｒａｃ（Ｙα）、長さｃｄ＝１、長さａ’ｂ＝｜ｋ｜
従って、斜線部の面積Ｓαは、以下のように表すことができる。
Ｓα＝ｆｒａｃ（Ｙα）×１−１×｜ｋ｜×（１／２）＝ｆｒａｃ（Ｙα）−｜ｋ｜／２
このように算出した面積Ｓαが１画素当たりに占める割合はＳαとなる。従って、この割合をブレンド率として、既存色と描画色とを、１−Ｓα：Ｓαとの割合でブレンドした色を用いて１画素を描画する。
【０００８】
一方、図１０（Ｂ）でも同様にして、画素２２１ｂを横切る境界線２１０の両端点を（Ｘβ，Ｙβ）、（Ｘβ+1，Ｙβ+1）（Ｙβ＞Ｙβ+1）として、各長さは以下のように表すことができる。なお、ｆｒａｃ（Ｙβ）はＹβの小数部、ｋは境界線２１０の傾き、｜ｋ｜は傾きｋの絶対値を表す。
【０００９】
長さｅｉ＝ｆｒａｃ（Ｙβ）、長さｉｊ＝ｆｒａｃ（Ｙβ）／｜ｋ｜、長さｊｋ＝１−（ｆｒａｃ（Ｙβ）／｜ｋ｜）、長さｋｆ＝｜ｋ｜−ｆｒａｃ（Ｙβ）
従って、斜線部の面積Ｓβ1（上部の三角形ｅｊｉの面積）および面積Ｓβ2（下部の五角形ｉｊｆｇｈの面積）は、以下のようにして表すことができる。
【００１０】
Ｓβ1＝１／２×（ｆｒａｃ（Ｙβ）／｜ｋ｜）×ｆｒａｃ（Ｙβ）＝（ｆｒａｃ（Ｙβ））2／２｜ｋ｜
Ｓβ2＝１−１／２×（１−（ｆｒａｃ（Ｙβ）／｜ｋ｜））×（｜ｋ｜−ｆｒａｃ（Ｙβ））＝１−（｜ｋ｜−ｆｒａｃ（Ｙβ））2／２｜ｋ｜
この場合も同様にして算出した面積を利用してブレンド率にて既存色と描画色とをブレンドした色を用いて１画素を描画する。
【００１１】
従って、このようなアルゴリズム（Ｂｒｅｓｅｎｈａｍアルゴリズム）に従うと、描画領域の面積を算出することができる。
ところが、このようなＢｒｅｓｅｎｈａｍアルゴリズムでは、演算が複雑で、計算量が膨大となって処理時間がかかってしまうために、境界線と画素とで囲まれる面積を、近似を用いて算出する方法などが用いられた（例えば、特許文献１参照。）。
【００１２】
図１１は、従来のブレンド率に用いる面積算出方法を説明する模式図である。
図１１では、ブレンド率に用いる面積の算出に近似を利用している。なお、特に断りが無い限り、図９，１０と同様の符号、１画素の大きさおよび傾きを利用することにする。また、図１１では、境界線２１０の画素２２２ａを横切る両端点を（Ｘα1，Ｙα1）、（Ｘα1+1，Ｙα1+1）、点ｄ＝（０，０）とする。
【００１３】
図１１（Ａ）では、境界線２１０がｙ軸方向に画素２２２ａ境界にて平行する２線のみと交差しているため、四角形ｅｆｃｄの面積Ｓαは、以下のように表すことができる。
Ｓα＝（Ｙα1＋Ｙα1+1）／２
すなわち、これは境界線２１０の中心点から画素２２２ａのｘ軸への最短距離を示しているために、ブレンド率に用いる面積として、長さｊｉ（＝Ｌａとする）を利用することができる。従って、境界線２１０の中心点から画素のｘ軸への最短距離を面積と見なして、図１１（Ｂ），（Ｃ）についても以下に引き続き説明を続ける。
【００１４】
次に、図１１（Ｂ）では、境界線２１０が、画素２２２ｂ境界のｙ軸方向に平行する２線と交差するとともに、画素２２２ｂ境界のｘ軸方向に平行な線とも交差し、長さａｌが長さａｄ／２よりも小さい場合を例に挙げてある。そして、境界線２１０の中心点から画素のｘ軸までの最短距離ｊｉをＬｂとする。このとき、三角形ｅｌａの面積を０、五角形ａｌｆｃｄの面積をＬｂとすることで、境界線２１０と画素２２２ｂとで囲まれる面積ｅｆｃｄとした。
【００１５】
また、図１１（Ｃ）も同様に、画素２２２ｃ境界のｙ軸方向に平行する２線と交差するとともに、画素２２２ｃ境界のｘ軸方向に平行な線とも交差し、この例では、長さａｌが長さａｄ／２よりも大きい場合を例に挙げてある。そして、境界線２１０の中心点から画素のｘ軸までの最短距離ｊｉをＬｃとする。このとき、三角形ｅｌａの面積をＬｃ、五角形ａｌｆｃｄの面積を１とすることで、境界線２１０と画素２２２ｃとで囲まれる面積ｅｆｃｄとした。
【００１６】
以上のようにして、境界線と画素とで囲まれる面積を近似することで、複雑な演算を簡略化して、アンチエイリアシング処理を行うことができた。
【特許文献１】特開平９−２４５１８１号公報
【発明の開示】
【発明が解決しようとする課題】
【００１７】
しかし、上記特許文献のように、境界線と画素とで囲まれる面積の算出に近似を用いると、正確な面積を算出することができないために、高精度のブレンド率が得られないという問題点があった。
【００１８】
本発明はこのような点に鑑みてなされたものであり、境界線と画素とで囲まれる面積を正確かつ高速に算出することができるアンチエイリアシング処理方法およびその処理装置を提供することを目的とする。
【課題を解決するための手段】
【００１９】
本発明では上記課題を解決するために、画素を横切る描画領域の境界線と画素とで囲まれた面積に基づいてギザギザ現象を抑えるアンチエイリアシング処理方法において、図１に示すように、表示領域にｘ，ｙ軸方向が設けられ、方向に従って配置された画素の辺と交点を有する境界線の両端の２点を入力する工程（Ｓ１１）と、２点により、境界線の傾き値を算出する工程（Ｓ１２）と、境界線がｘ軸もしくはｙ軸と平行であれば、境界線と画素とで囲まれる方形の面積を算出する工程（Ｓ１４）と、境界線がｘ軸もしくはｙ軸と平行でなく、さらに、等間隔の交点のうち隣接する交点間に辺と別の交点が無ければ、境界線と１つの画素とで囲まれる四角形の面積（Ｓ１８）と、別の交点が有れば、境界線と１つの画素とで囲まれる三角形の面積（Ｓ１９）と、境界線と２つの画素とで囲まれる四角形の面積（Ｓ２０）と、境界線と２つの画素とで囲まれる四角形から三角形を除いた多角形の面積（Ｓ２１）と、を出力する工程と、を有することを特徴とするアンチエイリアシング処理方法が提供される。
【００２０】
このようなアンチエイリアシング処理方法によれば、表示領域に設けられたｘ，ｙ軸方向に従って配置された画素の辺と交点を有する境界線の両端の２点が入力されて、境界線がｘ軸またはｙ軸と平行であれば、境界線と画素とで囲まれる方形の面積が出力され、境界線がｘ軸またはｙ軸と平行でなく、さらに、等間隔の交点のうち隣接する交点間に辺と別の交点が無ければ、境界線と１つの画素とで囲まれる四角形の面積と、別の交点が有れば、境界線と１つの画素とで囲まれる三角形の面積と、境界線と２つの画素とで囲まれる四角形の面積と、境界線と２つの画素とで囲まれる四角形から三角形を除いた多角形の面積とが、出力される。
【００２１】
また、上記課題を解決するために、画素を横切る描画領域の境界線と前記画素とで囲まれた面積に基づいてギザギザ現象を抑えるアンチエイリアシング処理装置において、表示領域にｘ，ｙ軸方向が設けられ、前記方向に従って配置された前記画素の辺と交点を有する前記境界線の両端の２点を入力する手段と、前記２点により、前記境界線の傾き値を算出する手段と、前記境界線が前記ｘ軸もしくは前記ｙ軸と平行であれば、前記境界線と前記画素とで囲まれる方形の前記面積を算出する手段と、前記境界線が前記ｘ軸もしくは前記ｙ軸と平行でなく、さらに、等間隔の前記交点のうち隣接する前記交点間に前記辺と別の交点が無ければ、前記境界線と１つの前記画素とで囲まれる四角形の前記面積と、前記別の交点が有れば、前記境界線と１つの前記画素とで囲まれる三角形の前記面積と、前記境界線と２つの前記画素とで囲まれる四角形の前記面積と、前記境界線と２つの前記画素とで囲まれる四角形から前記三角形を除いた多角形の前記面積と、を出力する手段と、を有することを特徴とするアンチエイリアシング処理装置が提供される。
【００２２】
このようなアンチエイリアシング処理装置によれば、表示領域に設けられたｘ，ｙ軸方向に従って配置された画素の辺と交点を有する境界線の両端の２点が入力されて、境界線がｘ軸またはｙ軸と平行であれば、境界線と画素とで囲まれる方形の面積が出力され、境界線がｘ軸またはｙ軸と平行でなく、さらに、等間隔の隣接する交点間に辺と別の交点が無ければ、境界線と１つの画素とで囲まれる四角形の面積と、別の交点が有れば、境界線と１つの画素とで囲まれる三角形の面積と、境界線と２つの画素とで囲まれる四角形の面積と、境界線と２つの画素とで囲まれる四角形から三角形を除いた多角形の面積とが、出力される。
【発明の効果】
【００２３】
本発明では、表示領域に設けられたｘ，ｙ軸方向に従って配置された画素の辺と交点を有する境界線の両端の２点を入力して、境界線がｘ軸またはｙ軸と平行であれば、境界線と画素とで囲まれる方形の面積を出力して、境界線がｘ軸またはｙ軸と平行でなく、さらに、等間隔の交点のうち隣接する交点間に辺と別の交点が無ければ、境界線と１つの画素とで囲まれる四角形の面積と、別の交点が有れば、境界線と１つの画素とで囲まれる三角形の面積と、境界線と２つの画素とで囲まれる四角形の面積と、境界線と２つの画素とで囲まれる四角形から三角形を除いた多角形の面積とを出力するようにした。これにより、境界線と画素とで囲まれる面積を正確に算出でき、また、複雑だった演算を簡略化でき、算出に要する時間を短縮することができる。
【発明を実施するための最良の形態】
【００２４】
以下、本発明の実施の形態を、図面を参照して詳細に説明する。ただし、本発明の技術的範囲はこれらの実施の形態に限定されるものではない。
まず、本発明の概要について説明し、その後に実施の形態について説明する。なお、本実施の形態では、既述の通り、１画素の大きさは１×１として説明を行うこととする。
【００２５】
図１は、本発明の処理フローの概要図であって、図２は、境界線が表示された表示領域の模式図である。
フローチャート図１０は、本発明の処理の概要を説明したものであり、表示領域に、ｘ，ｙ軸方向が設定され、それぞれの方向に１画素が敷き詰められるように構成されて、描画領域の境界線が引かれて、この境界線の傾きに応じ、境界線と画素とで囲まれる面積を高精度かつ高速に算出することができる。
【００２６】
以下、本発明の概要を、フローチャート図１０に沿って図２と合わせて説明する。
［ステップＳ１１］  境界線の両端となる２点を入力する。
図２では、境界線の両端として、境界線３１ａであれば、（ｘ１，ｙ１）および（ｘ１，ｙ１’）、境界線３１ｂであれば、（ｘ２，ｙ２）および（ｘ２’，ｙ２）、境界線３１ｃであれば、（ｘ３，ｙ３）および（ｘ４，ｙ４）が両端の２点とする。
【００２７】
［ステップＳ１２］  入力した２点から、境界線の傾きを算出する。
図２の境界線３１ｃであれば、傾きｋは、ｋ＝（ｙ３−ｙ４）／（ｘ３−ｘ４）で算出することができる。
【００２８】
［ステップＳ１３］  境界線が、ｘ軸またはｙ軸のいずれかと平行であるか否かを判断する。
ステップＳ１２により傾きを算出した結果、図２に示すように、境界線の傾きが無限大もしくは０、すなわち、境界線がｙ軸またはｘ軸のいずれかと平行であれば（境界線３１ａ，３１ｂ）、ステップＳ１４へ進められ、境界線の傾きがそれ以外、すなわち、ｘ軸またはｙ軸ともに平行でなければ（境界線３１ｃ）、ステップＳ１５へ進められる。
【００２９】
［ステップＳ１４］  入力した境界線の両端の２点から、境界線と画素とで囲まれる方形の面積を算出して出力する。
図２に示すように、境界線３１ａとｙ軸とが平行の時は、境界線３１ａの両端の２点は（ｘ１，ｙ１）、（ｘ１，ｙ１’）であるため、境界線３１ａの長さを｜ｙ１−ｙ１’｜、境界線とｙ軸との幅を｜ｘ１｜とできる。また、境界線３１ｂとｘ軸とが平行の時は、境界線３１ｂの両端の２点は（ｘ２，ｙ２）、（ｘ２’，ｙ２）であるため、境界線３１ｂの長さを｜ｘ２−ｘ２’｜、境界線とｘ軸との幅を｜ｙ２｜とできる。以上から、容易に境界線３１ａ，３１ｂと画素とで囲まれた領域を算出することができる。
【００３０】
なお、描画領域が、境界線３１ａ，３１ｂの左右もしくは上下のいずれかに存在するかによって、幅を適宜、１−｜ｘ１｜や１−｜ｙ２｜として面積を算出する必要がある。
［ステップＳ１５］  境界線が、ｘ軸またはｙ軸と平行でない場合、境界線と画素との交点をチェックして、初期設定を行う。
【００３１】
初期設定では、図２に示すように、境界線３１ｃと画素との交点をチェックして、四角形ａｂｄｃの面積である初期四角形面積、三角形ａｉｃの面積である初期三角形面積などをあらかじめ算出しておく。
【００３２】
［ステップＳ１６］  チェックした境界線と画素との交点を選択する。なお、処理を行って、前回選択した点のｘ軸方向に１移動した隣接点を順に選択することとする。
図２では、例えば、最初に点ａ（ｘ３，ｙ３）を選択する。次回ステップＳ１６へ進められると、次は、ｘ軸方向に１移動した点ｂを選択し、同様にして、次は点ｅ，点ｊ…を選択するといった具合に、一方向に順に１移動した隣接点を選択する。
【００３３】
［ステップＳ１７］  ステップＳ１６で選択した点とその隣接点との間に、画素との交点があるかを判断する。交点がなければステップＳ１８へ進められ、交点があればステップＳ１９へ進められる。なお、このような交点の存在領域を「変換領域」や「変換点」などと以下呼ぶこととする。
【００３４】
図２では、例えば、ステップＳ１７で選択した点ａと、この隣接点である点ｂとの間に画素との交点が無いため、この場合はステップＳ１８へ進められる。
一方、ステップＳ１７で点ｅを選択したとすると、この隣接点である点ｊとの間に、画素との交点として点ｉが有り、変換点であるため、この場合はステップＳ１９へ進められる。
【００３５】
［ステップＳ１８］  ステップＳ１６で選択した点およびその隣接点によって画素を囲む面積を算出して、出力する。
ところで、境界線と画素とで囲まれる面積について以下に説明を行う。
【００３６】
図２において、四角形ａｂｄｃの面積は、既に説明したように、Ｓabdc＝（｜ａｃ｜＋｜ｂｄ｜）／２と表現することができる。ただし、｜ａｃ｜および｜ｂｄ｜は、ａｃおよびｂｄの長さである。
【００３７】
一方、四角形ｂｅｆｄの面積も同様にして、Ｓbefd＝（｜ｂｄ｜＋｜ｅｆ｜）／２と表現することができる。ただし、｜ｂｄ｜および｜ｅｆ｜は、ｂｄおよびｅｆの長さである。
【００３８】
このとき、これらの面積の差は、Ｓabdc−Ｓbefd＝（｜ａｃ｜−｜ｅｆ｜）／２と表現することができ、これは、境界線３１の傾き｜ｋ｜に相当する値である。
この性質を利用して、まず、選択する点ａと隣接点の点ｂとによって囲まれる四角形ａｂｄｃの面積ＳabdcはステップＳ１５で算出した初期四角形面積であって、次に選択する点ｂと隣接点の点ｅとによって囲まれる四角形ｂｅｆｄの面積Ｓbefdは、Ｓabdc−｜ｋ｜と表現することができる。
【００３９】
［ステップＳ１９］  ステップＳ１７で、境界線と画素との交点である変換点がある場合、選択した点と交点とによる変換点における三角形の面積を算出し、出力する。
図２では、例えば、選択した点ｅと隣接点の点ｊとの交点に点ｉがあることから、変換点の三角形ｅｉｆを算出し、出力する。また、この算出方法としては、ステップＳ１５にて得られた三角形ａｉｃの初期三角形面積から、ステップＳ１８で算出される四角形を足し合わせた四角形ａｅｆｃの面積を差し引くことによって変換点の三角形ｅｉｆの面積が算出される。
【００４０】
［ステップＳ２０］  ステップＳ１７で、境界線と画素との交点である変換点がある場合、選択した点と、その隣接点とによって囲まれる画素の変換点における四角形の面積を算出し、出力する。
【００４１】
図２では、選択した点ｅの隣接点の点ｊとで囲まれる、変換点における四角形ｅｊｋｇの面積を算出し、出力する。
［ステップＳ２１］  ステップＳ１７で、境界線と画素との交点である変換点がある場合、ステップＳ２０で算出した変換点における四角形の面積から、ステップＳ１９で算出した変換点における三角形の面積を差し引くことによって、変換点における五角形の面積を算出し、出力する。
【００４２】
図２では、四角形ｅｊｋｇから三角形ｅｉｆの面積を差し引くことによって、五角形ｆｉｊｋｇの面積を算出し、出力する。
［ステップＳ２２］  選択した点の隣接点にさらに隣接点があるか否かを判断する。他に隣接点が有れば、ステップＳ１６へ進められ、他に隣接点が無ければ、処理が終了する。
【００４３】
図２では、例えば、選択した点ｌの隣接点である点ｎにさらに隣接点はないため、この場合は、処理が終了する。
以上のようにして、境界線と画素とで囲まれる面積を正確に算出でき、また、面積の算出に、面積から傾きを差し引くことを繰り返すことによって複雑だった演算を簡略化でき、算出に要する時間を短縮することができる。従って、高速かつ正確に算出された面積をブレンド率として用いることによって、高精度のアンチエイリアシング処理を行うことが可能となる。
【００４４】
以下に、本発明を利用した実施の形態について、図面を参照にして説明する。
本実施の形態は、ユーザからアンチエイリアシング処理装置に描画領域の境界線の両端の２点を入力することによって、アンチエイリアシング処理のブレンド率として用いられる面積を算出することができる。
【００４５】
図３は、アンチエイリアシング処理装置の機能を示すブロック図である。
アンチエイリアシング処理装置４０は、初期値データ部４１、面積値データ部４２、傾き値算出部４３、初期設定部４４および面積算出部４５から構成されている。
【００４６】
初期値データ部４１は、あらかじめ初期設定が行われた、境界線と画素とで囲まれる四角形および三角形の面積値などのデータを格納する。なお、初期設定で算出される四角形および三角形の面積については、後に挙げる具体例の中でその詳細を説明する。
【００４７】
面積値データ部４２は、アンチエイリアシング処理装置によって算出された境界線と画素とで囲まれる面積値のデータを格納する。
傾き値算出部４３は、入力された境界線の両端の２点によって、境界線の傾きを算出する。
【００４８】
初期設定部４４は、傾き値算出部４３で算出された傾きに従って、境界線がｘ軸およびｙ軸と平行でない場合、境界線と画素とで囲まれる四角形および三角形の面積を算出し、算出した面積値を初期値データ部４１へ格納する。
【００４９】
面積算出部４５は、さらに、方形算出部４５ａ、四角形算出部４５ｂ、三角形算出部４５ｃおよび五角形算出部４５ｄを有する。
方形算出部４５ａは、傾き値算出部４３にて算出された傾きを有する境界線がｘ軸またはｙ軸に平行である場合、境界線の両端の２点を用いて、境界線と画素とで囲まれる方形の面積を算出する。
【００５０】
四角形算出部４５ｂは、境界線がｘ軸およびｙ軸と平行でない場合、境界線と画素とで囲まれる四角形や変換点における四角形の面積を算出する。なお、面積算出方法として、初期設定部４４で得られた初期四角形に隣接する、境界線と１画素とで囲まれる領域の面積は、初期四角形の面積から、境界線の傾き値を差し引くことによって算出することができ、同様に、得られた四角形の面積から傾きを差し引くことによって、隣接する四角形の面積を算出することができる。また、変換点における四角形の面積は、変換点における三角形に隣接する四角形の面積に１を加えて傾き値を差し引くことによって算出することができる。
【００５１】
三角形算出部４５ｃは、境界線がｘ軸およびｙ軸と平行でない場合、境界線と画素とで囲まれる変換点における三角形の面積を算出する。算出には、初期設定部４４で得られた初期三角形の面積から、四角形算出部４５ｂで算出された四角形が足し合わせた面積を差し引くことによって、変換点における三角形の面積を算出することができる。
【００５２】
五角形算出部４５ｄは、境界線がｘ軸もしくはｙ軸と平行でない場合、境界線と画素とで囲まれる変換点における五角形の面積を算出する。算出には、四角形算出部４５ｂで得られ変換点における四角形から、三角形算出部４５ｃで算出された変換点における三角形の面積を差し引くことによって、五角形の面積を算出することができる。
【００５３】
このようにして、算出された面積が面積値データ部４２へ格納される。
次に、アンチエイリアシング処理装置４０によって、境界線と画素とで囲まれる面積を算出する処理について説明する。
【００５４】
図４は、本発明の実施の形態におけるアンチエイリアシング処理の面積算出処理を示すフローチャート、図６は、本実施の形態における傾きを有する描画領域の境界線が表示された表示領域の模式図である。
【００５５】
図４は、アンチエイリアシング処理装置４０における境界線と画素とで囲まれる面積算出処理の流れについて示しており、図６は、表示領域７０に傾きを有する境界線７１が画素を横切るように描画されたところを示している。なお、境界線７１の下側を描画領域とする。
【００５６】
以下、アンチエイリアシング処理装置４０による面積算出処理についてフローチャート図５０に沿って、図６を用いながら説明する。
［ステップＳ５１］  ユーザによって、境界線の両端となる２点が傾き値算出部４３へ入力される。
【００５７】
入力される２点の例として、図６に示されるような点Ａ（Ｘ１，Ｙ１）および点Ｂ（Ｘｎ，Ｙｎ）などがある。
［ステップＳ５２］  傾き値算出部４３が、入力された２点から境界線の傾きを算出する。
【００５８】
既に説明したとおり、算出される傾きは、ゼロ、無限大およびそれ以外の３つの場合について得られる。
［ステップＳ５３］  傾き値算出部４３は、得られた傾きがゼロ、すなわち、ｘ軸と平行であるか否かを判断する。ｘ軸と平行であれば、ステップＳ５４へ進められ、ｘ軸と平行でなければ、ステップＳ５６へ進められる。
【００５９】
［ステップＳ５４］  ｘ軸と平行であれば、面積算出部４５の方形算出部４５ａが、入力された２点から、境界線の横の長さおよびｘ軸から境界線までの縦の長さを算出して、それらを掛けることによって、境界線と画素とで囲まれる描画領域の面積を算出する。なお、描画領域が、ｘ軸に平行な境界線の上下のいずれかに存在するかによって、縦の高さを、１から、入力されたｙの値を引いた値を利用するなど、適宜対応する必要がある。
【００６０】
［ステップＳ５５］  ステップＳ５４で算出された方形の面積を、方形算出部４５ａが面積値データ部４２へ格納する。
［ステップＳ５６］  傾き値算出部４３は、得られた傾きが無限大、すなわち、ｙ軸と平行であるか否かを判断する。ｙ軸と平行であれば、ステップＳ５７へ進められ、ｙ軸と平行でなければ、ステップＳ５９へ進められる。
【００６１】
［ステップＳ５７］  ｙ軸と平行であれば、面積算出部４５の方形算出部４５ａが、入力された２点から、境界線の縦の長さおよびｙ軸から境界線までの横の長さを算出して、それらを掛けることによって、境界線と画素とで囲まれる描画領域の面積を算出する。なお、描画領域が、ｙ軸に平行な境界線の左右のいずれかに存在するかによって、横の長さを、１から、入力されたｘの値を引いた値を利用するなど、適宜対応する必要がある。
【００６２】
［ステップＳ５８］  ステップＳ５７で算出された方形の面積を、方形算出部４５ａが面積値データ部４２へ格納する。
［ステップＳ５９］  境界線がｘ軸およびｙ軸ともに平行でない場合、初期設定部４４が、後の面積算出に必要となる部分の面積をあらかじめ算出し、算出した面積値などのデータを初期値データ部４１へ格納する。
【００６３】
境界線が傾きを有する場合として、図６に示すように、初期値として、四角形ＡＢＢ１Ａ１、三角形ＡＤＡ１、三角形ＦＫＦ１の面積をあらかじめ算出し、初期値データ部４１へ格納する。
【００６４】
なお、本実施の形態における境界線７１の傾きｋは、−１＜ｋ＜０、または、０＜ｋ＜１とする。
［ステップＳ６０］  面積算出部４５の四角形算出部４５ｂ、三角形算出部４５ｃおよび五角形算出部４５ｄによって、境界線と画素とで囲まれる描画領域の面積を算出する。
【００６５】
なお、ステップＳ６０の処理の詳細については後ほど説明する。
［ステップＳ６１］  面積算出部４５が、全ての描画領域の面積が面積値データ部４２へ格納して処理が終了する。
【００６６】
そして、ステップＳ６０で行われる処理について以下に説明する。
図５は、本発明の実施の形態におけるアンチエイリアシング処理の面積算出処理の詳細を示すフローチャートである。以下、同様に図４，６を用いながら説明する。
【００６７】
ステップＳ５９にて、初期設定部４４において、図６の境界線７１と画素との交点をチェックして、既に説明したような面積を算出する。なお、Ａ（Ｘ１，Ｙ１）のＸ１に１ずつ加え、境界線７１上と画素との交点の隣接点を、Ｂ（Ｘ２，Ｙ２）、Ｃ（Ｘ３，Ｙ３）、…、Ｎ（Ｘｎ，Ｙｎ）とする。
【００６８】
以上の初期設定が完了して、下記処理が行われる。
［ステップＳ６０ａ］  Ｘｉのｉ＝１，２，…，ｎ−１についてステップＳ６０ｂからステップＳ６０ｍの処理を繰り返す。
【００６９】
［ステップＳ６０ｂ］  面積算出部４５は、点Ｘｉを選択し、選択したＸｉのｉ＝１か否かを判断する。ｉ＝１であれば、ステップＳ６０ｃへ進められ、ｉ＝１でなければ、ステップＳ６０ｄへ進められる。
【００７０】
［ステップＳ６０ｃ］  ｉ＝１、すなわち、Ａ（Ｘ１，Ｙ１）を選択すると、Ａ（Ｘ１，Ｙ１）と、その隣接点であるＢ（Ｘ２，Ｙ２）と１画素とで囲まれる四角形ＡＢＢ１Ａ１の面積を、初期値データ部４１から既に格納してある初期四角形面積を抽出し、出力する。
【００７１】
［ステップＳ６０ｄ］  ｉ＝１ではない場合には、例えばＢ（Ｘ２，Ｙ２）を選択すると、点Ｂと点Ｃとの間に画素との交点が有るかを判断する。交点が無ければ、ステップＳ６０ｅへ進められ、交点があれば、ステップＳ６０ｈへ進められる。
【００７２】
Ｂ（Ｘ２，Ｙ２）を選択した場合、隣接点のＣ（Ｘ３，Ｙ３）との間には１画素との交点が無いため、ステップＳ６０ｅへ進められる。一方、点Ｄを選択した場合、点Ｄと、その隣接点である点Ｆとの間には１画素との交点である点Ｅがあるために、ステップＳ６０ｈへ進められる。
【００７３】
［ステップＳ６０ｅ］  交点が無い場合、四角形算出部４５ｂは、前に選択した点およびその隣接点と１画素とで囲まれる領域の面積（以後、先行面積や先行四角形などと呼ぶ。）を選択する。
【００７４】
図６では、例えば、ｉ＝２の場合では、点Ｂの前に選択した点Ａおよびその隣接点Ｂと１画素とで囲まれる領域である四角形ＡＢＢ１Ａ１の面積を選択する。
［ステップＳ６０ｆ］  四角形算出部４５ｂは、ステップＳ６０ｅで選択した先行面積から境界線７１の傾きを差し引くことによって、選択した点とその隣接点と１画素とで囲まれる領域の面積が算出される。
【００７５】
ｉ＝２を選択した場合、Ｂ（Ｘ２，Ｙ２）とＣ（Ｘ３，Ｙ３）と１画素とで囲まれる四角形ＢＣＣ１Ｂ１の面積は、四角形ＡＢＢ１Ａ１の面積から境界線７１の傾き値を差し引くことによって、算出することができる。
【００７６】
［ステップＳ６０ｇ］  四角形算出部４５ｂは、ステップＳ６０ｆで算出した面積値のデータを面積値データ部４２へ格納する。
［ステップＳ６０ｈ］  交点がある場合、三角形算出部４５ｃは、初期値データ部４１から既に格納してある初期三角形面積を抽出し、初期三角形面積から、これまでの先行面積を足し合わせたものを差し引くことによって、変換点における三角形の面積を算出する。
【００７７】
交点がある場合として、点Ｄを選択した場合、これまでの先行面積を足し合わせた四角形ＡＤＤ１Ａ１の面積を算出する。そして、初期値データ部４１に既に格納されている三角形ＡＥＡ１の面積を抽出し、三角形ＡＥＡ１から四角形ＡＤＤ１Ａ１を差し引くことによって、変換点における三角形ＤＥＤ１の面積を算出することができる。
【００７８】
［ステップＳ６０ｉ］  三角形算出部４５ｃは、ステップＳ６０ｈで算出した三角形ＤＥＤ１の面積を面積値データ部４２へ出力する。
［ステップＳ６０ｊ］  四角形算出部４５ｂは、ステップＳ６０ｈで算出した変換点における三角形の先行四角形の面積に１を加えて、境界線７１の傾き値を差し引くことによって、ステップＳ６０ｈで算出した変換点における三角形を含む変換点における四角形を算出する。
【００７９】
図６において、四角形算出部４５ｂは、ステップＳ６０ｈで算出した変換点における三角形ＤＥＤ１を含む変換点における四角形ＤＦＦ１Ｄ２の面積を、先行四角形である四角形ＣＤＤ１Ｃ１に１を加えて（すなわち、四角形ＣＤＤ２Ｃ２の面積の算出。）、傾き値を差し引くことによって変換点における四角形ＤＦＦ１Ｄ２の面積を算出することができる。
【００８０】
［ステップＳ６０ｋ］  四角形算出部４５ｂは、ステップＳ６０ｊで算出した変換点における四角形ＤＦＦ１Ｄ２の面積を面積値データ部４２に格納する。
［ステップＳ６０ｌ］  五角形算出部４５ｄは、ステップＳ６０ｊで算出した変換点における四角形からステップＳ６０ｈで算出した変換点における三角形を差し引くことによって、境界線７１と画素とで囲まれる変換点における五角形の面積を算出することができる。
【００８１】
図６においては、変換点における四角形ＤＦＦ１Ｄ２から変換点における三角形ＤＥＤ１を差し引くことによって、変換点における五角形Ｄ１ＥＦＦ１Ｄ２の面積を算出することができる。
【００８２】
［ステップＳ６０ｍ］  五角形算出部４５ｄは、ステップＳ６０ｌで算出した変換点における五角形の面積を面積値データ部４２へ格納する。
これらの処理がｉ＝１，２，…，ｎ−１のすべてについて行われる。
【００８３】
以上の処理によって、境界線と画素とで囲まれる描画領域の面積が算出され、算出された面積はブレンド率として用いられる。
次に、実際に、図６から境界線と画素とで囲まれる領域の面積の算出処理を行うハードウェア装置について説明する。
【００８４】
図７は、アンチエイリアシング処理装置の面積算出処理を行うハードウェア装置の構成図である。
図７のハードウェア装置８０は、傾き判断部８１、面積算出部８２、初期設定部８３、描画制御部８４、加減算器（四角形）８５ａ、加減算器（三角形）８５ｂ、加減算器（五角形）８５ｃ、マルチプレクサとして、ｍｕｘ８６ａ，８６ｂ，８６ｃ，８６ｄ，８６ｅ，８６ｆ，８６ｇ、レジスタとして、ｒｅｇ８７ａ，８７ｂ，８７ｃ，８７ｄのブロックによって構成されている。
【００８５】
傾き判断部８１は、入力された境界線の両端の２点から、境界線の傾きを算出し、境界線が、ｘ軸もしくはｙ軸と平行であるか否かを判断する。
面積算出部８２は、境界線がｘ軸もしくはｙ軸と平行である場合、境界線と画素とで囲まれる面積を算出する。
【００８６】
初期設定部８３は、境界線がｘ軸もしくはｙ軸と平行でない場合、境界線と画素との交点を全てチェックし、あらかじめ、境界線と画素とで囲まれる四角形または三角形の領域の面積を算出する。
【００８７】
描画制御部８４は、各機能を有するブロックに初期設定部８３で算出した初期値を入力し、また、ブロックから出力されたデータを他のブロックに入力したりなどの、ハードウェア装置全体の制御を行う。
【００８８】
加減算器（四角形）８５ａは、境界線と画素とで囲まれる四角形や変換点における四角形の面積の算出処理のために、描画制御部８４の制御に従って、入力した複数のデータを、足し合わせたり、差し引いたりしたデータを出力する。
【００８９】
加減算器（三角形）８５ｂは、境界線と画素とで囲まれる変換点における三角形の面積の算出処理のために、描画制御部８４の制御に従って、入力した複数のデータを、足し合わせたり、差し引いたりしたデータを出力する。
【００９０】
加減算器（五角形）８５ｃは、境界線と画素とで囲まれる変換点における五角形の面積の算出処理のために、描画制御部８４の制御に従って、入力した複数のデータを、足し合わせたり、差し引いたりしたデータを出力する。
【００９１】
ｍｕｘ８６ａ，８６ｂ，８６ｃ，８６ｄ，８６ｅ，８６ｆ，８６ｇは、描画制御部８４や加減算器から複数の信号データが入力され、描画制御部８４の制御に従って、１つ信号が選択されて、加減算器などへ出力する。特に、ｍｕｘ８６ｇには、各面積値のデータが入力される。
【００９２】
ｒｅｇ８７ａ，８７ｂ，８７ｃ，８７ｄは、加減算器から入力された信号データを保持する。
以上の要素から構成されるハードウェア装置８０を利用して、図４，５に沿って、実際に図６についての面積の算出について以下に説明を行う。
【００９３】
まず、傾き判断部８１は、入力された境界線の２点から境界線の傾きを算出する。算出結果から、境界線がｘ軸またはｙ軸と平行であるか否かを判断する。
面積算出部８２は、境界線がｘ軸またはｙ軸と平行である場合、境界線と画素とで囲まれる方形の領域の面積を算出する（以上、ステップＳ５１からステップＳ５８の処理に相当。）。
【００９４】
初期設定部８３は、境界線がｘ軸またはｙ軸と平行でない場合、境界線と画素との交点を全てチェックし、あらかじめ、境界線と画素とで囲まれる四角形ＡＢＢ１Ａ１、三角形ＡＥＡ１および三角形ＦＫＦ１の領域の面積を、それぞれ初期四角形面積、第１初期三角形面積および第２初期三角形面積として算出する（ステップＳ５９）。
【００９５】
描画制御部８４は、境界線と画素との交点を参照して、点Ａを選択し、点Ａと、これに隣接する点Ｂと１画素とで囲まれる四角形ＡＢＢ１Ａ１の面積である初期四角形面積をｍｕｘ８６ｇに入力する（ステップＳ６０ｃ）。
【００９６】
また、描画制御部８４は、境界線の傾き値をｍｕｘ８６ａに、初期四角形面積をｍｕｘ８６ｂに入力する。そして、加算減器（四角形）８５ａは、描画制御部８４の制御に従って、初期四角形面積から傾き値を差し引いて、四角形ＢＣＣ１Ｂ１の面積をｒｅｇ８７ａに入力する。
【００９７】
再び、描画制御部８４は、ｒｅｇ８７ａの四角形ＢＣＣ１Ｂ１の面積をｍｕｘ８６ｂに入力させて、次は、四角形ＢＣＣ１Ｂ１の面積から傾き値を差し引いて四角形ＣＤＤ１Ｃ１の面積を算出する。
【００９８】
以上のようにして、加減算器（四角形）８５ａでは、描画制御部８４の制御に従って、先行面積から傾き値を差し引くことを繰り返すことによって、境界線と画素とで囲まれる四角形の面積を算出する（ステップＳ６０ｅ〜ステップＳ６０ｇ）。
【００９９】
なお、描画制御部８４は、四角形ＤＦＦ１Ｄ２の面積を算出するために、加減算器（四角形）８５ａに、先行面積である四角形ＣＤＤ１Ｃ１に１を足し合わせて、傾き値を差し引かせて、四角形ＤＦＦ１Ｄ２の面積を算出し、ｒｅｇ８７ａを介して、ｍｕｘ８６ｆに入力させる（ステップＳ６０ｊ〜ステップＳ６０ｋ）。
【０１００】
一方、描画制御部８４は、初期四角形面積をｍｕｘ８６ｃに、第１初期三角形面積をｍｕｘ８６ｄに入力する。そして、加算減器（三角形）８５ｂは、描画制御部８４の制御に従って、第１初期三角形の三角形ＡＥＡ１の面積からこれまでの先行面積の和である四角形ＡＤＤ１Ａ１の面積を差し引いて、三角形ＤＥＤ１の面積をｒｅｇ８７ｂに入力する。
【０１０１】
そして、描画制御部８４は、ｒｅｇ８７ｂから三角形ＤＥＤ１の面積をｒｅｇ８７ｃとｍｕｘ８６ｇとに入力する（ステップＳ６０ｈ〜ステップＳ６０ｉ）。
最後に、加減算器（五角形）８５ｃは、描画制御部８４の制御に従って五角形Ｄ１ＥＦＦ１Ｄ２の面積を出力するために、ｍｕｘ８６ｆの四角形ＤＦＦ１Ｄ２からｍｕｘ８６ｅの三角形ＤＥＤ１を差し引いて、五角形Ｄ１ＥＦＦ１Ｄ２の面積をｒｅｇ８７ｄに入力する。
【０１０２】
そして、描画制御部８４は、ｒｅｇ８７ｄから五角形Ｄ１ＥＦ１Ｄ２の面積をｍｕｘ８６ｇに入力する（ステップＳ６０ｌ〜ステップＳ６０ｍ）。
同様の処理を繰り返すことによって、残りの面積を算出することができる。
【０１０３】
以上のような、ハードウェア装置８０を用いることによって、境界線と画素とで囲まれる面積を正確に算出できるだけでなく、加減算器を利用しているために、四角形の面積を算出しつつ、変換点における三角形の面積を算出することができるなど、処理の高速化にも寄与することが可能となる。
【０１０４】
次に、このような処理を行うためのソースコードの概略について説明する。
図８は、アンチエイリアシング処理の面積算出を行うためのソースコードの例である。
なお、ソースコード９０は、関連する部分のみを表示したものであり、例えば、関数の戻り値などは省略して記載している。このソースコード９０について以下に簡単に説明を行う。
【０１０５】
コード９１では、傾きがｘ軸と平行である場合について、境界線と画素とで囲まれる領域の面積を算出する。
コード９２では、傾きがｙ軸と平行である場合について、境界線と画素とで囲まれる領域の面積を算出する。
【０１０６】
コード９３では、ｘ軸およびｙ軸とも平行でない場合について、初期設定を行うとともに、傾き、始点および終点を決定する。
コード９４では、始点が終点よりもｙ軸上方に有る場合について、第１初期三角形ＡＥＡ１、第２初期三角形ＦＫＦ１および初期四角形ＡＢＢ１Ａ１の面積を算出する。
【０１０７】
コード９５では、初期四角形ＡＢＢ１Ａ１から傾き値を差し引くことによって、四角形ＢＣＣ１Ｂ１を算出し、算出した四角形ＢＣＣ１Ｂ１から傾き値を再び差し引くことによって、四角形ＣＤＤ１Ｃ１が算出される。第１初期三角形ＡＥＡ１からこれまでの四角形ＡＤＤ１Ａ１の和を差し引くことによって、三角形ＤＥＤ１が算出される。
【０１０８】
コード９６では、四角形ＣＤＤ２Ｃ２から傾き値を差し引くことによって、四角形ＤＦＦ１Ｄ２が算出される。算出された四角形ＤＦＦ１Ｄ２から傾き値を差し引くことによって、五角形Ｄ１ＥＦＦ１Ｄ２の面積が算出される。
【０１０９】
このような処理を繰り返すことによって、境界線と画素とで囲まれる領域の面積を算出することができる。
以上のようにして、境界線と画素とで囲まれる面積を正確に算出でき、また、面積の算出に、面積から傾きを差し引くことを繰り返すことによって複雑だった演算を簡略化でき、算出に要する時間を短縮することができる。従って、高速かつ正確に算出された面積をブレンド率として用いることによって、高精度のアンチエイリアシング処理を行うことが可能となる。
【０１１０】
（付記１）  画素を横切る描画領域の境界線と前記画素とで囲まれた面積に基づいてギザギザ現象を抑えるアンチエイリアシング処理方法において、
表示領域にｘ，ｙ軸方向が設けられ、前記方向に従って配置された前記画素の辺と交点を有する前記境界線の両端の２点を入力する工程と、
前記２点により、前記境界線の傾き値を算出する工程と、
前記境界線が前記ｘ軸もしくは前記ｙ軸と平行であれば、前記境界線と前記画素とで囲まれる方形の前記面積を算出する工程と、
前記境界線が前記ｘ軸もしくは前記ｙ軸と平行でなく、さらに、等間隔の前記交点のうち隣接する前記交点間に前記辺と別の交点が無ければ、前記境界線と１つの前記画素とで囲まれる四角形の前記面積と、前記別の交点が有れば、前記境界線と１つの前記画素とで囲まれる三角形の前記面積と、前記境界線と２つの前記画素とで囲まれる四角形の前記面積と、前記境界線と２つの前記画素とで囲まれる四角形から前記三角形を除いた多角形の前記面積と、を出力する工程と、
を有することを特徴とするアンチエイリアシング処理方法。
【０１１１】
（付記２）  前記境界線が前記ｘ軸もしくは前記ｙ軸と平行でない場合、あらかじめ、処理の最初に算出される、前記境界線と１つの前記画素とで囲まれる四角形および前記三角形を含む大三角形の前記面積を算出する工程をさらに有することを特徴とする付記１記載のアンチエイリアシング処理方法。
【０１１２】
（付記３）  前記境界線が前記ｘ軸もしくは前記ｙ軸と平行でない場合、前記傾き値が、−１より大きくゼロより小さく、または、ゼロより大きく１より小さいことを特徴とする付記１または２に記載のアンチエイリアシング処理方法。
【０１１３】
（付記４）  前記境界線と１つの前記画素との四角形の前記面積は、前記四角形と隣接する別の四角形である先行四角形の前記面積から前記傾き値を差し引くことによって算出されることを特徴とする付記１乃至３に記載のアンチエイリアシング処理方法。
【０１１４】
（付記５）  前記境界線と２つの前記画素との四角形の前記面積は、前記三角形の前記先行四角形の前記面積に１画素の面積を加えるとともに、前記傾き値を差し引くことによって算出されることを特徴とする付記１乃至４に記載のアンチエイリアシング処理方法。
【０１１５】
（付記６）  画素を横切る描画領域の境界線と前記画素とで囲まれた面積に基づいてギザギザ現象を抑えるアンチエイリアシング処理装置において、
表示領域にｘ，ｙ軸方向が設けられ、前記方向に従って配置された前記画素の辺と交点を有する前記境界線の両端の２点を入力する手段と、
前記２点により、前記境界線の傾き値を算出する手段と、
前記境界線が前記ｘ軸もしくは前記ｙ軸と平行であれば、前記境界線と前記画素とで囲まれる方形の前記面積を算出する手段と、
前記境界線が前記ｘ軸もしくは前記ｙ軸と平行でなく、さらに、等間隔の前記交点のうち隣接する前記交点間に前記辺と別の交点が無ければ、前記境界線と１つの前記画素とで囲まれる四角形の前記面積と、前記別の交点が有れば、前記境界線と１つの前記画素とで囲まれる三角形の前記面積と、前記境界線と２つの前記画素とで囲まれる四角形の前記面積と、前記境界線と２つの前記画素とで囲まれる四角形から前記三角形を除いた多角形の前記面積と、を出力する手段と、
を有することを特徴とするアンチエイリアシング処理装置。
【０１１６】
（付記７）  前記境界線が前記ｘ軸もしくは前記ｙ軸と平行でない場合、あらかじめ、処理の最初に算出される、前記境界線と１つの前記画素とで囲まれる四角形および前記三角形を含む大三角形の前記面積を算出する手段をさらに有することを特徴とする付記６記載のアンチエイリアシング処理装置。
【０１１７】
（付記８）  前記境界線が前記ｘ軸もしくは前記ｙ軸と平行でない場合、前記傾き値が、−１より大きくゼロより小さく、または、ゼロより大きく１より小さいことを特徴とする付記６または７に記載のアンチエイリアシング処理装置。
【０１１８】
（付記９）  前記境界線と１つの前記画素との四角形の前記面積は、前記四角形と隣接する別の四角形である先行四角形の前記面積から前記傾き値を差し引くことによって算出されることを特徴とする付記６乃至８に記載のアンチエイリアシング処理装置。
【０１１９】
（付記１０）  前記境界線と２つの前記画素との四角形の前記面積は、前記三角形の前記先行四角形の前記面積に１画素の面積を加えるとともに、前記傾き値を差し引くことによって算出されることを特徴とする付記６乃至９に記載のアンチエイリアシング処理装置。
【図面の簡単な説明】
【０１２０】
【図１】本発明の処理フローの概要図である。
【図２】境界線が表示された表示領域の模式図である。
【図３】アンチエイリアシング処理装置の機能を示すブロック図である。
【図４】本発明の実施の形態におけるアンチエイリアシング処理の面積算出処理を示すフローチャートである。
【図５】本発明の実施の形態におけるアンチエイリアシング処理の面積算出処理の詳細を示すフローチャートである。
【図６】本実施の形態における傾きを有する描画領域の境界線が表示された表示領域の模式図である。
【図７】アンチエイリアシング処理装置の面積算出処理を行うハードウェア装置の構成図である。
【図８】アンチエイリアシング処理の面積算出を行うためのソースコードの例である。
【図９】表示装置におけるギザギザ現象を示す模式図である。
【図１０】ブレンド率について説明するための模式図である。
【図１１】従来のブレンド率に用いる面積算出方法を説明する模式図である。
【符号の説明】
【０１２１】
４０  アンチエイリアシング処理装置
４１  初期値データ部
４２  面積値データ部
４３  傾き値算出部
４４  初期設定部
４５  面積算出部
４５ａ  方形算出部
４５ｂ  四角形算出部
４５ｃ  三角形算出部
４５ｄ  五角形算出部
【図１】
2008226132.tif 000003
【図２】
2008226132.tif 000004
【図３】
2008226132.tif 000005
【図４】
2008226132.tif 000006
【図５】
2008226132.tif 000007
【図６】
2008226132.tif 000008
【図７】
2008226132.tif 000009
【図８】
2008226132.tif 000010
【図９】
2008226132.tif 000011
【図１０】
2008226132.tif 000012
【図１１】
2008226132.tif 000013