(57)【要約】【課題】サーバ装置から提供される画像をクライアント装置で表示するシステムにおいて、表示する画面を変化させる際の画面表示のレスポンスを向上させる。【解決手段】サーバ装置１は、クライアント装置２の表示画面上のポインタカーソル位置のデータをクライアント装置２から順次受信し、ポインタカーソルの前回の位置に対応して表示された前画面と、今回の位置に対応して表示される次画面とを比較し、一致した領域PSAMEを抽出する。また、ポインタカーソルの位置の変位を示す移動ベクトル(Xi−Xi-1,Yi−Yi-1)に従って移動をさせた前画面と次画面とを比較し、一致した領域PMOVE及びPMOVEの２点の対角点の座標PM1,PM2を抽出する。そして、次画面の中から、PSAMEにもPMOVEにも含まれないタイル領域Ｔを抽出し、タイル領域Ｔの圧縮データと、そのタイル番号と、座標PM1,PM2のデータをクライアント装置２に送信する。【選択図】図６
2008225516.tif 000002
【特許請求の範囲】
【請求項１】
クライアント装置に表示される画像を当該クライアント装置に提供するサーバ装置であって、
前記クライアント装置の表示画面上において入力手段により任意に指定された位置のデータを前記クライアント装置から順次受信する受信手段と、
前記受信手段により受信された前回の位置に対応して表示された前画面と、前記受信手段により受信された今回の位置に対応して表示される次画面とを比較し、一致した領域を抽出する第１の抽出手段と、
前記受信手段により受信された前回の位置から今回の位置への変位分の移動をさせた前画面と前記次画面とを比較し、一致した領域及び当該領域の位置を示す座標を抽出する第２の抽出手段と、
前記次画面の中から、前記第１の抽出手段により抽出された領域及び前記第２の抽出手段により抽出された領域の何れにも含まれない領域を抽出する第３の抽出手段と、
前記第３の抽出手段により抽出された領域を示すデータと、前記第２の抽出手段により抽出された座標のデータとを前記クライアント装置に送信する送信手段と、
を備えるサーバ装置。
【請求項２】
前記受信手段により受信された前回の位置から今回の位置への変位分のうち画面内で水平方向の変位分の移動をさせた前画面と前記次画面とを比較し、一致した領域及び当該領域の位置を抽出するとともに、前記受信手段により受信された前回の位置から今回の位置への変位分のうち前記画面内で前記水平方向に直交する方向の変位分の移動をさせた前画面と前記次画面とを比較し、一致した領域及び当該領域の位置を抽出する第４の抽出手段と、を備え、
前記第３の抽出手段は、前記次画面の中から、更に前記第４の抽出手段により抽出された領域にも含まれない領域を抽出し、
前記送信手段は、更に前記第４の抽出手段により抽出された座標のデータを前記クライアント装置に送信する請求項１に記載のサーバ装置。
【請求項３】
前記クライアント装置に最初に表示される画面を最初の背景画面とした背景画面データを記憶する記憶手段と、
前記次画面と前記記憶手段に記憶された背景画面データとを比較し、一致した領域及び当該領域の位置を示す座標を抽出する第５の抽出手段と、を備え、
前記第３の抽出手段は、前記次画面の中から、更に前記第５の抽出手段により抽出された領域にも含まれない領域を抽出し、
前記送信手段は、更に前記第５の抽出手段により抽出された座標のデータを前記クライアント装置に送信し、
前記次画面のうち前記第３の抽出手段により抽出された領域のデータを前記記憶手段に記憶された背景画面データに上書きすることによって当該背景画面データを更新する更新手段を備える請求項１又は２に記載のサーバ装置。
【請求項４】
クライアント装置に表示される画像を当該クライアント装置に提供するサーバ装置であって、
前記クライアント装置に表示される画面上の任意の位置を指定するための入力手段と、
前記画面上において前記入力手段により指定された位置を順次取得する取得手段と、
前記取得手段により取得された前回の位置に対応して表示された前画面と、前記取得手段により取得された今回の位置に対応して表示される次画面とを比較し、一致した領域を抽出する第１の抽出手段と、
前記取得手段により取得された前回の位置から今回の位置への変位分の移動をさせた前画面と前記次画面とを比較し、一致した領域及び当該領域の位置を示す座標を抽出する第２の抽出手段と、
前記次画面の中から、前記第１の抽出手段により抽出された領域及び前記第２の抽出手段により抽出された領域の何れにも含まれない領域を抽出する第３の抽出手段と、
前記第３の抽出手段により抽出された領域を示すデータと、前記第２の抽出手段により抽出された座標のデータと、前記変位を示すデータとを前記クライアント装置に送信する送信手段と、
を備えるサーバ装置。
【請求項５】
前記取得手段により取得された前回の位置から今回の位置への変位分のうち画面内で水平方向の変位分の移動をさせた前画面と前記次画面とを比較し、一致した領域及び当該領域の位置を抽出するとともに、前記取得手段により取得された前回の位置から今回の位置への変位分のうち前記画面内で前記水平方向に直交する方向の変位分の移動をさせた前画面と前記次画面とを比較し、一致した領域及び当該領域の位置を抽出する第４の抽出手段と、を備え、
前記第３の抽出手段は、前記次画面の中から、更に前記第４の抽出手段により抽出された領域にも含まれない領域を抽出し、
前記送信手段は、更に前記第４の抽出手段により抽出された座標のデータを前記クライアント装置に送信する請求項４に記載のサーバ装置。
【請求項６】
前記クライアント装置に最初に表示される画面を最初の背景画面とした背景画面データを記憶する記憶手段と、
前記次画面と前記記憶手段に記憶された背景画面データとを比較し、一致した領域及び当該領域の位置を示す座標を抽出する第５の抽出手段と、を備え、
前記第３の抽出手段は、前記次画面の中から、更に前記第５の抽出手段により抽出された領域にも含まれない領域を抽出し、
前記送信手段は、更に前記第５の抽出手段により抽出された座標のデータを前記クライアント装置に送信し、
前記次画面のうち前記第３の抽出手段により抽出された領域のデータを前記記憶手段に記憶された背景画面データに上書きすることによって当該背景画面データを更新する更新手段を備える請求項４又は５に記載のサーバ装置。
【請求項７】
前記第２の抽出手段は、前記一致した領域内の矩形領域と当該矩形領域の２点の対角点の座標とを抽出する請求項１から６の何れか一項に記載のサーバ装置。
【請求項８】
前記第４の抽出手段は、前記前画面の水平方向の変位分の移動により得られた前記一致した領域内の矩形領域と当該矩形領域の２点の対角点の座標とを抽出するとともに、前記前画面の前記直交する方向の変位分の移動により得られた前記一致した領域内の矩形領域と当該矩形領域の２点の対角点の座標とを抽出する請求項２又は５に記載のサーバ装置。
【請求項９】
前記第５の抽出手段は、前記一致した領域内の矩形領域と当該矩形領域の２点の対角点の座標とを抽出する請求項３又は６に記載のサーバ装置。
【請求項１０】
サーバ装置から提供された画像を表示する表示手段と、
前記表示手段の表示画面上において任意の位置を指定する入力手段と、
前記表示画面上において前記入力手段により指定された位置のデータを前記サーバ装置に順次送信する送信手段と、
前記サーバ装置から、前記送信手段により送信された今回の位置に対応して表示される次画面の中で、前記送信手段により送信された前回の位置に対応して表示された前画面に一致せず、前記送信された前回の位置から今回の位置への変位分の移動をさせた前画面にも一致しない領域のデータを受信するとともに、前記次画面の中で、前記変位分の移動をさせた前画面に一致する領域の位置を示す座標のデータを受信する受信手段と、
前記受信手段により受信されたデータに基づいて次画面を形成し、前記表示手段に表示するための制御を行う表示制御手段と、
を備えるクライアント装置。
【請求項１１】
前記受信手段は、前記次画面の中で、前記送信手段により送信された前回の位置から今回の位置への変位分のうち画面内で水平方向の変位分の移動をさせた前画面にも一致せず、且つ前記水平方向に直交する方向の変位分の移動をさせた前画面にも一致しない領域のデータを受信し、更に、前記次画面の中で、前記水平方向の変位分の移動をさせた前画面に一致する領域の位置を示す座標のデータと、前記水平方向に直交する方向の変位分の移動をさせた前画面に一致する領域の位置を示す座標のデータとを受信する請求項１０に記載のクライアント装置。
【請求項１２】
前記表示手段に最初に表示される画面を最初の背景画面とした背景画面データを記憶する記憶手段を備え、
前記受信手段は、前記次画面の中で、前記サーバ装置において記憶された背景画面データにも一致しない領域のデータを受信し、更に、前記次画面の中で、前記背景画面データに一致する領域の位置を示す座標のデータを受信し、
前記表示制御手段は、前記表示画面内の前記受信された座標のデータが示す領域に、前記記憶手段に記憶された背景画面データを用いることによって次画面を形成し、
前記受信手段により受信された領域のデータを前記記憶手段に記憶された背景画面データに上書きすることによって当該背景画面データを更新する更新手段を備える請求項１０又は１１に記載のクライアント装置。
【請求項１３】
サーバ装置から提供された画像を表示する表示手段と、
前記サーバ装置から、前記表示手段に表示される次画面の中で、前記表示画面に表示された前画面に一致せず、且つ前記サーバ装置において任意に指定された変位分の移動をさせた前画面にも一致しない領域のデータを受信するとともに、前記次画面の中で前記変位分の移動をさせた前画面に一致する領域の位置を示す座標のデータと、前記変位を示すデータとを受信する受信手段と、
前記受信手段により受信されたデータに基づいて次画面を形成し、前記表示手段に表示するための制御を行う表示制御手段と、
を備えるクライアント装置。
【請求項１４】
前記受信手段は、前記次画面の中で、前記指定された変位分のうち画面内で水平方向の変位分の移動をさせた前画面にも一致せず、且つ前記水平方向に直交する方向の変位分の移動をさせた前画面にも一致しない領域のデータを受信し、更に、前記次画面の中で、前記水平方向の変位分の移動をさせた前画面に一致する領域の位置を示す座標のデータと、前記水平方向に直交する方向の変位分の移動をさせた前画面に一致する領域の位置を示す座標のデータとを受信する請求項１３に記載のクライアント装置。
【請求項１５】
前記表示手段に最初に表示される画面を最初の背景画面とした背景画面データを記憶する記憶手段を備え、
前記受信手段は、前記次画面の中で、前記サーバ装置において記憶された背景画面データにも一致しない領域のデータを受信し、更に、前記次画面の中で、前記背景画面データに一致する領域の位置を示す座標のデータを受信し、
前記表示制御手段は、前記表示画面内の前記受信された座標のデータが示す領域に、前記記憶手段に記憶された背景画面データを用いることによって次画面を形成し、
前記受信手段により受信された領域のデータを前記記憶手段に記憶された背景画面データに上書きすることによって当該背景画面データを更新する更新手段を備える請求項１３又は１４に記載のクライアント装置。
【請求項１６】
コンピュータを、
クライアント装置の表示画面上において入力手段により任意に指定された位置のデータを前記クライアント装置から順次受信する受信手段、
前記受信手段により受信された前回の位置に対応して表示された前画面と、前記受信手段により受信された今回の位置に対応して表示される次画面とを比較し、一致した領域を抽出する第１の抽出手段、
前記受信手段により受信された前回の位置から今回の位置への変位分の移動をさせた前画面と前記次画面とを比較し、一致した領域及び当該領域の位置を示す座標を抽出する第２の抽出手段、
前記次画面の中から、前記第１の抽出手段により抽出された領域及び前記第２の抽出手段により抽出された領域の何れにも含まれない領域を抽出する第３の抽出手段、
前記第３の抽出手段により抽出された領域を示すデータと、前記第２の抽出手段により抽出された座標のデータとを前記クライアント装置に送信する送信手段、
として機能させるためのプログラム。
【請求項１７】
コンピュータを、
クライアント装置に表示される画面上の任意の位置を指定するための入力手段、
前記画面上において前記入力手段により指定された位置を順次取得する取得手段、
前記取得手段により取得された前回の位置に対応して表示された前画面と、前記取得手段により取得された今回の位置に対応して表示される次画面とを比較し、一致した領域を抽出する第１の抽出手段、
前記取得手段により取得された前回の位置から今回の位置への変位分の移動をさせた前画面と前記次画面とを比較し、一致した領域及び当該領域の位置を示す座標を抽出する第２の抽出手段、
前記次画面の中から、前記第１の抽出手段により抽出された領域及び前記第２の抽出手段により抽出された領域の何れにも含まれない領域を抽出する第３の抽出手段、
前記第３の抽出手段により抽出された領域を示すデータと、前記第２の抽出手段により抽出された座標のデータと、前記変位を示すデータとを前記クライアント装置に送信する送信手段、
として機能させるためのプログラム。
【請求項１８】
コンピュータを、
サーバ装置から提供された画像を表示する表示手段、
前記表示手段の表示画面上において任意の位置を指定する入力手段、
前記表示画面上において前記入力手段により指定された位置のデータを前記サーバ装置に順次送信する送信手段、
前記サーバ装置から、前記送信手段により送信された今回の位置に対応して表示される次画面の中で、前記送信手段により送信された前回の位置に対応して表示された前画面に一致せず、前記送信された前回の位置から今回の位置への変位分の移動をさせた前画面にも一致しない領域のデータを受信するとともに、前記次画面の中で、前記変位分の移動をさせた前画面に一致する領域の位置を示す座標のデータを受信する受信手段、
前記受信手段により受信されたデータに基づいて次画面を形成し、前記表示手段に表示するための制御を行う表示制御手段、
として機能させるためのプログラム。
【請求項１９】
コンピュータを、
サーバ装置から提供された画像を表示する表示手段、
前記サーバ装置から、前記表示手段に表示される次画面の中で、前記表示画面に表示された前画面に一致せず、且つ前記サーバ装置において任意に指定された変位分の移動をさせた前画面にも一致しない領域のデータを受信するとともに、前記次画面の中で前記変位分の移動をさせた前画面に一致する領域の位置を示す座標のデータと、前記変位を示すデータとを受信する受信手段、
前記受信手段により受信されたデータに基づいて次画面を形成し、前記表示手段に表示するための制御を行う表示制御手段、
として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、クライアント装置に画像を提供するサーバ装置と、サーバ装置から提供された画像に基づいて画面表示をするクライアント装置と、プログラムに関する。
【背景技術】
【０００２】
ＳＢＣ（Sever-Based Computing）を用いたシステムにおいて、サーバ装置は、アプリケーションの実行やデータの管理を行い、クライアント装置は、サーバ装置に接続することによってサーバ装置上のアプリケーションを利用している。ＳＢＣにおけるＤＤＳ（Differential Display System）方式のリモートディスプレイ画像転送方式では、クライアント装置側に表示させる画像データはサーバ装置側で保持している。
【０００３】
ここで、ＤＤＳは、ウィンドウズ（登録商標）等の独自仕様のＯＳ（Operating System）にも対応させるため、画面内にアイコンやウィンドウ等のＧＵＩ（Graphical User Interface）を構成する様々なものが存在したとしても、これらの構成要素を認識することができず、画像内容を一枚の画像としてしか認識することができないシステムである。このような条件において、次時間に表示する画面内容に、現在表示中の画面内容と異なる部分がある場合、サーバ装置内で、現在の画面内容と次の画面内容との比較を行い、異なる部分又は異なる部分を含むタイル領域（例えば、8×8若しくは16×16の領域）のみを圧縮してクライアント装置に送信する。クライアント装置では、サーバ装置から受信した画像データに基づいて次に表示する画面を形成する。これにより、一画面全ての画像データを送信するよりもデータ量を削減することができる。
【０００４】
このようなＳＢＣ方式のシステムとして、特許文献１には、サーバ装置とクライアント装置が接続されたシンクライアントシステムにおいて、ＧＵＩコンポーネント単位でその属性に対応したコマンドを定義し、ＧＵＩコンポーネントの属性値を送受信することにより、サーバ装置とクライアント装置との間でやりとりされるデータ量を削減する技術が開示されている。
【特許文献１】特開２００５−２２８２２７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、従来のリモートディスプレイ画像転送方式では、前画面と次画面を比較する際、画面上の同一の位置を比較しているため、画面内で特定の画像領域（ウィンドウ）を移動させた場合に、移動に係る全ての領域の画像データをクライアント装置に送信しなければならず、画面表示のレスポンスが悪くなるという問題がある。例えば、画面内のウィンドウやアイコン等をマウスでドラッグして移動させた場合、移動後にウィンドウやアイコンが占める領域と、移動前にこれらが存在した領域の画像が、元の画像との差異として検出され、この差異部分の画像データを全てクライアント装置に送信しなければならない。
【０００６】
このような問題を解決するために、マウスボタンが押されている間、ドラッグ中である可能性がある間は、次画面と前画面との相違が検出されても、相違内容を送信せずにせいぜい相違範囲のみを送信し、クライアント装置で相違範囲を描画しないなどの対策をとることが考えられる。しかしながら、この方法では、ウィンドウの内容を見ながら移動位置を確定させたい場合（例えば、ウィンドウの一部分を画面の外に出し、他の部分を画面内に残すように移動する場合）に対応することができない。また、ドラッグ中はその相違内容を送信しないとしても、移動が確定した後には、たとえウィンドウの中身に変更がなくても、ウィンドウ中のデータを送信しなければならず、結局、送信するデータ量を削減することができない。
【０００７】
本発明の課題は、サーバ装置から提供される画像をクライアント装置で表示するシステムにおいて、表示する画面を変化させる際の画面表示のレスポンスを向上させることである。
【課題を解決するための手段】
【０００８】
請求項１に記載の発明は、クライアント装置に表示される画像を当該クライアント装置に提供するサーバ装置であって、前記クライアント装置の表示画面上において入力手段により任意に指定された位置のデータを前記クライアント装置から順次受信する受信手段と、前記受信手段により受信された前回の位置に対応して表示された前画面と、前記受信手段により受信された今回の位置に対応して表示される次画面とを比較し、一致した領域を抽出する第１の抽出手段と、前記受信手段により受信された前回の位置から今回の位置への変位分の移動をさせた前画面と前記次画面とを比較し、一致した領域及び当該領域の位置を示す座標を抽出する第２の抽出手段と、前記次画面の中から、前記第１の抽出手段により抽出された領域及び前記第２の抽出手段により抽出された領域の何れにも含まれない領域を抽出する第３の抽出手段と、前記第３の抽出手段により抽出された領域を示すデータと、前記第２の抽出手段により抽出された座標のデータとを前記クライアント装置に送信する送信手段と、を備える。
【０００９】
請求項２に記載の発明は、請求項１に記載のサーバ装置において、前記受信手段により受信された前回の位置から今回の位置への変位分のうち画面内で水平方向の変位分の移動をさせた前画面と前記次画面とを比較し、一致した領域及び当該領域の位置を抽出するとともに、前記受信手段により受信された前回の位置から今回の位置への変位分のうち前記画面内で前記水平方向に直交する方向の変位分の移動をさせた前画面と前記次画面とを比較し、一致した領域及び当該領域の位置を抽出する第４の抽出手段と、を備え、前記第３の抽出手段は、前記次画面の中から、更に前記第４の抽出手段により抽出された領域にも含まれない領域を抽出し、前記送信手段は、更に前記第４の抽出手段により抽出された座標のデータを前記クライアント装置に送信する。
【００１０】
請求項３に記載の発明は、請求項１又は２に記載のサーバ装置において、前記クライアント装置に最初に表示される画面を最初の背景画面とした背景画面データを記憶する記憶手段と、前記次画面と前記記憶手段に記憶された背景画面データとを比較し、一致した領域及び当該領域の位置を示す座標を抽出する第５の抽出手段と、を備え、前記第３の抽出手段は、前記次画面の中から、更に前記第５の抽出手段により抽出された領域にも含まれない領域を抽出し、前記送信手段は、更に前記第５の抽出手段により抽出された座標のデータを前記クライアント装置に送信し、前記次画面のうち前記第３の抽出手段により抽出された領域のデータを前記記憶手段に記憶された背景画面データに上書きすることによって当該背景画面データを更新する更新手段を備える。
【００１１】
請求項４に記載の発明は、クライアント装置に表示される画像を当該クライアント装置に提供するサーバ装置であって、前記クライアント装置に表示される画面上の任意の位置を指定するための入力手段と、前記画面上において前記入力手段により指定された位置を順次取得する取得手段と、前記取得手段により取得された前回の位置に対応して表示された前画面と、前記取得手段により取得された今回の位置に対応して表示される次画面とを比較し、一致した領域を抽出する第１の抽出手段と、前記取得手段により取得された前回の位置から今回の位置への変位分の移動をさせた前画面と前記次画面とを比較し、一致した領域及び当該領域の位置を示す座標を抽出する第２の抽出手段と、前記次画面の中から、前記第１の抽出手段により抽出された領域及び前記第２の抽出手段により抽出された領域の何れにも含まれない領域を抽出する第３の抽出手段と、前記第３の抽出手段により抽出された領域を示すデータと、前記第２の抽出手段により抽出された座標のデータと、前記変位を示すデータとを前記クライアント装置に送信する送信手段と、を備える。
【００１２】
請求項５に記載の発明は、請求項４に記載のサーバ装置において、前記取得手段により取得された前回の位置から今回の位置への変位分のうち画面内で水平方向の変位分の移動をさせた前画面と前記次画面とを比較し、一致した領域及び当該領域の位置を抽出するとともに、前記取得手段により取得された前回の位置から今回の位置への変位分のうち前記画面内で前記水平方向に直交する方向の変位分の移動をさせた前画面と前記次画面とを比較し、一致した領域及び当該領域の位置を抽出する第４の抽出手段と、を備え、前記第３の抽出手段は、前記次画面の中から、更に前記第４の抽出手段により抽出された領域にも含まれない領域を抽出し、前記送信手段は、更に前記第４の抽出手段により抽出された座標のデータを前記クライアント装置に送信する。
【００１３】
請求項６に記載の発明は、請求項４又は５に記載のサーバ装置において、前記クライアント装置に最初に表示される画面を最初の背景画面とした背景画面データを記憶する記憶手段と、前記次画面と前記記憶手段に記憶された背景画面データとを比較し、一致した領域及び当該領域の位置を示す座標を抽出する第５の抽出手段と、を備え、前記第３の抽出手段は、前記次画面の中から、更に前記第５の抽出手段により抽出された領域にも含まれない領域を抽出し、前記送信手段は、更に前記第５の抽出手段により抽出された座標のデータを前記クライアント装置に送信し、前記次画面のうち前記第３の抽出手段により抽出された領域のデータを前記記憶手段に記憶された背景画面データに上書きすることによって当該背景画面データを更新する更新手段を備える。
【００１４】
請求項７に記載の発明は、請求項１から６の何れか一項に記載のサーバ装置において、前記第２の抽出手段は、前記一致した領域内の矩形領域と当該矩形領域の２点の対角点の座標とを抽出する。
【００１５】
請求項８に記載の発明は、請求項２又は５に記載のサーバ装置において、前記第４の抽出手段は、前記前画面の水平方向の変位分の移動により得られた前記一致した領域内の矩形領域と当該矩形領域の２点の対角点の座標とを抽出するとともに、前記前画面の前記直交する方向の変位分の移動により得られた前記一致した領域内の矩形領域と当該矩形領域の２点の対角点の座標とを抽出する。
【００１６】
請求項９に記載の発明は、請求項３又は６に記載のサーバ装置において、前記第５の抽出手段は、前記一致した領域内の矩形領域と当該矩形領域の２点の対角点の座標とを抽出する。
【００１７】
請求項１０に記載の発明は、サーバ装置から提供された画像を表示する表示手段と、
前記表示手段の表示画面上において任意の位置を指定する入力手段と、前記表示画面上において前記入力手段により指定された位置のデータを前記サーバ装置に順次送信する送信手段と、前記サーバ装置から、前記送信手段により送信された今回の位置に対応して表示される次画面の中で、前記送信手段により送信された前回の位置に対応して表示された前画面に一致せず、前記送信された前回の位置から今回の位置への変位分の移動をさせた前画面にも一致しない領域のデータを受信するとともに、前記次画面の中で、前記変位分の移動をさせた前画面に一致する領域の位置を示す座標のデータを受信する受信手段と、前記受信手段により受信されたデータに基づいて次画面を形成し、前記表示手段に表示するための制御を行う表示制御手段と、を備える。
【００１８】
請求項１１に記載の発明は、請求項１０に記載のクライアント装置において、前記受信手段は、前記次画面の中で、前記送信手段により送信された前回の位置から今回の位置への変位分のうち画面内で水平方向の変位分の移動をさせた前画面にも一致せず、且つ前記水平方向に直交する方向の変位分の移動をさせた前画面にも一致しない領域のデータを受信し、更に、前記次画面の中で、前記水平方向の変位分の移動をさせた前画面に一致する領域の位置を示す座標のデータと、前記水平方向に直交する方向の変位分の移動をさせた前画面に一致する領域の位置を示す座標のデータとを受信する。
【００１９】
請求項１２に記載の発明は、請求項１０又は１１に記載のクライアント装置において、前記表示手段に最初に表示される画面を最初の背景画面とした背景画面データを記憶する記憶手段を備え、前記受信手段は、前記次画面の中で、前記サーバ装置において記憶された背景画面データにも一致しない領域のデータを受信し、更に、前記次画面の中で、前記背景画面データに一致する領域の位置を示す座標のデータを受信し、前記表示制御手段は、前記表示画面内の前記受信された座標のデータが示す領域に、前記記憶手段に記憶された背景画面データを用いることによって次画面を形成し、前記受信手段により受信された領域のデータを前記記憶手段に記憶された背景画面データに上書きすることによって当該背景画面データを更新する更新手段を備える。
【００２０】
請求項１３に記載の発明は、サーバ装置から提供された画像を表示する表示手段と、前記サーバ装置から、前記表示手段に表示される次画面の中で、前記表示画面に表示された前画面に一致せず、且つ前記サーバ装置において任意に指定された変位分の移動をさせた前画面にも一致しない領域のデータを受信するとともに、前記次画面の中で前記変位分の移動をさせた前画面に一致する領域の位置を示す座標のデータと、前記変位を示すデータとを受信する受信手段と、前記受信手段により受信されたデータに基づいて次画面を形成し、前記表示手段に表示するための制御を行う表示制御手段と、を備える。
【００２１】
請求項１４に記載の発明は、請求項１３に記載のクライアント装置において、前記受信手段は、前記次画面の中で、前記指定された変位分のうち画面内で水平方向の変位分の移動をさせた前画面にも一致せず、且つ前記水平方向に直交する方向の変位分の移動をさせた前画面にも一致しない領域のデータを受信し、更に、前記次画面の中で、前記水平方向の変位分の移動をさせた前画面に一致する領域の位置を示す座標のデータと、前記水平方向に直交する方向の変位分の移動をさせた前画面に一致する領域の位置を示す座標のデータとを受信する。
【００２２】
請求項１５に記載の発明は、請求項１３又は１４に記載のクライアント装置において、前記表示手段に最初に表示される画面を最初の背景画面とした背景画面データを記憶する記憶手段を備え、前記受信手段は、前記次画面の中で、前記サーバ装置において記憶された背景画面データにも一致しない領域のデータを受信し、更に、前記次画面の中で、前記背景画面データに一致する領域の位置を示す座標のデータを受信し、前記表示制御手段は、前記表示画面内の前記受信された座標のデータが示す領域に、前記記憶手段に記憶された背景画面データを用いることによって次画面を形成し、前記受信手段により受信された領域のデータを前記記憶手段に記憶された背景画面データに上書きすることによって当該背景画面データを更新する更新手段を備える。
【００２３】
請求項１６に記載の発明は、コンピュータを、クライアント装置の表示画面上において入力手段により任意に指定された位置のデータを前記クライアント装置から順次受信する受信手段、前記受信手段により受信された前回の位置に対応して表示された前画面と、前記受信手段により受信された今回の位置に対応して表示される次画面とを比較し、一致した領域を抽出する第１の抽出手段、前記受信手段により受信された前回の位置から今回の位置への変位分の移動をさせた前画面と前記次画面とを比較し、一致した領域及び当該領域の位置を示す座標を抽出する第２の抽出手段、前記次画面の中から、前記第１の抽出手段により抽出された領域及び前記第２の抽出手段により抽出された領域の何れにも含まれない領域を抽出する第３の抽出手段、前記第３の抽出手段により抽出された領域を示すデータと、前記第２の抽出手段により抽出された座標のデータとを前記クライアント装置に送信する送信手段、として機能させるためのプログラムである。
【００２４】
請求項１７に記載の発明は、コンピュータを、クライアント装置に表示される画面上の任意の位置を指定するための入力手段、前記画面上において前記入力手段により指定された位置を順次取得する取得手段、前記取得手段により取得された前回の位置に対応して表示された前画面と、前記取得手段により取得された今回の位置に対応して表示される次画面とを比較し、一致した領域を抽出する第１の抽出手段、前記取得手段により取得された前回の位置から今回の位置への変位分の移動をさせた前画面と前記次画面とを比較し、一致した領域及び当該領域の位置を示す座標を抽出する第２の抽出手段、前記次画面の中から、前記第１の抽出手段により抽出された領域及び前記第２の抽出手段により抽出された領域の何れにも含まれない領域を抽出する第３の抽出手段、前記第３の抽出手段により抽出された領域を示すデータと、前記第２の抽出手段により抽出された座標のデータと、前記変位を示すデータとを前記クライアント装置に送信する送信手段、として機能させるためのプログラムである。
【００２５】
請求項１８に記載の発明は、コンピュータを、サーバ装置から提供された画像を表示する表示手段、前記表示手段の表示画面上において任意の位置を指定する入力手段、前記表示画面上において前記入力手段により指定された位置のデータを前記サーバ装置に順次送信する送信手段、前記サーバ装置から、前記送信手段により送信された今回の位置に対応して表示される次画面の中で、前記送信手段により送信された前回の位置に対応して表示された前画面に一致せず、前記送信された前回の位置から今回の位置への変位分の移動をさせた前画面にも一致しない領域のデータを受信するとともに、前記次画面の中で、前記変位分の移動をさせた前画面に一致する領域の位置を示す座標のデータを受信する受信手段、前記受信手段により受信されたデータに基づいて次画面を形成し、前記表示手段に表示するための制御を行う表示制御手段、として機能させるためのプログラムである。
【００２６】
請求項１９に記載の発明は、コンピュータを、サーバ装置から提供された画像を表示する表示手段、前記サーバ装置から、前記表示手段に表示される次画面の中で、前記表示画面に表示された前画面に一致せず、且つ前記サーバ装置において任意に指定された変位分の移動をさせた前画面にも一致しない領域のデータを受信するとともに、前記次画面の中で前記変位分の移動をさせた前画面に一致する領域の位置を示す座標のデータと、前記変位を示すデータとを受信する受信手段、前記受信手段により受信されたデータに基づいて次画面を形成し、前記表示手段に表示するための制御を行う表示制御手段、として機能させるためのプログラムである。
【発明の効果】
【００２７】
本発明によれば、クライアント装置での画面表示のためにサーバ装置からクライアント装置へ送信するデータ量が大幅に削減されるため、クライアント装置での画面表示のレスポンスを向上させることが可能となる。
【発明を実施するための最良の形態】
【００２８】
以下、図面を参照して本発明の第１実施形態〜第４の実施形態を説明する。
【００２９】
[第１の実施形態]
まず、図１〜図６を参照して、本発明の第１の実施形態を説明する。
図１に、本発明の第１の実施形態に係るリモート接続システム１００の全体構成を示す。リモート接続システム１００は、図１に示すように、サーバ装置１、クライアント装置２により構成され、各装置はＬＡＮ（Local Area Network）、ＷＡＮ（Wide Area Network）等の通信ネットワークＮを介して接続される。なお、一台のサーバ装置１に通信ネットワークＮを介して接続されるクライアント装置２の台数は特に限定されない。
【００３０】
図２に、サーバ装置１の主要部構成を示す。サーバ装置１は、図２に示すように、ＣＰＵ（Central Processing Unit）１０、ＲＡＭ（Random Access Memory）１１、記憶部１２、通信部１３により構成され、各部はバス１４を介して接続される。
【００３１】
ＣＰＵ１０は、記憶部１２に記憶されている各種制御プログラムを読み出してＲＡＭ１１内に展開し、これらの制御プログラムとの協働によってクライアント装置２に画像を提供するための制御を行う。
【００３２】
ＲＡＭ１１は、ＣＰＵ１０により実行される各種制御プログラムを展開するプログラム格納領域を有する。また、ＲＡＭ１１は、入力データ及び制御プログラムの実行時に生じる処理結果等のデータを一時的に格納する領域として前画面データメモリ１１１、次画面データメモリ１１２を有する。前画面データメモリ１１１は、クライアント装置２に表示された前画面のデータを格納する。次画面データメモリ１１２は、クライアント装置２に表示される次画面のデータを格納する。
【００３３】
記憶部１２は、ＣＰＵ１０により実行される各種制御プログラム及びこれらのプログラムで利用するデータ等が予め記憶されている記録媒体を有している。この記録媒体は、磁気的、光学的記録媒体又は半導体等の不揮発性メモリで構成されており、記憶部１２に固定的に設けたもの又は着脱自在に装着するものである。
【００３４】
通信部１３は、通信ネットワークＮを介して外部装置（クライアント装置２）と有線又は無線により通信するための制御を行う。
【００３５】
図３に、クライアント装置２の主要部構成を示す。クライアント装置２は、図３に示すように、ＣＰＵ２０、ＲＡＭ２１、記憶部２２、入力部２３、表示部２４、通信部２５により構成され、各部はバス２６を介して接続される。
【００３６】
ＣＰＵ２０は、記憶部２２に記憶されている各種制御プログラムを読み出してＲＡＭ２１内に展開し、これらの制御プログラムとの協働によって、サーバ装置１から受信されたデータに基づいて表示部２４に画面を表示させるための制御を行う。
【００３７】
ＲＡＭ２１は、ＣＰＵ２０により実行される各種制御プログラムを展開するプログラム格納領域を有する。また、ＲＡＭ２１は、入力データ及び制御プログラムの実行時に生じる処理結果等のデータを一時的に格納する領域として表示画面データメモリ２１１を有する。表示画面データメモリ２１１は、表示部２４に表示されている画面のデータを格納する。
【００３８】
記憶部２２は、ＣＰＵ２０により実行される各種制御プログラム及びこれらのプログラムで利用するデータ等が予め記憶されている記録媒体を有している。この記録媒体は、磁気的、光学的記録媒体又は半導体等の不揮発性メモリで構成されており、記憶部２２に固定的に設けたもの又は着脱自在に装着するものである。
【００３９】
入力部２３は、文字入力キー、テンキー、カーソルキー及び各種機能キーを備えたキー入力装置や、マウス等のポインティングデバイスを備え、キー入力装置やポインティングデバイスの操作による操作信号をＣＰＵ２０に出力する。
【００４０】
表示部２４は、ＬＣＤ（Liquid Crystal Display）等のディスプレイを備え、ＣＰＵ２０から入力される制御信号に従って所要の表示処理を行う。
【００４１】
通信部２５は、通信ネットワークＮを介して外部装置（サーバ装置１）と有線又は無線により通信するための制御を行う。
【００４２】
次に、第１の実施形態における動作について説明する。
まず、図４のフローチャートを参照して、第１の実施形態に係るサーバ装置１のＣＰＵ１０の制御の下で実行される処理について説明する。
【００４３】
まず、クライアント装置２から最初のポインタカーソル位置(Xi,Yi)が受信されると（ステップＳ１）、初期クライアント画面（即ち１画面分全ての画像）がクライアント装置２に送信される（ステップＳ２）。そして、現時点で最新の画面、即ち、ステップＳ２で送信された画面が「前画面」としてＲＡＭ１１内の前画面データメモリ１１１に格納される（ステップＳ３）。そして、直前に受信したポインタカーソル位置(Xi,Yi)が一つ前のポインタカーソル位置(Xi-1,Yi-1)として設定される（ステップＳ４）。
【００４４】
クライアント装置２から、次画面でのポインタカーソル位置(Xi,Yi)が受信されると（ステップＳ５）、その受信されたポインタカーソル位置に応じた次画面が生成され、ＲＡＭ１１内の次画面データメモリ１１２に格納される。そして、前画面データメモリ１１１に格納された前画面と、次画面データメモリ１１２に格納された次画面とが比較され、一致した画素位置の集合（一致点集合）PSAMEが抽出される（ステップＳ６）。
【００４５】
次いで、ポインタカーソル位置の変位を表す移動ベクトルV(Xi−Xi-1,Yi−Yi-1)に従って前画面を移動させたものと次画面とが比較され、一致した画素位置の集合（一致点集合）PMOVEが抽出される（ステップＳ７）。そして、このPMOVEの中で最も大きくとれる矩形が抽出され、当該矩形の対角点２点の座標PM1,PM2が抽出される（ステップＳ８）。
【００４６】
次いで、次画面の中から、ステップＳ８で抽出された矩形の外側でPSAMEでない点を含む全てのタイル領域（例えば、8×8若しくは16×16の領域）が抽出される（ステップＳ９）。そして、そのタイル領域を圧縮した圧縮データと、そのタイル番号（タイルの位置）、２点の対角点座標PM1,PM2のデータとがクライアント装置２に送信される（ステップＳ１０）。
【００４７】
ステップＳ１０の処理後、クライアント装置２から終了指示がなければ（ステップＳ１１；ＮＯ）、ステップＳ３に戻り、現時点で最新の画面、即ち次画面データメモリ１１２に格納された次画面のデータが「前画面」のデータとして前画面データメモリ１１１に格納され、以降、ステップＳ４〜Ｓ１０の処理が繰り返される。クライアント装置２から終了指示があると（ステップＳ１１；ＹＥＳ）、サーバ装置１での処理が終了する。
【００４８】
次に、図５のフローチャートを参照して、第１の実施形態に係るクライアント装置２のＣＰＵ２０の制御の下で実行される画面表示処理について説明する。
【００４９】
まず、最初のポインタカーソル位置(Xi,Yi)がサーバ装置１に送信される（ステップＣ１）。ステップＣ１の後、サーバ装置１から初期クライアント画面が受信されると、その受信された初期クライアント画面が表示部２４に表示される（ステップＣ２）。この初期クライアント画面のデータは、ＲＡＭ２１内の表示画面データメモリ２１１に格納される。そして、直前に送信したポインタカーソル位置(Xi,Yi)が一つ前のポインタカーソル位置(Xi-1,Yi-1)として設定される（ステップＣ３）。
【００５０】
次いで、新たなポインタカーソル位置(Xi,Yi)がサーバ装置１に送信される（ステップＣ４）。ステップＣ４の後、サーバ装置１から、相違のあったタイル領域の圧縮データと、そのタイル番号、２点の対角点座標PM1(Xm1,Ym1),PM2(Xm2,Ym2)のデータとが受信される（ステップＣ５）。
【００５１】
次いで、表示画面データメモリ２１１に格納された前画面の(Xm1−Xi＋Xi-1,Ym1−Yi＋Yi-1),(Xm2−Xi＋Xi-1,Ym2−Yi＋Yi-1)の２点を対角点とする矩形領域内が、PM1(Xm1,Ym1),PM2(Xm2,Ym2)の２点を対角点とする矩形領域に移動され（ステップＣ６）、サーバ装置１から受信したタイル領域がタイル番号で指定された位置に全て展開される（ステップＣ７）。なお、ステップＣ６とステップＣ７の処理の順番を入れ替えてもよい。
【００５２】
ステップＣ６で移動された矩形領域と、ステップＣ７で展開されたタイル領域以外の領域は、表示画面データメモリ２１１に格納された前画面と同一であるので、この同一領域と、当該移動された矩形領域と、当該展開されたタイル領域とを合わせた画面が次画面として形成され、表示部２４に表示される（ステップＣ８）。
【００５３】
ステップＣ３〜Ｃ８の処理は、入力部２３の操作による終了指示があるまで継続される（ステップＣ９；ＮＯ）。当該終了指示によりサーバ装置１からの受信が終了すると（ステップＣ９；ＹＥＳ）、本画面表示処理が終了する。
【００５４】
図６に、図４及び図５で示した処理による前画面から次画面への推移の一例を示す。クライアント装置２の前画面におけるポインタカーソルの位置を(Xi-1,Yi-1)とし（図６（ｂ））、ポインタカーソルとともにウィンドウｗを移動させたときの移動後（次画面）のポインタカーソルの位置を(Xi,Yi)とする（図６（ｄ））。サーバ装置１では、PSAME、PMOVE、PMOVEの中で最も大きくとれる矩形の対角点座標がそれぞれ抽出される。ここで、クライアント装置２において、画面上のウィンドウｗが拡大、縮小されることなく(Xi−Xi-1,Yi−Yi-1)だけ移動された場合、PMOVEの中で最も大きくとれる矩形は、このウィンドウ（サーバ装置１でのウィンドウＷ）自体となる。図６（ｃ）に示すように、次画面においてPMOVEの中で最も大きくとれる矩形（ウィンドウＷ）の対角点（ウィンドウＷの左上、右下の２点）を座標PM1(Xm1,Ym1),PM2(Xm2,Ym2)とすると、移動前の前画面におけるこれらの対角点座標は、図６（ａ）に示すようにそれぞれ、(Xm1−Xi＋Xi-1,Ym1−Yi＋Yi-1),(Xm2−Xi＋Xi-1,Ym2−Yi＋Yi-1)となる。従って、クライアント装置２では、前画面において(Xm1−Xi＋Xi-1,Ym1−Yi＋Yi-1),(Xm2−Xi＋Xi-1,Ym2−Yi＋Yi-1)を対角点とする矩形を(Xi−Xi-1,Yi−Yi-1)だけ移動させ、PMOVEでもPSAMEでもないタイル領域Ｔを指定されたタイル番号の位置に展開し、その他の領域は、前画面と同一のものを表示すればよいことになる。サーバ装置１は、画像データとして、図６（ｃ）に示すタイル領域Ｔのみの圧縮データをクライアント装置２に送信すればよいため、従来に比べて送信するデータ量を大幅に削減することができる。
【００５５】
図４及び図５のフローチャートでは、クライアント装置２がサーバ装置１に新しいポインタカーソルの位置を順次送信するタイミングと、サーバ装置１で次画面を生成するタイミングが常に同期することを前提とした。もし、これらのタイミングが同期していない場合、又は同期する仕組みがない場合、サーバ装置１は、クライアント装置２から常に送信されるポインタカーソル位置のうちのどれを、前画面の移動に使用したかをクライアント装置２に通知する必要がある。即ち、サーバ装置１は、ステップＳ９で抽出されたタイル領域の圧縮データと、そのタイル番号（タイルの位置）、座標PM1,PM2のデータとに加えて、前画面の移動に使用したポインタカーソル位置(Xi,Yi)のデータもクライアント装置２に送信するようにする。
【００５６】
また、図４のフローチャートでは、PMOVEの中で最も大きな矩形を抽出するようにしたが、２番目、３番目に大きな矩形が他にあれば、これらの矩形の対角点座標もクライアント装置２に送信するようにしてもよい。
【００５７】
なお、クライアント装置２において次画面を形成する際に、サーバ装置１から送信されたタイル領域と、PM1(Xm1,Ym1),PM2(Xm2,Ym2)を対角点とする矩形領域とで重複する部分が生じる場合がある。当該タイル領域がＤＣＴ（Discrete Cosine Transform）を用いて圧縮されていた場合、当該タイル領域のデータを優先して表示する方が画質的に良好であると思われるが、第１の実施形態及び以下の各実施形態においては、いずれのデータを優先して表示してもよい。
【００５８】
また、ポインタカーソルのドラッグによるウィンドウの移動は、マウスボタンが押下されているときにしか起り得ないので、上述の処理を、マウスボタンが押下されているときにのみ行い、押下されていないときは、従来と同様に、前画面を移動させない状態での比較のみを行うようにしてもよい。
【００５９】
以上のように、第１の実施形態では、画面上のウィンドウの移動が、マウス等のポインタカーソルと一体になって行われることに着目し、ポインタカーソルの移動分移動させた前画面と次画面とを比較するようにした。これにより、両画面の相違部分が少なくなり、サーバ装置１からクライアント装置２に送信するデータ量を大幅に削減することができる。これにより、クライアント装置２での画面表示のレスポンスを向上させることが可能となる。また、ポインタカーソルの移動中もウィンドウ内を表示することができる。
【００６０】
また、サーバ装置１が、画面中のどの領域にウィンドウが存在するかを認識することなく、単に前画面をポインタカーソルの移動分移動させて次画面と比較するという単純な処理を行うだけで、上述のような利点が得られる。移動中のウィンドウ内の画像が不変であれば、上記比較によって容易にウィンドウ部分が抽出されるし、ウィンドウの移動とともにウィンドウ内の画像が変化していれば、ウィンドウ部分は抽出されない。即ち、ウィンドウ内の画像の変化を認識する特別な手段を用いなくても、中の画像が変化していないウィンドウのみを自動的に抽出することができる。
【００６１】
また、PMOVEの中から矩形の２点の対角点座標のデータを抽出し、クライアント装置２に送信するようにしたことにより、他の形状を表す座標のデータを送信するよりも送信データ量を削減することができる。また、クライアント装置２において、容易に次画面を形成することができる。
【００６２】
[第２の実施形態]
次に、図７〜図１０を参照して、本発明の第２の実施形態を説明する。
第２の実施形態に係るシステム構成と、当該システムを構成する各装置の主要部構成は、それぞれ、第１の実施形態において図１〜図３で示した構成と同等ゆえ、同一の符号を用いるものとし、これらの図示を省略する。以下、第１の実施形態と異なる部分のみを説明する。
【００６３】
第２の実施形態に係るサーバ装置１のＣＰＵ１０は、第１の実施形態において図４に示した処理に加えて、ポインタカーソルの移動分のｘ成分のみ移動した前画面と次画面との比較、ポインタカーソルの移動分のｙ成分のみ移動した前画面と次画面との比較を行い、両画面が一致した領域内で最も大きくとれる矩形の対角点座標のデータをクライアント装置２に送信させる処理を行う。
【００６４】
第２の実施形態に係るクライアント装置２のＣＰＵ２０は、第１の実施形態において図５に示した処理に加え、前画面のうち、サーバ装置１から受信した対角点座標のデータに基づいて決定される矩形領域をｘ方向、ｙ方向に移動させる処理を行う。
【００６５】
次に、第２の実施形態における動作について説明する。
まず、図７のフローチャートを参照して、第２の実施形態に係るサーバ装置１のＣＰＵ１０の制御の下で実行される処理について説明する。
【００６６】
まず、クライアント装置２から最初のポインタカーソル位置(Xi,Yi)が受信されると（ステップＳ２０１）、初期クライアント画面（即ち１画面分全ての画像）がクライアント装置２に送信される（ステップＳ２０２）。そして、現時点で最新の画面、即ちステップＳ２０２で送信された画面が「前画面」としてＲＡＭ１１内の前画面データメモリ１１１に格納される（ステップＳ２０３）。そして、直前に受信したポインタカーソル位置(Xi,Yi)が一つ前のポインタカーソル位置(Xi-1,Yi-1)として設定される（ステップＳ２０４）。
【００６７】
クライアント装置２から、次画面でのポインタカーソル位置(Xi,Yi)が受信されると（ステップＳ２０５）、その受信されたポインタカーソル位置に応じた次画面が生成され、ＲＡＭ１１内の次画面データメモリ１１２に格納される。そして、前画面データメモリ１１１に格納された前画面と、次画面データメモリ１１２に格納された次画面とが比較され、一致した画素位置の集合（一致点集合）PSAMEが抽出される（ステップＳ２０６）。
【００６８】
次いで、ポインタカーソル位置の変位を表す移動ベクトルV(Xi−Xi-1,Yi−Yi-1)に従って前画面を移動させたものと次画面とが比較され、一致した画素位置の集合（一致点集合）PMOVEが抽出される（ステップＳ２０７）。次いで、前画面を移動ベクトル(Xi−Xi-1,0)に従って移動させたものと次画面とが比較され、一致した画素位置の集合（一致点集合）PMOVEXが抽出される（ステップＳ２０８）。次いで、前画面を移動ベクトル(0,Yi−Yi-1)に従って移動させたものと次画面とが比較され、一致した画素位置の集合（一致点集合）PMOVEYが抽出される（ステップＳ２０９）。なお、ステップＳ２０７〜Ｓ２０９の処理の順番は任意に入れ替えてもよい。
【００６９】
次いで、PMOVEの中で最も大きくとれる矩形の対角点座標PM1,PM2と、PMOVEXの中で最も大きくとれる矩形の対角点座標PMX1,PMX2と、PMOVEYの中で最も大きくとれる矩形の対角点座標PMY1,PMY2と、が抽出される（ステップＳ２１０）。
【００７０】
次いで、次画面の中から、PM1,PM2の２点、PMX1,PMX2の２点、PMY1,PMY2の２点のそれぞれを対角点とする３つの矩形の何れにも含まれず、且つPSAMEでない点を含む全てのタイル領域（例えば、8×8若しくは16×16の領域）が抽出される（ステップＳ２１１）。そして、そのタイル領域を圧縮した圧縮データと、そのタイル番号（タイルの位置）、PM1,PM2, PMX1,PMX2, PMY1,PMY2の６点の座標のデータとがクライアント装置２に送信される（ステップＳ２１２）。
【００７１】
ステップＳ２１２の処理後、クライアント装置２から終了指示がなければ（ステップＳ２１３；ＮＯ）、ステップＳ２０３に戻り、現時点で最新の画面、即ち次画面データメモリ１１２に格納された次画面のデータが「前画面」のデータとして前画面データメモリ１１１に格納され、以降、ステップＳ２０４〜Ｓ２１２の処理が繰り返される。クライアント装置２からの終了指示があると（ステップＳ２１３；ＹＥＳ）、サーバ装置１での処理が終了する。
【００７２】
次に、図８のフローチャートを参照して、第２の実施形態に係るクライアント装置２のＣＰＵ２０の制御の下で実行される画面表示処理について説明する。
【００７３】
まず、最初のポインタカーソル位置(Xi,Yi)がサーバ装置１に送信される（ステップＣ２０１）。ステップＣ２０１の後、サーバ装置１から初期クライアント画面が受信されると、その受信された初期クライアント画面が表示部２４に表示される（ステップＣ２０２）。この初期クライアント画面のデータは、ＲＡＭ２１内の表示画面データメモリ２１１に格納される。そして、直前に送信したポインタカーソル位置(Xi,Yi)が一つ前のポインタカーソル位置(Xi-1,Yi-1)として設定される（ステップＣ２０３）。
【００７４】
次いで、新たなポインタカーソル位置(Xi,Yi)がサーバ装置１に送信される（ステップＣ２０４）。ステップＣ２０４の後、サーバ装置１から、相違のあったタイル領域の圧縮データと、そのタイル番号、PM1(Xm1,Ym1)とPM2(Xm2,Ym2)、PMX1(Xmx1,Ymx1)とPMX2(Xmx2,Ymx2)、PMY1(Xmy1,Ymy1)とPMY2(Xmy2,Ymy2)の６点の対角点座標（３組の対角点座標）のデータとが受信される（ステップＣ２０５）。
【００７５】
次いで、表示画面データメモリ２１１に格納された前画面の(Xm1−Xi＋Xi-1,Ym1−Yi＋Yi-1)と(Xm2−Xi＋Xi-1,Ym2−Yi＋Yi-1)の２点を対角点とする矩形領域内が、PM1(Xm1,Ym1),PM2(Xm2,Ym2)の２点を対角点とする矩形領域に移動される（ステップＣ２０６）。次いで、前画面の(Xmx1−Xi＋Xi-1,Ymx1)と(Xmx2−Xi＋Xi-1,Ymx2)の２点を対角点とする矩形領域内が、PMX1(Xmx1,Ymx1),PMX2(Xmx2,Ymx2)の２点を対角点とする矩形領域に移動される（ステップＣ２０７）。次いで、前画面の(Xmy1,Ymy1−Yi＋Yi-1)と(Xmy2,Ymy2−Yi＋Yi-1)の２点を対角点とする矩形領域内が、PMY1(Xmy1,Ymy1),PMY2(Xmy2,Ymy2)の２点を対角点とする矩形領域に移動される（ステップＣ２０８）。
【００７６】
次いで、サーバ装置１から受信したタイル領域がタイル番号で指定された位置に全て展開される（ステップＣ２０９）。なお、ステップＣ２０６〜Ｃ２０９の処理の順番は任意に入れ替えてもよい。
【００７７】
ステップＣ２０６〜Ｃ２０８で移動された各矩形領域と、ステップＣ２０９で展開されたタイル領域以外の領域は、表示画面データメモリ２１１に格納された前画面と同一であるので、この同一領域と、当該移動された各矩形領域と、当該展開されたタイル領域とを合わせた画面が次画面として形成され、表示部２４に表示される（ステップＣ２１０）。
【００７８】
ステップＣ２０３〜Ｃ２１０の処理は、入力部２３の操作による終了指示があるまで継続される（ステップＣ２１１；ＮＯ）。当該終了指示によりサーバ装置１からの受信が終了すると（ステップＣ２１１；ＹＥＳ）、本画面表示処理が終了する。
【００７９】
なお、図７のフローチャートでは、サーバ装置１は、PMOVE、PMOVEX、PMOVEYの各々について最も大きくとれる矩形の対角点座標を抽出し、この対角点座標のデータをクライアント装置２に送信するようにしたが、２番目以降に大きい矩形の対角点座標も抽出し、この対角点座標のデータについてもクライアント装置２に送信するようにしてもよい。これに対応して、図８のフローチャートにおいて、クライアント装置２では、最も大きい矩形だけでなく２番目以降に大きい矩形の対角点座標を用いて、次画面を形成するようにしてもよい。
【００８０】
また、クライアント装置２において次画面を形成する際に、サーバ装置１から送信されたタイル領域が、PM1(Xm1,Ym1),PM2(Xm2,Ym2)を対角点とする矩形領域、PMX1(Xmx1,Ymx1),PMX2(Xmx2,Ymx2)の２点を対角点とする矩形領域、PMY1(Xmy1,Ymy1),PMY2(Xmy2,Ymy2)の２点を対角点とする矩形領域の何れかと重複する部分が生じた場合、第１の実施形態において述べたように、クライアント装置２側で、画質を考慮しながら何れかのデータを優先して表示すればよい。
【００８１】
図９及び図１０に、図７及び図８で示した処理による前画面から次画面への推移の具体例を示す。
【００８２】
図９は、画面内のウィンドウＷを左下部分のカーソルでドラッグした場合の画面の推移を示す。図９（ａ）の前画面において、ウィンドウＷの左下部分をカーソルで掴んで右上方向に動かすと、次画面では、図９（ｂ）に示すように、サイズが縮小されたウィンドウＷ１となる。このとき、図９（ｃ）及び図９（ｄ）に示すように、前画面のウィンドウＷのうち矩形領域ｆ１、ｆ２は、画面内で水平方向（ｘ方向）に移動するだけである。よって、矩形領域ｆ１、ｆ２がPMOVEXとなる。サーバ装置１では、矩形領域ｆ１、ｆ２のうち、面積が相対的に大きい矩形領域ｆ１の２点の対角点座標が抽出され、この対角点座標のデータがクライアント装置２に送信される。なお、上述のように、２番目に大きい矩形領域ｆ２の対角点座標を抽出し、この対角点座標のデータをクライアント装置２に送信するようにしてもよい。
【００８３】
図１０は、画面内のウィンドウＷを右上部分のカーソルでドラッグした場合の画面の推移を示す。図１０（ａ）の前画面において、ウィンドウＷの右上部分をカーソルで掴んで左下方向に動かすと、次画面では、図１０（ｂ）に示すように、サイズが縮小されたウィンドウＷ２となる。このとき、図１０（ｃ）及び図１０（ｄ）に示すように、前画面のウィンドウＷのうち矩形領域Ｆ１、Ｆ２は、画面内で垂直方向（ｙ方向）に移動するだけである。よって、矩形領域Ｆ１、Ｆ２がPMOVEYとなる。また、前画面のウィンドウＷのうち矩形領域Ｆ３は、カーソルとともに移動するため、PMOVEとなる。このように、ウィンドウのサイズが変化する移動の場合、PMOVEX又はPMOVEYとPMOVEとが混在する場合があるため、図７及び図８に示した処理のように、PMOVEだけでなく、PMOVEX、PMOVEYも抽出する必要がある。
【００８４】
以上のように、第２の実施形態では、画面内のポインタカーソルの位置の変位を示す移動ベクトルのｘ成分及びｙ成分にも着目し、ｘ方向のみ移動した前画面と次画面との比較、ｙ方向のみ移動した前画面と次画面との比較を行い、一致した領域内の矩形の対角点座標のデータをクライアント装置２に送信するようにした。これにより、ウィンドウの大きさが拡大又は縮小される場合においても、サーバ装置１からクライアント装置２に送信するデータ量を大幅に削減することができる。これにより、クライアント装置での画面表示のレスポンスを向上させることが可能となる。
【００８５】
また、第２の実施形態では、第１の実施形態で示した処理を併用しており、前画面をｘ方向のみ又はｙ方向のみに移動させたものだけでなく、実際のポインタカーソルの移動方向に移動させたもの（即ち、ｘ方向の移動及びｙ方向の移動を合成したもの）を用いて次画面と比較するようにした。これにより、画面内で、ｘ方向のみ又はｙ方向のみの移動により一致する領域と、両方向を合成した方向への移動により一致する領域とが混在する場合であっても、クライアント装置２へ送信するタイル領域のデータ量を最小限に抑えることができる。
【００８６】
また、PMOVE、PMOVEX、PMOVEYの各々の領域から矩形の対角点座標を抽出し、この対角点座標のデータをクライアント装置２に送信するようにしたことにより、他の形状を表す座標のデータを送信するよりも送信データ量を削減することができる。また、クライアント装置２において、容易に次画面を形成することができる。
【００８７】
[第３の実施形態]
次に、図１１〜図１５を参照して、本発明の第３の実施形態を説明する。
まず、第３の実施形態における構成について説明する。
【００８８】
第３の実施形態に係るシステム構成と、当該システムを構成する各装置の主要部構成は、それぞれ、第１の実施形態において図１〜図３で示した構成と同等ゆえ、同一の符号を用いるものとし、これらの図示を省略する。以下、第１の実施形態と異なる部分のみを説明する。 
【００８９】
上述の第１の実施形態及び第２の実施形態では、図２に示すように、サーバ装置１に、前画面のデータ、次画面のデータをそれぞれ格納する前画面データメモリ１１１、次画面データメモリ１１２が設けられ、クライアント装置２には、図３に示すように、表示部２４に表示している画面データを格納する表示画面データメモリ２１１が設けられている場合を示した。第３の実施形態では、これらの各メモリに加え、サーバ装置１とクライアント装置２の双方のＲＡＭ内に、画面内の背景部分と推定される背景画面データを一時的に格納する領域が確保されている。具体的には、図１１（ａ）に示すように、サーバ装置１のＲＡＭ１１内に背景画面データを格納する背景データメモリ１１３が設けられ、図１１（ｂ）に示すように、クライアント装置２のＲＡＭ２１内に背景画面データを格納する背景データメモリ２１２が設けられている。
【００９０】
第３の実施形態に係るサーバ装置１のＣＰＵ１０は、第１の実施形態に示した、前画面と次画面との比較、ポインタカーソルの移動分移動した前画面と次画面との比較に加えて、背景データメモリ１１３に格納された背景画面データと次画面のデータとの比較を行い、一致した領域内で分割された矩形の対角点座標のデータをクライアント装置２に送信させる処理を行う。
【００９１】
第３の実施形態に係るクライアント装置２のＣＰＵ２０は、第１の実施形態に示した処理に加え、背景データメモリ２１２に格納された背景画面データのうち、サーバ装置１から受信した対角点座標のデータに基づいて決定される矩形領域を表示画面の同一部分にコピーさせる処理を行う。
【００９２】
次に、第３の実施形態における動作について説明する。
まず、図１２のフローチャートを参照して、第３の実施形態に係るサーバ装置１のＣＰＵ１０の制御の下で実行される処理について説明する。
【００９３】
まず、クライアント装置２から最初のポインタカーソル位置(Xi,Yi)が受信されると（ステップＳ３０１）、初期クライアント画面（即ち１画面分全ての画像）がクライアント装置２に送信され、同時にこの送信画面のデータが背景画面データとしてＲＡＭ１１内の背景データメモリ１１３に格納される（ステップＳ３０２）。そして、現時点で最新の画面、即ちステップＳ３０２で送信された画面が「前画面」としてＲＡＭ１１内の前画面データメモリ１１１に格納される（ステップＳ３０３）。そして、直前に受信したポインタカーソル位置(Xi,Yi)が一つ前のポインタカーソル位置(Xi-1,Yi-1)として設定される（ステップＳ３０４）。
【００９４】
クライアント装置２から、次画面でのポインタカーソル位置(Xi,Yi)が受信されると（ステップＳ３０５）、その受信されたポインタカーソル位置に応じた次画面が生成され、ＲＡＭ１１内の次画面データメモリ１１２に格納される。そして、前画面データメモリ１１１内に格納された前画面と、次画面データメモリ１１２に格納された次画面とが比較され、一致した画素位置の集合（一致点集合）PSAMEが抽出される（ステップＳ３０６）。
【００９５】
次いで、ポインタカーソル位置の変位を表す移動ベクトルV(Xi−Xi-1,Yi−Yi-1)に従って前画面を移動させたものと次画面とが比較され、一致した画素位置の集合（一致点集合）PMOVEが抽出される（ステップＳ３０７）。そして、このPMOVEの中で最も大きくとれる矩形が抽出され、この矩形の対角点２点の座標PM1,PM2が抽出される（ステップＳ３０８）。
【００９６】
次いで、次画面データメモリ１１２に格納された次画面のデータと、背景データメモリ１１３に格納された背景画面データが比較され、一致した画素位置の集合（一致点集合）PBACKが抽出される（ステップＳ３０９）。そして、PBACKの領域が最小数の矩形に分解され、各々の矩形の対角点の組の座標集合PBが抽出される（ステップＳ３１０）。
【００９７】
次いで、次画面の中から、座標PM1,PM2を対角点とする矩形と、対角点集合PBで表示される全ての矩形の何れにも属さず、PSAMEでもない点を含む全てのタイル領域（例えば、8×8若しくは16×16の領域）が抽出される（ステップＳ３１１）。そして、ステップＳ３１１で抽出されたタイル領域を圧縮した圧縮データと、そのタイル番号（タイルの位置）、２点の対角点座標PM1,PM2、全てのPBの座標のデータとがクライアント装置２に送信される（ステップＳ３１２）。
【００９８】
次いで、次画面の中で、座標PM1,PM2を対角点とする矩形と、対角点集合PBで表示される全ての矩形の何れにも属さず、PSAMEでもない点の画像データが背景データメモリ１１３に上書きされる（ステップＳ３１３）。
【００９９】
ステップＳ３１３の処理後、クライアント装置２から終了指示がなければ（ステップＳ３１４；ＮＯ）、ステップＳ３０３に戻り、現時点で最新の画面、即ち次画面データメモリ１１２に格納された次画面のデータが「前画面」のデータとして前画面データメモリ１１１に格納され、以降、ステップＳ３０４〜Ｓ３１３の処理が繰り返される。クライアント装置２から終了指示があると（ステップＳ３１４；ＹＥＳ）、サーバ装置１での処理が終了する。
【０１００】
次に、図１３のフローチャートを参照して、第３の実施形態に係るクライアント装置２のＣＰＵ２０の制御の下で実行される画面表示処理について説明する。
【０１０１】
まず、最初のポインタカーソル位置(Xi,Yi)がサーバ装置１に送信される（ステップＣ３０１）。ステップＣ３０１の後、サーバ装置１から初期クライアント画面が受信されると、その受信された初期クライアント画面が表示部２４に表示される（ステップＣ３０２）。この初期クライアント画面のデータは背景画面データとしてＲＡＭ２１内の背景データメモリ２１２に格納される（ステップＣ３０３）。そして、直前に送信したポインタカーソル位置(Xi,Yi)が一つ前のポインタカーソル位置(Xi-1,Yi-1)として設定される（ステップＣ３０４）。
【０１０２】
次いで、新たなポインタカーソル位置(Xi,Yi)がサーバ装置１に送信される（ステップＣ３０５）。ステップＣ３０５の後、サーバ装置１から送信されたタイル領域の圧縮データと、そのタイル番号、２点の対角点座標PM1(Xm1,Ym1),PM2(Xm2,Ym2)、座標集合PBのデータとが受信される（ステップＣ３０６）。
【０１０３】
次いで、表示画面データメモリ２１１に格納された前画面データの(Xm1−Xi＋Xi-1,Ym1−Yi＋Yi-1),(Xm2−Xi＋Xi-1,Ym2−Yi＋Yi-1)の２点を対角点とする矩形領域内が、PM1(Xm1,Ym1),PM2(Xm2,Ym2)の２点を対角点とする矩形領域に移動される（ステップＣ３０７）。そして、背景データメモリ２１２に格納された背景画面データのうち、座標集合PBが示す全ての矩形領域が表示画面の同一部分にコピーされる（ステップＣ３０８）。
【０１０４】
そして、サーバ装置１から受信したタイル領域がタイル番号で指定された位置に全て展開される（ステップＣ３０９）。ステップＣ３０７で移動された矩形領域と、ステップＣ３０８でコピーされた背景画面の領域と、ステップＣ３０９で展開されたタイル領域以外の領域は、表示画面データメモリ２１１に格納された前画面と同一である。従って、この同一領域と、ステップＣ３０７〜Ｃ３０９で処理された領域とを合わせた画面が次画面として形成され、表示部２４に表示される（ステップＣ３１０）。なお、ステップＣ３０７〜Ｃ３０９の処理の順番は任意に入れ替えてもよい。
【０１０５】
次いで、表示部２４に表示されたタイル領域（サーバ装置１から送信されたタイル領域）の画像のうち、PM1(Xm1,Ym1),PM2(Xm2,Ym2)の２点を対角点とする矩形領域、座標集合PBが示すどの矩形とも重複しない位置のデータが背景データメモリ２１２内の背景画面データに上書きされる（ステップＣ３１１）。ステップＣ３１１のように背景データメモリ２１２内の背景画面データを更新することにより、当該背景画面データは、一旦圧縮されて伸張されたものではあるものの、サーバ装置１の背景データメモリ１１３内の背景画面データと一致させることができる。
【０１０６】
ステップＣ３０４〜Ｃ３１１の処理は、入力部２３の操作による終了指示があるまで継続される（ステップＣ３１２；ＮＯ）。当該終了指示によりサーバ装置１からの受信が終了すると（ステップＣ３１２；ＹＥＳ）、本画面表示処理が終了する。
【０１０７】
図１４に、図１２及び図１３に示した処理の具体例として、画面内のウィンドウＷを移動させた場合の画面の推移と、画面内のウィンドウＷの移動に伴って更新される背景画面データの推移を示す。
【０１０８】
図１４において、初期画面が（ａ）の場合、この初期画面全体がサーバ装置１及びクライアント装置２の最初の背景画面データとなる。図１４において、画面内のウィンドウＷが（ａ）から（ｂ）に移動されると、次画面においてPSAMEでもPMOVEでもPBACKでもないタイル領域Ｅのデータがサーバ装置１からクライアント装置２に送信される。また、タイル領域Ｅのデータが、サーバ装置１の背景データメモリ１１３の背景画面データに上書きされる。同様に、タイル領域Ｅのデータは、クライアント装置２の背景データメモリ２１２の背景画面データにも上書きされる。
【０１０９】
次いで、画面内のウィンドウＷが（ｃ）から（ｄ）のように移動すると、次画面においてPSAMEでもPMOVEでもPBACKでもないタイル領域Ｅが存在しなくなる。よって、サーバ装置１からクライアント装置２へは、どの画面にどの矩形領域が一致したかを示すデータ（具体的には、座標PM1,PM2と、座標集合PB）を送信するだけで事足りるようになる。また、タイル領域Ｅのデータが存在しなくなるため、サーバ装置１の背景データメモリ１１３及びクライアント装置２の背景データメモリ２１２は双方とも更新されないことになる。以降、図１４の（ｅ）、（ｆ）のように画面が移行した場合も、同様のことが言える。
【０１１０】
なお、図１２のステップＳ３０９では、次画面全体と背景画面とを比較することによって一致した画素位置の集合をPBACKとして抽出する場合を示したが、次画面においてPSAMEでもPMOVEでもない領域と背景画面とを比較することによって一致した画素位置の集合をPBACKとして抽出するようにしてもよい。例えば、図１４に示すように、ウィンドウＷが（ｄ）から（ｅ）に移動した場合、PBACKは、図１５（ａ）の斜線部で示す領域となる。図１５（ａ）のPBACKは、移動前はウィンドウＷに隠れ、移動後に露出した領域である。図１５（ｂ）に示すように、このPBACKは最小で２つの矩形に分割され、各々の矩形の対角点座標（A1点,A2点の座標と、B1点,B2点の座標）がPBとして抽出される。
【０１１１】
以上のように、第３の実施形態では、サーバ装置１及びクライアント装置２の双方において、画面内の背景部分と推定される背景画面データを一時的に格納する背景データメモリを有し、画面内の変化（ウィンドウの移動）に伴って新たに出現した画像領域のデータを当該背景データメモリ内の背景画面データに上書きするようにした。これにより、一旦、クライアント装置２に送信したタイル領域の画像データ（図１４のタイル領域Ｅのデータ）が、ウィンドウに隠れた後に再び現れた場合、サーバ装置１は、当該画像データを再度送信する必要がなくなるため、サーバ装置１からクライアント装置２への送信データ量を大幅に削減することができる。これにより、クライアント装置での画面表示のレスポンスを向上させることが可能となる。
【０１１２】
また、PMOVE、PBACKの各々の領域から矩形の対角点座標を抽出し、この対角点座標のデータをクライアント装置２に送信するようにしたことにより、他の形状を表す座標のデータを送信するよりも送信データ量を削減することができる。また、クライアント装置２において、容易に次画面を形成することができる。
【０１１３】
なお、第３の実施形態では、第１の実施形態で示した処理に、上述の背景データメモリを利用した処理が付加された形態を示したが、画面内のウィンドウの大きさが変化する場合に対処することができるように、第３の実施形態で示した処理と第２の実施形態で示した処理とを併用するようにしてもよい。これにより、サーバ装置１からクライアント装置２への送信データ量が一層削減されるため、細い通信路での通信速度の向上と、クライアント装置２の消費電力の低減化を図ることが可能になる。特に、無線通信によりサーバ装置１にリモート接続されているクライアント装置２の場合、受信するデータ量が格段に少なくなるため、クライアント装置２の電池の寿命を延ばすことができる。
【０１１４】
[第４の実施形態]
次に、図１６〜図１９を参照して、本発明の第４の実施形態を説明する。
以下の第４の実施形態では、サーバ装置とクライアント装置との関係が、ＰＣ（Personal Computer）等のホストコンピュータと、プロジェクタ等の画像表示装置との関係に対応するものとして説明する。この場合、ホストコンピュータであるサーバ装置側でウィンドウ等の移動指示がなされることになる。
【０１１５】
まず、第４の実施形態における構成について説明する。
図１６に、第４の実施形態に係るサーバ装置３の主要部構成を示す。サーバ装置３は、図１６に示すように、ＣＰＵ３０、ＲＡＭ３１、記憶部３２、入力部３３、表示部３４、通信部３５により構成され、各部はバス３６を介して接続される。
【０１１６】
ＣＰＵ３０は、記憶部３２に記憶されている各種制御プログラムを読み出してＲＡＭ３１内に展開し、これらの制御プログラムとの協働によって、クライアント装置４に画像を提供するための制御を行う。
【０１１７】
ＲＡＭ３１は、ＣＰＵ３０により実行される各種制御プログラムを展開するプログラム格納領域を有する。また、ＲＡＭ３１は、入力データ及び制御プログラムの実行時に生じる処理結果等のデータを一時的に格納する領域として前画面データメモリ３１１、次画面データメモリ３１２を有する。前画面データメモリ３１１は、クライアント装置４の前画面のデータを格納する。次画面データメモリ３１２は、クライアント装置４の次画面のデータを格納する。
【０１１８】
記憶部３２は、ＣＰＵ３０により実行される各種制御プログラム及びこれらのプログラムで利用するデータ等が予め記憶されている記録媒体を有している。この記録媒体は、磁気的、光学的記録媒体又は半導体等の不揮発性メモリで構成されており、記憶部３２に固定的に設けたもの又は着脱自在に装着するものである。
【０１１９】
入力部３３は、文字入力キー、テンキー、カーソルキー及び各種機能キーを備えたキー入力装置や、マウス等のポインティングデバイスを備え、キー入力装置やポインティングデバイスの操作による操作信号をＣＰＵ３０に出力する。
【０１２０】
表示部３４は、ＬＣＤ等のディスプレイを備え、ＣＰＵ３０から入力される制御信号に従って所要の表示処理を行う。
【０１２１】
通信部３５は、サーバ装置３に接続された外部装置（クライアント装置４）と有線又は無線により通信するための制御を行う。
【０１２２】
図１７に、第４の実施形態に係るクライアント装置４の主要部構成を示す。クライアント装置４は、図１７に示すように、ＣＰＵ４０、表示部４１、通信部４２、ＲＡＭ４３、記憶部４４により構成され、各部はバス４５を介して接続される。
【０１２３】
ＣＰＵ４０は、記憶部４４に記憶されている各種制御プログラムを読み出してＲＡＭ４３内に展開し、これらの制御プログラムとの協働によって、サーバ装置３から入力されたデータに基づいて表示部４１での画面表示のための制御を行う。
【０１２４】
表示部４１は、ＬＣＤ等のディスプレイを有し、ＣＰＵ４０から入力される制御信号に従って所要の表示処理を行う。クライアント装置４がプロジェクタの場合、表示部４１は、液晶パネル又はＤＭＤ（Digital Micromirror Device）等からなる画像形成パネルと、画像形成パネルに光を照射する光源部と、画像形成パネルで反射された光を外部に投射する投射レンズと、を有し、ＣＰＵ４０から入力される制御信号に従って投射対象の画像を画像形成パネルで形成し、投射レンズによって外部に投射する。
【０１２５】
通信部４２は、クライアント装置４に接続された外部装置（サーバ装置３）と有線又は無線により通信するための制御を行う。
【０１２６】
ＲＡＭ４３は、ＣＰＵ４０により実行される各種制御プログラムを展開するプログラム格納領域を有する。また、ＲＡＭ４３は、入力データ及び制御プログラムの実行時に生じる処理結果等のデータを一時的に格納する領域として表示画面データメモリ４３１を有する。表示画面データメモリ４３１は、表示部４１に表示されている画面のデータを格納する。
【０１２７】
記憶部４４は、ＣＰＵ４０により実行される各種制御プログラム及びこれらのプログラムで利用するデータ等が予め記憶されている記録媒体を有している。この記録媒体は、磁気的、光学的記録媒体又は半導体等の不揮発性メモリで構成されており、記憶部４４に固定的に設けたもの又は着脱自在に装着するものである。
【０１２８】
次に、第４の実施形態における動作について説明する。
まず、図１８のフローチャートを参照して、第４の実施形態に係るサーバ装置３のＣＰＵ３０の制御の下で実行される処理について説明する。
【０１２９】
まず、入力部３３の操作（例えば、マウス操作）により、画面上の最初のポインタカーソル位置(Xi,Yi)が取得されると（ステップＳ４０１）、初期クライアント画面（即ち１画面分全ての画像）がクライアント装置４に送信される（ステップＳ４０２）。そして、現時点で最新の画面、即ち、ステップＳ４０２で送信された画面が「前画面」としてＲＡＭ３１内の前画面データメモリ３１１に格納される（ステップＳ４０３）。そして、直前に取得されたポインタカーソル位置(Xi,Yi)が一つ前のポインタカーソル位置(Xi-1,Yi-1)として設定される（ステップＳ４０４）。
【０１３０】
入力部３３の操作により、次にクライアント装置４に表示させようとする画面（次画面）でのポインタカーソル位置(Xi,Yi)が取得されると（ステップＳ４０５）、その取得されたポインタカーソル位置に応じた次画面が生成され、ＲＡＭ３１内の次画面データメモリ３１２に格納される。次いで、前画面データメモリ３１１に格納された前画面と、次画面データメモリ３１２に格納された次画面とが比較され、一致した画素位置の集合（一致点集合）PSAMEが抽出される（ステップＳ４０６）。
【０１３１】
次いで、ポインタカーソル位置の変位を表す移動ベクトルV(Xi−Xi-1,Yi−Yi-1)に従って前画面を移動させたものと次画面とが比較され、一致した画素位置の集合（一致点集合）PMOVEが抽出される（ステップＳ４０７）。そして、このPMOVEの中で最も大きくとれる矩形が抽出され、この矩形の対角点２点の座標PM1,PM2が抽出される（ステップＳ４０８）。
【０１３２】
次いで、次画面の中から、ステップＳ４０８で抽出された矩形の外側でPSAMEでない点を含む全てのタイル領域（例えば、8×8若しくは16×16の領域）が抽出される（ステップＳ４０９）。そして、ステップＳ４０９で抽出されたタイル領域を圧縮した圧縮データと、そのタイル番号（タイルの位置）、２点の対角点座標PM1,PM2、移動ベクトルV(Xi−Xi-1,Yi−Yi-1)のデータとがクライアント装置４に送信される（ステップＳ４１０）。
【０１３３】
ステップＳ４１０の処理後、入力部３３の操作による終了指示がなければ（ステップＳ４１１；ＮＯ）、ステップＳ４０３に戻り、現時点で最新の画面、即ち次画面データメモリ３１２に格納された次画面のデータが「前画面」のデータとして前画面データメモリ３１１に格納され、以降、ステップＳ４０４〜Ｓ４１０の処理が繰り返される。入力部３３の操作により終了指示があると（ステップＳ４１１；ＹＥＳ）、サーバ装置３での処理が終了する。
【０１３４】
次に、図１９のフローチャートを参照して、第４の実施形態に係るクライアント装置４のＣＰＵ４０の制御の下で実行される画面表示処理について説明する。
【０１３５】
サーバ装置３から初期クライアント画面が受信されると、その受信された初期クライアント画面が表示部４１に表示される（ステップＣ４０１）。この初期クライアント画面のデータは、ＲＡＭ４３内の表示画面データメモリ４３１に格納される。
【０１３６】
次いで、サーバ装置３から、相違のあったタイル領域の圧縮データと、そのタイル番号、２点の対角点座標PM1(Xm1,Ym1),PM2(Xm2,Ym2)、移動ベクトルV(Xi−Xi-1,Yi−Yi-1)のデータとが受信される（ステップＣ４０２）。
【０１３７】
次画面においてPM1(Xm1,Ym1),PM2(Xm2,Ym2)の２点を対角点とする矩形領域内の画像は、前画面において、PM1−V, PM2−Vの２点を対角点とする矩形領域内の画像と同一である。ここで、PM1−V＝(Xm1−Xi＋Xi-1,Ym1−Yi＋Yi-1)、PM2−V＝(Xm2−Xi＋Xi-1,Ym2−Yi＋Yi-1)である。よって、ステップＣ４０２の後、表示画面データメモリ４３１に格納された前画面の(Xm1−Xi＋Xi-1,Ym1−Yi＋Yi-1),(Xm2−Xi＋Xi-1,Ym2−Yi＋Yi-1)の２点を対角点とする矩形領域内が、PM1(Xm1,Ym1),PM2(Xm2,Ym2)の２点を対角点とする矩形領域に移動される（ステップＣ４０３）。そして、サーバ装置３から受信したタイル領域がタイル番号で指定された位置に全て展開される（ステップＣ４０４）。なお、ステップＣ４０３とステップＣ４０４の処理の順番を入れ替えてもよい。
【０１３８】
ステップＣ４０３で移動された矩形領域と、ステップＣ４０４で展開されたタイル領域以外の領域は、表示画面データメモリ４３１に格納された前画面と同一であるので、この同一領域と、当該移動された矩形領域と、当該展開されたタイル領域とを合わせた画面が次画面として形成され、表示部４１に表示される（ステップＣ４０５）。
【０１３９】
ステップＣ４０２〜Ｃ４０５の処理は、サーバ装置３からのデータ受信が終了まで継続される（ステップＣ４０６；ＮＯ）。サーバ装置３からのデータ受信が終了すると（ステップＣ４０６；ＹＥＳ）、本画面表示処理が終了する。
【０１４０】
以上のように、第４の実施形態によれば、サーバ装置３においてポインタカーソルの移動分移動させた前画面と次画面とを比較するようにしたため、両画面の相違部分が少なくなり、サーバ装置３からクライアント装置４に送信するデータ量を大幅に削減することができる。これにより、クライアント装置４での画面表示のレスポンスを向上させることが可能となる。特に、サーバ装置３からクライアント装置４へ無線でデータが送信された場合でも、クライアント装置４では、よりスムーズに画面表示を行うことができる。また、効率よいデータ送信が可能になるため、上記タイル領域の圧縮率を低めに設定することができる。これにより、クライアント装置４では、より高い画質での画面表示が可能となる。
【０１４１】
なお、第４の実施形態では、第１の実施形態に相当する処理（前画面と次画面との比較、ポインタカーソルの移動分移動した前画面と次画面との比較）が行われる場合を示したが、第２実施形態に示した処理（ポインタカーソルの移動分のｘ成分のみ移動及びｙ成分のみ移動を考慮した処理）と、第３実施形態に示した処理（背景データメモリを利用した処理）の少なくとも一方の処理が付加されてもよい。この場合、サーバ装置３からクライアント装置４への送信データ量を一層削減でき、クライアント装置４での画面表示のレスポンスを一層向上させることができる。
【図面の簡単な説明】
【０１４２】
【図１】本発明の第１〜第３の実施形態に係るリモート接続システムの全体構成を示す図。
【図２】本発明の第１〜第３の実施形態に係るサーバ装置の主要部構成を示すブロック図。
【図３】本発明の第１〜第３の実施形態に係るクライアント装置の主要部構成を示すブロック図。
【図４】本発明の第１の実施形態に係るサーバ装置のＣＰＵの制御の下で実行される処理を示すフローチャート。
【図５】本発明の第１の実施形態に係るクライアント装置のＣＰＵの制御の下で実行される画面表示処理を示すフローチャート。
【図６】サーバ装置及びクライアント装置の前画面から次画面への推移の一例を示す図。
【図７】本発明の第２の実施形態に係るサーバ装置のＣＰＵの制御の下で実行される処理を示すフローチャート。
【図８】本発明の第２の実施形態に係るクライアント装置のＣＰＵの制御の下で実行される画面表示処理を示すフローチャート。
【図９】画面内のウィンドウを左下部分のカーソルでドラッグした場合の画面の推移を示す図。
【図１０】画面内のウィンドウを右上部分のカーソルでドラッグした場合の画面の推移を示す図。
【図１１】本発明の第３の実施形態に係るサーバ装置のＲＡＭのメモリ構成を示す図（ａ）と、第３の実施形態に係るクライアント装置のＲＡＭのメモリ構成を示す図（ｂ）。
【図１２】第３の実施形態に係るサーバ装置のＣＰＵの制御の下で実行される処理を示すフローチャート。
【図１３】第３の実施形態に係るクライアント装置のＣＰＵの制御の下で実行される画面表示処理を示すフローチャート。
【図１４】画面内のウィンドウを移動させた場合の画面の推移と、当該移動に伴って更新される背景画面データの推移を示す図。
【図１５】PBACKを最小数の矩形に分解したときの各矩形の対角点組の座標PBの算出方法を示す図。
【図１６】本発明の第４の実施形態に係るサーバ装置の主要部構成を示すブロック図。
【図１７】本発明の第４の実施形態に係るクライアント装置の主要部構成を示すブロック図。
【図１８】第４の実施形態に係るサーバ装置のＣＰＵの制御の下で実行される処理を示すフローチャート。
【図１９】第４の実施形態に係るクライアント装置のＣＰＵの制御の下で実行される画面表示処理を示すフローチャート。
【符号の説明】
【０１４３】
１、３  サーバ装置
２、４  クライアント装置
１０、２０、３０、４０  ＣＰＵ
１１、２１、３１、４３  ＲＡＭ
１２、２２、３２、４４  記憶部
１３、２５、３５、４２  通信部
２３、３３  入力部
２４、３４、４１  表示部
１１１、３１１  前画面データメモリ
１１２、３１２  次画面データメモリ
１１３、２１２  背景データメモリ
２１１、４３１  表示画面データメモリ
１００  リモート接続システム
【図１】
2008225516.tif 000003
【図２】
2008225516.tif 000004
【図３】
2008225516.tif 000005
【図４】
2008225516.tif 000006
【図５】
2008225516.tif 000007
【図６】
2008225516.tif 000008
【図７】
2008225516.tif 000009
【図８】
2008225516.tif 000010
【図９】
2008225516.tif 000011
【図１０】
2008225516.tif 000012
【図１１】
2008225516.tif 000013
【図１２】
2008225516.tif 000014
【図１３】
2008225516.tif 000015
【図１４】
2008225516.tif 000016
【図１５】
2008225516.tif 000017
【図１６】
2008225516.tif 000018
【図１７】
2008225516.tif 000019
【図１８】
2008225516.tif 000020
【図１９】
2008225516.tif 000021