(57)【要約】【課題】本発明は、オフスクリーンバッファー使用システムにおける画像ドローイング方法及び装置に関する。【解決手段】本発明の実施形態に係る画像ドローイング方法は、第１領域及び第２領域を含むオフスクリーンバッファーを提供するオフスクリーンバッファー提供ステップと、表示する画像中、固定画像を第１領域にドローイングする固定画像ドローイングステップと、固定画像がドローイングされた第１領域を第２領域にコピーする第１領域コピーステップと、表示する画像中、動画像を第２領域にドローイングする動画像ドローイングステップと、動画像がドローイングされた第２領域をフレームバッファーにコピーする第２領域コピーステップと、を含む。本発明によると、オフスクリーンバッファー上でのドローイング実行速度が向上する。【選択図】図３
2010164972.tif 000002
【特許請求の範囲】
【請求項１】
第１領域及び第２領域を含むオフスクリーンバッファーを提供するオフスクリーンバッファー提供ステップと、
表示する画像中、固定画像を前記第１領域にドローイングする固定画像ドローイングステップと、
前記固定画像がドローイングされた第１領域を前記第２領域にコピーする第１領域コピーステップと、
前記表示する画像中、動画像を前記第２領域にドローイングする動画像ドローイングステップと、
前記動画像がドローイングされた第２領域をフレームバッファーにコピーする第２領域コピーステップと、
を含むことを特徴とする画像ドローイング方法。
【請求項２】
前記表示する画像を前記固定画像と前記動画像とに区分する画像区分ステップをさらに含むことを特徴とする請求項１に記載の画像ドローイング方法。
【請求項３】
前記第２領域コピーステップの後、
前記固定画像が同一である画像のドローイングが要請される場合、
前記第１領域コピーステップ、前記動画像ドローイングステップ、前記第２領域コピーステップを順次的に反復実行することを特徴とする請求項１に記載の画像ドローイング方法。
【請求項４】
前記画像区分ステップは、
表示する画像全体に対し、固定画像が同一である画像別に画像セットを区分するステップをさらに含むことを特徴とする請求項２に記載の画像ドローイング方法。
【請求項５】
前記画像区分ステップは、
前記固定画像に対応して設定された識別記号を基準にし、画像セットを区分することを特徴とする請求項４に記載の画像ドローイング方法。
【請求項６】
前記画像区分ステップは、
画像をドローイングするのに要求されるデータ値を画像単位で比較し、表示する画像を固定画像と動画像とに区分することを特徴とする請求項２に記載の画像ドローイング方法。
【請求項７】
前記第１領域コピーステップは、
Ｊａｖａ（登録商標） ＡＰＩ（Ｊａｖａ Ａｐｐｌｉｃａｔｉｏｎ Ｉｎｔｅｒｆａｃｅ)から提供するｃｏｐｙＡｒｅａ（）を用いてコピーすることを特徴とする請求項１に記載の画像ドローイング方法。
【請求項８】
オフスクリーンバッファー上に画像をドローイングする装置において、
第１領域と第２領域とに区分されるオフスクリーンバッファーを生成し、表示する画像を固定画像と動画像とに区分するドローイング制御部を含むことを特徴とする画像ドローイング装置。
【請求項９】
前記ドローイング制御部は、
前記固定画像を前記第１領域にドローイングし、前記固定画像がドローイングされた第１領域を前記第２領域にコピーし、前記動画像を前記コピーされた第２領域にドローイングし、前記動画像がドローイングされた第２領域をフレームバッファーにコピーすることを特徴とする請求項８に記載の画像ドローイング装置。
【請求項１０】
前記ドローイング制御部は、
前記固定画像が同一である画像のドローイングが追加的に要請される場合、前記固定画像がドローイングされた第１領域を前記第２領域にコピーし、前記追加的にドローイングが要請される画像中、動画像を前記コピーされた第２領域にドローイングし、前記動画像がドローイングされた第２領域をフレームバッファーにコピーすることを特徴とする請求項９に記載の画像ドローイング装置。
【請求項１１】
前記ドローイング制御部は、
表示する画像全体に対し、固定画像が同一である画像別に画像セットを区分することを特徴とする請求項８に記載の画像ドローイング装置。
【請求項１２】
前記ドローイング制御部は、
画像をドローイングするのに要求されるデータ値を画像単位で比較し、表示する画像を固定画像と動画像とに区分することを特徴とする請求項８に記載の画像ドローイング装置。
【請求項１３】
前記ドローイング制御部は、
Ｊａｖａ（登録商標） ＡＰＩ（Ｊａｖａ Ａｐｐｌｉｃａｔｉｏｎ Ｉｎｔｅｒｆａｃｅ）から提供するｃｏｐｙＡｒｅａ（）を用いて前記第１領域を前記第２領域にコピーすることを特徴とする請求項９に記載の画像ドローイング装置。
【請求項１４】
前記第１領域及び前記第２領域は、それぞれフレームバッファーと同一のサイズを有することを特徴とする請求項８に記載の画像ドローイング装置。
【請求項１５】
前記第１領域及び前記第２領域は、前記オフスクリーンバッファー上で論理的に区分されることを特徴とする請求項８に記載の画像ドローイング装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像ドローイング方法及び装置に関し、特に、Ｊａｖａ（登録商標）アプリケーションのオフスクリーンバッファーを使用するシステムにおいて、画像をドローイングする方法及び装置に関する。
【背景技術】
【０００２】
典型的ディスプレーシステムにおいて、画像は、スクリーンに直接出力される前に一時的にフレームバッファーに格納される。前記システムは、オフスクリーンバッファーと呼ばれるメモリーバッファー領域を設け、前記メモリーバッファー領域においてドローイング作業を実行する。そして、全てのドローイング作業を実行した後、オフスクリーンバッファーにあるデータをフレームバッファーに一度に伝送する方式を使用する。このような方法をダブルバッファリング（Ｄｏｕｂｌｅ Ｂｕｆｆｅｒｉｎｇ）と言い、ディスプレーを備えるほとんどのシステムで一般的に使用される方法である。すなわち、ダブルバッファリングでは、オフ-スクリーン（ｏｆｆ-ｓｃｒｅｅｎ）バッファーがアップデートされて表示される次のスクリーンの部分的または全体的にレンダリングされたコンテンツをホールドしている間、フレームバッファーは、ディスプレー装置に表示されるオン-スクリーン（ｏｎ-ｓｃｒｅｅｎ）データを保有するようになる。
【０００３】
Ｊａｖａ（登録商標）を基盤にして製作されたアプリケーションは、汎用性や簡潔さに基づき、コンピュータはもちろん、各種のエンベデッドシステムからモバイル機器に至るまで幅広く使用されている。Ｊａｖａ（登録商標）アプリケーションが搭載されたシステムにおいて、マルチメディアの機能的要求が増えていくにつれて、より短時間で、向上された方式により各種のグラフィックデータを処理しなければならない状況に直面している。現在、Ｊａｖａ（登録商標）では、アプリケーション自体的にオフスクリーンバッファーを生成し、ダブルバッファリングが具現できるＡＰＩ（Ａｐｐｌｉｃａｔｉｏｎ Ｉｎｔｅｒｆａｃｅ）が基本的に提供されている。このような特徴を利用し、Ｊａｖａ（登録商標）プログラムは、バッファーでドローイングを実行することができる。
【０００４】
図６は、前記ダブルバッファリング方法により、オフスクリーンバッファーにドローイングを実行するステップを示すフローチャートである。６１０ステップでドローイングが要請されると、６２０ステップで、アプリケーションはオフスクリーンバッファーを生成する。６３０ステップで、アプリケーションは、生成されたオフスクリーンバッファーにグラフィック客体のドローイング作業を実行する。グラフィック客体には、画像（ｉｍａｇｅ）、文字（ｔｅｘｔ）、その他の各種の図形（ｆｉｇｕｒｅ）を含むことができる。フォアグラウンド（ｆｏｒｅｇｒｏｕｎｄ）にドローイングされたグラフィック客体が、バックグラウンド（ｂａｃｋｇｒｏｕｎｄ）にドローイングされたグラフィック客体により隠されないようにするため、アプリケーションはバックグラウンドからグラフィック客体をドローイングする。アプリケーションは、６４０ステップでドローイングした画像をフレームバッファーにコピーし、フレームバッファーにコピーされた画像はディスプレーに出力される。６５０ステップで、アプリケーションは、最後にドローイングした画像が最終画像に該当するか否かを判断し、最終画像に該当すればドローイング作業を終了する。仮に、最後にドローイングした画像が最終画像に該当しない場合、アプリケーションは、６６０ステップで、オフスクリーンバッファーをクリア（ｃｌｅａｒ）し、６３０ステップへ進み、クリアされたオフスクリーンバッファーにドローイングを実行する。
【０００５】
アプリケーションは、前記ステップを繰り返し、連続する画像を順次的にドローイングするようになる。仮に、連続する画像が互いに共通性がなく、全く異なる画像を順次的にドローイングする場合には、前記ステップを反復することが好ましい。しかし、全体において一部のみが変更される画像をドローイングする場合、前記ステップを反復することはドローイングの効率を低下させ得る。
【０００６】
図７は、背景画像７１０が固定された状態で、特定画像７２０を他の画像７２２に変更する表示画面を表す。この場合、前記ステップを実行するためには、背景画像７１０と特定画像７２０とをドローイングした後、オフスクリーンバッファーをクリアし、クリアされたオフスクリーンバッファーに、再び背景画像７１０と他の画像７２２とをドローイングする。すなわち、ドローイングの実行時、背景画像７１０を反復的にドローイングする。
【０００７】
一般に、画像ドローイングの実行時、複雑な演算ステップが共に実行され、このような演算ステップによりドローイングの実行時間は長くなる。特に、画像が大きいほど画像ドローイングに、より多くの時間がかかる。図７において、背景画像７１０は、画像全体のほとんどを占めており、変更される画像７２０、７２２はごく一部に過ぎない。すなわち、背景画像７１０をドローイングするのにかかる時間は、画像全体をドローイングするのにかかる時間のほとんどを占めている。
従って、ダブルバッファリングを実行するための新たな方法が必要である。
【発明の概要】
【発明が解決しようとする課題】
【０００８】
本発明の目的は、Ｊａｖａ（登録商標）アプリケーションのオフスクリーンバッファー使用システムにおいて、オフスクリーンバッファー上のドローイング時間を短縮し、ドローイングの効率を向上するドローイング方法を提供することにある。
本発明の他の目的は、前記方法を用いる装置を提供することにある。
【課題を解決するための手段】
【０００９】
本発明の実施形態によるオフスクリーンバッファー使用システムにおける画像ドローイング方法は、第１領域及び第２領域を含むオフスクリーンバッファーを提供するオフスクリーンバッファー提供ステップと、表示する画像中の固定画像を第１領域にドローイングする固定画像ドローイングステップと、固定画像がドローイングされた第１領域を第２領域にコピーする第１領域コピーステップと、表示する画像中の動画像を前記第２領域にドローイングする動画像ドローイングステップと、動画像がドローイングされた第２領域をフレームバッファーにコピーする第２領域コピーステップと、を含む。
【００１０】
本発明の実施形態によるオフスクリーンバッファー使用システムにおける画像ドローイング方法は、表示する画像を固定画像と動画像とに区分する画像区分ステップをさらに含む。
【００１１】
本発明の実施形態によるオフスクリーンバッファー使用システムにおける画像ドローイング方法は、フレームバッファーコピーステップの後、固定画像が同一である画像のドローイングが要請される場合、固定画像コピーステップと、動画像ドローイングステップと、フレームバッファーコピーステップとを順次的に繰り返して実行することを特徴とする。
【００１２】
本発明の実施形態によるオフスクリーンバッファー使用システムにおける画像ドローイング方法において、第１領域コピーステップは、Ｊａｖａ（登録商標） ＡＰＩ(Ｊａｖａ Ａｐｐｌｉｃａｔｉｏｎ Ｉｎｔｅｒｆａｃｅ)から提供するｃｏｐｙＡｒｅａ（）を用いてコピーすることを特徴とする。
【００１３】
本発明の実施形態に係るオフスクリーンバッファー上に画像をドローイングする装置において、前記装置は、第１領域と第２領域とに区分されるオフスクリーンバッファーを生成し、表示する画像を固定画像と動画像とに区分するドローイング制御部を含む。
【００１４】
本発明の実施形態による画像ドローイング装置において、ドローイング制御部は、固定画像を第１領域にドローイングし、固定画像がドローイングされた第１領域を第２領域にコピーし、動画像をコピーされた第２領域にドローイングし、動画像がドローイングされた第２領域をフレームバッファーにコピーすることを特徴とする。
【００１５】
本発明の実施形態による画像ドローイング装置において、ドローイング制御部は、固定画像が同一である画像のドローイングが追加的に要請される場合、固定画像がドローイングされた第１領域を第２領域にコピーし、追加的にドローイングが要請される画像中の動画像をコピーされた第２領域にドローイングし、動画像がドローイングされた第２領域をフレームバッファーにコピーすることを特徴とする。
【００１６】
本発明の実施形態による画像ドローイング装置において、オフスクリーンバッファーを構成する第１領域と第２領域とは、それぞれフレームバッファーと同一のサイズを有することを特徴とする。
【発明の効果】
【００１７】
本発明では、論理的に拡張されたオフスクリーンバッファー領域のメモリーコピーにより、フルスクリーン画像「Ｆｕｌｌ-ｓｃｒｅｅｎ ｉｍａｇｅ」のドローイング実行速度を向上することができ、ドローイング実行時間が減少する。これにより、速度の早い反復的な画面更新が多く発生するアプリケーションの実行時、画面にフラッシュ（ｆｌａｓｈ）現象が発生することを抑制することができる。
【図面の簡単な説明】
【００１８】
【図１】本発明の実施形態に係る画像出力装置の構成図。
【図２】本発明の実施形態に係る画像ドローイングステップの論理的なブロック図。
【図３】本発明の第１実施形態に係るドローイングステップを表すフローチャート。
【図４】本発明の第２実施形態に係るドローイングステップを表すフローチャート。
【図５ａ】本発明の実施形態に係るフレームバッファーを表す図面。
【図５ｂ】本発明の実施形態に係るオフスクリーンバッファーを表す図面。
【図６】本発明の実施形態に係るダブルバッファリング方法により、オフスクリーンバッファーにドローイングを実行するステップを表すフローチャート。
【図７】本発明の実施形態に係る背景画像７１０が、固定された状態で、特定画像７２０が他の画像７２２に変更される表示画面。
【発明を実施するための形態】
【００１９】
本発明の実施形態に係る「オフスクリーンバッファー（Ｏｆｆ-Ｓｃｒｅｅｎ Ｂｕｆｆｅｒ）」とは、ビデオメモリー「ＶＲＡＭ」中、ディスプレー表示に使用されないメモリー領域を意味する。オフスクリーンバッファーは、メインメモリ（Ｍａｉｎ Ｍｅｍｏｒｙ）内のディスプレーに関わるメモリー中、ディスプレー表示に使用されないメモリー領域に該当する。本発明の実施形態に係るオフスクリーンバッファーは、第１領域と第２領域とに区分される。第１領域と第２領域とは、それぞれフレームバッファーと同一のサイズを有し、第１領域と第２領域とは一つのオフスクリーンバッファーで論理的に区分される。
【００２０】
本発明の実施形態に係る「フレームバッファー（Ｆｒａｍｅ Ｂｕｆｆｅｒ）」は、ラスター走査方式（Ｒａｓｔｅｒ ｓｃａｎ ｍｅｔｈｏｄ）で画面に表示される画像情報を一時的に格納する記憶装置に該当する。グラフィックプロセッサ（Ｇｒａｐｈｉｃ Ｐｒｏｃｅｓｓｏｒ）が、中央処理装置（ＣＰＵ）からディスプレーリストを伝達されてフレームバッファーに記録する。フレームバッファーの各記憶単位は、画面のピクセルに一つずつ対応し、画面にそのまま反映される。本発明の実施形態によると、オフスクリーンバッファーの第２領域がフレームバッファーにコピーされる。フレームバッファーにコピーされた画像はディスプレーに出力される。
【００２１】
本発明の実施形態に係る「ドローイング（Ｄｒａｗｉｎｇ）」とは、画像（ｉｍａｇｅ）、図形（ｆｉｇｕｒｅ）、文字（ｔｅｘｔ）のようなグラフィック客体をオフスクリーンバッファー上に描く動作を意味する。本発明では、オフスクリーンバッファーを生成した後、生成されたオフスクリーンバッファー上にグラフィック客体のドローイングが入力される。本発明の実施形態によると、オフスクリーンバッファーの第１領域には固定画像がドローイングされ、第２領域には動画像がドローイングされる。
【００２２】
本発明の実施形態に係る「クリア（Ｃｌｅａｒ）」とは、オフスクリーンバッファーに残っているデータを全て削除し、ＲＧＢ色コード(０、０、０)を格納する動作を意味する。本発明では、オフスクリーンバッファーの第２領域のみがクリアされることもあり、第１領域と第２領域とが共にクリアされることもある。
【００２３】
以下、添付の図面を参照し、本発明の好ましい実施形態を詳細に説明する。添付の図面において、同一の構成要素には、なるべく同一の符号で示している。また、本発明の要旨を不明確にし得る公知の機能及び構成に関する詳細な説明は省略する。
【００２４】
図１は、本発明の実施形態に係る画像出力装置の構成図を表す図面である。
Ｊａｖａ（登録商標）アプリケーション(Ｊａｖａ Ａｐｐｌｉｃａｔｉｏｎ)１１０はドローイングマネジャー１２０にドローイングを要請する。ドローイングマネジャー（Ｄｒａｗｉｎｇ Ｍａｎａｇｅｒ）１２０は、Ｊａｖａ（登録商標）アプリケーション１１０からドローイング要請を入力され、運営体制（Ｏｐｅｒａｔｉｎｇ Ｓｙｓｔｅｍ）１４０から提供する基本コマンド、及びグラフィックライブラリー（Ｇｒａｐｈｉｃ Ｌｉｂｒａｒｙ）１３０から提供する関数を用いてオフスクリーンバッファーを生成し、ドローイング動作を実行する。本発明の実施形態に係るドローイングマネジャー１２０は、オフスクリーンバッファーの生成時、第１領域と第２領域とに論理的に区分し、オフスクリーンバッファーを生成する。第１領域と第２領域のサイズは、それぞれフレームバッファー１５４のサイズと同一であることが好ましい。さらに、ドローイングマネジャー１２０は、ディスプレー１７０に表示する画像中、固定画像と動画像とを区別する役割を果たす。ドローイングマネジャー１２０は、固定画像をオフスクリーンバッファーの第１領域にドローイングし、固定画像がドローイングされた第１領域を第２領域にコピーし、コピーされた第２領域に動画像をドローイングする役割を果たす。
【００２５】
ドローイングマネジャー１２０は、Ｊａｖａ（登録商標）アプリケーション１１０と分離して構成することもできるが、Ｊａｖａ（登録商標）アプリケーション１１０に含めて構成することもできる。この場合、ドローイングマネジャー１２０は、Ｊａｖａ（登録商標）アプリケーション１１０のドローイング作業部の代わりになり、Ｊａｖａ（登録商標）アプリケーション１１０が、直接、運営体制１４０及びグラフィックライブラリー１３０と信号を送受信することになる。
【００２６】
グラフィックライブラリー１３０とは、グラフィックス（ｇｒａｐｈｉｃｓ）のために作成された関数の集合を意味する。グラフィックライブラリー１３０には、グラフィックライブラリーの初期化、またはグラフィックカードシステムの初期設定などの初期化、及び設定関数、点、線、円、楕円などをドローイングする基本作図関数及び画像表現、スプライト処理などの付加的な関数が含まれる。本発明の実施形態によると、ドローイングマネジャー１２０は、グラフィックライブラリー１３０に含まれる関数を用いてドローイングを実行する。
【００２７】
運営体制１４０は、画像出力装置を全般的に制御する役割を果たし、デバイスドライバー１４２を含む。ドローイングマネジャー１２０は、デバイスドライバー１４２を用いて、メインメモリ１６０またはビデオコントローラー１５０が管理するＶＲＡＭ（Ｖｉｄｅｏ ＲＡＭ）１５２にオフスクリーンバッファーを生成する。
【００２８】
ビデオコントローラー（Ｖｉｄｅｏ Ｃｏｎｔｒｏｌｌｅｒ）１５０は、画像制御装置であり、再生率、解像度、ディスプレー可能な色の数など、ディスプレー要因を決定する役割を果たす。ビデオコントローラー１５０は、それ自体にプロセッサーを有しており、画像を出力する際に必要な演算を中央処理装置（ＣＰＵ）と共に実行する。本発明の実施形態に係るビデオコントローラー１５０は、ビデオメモリーに該当するＶＲＡＭ１５２及びフレームバッファー１５４を含む。ＶＲＡＭ１５２とは、画像データを格納するのに使用されるＲＡＭを意味し、フレームバッファー１５４とは、表示画面に表示する画像情報を一時的に格納する記憶装置である。
【００２９】
メインメモリ１６０は、画像出力装置の動作に必要なプログラムとデータとを格納する主格納媒体に該当する。本発明の実施形態によると、ドローイングマネジャー１２０は、メインメモリ１６０上にオフスクリーンバッファーを生成することができる。
【００３０】
ディスプレー１７０は、画像出力装置に含まれるプログラム、データ、機能設定情報、及びその他の様々な情報をユーザに視覚的に提供する役割を果たす。ディスプレー１７０は、ＬＣＤ（Ｌｉｑｕｉｄ Ｃｒｙｓｔａｌ Ｄｉｓｐｌａｙ）、ＣＲＴ（Ｃａｔｈｏｄ-Ｒａｙ Ｔｕｂｅ）、ＰＤＰ（Ｐｌａｓｍａ Ｄｉｓｐｌａｙ Ｐａｎｅｌ）などで構成することができ、画像表示可能な全ての媒体がディスプレー１７０になり得る。本発明の実施形態に係るディスプレー１７０は、フレームバッファー１５４にコピーされたデータを出力する役割を果たす。
【００３１】
図２は、本発明の実施形態に係る画像ドローイングステップの論理的なブロック図を表す図面である。
Ｊａｖａ（登録商標）アプリケーション１１０はドローイングマネジャー１２０にドローイングを要請する。ドローイングマネジャー１２０は、ドローイングが要請された画像において固定画像と動画像とを区別する。ドローイングが要請される画像が動画像である場合、ディスプレー１７０には複数の画像が連続的に表示されるが、ドローイングマネジャー１２０は、ディスプレー１７０に表示する、連続する複数の画像を分析し、固定画像と動画像とを区別する。ドローイングマネジャー１２０は、メインメモリ１６０またはＶＲＡＭ１５２にオフスクリーンバッファーを生成する。オフスクリーンバッファーは、第１領域と第２領域とに区分され、ドローイングマネジャー１２０は、固定画像をオフスクリーンバッファーの第１領域にドローイングする。本発明の実施形態により、ドローイングマネジャー１２０は、オフスクリーンバッファーを先に生成し、固定画像と動画像とを区別する動作を実行することもできる。ドローイングマネジャー１２０は、第１領域にドローイングした画像を第２領域にコピーする。その後、ドローイングマネジャー１２０は、コピーされた第２領域に動画像をドローイングする。ドローイングマネジャー１２０が、動画像がドローイングされた第２領域をフレームバッファー１５４にコピーすると、フレームバッファー１５４は、ディスプレー１７０にコピーされた画像を出力する。次のステップからは、固定画像を第１領域にドローイングする動作を省略し、第１領域にドローイングされた固定画像を第２領域にコピーして、動画像のみを第２領域にコピーされた固定画像にドローイングするようになる。本発明では、固定画像と動画像とを区別し、固定画像を第１領域に一回のみドローイングすることによって、固定画像を反復的にドローイングするのにかかる時間を短縮することができる。
【００３２】
図３は、本発明の第１実施形態に係るドローイングステップを表すフローチャートである。
３０５ステップで、ドローイングマネジャー１２０は、Ｊａｖａ（登録商標）アプリケーション１１０からドローイングを要請される。ドローイングマネジャー１２０は、３１０ステップで、同一の固定画像を基準として画像セットを区分する。固定画像は、プログラムの実行中に座標や形態が変化せず、常に一定の領域を占めている画像であって、主に背景画像がこれに該当する。すなわち、ドローイングマネジャー１２０は、Ｊａｖａ（登録商標）アプリケーション１１０からドローイングが要請された画像に関するデータの全体を分析し、同一の固定画像別に画像を分類する。例えば、空を飛ぶ鳥の画像から、山を走るウサギの画像に転換される動画像をドローイングする場合、空の画像と山の画像とは、固定画像に該当する。ここで、ドローイングマネジャー１２０は、空の画像を共通に含む画像を一つの画像セットとして区分し、山の画像を共通に含む画像を一つの画像セットとして区分する。
【００３３】
画像をドローイングするのに用いられるデータ内には、固定画像を表す識別記号（ｉｄ）を含むことができる。すなわち、Ｊａｖａ（登録商標）アプリケーションを作成する際、Ｊａｖａ（登録商標）コード上に、固定画像に対応する識別記号を含めて作成することができる。この場合、ドローイングマネジャー１２０は、画像をドローイングする前に、画像をドローイングするのに使用されるデータ内の識別記号を用いて、同一の固定画像別に画像セットを区分することができる。例えば、空の画像にマッチする識別記号が１に設定されている場合、空の画像を共通に含めている画像をドローイングするのに要求されるデータには、識別記号１が含まれる。同様に、山の画像にマッチする識別記号が２に設定されている場合、山の画像を共通に含めている画像をドローイングするのに要求されるデータには、識別記号２が含まれる。ドローイングマネジャー１２０は、識別記号１を含むデータを使用する画像を一つの画像セットに分類し、識別記号２を含むデータを使用する画像をもう一つの画像セットとして分類する。
【００３４】
ドローイングマネジャー１２０は、３１５ステップで、オフスクリーンバッファーを生成する。オフスクリーンバッファーは、フレームバッファー１５４のサイズの２倍のサイズを有する。例えば、フレームバッファー１５４が６４０×４８０サイズを有する場合、ドローイングマネジャー１２０は、１２８０×４８０または６４０×９６０のサイズを有するオフスクリーンバッファーを生成する。図５aはフレームバッファーを表す図面であり、図５bはオフスクリーンバッファーを表す図面である。図５aには、横がＸ、縦がＹのフレームバッファーが示されており、図５bには、横が２Ｘ、縦がＹのオフスクリーンバッファーが示されている。すなわち、オフスクリーンバッファーは、フレームバッファーの２倍のサイズを有する。
【００３５】
ドローイングマネジャー１２０は、生成したオフスクリーンバッファーを第１領域と第２領域とに区分する。例えば、フレームバッファー１５４のサイズが６４０×４８０であり、生成したオフスクリーンバッファーのサイズが１２８０×４８０である場合、第１領域はｘ、ｙ座標の(１、１)から(６４０、４８０)までの領域に該当し、第２領域はｘ、ｙ座標の(６４１、１)から(１２８０、４８０)までの領域に該当する。
【００３６】
ドローイングマネジャー１２０は、３２０ステップで、固定画像をオフスクリーンバッファーの第１領域にドローイングする。上記例を挙げて説明すると、ドローイングマネジャー１２０は空の画像を第１領域にドローイングする。次いで、ドローイングマネジャー１２０は、３２５ステップで、第１領域にドローイングされた画像を第２領域にコピーする。３２５ステップにおけるコピーステップは、Ｊａｖａ（登録商標） ＡＰＩに基本的に定義されている「ｃｏｐｙＡｒｅａ（）」メソッド（ｍｅｔｈｏｄ）により実行される。「ｃｏｐｙＡｒｅａ（）」メソッドは、同一の物理的オフスクリーンバッファー上でメモリー領域をコピーする際に使用される方法である。ドローイングマネジャー１２０は、フレームバッファー１５４のサイズの２倍になるオフスクリーンバッファーを生成し、これを論理的に２つの領域で区分したところ、オフスクリーンバッファーの第１領域を第２領域にコピーすることは、同一の物理的オフスクリーンバッファー上でメモリー領域をコピーすることに該当する。
【００３７】
コピープロセスは、ドローイングプロセスとは異なり、単なるデータ移転（ｔｒａｎｓｆｅｒ）作業であり、画像ドローイング作業時に、必須的に付加される演算及び準備作業が求められず、画像ドローイング作業に比べて短時間で実行される。すなわち、固定画像を反復的にドローイングする代わりに、コピープロセスを用いて全体画像のドローイング速度を向上させることができる。
【００３８】
ドローイングマネジャー１２０は、３３０ステップでコピーされた第２領域に動画像を追加的にドローイングする。第２領域には固定画像がドローイングされており、ドローイングマネジャー１２０は、第２領域に動画像を追加的にドローイングして全体画像を完成する。上記例を挙げて説明すると、ドローイングマネジャー１２０は、第２領域にコピーされた空の画像に、鳥の画像を追加的にドローイングする。動画像のサイズが固定画像のサイズより小さい場合、動画像をドローイングするのにかかる時間は、固定画像をドローイングするのにかかる時間より短い。
【００３９】
ドローイングマネジャー１２０は、３３５ステップで、第２領域にドローイングされた画像をフレームバッファー１５４にコピーする。３４０ステップで、ドローイングマネジャー１２０は、最後にドローイングした画像が、画像セットの最終画像に該当するか否かを判断する。上記例を挙げて説明すると、ドローイングマネジャー１２０は、直前にドローイングした画像が、空の画像を共通に含めている画像の最終画像に該当するか否かを判断する。直前にドローイングした画像が、画像セットの最終画像に該当しない場合、ドローイングマネジャー１２０は、３５０ステップで、第２領域をクリア（ｃｌｅａｒ）し、第１領域にドローイングされている固定画像をそのまま維持する。３２５ステップで固定された画像がクリアステップなしで維持され、第１領域が第２領域にコピーされれば、第１領域上に固定された画像を反復的にドローイングする時間が短縮できる。第１領域にドローイングされた固定画像をクリアせずにそのまま維持させ、第１領域を第２領域にコピーすることによって、固定画像を反復的にドローイングするのにかかる時間を短縮することができる。
【００４０】
３４０ステップの判断結果、直前にドローイングした画像が、画像セットの最終画像に該当する場合には、３４５ステップで、ドローイングマネジャー１２０は、直前にドローイングした画像が、ドローイングが要請された画像全体において最終画像に該当するか否かを判断する。ドローイングが要請された画像全体は画像セットとして分類され、ドローイングマネジャー１２０はそれぞれの画像セットのドローイング作業を実行する。ドローイングマネジャー１２０が、ドローイングが要請された画像全体のドローイングステップを完了せずに、新しい画像セットのドローイングを開始しようとする場合には、３５５ステップで、オフスクリーンバッファーの第１領域及び第２領域を全てクリアする。第１領域と第２領域全てをクリアすることは、新しい固定画像を第１領域にドローイングするためである。上記例を挙げて説明すると、固定画像が空の画像から山の画像に変更される場合である。ドローイングマネジャー１２０は、固定画像が変更されたことを認識し、第１領域と第２領域全てをクリアする。
【００４１】
ドローイングマネジャー１２０は、３２０ステップに進み、固定画像をオフスクリーンバッファーの第１領域にドローイングする。次いで、ドローイングマネジャー１２０は、３２５ステップで第１領域を第２領域にコピーし、３３０ステップで第２領域に動画像をドローイングし、３３５ステップで、動画像がドローイングされた第２領域をフレームバッファーにコピーする。３４５ステップでの判断の結果、全ての画像セットに関するドローイング作業を完了した場合には、ドローイングマネジャー１２０は画像ドローイング作業を終了する。
【００４２】
図４は、本発明の第２実施形態に係るドローイングステップを表すフローチャートである。本発明の第２実施形態では、画像をドローイングするのに必要なデータ値を画像単位で比較し、表示する画像を固定画像と動画像とに区分することを特徴とする。
【００４３】
４０５ステップで、ドローイングマネジャー１２０は、Ｊａｖａ（登録商標）アプリケーション１１０からドローイングを要請される。ドローイングマネジャー１２０は、４１０ステップで、ドローイングする画像中、最初の画像をドローイングするのに必要なデータ値と、二番目の画像をドローイングするのに必要なデータ値とを比較する。ドローイングマネジャー１２０は、各画像をドローイングするのに要求されるデータ値を比較してその差異を分析し、４１５ステップで、表示する画像を固定画像と動画像とに区分する。
【００４４】
ドローイングマネジャー１２０は、４２０ステップでオフスクリーンバッファーを生成する。オフスクリーンバッファーのサイズは、フレームバッファー１５４のサイズの２倍のサイズを有するように設定される。また、ドローイングマネジャー１２０は、生成したオフスクリーンバッファーを第１領域と第２領域とに区分する。
【００４５】
ドローイングマネジャー１２０は、４２５ステップで、固定画像をオフスクリーンバッファーの第１領域にドローイングする。次いで、４３０ステップで、ドローイングマネジャー１２０は、第１領域にドローイングされた画像を第２領域にコピーする。コピープロセスには、Ｊａｖａ（登録商標） ＡＰＩに基本的に定義されている「ｃｏｐｙＡｒｅａ（）」メソッド（ｍｅｔｈｏｄ）が使用される。
【００４６】
ドローイングマネジャー１２０は、４３５ステップで、動画像をコピーされた第２領域に追加的にドローイングする。第２領域には、固定画像がドローイングされており、ドローイングマネジャー１２０は、動画像を追加的にドローイングして全体の画像を完成する。
【００４７】
ドローイングマネジャー１２０は、４４０ステップで、第２領域にドローイングされた画像をフレームバッファー１５４にコピーする。ドローイングマネジャー１２０は、４４５ステップで、直前にドローイングした画像が、ドローイングが要請された画像の最終画像に該当するか否かを判断する。４４５ステップでの判断の結果、直前にドローイングした画像が最終画像に該当しない場合、ドローイングマネジャー１２０は、４５０ステップで、次の画像をドローイングするのに必要なデータ値と、直前にドローイングした画像のデータ値とを比較し、４５５ステップで、表示する画像を固定画像と動画像とに区分する。次いで、ドローイングマネジャー１２０は、４６０ステップでドローイングする画像と、直前にドローイングした画像との間の固定画像が、第１領域にドローイングされている固定画像と同一であるか否かを判断する。前記ドローイングする画像と直前にドローイングした画像との間の固定画像と、第１領域にドローイングされている固定画像とが同一である場合、ドローイングマネジャー１２０は、４６５ステップで第２領域をクリアし、４３０ステップに進み、オフスクリーンの第１領域を第２領域にコピーする。固定画像が同一であれば、固定画像を第１領域に新たにドローイングしなくてもよく、第１領域にすでにドローイングされている固定画像をコピープロセスを用いて第２領域にコピーする。
【００４８】
４６０ステップでの判断の結果、固定画像が同一でない場合には、固定画像が変更されたことを表し、ドローイングマネジャー１２０は、４７０ステップで、第１領域と第２領域を両方ともクリアする。次いで、ドローイングマネジャー１２０は、４７５ステップで、新しい固定画像を第１領域にドローイングし、４３０ステップに進み、第１領域を第２領域にコピーして、４３５ステップで動画像を第２領域に追加的にドローイングし、４４０ステップで動画像がドローイングされた第２領域をフレームバッファー１５４にコピーする。ドローイングマネジャー１２０が、４４５ステップでの判断の結果、ドローイングが要請された画像に関する全てのドローイング作業を完了した場合には、画像ドローイング作業を終了する。
【００４９】
本発明では、ドローイングとコピープロセスとが融合されたドローイング方法を提案する。ドローイングする画像に関し、固定画像と動画像とを区別し、固定画像に対してはドローイングステップを一回のみ実行する。その後、固定画像が同一である画像をドローイングする際、固定画像はコピープロセスによりオフスクリーンバッファーにコピーされ、動画像のみがコピーされた画像に追加的にドローイングされることによって、全体のドローイング時間が短縮する効果が発生する。
【産業上の利用可能性】
【００５０】
一方、本明細書と図面に開示された本発明の実施形態は、本発明の技術内容を分かりやすく説明し、本発明の理解を助けるために特定の例を提示しているだけであって、本発明の範囲を限定するものではない。ここに開示された実施形態以外にも、本発明の技術的思想に基づく他の変形例が実施可能であることは、本発明の属する技術分野における通常の知識を有する者にとって自明なことである。
【符号の説明】
【００５１】
１１０  Ｊａｖａ（登録商標）アプリケーション
１２０  ドローイングマネジャー
１３０  グラフィックライブラリー
１４０  運営体制
１４２  デバイスドライバー
１５０  ビデオコントローラー
１５２  ＶＲＡＭ
１５４  フレームバッファー
１６０  メインメモリ
１７０  ディスプレー
【図１】
2010164972.tif 000003
【図２】
2010164972.tif 000004
【図３】
2010164972.tif 000005
【図４】
2010164972.tif 000006
【図５ａ】
2010164972.tif 000007
【図５ｂ】
2010164972.tif 000008
【図６】
2010164972.tif 000009
【図７】
2010164972.tif 000010