(57)【要約】【課題】再描画処理の負荷を軽減する。【解決手段】複数のアプリケーション１０が１つのディスプレイ５０にウィンドウＷを描画する画像表示システム１００において、画像サーバ２０はウィンドウＷの移動、拡大・縮小などをもとに、ウィンドウＷの再描画範囲Ｏを算出し、再描画範囲ＯにウィンドウＷを描画しているアプリケーションに対して、再描画要求を出力する。アプリケーション１０は、再描画範囲ＯのみウィンドウＷの再描画を行う。【選択図】  図１
2004318269.tif 000002
【特許請求の範囲】
【請求項１】
仮想画面を記憶する仮想画面記憶手段と、
特定の処理を実行するとともに上記特定の処理に係る画像を上記仮想画面に描画する複数の情報処理手段と、
上記複数の情報処理手段のうち、所定の情報処理手段によって描画された画像が再描画されるとき、再描画前の画像と再描画後の画像を含む最小の範囲を再描画範囲として算出する再描画範囲算出手段と、
上記再描画範囲に画像を描画している他の情報処理手段に対して画像の再描画を要求する再描画要求手段と
を有することを特徴とする画像表示装置。
【請求項２】
上記情報処理手段が描画する画像の描画位置は予め決められており、上記画像描画制御手段は、予め決められた描画位置を基に再描画範囲を算出することを特徴とする請求項１記載の画像表示装置。
【請求項３】
複数のアプリケーションが生成した画像を一つの実画面に表示させる画像表示方法であって、
あるアプリケーションが生成する画像を再描画する場合、再描画前の画像と再描画後の画像を含む最小の範囲を再描画範囲として算出する再描画範囲算出工程と、
上記再描画範囲に含まれる画像を生成したアプリケーションに対して画像の再描画を要求する再描画要求工程と、
上記再描画工程において描画された画像を実画面に表示させる表示工程と
を有することを特徴とする画像表示方法。
【請求項４】
上記複数のアプリケーションが描画する画像の描画位置は予め決められており、上記再描画範囲算出工程では、予め決められた描画位置を基に再描画範囲を算出することを特徴とする請求項３記載の画像表示方法。
【請求項５】
仮想画面を記憶する仮想画面記憶手段と、
特定の処理を実行するとともに上記特定の処理に係るウィンドウを上記仮想画面に描画する少なくとも１つのアプリケーションと、
上記アプリケーションの画像描画機能を制御する画像サーバとを有する画像表示システムであって、
上記画像サーバは、
上記アプリケーションによってウィンドウが再描画される再描画範囲を算出し、上記再描画範囲にウィンドウを描画している他のアプリケーションに対して、上記再描画範囲の再描画を要求することを特徴とする画像表示システム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、画像表示システム、画像表示方法、及び画像表示装置に関し、特に、独立したアプリケーションが生成した画像を１つの画面上に重ねて表示する画像表示装置、画像表示方法、及び画像表示システムに関する。
【０００２】
【従来の技術】
現在、アプリケーションのユーザインターフェースを１つのディスプレイに表示させるマルチウィンドウシステムと呼ばれる画像表示システムが存在する。マルチウィンドウシステムでは、画像を生成するアプリケーションと、アプリケーションが生成した画像を合成する画像サーバとから構成されるクライアント・サーバシステムである。
【０００３】
従来のマルチウィンドウシステムには、アプリケーション内での画像の再描画が生じた場合、アプリケーション上で仮想全画面を再描画し、再描画された範囲の画像データで画像サーバ上の仮想全画面を書き換え、実画面の表示を更新しているものがある（例えば、特許文献１参照。）。
【０００４】
【特許文献１】
特開平６−２５０６４０号公報
【０００５】
【発明が解決しようとする課題】
しかしながら、複数のアプリケーションが表示された画面で、ウィンドウの再描画を行う場合、画面上に表示された全てのアプリケーションがウィンドウの再描画を実行する必要があり、アプリケーションの起動数が増加すればするほど、再描画に要する負荷が増大するという問題がある。
【０００６】
本発明は、上記課題に鑑みて提案されたものであり、再描画処理の負荷を軽減した画像表示装置、画像表示方法、及び画像表示システムを提供することを目的とする。
【０００７】
【課題を解決するための手段】
上述した目的を達成するため、本発明に係る画像表示装置は、仮想画面を記憶する仮想画面記憶手段と、特定の処理を実行するとともに特定の処理に係る画像を仮想画面に描画する複数の情報処理手段と、複数の情報処理手段のうち、所定の情報処理手段によって描画された画像が再描画されるとき、再描画前の画像と再描画後の画像を含む最小の範囲を再描画範囲として算出する再描画範囲算出手段と、再描画範囲に画像を描画している他の情報処理手段に対して画像の再描画を要求する再描画要求手段とを有することを特徴とする。
【０００８】
また、本発明に係る画像表示方法は、特定の処理を実行するとともに特定の処理に係る画像を生成する複数の情報処理手段が生成した複数の画像を同一の実画面に表示させる画像表示方法において、特定の処理に係る画像が再描画される再描画範囲を算出する再描画範囲算出工程と、再描画範囲に含まれる画像を生成した情報処理手段に対して、再描画範囲の画像の再描画を要求する再描画要求工程と、再描画工程において描画された画像を実画面に表示させる表示工程とを有することを特徴とする。
【０００９】
さらに、本発明に係る画像表示システムは、仮想画面を記憶する仮想画面記憶手段と、特定の処理を実行するとともに特定の処理に係るウィンドウを仮想画面に描画する少なくとも１つのアプリケーションと、アプリケーションの画像描画機能を制御する画像サーバとを有する画像表示システムであって、画像サーバは、アプリケーションによってウィンドウが再描画される再描画範囲を算出し、再描画範囲にウィンドウを描画している他のアプリケーションに対して、再描画範囲の再描画を要求することを特徴とする。
【００１０】
【発明の実施の形態】
以下、図面を参照して本発明を適用した画像表示システムについて説明する。この画像表示システムは、複数のウィンドウ（特定の処理に係る画像）を１つのディスプレイに表示させるマルチウィンドウシステムである。マルチウィンドウシステムでは、各アプリケーション（情報処理手段）によってウィンドウが描画されたレイヤを重ね合わせて、１つの実画面を構成している。ウィンドウの合成は、画像サーバ（画像描画制御手段）が制御している。画像サーバは、ウィンドウが移動する範囲を算出し、ウィンドウの移動範囲に存在するアプリケーションのみに対してウィンドウの再描画を指示する。この画像表示システムは、テレビジョンやパーソナルコンピュータのような単一の装置内に構築しても、物理的なサーバと表示部とからなる複数の装置に構築してもよい。
【００１１】
図１は、本発明を適用した画像表示システム１００の構成を示している。画像表示システム１００は、特定の処理を実行するとともに特定の処理に係るウィンドウを生成するアプリケーション１０と、アプリケーション１０の画像描画機能を制御し複数のアプリケーション１０が生成したウィンドウを合成する画像サーバ２０と、画面を記憶する画像記憶部３０と、リモコンやキーボードなどの入力部４０とを有する。
【００１２】
画像サーバ２０は、ディスプレイ５０の再描画処理を管理する。再描画処理において、画像サーバ２０内の座標データ算出部２１は、入力部４０からの入力内容を基にウィンドウが移動する範囲（再描画範囲）を算出する。座標データ算出部２１は、予め決められたウィンドウの移動位置に応じて再描画範囲を算出する。ウィンドウの移動位置は、ウィンドウの現状態と入力部４０からの入力に応じて決まる。例えば、ウィンドウ上のアイコンをクリックすると中心に配置されたウィンドウが画面の端に移動し、中心に他のウィンドウが表示される。画像サーバ２０は、再描画範囲を算出すると、再描画範囲に配置された他のウィンドウを生成しているアプリケーション１０を特定する。
【００１３】
また、画像サーバ２０は、ディスプレイ５０に表示された再描画範囲をキャプチャし仮想画面バッファ３１に取り込む。画像サーバ２０は、移動するウィンドウ及びこのウィンドウが移動する範囲に配置されたウィンドウを生成するアプリケーション１０に対して、仮想画面の再描画要求を出力する。
【００１４】
アプリケーション１０は、数値演算や画像処理などのアプリケーション１０独自の処理を実行するメイン処理部１２と、メイン処理部１２の処理において必要となる画像を仮想画面に描画する描画実行部１１とを有する。描画実行部１１には、メイン処理部１２や画像サーバ２０から再描画要求が入力される。再描画要求を受けた描画実行部１１は、既に描かれた仮想画面に新しいウィンドウを上書きし複数のウィンドウが重なった実画面を生成する。
【００１５】
画像記憶部３０は、例えば、ビデオカードである。画像記憶部３０は、仮想画面を記憶する仮想画面バッファ３１と実画面を記憶する実画面バッファ３２とを有する。仮想画面バッファ３１は、画面の再構築のための作業領域である。仮想画面バッファ３１は、ディスプレイ５０からキャプチャされた実画面の再描画領域を記憶する。アプリケーション１０は仮想画面を再描画し、画像記憶部３０は全てのアプリケーション１０の再描画が完了した仮想画面を実画面バッファ３１に転送しディスプレイ５０に表示させる。
【００１６】
次いで、図２〜図４を参照して上述した画像表示システム１００の動作を説明する。図２は、画像表示システム１００における再描画処理の手順を示している。ユーザからリモコンやキーボードなどの入力部４０を介して特定の処理が指示されると（ステップＳ１）、画像サーバ２０はウィンドウの移動の有無及びウィンドウの移動範囲（再描画範囲）を算出する（ステップＳ２）。画像サーバ２０は、ウィンドウが移動する場合（ステップＳ２；ＹＥＳ）、画面の再描画を開始し、ディスプレイ５０に表示されている画像の再描画範囲をキャプチャし仮想画面バッファ３１に記憶する（ステップＳ３）。一方、ステップＳ２においてウィンドウの移動を検出しない場合には（ステップＳ２；ＮＯ）、ユーザの入力を待機する。
【００１７】
次いで、画像サーバ２０は、再描画範囲にウィンドウを描画しているアプリケーション１０を特定し、特定したアプリケーション１０のうち最下層のレイヤに位置するアプリケーション１０にウィンドウの再描画要求を出力する（ステップＳ４）。画像サーバ２０から再描画要求を受けたアプリケーション１０は、仮想画面の再描画を行う。ここで、アプリケーション１０が再描画を行う範囲は、ウィンドウの移動範囲（再描画範囲）のみである。アプリケーション１０は、仮想画面の再描画を終了すると、再描画の終了を画像サーバ２０に通知する（ステップＳ５）。画像サーバ２０は、再描画終了の通知を受けると、全てのアプリケーション１０が再描画を終了したか否かをチェックし、再描画要求を出力していないアプリケーション１０が存在する場合には（ステップＳ６；ＮＯ）、再描画要求を出力していないアプリケーション１０のうち、最下層のレイヤに位置するアプリケーション１０に再描画要求を出力する。一方、ステップＳ４において特定した全てのアプリケーション１０に対する再描画要求が完了すると（ステップＳ６；ＹＥＳ）、仮想画面バッファ３１に記憶している画像を実画面バッファ３２に転送する（ステップＳ７）。
【００１８】
このように、本発明を適用した画像表示システム１００では、再描画範囲のみを再描画するため、再描画する範囲及び再描画を行うアプリケーション１０数が削減され、再描画処理を軽くすることができる。例えば、図３に示すような画面において、ウィンドウＷｘがウィンドウＷｘ’の位置に移動する場合、再描画領域ＯにはウィンドウＷ３が含まれない。そのため、ウィンドウＷ３の再描画処理を削減することができる。さらに、ウィンドウＷ１、ウィンドウＷ２、ウィンドウＷｘも再描画領域Ｏのみを再描画すればよいので再描画処理を軽くすることができる。
【００１９】
次いで、上述した再描画処理の具体例としてウィンドウのムーブ処理について説明する。ウィンドウのムーブ処理とは、ウィンドウを１画素ずつ連続的に移動させる処理である。図４は、ムーブ処理を行う画面例である。この画面では、ルートウィンドウＷＲの左側部に縦長のウィンドウＷＯが設けられている。画面の中央下側には、移動するウィンドウＷＪが表示されている。ウィンドウＷＪには、ミュージシャンの名称の表示を指定するチェックボックスＣＨ１と、アルバムの名称の表示を指定するチェックボックスＣＨ２と、曲名の表示を指定するチェックボックスＣＨ３の３つのチェックボックスとが配置されている。例えば、この画面でチェックボックスＣＨ１〜ＣＨ３のいずれかをチェックすると、ウィンドウＷＪは、画面上部にムーブし、ウィンドウＷＪの画面下方には指定された情報を表示するウィンドウＷＰが描画される。
【００２０】
なお、チェックボックスＣＨ１〜ＣＨ３の押下により、ウィンドウＷＪが移動する位置は予め決められている。座標データ算出部２１は、予め決められた移動位置を基に再描画範囲を算出する。この発明では、このようにアプリケーション１０が予め決まった画像処理を行う場合に適用することが好ましい。予め決まった画像処理では、再描画範囲の算出が容易であるためである。
【００２１】
図５は、ウィンドウＷＪのムーブ処理を示すフローチャートである。画像サーバ２０は、チェックボックスＣＨ１〜ＣＨ３がチェックされると、ムーブ処理を開始する（ステップＳ１１）。ムーブ処理を開始すると、座標データ算出部２１は、ウィンドウＷＪの移動する範囲を算出する。具体的に説明すると、ウィンドウＷＪの移動する範囲は、表示画面上の座標として算出される。表示画面Ｗには、表示画面Ｗの左上隅を原点として水平方向をＸ軸、垂直方法をＹ軸とする座標系が仮想的に設定されている。この座標系における、ウィンドウＷＪの位置とは、座標系におけるウィンドウＷＪの左上隅角の座標を示している。
【００２２】
チェックボックスＣＨ１〜ＣＨ３の押下により、ウィンドウＷＪの位置は、座標（１００，１００）から座標（１００，４００）に移動する。ウィンドウＷＪの幅が３００，ウィンドウの高さが８０であるので、ウィンドウＷＪの移動領域Ｏは、（１００，１００，４８０，４００）の矩形であると算出できる。
【００２３】
画像サーバ２０は、ウィンドウＷＪの移動領域Ｏを再描画領域Ｏとして、仮想画面バッファ３１に取り込み（ステップＳ１２）、再描画を施す画像を仮想画面バッファ３１に記憶された再描画領域Ｏに設定する（ステップＳ１３）。次いで、画像サーバ２０はカウンタｉの初期値を１００に設定する（ステップＳ１４）。これは、ウィンドウＷＪの移動前のＹ座標を代入したものである。そして、画像サーバ２０は、カウンタｉの値を１増加した後（ステップＳ１５）、ウィンドウＷＪのＹ座標を１増加する（ステップＳ１６）。Ｙの値を１増加すると、ウィンドウＷＪが１画素分Ｙ軸方向に移動する。
【００２４】
そして、画像サーバ２０は、再描画領域Ｏに存在する各アプリケーション１０に対して再描画要求を出力する。ここで、再描画領域ＯにはルートウィンドウＷＲと、移動ウィンドウＷＪが存在する。画像サーバ２０は、まず、下層レイヤのウィンドウ、すなわちルートウィンドウＷＲを描画するアプリケーション１０に再描画要求を出力し、このアプリケーション１０からの描画終了メッセージが到着すると、ウィンドウＷＪを描画するアプリケーション１０に再描画要求を出力する（ステップＳ１７）。画像サーバ２０は、ｉの値が４００になるまで２つのアプリケーション１０に再描画要求を出力し続ける（ステップＳ１８；ＹＥＳ）。この間、ウィンドウＷＪは、１画素ずつＹ軸方向に移動し、最終的にはＹ＝４００の位置に描画される。カウンタｉの値が４００に達し、ウィンドウＷＪの移動が終了すると（ステップＳ１８；ＮＯ）、画像サーバ２０は、再描画領域Ｏの設定を解除し（ステップＳ１９）、ムーブ処理を終了する。
【００２５】
上述したように、本発明は、ウィンドウＷの移動が生じた際にウィンドウの移動範囲に存在するアプリケーション１０にのみ仮想画面の再描画を実行させることを特徴としている。ムーブ処理では、ウィンドウＷＪが移動した画素分だけ画面の再描画を行う。ムーブ処理のように仮想画面の再描画が頻繁に起きる場合、再描画を実行するアプリケーション１０数を減少させると再描画処理の負担が大きく軽減される。
【００２６】
次いで、異なる再描画範囲を設定した例について説明する。この例では、移動前のウィンドウＷＪと移動後のウィンドウＷＪ’の描画範囲のみを再描画範囲Ｏとする再描画処理について説明する。ジャンプとは、ウィンドウが離れた位置に一度に移動する処理である。この例では、図６に示すように、図面下側のウィンドウＷＪが図面上方のウィンドウＷＪ’にジャンプしている。
【００２７】
この例におけるウィンドウの再描画範囲Ｏは、ジャンプ前のウィンドウＷＪの描画領域Ｏ１とジャンプ後のウィンドウＷＪ’の描画領域Ｏ２との２つの領域からなる。描画領域Ｏ１には、ルートウィンドウＷＲのみが描画される。描画領域Ｏ２には、ルートウィンドウＷＲとジャンプするウィンドウＷＪ’とが描画される。画像サーバは、描画領域Ｏ１にルートウィンドウＷＲを再描画させる再描画要求を出力し、描画領域Ｏ２にルートウィンドウＷＲとウィンドウＷＪを再描画させる再描画要求を出力する。
【００２８】
このように、移動前のウィンドウＷＪの描画領域Ｏ１と移動後のウィンドウＷＪ’の描画領域Ｏ２とを再描画範囲Ｏとした場合、再描画範囲Ｏの面積が小さくなり、再描画範囲Ｏに存在するアプリケーションの個数が少なくなるため、再描画の回数が少なくなる。
【００２９】
なお、上記実施の形態では、ウィンドウが移動した例について説明したが、ウィンドウ枠の拡大・縮小やスクロールにも本発明を適用することができる。ウィンドウ枠を拡大・縮小する場合では、例えば、拡大された部分及び縮小された部分を再描画範囲とし、スクロールではスクロール範囲を再描画範囲とする。画像サーバ２０は、再描画範囲にウィンドウを描画しているアプリケーション１０を特定し、再描画要求を出力する。
【００３０】
また、上記実施の形態では、全てのアプリケーション１０が１つの仮想画面を共有しているが、各アプリケーション１０がそれぞれの仮想画面を有し、各アプリケーション１０が生成した仮想画面を画像サーバ２０が合成する構成としてもよいし、各アプリケーションが画像を生成するのではなく画像サーバ２０が一括して画像を生成する構成としてもよい。
【００３１】
また、上記実施の形態におけるウィンドウシステムの構成を再描画の過程を直接実画面に表示させる構成とすると、移動前のウィンドウを徐々に消去させたり、移動後のウィンドウを徐々に表示させたりするような視覚効果を与えることができる。
【００３２】
【発明の効果】
上述したように、本発明によれば画像の再描画範囲のみを再描画するため、情報処理手段の描画領域が少なくなり、再描画するための情報処理手段の負荷が軽減される。さらに、本発明によれば、再描画範囲に画像を描画している情報処理手段にのみ画像の再描画を要求するため、再描画をする回数が少なくなり、再描画に要する負荷が軽減される。
【００３３】
また、本発明によれば複数の情報処理手段が１つの仮想画面に対して再描画を行うため、仮想画面を記憶する領域を小さくすることができる。
【図面の簡単な説明】
【図１】本発明を適用した画像表示システムの構成を示す図である。
【図２】ウィンドウの再描画処理の手順を示すフローチャートである。
【図３】ディスプレイに表示されるウィンドウの構成例を示す図である。
【図４】ムーブ処理が施される画面の構成例を示す図である。
【図５】ムーブ処理の手順を示すフローチャートである。
【図６】ディスプレイに表示されるウィンドウの構成例を示す図である。
【符号の説明】
１００  画像表示システム、１０  アプリケーション、１１  描画実行部、２０画像サーバ、２１  座標データ算出部、３０  画像記憶部、３１  仮想画面バッファ、３２  実画面バッファ、４０  入力部、５０  ディスプレイ
【図１】
2004318269.tif 000003
【図２】
2004318269.tif 000004
【図３】
2004318269.tif 000005
【図４】
2004318269.tif 000006
【図５】
2004318269.tif 000007
【図６】
2004318269.tif 000008