(57)【要約】【課題】  拡大することによりまったく表示されなくなるオブジェクトがないように、オブジェクトを拡大表示する情報処理装置などを提供する。【解決手段】  本発明の情報処理装置は、表示装置の画面に表示されたオブジェクトに対する拡大の指示に基づいて、拡大率を算出し、該拡大率を示す拡大率情報を含む拡大指示情報を生成する入力制御手段と、拡大率情報と、オブジェクトの表示に関するオブジェクト情報を含む描画データとに基づいて、描画データにおける複数のオブジェクトを、互いに重ならない状態で拡大する拡大処理を実行し、拡大したオブジェクトに関するオブジェクト情報を含む拡大済描画データを生成する拡大処理手段と、拡大済描画データに基づいて、表示装置の画面に拡大したオブジェクトを表示する表示制御手段とを備える。【選択図】      図１
2015087982.tif 000002
【特許請求の範囲】
【請求項１】
表示装置の画面に表示されたオブジェクトに対する拡大の指示に基づいて、拡大率を算出し、前記拡大率を示す拡大率情報を含む拡大指示情報を生成する入力制御手段と、
前記拡大率情報と、前記オブジェクトの表示に関するオブジェクト情報を含む描画データとに基づいて、前記描画データにおける複数のオブジェクトを、互いに重ならない状態で拡大する拡大処理を実行し、拡大した前記オブジェクトに関するオブジェクト情報を含む拡大済描画データを生成する拡大処理手段と、
前記拡大済描画データに基づいて、前記表示装置の画面に拡大したオブジェクトを表示する表示制御手段と
を備える情報処理装置。
【請求項２】
前記拡大処理手段は、前記拡大処理において、前記オブジェクトの中心の位置関係を維持する
請求項１記載の情報処理装置。
【請求項３】
前記拡大処理手段は、前記拡大処理の前に、前記オブジェクトを、前記画面における各座標軸に対して平行な２本の線分によって挟むことにより、前記画面を複数のエリアに分割するエリア分割処理を実行し、前記拡大処理の実行による前記オブジェクトの拡大の結果、前記オブジェクトを含むエリア間の位置関係を維持する範囲に収まるように制御する
請求項１または２記載の情報処理装置。
【請求項４】
前記画面における位置表示画像の実座標を、前記エリアを識別する情報であるエリア番号と、前記エリア番号によって特定されるエリアの中における位置表示座標の位置を示す相対座標とを組み合わせたエリア内座標に変換する座標計算手段と、
サーバを経由して前記描画データを共有する他の情報処理装置に対する前記エリア内座標情報を前記サーバに送信する通信手段と
をさらに備える請求項３記載の情報処理装置。
【請求項５】
前記通信手段は、前記サーバから、他の情報処理装置における画面に表示された位置表示画像に対するエリア内座標情報を受信し、
前記座標計算手段は、受信したエリア内座標情報に基づいて、前記画面における実座標を計算し、計算した前記実座標を示す位置座標情報を、前記表示制御手段に出力する
請求項３または４記載の情報処理装置。
【請求項６】
表示装置の画面に表示されたオブジェクトに対する拡大の指示に基づいて、拡大率を算出し、
前記拡大率を示す拡大率情報を含む拡大指示情報と、前記オブジェクトの表示に関するオブジェクト情報を含む描画データとに基づいて、前記描画データにおける複数のオブジェクトを、互いに重ならない状態で拡大する拡大処理を実行し、
拡大した前記オブジェクトに関するオブジェクト情報を含む拡大済描画データに基づいて、前記表示装置の画面に拡大したオブジェクトを表示する
表示拡大方法。
【請求項７】
前記拡大処理において、前記オブジェクトの中心の位置関係を維持する
請求項６記載の表示拡大方法。
【請求項８】
前記拡大処理の前に、前記オブジェクトを、前記画面における各座標軸に対して平行な２本の線分によって挟むことにより、前記画面を複数のエリアに分割するエリア分割処理を実行し、
前記拡大処理の実行による前記オブジェクトの拡大の結果、前記オブジェクトを含むエリア間の位置関係を維持する範囲に収まるように制御する
請求項６または７記載の表示拡大方法。
【請求項９】
表示装置の画面に表示されたオブジェクトに対する拡大の指示に基づいて、拡大率を算出し、前記拡大率を示す拡大率情報を含む拡大指示情報を生成する入力制御処理と、
前記拡大率情報と、前記オブジェクトの表示に関するオブジェクト情報を含む描画データとに基づいて、前記描画データにおける複数のオブジェクトを、互いに重ならない状態で拡大する拡大処理と、
拡大した前記オブジェクトに関するオブジェクト情報を含む拡大済描画データに基づいて前記表示装置の画面に拡大したオブジェクトを表示する表示制御処理と
を情報処理装置に実行させるコンピュータ・プログラム。
【請求項１０】
前記拡大処理の前に、前記オブジェクトを、前記画面における各座標軸に対して平行な２本の線分によって挟むことにより、前記画面を複数のエリアに分割するエリア分割処理を実行し、
前記拡大処理の実行による前記オブジェクトの拡大の結果、前記オブジェクトを含むエリア間の位置関係を維持する範囲に収まるように制御する制御処理を実行する
請求項９記載のコンピュータ・プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置（コンピュータ）を用いたホワイトボードシステム等における表示を拡大する技術に関する。
【背景技術】
【０００２】
ネットワークやコンピュータの発展に伴い、物理的なホワイトボードの代替として、仮想的に共有するホワイトボードに対して、利用者が端末から各種オブジェクトを書き込み、複数端末によって当該ホワイトボードを画面で共有できるホワイトボードシステムが存在する。ホワイトボードシステムにおいては、利用者が端末を操作することにより、テキストや矩形、円、直線、および矢印などのオブジェクトをホワイトボードに配置することができる。
【０００３】
また、近年、携帯端末の発展に伴い、小さな画面においてもそれらのホワイトボードを表示するというニーズがある。この場合、携帯端末の画面サイズが小さいという特性により、テキストのフォントも小さくなるなどという理由で、ホワイトボード表示の視認性は、必ずしも良くない。したがって、ホワイトボードシステムにおいては、拡大表示機能が提供されていることが多い。
【０００４】
拡大表示方法には、例えば、利用者が指定した座標等を中心として、ホワイトボード画面を拡大表示する方法が知られている。この方法においては、ホワイトボードのうち、利用者が所望した部分が、オブジェクト、および、オブジェクト外の余白も含めて均等に拡大表示される。これは、例えるならば、紙面の文字を拡大鏡によって拡大表示することを、電子的な画面において実現する方法と言える。なお、この拡大表示方法においては、拡大前の画面における拡大範囲の外側の一部分が、拡大後の画面においては入りきれないので、表示されなくなる。
【０００５】
また、関連技術として、特許文献１には、電子会議システム利用者が共有画面を操作可能な複数の情報端末を保持していた場合に、各端末を有効利用できるようにする方法が開示されている。この特許文献１に記載された方法においては、まず、画像処理装置は、取得手段によって情報端末を識別するための端末情報を取得する。そして、画像処理装置は、その端末情報に基づいて、情報端末の表示能力に応じた操作画面フォーマットにより、画面構成を決定する。これにより、画像処理装置は、情報端末ごとに、共有画面操作に最適な画面構成を割り当てることができる。
【０００６】
また、特許文献２には、ネットワークを介して互いに通信可能に接続された複数の情報端末において、映像とカーソル画像を共有する方法が開示されている。この特許文献２に記載された方法においては、一方の情報端末から映像データと共にカーソル情報を配信する。そして、他方の情報端末が、そのカーソル情報から生成したカーソル画像を、映像の再生画面に合成した画像を表示装置に表示することにより、映像とカーソル画像を共有する。
【０００７】
また、特許文献３には、画像共有システムにおいて、プレゼンテーションで表示されている画像のフレームレートが低い場合であっても、マウスカーソルの動きは、なめらかに表示する方法が開示されている。この特許文献３に記載された方法においては、配信サーバ１００は、配信する画像情報、撮像データ、およびカーソル形状を、所定の手法により拡大または縮小して送信することができる。また、カーソル形状の画像の代わりに、カーソル形状の識別子を送信する場合は、配信サーバ１００は、画像データの拡大・縮小率をクライアント側に送信する。クライアント４０は、画像を拡大または縮小して表示するとともに、送信されたカーソル形状の識別子と画像データの拡大・縮小率とに基づいて、カーソルを復元する。
【０００８】
また、特許文献４には、一つの大型表示装置と複数の端末装置とを有し、共有情報表示装置として機能する各端末装置において、共同作業に参加する複数ユーザのカーソルを、当該端末装置の画面に、ユーザとの対応がわかるように表示する方法が開示されている。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】特開２００８−３１０４４３号公報
【特許文献２】特開２００７−２４９６９５号公報
【特許文献３】特開２００６−１２９１９０号公報
【特許文献４】特開２０１０−１７０３５４号公報
【発明の概要】
【発明が解決しようとする課題】
【００１０】
しかしながら、上述した拡大表示方法においては、拡大表示する前の画面に比べて、拡大表示後にはホワイトボードの一部分が画面に表示されなくなるという問題がある。すなわち、表示されなくなった部分にオブジェクトがあった場合、そのオブジェクトは、拡大することによりまったく表示されなくなる恐れがある。
【００１１】
また、特許文献１乃至４に開示された技術においては、拡大表示を行うに際して、まったく表示されなくなるオブジェクトがないようにするという点について何も考慮されていない。
【００１２】
本発明の一つの目的は、拡大表示前の画面に含まれるオブジェクトに対して、拡大することによりまったく表示されなくなるオブジェクトがないように、オブジェクトを拡大表示する情報処理装置などを提供することにある。
【課題を解決するための手段】
【００１３】
上記の目的を達成すべく、本発明に係る情報処理装置は、以下の構成を備えることを特徴とする。
【００１４】
すなわち、本発明に係る情報処理装置は、
表示装置の画面に表示されたオブジェクトに対する拡大の指示に基づいて、拡大率を算出し、前記拡大率を示す拡大率情報を含む拡大指示情報を生成する入力制御手段と、
前記拡大率情報と、前記オブジェクトの表示に関するオブジェクト情報を含む描画データとに基づいて、前記描画データにおける複数のオブジェクトを、互いに重ならない状態で拡大する拡大処理を実行し、拡大した前記オブジェクトに関するオブジェクト情報を含む拡大済描画データを生成する拡大処理手段と、
前記拡大済描画データに基づいて、前記表示装置の画面に拡大したオブジェクトを表示する表示制御手段と
を備えることを特徴とする。
【００１５】
また、上記の同目的を達成すべく、本発明に係る表示拡大方法は、情報処理装置によって、
表示装置の画面に表示されたオブジェクトに対する拡大の指示に基づいて、拡大率を算出し、
前記拡大率を示す拡大率情報を含む拡大指示情報と、前記オブジェクトの表示に関するオブジェクト情報を含む描画データとに基づいて、前記描画データにおける複数のオブジェクトを、互いに重ならない状態で拡大する拡大処理を実行し、
拡大した前記オブジェクトに関するオブジェクト情報を含む拡大済描画データに基づいて、前記表示装置の画面に拡大したオブジェクトを表示する
ことを特徴とする。
【００１６】
また、同目的は、上記の各構成を有する情報処理装置、並びに表示拡大方法を、コンピュータによって実現するコンピュータ・プログラム、及びそのコンピュータ・プログラムが格納されている、コンピュータ読み取り可能な記憶媒体によっても達成される。
【発明の効果】
【００１７】
本発明には、拡大表示前の画面に含まれるオブジェクトに対して、拡大することにより表示されなくなるオブジェクトがないように、オブジェクトを拡大表示することができるという効果がある。
【図面の簡単な説明】
【００１８】
【図１】本発明の第１の実施形態に係る端末装置１の構成を示すブロック図である。
【図２】本発明の第２の実施形態に係る構成の一例で、端末装置１００と、それに接続する入力装置１１０および表示装置１１１を示すブロック図である。
【図３】第２の実施形態において端末装置１００が行う拡大動作を示すフローチャートである。
【図４】第２の実施形態におけるオブジェクトを含む画面の一例を示す図である。
【図５】本発明の第３の実施形態に係る共有ホワイトボードシステムの構成を示すブロック図である。
【図６】共有ホワイトボード機能における位置表示画像と拡大後のオブジェクトとの位置関係に関する問題を説明するイメージ図である。
【図７】第３の実施形態に係る端末装置３００が行う拡大動作を示すフローチャートである。
【図８】第３の実施形態に係る端末装置３００が行う位置表示画像の共有表示機能における送信動作を示すフローチャートである。
【図９】第３の実施形態に係る端末装置３１０が行う位置表示画像の共有表示機能における受信動作を示すフローチャートである。
【図１０】第３の実施形態における拡大動作を説明する画面イメージの一例を示す図である。
【図１１】第３の実施形態における拡大動作を説明する画面イメージの一例を示す図である。
【図１２】第３の実施形態において位置表示画像の座標を共有した際の送信側及び受信側における画面の一例を示す図である。
【図１３】第３の実施形態において新規オブジェクトを追加した際の画面の一例を示す図である。
【図１４】第３の実施形態において座標の一部が重なっている２つのオブジェクトを含む画面を拡大した際の画面の一例を示す図である。
【図１５】第３の実施形態の変形例１において一部が重複する２つのオブジェクトを含む画面を拡大した際の画面の一例を示す図である。
【図１６】第３の実施形態の変形例１において近接している２つのオブジェクトを含む画面を拡大した際の画面の一例を示す図である。
【図１７】第３の実施形態の変形例２において、拡大の結果、帯状に連なった余白のエリアに対して、オブジェクトの表示位置を変更した画面の一例を示す図である。
【図１８】本発明の各実施形態に適用可能なコンピュータの構成を例示する図である。
【発明を実施するための形態】
【００１９】
次に、本発明の実施形態について図面を参照して詳細に説明する。
【００２０】
＜第１の実施形態＞
図１は、本発明の第１の実施形態に係る端末装置１の構成を示すブロック図である。図１を参照すると、本実施形態に係る端末装置１は、表示制御部２、入力制御部３、および拡大処理部４を有する。端末装置１は、本発明に係る情報処理装置を実現する装置の一例である。
【００２１】
端末装置１は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ：図示せず）を用いて実行されるコンピュータ・プログラム（ソフトウェア・プログラム）の制御により動作する一般的なコンピュータによって構成されても良い。または、端末装置１の各部が、専用のハードウェアデバイスあるいは論理回路で構成されても良い。なお、この端末装置１をコンピュータによって実現したハードウェア構成例については、図１８を参照して後述する。
【００２２】
また、本実施形態において、利用者は、端末装置１に対して、例えば、図示しない表示装置の画面にあらかじめ表示されたオブジェクトの拡大を指示することを前提とする。オブジェクトとは、例えば、テキストや矩形、円、直線、矢印のような、図示しない表示装置の画面等（以下、「画面等」を、単に「画面」と言う。）に表示される描画要素である。また、オブジェクトは、例えば、動画再生ソフトによって出力される動画、および、ワープロソフトによって出力される文書の表示のような、アプリケーションによって出力される画像等であってもよい。
【００２３】
入力制御部３は、利用者に対して、オブジェクトに対する拡大の指示（拡大指示）６を入力可能とする。なお、以下では、拡大指示６を入力する動作を「拡大操作」とも言う。利用者は、入力制御部３が制御する、図示しない入力デバイスを用いて、拡大操作を行う。例えば、利用者は、マウスなどのポインティングデバイス（入力デバイス）を用いて、図示しない表示装置の画面に表示されている何れかのオブジェクトの縁ををクリック（選択）し、そのまま所望の大きさになるまでドラッグ操作を行うことにより拡大操作を行ってもよい。または、利用者は、例えば、マウス等によって、図示しない表示装置の画面に表示された拡大ボタンを押し、さらに、キーボードから所望の拡大率を入力するなど、複数の入力デバイスを用いて拡大操作を行ってもよい。拡大操作の方法は、上述した方法に限定されない。入力制御部３は、いずれの拡大操作の方法の場合においても、その拡大操作に基づいて、少なくとも利用者が所望する拡大率を算出する。
【００２４】
また、入力制御部３は、利用者から受けた拡大指示６に関する拡大指示情報を、拡大処理部４に対して出力する。拡大指示情報は、少なくとも拡大率を示す拡大率情報を含む。
【００２５】
拡大処理部４は、オブジェクトの表示に関する情報（オブジェクト情報）を含む描画データ５を取得する。描画データ５とは、例えば、図示しない表示装置において画面を表示する際に必要な各種情報を含むデータである。すなわち、描画データ５は、画面に含まれるすべてのオブジェクトに関するオブジェクト情報を含む。また、オブジェクト情報は、少なくとも、オブジェクトの表示位置（画面における座標）を示す配置情報、および、オブジェクトのサイズを表すサイズ情報を含む。オブジェクト情報は、他にも、例えば、オブジェクトの形状を表す形状情報、画像のビットマップ情報、および、色を表す色情報などを含むことができる。
【００２６】
拡大処理部４は、描画データ５を図示しない外部装置からネットワークを経由して受信し、受信した描画データ５を図示しない記憶デバイスに記録することにより、取得してもよい。または、拡大処理部４は、描画データ５を、内部バスを経由して図示しない記憶デバイスから読み出すことにより、取得してもよい。また、拡大処理部４は、描画データ５を、図示しない入力デバイスを用いた操作入力に基づいて入力することによって取得してもよい。
【００２７】
さらに、拡大処理部４は、入力制御部３から受けた拡大指示情報に基づいて、描画データ５に含まれる各オブジェクトを、拡大する。その際、拡大処理部４は、描画データ５における複数のオブジェクトを、互いに重ならない状態で拡大する。特に、拡大処理部４は、描画データ５における複数のオブジェクトが重なり合わない場合は、それら複数のオブジェクトを、互いに重ならない状態で拡大することが好ましい。また、描画データ５における一部のオブジェクトが重なり合っている場合には、その重なりを状態を維持しつつ、他のオブジェクトと重ならない状態で拡大することが好ましい。すなわち、拡大処理部４は、描画データ５に含まれるオブジェクト情報に基づいて、拡大指示情報に含まれる拡大率情報にしたがって、離れて配置されているオブジェクトが重ならない範囲において、各オブジェクトを均等に拡大する。さらに、拡大処理部４は、拡大した各オブジェクトに関するオブジェクト情報を含む「拡大済描画データ」を生成する。拡大処理部４は、生成した拡大済描画データを表示制御部２に対して出力する。
【００２８】
表示制御部２は、拡大処理部４から受けた拡大済描画データに基づいて、図示しない表示装置に対して出力することにより、画面に拡大したオブジェクトを含む画面を表示する。表示装置は、表示制御部２に内蔵しても良いし、外付けであっても良い。
【００２９】
以上説明したように、本実施形態には、拡大表示前の画面に含まれるオブジェクトに対して、拡大することによりまったく表示されなくなるオブジェクトがないように、オブジェクトを拡大表示することができるという効果がある。
【００３０】
その理由は、拡大処理部４が、画面全体ではなく、オブジェクトだけを拡大するからである。すなわち、拡大処理部４は、オブジェクトが表示されていない部分である余白を削減することにより、オブジェクトの拡大に伴って必要となる表示面積を作り出すからである。
【００３１】
＜第２の実施形態＞
次に、上述した第１の実施形態を基本とする第２の実施形態について説明する。以下では、第２の実施形態に係る特徴的な部分を中心に説明し、第１の実施形態と同様な構成を有する第２の実施形態の構成要素には、第１の実施形態で付した参照符号と同一の参照符号を付し、その構成要素について重複する詳細な説明は省略する。
【００３２】
本実施形態では、入力装置１１０を用いた操作入力に基づいて、画面にオブジェクトを配置することができる画像生成部１０１を有し、第１の実施形態における描画データ５を生成する点が、上述した第１の実施形態と異なる。
【００３３】
まず、図２を参照して、以下に本実施形態の構成を説明する。図２は、本発明の第２の実施形態に係る端末装置１００の構成を示すブロック図である。
【００３４】
図２を参照すると、本実施形態は、端末装置１００、入力装置１１０、および表示装置１１１によって構成される。
【００３５】
端末装置１００は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ：図示せず）を用いて実行されるコンピュータ・プログラム（ソフトウェア・プログラム）の制御により動作する一般的なコンピュータによって構成されても良い。または、端末装置１００の各部が、専用のハードウェアデバイスあるいは論理回路で構成されても良い。なお、この端末装置１００をコンピュータによって実現したハードウェア構成例については、図１８を参照して後述する。
【００３６】
端末装置１００は、画像生成部１０１、表示制御部２、入力制御部３、および拡大処理部４を有する。
【００３７】
画像生成部１０１は、利用者が入力装置１１０を用いて入力操作することにより、表示装置１１１の画面にオブジェクトを追加、変更、または削除することを可能とする。すなわち、本実施形態においては、画像生成部１０１が、第１の実施形態における描画データ５を生成する。画像生成部１０１は、生成した描画データ５を表示制御部２に対して出力する。
【００３８】
本実施形態における表示制御部２、入力制御部３、および拡大処理部４の各構造と内容は、以下の点を除いて、上述した第１の実施形態を基本とする。
【００３９】
表示制御部２は、本実施形態において、描画データ５を画像生成部１０１から取得し、取得した描画データ５を、表示装置１１１の画面に表示する。また、表示制御部２は、取得した描画データ５を、図示しない記憶デバイスに記憶する。
【００４０】
入力制御部３は、本実施形態において、利用者が入力装置１１０を用いて拡大指示６を入力すること（拡大操作）を可能とする。また、本実施形態では、拡大率情報は、一例として、拡大する割合を％単位で示した数値として表す。入力制御部３は、第１の実施形態と同様に、利用者からの拡大指示６に関する拡大指示情報を、拡大処理部４に対して出力する。
【００４１】
拡大処理部４は、本実施形態において、表示制御部２が記憶した記憶デバイスから、描画データ５を読み出すことにより、描画データ５を取得する。また、拡大処理部４は、拡大処理の際に、オブジェクトの位置関係を維持する。ここで、オブジェクトの位置関係とは、画面のような２次元の場合、例えば、上、下、左、右、左上、右上、左下、および、右下のように表したオブジェクト同士の配置場所における関係性である。本実施形態では、拡大処理部４は、一例として、オブジェクトの中心（中心座標）の位置関係を維持することによって、オブジェクトの位置関係を維持する。
【００４２】
以上、本実施形態における表示制御部２、入力制御部３、および拡大処理部４の各構造と内容は、上述した点以外は第１の実施形態と同様であるので、重複する詳細な説明は省略する。
【００４３】
入力装置１１０は、端末装置１００と通信可能に接続された入力デバイスである。入力装置１１０は、利用者から、端末装置１００に対する、オブジェクト入力等の操作、および、拡大操作等の入力を可能とする。入力装置１１０は、マウスなどのポインティングデバイス、キーボード、または、タッチパネルなどにより実現される。
【００４４】
表示装置１１１は、端末装置１００と通信可能に接続された表示装置である。表示装置１１１は、表示制御部２から出力される描画データを利用者に対して提示（表示）することができる。表示装置１１１は、画面を有するディスプレイ装置、画像を外部のスクリーンなどに投影するプロジェクタ、または、タッチパネルなどにより実現される。
【００４５】
次に、上述した構成を備える本実施形態の動作について詳細に説明する。
【００４６】
初めに、以下の説明における前提条件を述べる。
【００４７】
まず、画像生成部１０１は、あらかじめ、利用者からの入力装置１１０を用いた入力操作に応じて描画データ５を生成し、その描画データ５を表示制御部２に対して出力済みであることとする。そして、表示制御部２は、図４に示す画面２００Ａのような画面を、表示装置１１１を用いて表示している状態であることとする。図４は、第２の実施形態におけるオブジェクトを含む画面の一例を示す図である。図４は、拡大前の画面を示す画面２００Ａ、および、拡大後の画面を示す画面２００Ｂを含む。画面２００Ａには、矩形のオブジェクト２０１Ａを含む、３つのオブジェクトが、配置されている。画面２００Ｂには、矩形のオブジェクト２０１Ａを拡大した結果であるオブジェクト２０１Ｂを含む、拡大後の３つのオブジェクトが、配置されている。
【００４８】
また、本実施形態において、描画データ５に含まれるオブジェクト情報は、一例として、オブジェクトの形状を表す形状情報、オブジェクトの表示位置（画面における座標）を示す配置情報、サイズを表すサイズ情報を含む。
【００４９】
また、本実施形態において、入力装置１１０は、一例として、マウスを前提とする。さらに、本実施形態において、表示装置１１１は、画面を有するディスプレイを前提とする。
【００５０】
以下に説明する拡大動作は、利用者が、ディスプレイ（表示装置１１１）に表示された図４に示す画面２００Ａのような画面を参照しながら、マウス（入力装置１１０）を用いて拡大操作を行うことにより始まる。
【００５１】
以下に、図３を参照して、このような前提条件における詳細な動作を説明する。図３は、第２の実施形態において端末装置１００が行う拡大動作を示すフローチャートである。
【００５２】
まず、入力制御部３は、利用者が入力装置１１０を用いて行う拡大操作によって、拡大指示６の入力を受ける（ステップＳ１００）。具体的には、利用者は、例えば、マウス（入力装置１１０）を用いて、図４の画面２００Ａに含まれる何れかのオブジェクトをクリック（選択）し、さらに、そのまま所望の大きさになるまでドラッグ操作を行った後、マウスのボタンを放すことにより拡大指示６を入力する。このとき、入力制御部３は、ドラッグ操作によってマウスが移動した距離に基づいて、拡大率を算出する。具体例として、利用者は、画面２００Ａにおけるオブジェクト２０１Ａをクリックし、さらに画面２００Ｂにおけるオブジェクト２０１Ｂの大きさになるまでドラッグ操作を行ったこととする。入力制御部３は、オブジェクト２０１Ａのサイズとマウスの移動距離とから、例えば、拡大率を「ａ」と算出する。そして、入力制御部３は、拡大率情報である「ａ」という値を含む拡大指示情報を拡大処理部４に対して出力する。
【００５３】
次に、拡大処理部４は、入力制御部３から受けた拡大指示情報に基づいて、描画データ５に含まれる各オブジェクトを、その中心座標を固定しながら拡大する（以下、「拡大処理」と言う）（ステップＳ１０１）。具体的には、拡大処理部４は、まず、表示制御部２から、図４の画面２００Ａに対応する描画データ５を取得する。そして、拡大処理部４は、画面２００Ａに含まれる３つのオブジェクトのそれぞれに対し、中心座標を固定しながら、拡大指示情報に含まれる拡大率情報に基づいて、「ａ」倍に拡大する。すなわち、拡大処理部４は、中心座標２１０を中心とするオブジェクト２０１Ａのサイズを拡大率情報に従って「ａ」倍したオブジェクト２０１Ｂを、同じ中心座標２１０を中心として、配置する。拡大処理部４は、画面２００Ａに含まれる他の２つのオブジェクトに対しても同様に、上述した拡大処理を行う。このような拡大処理の結果は、図４の画面２００Ｂに図示する通りである。
【００５４】
すなわち、拡大処理部４は、画面２００Ａに含まれるオブジェクトを、同じ拡大率で均等に拡大する。また、各オブジェクトは、拡大前の中心座標を維持したまま拡大されるので、拡大前の画面２００Ａに含まれるオブジェクトが、拡大後の画面２００Ｂにおいても含まれる。拡大処理部４は、拡大処理の結果として、拡大された３つのオブジェクトに関するオブジェクト情報を含む拡大された描画データ５（拡大済描画データ）を表示制御部２に対して出力する。
【００５５】
なお、拡大処理部４は、本実施形態において、中心の位置関係を維持する方法の一例として、中心座標を固定して拡大処理を行ったが、必ずしも中心座標を固定しなくてもよい。すなわち、拡大処理部４は、オブジェクトの中心の位置関係を維持していれば、オブジェクトの中心をずらすことにより、さらに余白を活用してもよい。
【００５６】
最後に、表示制御部２は、拡大処理部４から渡された拡大済描画データを、表示装置１１１に表示する（ステップＳ１０２）。具体的には、表示装置１１１は、画面２００Ｂのように拡大された３つのオブジェクトを含む画面を表示する。
【００５７】
このようにして、本実施形態に係る端末装置１００は、拡大前の画面において表示されていた３つのオブジェクトを拡大処理後の画面においても表示しながら、各オブジェクトを拡大表示することができる。
【００５８】
以上説明したように、本実施形態には、上述した第１の実施形態と同様の効果に加えて、さらに拡大前におけるオブジェクト同士の位置関係を、拡大後も維持できるという効果もある。ここで、オブジェクト同士の位置関係とは、画面のような２次元の場合、例えば、上、下、左、右、左上、右上、左下、および、右下のように表したオブジェクト同士の配置場所における関係性である。このオブジェクト同士の位置関係が維持できるという特性により、本実施形態における拡大方法は、オブジェクト同士の位置関係が重要な意味を持つ、ホワイトボード機能などに適する。
【００５９】
その理由は、拡大処理部４が、各オブジェクトの中心の位置関係を維持して、各オブジェクトを拡大するからである。また、拡大処理部４が、同じ拡大率に基づいて、各オブジェクトを拡大するからである。
【００６０】
＜第３の実施形態＞
次に、上述した第１および第２の実施形態を基本とする第３の実施形態について説明する。以下では、第３の実施形態に係る特徴的な部分を中心に説明し、第１または第２の実施形態と同様な構成を有する第３の実施形態の構成要素には、第１または第２の実施形態で付した参照符号と同一の参照符号を付し、その構成要素について重複する詳細な説明は省略する。
【００６１】
本実施形態は、仮想的な画面（ホワイトボード）を複数の端末において共有することが可能なホワイトボード機能（共有ホワイトボード機能）などに対して、本発明を適用した実施形態である。一般に、共有ホワイトボード機能においては、各種オブジェクトの他に、マウスカーソルなどの位置表示画像を配置することにより、特定の注目場所を相手に示すこと、および、操作の対象としている部分を知らせることなどが可能である。本実施形態においては、「位置表示画像」の一例として、「マウスカーソル」（以下、単に「カーソル」とも言う）を用いる。
【００６２】
しかし、共有ホワイトボード機能に対して、上述した第１または第２の実施形態における拡大方法を適用した場合、位置表示画像の配置をそのまま変更しなければ、図６に示すように、位置表示画像と拡大後のオブジェクトとの位置関係がずれるという問題が発生する。図６は、共有ホワイトボード機能における位置表示画像と拡大後のオブジェクトとの位置関係に関する問題を説明するイメージ図である。図６を参照すると、共有ホワイトボードの画面の一例である画面５００Ａは、楕円の図形であるオブジェクト５０１Ａと、位置表示画像の一例であるマウスカーソル５０２Ａと、マウスカーソル５０２Ａを移動させた跡を繋いだ「マウスカーソルの軌跡」５０３Ａとを含む。マウスカーソルの軌跡５０３Ａは、オブジェクト５０１Ａの外側を囲んでいる。また、マウスカーソル５０２Ａは、オブジェクト５０１Ａの左下に離れて表示されている。
【００６３】
一方、画面５００Ｂは、この画面５００Ａを第１または第２の実施形態における拡大方法によって拡大した後の画面である。画面５００Ｂにおいて、オブジェクト５０１Ａを拡大した結果であるオブジェクト５０１Ｂが、表示されている。また、画面５００Ｂにおいては、マウスカーソル５０２Ｂ、およびマウスカーソルの軌跡５０３Ｂが、拡大前と同じ座標位置と大きさで表示されている。マウスカーソルの軌跡５０３Ｂは、画面を拡大した結果、オブジェクト５０１Ｂの内側に入ってしまっている。また、マウスカーソル５０２Ｂも、オブジェクト５０１Ｂの枠に接している。すなわち、マウスカーソルの軌跡５０３Ｂとマウスカーソル５０２Ｂは、共有ホワイトボード画面全体に対する位置と、各オブジェクトの中心座標に対する位置は変わっていないが、拡大後のオブジェクトの総体（外枠）に対する位置関係が崩れてしまっている。共有ホワイトボード機能において、注目している部分を指し示すなどの役割を持つ位置表示画像がずれることは、大きな問題である。本実施形態は、位置表示画像と拡大後のオブジェクトとの位置関係を維持することができる。
【００６４】
なお、本実施形態は、ホワイトボード機能に限らず、画面等において特定の位置を表示することを必要とする機能であれば適用可能である。
【００６５】
［構成の説明］
まず、図５を参照して、以下に本実施形態の構成を説明する。図５は、本発明の第３の実施形態に係る共有ホワイトボードシステムの構成を示すブロック図である。
【００６６】
図５を参照すると、本実施形態は、端末装置３００、端末装置３１０、入力装置３２０、表示装置３２１、入力装置３３０、表示装置３３１、および共有サーバ４００によって構成される。
【００６７】
端末装置３００、端末装置３１０、および共有サーバ４００は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ：図示せず）を用いて実行されるコンピュータ・プログラム（ソフトウェア・プログラム）の制御により動作する一般的なコンピュータによって構成されても良い。または、端末装置３００、端末装置３１０、および共有サーバ４００の各部が、専用のハードウェアデバイスあるいは論理回路で構成されても良い。なお、この端末装置３００、端末装置３１０、および共有サーバ４００をコンピュータによって実現したハードウェア構成例については、図１８を参照して後述する。
【００６８】
また、端末装置３００、端末装置３１０、および共有サーバ４００は、それぞれインターネットや構内ＬＡＮ（ローカルエリアネットワーク）等の通信ネットワーク（以下、単にネットワークと称する。）１０００を介して通信可能である。
【００６９】
端末装置３００は、ホワイトボード情報通信部３０１、ホワイトボード表示制御部３０２、入力制御部３０３、拡大処理部３０４、位置表示画像（カーソル）座標通信部３０５、および、位置表示画像（カーソル）座標計算部３０６を有する。
【００７０】
本実施形態におけるホワイトボード情報通信部３０１、ホワイトボード表示制御部３０２、入力制御部３０３、および拡大処理部３０４の各構造と内容は、以下の点を除いて、上述した第１または第２の実施形態を基本とする。
【００７１】
ホワイトボード情報通信部３０１は、第２の実施形態における画像生成部１０１に対応する。本実施形態において、ホワイトボード情報通信部３０１は、共有サーバ４００から描画データ５を受信することにより、描画データ５を取得する。ホワイトボード情報通信部３０１は、取得した描画データ５を、ホワイトボード表示制御部３０２に対して出力する。
【００７２】
ホワイトボード表示制御部３０２は、第１および第２の実施形態における表示制御部２に対応する。ホワイトボード表示制御部３０２は、本実施形態において、描画データ５をホワイトボード情報通信部３０１から取得し、取得した描画データ５を、表示装置３２１の画面に表示する。
【００７３】
入力制御部３０３は、第１および第２の実施形態における入力制御部３に対応する。入力制御部３０３は、本実施形態において、利用者が入力装置３２０を用いて拡大指示６を入力することを可能とする。また、入力制御部３０３は、利用者から入力された拡大指示６に関する拡大指示情報を拡大処理部３０４に対して出力する。
【００７４】
拡大処理部３０４は、第１および第２の実施形態における拡大処理部４に対応する。拡大処理部３０４は、本実施形態においても、入力制御部３０３から受けた拡大指示情報に基づいて、ホワイトボード表示制御部３０２から取得した描画データ５に含まれる各オブジェクトに対する拡大処理を行う。ただし、拡大処理部３０４は、第１および第２の実施形態における拡大処理部４が実施する上記拡大処理の前後に、新たな処理を行う。すなわち、拡大処理部３０４は、上記拡大処理の前に、各オブジェクトを、画面における各座標軸に対して平行な２本の線分によって挟むことにより、画面を複数のエリアに分割する。また、拡大処理部３０４は、上記拡大処理の後に、オブジェクトを含むエリア同士の位置関係を評価することにより、拡大処理による拡大の結果がエリアの位置関係を維持する範囲に収まるように制御する。
【００７５】
入力装置３２０は、第２の実施形態における入力装置１１０に対応する。入力装置３２０は、利用者から、端末装置３００に対する、オブジェクト入力等の操作、カーソルの移動、および、拡大操作等の入力を可能とする。
【００７６】
表示装置３２１は、第２の実施形態における表示装置１１１に対応する。表示装置３２１は、ホワイトボード表示制御部３０２から出力される描画データを利用者に対して提示（表示）することができる。
【００７７】
以上、本実施形態におけるホワイトボード情報通信部３０１、ホワイトボード表示制御部３０２、入力制御部３０３、拡大処理部３０４、入力装置３２０、および表示装置３２１の各構造と内容は、上述した点以外は第１または第２の実施形態と同様であるので、重複する詳細な説明は省略する。
【００７８】
カーソル座標計算部３０６は、送信動作に際しては、ホワイトボード表示制御部３０２から取得した画面に関する情報に基づいて、画面におけるカーソルの実座標を、カーソルが表示されているエリアにおけるエリア内座標に変換（計算）する。そして、カーソル座標計算部３０６は、計算したカーソルのエリア内座標を表すエリア内座標情報をカーソル座標通信部３０５に対して出力する。
【００７９】
また、カーソル座標計算部３０６は、受信動作に際しては、カーソル座標通信部３０５から受け取ったエリア内座標情報に基づいて、画面における実座標に変換（計算）する。そして、カーソル座標計算部３０６は、計算したカーソルの実座標を示す実座標情報を、ホワイトボード表示制御部３０２に対して出力する。ホワイトボード表示制御部３０２は、受け取った実座標情報に基づいて、表示装置３２１の画面にカーソルを表示する。
【００８０】
なお、本実施形態において、カーソル座標計算部３０６は、送信動作と受信動作とを両方実行可能としたが、カーソル座標計算部３０６は、少なくともどちらか一方の動作を実行可能であればよい。
【００８１】
カーソル座標通信部３０５は、送信動作に際しては、カーソル座標計算部３０６から受け取ったカーソルのエリア内座標情報を、共有サーバ４００に対して送信する。
【００８２】
また、カーソル座標通信部３０５は、受信動作に際しては、共有サーバから他の端末装置におけるカーソルのエリア内座標情報を受信し、受信したエリア内座標情報をカーソル座標計算部３０６に対して出力する。
【００８３】
なお、本実施形態において、カーソル座標通信部３０５は、送信動作と受信動作とを両方実行可能としたが、カーソル座標通信部３０５は、少なくともどちらか一方の動作を実行可能であればよい。また、カーソル座標通信部３０５とホワイトボード情報通信部３０１とは、それぞれ別々の通信手段でも、同じ１つの通信手段であってもよい。
【００８４】
端末装置３１０は、端末装置３００と同様の構成を有する。すなわち、端末装置３１０は、ホワイトボード情報通信部３１１、ホワイトボード表示制御部３１２、入力制御部３１３、拡大処理部３１４、位置表示画像（カーソル）座標通信部３１５、および、位置表示画像（カーソル）座標計算部３１６を有する。端末装置３１０における各部の機能、および構成は、端末装置３００における同名の各部と同様であるので、端末装置３１０における各部に対する詳細な説明は省略する。また、端末装置３１０は、入力装置３３０、および、表示装置３３１と通信可能に接続されている。入力装置３３０の機能と構成は、入力装置３２０と同様であるので、入力装置３３０に対する詳細な説明は省略する。また、表示装置３３１の機能と構成は、表示装置３２１と同様であるので、表示装置３３１に対する詳細な説明は省略する。
【００８５】
共有サーバ４００は、ホワイトボード情報共有部４１１、および、位置表示画像（カーソル）座標共有部４１２を有する。
【００８６】
ホワイトボード情報共有部４１１は、端末装置３００におけるホワイトボード情報通信部３０１と、端末装置３１０におけるホワイトボード情報通信部３１１とに対して、描画データ５を送信する。ホワイトボード情報共有部４１１は、描画データ５を図示しない外部装置、端末装置３１０、または、端末装置３１１等からネットワークを経由して受信し、受信した描画データ５を記憶デバイスに記録することにより、取得してもよい。または、ホワイトボード情報共有部４１１は、描画データ５を、内部バスを経由して図示しない記憶デバイスから読み出すことにより、取得してもよい。ホワイトボード情報共有部４１１は、取得した描画データ５を、図示しない記憶デバイス等に保持してもよい。
【００８７】
カーソル座標共有部４１２は、端末装置３００におけるカーソル座標通信部３０５、および、端末装置３１０におけるカーソル座標通信部３１５から、カーソルのエリア内座標情報を受信することができる。そして、カーソル座標共有部４１２は、受信したカーソルのエリア内座標情報を、他の端末装置に対して送信する。すなわち、カーソル座標共有部４１２は、端末装置３００から受信した座標情報を、端末装置３１０に対して送信する。その反対に、カーソル座標共有部４１２は、端末装置３１０から受信した座標情報を、端末装置３００に対して送信する。
【００８８】
なお、本実施形態において、端末装置は、一例として、２台で構成している。しかし、本実施形態を実現可能な端末装置の数は、これに限定されない。共有サーバ４００における各部は、さらに多くの端末装置に対して、上述した機能を実行することが可能である。
【００８９】
次に、上述した構成を備える本実施形態の動作について詳細に説明する。本実施形態において、動作は、ホワイトボード（画面）の拡大動作と、その拡大された画面における位置表示画像（カーソル）の共有表示機能を実現する動作の２つある。
【００９０】
［拡大処理の動作の説明］
まず、以下に、具体例として、端末装置３００における拡大動作について説明する。なお、本実施形態における拡大動作は、第２の実施形態における拡大動作を基本とする。したがって、以下において、第２の実施形態と同様の動作に関しては、重複する詳細な説明は省略する。
【００９１】
初めに、以下の説明における前提条件を述べる。
【００９２】
まず、端末装置３００において、ホワイトボード情報通信部３０１は、あらかじめ、共有サーバ４００におけるホワイトボード情報共有部４１１から描画データ５を受信し、その受信した描画データ５をホワイトボード表示制御部３０２に対して出力済みであることとする。そして、ホワイトボード表示制御部３０２は、図１０に示す画面５１０Ａのような画面を、表示装置３２１を用いて表示している状態であることとする。図１０は、第３の実施形態における拡大動作を説明する画面イメージの一例を示す図である。図１０は、拡大前の画面を示す画面５１０Ａ、拡大処理におけるエリア分割を行った内部的な画面イメージを表す画面５１０Ｂ、および、拡大後の画面を示す画面５１０Ｃを含む。画面５１０Ａには、楕円形のオブジェクト５１１Ａ、および、矩形のオブジェクト５１２Ａの２つのオブジェクトが配置されている。画面５１０Ｂ、および、画面５１０Ｃの詳細については、後述する。
【００９３】
また、本実施形態において、入力装置３２０は、一例として、マウスを前提とする。さらに、本実施形態において、表示装置３２１は、画面を有するディスプレイを前提とする。
【００９４】
以下に説明する拡大動作は、利用者が、ディスプレイ（表示装置３２１）に表示された図１０に示す画面５１０Ａのような画面を参照しながら、マウス（入力装置３２０）を用いて拡大操作を行うことにより始まる。以下に、図７および図１０を参照して、このような前提条件における詳細な動作を説明する。図７は、第３の実施形態に係る端末装置３００が行う拡大動作を示すフローチャートである。
【００９５】
まず、入力制御部３０３は、利用者が入力装置３２０を用いて行う拡大操作によって、拡大指示６の入力を受ける（ステップＳ２００）。本ステップにおける入力制御部３０３の動作は、第２の実施形態におけるステップＳ１００における入力制御部３の動作と同様である。すなわち、入力制御部３０３は、拡大率を「ａ」と算出し、算出した拡大率を示す拡大率情報を含む拡大指示情報を拡大処理部３０４に対して出力する。第２の実施形態と重複する詳細な説明は、省略する。
【００９６】
次に、拡大処理部３０４は、画面に含まれる各オブジェクトを、各座標軸に対して平行な２本の線分によって挟む。これにより、拡大処理部３０４は、画面を複数のエリア（領域）に分割する（ステップＳ２０１）。以下、このステップＳ２０１における拡大処理部３０４の動作を「エリア分割」と言う。なお、本実施形態の場合、座標軸は、画面の水平方向に対応する「水平軸」と、画面の垂直方向に対応する「垂直軸」の２つの軸がある。なお、表示装置３２１が、３次元の立体を表示することができる場合であれば、座標軸は３つの軸を含む。
【００９７】
図１０における画面５１０Ｂを参照して、以下に、エリア分割動作の具体例を説明する。
【００９８】
まず、拡大処理部３０４は、垂直軸に対して平行な線分６００Ｘ、および線分６０１Ｘを、オブジェクト５１１Ａに接するように配置する。次に、拡大処理部３０４は、水平軸に対して平行な線分６１０Ｙ、および線分６１１Ｙを、オブジェクト５１１Ａに接するように配置する。このとき、線分６００Ｘ、６０１Ｘ、６１０Ｙ、および６１１Ｙの各端点は、画面の一方の端、および他方の端にある。同様に、拡大処理部３０４は、オブジェクト５１２Ａに対しても、４本の線分を配置する。すなわち、拡大処理部４０３は、垂直軸に対して平行な線分６０２Ｘ、および線分６０３Ｘ、並びに、水平軸に対して平行な線分６１２Ｙおよび線分６１３Ｙを、オブジェクト５１２Ａに接するように配置する。本実施形態では、こうして配置された８本の線分と、画面の枠とによって、分割された画面の各領域を「エリア」と言う。このようにして、拡大処理部３０４は、画面５１０Ｂに示す具体例において、画面を２５のエリアに分割する。
【００９９】
次に、拡大処理部３０４は、入力制御部３０３から受けた拡大指示情報に基づいて、描画データ５に含まれる各オブジェクトを、その中心座標を固定しながら拡大する（ステップＳ２０２）。本ステップにおける拡大処理部３０４の動作は、各オブジェクトに接して配置された各線分を、オブジェクトの拡大に合わせて移動する以外は、第２の実施形態におけるステップＳ１０１における拡大処理部４の動作と同様である。すなわち、拡大処理部３０４は、オブジェクト５１１Ａ、およびオブジェクト５１２Ｂのそれぞれに対し、中心座標を固定しながら、拡大指示情報に含まれる拡大率情報に基づいて、「ａ」倍に拡大する。そして、拡大されたオブジェクトに合わせて、線分６００Ｘ、６０１Ｘ、６０２Ｘ、６０３Ｘ、６１０Ｙ、６１１Ｙ、６１２Ｙ、および６１３Ｙを、拡大された各オブジェクトに接するように移動する。このような拡大処理の結果は、画面５１０Ｃに示す通りである。なお、拡大されたオブジェクト５１１Ａが、画面５１０Ｃにおけるオブジェクト５１１Ｂである。また、拡大されたオブジェクト５１２Ａが、画面５１０Ｃにおけるオブジェクト５１２Ｂである。第２の実施形態と重複する詳細な説明は、省略する。
【０１００】
次に、拡大処理部３０４は、拡大処理の結果、各オブジェクトを含むエリア間の位置関係が維持されているかどうかを判定する（ステップＳ２０３）。エリア間の位置関係とは、本実施形態における画面のような二次元の場合、例えば、エリア間の場所における関係性であり、一方のエリアに対する他方のエリアの位置方向を上、下、左、右、左上、右上、左下、および、右下のように表した関係性である。具体的には、拡大処理部３０４は、拡大前の画面５１０Ｂにおけるオブジェクト５１１Ａを含むエリアに対する、オブジェクト５１２Ａを含むエリアの位置関係を「右下」と認識する。そして、拡大処理部３０４は、拡大処理後の画面５１０Ｃにおけるオブジェクト５１１Ｂを含むエリアに対する、オブジェクト５１２Ｂを含むエリアの位置関係も「右下」と認識する。拡大処理部３０４は、拡大前と拡大処理後とのエリア同士の位置関係が同じであることから、オブジェクト５１１Ａ（５１１Ｂ）を含むエリアと、オブジェクト５１２Ａ（５１２Ｂ）を含むエリアとの位置関係は維持されていると判定する。
【０１０１】
一方、例えば、拡大処理の結果が、図１１に示す画面５１０Ｄであった場合、拡大処理部３０４は、画面５１０Ｄにおけるオブジェクト５１１Ｃを含むエリアに対する、オブジェクト５１２Ｃの位置関係は「右下、かつ、下」であると認識する。図１１は、第３の実施形態における拡大動作を説明する画面イメージの一例を示す図である。なお、画面５１０Ｄにおけるオブジェクト５１１Ｃは、画面５１０Ｃにおけるオブジェクト５１１Ｂをさらに拡大したものである。また、画面５１０Ｄにおけるオブジェクト５１２Ｃは、画面５１０Ｃにおけるオブジェクト５１２Ｂをさらに拡大したものである。この場合、拡大処理部３０４は、拡大処理によって位置関係が「右下」から「右下、かつ、下」に変化したので、エリア同士の位置関係が維持されなかったと判定する。
【０１０２】
拡大処理部３０４が、各オブジェクトを含むエリアの位置関係が維持されているかどうかを判定する方法は、上記の他にも様々に考えられる。例えば、拡大処理部３０４は、線分を座標軸に沿って並べた座標順に基づいて、エリアの位置関係が維持されていると判断してもよい。具体的には、拡大処理部３０４は、図１０における画面５１０Ｂおよび画面５１０Ｃにおいて「線分６００Ｘ、６０１Ｘ、６０２Ｘ、６０３Ｘ」の座標順と認識する。一方、拡大処理部３０４は、拡大処理後の図１１における画面５１０Ｄにおいては「線分６００Ｘ、６０２Ｘ、６０１Ｘ、６０３Ｘ」と認識する。拡大処理部３０４は、拡大前と、拡大処理後との線分の座標順を比較することにより、線分６０１Ｘと線分６０２Ｘの順が入れ替わったことから、位置関係が維持されなかったと判定してもよい。
【０１０３】
拡大処理部３０４が、各オブジェクトを含むエリアの位置関係が維持されているかどうかを判定する方法は、画面５１０Ｂのオブジェクト５１１Ａと５１２Ａとをそれぞれ拡大したときに、それぞれのオブジェクトに隣接する線分（６０１Ｘおよび６０２Ｘ、または、６１１Ｙおよび６１２Ｙ）が重なるか否かで判定してもよい。例えば、拡大処理部３０４は、各オブジェクトの拡大により、図１０における画面５１０Ｃにおいて、線分６００Ｘと６０２Ｘとが重なることを認識する。この認識により、拡大処理部３０４は、エリアの位置関係が維持されなくなると判定する。
【０１０４】
また、他の例として、線分の重なりではなく、エリアに注目すれば、何れかの余白（オブジェクトを含まない）エリアが、消滅するところで、エリアの位置関係が維持されなくなると判定してもよい。
【０１０５】
拡大処理部３０４は、各オブジェクトを含むエリア同士の位置関係が維持されていると判定した場合は、拡大処理後のオブジェクト情報を含む拡大された描画データ５（拡大済描画データ）をホワイトボード表示制御部３０２に対して出力する。一方、拡大処理部３０４は、各オブジェクトを含むエリア同士の位置関係が維持されていないと判定した場合は、拡大処理の結果を廃棄（または拡大処理を停止）した後、そこで拡大処理を終了する。
【０１０６】
最後に、ホワイトボード表示制御部３０２は、拡大処理部３０４から渡された拡大済描画データを、表示装置３２１に表示する（ステップＳ２０４）。具体的には、表示装置３２１は、画面５１０Ｃのような画面を表示する。なお、このとき、ホワイトボード表示制御部３０２は、線分６００Ｘ、６０１Ｘ、６０２Ｘ、６０３Ｘ、６１０Ｙ、６１１Ｙ、６１２Ｙ、および６１３Ｙを表示しなくてもよい。
【０１０７】
このような拡大動作により、端末装置３００は、画面５１０Ａにおけるオブジェクトを拡大した画面５１０Ｃを表示する。なお、端末装置３１０も、上述した拡大動作を同様に実行することができる。
【０１０８】
利用者がマウスなどのドラッグによって拡大操作を行う場合、このような拡大動作をマウスの移動に伴って小刻みに繰り返してもよい。すなわち、利用者がマウスでドラッグするにしたがって、徐々に各オブジェクトが拡大されていき、各オブジェクトを含むエリア同士の位置関係が維持されていないと判定した場合に拡大を停止する。
【０１０９】
以上、説明したように、本実施形態には、上述した第１および第２の実施形態と同様の効果に加えて、さらに、共有ホワイトボード機能などにより画面を共有する端末間において、画面の拡大率を別々にすることができるという効果がある。
【０１１０】
その理由は、拡大処理部３０４が、共有サーバ４００から提供される描画データ５に基づいて、端末ごとに指定された拡大率に応じた拡大処理を行うからである。すなわち、端末が拡大率を共有サーバ４００に送る必要がないので、本実施形態における共有ホワイトボードシステムは、端末間において異なる拡大率を実現することが可能であるとも言える。
【０１１１】
［位置表示画像の共有表示機能の説明］
次に、上述した拡大動作によって拡大された画面における位置表示画像の共有表示機能を実現する動作を説明する。本実施形態において、位置表示画像は、マウスカーソル（以下、単に「カーソル」とも言う）を具体例とする。共有表示機能は、ある端末装置において、カーソルの座標を送信する送信動作を行い、その他の端末装置において、送信されたカーソルの座標を受信する受信動作を行うことによって実現される。以下の具体例は、異なる画面の拡大率である端末装置間におけるマウスカーソルの共有表示機能を実現する動作を説明する。
【０１１２】
なお、入力装置３２０、および入力装置３３０の一方、または両方が、タッチパネルのように、指でタッチすることにより位置を入力できる装置である場合、位置表示画像は、画面に常に表示されていなくてもよい。または、位置表示画像は、例えば、必要に応じて、利用者が動かせる画像として、画面のどこかに表示されていてもよい。
【０１１３】
以下では、端末装置３００のマウスカーソルを、端末装置３１０において共有表示する前提とする。すなわち、端末装置３００が、送信動作を行う。そして、端末装置３１０が、受信動作を行う。
【０１１４】
また、本実施形態において、カーソルの共有表示機能は、利用者の指示等によって、すでに開始されていることとする。また、カーソルの共有表示機能は、利用者の指示等によって終了できることとする。カーソルの共有表示機能の開始または終了の指示は、例えば、端末装置３００において、利用者が、画面に用意されたボタンをマウスによってクリックすることによって行ってもよい。
【０１１５】
また、マウスカーソルは、共有表示機能の状態によらず、常に端末装置３００において表示されていることとする。
【０１１６】
以下に、図８および図１２を参照して、端末装置３００における送信動作を説明する。図８は、第３の実施形態に係る端末装置３００が行う位置表示画像の共有表示機能における送信動作を示すフローチャートである。図１２は、第３の実施形態において位置表示画像の座標を共有した際の送信側及び受信側における画面の一例を示す図である。
【０１１７】
まず、利用者がマウスカーソルの共有表示機能の開始を指示すると、カーソル座標計算部３０６が、ホワイトボード表示制御部３０２から取得した画面に関する情報に基づいて、マウスカーソルの実座標を検知する（ステップＳ３００）。実座標とは、表示装置３２１に表示されている実際の画面におけるマウスカーソルの座標である。例えば、表示装置３２１において、拡大していない画面５２０Ａ（図１２）が表示されている場合、カーソル座標計算部３０６は、ホワイトボード表示制御部３０２から、マウスカーソル５２１Ａの実座標を表す実座標情報を含むマウスカーソル情報を取得する。このとき、カーソル座標計算部３０６が得たマウスカーソル５２１Ａの実座標は、（ｘ１，ｙ１）であるとする。なお、座標は、（水平軸における座標、垂直軸における座標）で表す。
【０１１８】
次に、カーソル座標計算部３０６は、マウスカーソルの実座標に基づいて、マウスカーソルが配置されているエリアを特定する（ステップＳ３０１）。具体的には、まず、カーソル座標計算部３０６は、拡大処理におけるステップＳ２０１において拡大処理部３０４が行ったエリア分割と同様の処理を行うことにより、エリアの分割状況を取得する。または、カーソル座標計算部３０６が、拡大処理部３０４が図示しない記憶装置に記録しておいたエリア分割の結果を読み出すことによって、エリアの分割状況を取得してもよい。
【０１１９】
次に、カーソル座標計算部３０６は、マウスカーソル５２１Ａの実座標が含まれているエリアを識別する情報であるエリア番号を特定する。カーソル座標計算部３０６は、例えば、画面５２０Ａにおいて、水平方向の線分で区切られた領域に対して、左から、Ａ、Ｂ、Ｃ、Ｄ、Ｅと符号をつける。また、カーソル座標計算部３０６は、画面５２０Ａにおいて、垂直方向の線分で区切られた領域に対して、上から、１、２、３、４、５と符号をつける。そして、カーソル座標計算部３０６は、マウスカーソル５２１Ａの実座標が含まれているエリアのエリア番号を、「エリア（Ａ，２）」と特定する。このとき、例えば、オブジェクト５１１Ａが含まれているエリアのエリア番号は、「エリア（Ｂ，２）」と表される。
【０１２０】
次に、カーソル座標計算部３０６は、マウスカーソルの実座標を、エリアを基準とした座標であるエリア内座標に変換する（ステップＳ３０２）。エリア内座標とは、特定されたエリアの中におけるマウスカーソルの位置を表す相対座標と、エリア番号を組み合わせた情報である。相対座標は、例えば、エリアの各辺の長さをそれぞれ１として計算したときの、マウスカーソルの座標として表すことができる。この場合、あるエリアの左上の角を「（０，０）」とすると、エリアの右下の角は、「（１，１）」と表すことができる。具体的には、マウスカーソル５２１Ａがエリア（Ａ，２）の中央に位置している場合、カーソル座標計算部３０６は、マウスカーソル５２１Ａの実座標「（ｘ１，ｙ１）」を、エリア内座標「エリア（Ａ，２）、相対座標（０．５，０．５）」として変換する。カーソル座標計算部３０６は、計算したカーソルのエリア内座標を表すエリア内座標情報をカーソル座標通信部３０５に対して出力する。なお、上記の相対座標の表現方法は、一例であり、他の方法で表現することも可能である。
【０１２１】
次に、カーソル座標通信部３０５は、カーソル座標計算部３０６から受け取ったカーソルのエリア内座標情報を、共有サーバ４００に対して送信する（ステップＳ３０３）。具体的には、カーソル座標通信部３０５は、「エリア（Ａ，２）、相対座標（０．５，０．５）」という情報を含むエリア内座標情報を共有サーバ４００に対して送信する。
【０１２２】
共有サーバ４００におけるカーソル座標共有部４１２は、カーソルのエリア内座標情報を受信すると、マウスカーソルの共有表示機能を実行している他の端末装置（すなわち、端末装置３１０）に対して、受信したエリア内座標情報を配信する。配信を受ける端末装置３１０の受信動作は、後述する。
【０１２３】
カーソル座標計算部３０６は、マウスカーソルの共有表示機能が終了されていなければ、再びステップＳ３００に戻って、所定の時間間隔などにおいて、以降の動作を繰り返す（ステップＳ３０４）。
【０１２４】
このようにして、端末装置３００は、マウスカーソルの共有表示機能における送信動作を行う。
【０１２５】
次に、図９および図１２を参照して、端末装置３１０が行う受信動作を説明する。図９は、第３の実施形態に係る端末装置３１０が行う位置表示画像の共有表示機能における受信動作を示すフローチャートである。
【０１２６】
まず、端末装置３１０における表示装置３３１は、画面５１０Ｃ（図１０）のように拡大した画面を表示していることとする。すなわち、画面を拡大していない端末装置３００と、端末装置３１０とでは、画面の拡大率が異なる。
【０１２７】
以下の受信動作は、上記のステップＳ３０３において、共有サーバ４００におけるカーソル座標共有部４１２がカーソルのエリア内座標情報を受信した後、端末装置３１０に対して、受信したエリア内座標情報を配信することにより開始する。
【０１２８】
まず、共有サーバ４００が、端末装置３１０に対して、カーソルのエリア内座標情報を配信すると、端末装置３１０におけるカーソル座標通信部３１５が、カーソルのエリア内座標情報を受信する（ステップＳ４００）。ここで、受信したカーソルのエリア内座標情報は、「エリア（Ａ，２）、相対座標（０．５，０．５）」という情報を含むとする。カーソル座標通信部３１５は、受信したエリア内座標情報をカーソル座標計算部３１６に対して出力する。
【０１２９】
次に、カーソル座標計算部３１６は、カーソル座標通信部３１５から受け取ったエリア内座標情報に基づいて、画面における実座標に変換する（ステップＳ４０１）。具体的には、カーソル座標計算部３１６は、ステップＳ３０１におけるカーソル座標計算部３０６と同様に、まず、エリアの分割状況を取得する。そして、カーソル座標計算部３１６は、エリア内座標情報におけるエリア番号から特定した「エリア（Ａ，２）」の画面における表示位置を把握した後、「相対座標（０．５，０．５）」の画面における実座標を取得する。このとき、カーソル座標計算部３１６が得た実座標は、（ｘ２，ｙ２）であるとする。
【０１３０】
次に、カーソル座標計算部３１６は、マウスカーソルの表示位置として、変換した実座標の情報をホワイトボード表示制御部３１２に出力する。ホワイトボード表示制御部３１２は、変換した実座標に基づいて、マウスカーソルを表示装置３２１の画面に表示する（ステップ４０２）。具体的には、カーソル座標計算部３１６は、マウスカーソルをエリア（Ａ，２）の中央にあたる「実座標（ｘ２，ｙ２）」に表示する。このようにして、カーソル座標計算部３１６が表示したマウスカーソルは、図１２の画面５２０Ｂにおけるマウスカーソル５２１Ｂに示す通りである。
【０１３１】
なお、エリア（Ｂ，２）の内側に表示された「画面５２０Ａにおけるマウスカーソルの表示位置５２２」という符号が示す「点」は、比較のために、仮に記載したものである。すなわち、表示位置５２２という「点」は、実際の画面５２０Ｂには表示されない。「画面５２０Ａにおけるマウスカーソルの表示位置５２２」は、画面５２０Ａにおけるマウスカーソル５２１Ａの実座標（ｘ１，ｙ１）と同じ座標に表示している。これは、端末装置３１０が、共有元である端末装置３００と同じ実座標（ｘ１、ｙ１）にマウスカーソルを表示すると、拡大された画面５２０Ｂにおいては、エリア（Ｂ，２）にあるオブジェクトの中にマウスカーソルが表示されてしまうことを表している。しかし、エリア内座標情報という相対的な座標としてマウスカーソルの座標を共有することにより、カーソル座標計算部３１６が、拡大された画面５２０Ｂに合わせて、オブジェクトとの位置関係が維持されるようにマウスカーソルを表示することができる。すなわち、本実施形態によれば、本実施形態の初めに上述した位置表示画像と拡大後のオブジェクトとの位置関係がずれるという問題は、発生しない。
【０１３２】
カーソル座標計算部３０６は、マウスカーソルの共有表示機能が終了されていなければ、再びステップＳ４００に戻って、以降の動作を繰り返す（ステップＳ４０３）。
【０１３３】
このようにして、端末装置３１０は、マウスカーソルの共有表示機能における送信動作を行う。
【０１３４】
以上、説明したように、本実施形態には、上述した第１および第２の実施形態と同様の効果に加えて、さらに、異なる拡大率で画面を表示する端末装置間において、オブジェクト同士の位置関係、および、オブジェクトに対する位置表示画像の位置関係がずれないように描画できるという効果もある。
【０１３５】
その理由は、拡大処理部３０４が、各オブジェクトを含むエリア同士の位置関係が維持されている範囲にとどまるように拡大を制御するからである。さらに、カーソル座標計算部３０６および３１６が、エリアを特定するエリア番号と、エリアにおける相対座標とを組み合わせたエリア内座標情報に基づいて、異なる拡大率で拡大された画面における実座標を計算することにより、位置表示画像を表示するからである。
【０１３６】
［新規オブジェクトの追加の説明］
次に、拡大された画面において利用者が新規オブジェクトを追加する場合における動作を説明する。新規オブジェクトが追加された場合、端末装置は、利用者によって指定された新規オブジェクトの表示位置をエリア内座標とみなして、上述した位置表示画像の共有機能における受信動作と同様に実座標へ変換する。そして、端末装置は、共有サーバ４００を介して、変換後の実座標に基づいて生成した新規オブジェクトに関するオブジェクト情報を、描画データ５に加える。なお、オブジェクト情報とは、第１の実施形態において上述した通り、オブジェクトの表示に関する情報である。オブジェクト情報は、少なくとも、オブジェクトの表示位置（画面における座標）を示す配置情報、および、オブジェクトのサイズを表すサイズ情報を含む。
【０１３７】
図１３を参照して、新規オブジェクトの追加に関する具体例を説明する。図１３は、第３の実施形態において新規オブジェクトを追加した際の画面の一例を示す図である。図１３において、画面５３０Ａは、拡大された画面に新規オブジェクト５３１Ａが追加された様子を表す図である。また、画面５３０Ｂは、画面５３０Ａを拡大する前の大きさで表示した画面（以下、「元の画面」と言う）である。
【０１３８】
例えば、利用者が、端末装置３００において、拡大された画面５３０Ａの所望の場所に、新規オブジェクト５３１Ａを追加した場合、拡大処理部３０４は、新規オブジェクトを元の画面に表示した状態（画面５３０Ｂにおける新規オブジェクト５３１Ｂ）を表す情報に変換する。この動作の理由は、描画データ５に含まれるオブジェクト情報が、元（拡大前）の画面におけるオブジェクトの表示に関する情報だからである。まず、拡大処理部３０４は、新規オブジェクト５３１Ａの実座標をエリア内座標に変換する。ここで、新規オブジェクトの実座標とは、オブジェクトの画面上の位置を特定する座標であればよい。たとえば、オブジェクトの境界位置の座標、あるいは、オブジェクトの中心位置の座標でもよい。実座標からエリア内座標への変換動作は、位置表示画像の共有表示機能における送信動作（ステップＳ３００〜Ｓ３０２）における、座標変換動作と同様である。
【０１３９】
そして、拡大処理部３０４は、変換したエリア内座標を、元の画面における実座標に変換する。この実座標への変換動作は、位置表示画像の共有表示機能における受信動作（ステップＳ４００〜Ｓ４０１）における座標変換動作と同様である。さらに、拡大処理部３０４は、オブジェクトのサイズ情報も、元の画面に合わせて変換する。
【０１４０】
次に、拡大処理部３０４は、変換した元の画面における実座標に基づく配置情報、およびサイズ情報を、ホワイトボード情報通信部３０１に対して出力する。ホワイトボード情報通信部３０１は、受け取った配置情報、およびサイズ情報などを含めて、新規オブジェクトに関するオブジェクト情報を生成する。この場合、新規オブジェクトの追加なので、生成するオブジェクト情報には、形状情報、または画像のビットマップ情報、色情報など、オブジェクトを表示する際に必要な各種情報が含まれることが多い。そして、ホワイトボード情報通信部３０１は、生成したオブジェクト情報を共有サーバ４００に対して送信する。
【０１４１】
共有サーバ４００は、受信した新規オブジェクトに関するオブジェクト情報を、それまでの描画データ５に統合する。そして、共有サーバ４００は、統合した描画データ５を、各端末装置に対して送信する。このようにして、本実施形態は、拡大前のオブジェクトの位置関係を維持しながら、拡大された画面に対する新規オブジェクトの追加を可能とする。
【０１４２】
また、本実施形態は、図１４に示すように、座標の一部が重なっているオブジェクトを含む画面の拡大も可能である。図１４は、第３の実施形態において座標の一部が重なっている２つのオブジェクトを含む画面を拡大した際の画面の一例を示す図である。図１４における画面５４０Ａは、拡大前の元の画面である。拡大処理部３０４は、元の画面である画面５４０Ａを、画面５４０Ｂに示すように、離れていた２つのオブジェクトが接触するまでの範囲で、拡大することが可能である。例えば、拡大処理部３０４は、ステップＳ２０３において、エリア（Ｃ，１）〜エリア（Ｃ，５）の余白が消滅するまでを位置関係が維持されていると判定してもよい。
【０１４３】
［変形例１］
また、本実施形態の変形例では、図１５に示すように、重複するオブジェクトを含む画面において、オブジェクトが重なっている割合を維持しつつ拡大する。図１５は、第３の実施形態の変形例１において一部が重複する２つのオブジェクトを含む画面を拡大する際の画面の一例を示す図である。図１５における画面５５０Ａは、拡大前の元の画面である。また、画面５５０Ｂは、画面５５０Ａに含まれる２つのオブジェクトのそれぞれに対して、中心座標を固定しながら拡大した場合の画面である。画面５５０Ａと画面５５０Ｂとを比べると、２つのオブジェクトが重なっている割合は、後者の方が大きい。本変形例では、拡大処理部３０４が、オブジェクトが重なっている割合を維持する処理を実行する。
【０１４４】
具体的に、拡大処理部３０４は、重複する複数のオブジェクトを結合したオブジェクトの境界を含む矩形領域（画面５５０Ａの場合、エリア（Ｂ，２）〜（Ｄ，２）と（Ｂ，３）〜（Ｄ，３）と（Ｂ，４）〜（Ｄ，４）とのエリア）を１つのオブジェクトと見なし、そのオブジェクトの中心位置の座標を固定しながら拡大する。すなわち、拡大処理部３０４は、上述したオブジェクトの結合を行った後の画面に対して、エリア分割を行った後に、拡大処理を行う。そして、拡大処理部３０４は、結合したオブジェクトをふくむ画面に対して、分割されたエリアに基づいて、エリア間の位置関係が維持されているかどうかを判定する。図１５における画面５５０Ｃは、２つの重複するオブジェクトを結合した１つのオブジェクトとして拡大した場合の画面である。
【０１４５】
なお、図１５に示す例の場合、画面５５０Ｃに存在するオブジェクトは、結合したオブジェクトだけになる。画面におけるオブジェクトが１つだけの場合、拡大処理部３０４は、例えば、画面の枠を１つのエリアとみなして、エリア間の位置関係を判定する。すなわち、拡大処理部３０４は、画面５５０Ｃにおける拡大したオブジェクトを含むエリア（Ｂ，２）の辺となる線分のいずれかが、画面の枠を超える場合に、位置関係が維持されないと判定する。または、拡大処理部３０４は、何れかの余白エリア（画面５５０Ｃにおける（Ａ，１）〜（Ａ，３）、（Ｂ，１）、（Ｂ，３）、（Ｃ，１）〜（Ｃ，３））が、消滅するところで、エリアの位置関係が維持されなくなると判定してもよい。
【０１４６】
画面５５０Ａと画面５５０Ｃとを比べると、２つのオブジェクトが重なっている割合は、同じである（維持されている）。このようにすれば、本実施形態には、表示領域が重複するオブジェクトに対して、オブジェクトが重複している割合を維持しながら、表示を拡大できるという効果もある。
【０１４７】
また、本変形例は、図１６に示すように、近接するオブジェクトを含む画面に対しても、拡大率を高めることが可能である。図１６は、第３の実施形態の変形例１において近接する２つのオブジェクトを含む画面を拡大した際の画面の一例を示す図である。図１６における画面５６０Ａは、拡大前の元の画面である。また、画面５６０Ｂは、画面５６０Ａに含まれる２つのオブジェクトのそれぞれに対して、中心座標を固定しながら拡大した場合の画面である。２つのオブジェクトが近接していると、拡大後の画面５６０Ｂに示すように、拡大率は、余白がオブジェクトの周囲にかなり残っているにもかかわらず、あまり高くない。本変形例では、拡大処理部３０４は、近接しているオブジェクトを結合した１つのオブジェクトとして拡大する。図１６における画面５６０Ｃは、２つの近接するオブジェクトを結合した１つのオブジェクトとして拡大した場合の画面である。画面５６０Ｂと画面５６０Ｃとを比べると、拡大率は、後者の方が大きい。このように、本実施形態には、近接するオブジェクトを含む画面においても、余白が十分ある場合には、表示の拡大率を高めることができるという効果もある。
【０１４８】
［変形例２］
また、本実施形態は、図１７に示すように、拡大の結果として余白が帯状に残った場合、各エリアの位置関係を維持しながら、余白を詰めることが可能である。図１７は、第３の実施形態の変形例２において、拡大の結果、帯状に連なった余白のエリアに対して、オブジェクトの表示位置を変更した画面の一例を示す図である。図１７における画面５７０Ａは、拡大後の画面である。画面５７０Ａにおいて、エリア（Ｅ，１）〜エリア（Ｅ，７）は、帯状に残った余白のエリアである。このような場合、拡大処理部３０４は、エリア（Ｅ，１）〜エリア（Ｅ，７）の幅を狭める処理を実行することにより、画面におけるオブジェクトの表示範囲を詰めてもよい。画面５７０Ｂは、一例として、エリア（Ｅ，１）〜エリア（Ｅ，７）の幅を狭めることにより、画面に含まれるオブジェクトに対する水平方向の表示範囲を詰めた場合の画面である。画面５７０Ｂにおいても、各エリアの位置関係は、維持されている。なお、画面５７０Ｂにおいて、拡大処理部３０４は、エリア（Ｅ，１）〜エリア（Ｅ，７）の幅を狭めた分、エリア（Ｇ，１）〜エリア（Ｇ，７）を広げているが、エリア（Ａ，１）〜エリア（Ａ，７）の方を広げてもよい。以上が変形例２である。
【０１４９】
なお、上述した各実施形態、および、各変形例において図１、図２、および図５に示した各部は、それぞれ独立したハードウェア回路で構成されていてもよいし、ソフトウェアプログラムの機能（処理）単位（ソフトウェアモジュール）と捕らえることもできる。ただし、これらの図面に示した各部の区分けは、説明の便宜上の構成であり、実装に際しては、様々な構成が想定され得る。このような場合のハードウェア環境の一例を図１８を参照して説明する。図１８は、本発明の各実施形態、および、その変形例に係る端末装置、および共有ホワイトボードシステムに適用可能なコンピュータの構成を例示する図である。すなわち、図１８は、上述した各実施形態における端末装置１、端末装置１００、端末装置３００、端末装置３１０、および共有サーバ４００の少なくとも何れかを実現可能コンピュータの構成であって、上述した各実施形態における各機能を実現可能なハードウェア環境を示す。
【０１５０】
図１８に示したコンピュータ９００は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）９０１、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）９０２、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）９０３、通信インタフェース（Ｉ／Ｆ）９０４、ディスプレイ９０５、及びハードディスク装置（ＨＤＤ）９０６を備え、これらがバス９０７を介して接続された構成を有する。なお、図１８に示したコンピュータが共有サーバ４００として機能する場合、ディスプレイ９０５は常時設けられる必要はない。また、通信インタフェース９０４は、上述した各実施形態において、当該各コンピュータ間における通信を実現する一般的な通信手段である。ハードディスク装置９０６には、プログラム群９０６Ａと、各種の記憶情報９０６Ｂとが格納されている。プログラム群９０６Ａは、例えば、上述した図１、図２、および図５に示した各ブロック（各部）に対応する機能を実現するためのコンピュータ・プログラムである。各種の記憶情報９０６Ｂは、図１、図２、および図５に示した各部が動作に際して、例えば、描画データ５などを一時的に格納した情報などである。このようなハードウェア構成において、ＣＰＵ９０１は、コンピュータ９００の全体の動作を司る。
【０１５１】
そして、上述した各実施形態を例に説明した本発明は、各実施形態の説明において参照したブロック構成図（図１、図２、および図５）あるいはフローチャート（図３、および図７乃至図９）の機能を実現可能なコンピュータ・プログラムを供給した後、そのコンピュータ・プログラムを、当該ハードウェアのＣＰＵ９０１に読み出して実行することによって達成される。また、このコンピュータ内に供給されたコンピュータ・プログラムは、読み書き可能な一時記憶メモリ９０３またはハードディスク装置９０６などの不揮発性の記憶デバイス（記憶媒体）に格納すれば良い。
【０１５２】
また、前記の場合において、当該各装置内へのコンピュータ・プログラムの供給方法は、フロッピーディスク（登録商標）やＣＤ−ＲＯＭ等の各種記録媒体を介して当該装置内にインストールする方法や、インターネット等の通信ネットワーク１０００を介して外部よりダウンロードする方法等のように、現在では一般的な手順を採用することができる。そして、このような場合において、本発明は、係るコンピュータ・プログラムを構成するコード、或いは係るコードが記録されたところの、コンピュータ読み取り可能な記憶媒体によって構成されると捉えることができる。
【０１５３】
なお、上述した実施形態の一部または全部は、以下の付記のようにも記載されうるが、以下の付記に限定されるものではない。
【０１５４】
（付記１）
表示装置の画面に表示されたオブジェクトに対する拡大の指示に基づいて、拡大率を算出し、前記拡大率を示す拡大率情報を含む拡大指示情報を生成する入力制御手段と、
前記拡大率情報と、前記オブジェクトの表示に関するオブジェクト情報を含む描画データとに基づいて、前記描画データにおける複数のオブジェクトを、互いに重ならない状態で拡大する拡大処理を実行し、拡大した前記オブジェクトに関するオブジェクト情報を含む拡大済描画データを生成する拡大処理手段と、
前記拡大済描画データに基づいて、前記表示装置の画面に拡大したオブジェクトを表示する表示制御手段と
を備える情報処理装置。
【０１５５】
（付記２）
前記拡大処理手段は、前記拡大処理において、前記オブジェクトの中心の位置関係を維持する
付記１記載の情報処理装置。
【０１５６】
（付記３）
前記拡大処理手段は、前記拡大処理の前に、前記オブジェクトを、前記画面における各座標軸に対して平行な２本の線分によって挟むことにより、前記画面を複数のエリアに分割するエリア分割処理を実行し、前記拡大処理の実行による前記オブジェクトの拡大の結果、前記オブジェクトを含むエリア間の位置関係を維持する範囲に収まるように制御する
付記１または２記載の情報処理装置。
【０１５７】
（付記４）
前記画面における位置表示画像の実座標を、前記エリアを識別する情報であるエリア番号と、前記エリア番号によって特定されるエリアの中における位置表示座標の位置を示す相対座標とを組み合わせたエリア内座標に変換する座標計算手段と、
サーバを経由して前記描画データを共有する他の情報処理装置に対する前記エリア内座標情報を前記サーバに送信する通信手段と
をさらに備える付記３記載の情報処理装置。
【０１５８】
（付記５）
前記通信手段は、前記サーバから、他の情報処理装置における画面に表示された位置表示画像に対するエリア内座標情報を受信し、
前記座標計算手段は、受信したエリア内座標情報に基づいて、前記画面における実座標を計算し、計算した前記実座標を示す位置座標情報を、前記表示制御手段に出力する
付記４記載の情報処理装置。
【０１５９】
（付記６）
前記拡大処理手段は、前記エリア分割処理において、重複する複数のオブジェクトを結合したオブジェクトの境界を含む矩形領域を１つのオブジェクトとみなしてエリア分割処理を実行する
付記３乃至５の何れかに記載の情報処理装置。
【０１６０】
（付記７）
前記拡大処理手段は、前記拡大処理を実行した結果、前記オブジェクトを含まない余白のエリアが帯状に連なった場合、前記余白のエリアの幅を狭めることによりオブジェクトの表示位置を変更する付記３乃至６の何れかに記載の情報処理装置。
【０１６１】
（付記８）
表示装置の画面に表示されたオブジェクトに対する拡大の指示に基づいて、拡大率を算出し、
前記拡大率を示す拡大率情報を含む拡大指示情報と、前記オブジェクトの表示に関するオブジェクト情報を含む描画データとに基づいて、前記描画データにおける複数のオブジェクトを、互いに重ならない状態で拡大する拡大処理を実行し、
拡大した前記オブジェクトに関するオブジェクト情報を含む拡大済描画データに基づいて、前記表示装置の画面に拡大したオブジェクトを表示する
表示拡大方法。
【０１６２】
（付記９）
前記拡大処理において、前記オブジェクトの中心の位置関係を維持する
付記８記載の表示拡大方法。
【０１６３】
（付記１０）
前記拡大処理の前に、前記オブジェクトを、前記画面における各座標軸に対して平行な２本の線分によって挟むことにより、前記画面を複数のエリアに分割するエリア分割処理を実行し、
前記拡大処理の実行による前記オブジェクトの拡大の結果、前記オブジェクトを含むエリア間の位置関係を維持する範囲に収まるように制御する
付記８または９記載の表示拡大方法。
【０１６４】
（付記１１）
前記画面における位置表示画像の実座標を、前記エリアを識別する情報であるエリア番号と、前記エリア番号によって特定されるエリアの中における位置表示座標の位置を示す相対座標とを組み合わせたエリア内座標に変換し、
サーバを経由して前記描画データを共有する他の情報処理装置に対する前記エリア内座標情報を前記サーバに送信する
付記１０記載の表示拡大方法。
【０１６５】
（付記１２）
前記サーバから、他の情報処理装置における画面に表示された位置表示画像に対するエリア内座標情報を受信し、
受信したエリア内座標情報に基づいて、前記画面における実座標を計算し、計算した前記実座標を示す位置座標情報を、前記画面に出力する
付記１１記載の表示拡大方法。
【０１６６】
（付記１３）
前記エリア分割処理において、重複する複数のオブジェクトを結合したオブジェクトの境界を含む矩形領域を１つのオブジェクトとみなしてエリア分割処理を実行する
付記１０乃至１２の何れかに記載の表示拡大方法。
【０１６７】
（付記１４）
前記拡大処理を実行した結果、前記オブジェクトを含まない余白のエリアが帯状に連なった場合、前記余白のエリアの幅を狭めることによりオブジェクトの表示位置を変更する付記１０乃至１３の何れかに記載の表示拡大方法。
【０１６８】
（付記１５）
表示装置の画面に表示されたオブジェクトに対する拡大の指示に基づいて、拡大率を算出し、前記拡大率を示す拡大率情報を含む拡大指示情報を生成する入力制御処理と、
前記拡大率情報と、前記オブジェクトの表示に関するオブジェクト情報を含む描画データとに基づいて、前記描画データにおける複数のオブジェクトを、互いに重ならない状態で拡大する拡大処理と、
拡大した前記オブジェクトに関するオブジェクト情報を含む拡大済描画データに基づいて前記表示装置の画面に拡大したオブジェクトを表示する表示制御処理と
を情報処理装置に実行させるコンピュータ・プログラム。
【０１６９】
（付記１６）
前記拡大処理において、前記オブジェクトの中心の位置関係を維持する
付記１５記載のコンピュータ・プログラム。
【０１７０】
（付記１６）
前記拡大処理の前に、前記オブジェクトを、前記画面における各座標軸に対して平行な２本の線分によって挟むことにより、前記画面を複数のエリアに分割するエリア分割処理を実行し、
前記拡大処理の実行による前記オブジェクトの拡大の結果、前記オブジェクトを含むエリア間の位置関係を維持する範囲に収まるように制御する制御処理を実行する
付記１５または１６記載のコンピュータ・プログラム。
【符号の説明】
【０１７１】
１    端末装置（情報処理装置）
２    表示制御部
３    入力制御部
４    拡大処理部
５    描画データ
６    拡大の指示（拡大指示）
１００    端末装置
１０１    画像生成部
１１０    入力装置
１１１    表示装置
２００Ａ、２００Ｂ    画面
２０１Ａ、２０１Ｂ    オブジェクト
２１０    中心座標
３００、３１０    端末装置
３０１、３１１    ホワイトボード情報通信部
３０２、３１２    ホワイトボード表示制御部
３０３、３１３    入力制御部
３０４、３１４    拡大処理部
３０５、３１５    位置表示画像（カーソル）座標通信部
３０６、３１６    位置表示画像（カーソル）座標計算部
３２０、３３０    入力装置
３２１、３３１    表示装置
４００    共有サーバ
４１１    ホワイトボード情報共有部
４１２    カーソル座標共有部
５００Ａ、５００Ｂ、５１０Ａ、５１０Ｂ、５１０Ｃ、５２０Ａ、５２０Ｂ、５３０Ａ、５３０Ｂ、５４０Ａ、５４０Ｂ、５５０Ａ、５５０Ｂ、５５０Ｃ、５６０Ａ、５６０Ｂ、５６０Ｃ、５７０Ａ、５７０Ｂ    画面
５０１Ａ、５０１Ｂ、５１１Ａ、５１１Ｂ、５１１Ｃ、５１２Ａ、５１２Ｂ、５１２Ｃ    オブジェクト
５０２Ａ、５０２Ｂ、５２１Ａ、５２１Ｂ    マウスカーソル
５０３Ａ、５０３Ｂ    マウスカーソルの軌跡
５２２    画面５２０Ａにおけるマウスカーソルの表示位置
５３１Ａ、５３１Ｂ    新規オブジェクト
９００    コンピュータ
９０１    ＣＰＵ
９０２    ＲＯＭ
９０３    ＲＡＭ
９０４    通信インタフェース（Ｉ／Ｆ）
９０５    ディスプレイ
９０６    ＨＤＤ
９０６Ａ    プログラム群
９０６Ｂ    各種の記憶情報
９０７    バス
１０００    ネットワーク（通信ネットワーク）
【図１】
2015087982.tif 000003
【図２】
2015087982.tif 000004
【図３】
2015087982.tif 000005
【図４】
2015087982.tif 000006
【図５】
2015087982.tif 000007
【図６】
2015087982.tif 000008
【図７】
2015087982.tif 000009
【図８】
2015087982.tif 000010
【図９】
2015087982.tif 000011
【図１０】
2015087982.tif 000012
【図１１】
2015087982.tif 000013
【図１２】
2015087982.tif 000014
【図１３】
2015087982.tif 000015
【図１４】
2015087982.tif 000016
【図１５】
2015087982.tif 000017
【図１６】
2015087982.tif 000018
【図１７】
2015087982.tif 000019
【図１８】
2015087982.tif 000020