JP5207989B2 - 図形描画装置及び図形描画プログラム - Google Patents
図形描画装置及び図形描画プログラム Download PDFInfo
- Publication number
- JP5207989B2 JP5207989B2 JP2009001763A JP2009001763A JP5207989B2 JP 5207989 B2 JP5207989 B2 JP 5207989B2 JP 2009001763 A JP2009001763 A JP 2009001763A JP 2009001763 A JP2009001763 A JP 2009001763A JP 5207989 B2 JP5207989 B2 JP 5207989B2
- Authority
- JP
- Japan
- Prior art keywords
- pixel
- dimensional
- boundary
- pixels
- processing
- 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 - Fee Related
Links
Images
Landscapes
- Image Generation (AREA)
Description
TrueTypeのアウトラインフォントや、W3CによるSVG(Scalable Vector Graphics)などは、このベクターグラフィックス処理の一形態である。
また、ベクターグラフィックスのローレベルAPI(Application Programming Interface)として、OpenVGの仕様が策定されており、OpenVGに対応するグラフィックスライブラリやハードウェアが開発されている。
アンチエイリアス描画の手法として、ピクセルを更に小さなサブピクセルに分割して、面積の占有率によってピクセルの輝度値を算出するスーパーサンプリング手法がある(例えば、特許文献1を参照)。
スーパーサンプリング手法は、例えば、1ピクセルを4×4の16個のサブピクセルに分割して、それぞれの仮想的な16個のサブピクセルに対して描画処理を実施し、最終的に、16個のサブピクセルの平均値(占有率)を当該ピクセルの最終値に決定する手法である。
画像のスムージング処理を行う手法としては、画像からエッジ部を求めて、エッジの最少方向に対して特別なスムージング処理を行う画像処理の手法がある(例えば、特許文献3を参照)。
例えば、図12は、青色の背景上に、赤色の2次元オブジェクトと、緑色の2次元オブジェクトを繋ぎ合わせて描画する状態を示しているが、赤色を60%の占有率で描画してから、緑色を40%の占有率で描画を行うと、繋ぎ目ピクセルには、背景の青色の成分が24%発生してしまう状況が生じる。
青色は、本来描画されないはずの色成分であり、結果として、偽の色が発生してしまうことになる。
また、複数の2次元図形間の境界部分がピクセルの中心を通る場合、2次元図形の上端又は左端に位置するピクセルは当該2次元図形に含まれ、2次元図形の右端又は下端に位置するピクセルは当該2次元図形に含まれないと判定するように構成したので、複数の地図データ間の境界部分がピクセルの中心を通る場合でも、地図描画部4が境界部分の二重描画を回避することができる効果がある。
図1はこの発明の実施の形態1による図形描画装置を示す構成図である。
図1において、座標変換部1はメッシュ単位(網の目状)に分割された複数の地図データ(2次元図形)に含まれているオブジェクト(例えば、道路、区画、文字など)の頂点座標や制御点座標をマトリクス変換することで、地図上のオブジェクトの拡大、縮小、回転、平行移動などを行う。なお、座標変換部1は座標変換手段を構成している。
境界線バッファ3はメッシュ枠MFの位置座標を示す座標情報を格納するメモリである。
なお、境界線描画部2及び境界線バッファ3から境界ピクセル特定手段が構成されている。
フレームバッファ5は地図描画部4により描画された画像Gを格納するメモリである。
なお、地図描画部4及びフレームバッファ5から2次元図形描画手段が構成されている。
図2において、パラメータ設定部11はアンチエイリアス設定パラメータの設定を受け付けて、そのアンチエイリアス設定パラメータを出力する処理を実施する。あるいは、予め設定されているアンチエイリアス設定パラメータを出力する処理を実施する。
ここで、アンチエイリアス設定パラメータは、アンチエイリアス強度を指定するパラメータであり、外部カットオフ値と内部カットオフ値で示されるものである。
また、外部カットオフ値を内部カットオフ値より大きくすれば、オブジェクトの全体を太らせる効果が現れ、外部カットオフ値を内部カットオフ値より小さくすれば、オブジェクトの全体を細らせる効果が現れる。
距離バッファ13は距離ラスタライズ処理部12により算出された距離値Dを格納するメモリである。
エッジバッファ15はエッジラスタライズ処理部14から出力されたエッジ情報(+1/−1)を格納するメモリである。
座標変換部1は、メッシュ単位に分割された複数の地図データを入力すると、その地図データに含まれているオブジェクト(例えば、道路、区画、文字など)の頂点座標や制御点座標をマトリクス変換することで、地図上のオブジェクトの拡大、縮小、回転、平行移動などを行う。
即ち、境界線描画部2は、複数の地図データ間の境界部分を描画するピクセルを特定し、そのピクセルが位置する座標であるメッシュ枠MFの位置座標を示す座標情報を境界線バッファ3に記録する。
ここで、図3は境界線バッファ3の記録内容の一例を示す説明図である。
境界線バッファ3は、画像Gを表示するディスプレイのピクセルに対応する1ビットの情報を格納するメモリであり、境界線(境界部分)に位置するピクセルに対応するビットには“1”が記録され、境界線以外に位置するピクセルに対応するビットには“0”が記録される。
ただし、地図描画部4は、オブジェクトの描画を行う際、複数の地図データを描画する複数のピクセルのうち、境界線描画部2により特定された境界部分を描画するピクセル以外のピクセルについては、アンチエイリアス処理が施される描画処理を実施し、その境界部分を描画するピクセルについては、アンチエイリアス処理が施されない描画処理を実施する。
一方、そのピクセルの情報が“1”である場合、ピクセルの占有率が50%以上であれば、アンチエイリアスを適用せずに描画を行い、占有率が50%未満であれば、描画をキャンセルする。
以下、地図描画部4の処理内容を具体的に説明する。
あるいは、予め設定されているアンチエイリアス設定パラメータを距離ラスタライズ処理部12に出力する。
そして、距離ラスタライズ処理部12は、パラメータ設定部11から出力されたアンチエイリアス設定パラメータにしたがって、その微小線分を直線セルとコーナーセルの組み合わせでラスタライズ処理することで、ディスプレイの各ピクセルに対応する距離値Dを算出し、その距離値Dを距離バッファ13に記録する。
各ピクセルに対応する距離値Dは、“−1”から“+1”までの範囲の値であり、輪郭線上の値は“0”の値で表現され、負の数は、そのピクセルがオブジェクトの外部にあることを示している。
図4(a)では、微小線分が直線セルとコーナーセルの組み合わせでラスタライズ処理される様子を示しており、直線セルは、外部カットオフ側の長方形ABEFと内部カットオフ側の長方形BCDEから構成されている。
このとき、両長方形の幅は、外部カットオフ値と内部カットオフ値を比較して、大きい方が選択されている。
微小線分は真の輪郭線でもあるので、微小線分上の点は、距離値が“0”として表現される。
現段階では、未だオブジェクトの内外判定を行っていないで、図4(a)では、カットオフ側頂点の距離値を一律に“−1”にしている。
したがって、長方形ABEFの各頂点の距離値は−1,0,0,−1となり、長方形BCDEの各頂点の距離値は0,−1,−1,0と定義される。
ラスタライズ処理では、予め、X方向及びY方向について距離値の増分値を求め、図4(b)に示すように、スキャンライン方向へ線形補間処理することで、高速に距離値Dを算出することができる。
円の中心点における距離値は“0”、円周上の距離値は“−1”として表現される。
ピクセルから中心点までの距離は(x2+y2)1/2を計算することで求めることができるが、ルックアップテーブルを用いた近似計算を行うことで、高速に算出することができる。
そこで、距離ラスタライズ処理部12は、距離値を距離バッファ13に書き込む際、ソースとデスティネーション間で距離値の大小比較を実施し、大きな方(0に近い方)の距離値を距離バッファ13に書き込むようにする。
このように微小線分を直線セルとコーナーセルの組み合わせでラスタライズ処理することで、アンリエイリアス処理に必要な正確な距離情報を微小線分同士の連結部においても隙間なく高速に生成することができる。
即ち、エッジラスタライズ処理部14は、DDA(Digital Differential Analyzer:デジタル微分解析器)を用いて、微小線分の始点座標と終点座標から描画対象の座標を算出する。
そして、エッジラスタライズ処理部14は、図5及び図6に示すように、エッジが上向きであれば、エッジバッファ15に格納するエッジ情報に“+1”を加算し、エッジが下向きであれば、エッジ情報から“−1”を減算する。
なお、同一座標におけるエッジの重なりが、例えば128回までと定義されている場合には、エッジバッファ15の深さ方向のビット幅として、8bit(27=128+符号ビット)が必要である。
図5の例では、エッジが対象スキャンラインと2点(点P、点Q)で交わっており、エッジ情報が“0”→“+1”→“0”→“−1”→“0”と変化するので、点Pより左側の領域の内外判定の判定値が“0”、点Pと点Qの間の領域の内外判定の判定値が“1”、点Qより右側の領域の内外判定の判定値が“0”となる。
したがって、図4(c)に示すように、点Pより左側の領域と点Qより右側の領域は、オブジェクトの外側の領域であると判定して(Non−Zeroルール、Even−Oddルールを適用)、塗りつぶし処理を行わない領域であると判別する。
また、点Pと点Qの間の領域は、オブジェクトの内側の領域であると判定して(Non−Zeroルール、Even−Oddルールを適用)、塗りつぶし処理を行う領域であると判別する。
また、Even−Oddルールは、内外判定の判定値が偶数であれば、当該領域の塗りつぶし処理を行わないが、内外判定の判定値が奇数であれば、当該領域の塗りつぶし処理を行うとするルールである。
即ち、輪郭部のジャギーが滑らかになるように、微小線分の周辺に位置するピクセルの輝度値をガンマ補正する。
即ち、地図描画部4のマッピング部16は、画像Gをフレームバッファ5に描画する際、境界バッファ3から、フレームバッファ5のXYアドレスに対応するピクセルの情報(“1”又は“0”の情報)の読み出しを行う。
一方、そのピクセルの情報が“1”であれば、そのピクセルはメッシュ枠MF上のピクセルであると判定する。
そのピクセルについては、ピクセルの占有率が50%以上であれば、アンチエイリアス処理が施されない描画処理を実施する。占有率が50%未満であれば、描画をキャンセルする。
ここで、図7は実際の地図データを描画したときの表示例である。
図7(a)はメッシュ構造の地図データである。
図7(b)は従来の手法で地図を回転させて表示した画像であり、メッシュの境目にスジの線が現れている。
これに対して、図7(c)は実施の形態1の方式で、地図を回転させて表示した画像であり、メッシュの境目にスジの線が現れていない。
この場合、直線セルとコーナーセルに分けて距離値を描画する必要がないが、8サンプル分のエッジバッファ15を保持する必要がある。
図9はこの発明の実施の形態2による図形描画装置を示す構成図であり、図において、図1と同一符号は同一又は相当部分を示すので説明を省略する。
TOP−LEFTルール判定部6は複数の地図データ間の境界部分がピクセルの中心を通る場合、地図データのTop端(上端)又はLeft端(左端)に位置するピクセルは当該地図データに含まれ、地図データのRight端(右端)又はBottom端(下端)に位置するピクセルは当該地図データに含まれないと判定する処理を実施する。
なお、地図描画部4、フレームバッファ5及びTOP−LEFTルール判定部6から2次元図形描画手段が構成されている。
この場合、当該ピクセルが、どちら側の地図データに含まれているか判別が困難であり、地図描画部4が境界部分を二重に描画してしまう可能性がある。
そこで、この実施の形態2では、TOP−LEFTルール判定部6が、当該ピクセルが、どちら側の地図データに含まれているかを判別して、その判別結果を地図描画部4に通知するようにしている。
一方、地図データのRight端又はBottom端に位置するピクセルは当該地図データに含まれないと判定する。
図10の例(図10の右側の地図データに着目)では、Top端に位置する“T”のピクセルと、Left端に位置する“L”のピクセルは、当該地図データに含まれていると判定する。
また、Right端に位置する“R”のピクセルと、Bottom端に位置する“B”のピクセルは、当該地図データに含まれないと判定する。
図11はこの発明の実施の形態3による図形描画装置を示す構成図であり、図において、図1と同一符号は同一又は相当部分を示すので説明を省略する。
階調補正部7は地図描画部4によってアンチエイリアス処理が施される描画処理が実施されるとき、境界部分を描画するピクセルに隣接しているピクセルの階調補正を行う。
なお、地図描画部4、フレームバッファ5及び階調補正部7から2次元図形描画手段が構成されている。
そこで、階調補正部7は、境界部分を描画するピクセルに隣接しているピクセルについては、例えば、フィルタ処理を実施して階調補正を行うことにより、アンチエイリアス処理のかかり具合を滑らかにする。
これにより、アンチエイリアス処理の適用/非適用によってジャギーとして表現されることなく、スムーズな画像として表示することができる効果を奏する。
5 フレームバッファ(2次元図形描画手段)、6 TOP−LEFTルール判定部(2次元図形描画手段)、7 階調補正部(2次元図形描画手段)、11 パラメータ設定部、12 距離ラスタライズ処理部、13 距離バッファ、14 エッジラスタライズ処理部、15 エッジバッファ、16 マッピング部。
Claims (3)
- 網の目状に分割された複数の2次元図形に含まれているオブジェクトの座標をマトリクス変換する座標変換手段と、上記複数の2次元図形間の境界部分を描画するピクセルを特定する境界ピクセル特定手段と、上記座標変換手段によりオブジェクトの座標がマトリクス変換された複数の2次元図形を描画する複数のピクセルのうち、上記境界ピクセル特定手段により特定された境界部分を描画するピクセル以外のピクセルについてはアンチエイリアス処理が施される描画処理を実施し、上記境界部分を描画するピクセルについてはアンチエイリアス処理が施されない描画処理を実施する2次元図形描画手段とを備え、上記
2次元図形描画手段は、複数の2次元図形間の境界部分がピクセルの中心を通る場合、2次元図形の上端又は左端に位置するピクセルは当該2次元図形に含まれ、2次元図形の右端又は下端に位置するピクセルは当該2次元図形に含まれないと判定することを特徴とする図形描画装置。 - 2次元図形描画手段は、アンチエイリアス処理が施される描画処理を実施する際、境界部分を描画するピクセルに隣接しているピクセルの階調補正を行うことを特徴とする請求項1記載の図形描画装置。
- 網の目状に分割された複数の2次元図形に含まれているオブジェクトの座標をマトリクス変換する座標変換処理手順と、上記複数の2次元図形間の境界部分を描画するピクセルを特定する境界ピクセル特定処理手順と、上記座標変換処理手順によりオブジェクトの座標がマトリクス変換された複数の2次元図形を描画する複数のピクセルのうち、上記境界ピクセル特定処理手順により特定された境界部分を描画するピクセル以外のピクセルについてはアンチエイリアス処理が施される描画処理を実施し、上記境界部分を描画するピクセルについてはアンチエイリアス処理が施されない描画処理を実施し、複数の2次元図形間の境界部分がピクセルの中心を通る場合、2次元図形の上端又は左端に位置するピクセルは当該2次元図形に含まれ、2次元図形の右端又は下端に位置するピクセルは当該2次元図形に含まれないと判定する2次元図形描画処理手順とをコンピュータに実行させるための図形描画プログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009001763A JP5207989B2 (ja) | 2009-01-07 | 2009-01-07 | 図形描画装置及び図形描画プログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009001763A JP5207989B2 (ja) | 2009-01-07 | 2009-01-07 | 図形描画装置及び図形描画プログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2010160633A JP2010160633A (ja) | 2010-07-22 |
JP5207989B2 true JP5207989B2 (ja) | 2013-06-12 |
Family
ID=42577753
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009001763A Expired - Fee Related JP5207989B2 (ja) | 2009-01-07 | 2009-01-07 | 図形描画装置及び図形描画プログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5207989B2 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111127543B (zh) * | 2019-12-23 | 2024-04-05 | 北京金山安全软件有限公司 | 图像处理方法、装置、电子设备以及存储介质 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06274641A (ja) * | 1993-03-19 | 1994-09-30 | Fujitsu Ltd | アンチエイリアシング直線表示装置 |
JP3052839B2 (ja) * | 1996-06-03 | 2000-06-19 | 株式会社セガ・エンタープライゼス | 画像処理装置及びその処理方法 |
DE19723102C1 (de) * | 1997-06-02 | 1998-11-12 | Media Design Ges Fuer Multimed | Verfahren zum Darstellen von und Navigieren in umfangreichen, Grafikelemente enthaltenden Dateien |
JPH11306366A (ja) * | 1998-04-22 | 1999-11-05 | Sony Corp | グラフィック演算装置およびその方法 |
JP2001169089A (ja) * | 1999-12-09 | 2001-06-22 | Canon Inc | 画像編集装置および画像編集方法および記憶媒体 |
CN1653488A (zh) * | 2002-05-10 | 2005-08-10 | 比特波伊斯有限责任公司 | 显示驱动器ic、显示模块以及合并有图形引擎的电子装置 |
CA2560560C (en) * | 2004-03-23 | 2011-08-02 | Google Inc. | Generating and serving tiles in a digital mapping system |
GB2431842B (en) * | 2005-10-28 | 2008-02-06 | Imagination Tech Ltd | Full screen anti-aliasing with dynamic filters |
US20090315881A1 (en) * | 2006-03-31 | 2009-12-24 | Pioneer Corporation | Display processing device, display processing method, and display processing program |
-
2009
- 2009-01-07 JP JP2009001763A patent/JP5207989B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2010160633A (ja) | 2010-07-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4937359B2 (ja) | 図形描画装置及び図形描画方法 | |
JP4693660B2 (ja) | 描画装置、描画方法及び描画プログラム | |
JP6116217B2 (ja) | コンピュータグラフィックスを処理する方法およびコンピュータグラフィックスを処理するための装置 | |
US7884825B2 (en) | Drawing method, image generating device, and electronic information apparatus | |
US9965876B2 (en) | Method and apparatus for graphics processing of a graphics fragment | |
JP4157569B2 (ja) | 描画装置、描画方法及び描画プログラム | |
KR100446631B1 (ko) | 델타 구조 디스플레이에서의 칼라영상의 표현 방법 및 장치 | |
US6768491B2 (en) | Barycentric centroid sampling method and apparatus | |
JP5323251B2 (ja) | アニメーション表示装置 | |
US20140184633A1 (en) | Conservative bounding region rasterization | |
JP4370438B2 (ja) | ベクター画像描画装置、ベクター画像描画方法およびプログラム | |
JP5172640B2 (ja) | ベクトル図形描画装置 | |
KR101030825B1 (ko) | 샘플링 패턴을 이용하는 방법, 샘플링 패턴을 생성하는 방법, 안티 에일리어싱 시스템, 및 컴퓨터 판독 가능한 기록매체 | |
JP3547250B2 (ja) | 描画方法 | |
JP5207989B2 (ja) | 図形描画装置及び図形描画プログラム | |
KR20180037839A (ko) | 그래픽스 프로세싱 장치 및 인스트럭션의 실행 방법 | |
JP5159949B2 (ja) | ベクトル図形描画装置 | |
JP3898426B2 (ja) | 図形描画装置 | |
JP3872056B2 (ja) | 描画方法 | |
US20130321449A1 (en) | Window combining device | |
JP3493745B2 (ja) | 図形描画装置 | |
JP5661134B2 (ja) | 画像処理装置及び画像処理方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20110921 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20121022 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20121113 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20121220 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20130122 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130219 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20160301 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5207989 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |