(57)【特許請求の範囲】
【請求項１】
第１の画面に表示されている画像を取得する画像取得手段と、
前記第１の画面に表示されている第１の対象の変更を判定する変更判定手段と、
前記第１の画面に重複して表示される第２の画面に表示されている第２の対象を取得し、該第２の対象としては取得されなかった対象であって、該第２の対象との距離に応じて、該第２の画面に表示されている第３の対象を取得する対象取得手段と、
前記変更判定手段によって判定された第１の対象の変更に基づいて、前記対象取得手段によって取得された第２の対象及び第３の対象を変更する変更手段と、
前記画像取得手段によって取得された画像及び前記変更手段による変更結果を他の情報処理装置へ送信する送信手段
を具備することを特徴とする情報処理装置。
【請求項２】
請求項１に記載の情報処理装置より画像及び請求項１に記載の第２の対象及び第３の対象の変更結果を受信する受信手段と、
前記受信手段によって受信した画像を第１の画面に描画する第１の描画手段と、
前記受信手段によって受信した対象の変更結果に基づいて、第２の画面に描画する第２の描画手段と、
前記第１の描画手段によって描画された第１の画面と前記第２の描画手段によって描画された第２の画面を重複して表示する表示手段と、
前記第２の画面に表示されている対象を取得する対象取得手段と、
前記対象取得手段によって取得された対象が変更された場合に、該変更された対象に関する情報を、前記他の情報処理装置へ送信する送信手段
を具備することを特徴とする情報処理装置。
【請求項３】
前記対象取得手段は、前記変更判定手段によって判定の対象となった第１の対象との距離に応じて、第１の対象と関連する第２の対象を取得する
ことを特徴とする請求項１に記載の情報処理装置。
【請求項４】
コンピュータを、
第１の画面に表示されている画像を取得する画像取得手段と、
前記第１の画面に表示されている第１の対象の変更を判定する変更判定手段と、
前記第１の画面に重複して表示される第２の画面に表示されている第２の対象を取得し、該第２の対象としては取得されなかった対象であって、該第２の対象との距離に応じて、該第２の画面に表示されている第３の対象を取得する対象取得手段と、
前記変更判定手段によって判定された第１の対象の変更に基づいて、前記対象取得手段によって取得された第２の対象及び第３の対象を変更する変更手段と、
前記画像取得手段によって取得された画像及び前記変更手段による変更結果を他の情報処理装置へ送信する送信手段
として機能させることを特徴とする情報処理プログラム。
【請求項５】
コンピュータを、
請求項４に記載のコンピュータより画像及び請求項４に記載の第２の対象及び第３の対象の変更結果を受信する受信手段と、
前記受信手段によって受信した画像を第１の画面に描画する第１の描画手段と、
前記受信手段によって受信した対象の変更結果に基づいて、第２の画面に描画する第２の描画手段と、
前記第１の描画手段によって描画された第１の画面と前記第２の描画手段によって描画された第２の画面を重複して表示する表示手段と、
前記第２の画面に表示されている対象を取得する対象取得手段と、
前記対象取得手段によって取得された対象が変更された場合に、該変更された対象に関する情報を、前記他の情報処理装置へ送信する送信手段
として機能させることを特徴とする情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置及び情報処理プログラムに関する。
【背景技術】
【０００２】
遠隔地にある複数の情報処理装置を通信回線で結び、会議システム等において、互いの画面を共有し、その共有している画面に対して文字、図形等のオブジェクトを追加、編集等することが求められている。
【０００３】
これに関連する技術として、例えば、特許文献１には、透明スクリーン上に形成されたオブジェクトに関して、コンテンツに関するアプリケーションの実行プロセスにアクションを起こさせずに、当該オブジェクトの位置を管理（記録時：描画位置の記録、送信時：描画位置の送信、再表示時：再表示位置の決定、など）することを課題とし、ディスプレイ上に表示されたコンテンツ上に重ねて、オブジェクトが描画された透明スクリーンを前記ディスプレイ上に表示する情報処理方法において、前記コンテンツの表示位置を前記ディスプレイ上に表示させるための情報から、前記コンテンツ上の固定点の前記ディスプレイ上の固定点に対する位置を抽出する抽出ステップと、前記抽出ステップにより抽出された前記位置に基づいて、前記オブジェクトの位置を管理する管理ステップと、を備えることを特徴とする情報処理方法が開示されている。
【０００４】
また、例えば、特許文献２には、電子資料をリアルタイムに閲覧できる画面共有ソフトウェアと、電子会議に参加する全員が議論の内容になる文字や描画等を自由に記入可能なアプリケーションソフトウェアとを同時に併用して電子会議を行うことができる電子会議システムを提供することを課題とし、サーバは、利用者およびクライアントから入力された描画データを処理するホワイトボードと、描画データを蓄積する画面バッファと、電子資料を蓄積する画面バッファと、画面バッファに蓄積されている電子資料を利用者に閲覧させる画面共有サーバと、画面バッファに蓄積されている電子資料を処理する電子資料処理手段とを備え、クライアントは、通信端末の利用者から入力された描画データを前記電子会議サーバに入力するホワイトボードとを備えて構成することが開示されている。
【特許文献１】特開２００４−０１３３１８号公報
【特許文献２】特開２００６−１６４１７７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
ところで、他の情報処理装置との間で、画面を共有するような場合、操作者の操作に応じて、その画面に付加する対象を表示するには、画面に表示させるアプリケーション毎に対応を異ならせるようにしなければならない。
本発明は、他の情報処理装置との間で、画面を共有するような場合、画面に表示させるアプリケーションによる影響を抑えて、第１の画面で変更された対象に関連させて、第２の画面に表示する対象を表示するようにした情報処理装置及び情報処理プログラムを提供することを目的としている。
【課題を解決するための手段】
【０００６】
かかる目的を達成するための本発明の要旨とするところは、次の各項の発明に存する。
請求項１の情報処理装置は、第１の画面に表示されている画像を取得する画像取得手段と、前記第１の画面に表示されている第１の対象の変更を判定する変更判定手段と、前記第１の画面に重複して表示される第２の画面に表示されている第２の対象を取得し、該第２の対象としては取得されなかった対象であって、該第２の対象との距離に応じて、該第２の画面に表示されている第３の対象を取得する対象取得手段と、前記変更判定手段によって判定された第１の対象の変更に基づいて、前記対象取得手段によって取得された第２の対象及び第３の対象を変更する変更手段と、前記画像取得手段によって取得された画像及び前記変更手段による変更結果を他の情報処理装置へ送信する送信手段を具備することを特徴とする。
【０００７】
請求項２の情報処理装置は、請求項１に記載の情報処理装置より画像及び請求項１に記載の第２の対象及び第３の対象の変更結果を受信する受信手段と、前記受信手段によって受信した画像を第１の画面に描画する第１の描画手段と、前記受信手段によって受信した対象の変更結果に基づいて、第２の画面に描画する第２の描画手段と、前記第１の描画手段によって描画された第１の画面と前記第２の描画手段によって描画された第２の画面を重複して表示する表示手段と、前記第２の画面に表示されている対象を取得する対象取得手段と、前記対象取得手段によって取得された対象が変更された場合に、該変更された対象に関する情報を、前記他の情報処理装置へ送信する送信手段を具備することを特徴とする。
【０００８】
請求項３の情報処理装置は、請求項１に記載する情報処理装置であって、前記対象取得手段は、前記変更判定手段によって判定の対象となった第１の対象との距離に応じて、第１の対象と関連する第２の対象を取得することを特徴とする。
【００１０】
請求項４の情報処理プログラムは、コンピュータを、第１の画面に表示されている画像を取得する画像取得手段と、前記第１の画面に表示されている第１の対象の変更を判定する変更判定手段と、前記第１の画面に重複して表示される第２の画面に表示されている第２の対象を取得し、該第２の対象としては取得されなかった対象であって、該第２の対象との距離に応じて、該第２の画面に表示されている第３の対象を取得する対象取得手段と、前記変更判定手段によって判定された第１の対象の変更に基づいて、前記対象取得手段によって取得された第２の対象及び第３の対象を変更する変更手段と、前記画像取得手段によって取得された画像及び前記変更手段による変更結果を他の情報処理装置へ送信する送信手段として機能させることを特徴とする。
【００１１】
請求項５の情報処理プログラムは、コンピュータを、請求項４に記載のコンピュータより画像及び請求項４に記載の第２の対象及び第３の対象の変更結果を受信する受信手段と、前記受信手段によって受信した画像を第１の画面に描画する第１の描画手段と、前記受信手段によって受信した対象の変更結果に基づいて、第２の画面に描画する第２の描画手段と、前記第１の描画手段によって描画された第１の画面と前記第２の描画手段によって描画された第２の画面を重複して表示する表示手段と、前記第２の画面に表示されている対象を取得する対象取得手段と、前記対象取得手段によって取得された対象が変更された場合に、該変更された対象に関する情報を、前記他の情報処理装置へ送信する送信手段として機能させることを特徴とする。
【発明の効果】
【００１２】
請求項１記載の情報処理装置によれば、他の情報処理装置との間で、画面を共有するような場合、画面に表示させるアプリケーションによる影響を抑えて、第１の画面で変更された対象に関連させて、第２の画面に表示する対象を表示することができる。
【００１３】
請求項２記載の情報処理装置によれば、他の情報処理装置との間で、画面を共有するような場合、他の情報処理装置による画面の変更を反映させ、自らの情報処理装置による画面の変更を他の情報処理装置に送信することができる。
【００１４】
請求項３記載の情報処理装置によれば、変更された第１の対象に関連する第２の対象を、第１の対象に関連させて変更することができる。
【００１６】
請求項４記載の情報処理プログラムによれば、他の情報処理装置との間で、画面を共有するような場合、画面に表示させるアプリケーションによる影響を抑えて、第１の画面で変更された対象に関連させて、第２の画面に表示する対象を表示することができる。
【００１７】
請求項５記載の情報処理プログラムによれば、他の情報処理装置との間で、画面を共有するような場合、他の情報処理装置による画面の変更を反映させ、自らの情報処理装置による画面の変更を他の情報処理装置に送信することができる。
【発明を実施するための最良の形態】
【００１８】
以下、図面に基づき本発明を実現するにあたっての好適な一実施の形態の例を説明する。
図１は、本実施の形態の構成例についての概念的なモジュール構成図を示している。
なお、モジュールとは、一般的に論理的に分離可能なソフトウェア（コンピュータ・プログラム）、ハードウェア等の部品を指す。したがって、本実施の形態におけるモジュールはコンピュータ・プログラムにおけるモジュールのことだけでなく、ハードウェア構成におけるモジュールも指す。それゆえ、本実施の形態は、コンピュータ・プログラム、システム及び方法の説明をも兼ねている。ただし、説明の都合上、「記憶する」、「記憶させる」、これらと同等の文言を用いるが、これらの文言は、実施の形態がコンピュータ・プログラムの場合は、記憶装置に記憶させること、又は記憶装置に記憶させるように制御するの意である。また、モジュールは機能にほぼ一対一に対応しているが、実装においては、１モジュールを１プログラムで構成してもよいし、複数モジュールを１プログラムで構成してもよく、逆に１モジュールを複数プログラムで構成してもよい。また、複数モジュールは１コンピュータによって実行されてもよいし、分散又は並列環境におけるコンピュータによって１モジュールが複数コンピュータで実行されてもよい。なお、１つのモジュールに他のモジュールが含まれていてもよい。また、以下、「接続」とは物理的な接続の他、論理的な接続（データの授受、指示、データ間の参照関係等）を含む。
また、システム又は装置とは、複数のコンピュータ、ハードウェア、装置等がネットワーク（一対一対応の通信接続を含む）等の通信手段で接続されて構成されるほか、１つのコンピュータ、ハードウェア、装置等によって実現される場合も含まれる。
【００１９】
本実施の形態は、会議等に使用されるものであって、図１に示すように、進行者用ＰＣ１１０、サーバ１２０、クライアント１３０Ａ等を有している。進行者用ＰＣ１１０は通信回線１９１を介してサーバ１２０と接続されており、サーバ１２０は通信回線１９２、１９３を介してクライアント１３０Ａ、１３０Ｎと接続されている。また、クライアント１３０は１つであってもよいし、２つ以上であってもよい。
また、第１の画面、第２の画面、第３の画面を用いて説明するが、これらについては図３を用いて後述する。なお、進行者用ＰＣ１１０の説明をしている場合は、第１の画面等は進行者用ＰＣ１１０における第１の画面のことをいい、クライアント１３０の説明をしている場合は、第１の画面等はクライアント１３０における第１の画面のことをいう。
対象の変更とは、対象の移動、対象の拡大又は縮小、変形、削除等があるが、ここでは主に対象の移動について説明する。また、以下、操作対象又は対象をオブジェクトという。
【００２０】
進行者用ＰＣ１１０は、描画オブジェクト取得モジュール１１１、移動領域判定モジュール１１２、画面キャプチャモジュール１１３、描画オブジェクト座標補正モジュール１１４、重畳描画モジュール１１５、データ送受信モジュール１１６、出力モジュール１１７を有している。主に会議における進行役の者が使用するＰＣである。
【００２１】
移動領域判定モジュール１１２は、画面キャプチャモジュール１１３、描画オブジェクト座標補正モジュール１１４と接続されており、操作者の操作に応じて、マウスイベント（マウスボタンのクリックなど）又はそのマウスイベント発生時のマウスカーソルの座標等を受け付け、第１の画面に表示されている第１のオブジェクトの移動を判定する。その判定結果を画面キャプチャモジュール１１３及び描画オブジェクト座標補正モジュール１１４へ渡す。
【００２２】
描画オブジェクト取得モジュール１１１は、描画オブジェクト座標補正モジュール１１４と接続されており、操作者の操作に応じて、マウスイベント又はそのマウスイベント発生時のマウスカーソルの座標等を受け付け、第１の画面に重複して表示される第２の画面に表示されている第２のオブジェクトを取得する。その取得した第２のオブジェクトを描画オブジェクト座標補正モジュール１１４へ渡す。また、移動領域判定モジュール１１２によって判定の対象となった第１のオブジェクトとの距離に応じて、第１のオブジェクトと関連する第２のオブジェクトを取得するようにしてもよい。
【００２３】
画面キャプチャモジュール１１３は、移動領域判定モジュール１１２、重畳描画モジュール１１５、データ送受信モジュール１１６と接続されている。第１の画面に表示されている画像（画面イメージ）をキャプチャする。ここで、キャプチャとは、ディスプレイに表示している動画や静止画を、デジタルデータとして取得することであり、スクリーンショットともいわれる。そのキャプチャした画像を重畳描画モジュール１１５及びデータ送受信モジュール１１６へ渡す。
【００２４】
描画オブジェクト座標補正モジュール１１４は、描画オブジェクト取得モジュール１１１、移動領域判定モジュール１１２、重畳描画モジュール１１５、データ送受信モジュール１１６と接続されている。移動領域判定モジュール１１２によって判定された第１のオブジェクトの移動に基づいて、描画オブジェクト取得モジュール１１１によって取得された第２のオブジェクトの座標を補正することによって移動させる。そして、その移動結果をデータ送受信モジュール１１６及び重畳描画モジュール１１５へ渡す。
【００２５】
重畳描画モジュール１１５は、画面キャプチャモジュール１１３、描画オブジェクト座標補正モジュール１１４、出力モジュール１１７と接続されている。画面キャプチャモジュール１１３によってキャプチャされた画像（第１の画面の画像）及び描画オブジェクト座標補正モジュール１１４によって移動させられた第２のオブジェクトがある第２の画面とを重畳（論理和計算）して描画し、その画像を出力モジュール１１７に渡す。また、画面キャプチャモジュール１１３によってキャプチャされた画像とデータ送受信モジュール１１６によって受信された第２の画面に表示すべきオブジェクトの移動結果とを重畳して描画し、その画像を出力モジュール１１７に渡す。
【００２６】
データ送受信モジュール１１６は、画面キャプチャモジュール１１３、描画オブジェクト座標補正モジュール１１４と接続されており、また、通信回線１９１を介してサーバ１２０のデータ送受信モジュール１２１と接続されている。画面キャプチャモジュール１１３によって取得された画像及び描画オブジェクト座標補正モジュール１１４による移動結果（第２の画面の画像そのもの、第２の画面に表示されているオブジェクトの移動方向及び移動量等）をクライアント１３０Ａ、１３０Ｎ等へサーバ１２０を介して送信する。また、サーバ１２０を介してクライアント１３０Ａ、１３０Ｎ等から送信されてくる第２の画面に表示すべきオブジェクトの移動結果を受信する。
【００２７】
出力モジュール１１７は、重畳描画モジュール１１５から画像を受け取り、その画像を進行者用ＰＣ１１０のＣＲＴ、液晶画面等に表示する。
【００２８】
サーバ１２０は、データ送受信モジュール１２１、接続管理モジュール１２２、データ管理モジュール１２３、ＤＢ１２４を有している。会議システムにおいて、進行者用ＰＣ１１０、クライアント１３０Ａ、クライアント１３０Ｎを接続するものであり、どこからどこへどのようなデータを送信するかについて制御する。
【００２９】
データ送受信モジュール１２１は、接続管理モジュール１２２、データ管理モジュール１２３と接続されており、また、通信回線１９１を介して進行者用ＰＣ１１０のデータ送受信モジュール１１６と接続されており、通信回線１９２を介してクライアント１３０Ａのデータ送受信モジュール１３１Ａと接続されており、通信回線１９３を介してクライアント１３０Ｎのデータ送受信モジュール１３１Ｎと接続されている。つまり、進行者用ＰＣ１１０、クライアント１３０Ａ、クライアント１３０Ｎを接続する。
【００３０】
接続管理モジュール１２２は、データ送受信モジュール１２１、ＤＢ１２４と接続されている。データ送受信モジュール１２１によって受信されたデータを、あらかじめＤＢ１２４に登録されている配信先（進行者用ＰＣ１１０、クライアント１３０Ａ、１３０Ｎ）へ送信するようにデータ送受信モジュール１２１へ指示を出す。
【００３１】
データ管理モジュール１２３は、データ送受信モジュール１２１、ＤＢ１２４と接続されている。データ送受信モジュール１２１によって受信したデータを、会議における履歴データとしてＤＢ１２４へ記憶させる。また、議事録を作成する進行者用ＰＣ１１０等からの要求によって、その履歴データを送信するようにデータ送受信モジュール１２１へ指示を出してもよい。
【００３２】
ＤＢ１２４は、接続管理モジュール１２２、データ管理モジュール１２３と接続されており、どの会議はどの装置（進行者用ＰＣ１１０、クライアント１３０Ａ、１３０Ｎ）の組み合わせで行うべきか等の管理データ及び各装置間で送受信されるデータを履歴データとして記憶している。
【００３３】
クライアント１３０Ａは、データ送受信モジュール１３１Ａ、重畳描画モジュール１３２Ａ、描画オブジェクト取得モジュール１３３Ａ、出力モジュール１３４Ａを有している。例えば、その会議における参加者によって使用されるＰＣ等である。なお、クライアント１３０Ｎは、クライアント１３０Ａと同様の構成を有している。
【００３４】
データ送受信モジュール１３１Ａは、重畳描画モジュール１３２Ａ、描画オブジェクト取得モジュール１３３Ａと接続されており、また、通信回線１９２を介してサーバ１２０のデータ送受信モジュール１２１と接続されている。サーバ１２０を介して、進行者用ＰＣ１１０より画像及びオブジェクトの移動結果を受信する。受信した内容を重畳描画モジュール１３２Ａへ渡す。また、描画オブジェクト取得モジュール１３３Ａによって取得されたオブジェクトが移動された場合に、該移動されたオブジェクトに関する情報を、サーバ１２０を介して進行者用ＰＣ１１０へ送信する。
【００３５】
重畳描画モジュール１３２Ａは、データ送受信モジュール１３１Ａ、描画オブジェクト取得モジュール１３３Ａ、出力モジュール１３４Ａと接続されている。データ送受信モジュール１３１Ａによって受信された画像を第１の画面に描画する。そして、データ送受信モジュール１３１Ａによって受信されたオブジェクトの移動結果に基づいて、第２の画面に描画する。または、描画オブジェクト取得モジュール１３３Ａから第２の画面内にあるオブジェクトの移動結果を受け取って、第２の画面に描画する。さらに、第１の画面と第２の画面を重畳して描画し、その画像を出力モジュール１３４Ａに渡す。
【００３６】
描画オブジェクト取得モジュール１３３Ａは、データ送受信モジュール１３１Ａ、重畳描画モジュール１３２Ａと接続されている。操作者の操作に応じて、マウスイベント又はそのマウスイベント発生時のマウスカーソルの座標等を受け付け、第２の画面に表示されている第２のオブジェクトを取得する。
【００３７】
出力モジュール１３４Ａは、重畳描画モジュール１３２Ａと接続されている。重畳描画モジュール１３２Ａから画像を受け取り、その画像をクライアント１３０ＡのＣＲＴ、液晶画面等に表示する。
【００３８】
図２を用いて、本実施の形態を実現するにあたってのシステム構成例を説明する。このシステムは、会議室２１１内にあるＰＣ２１０、会議室２３１Ａ内にあるクライアント２３０Ａ、会議室２３１Ｂ内にあるクライアント２３０Ｂ、これらの装置をそれぞれネットワーク２９１、２９２、２９３を介して接続するサーバ２２０を有している。なお、ＰＣ２１０は図１に示した進行者用ＰＣ１１０に、サーバ２２０は図１に示したサーバ１２０に、クライアント２３０Ａは図１に示したクライアント１３０Ａに、クライアント２３０Ｂは図１に示したクライアント１３０Ｎに、それぞれ該当する。
【００３９】
このシステム構成例における、作用・働き（動作）を説明する。
最初にＰＣ２１０の第１の画面であるデスクトップを画面キャプチャし、次にサーバ２２０を経由してクライアント２３０Ａ、２３０Ｂへ送信する。
ＰＣ２１０上で第２の画面に描画されたオブジェクトは、ＰＣ２１０のデスクトップ上と相対的に同位置となるようにクライアント２３０Ａ等の第２の画面へ描画される。つまり、ＰＣ２１０のデスクトップ画面が各クライアント２３０Ａ、２３０Ｂに共有され、３者間で同一のデスクトップ画面を見ることになる。
逆にクライアント２３０Ａ等の第２の画面上で描画されるオブジェクトは、ＰＣ２１０のデスクトップ上の同位置となるようにＰＣ２１０の第２の画面へ描画される。これによって、描画オブジェクトはクライアント２３０Ａ等−ＰＣ２１０間で対称的に共有される。
一方、クライアント２３０Ａ等は常にＰＣ２１０の画面を共有するが、クライアント２３０Ａ等はデスクトップ画面をＰＣ２１０へ送信することはしない。このため、クライアント２３０Ａ等−ＰＣ２１０間でデスクトップ画面は非対称的に共有される。
【００４０】
クライアント２３０Ａ等の第２の画面上で描画されたオブジェクトは、ＰＣ２１０の第２の画面上に描画される。ＰＣ２１０上では、第３の画面が有する描画指示領域（描画ツール）の操作によって描画指示が出された場合、マウスイベントが第２の画面に表示するアプリケーションプログラムに渡される。第２の画面上で発生したマウスイベントによって描画を指示された座標上にあるピクセル値を指定された値に変更することで、オブジェクトを描画することができる。例えば、描画前は無色であるピクセル値を、赤色を示すピクセル値に変更することで、赤い点を描画することができる。
一方、クライアント２３０Ａ等は、第３の画面を有していない。そのため、マウスイベントは常に第２の画面へ渡される。ただし、第２の画面を生成するアプリケーションプログラムへの指示を行うために、第２の画面上に操作者の操作を受けるための描画指示領域を表示する。その描画指示領域を表示することと非表示にすることとを切り替えることができるようにしてもよい。
【００４１】
ＰＣ２１０上のマウスイベントによってオブジェクトが描画されるとき、そのオブジェクトを構成するピクセルの座標とその値の組み合わせデータを、描画オブジェクトデータとしてサーバ２２０へ送信する。該データを受信したサーバ２２０は、あらかじめ登録されている配信先のクライアント２３０Ａ等へ該データを送信する。サーバ２２０から該データを受信したクライアント２３０Ａ等は該データに従い、ＰＣ２１０のデスクトップと相対的に同位置となるようにクライアント２３０Ａ等の第２の画面上のピクセルを指定された値へ変更する。このようにすることによって、描画オブジェクトを描画する。
【００４２】
クライアント２３０Ａ等のマウスイベントによってクライアント２３０Ａ等の第２の画面上にオブジェクトが描画されるとき、そのオブジェクトを構成するピクセルの座標とその値の組み合わせデータを、描画オブジェクトデータとしてサーバ２２０へ送信する。
該データを受信したサーバ２２０は、あらかじめ登録されているＰＣ２１０へ該データを送信する。
サーバ２２０から該データを受信したＰＣ２１０は該データに従い、ＰＣ２１０の第２の画面上のピクセルを指定された値へ変更することで、描画オブジェクトを描画する。
【００４３】
図３を用いて、第１の画面３１０、第２の画面３２０、第３の画面３３０の関係を説明する。
進行者用ＰＣ１１０の画面は、第１の画面３１０、第２の画面３２０及び第３の画面３３０の重畳で構成される。
第１の画面３１０には、ＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）が管理するオブジェクト群、すなわちアプリケーションプログラムが動作する際に表示されるアプリケーションウィンドウ３１１、アプリケーションプログラムを参照するためのアイコン、フォルダ、あるいはドキュメントファイルなどが描画される。なお、第１の画面３１０は、ＯＳがオブジェクト群を描画するための画面であるため、通常デスクトップと呼ぶ画面を指すことが多い。
【００４４】
第２の画面３２０は透過背景をもつ。このことで、第１の画面３１０上へ重畳される際にＯＳが管理するオブジェクト（アプリケーションウィンドウ３１１）群上に、第２の画面３２０上に描画されるオブジェクト３２１が直接描画されるように見えることとなる。
【００４５】
第３の画面３３０には、描画指示領域が配置される。描画指示領域は、描画モードか描画モードでないかを操作者が指示するための描画ＯＮボタン３３１、描画ＯＦＦボタン３３２を少なくとも有している。なお、描画ＯＮボタン３３１、描画ＯＦＦボタン３３２は、ボタン、スイッチ、スライダ、チェックボックス、ペンのＯＮ／ＯＦＦなど、描画機能を適用するか不適用かの二値状態を指示できる限り、どんなグラフィクス、文字表現でも良い。また、描画ＯＮボタン３３１、描画ＯＦＦボタン３３２をキーボードに配置される何らかのキーやショートカットで切り替えてもよい。
第３の画面３３０は、第１の画面３１０、第２の画面３２０に対して常に最上位に（つまり、常に表示できるように）重畳する。描画指示領域は、他に、色指定ツール、ペンの太さツール、ペンの種類ツールなど、描画用のアプリケーションプログラムの仕様に応じて追加できる。
第３の画面３３０が有する、描画ＯＮボタン３３１の押下により描画機能を適用する場合、マウスイベントは第２の画面３２０を制御しているアプリケーションプログラムに渡される。第３の画面３３０が有する、描画ＯＦＦボタン３３２の押下により描画機能を適用しない場合は、マウスイベントは第１の画面３１０を制御しているＯＳ又はアプリケーションプログラムに渡される。
【００４６】
図４に示すフローチャートを用いて、本実施の形態による処理例を説明する。
まず、このフローチャートの対象とする例を、図６〜８を用いて説明する。
図６に示すように、進行者用ＰＣ１１０の出力モジュール１１７には、第１の画面３１０（デスクトップ）内でＯＳが管理するアプリケーションウィンドウ６００と、そのアプリケーションウィンドウ６００内にオブジェクト６１１が描画されており、第２の画面３２０内でオブジェクト６１２、６１３が描画されている。オブジェクト６１２は丸と矢印からなり、オブジェクト６１１を指し示すように描画されたものである。つまり、アプリケーションウィンドウ６００又はオブジェクト６１１とオブジェクト６１２とは関連しているといえる。一方、オブジェクト６１３は、アプリケーションウィンドウ６００と離れた距離にあり、アプリケーションウィンドウ６００とは無関係である。
【００４７】
図７は、固定されたアプリケーションウィンドウ６００内に描画されたオブジェクト６１１が、アプリケーションウィンドウ６００内を二次元移動（たとえばスクロール）した場合である。つまり、アプリケーションウィンドウ６００自体は移動せず、アプリケーションウィンドウ６００の外側にあるものの移動も発生していない状態で、アプリケーションウィンドウ６００内のオブジェクト６１１がオブジェクト６１１１の位置からオブジェクト６１１の位置へスクロールによって移動したものである。この場合、オブジェクト６１１と関連のあるオブジェクト６１２もオブジェクト６１１に追随して移動されるべきである。ただし、オブジェクト６１３は移動されるべきではない。
【００４８】
図８は、オブジェクト６１１の移動に追随してオブジェクト６１２が移動する場合を示したものである。つまり、ＯＳが管理するオブジェクト６１１の位置が変更された場合、第２の画面３２０内のオブジェクト６１２の位置を追随して変更している。そして、オブジェクト６１３は移動していない。
これは、アプリケーションウィンドウ６００を囲む外接楕円８２０を求め、次にその外接楕円８２０よりもｄだけ大きい同心楕円８３０を求め、その同心楕円８３０内にあって第２の画面３２０に描画されているオブジェクトを移動させる対象とする。従って、オブジェクト６１２は移動の対象となるが、オブジェクト６１３は移動の対象とならない。
【００４９】
このように、図６〜８で説明した動作を実現する処理例が図４に示すフローチャートである。
ステップＳ４０２では、画面キャプチャモジュール１１３が、第１の画面３１０を画面キャプチャして、その画像を二値化し二値イメージを生成する（以下、この二値イメージをイメージ１という）。
ステップＳ４０４では、移動領域判定モジュール１１２が、イメージ１より、第１の画面３１０内のウィンドウ領域の絶対座標と絶対サイズを抽出する。このとき、ウィンドウが抽出できない場合は、全画面を１つのウィンドウとみなして、絶対座標と絶対サイズを抽出する。
【００５０】
ステップＳ４０６では、移動領域判定モジュール１１２が、マウスイベントを監視して、マウスイベントがイメージ１のウィンドウ領域内で発生した場合のみ、マウスイベントが終了した時点で第１の画面３１０を画面キャプチャするように画面キャプチャモジュール１１３へ指示を出す。そして、ステップＳ４０２と同様に、画面キャプチャモジュール１１３が、第１の画面３１０を画面キャプチャして、その画像を二値化し二値イメージを生成する（以下、この二値イメージをイメージ２という）。
ステップＳ４０８では、移動領域判定モジュール１１２が、イメージ１とイメージ２の差分をとる。
ステップＳ４１０では、移動領域判定モジュール１１２が、ステップＳ４０８で得た差分から、イメージ１、２間の移動量Ｄｖを抽出する。
【００５１】
ステップＳ４１２では、移動領域判定モジュール１１２が、Ｄｖが０ではないか否かを判断する。つまり、第１の画面３１０に変化があるか否かを判断する。かかる判断において、ＹＥＳ（変化がある）の場合であるとステップＳ４１４へ進み、それ以外（変化がない）の場合は終了する（ステップＳ４３０）。
ステップＳ４１４では、移動領域判定モジュール１１２が、ウィンドウの外側での移動発生なのか、又はウィンドウ自体が移動したのかを判断する。かかる判断において、ＹＥＳの場合であるとステップＳ４１６へ進み、それ以外（ウィンドウの内側で変化がある）の場合はステップＳ４１８へ進む。
ステップＳ４１６では、描画オブジェクト座標補正モジュール１１４が、第２の画面３２０上のすべての描画オブジェクトをＤｖ分の移動をさせる。その後、データ送受信モジュール１１６が、サーバ１２０へ移動を通知する。
【００５２】
ステップＳ４１８〜ステップＳ４２８の処理は、第１の画面３１０内のウィンドウと関連するオブジェクト（第２の画面３２０にある）を求める処理である。この処理については、図５を用いて説明する。
ステップＳ４１８では、描画オブジェクト取得モジュール１１１が、第１の画面３１０上のウィンドウ５００の領域を示す矩形に対する外接楕円５２０を求める（楕円には円を含む）。つまり、ウィンドウ５００の中心を楕円の中心とし、ウィンドウ５００を囲むように外接楕円５２０を求める。
ステップＳ４２０では、描画オブジェクト取得モジュール１１１が、第２の画面３２０上で、外接楕円５２０に対して予め定めたｄを加えた同心楕円５３０を求める。つまり、外接楕円５２０の中心と同じ位置に中心を持ち、ｄだけ大きい同心楕円５３０を求める。
【００５３】
ステップＳ４２２では、描画オブジェクト取得モジュール１１１が、第２の画面３２０上に描画されているオブジェクトを１つ選択する。図５の場合、オブジェクト５１０を選択する。
ステップＳ４２４では、描画オブジェクト取得モジュール１１１が、同心楕円５３０の領域内に、ステップＳ４２２で選択されたオブジェクト５１０の一部が含まれるか否かを判断する。かかる判断において、ＹＥＳ（ウィンドウの近傍にオブジェクトがある）の場合であるとステップＳ４２６へ進み、それ以外（ウィンドウの近傍にはオブジェクトがない）の場合はステップＳ４２８へ進む。図５の場合、オブジェクト５１０は、同心楕円５３０内に含まれているので、ＹＥＳとなる。
ステップＳ４２６では、描画オブジェクト座標補正モジュール１１４が、選択した描画オブジェクトを第２の画面３２０上でＤｖ分の移動をさせる。その後、データ送受信モジュール１１６が、サーバ１２０へ移動を通知する。
ステップＳ４２８では、描画オブジェクト取得モジュール１１１が、次のオブジェクトはあるか否かを判断する。かかる判断において、ＹＥＳ（残りのオブジェクトがある）の場合であるとステップＳ４２４へ戻り、それ以外（判断していないオブジェクトはない）の場合は終了する（ステップＳ４３０）。
【００５４】
図９に示すフローチャートを用いて、描画オブジェクト取得モジュール１１１が取得したオブジェクトの近傍にあるオブジェクトをさらに取得する処理例を説明する。
まず、具体的な処理例について、図１０を用いて説明する。
第１の画面３１０内のウィンドウ１０００と関係のあるオブジェクト１０１０を図４に示したフローチャートによる処理によって選択することができる。一方、オブジェクト１０１１はオブジェクト１０１０の近傍にはあるが、ウィンドウ１０００とは関連がないと判断されて、図４に示したフローチャートによる処理では、移動されない。しかし、オブジェクト１０１１はオブジェクト１０１０と関連があるものであるので、オブジェクト１０１０の移動とともに移動すべきものであり、それを実現させる処理例が図９に示すフローチャートである。
【００５５】
ステップＳ９０２では、描画オブジェクト取得モジュール１１１が、第２の画面３２０上でウィンドウ１０００の近傍と判定されたオブジェクト１０１０の外接矩形に対する外接楕円１０２０を求める。
ステップＳ９０４では、描画オブジェクト取得モジュール１１１が、第２の画面３２０上で、外接楕円１０２０に対して予め定めたｄＡを加えた同心楕円１０３０を求める。つまり、外接楕円１０２０の中心と同じ位置に中心を持ち、ｄＡだけ大きい同心楕円１０３０を求める。
【００５６】
ステップＳ９０６では、描画オブジェクト取得モジュール１１１が、第２の画面３２０上に描画されているオブジェクトを１つ選択する。図１０の場合、オブジェクト１０１１を選択する。
ステップＳ９０８では、描画オブジェクト取得モジュール１１１が、同心楕円１０３０の領域内に、ステップＳ９０６で選択されたオブジェクト１０１１の一部が含まれるか否かを判断する。かかる判断において、ＹＥＳ（オブジェクトの近傍にオブジェクトがある）の場合であるとステップＳ９１０へ進み、それ以外（オブジェクトの近傍にはオブジェクトがない）の場合はステップＳ９１２へ進む。図１０の場合、オブジェクト１０１１は、同心楕円１０３０内に含まれているので、ＹＥＳとなる。
ステップＳ９１０では、描画オブジェクト座標補正モジュール１１４が、選択した描画オブジェクトを第２の画面３２０上でＤｖ分の移動をさせる。その後、データ送受信モジュール１１６が、サーバ１２０へ移動を通知する。
ステップＳ９１２では、描画オブジェクト取得モジュール１１１が、次のオブジェクトはあるか否かを判断する。かかる判断において、ＹＥＳ（残りのオブジェクトがある）の場合であるとステップＳ９０８へ戻り、それ以外（判断していないオブジェクトはない）の場合は終了する（ステップＳ９１４）。
【００５７】
なお、本実施の形態としてのプログラムが実行されるコンピュータ（進行者用ＰＣ１１０、サーバ１２０、クライアント１３０Ａ等）のハードウェア構成は、図１１に示すように、一般的なコンピュータであり、具体的にはパーソナルコンピュータ、サーバとなり得るコンピュータ等である。描画オブジェクト取得モジュール１１１、移動領域判定モジュール１１２、画面キャプチャモジュール１１３、描画オブジェクト座標補正モジュール１１４、重畳描画モジュール１１５、接続管理モジュール１２２、データ管理モジュール１２３、重畳描画モジュール１３２Ａ、描画オブジェクト取得モジュール１３３Ａ等のプログラムを実行するＣＰＵ１１０１と、そのプログラムやデータを記憶するＲＡＭ１１０２と、本コンピュータを起動するためのプログラム等が格納されているＲＯＭ１１０３と、補助記憶装置であるＨＤ１１０４（例えばハードディスクを用いることができる）と、キーボード、マウス等のデータを入力する入力装置１１０６と、ＣＲＴや液晶ディスプレイ等の出力装置１１０５と、通信ネットワークと接続するための通信回線インタフェース１１０７（例えばネットワークインタフェースカードを用いることができる）、そして、それらをつないでデータのやりとりをするためのバス１１０８により構成されている。これらのコンピュータが複数台互いにネットワークによって接続されていてもよい。
【００５８】
前述の実施の形態のうち、コンピュータ・プログラムによるものについては、本ハードウェア構成のシステムにソフトウェアであるコンピュータ・プログラムを読み込ませ、ソフトウェアとハードウェア資源とが協働して、前述の実施の形態が実現される。
なお、図１１に示すハードウェア構成は、１つの構成例を示すものであり、本実施の形態は、図１１に示す構成に限らず、本実施の形態において説明したモジュールを実行可能な構成であればよい。例えば、一部のモジュールを専用のハードウェア（例えばＡＳＩＣ等）で構成してもよく、一部のモジュールは外部のシステム内にあり通信回線で接続しているような形態でもよく、さらに図１１に示すシステムが複数互いに通信回線によって接続されていて互いに協調動作するようにしてもよい。また、特に、パーソナルコンピュータの他、情報家電、複写機、ファックス、スキャナ、プリンタ、複合機（スキャナ、プリンタ、複写機、ファックス等のいずれか２つ以上の機能を有している画像処理装置）などに組み込まれていてもよい。
【００５９】
前記実施の形態においては、第１の画面３１０内のオブジェクトと関連のある第２の画面３２０内のオブジェクトを選択するのに、外接楕円、同心楕円を用いた例を示したが、第１の画面３１０内のオブジェクト外周に対して予め定めた距離以内にある第２の画面３２０内のオブジェクトを選択するようにしてもよい。
また、前記実施の形態においては、第１のオブジェクトの変更として、移動を例示したが、拡大又は縮小、変形、削除等でもよい。拡大又は縮小、変形の場合は、第１のオブジェクトに対する倍率、変形処理に合わせて、第２のオブジェクト（第３のオブジェクトを含む）を拡大又は縮小、変形する。また、削除の場合は、第２のオブジェクトも削除する。
【００６０】
なお、説明したプログラムについては、記録媒体に格納して提供してもよく、また、そのプログラムを通信手段によって提供してもよい。その場合、例えば、前記説明したプログラムについて、「プログラムを記録したコンピュータ読み取り可能な記録媒体」の発明として捉えてもよい。
「プログラムを記録したコンピュータ読み取り可能な記録媒体」とは、プログラムのインストール、実行、プログラムの流通などのために用いられる、プログラムが記録されたコンピュータで読み取り可能な記録媒体をいう。
なお、記録媒体としては、例えば、デジタル・バーサタイル・ディスク（ＤＶＤ）であって、ＤＶＤフォーラムで策定された規格である「ＤＶＤ−Ｒ、ＤＶＤ−ＲＷ、ＤＶＤ−ＲＡＭ等」、ＤＶＤ＋ＲＷで策定された規格である「ＤＶＤ＋Ｒ、ＤＶＤ＋ＲＷ等」、コンパクトディスク（ＣＤ）であって、読出し専用メモリ（ＣＤ−ＲＯＭ）、ＣＤレコーダブル（ＣＤ−Ｒ）、ＣＤリライタブル（ＣＤ−ＲＷ）等、光磁気ディスク（ＭＯ）、フレキシブルディスク（ＦＤ）、磁気テープ、ハードディスク、読出し専用メモリ（ＲＯＭ）、電気的消去及び書換可能な読出し専用メモリ（ＥＥＰＲＯＭ）、フラッシュ・メモリ、ランダム・アクセス・メモリ（ＲＡＭ）等が含まれる。
そして、前記のプログラム又はその一部は、前記記録媒体に記録して保存や流通等させてもよい。また、通信によって、例えば、ローカル・エリア・ネットワーク（ＬＡＮ）、メトロポリタン・エリア・ネットワーク（ＭＡＮ）、ワイド・エリア・ネットワーク（ＷＡＮ）、インターネット、イントラネット、エクストラネット等に用いられる有線ネットワーク、あるいは無線通信ネットワーク、さらにこれらの組み合わせ等の伝送媒体を用いて伝送させてもよく、また、搬送波に乗せて搬送させてもよい。
さらに、前記のプログラムは、他のプログラムの一部分であってもよく、あるいは別個のプログラムと共に記録媒体に記録されていてもよい。また、複数の記録媒体に分割して
記録されていてもよい。また、圧縮や暗号化など、復元可能であればどのような態様で記録されていてもよい。
【図面の簡単な説明】
【００６１】
【図１】本実施の形態の構成例についての概念的なモジュール構成図である。
【図２】本実施の形態を実現するにあたってのシステム構成例を示す説明図である。
【図３】第１の画面、第２の画面、第３の画面の関係を示す説明図である。
【図４】本実施の形態による処理例を示すフローチャートである。
【図５】ウィンドウとオブジェクトの関連を示す説明図である。
【図６】本実施の形態による処理例を示す説明図である。
【図７】本実施の形態による処理例を示す説明図である。
【図８】本実施の形態による処理例を示す説明図である。
【図９】取得したオブジェクトの近傍にあるオブジェクトを取得する処理例を示すフローチャートである。
【図１０】取得したオブジェクトの近傍にあるオブジェクトとの関係を示す説明図である。
【図１１】本実施の形態を実現するコンピュータのハードウェア構成例を示すブロック図である。
【符号の説明】
【００６２】
１１０…進行者用ＰＣ
１１１…描画オブジェクト取得モジュール
１１２…移動領域判定モジュール
１１３…画面キャプチャモジュール
１１４…描画オブジェクト座標補正モジュール
１１５…重畳描画モジュール
１１６…データ送受信モジュール
１１７…出力モジュール
１２０…サーバ
１２１…データ送受信モジュール
１２２…接続管理モジュール
１２３…データ管理モジュール
１２４…ＤＢ
１３０Ａ、１３０Ｎ…クライアント
１３１Ａ、１３１Ｎ…データ送受信モジュール
１３２Ａ、１３２Ｎ…重畳描画モジュール
１３３Ａ、１３３Ｎ…描画オブジェクト取得モジュール
１３４Ａ、１３４Ｎ…出力モジュール
１９１、１９２、１９３…通信回線
２１０…ＰＣ
２１１…会議室
２２０…サーバ
２３０Ａ、２３０Ｂ…クライアント
２３１Ａ、２３１Ｂ…会議室
２９１、２９２、２９３…ネットワーク
【図１】
0004626775.tif 000002
【図２】
0004626775.tif 000003
【図３】
0004626775.tif 000004
【図４】
0004626775.tif 000005
【図５】
0004626775.tif 000006
【図６】
0004626775.tif 000007
【図７】
0004626775.tif 000008
【図８】
0004626775.tif 000009
【図９】
0004626775.tif 000010
【図１０】
0004626775.tif 000011
【図１１】
0004626775.tif 000012