(57)【要約】【課題】  本発明は、オブジェクトを送受信する複数の情報処理装置において、装置間で簡単な情報のやり取りを行うことによって、互いの装置における表示内容を連携させる技術を提供することを目的とする。【解決手段】  上記課題を解決する為、本発明に係る情報処理システムは、送信側装置５０１ａで、画面５０２ａでのタッチ位置５０４の変化に基づいて、受信側装置の画面５０２ｂにおいてオブジェクト５０３の表示位置の制御に使用される情報を決定して受信側装置５０１ｂに送信し、タッチ位置５０４が移動されることに応じて、オブジェクト５０３が送信側装置の画面５０２ａの外に向かって消失するように表示制御し、受信側装置５０１ｂは、送信側装置５０１ａから送信されたオブジェクト５０３の表示位置の制御に使用される情報を受信し、前記情報に基づいて、オブジェクト５０３が受信側装置の画面５０２ｂ上に出現するように制御することを特徴とする。【選択図】  図５
2014123349.tif 000002
【特許請求の範囲】
【請求項１】
画面に表示されたオブジェクトを移動させる操作に応じて、前記オブジェクトを送受信する送信側装置と受信側装置とから成る情報処理システムであって、
前記送信側装置は、
前記画面においてタッチされているタッチ位置を取得する取得手段と、
前記取得手段が取得するタッチ位置の変化に基づいて、前記受信側装置の画面において前記オブジェクトの表示位置の制御に使用される情報を決定する決定手段と、
前記オブジェクトの表示位置の制御に使用される情報を、前記受信側装置に送信する送信手段と、
前記取得手段が取得するタッチ位置が移動されることに応じて、前記送信側装置の画面から、該画面の外に向かって消失するように、前記オブジェクトの表示位置を制御する表示制御手段とを備え、
前記受信側装置は、
前記送信側装置から送信された前記オブジェクトの表示位置の制御に使用される情報を受信する受信手段と、
前記オブジェクトの表示位置の制御に使用される情報に基づいて、前記オブジェクトが前記受信側装置の画面上に出現するように、前記オブジェクトの表示位置を制御する表示制御手段とを備える
ことを特徴とする情報処理システム。
【請求項２】
画面に表示されたオブジェクトを移動させる操作に応じて、前記オブジェクトを送受信する送信側装置と受信側装置とから成る情報処理システムであって、
前記送信側装置は、
前記画面においてタッチされているタッチ位置を取得する取得手段と、
前記取得手段が取得するタッチ位置の変化に基づいて、前記タッチによる操作で指示された操作方向を決定する方向決定手段と、
前記操作方向を示す情報を、前記受信側装置に送信する送信手段と、
前記取得手段が取得するタッチ位置が移動されることに応じて、前記操作方向に沿って前記画面から、該画面の外に向かって消失するように、前記オブジェクトの表示位置を制御する表示制御手段とを備え、
前記受信側装置は、
前記送信側装置から送信された前記操作方向を示す情報を受信する受信手段と、
前記受信手段が受信した操作方向を示す情報に基づいて、前記オブジェクトを出現させる前記画面上の位置を決定する位置決定手段と、
前記オブジェクトが、前記画面上に前記位置決定手段が決定した位置から出現するように、前記オブジェクトの表示位置を制御する表示制御手段とを備える
ことを特徴とする情報処理システム。
【請求項３】
前記受信側装置において、
前記位置決定手段は、前記受信手段が受信した操作方向を示す情報に基づいて、前記受信側装置と前記送信側装置の位置関係を推定し、前記推定された位置関係に応じて、前記オブジェクトを出現させる前記画面上の位置を決定する
ことを特徴とする請求項２に記載の情報処理システム。
【請求項４】
前記受信側装置において、
前記位置決定手段は、前記受信側装置の画面の中心から、前記操作方向を反転させた方向の先に、前記送信側装置が存在すると推定し、前記画面の縁のうち、前記存在する位置が推定された送信側装置に近い部分を、前記オブジェクトを出現させる前記画面上の位置として決定する
ことを特徴とする請求項３に記載の情報処理システム。
【請求項５】
前記受信側装置において、
前記位置決定手段は、前記受信側装置の画面の中心から、前記操作方向を反転させた方向に延びる直線と、前記画面の縁とが交差する付近を、前記送信側装置に近い部分であるとみなし、前記オブジェクトを出現させる前記画面上の位置として決定する
ことを特徴とする請求項４に記載の情報処理システム。
【請求項６】
前記送信側装置において、
前記取得手段が取得した最新のタッチ位置に基づいて、前記タッチによる操作が前記画面上に表示されたオブジェクトの送信指示であるか否かを判定する判定手段をさらに備え、
前記方向決定手段は、前記判定手段によって、前記タッチによる操作が前記画面上に表示されたオブジェクトの送信指示であると判定された場合に、前記操作方向を決定する
ことを特徴とする請求項２乃至５のいずれか１項に記載の情報処理システム。
【請求項７】
前記送信側装置において、
前記送信手段は、前記方向決定手段が決定した操作方向が、前記方向決定手段が前回決定した操作方向と同じ方向である場合には、前記操作方向が前回と同じ方向であることを示す情報を送信し、
前記方向決定手段が決定した操作方向が、前記方向決定手段が前回決定した操作方向と異なる方向である場合には、前記方向決定手段が決定した操作方向を示す情報を送信することを特徴とする請求項２乃至６のいずれか１項に記載の情報処理システム。
【請求項８】
前記受信側装置において、
前記受信手段が受信した操作方向を示す情報と、前記位置決定手段が決定した位置を示す情報を保持する保持手段を更に備え、
前記表示制御手段は、
前記受信手段が、前記送信側装置から、前記操作方向が前回と同じ方向であることを示す情報を受信した場合には、前記保持手段が保持している情報に基づいて、前記オブジェクトが、前記画面上に前記位置決定手段が決定した位置から出現するように、前記オブジェクトの表示位置を制御する
ことを特徴とする請求項２乃至７のいずれか１項に記載の情報処理システム。
【請求項９】
前記送信側装置において、
前記送信手段が送信する操作方向を示す情報は、前記送信側装置及び前記受信側装置の姿勢に依存しない基準に基づいて示される情報である
ことを特徴とする請求項２乃至８のいずれか１項に記載の情報処理システム。
【請求項１０】
前記送信側装置において、
前記送信手段が送信する操作方向を示す情報は、方位に基づいて示される情報であって、
前記受信側装置において、
前記受信手段が受信する前記操作方向を示す情報を、方位に基づいて示される情報から前記画面上で定義される角度を示す情報に変換する変換手段を更に備え、
前記表示制御手段は、前記変換手段によって変換された前記画面上で定義される角度を示す情報に基づいて出現する前記オブジェクトの表示位置を制御する
ことを特徴とする請求項９に記載の情報処理システム。
【請求項１１】
画面に表示するオブジェクトの表示位置の制御に使用される情報を受信して、前記画面に前記オブジェクトを出現させる受信側装置に、前記情報を送信する情報処理装置であって、
前記画面においてタッチされているタッチ位置を取得する取得手段と、
前記取得手段が取得するタッチ位置の変化に基づいて、前記受信側装置の画面において前記オブジェクトの表示位置の制御に使用される情報を決定する決定手段と、
前記オブジェクトの表示位置の制御に使用される情報を、前記受信側装置に送信する送信手段と、
前記取得手段が取得するタッチ位置が移動されることに応じて、前記送信側装置の画面から、該画面の外に向かって消失するように、前記オブジェクトの表示位置を制御する表示制御手段とを備える
ことを特徴とする情報処理装置。
【請求項１２】
タッチ操作に基づいて決定された、受信側装置の画面において前記オブジェクトの表示位置の制御に使用される情報を送信する送信側装置から、前記情報を受信する情報処理装置であって、
前記送信側装置から送信された前記オブジェクトの表示位置の制御に使用される情報を受信する受信手段と、
前記オブジェクトの表示位置の制御に使用される情報に基づいて、前記オブジェクトが前記受信側装置の画面上に出現するように、前記オブジェクトの表示位置を制御する表示制御手段とを備える
ことを特徴とする情報処理装置。
【請求項１３】
タッチ操作で指示された操作方向を示す情報を受信して、オブジェクトを出現させる画面上の位置を決定する受信側装置に、前記操作方向を示す情報を送信する情報処理装置であって、
前記情報処理装置の画面においてタッチされているタッチ位置を取得する取得手段と、前記取得手段が取得するタッチ位置の変化に基づいて、前記操作方向を決定する方向決定手段と、
前記操作方向を示す情報を、前記受信側装置に送信する送信手段と、
前記取得手段が取得するタッチ位置が移動されることに応じて、前記操作方向に沿って前記画面から、該画面の外に向かって消失するように、前記オブジェクトの表示位置を制御する表示制御手段とを備える
ことを特徴とする情報処理装置。
【請求項１４】
画面に表示されたオブジェクトを移動させるタッチ操作に基づく操作方向を示す情報を送信する送信側装置から、前記操作方向を示す情報を受信する情報処理装置であって、
前記送信側装置から送信された操作方向を示す情報を受信する受信手段と、
前記受信手段が受信した操作方向を示す情報に基づいて、前記オブジェクトを出現させる前記画面上の位置を決定する位置決定手段と、
前記オブジェクトが、前記画面上に前記位置決定手段が決定した位置から出現するように、前記オブジェクトの表示位置を制御する表示制御手段とを備える
ことを特徴とする情報処理装置。
【請求項１５】
画面に表示するオブジェクトの表示位置の制御に使用される情報を受信して、前記画面に前記オブジェクトを出現させる受信側装置に、前記情報を送信する情報処理装置の制御方法であって、
取得手段により、前記画面においてタッチされているタッチ位置を取得する取得工程と、
決定手段により、前記取得工程で取得するタッチ位置の変化に基づいて、前記受信側装置の画面において前記オブジェクトの表示位置の制御に使用される情報を決定する決定工程と、
送信手段により、前記オブジェクトの表示位置の制御に使用される情報を、前記受信側装置に送信する送信工程と、
表示制御手段により、前記取得工程で取得するタッチ位置が移動されることに応じて、前記送信側装置の画面から、該画面の外に向かって消失するように、前記オブジェクトの表示位置を制御する表示制御工程とを備える
ことを特徴とする情報処理装置の制御方法。
【請求項１６】
タッチ操作に基づいて決定された、受信側装置の画面において前記オブジェクトの表示位置の制御に使用される情報を送信する送信側装置から、前記情報を受信する情報処理装置の制御方法であって、
受信手段により、前記送信側装置から送信された前記オブジェクトの表示位置の制御に使用される情報を受信する受信工程と、
表示制御手段により、前記オブジェクトの表示位置の制御に使用される情報に基づいて、前記オブジェクトが前記受信側装置の画面上に出現するように、前記オブジェクトの表示位置を制御する表示制御工程とを備える
ことを特徴とする情報処理装置の制御方法。
【請求項１７】
タッチ操作で指示された操作方向を示す情報を受信して、オブジェクトを出現させる画面上の位置を決定する受信側装置に、前記操作方向を示す情報を送信する情報処理装置の制御方法であって、
取得手段により、前記情報処理装置の画面においてタッチされているタッチ位置を取得する取得工程と、
方向決定手段により、前記取得工程で取得するタッチ位置の変化に基づいて、前記操作方向を決定する方向決定工程と、
送信手段により、前記操作方向を示す情報を、前記受信側装置に送信する送信工程と、表示制御手段により、前記取得工程で取得するタッチ位置が移動されることに応じて、前記操作方向に沿って前記画面から、該画面の外に向かって消失するように、前記オブジェクトの表示位置を制御する表示制御工程を備える
ことを特徴とする情報処理装置の制御方法。
【請求項１８】
画面に表示されたオブジェクトを移動させるタッチ操作に基づく操作方向を示す情報を送信する送信側装置から、前記操作方向を示す情報を受信する情報処理装置の制御方法であって、
受信手段により、前記送信側装置から送信された操作方向を示す情報を受信する受信工程と、
位置決定手段により、前記受信工程で受信した操作方向を示す情報に基づいて、前記オブジェクトを出現させる前記画面上の位置を決定する位置決定工程と、
表示制御手段により、前記オブジェクトが、前記画面上に前記位置決定工程で決定した位置から出現するように、前記オブジェクトの表示位置を制御する表示制御工程を備えることを特徴とする情報処理装置の制御方法。
【請求項１９】
コンピュータに読み込ませ実行させることで、前記コンピュータを請求項１０乃至１４のいずれか１項に記載された情報処理装置として動作させるためのプログラム。
【請求項２０】
請求項１９に記載されたプログラムを記憶したコンピュータが読み取り可能なプログラムの記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の情報処理装置の表示内容を連携させる技術に関する。
【背景技術】
【０００２】
複数のディスプレイを連携させてあたかも一つの大きなディスプレイのように利用するための技術がある。例えば、複数のディスプレイを一つのＰＣのディスプレイとして利用する場合、予めＰＣ上でディスプレイがどのように配置されているかを設定して、設定された配置情報に合わせて各ディスプレイへの表示出力を制御している。
【０００３】
また、近年では、タブレットＰＣのような情報処理装置が普及している。非特許文献１では、２つの情報処理装置の画面を同じ空間上の画面と仮定して、表示画像の内容を連携させる技術が開示されている。そこでは、２つの情報処理装置に対して、ディスプレイ間をまたいだピンチ操作を入力することによって各情報処理装置が配置された位置の関係を設定し、各装置の表示画像の連携を実現している。
【先行技術文献】
【非特許文献】
【０００４】
【非特許文献１】情報処理学会  インタラクション２０１２  「スマートフォンを利用した複数画面の連携表示と動的なレイアウト変更によるアプリケーション」
【発明の概要】
【発明が解決しようとする課題】
【０００５】
非特許文献１では、少なくとも一方の情報処理装置の姿勢が変わるごとに、ディスプレイ間をまたいだピンチ操作を入力する手間が生じる。
【０００６】
本発明はこのような問題を鑑みてなされたものであり、オブジェクトを送受信する複数の情報処理装置において、装置間で簡単な情報のやり取りを行うことによって、互いの装置における表示内容を連携させる技術を提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記課題を解決する為、画面に表示されたオブジェクトを移動させる操作に応じて、前記オブジェクトを送受信する送信側装置と受信側装置とから成る情報処理システムであって、前記送信側装置は、前記画面においてタッチされているタッチ位置を取得する取得手段と、前記取得手段が取得するタッチ位置の変化に基づいて、前記受信側装置の画面において前記オブジェクトの表示位置の制御に使用される情報を決定する決定手段と、前記オブジェクトの表示位置の制御に使用される情報を、前記受信側装置に送信する送信手段と、前記取得手段が取得するタッチ位置が移動されることに応じて、前記送信側装置の画面から、該画面の外に向かって消失するように、前記オブジェクトの表示位置を制御する表示制御手段とを備え、前記受信側装置は、前記送信側装置から送信された前記オブジェクトの表示位置の制御に使用される情報を受信する受信手段と、前記オブジェクトの表示位置の制御に使用される情報に基づいて、前記オブジェクトが前記受信側装置の画面上に出現するように、前記オブジェクトの表示位置を制御する表示制御手段とを備えることを特徴とする。
【発明の効果】
【０００８】
本発明によれば、オブジェクトを送受信する複数の情報処理装置において、装置間で簡単な情報のやり取りを行うことによって、互いの装置における表示内容を連携させる技術を提供することができる。
【図面の簡単な説明】
【０００９】
【図１】情報処理装置の構成の一例を示す図
【図２】情報処理装置がオブジェクトを送信する処理の流れの一例を示すフローチャート
【図３】情報処理装置がオブジェクトを受信する処理の流れの一例を示すフローチャート
【図４】操作方向を決定する処理と出現位置を決定する処理の一例を示す図
【図５】２つの情報処理装置を上下を揃えて真横に並べた状態で、オブジェクトを送受信する操作例を示す図
【図６】２つの情報処理装置でオブジェクトを送受信する操作例を示す図
【図７】２つの情報処理装置でオブジェクトを送受信する操作例を示す図
【図８】受信側装置における表示制御処理の一例を示す図
【図９】受信側装置における表示制御処理の一例を示す図
【図１０】情報処理装置の機能構成の一例を示す図。
【図１１】情報処理装置がオブジェクトを送信する処理の流れの一例を示すフローチャート
【図１２】情報処理装置がオブジェクトを受信する処理の流れの一例を示すフローチャート
【図１３】１８０度の相対角度を持って配置された２つの情報処理装置の一例を示す図
【図１４】任意の相対角度を持って配置された２つの情報処理装置の一例を示す図
【発明を実施するための形態】
【００１０】
以下、図面を参照しながら本発明の好適な実施形態について説明する。ただし、この実施の形態に記載されている構成要素はあくまでも例示であり、本発明の範囲をそれらのみに限定する趣旨のものではない。
【００１１】
＜第１の実施形態＞
図１は本実施形態に係る情報処理装置１００の構成を示す図である。本実施形態は、操作対象を送信する送信側装置と、送信された操作対象を受信する受信側装置のどちらにもなり得る複数の情報処理装置１００の情報処理システムを例に説明する。
【００１２】
図１（ａ）は、本実施形態に係る情報処理装置１００のハードウェア構成の一例を示す図である。ＣＰＵ１０１は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）であり、各種処理のための演算や論理判断などを行い、システムバス１０７に接続された各構成要素を制御する。この情報処理装置１００には、プログラムメモリとデータメモリを含むメモリが搭載されている。ＲＯＭ（Ｒｅａｄ−Ｏｎｌｙ  Ｍｅｍｏｒｙ）１０２は、プログラムメモリであって、後述する各種処理手順を含むＣＰＵによる制御のためのプログラムを格納する。ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）１０３は、データメモリであり、ＣＰＵ１０１の上記プログラムのワーク領域、エラー処理時のデータの退避領域、上記制御プログラムのロード領域などを有する。なお、情報処理装置１００に接続された外部記憶装置などからＲＡＭ１０３にプログラムをロードすることで、プログラムメモリを実現しても構わない。ＨＤ１０４は、本実施形態に係る複数の電子データやプログラムを記憶しておくためのハードディスクである。同様の役割を果たすものとして外部記憶装置を用いてもよい。ここで、外部記憶装置は、例えば、メディア（記録媒体）と、当該メディアへのアクセスを実現するための外部記憶ドライブとで実現することができる。このようなメディアとしては、例えば、フレキシブルディスク（ＦＤ）、ＣＤ−ＲＯＭ、ＤＶＤ、ＵＳＢメモリ、ＭＯ、フラッシュメモリ等が知られている。また、外部記憶装置は、ネットワークで接続されたサーバ装置などであってもよい。タッチパネルディスプレイ１０５は、入力領域１２２におけるユーザの操作情報を取り込むためのタッチセンサ等と表示出力を行う表示画面を兼ねるデバイスである。通信インタフェース１０６は、公知の通信技術によって、他の情報処理装置や外部記憶装置との有線あるいは無線で接続し、双方向に情報の送受信を行うことを可能とする。他の情報処理装置とは、直接通信するだけでなく、中継装置を利用した間接的な通信を利用することもできる。
【００１３】
図１（ｂ）は、本実施形態に係る情報処理装置１００の機能構成の一例を示すブロック図である。情報処理装置１００は、検出部１１１、判定部１１３、方向決定部１１４、管理部１１５、位置決定部１１８、表示制御部１１９を有する。これらの各機能部は、ＣＰＵ１０１が、ＲＯＭ１０２に格納されたプログラムをＲＡＭ１０３に展開し、後述する各フローチャートに従った処理を実行することで実現されている。送信部１１６、受信部１１７は、同様にＣＰＵ１０１、ＲＯＭ１０２、ＲＡＭ１０３と、さらに通信インタフェース１０６の連動によって実現される。本実施形態の情報処理装置１００が有する保持部１１２はＲＡＭ１０３の機能部である。ただし、本発明は、これらの機能部をハードウェアで実現する情報処理装置によっても同様に実現可能である。以下、各要素について説明する。
【００１４】
検出部１１１は、タッチパネル上でユーザがタッチしたタッチ位置を検出する。その際、本実施形態では、入力部であるタッチパネルディスプレイ１０５において検出されているタッチ位置の情報を一定の間隔で取得する毎に、順次検出部１１１に通知する。本実施形態では、タッチ位置は特定された一点を示す座標として通知され、検出部１１１は、通知を受ける毎に、タッチパネルディスプレイ１０５の画面におけるタッチ位置を示す座標情報を保持部１１２に保持する。さらに検出部１１１は、検出したタッチ位置の移動による座標の変化に基づいて、ドラッグ（タッチしたまま指をずらす操作）およびフリック（タッチした指を高速ではじくようにタッチパネルから離す操作）を検出することができる。
【００１５】
判定部１１３は、検出部１１３が検出した最新のタッチ位置の情報に基づいて、方向決定部１１４、管理部１１５、送信部１１６の各機能部の処理を実行させるか否かを制御する。
【００１６】
方向決定部１１４は、保持部１１２に保持されているタッチ位置の座標情報の遷移に基づき、ユーザのタッチ操作によって指示された操作方向を決定し、決定した操作方向を示す情報を保持部１１２に保持する。
【００１７】
管理部１１５は、送信部１１６に送信させる情報を管理する。その際、保持部１１２に保持されている情報のうち前回の処理において決定された方向情報と、方向決定部１１４が決定した最新の方向情報とを比較した結果に基づいて、同じ方向への送信操作が繰り返されたか否かを判定する。そして、判定結果に基づいて、送信部１１６に送信させる情報を決定する。
【００１８】
送信部１１６は、管理部１１５の決定に基づいて、方向決定部１１４が決定した操作方向に基づく方向情報を、他の情報処理装置（受信側装置）に向けて送信する。本実施形態では、操作方向に基づく方向情報は、方向決定部１１４が決定した操作方向を角度で示す情報か、または、方向決定部１１４が決定した操作方向が前回の処理と同じ方向であることを示すフラグ情報である。さらに、送信部１１６は、送受信処理の対象となるオブジェクトに関する情報を他の情報処理装置（受信側装置）に向けて送信する。オブジェクトに関する情報とは、オブジェクトを描画するために必要な画像情報や、当該オブジェクトに対応する電子データ、あるいはその識別情報や閲覧権限に関する情報等である。
【００１９】
本実施形態では、一例として、送受信される操作対象のオブジェクトは、画像データのサムネイル画像であるものとして説明する。送信側装置と受信側装置は、サムネイル画像を送受信することによって、後述するように、タッチ操作に応じた表示内容の連携を実行する。このとき、サムネイル画像に対応する画像データは、情報処理装置１００の記憶手段に記憶されているものであって、サムネイル画像の表示制御処理が行われているのと同時に送受信される例を説明する。本実施形態では、このように、ユーザ操作に対する速やかな応答として、複数の情報処理装置での表示内容の連携を実現しつつ、サムネイル画像に対応する画像データそのものも送受信するので、電子データの動きが直感的に把握できる。ただし、サムネイル画像に対応する画像データは、情報処理装置１００とネットワークで接続された外部記憶装置に記憶されているものであって、サムネイル画像の受信完了後に外部記憶装置から受信側装置にダウンロードされても構わない。あるいは、サムネイル画像が受信されたことに応じて、外部記憶装置にある画像データの閲覧権限が受信側装置に与えられてもよい。このようにすることで、送受信される情報量を削減することができる。ただし、オブジェクトは画像データのサムネイル画像に限らず、例えば、アプリケーションファイル（電子データ）に対応するアイコン画像をオブジェクトとして、送受信させることもできる。このように、オブジェクト及びオブジェクトに対応する電子データは限定されず、様々な操作対象について本実施形態を適応可能である。
【００２０】
受信部１１７は、他の情報処理装置（送信側装置）の送信部１１６が送信した情報を受信する。
位置決定部１１８は、受信部１１７が受信した操作方向を示す情報に基づいて、自装置（受信側装置）と、受信した情報を送信した情報処理装置（送信側装置）の位置関係を推定する。そして、オブジェクトが、送信側装置と受信側装置の画面の境界を越えて連続移動しているように表示するために、受信側装置の画面におけるオブジェクトの出現位置を決定する。
【００２１】
表示制御部１１９は、タッチパネルディスプレイ１０５に出力する表示画像を生成し、表示内容を制御する。本実施形態の表示制御部１１９では、画面にオブジェクトが表示された状態で、オブジェクト上で検出されたタッチ位置が移動した場合には、タッチ位置の移動に追従したオブジェクトを移動させるように表示させる。また、判定部１１３が、方向決定部１１４、管理部１１５、送信部１１６の各機能部の処理を実行させた場合には、表示されているオブジェクトを、画面内から方向決定部１１４が決定した方向に沿って消失するように表示させる。また、他の情報処理装置からオブジェクトを受信した場合には、位置決定部１１８が決定した位置から、方向決定部１１４が決定した方向に沿って画面内に出現するように、受信したオブジェクトを表示させる。
【００２２】
図１（ｃ）は、本実施形態における情報処理装置１００の外観の一例を示す図である。画面１２１は、タッチパネルディスプレイ１０５の表示領域に相当し、同時にユーザのタッチ入力を検出可能な入力領域を示す。画面１２１には、オブジェクト１２２が表示され、ユーザはオブジェクト１２２に対してタッチ操作を行うことができる。本実施形態では、画面１２１について、向かって左下を原点とし、図１（ｃ）に示すようなＸ軸、Ｙ軸を定義した座標平面に基づいて、タッチ位置を扱う。一例として画面１２１の画面解像度が、幅がＷｔ［ｄｏｔ］、高さがＨｔ［ｄｏｔ］であるとすると、検出部１１１は、画面の左下を原点とし、画面全体をＸ座標が０〜Ｗｔ［ｄｏｔ］、Ｙ座標が０〜Ｈｔ［ｄｏｔ］で表される座標平面として、座標情報を取得する。
【００２３】
本実施形態では、オブジェクトの送受信を実行する複数の情報処理装置は、同じアプリケーションを実行中であることにより、互いを識別して通信を行うことが可能な状態となっている。ユーザは、当該アプリケーションの送信モードにおいて、画面に表示されているオブジェクトをタッチして、送信先の装置（受信側装置）が存在する方向にドラッグすることによって、当該オブジェクトに対応するオブジェクトの送信指示操作を入力する。また、同じアプリケーションの受信モードを実行している受信側装置では、受信側装置の画面に対して送信側装置が存在する方向から、受信したオブジェクトが出現するような表示制御が行われる。従って、あたかも２つの表示画面が連結して１つの表示画面を形成し、オブジェクトは、連結した画面内を連続的に移動するように表示制御される。これにより、ユーザはオブジェクトに対応するオブジェクトの装置間の移動を直感的に把握できるようになる。なお、送信モードと受信モードは区別されなくてもよい。
【００２４】
通信を行う相手となる情報処理装置を決定する方法については、ＮＦＣやＴｒａｎｓｆｅｒＪｅｔなどの技術を利用し、装置同士を接触することで行ってもよいし、予め、双方の機器において通信相手を決めておいてもよい。また、２つの装置が同時に振られたことを検出したことに応じて、互いを通信相手として認識する等、その他どのような方法をとることもできる。
【００２５】
ただし、第１の実施形態では、送信モードを実行している送信側装置と受信モードを実行している受信側装置とが、それぞれの画面における表示上の上下左右を一致させるように配置された状態で、オブジェクトの送受信が行われる。
【００２６】
次に、図２及び図３のフローチャートを参照して、本実施形態において、送信側装置及び受信側装置のそれぞれで実行される具体的な処理の流れを説明する。ここで、本実施形態では、オブジェクトの送受信を実行する複数の情報処理装置は、同じアプリケーションを実行中であることにより、予め互いを識別して通信を行うことが可能な状態にあって、オブジェクトの送受信操作を待機していることを想定している。
【００２７】
図２は本実施形態の情報処理装置１００において実行される、オブジェクトを送信する処理の流れの一例を示すフローチャートである。情報処理装置１００では、送信モードが設定され、画面の中心部に少なくとも１つのオブジェクトが表示されている状態で、ユーザがオブジェクト上をタッチしたことがタッチパネルディスプレイ１０５から通知されると、図２のフローチャートが起動される。
【００２８】
ステップＳ２０１において、検出部１１１が、最新のタッチ位置の情報を取得する。ここでは少なくとも、タッチが検出されているかまたはリリースされたかをしめすタッチイベントと、タッチイベントが発行されたときのタッチ位置の座標情報とを取得して、保持部１１２に座標情報を保持する。なお、保持部１１２では、タッチが検出されてからリリースされるまで、タッチ位置を示す座標を保持部１１２に保持された情報に追加していく。タッチがリリースされたことを示すイベントが検出された場合には、保持された情報は初期化される。
【００２９】
ステップＳ２０２では、検出部１１１が、ドラッグ操作が入力されたか否かを判定する。本実施形態では、タッチ位置がリリースされることなく所定の距離以上移動した場合、ドラッグ操作が入力されたと判定する。従って、検出部１１１が、タッチ位置が最初に検出された座標と、最新の検出において取得された座標との間隔から、タッチ位置の移動距離を求め、所定の値と比較する。なお、ここで所定の値を０［ｄｏｔ］とすれば、タッチ位置の移動が検出された時点でドラッグ操作の入力として認識することになる。ドラッグ操作が入力されたと判定された場合には（ステップＳ２０２でＹＥＳ）、ステップＳ２０２に進む。一方、ドラッグ操作が入力されていないと判定された場合には（ステップＳ２０２でＮＯ）、ステップＳ２０１に戻る。
【００３０】
ステップＳ２０３では、表示制御部１１９が、検出されたタッチ位置の移動に応じて、表示されているオブジェクト１２２の表示位置を移動させる制御を行う。具体的には、タッチ位置に追従してオブジェクト１２２が移動するような表示画像を生成し、タッチパネルディスプレイ１０５に出力する。
【００３１】
ステップＳ２０４では、判定部１１３が、オブジェクトの送信指示が入力されたか否かを判定する。本実施形態では、ユーザがタッチ位置を、画面の縁に達するまでドラッグ操作を継続した場合に、オブジェクトの送信指示が入力されたと判定する。具体的には、ステップＳ２０１において取得した最新のタッチ位置を示す座標が、所定の条件を満たすか否かを判定する。例えば、最新のタッチ位置のＸ軸座標をＸ、Ｙ軸座標をＹで示すと、例えば以下の式のいずれかを満たすか否かを判定する。そして、満たさない場合に、ユーザがタッチ位置を画面の縁に達するまでドラッグ操作を継続したとみなし、オブジェクトの送信指示が入力されたと判定する。一方で、最新のタッチ位置の座標（Ｘ，Ｙ）が以下の式を満たす場合には、ユーザがタッチ位置を画面の縁に達していないため、オブジェクトの送信指示が入力されていないと判定する。なお、本実施形態では、タッチ位置が以下の式を満たした状態で、かつ、タッチ位置がリリースされた場合も、オブジェクトの送信指示が入力されていない場合に含まれる。
【００３２】
０  ＜  Ｘ  ＜  Ｗｔ      ・・・（式１）
０  ＜  Ｙ  ＜  Ｈｔ      ・・・（式２）
なお、判定の条件を示す（式１）及び（式２）は一例であって、判定条件はこれに限らない。例えば、画面の縁からＤ［ｄｏｔ］の範囲にタッチ位置が進入した場合に、タッチ位置が画面の縁に達したと判定するような条件を設定することもできる。また、例えば、オブジェクト１２２の表示位置がドラッグ操作に応じて移動されたことにより、少なくとも一部が画面１２１からはみ出した場合に、送信指示が入力されたと判定するなど、座標以外の情報に基づく判定条件を利用してもよい。
【００３３】
以上のような判定を行うことで、タッチ位置が画面の縁に達したか否かによって、送信操作の実行が指示されたか、あるいは送信側装置内に閉じたドラッグ操作が行われているのかを区別することができる。オブジェクトの送信指示が入力されたと判定された場合には（ステップＳ２０４でＹＥＳ）ステップＳ２０５に進む。オブジェクトの送信指示が入力されていないと判定された場合には（ステップＳ２０４でＮＯ）、ステップＳ２０４までの処理を繰り返して待機する。ステップＳ２０４でＹＥＳの判定がなされた以降は、タッチが継続されているかリリースされたかに関わらず、ステップＳ２０５以降の処理が実行される。
【００３４】
ステップＳ２０５では、方向決定部１１４が、保持部１１２から、ドラッグ操作中の座標情報を取得する。本実施形態では、タッチ位置が検出されてから、画面の縁に達するまでに検出された一連の座標情報を取得する。
【００３５】
ステップＳ２０６では、方向決定部１１４が、操作方向を決定する。そして、決定した操作方向を管理部１１５に通知する。ここで、操作方向とは、オブジェクトの送信のためにユーザが入力したタッチ操作によって指示された方向である。本実施形態では、ユーザは、画面中心に表示されたオブジェクト１２２をタッチした指を、画面１２１の縁に達するまで移動させるドラッグ操作によって送信の開始指示を入力する。従って、操作方向は、送信側装置の画面１２１上で、タッチが開始された位置から、受信側装置が存在する位置に向かう方向に相当する。方向決定部１１４は、ステップＳ２０５で取得された一連の座標情報のうち、最初の座標から、最後の座標に向かう方向を示す情報を、操作方向を示す情報として決定する。ただし、方向の定め方はこれに限定されない。例えば、画面の中心点の座標から、ドラッグ操作の最後の座標に向かう方向を操作方向として定めてもよい。
【００３６】
本実施形態では、操作方向を示す情報は、Ｙ軸方向を基準とした角度を示す０［度］から３５９［度］までの数値を利用する。３６０度以上あるいは０度以下の角度が求められた場合には、範囲内に納まるように値を変換するものとする。従って、画面１２１の中心からＹ軸方向に沿った真上の方向は０［度］、真下に向かう方向は１８０［度］として扱うこととなる。ただし、方向を示す情報は角度を示す値に限らず、上下や左右、右上、右下といったように、粒度を落とした情報を利用してもよい。
【００３７】
ステップＳ２０７では、管理部１１５が、今回の送信操作の操作方向は、は、前回送信指示が入力されたときに決定された操作方向と同じか否かを判定する。管理部１１５は、保持部１１２に保持されている前回送信指示が入力されたときに決定された操作方向と、方向決定部１１４から通知された操作方向とを比較して判定を行う。操作方向は、前回送信指示が入力されたときに決定された操作方向と同じと判定された場合には（ステップＳ２０７でＹＥＳ）、ステップＳ２０８に進む。操作方向は、前回送信指示が入力されたときに決定された操作方向とは異なると判定された場合には（ステップＳ２０７でＮＯ）、ステップＳ２１０に進む。なお、比較の結果、同じ方向であると判定する条件は、角度の値の差異が±５度の誤差の範囲内に収まることであるとする。ただし、もちろん度数を示す数値が一致していることであってもよく、また、画面１２１の中心を基準に３６０度の方向を８分割した際に同じ区分に含まれれば同じ方向であると判定してもかまわない。
【００３８】
ステップＳ２０８では、送信部１１６が、受信側装置に対し、操作方向は、前回の送信操作と同じ方向であることを示す情報を送信する。本実施形態で送信する情報は、予め定められているフラグ情報であり、操作方向が前回の送信操作と同じ方向であることを示すｔｒｕｅという値を送信する。
【００３９】
次に、ステップＳ２０９では、送信部１１６が、受信側装置に対し、送信操作の対象であるオブジェクトに関する情報を送信する。本実施形態では、オブジェクト１２２（サムネイル画像）の画像情報を優先して送信する。本実施形態ではさらに、サムネイル画像に対応する画像データを送信する。
【００４０】
一方、ステップＳ２１０では、方向決定部１１４が、今回の処理で決定した操作方向の処理を、保持部１１２に保持する。これにより、保持部１１２に保持されている操作方向を示す情報が更新される。なお、本実施形態では、保持部１１２に保持されている操作方向を示す情報は、アプリケーションの開始時に初期化されるもとする。ただし、初期化のタイミングはこれに限定されない。例えば、ユーザ操作によって初期化が指示されるまで保持し続けていても良い。
【００４１】
ステップＳ２１１では、送信部１１６が、受信側装置に対し、操作方向は、前回の送信操作と異なる方向であることを示す情報を送信する。本実施形態では、ここで送信する情報もステップＳ２０８と同様にフラグの情報であり、前回と異なる方向であることを示すｆａｌｓｅという値を送信する。
【００４２】
次に、ステップＳ２１２では、送信部１１６が、受信側装置に対し、ステップＳ２０６で決定した操作方向を示す情報と、オブジェクト１２２（サムネイル画像）の画像情報を送信する。本実施形態ではさらに、サムネイル画像に対応する画像データを送信する。
【００４３】
次に、ステップＳ２１３では、表示制御部１１９が、オブジェクト１２２が操作方向に沿って、画面１２１から消失するように表示制御を行う。本実施形態では、決定された操作方向に沿って、オブジェクト１２２が画面外に徐々に出て行くようなアニメーションを使って表示する。そのため、表示制御部１１９が描画処理を行い、画面内に表示されるオブジェクト１２２の部分が徐々に減少し、残りの部分が画面外に出て行くような表示画像によるアニメーションを生成し、ディスプレイ１０５に出力する。
【００４４】
以上が、本実施形態において、送信側装置として機能する情報処理装置１００が実行するオブジェクト送信処理の流れである。これにより送信側装置のユーザは、実世界においてオブジェクトを送信したい相手（受信側装置）が存在する位置に向けて、オブジェクトをドラッグするという直感的な操作で、送信対象の指定と送信開始の指示を入力することができる。このとき、情報処理装置同士の姿勢や位置関係が変化しても、送信側装置のユーザは、送信操作を行う時点で受信側装置が存在する位置に向けて、オブジェクトをドラッグする操作を行えば良い。従って、別途画面を連結させるための操作を必要とせずに効率的に複数の機器における表示内容を連携させることができる。
【００４５】
ただし、ステップＳ２０９及びステップＳ２１２では、上述したように、画像データそのものではなく、外部記憶装置に記憶されている画像データの識別情報や、閲覧権限に関する情報を送信することにより、送受信される情報量を削減することができる。また、このとき、ユーザのドラッグ操作のスピードや、オブジェクト１２２の画面外に出た部分の大きさを示す情報を受信側装置に送信することで、受信側装置でのオブジェクト１２２の表示量を抑制し、より両装置での表示状態の同期性を高めることもできる。
【００４６】
また、上述した（式１）及び（式２）で示す判定の条件は一例であって、送信操作の実行が指示されたか、あるいは送信側装置内に閉じたドラッグ操作が行われているのかを判定する条件はこれに限らない。例えば、画面の縁からＤ［ｄｏｔ］の範囲にタッチ位置が進入した場合に、タッチ位置が画面の縁に達したと判定するような条件を設定することもできる。また、例えば、オブジェクト１２２の表示位置がドラッグ操作に応じて移動されたことにより、少なくとも一部が画面１２１から消失した（はみ出した）場合に、送信指示が入力されたと判定するなど、座標以外の情報に基づく判定条件を利用してもよい。この場合は、オブジェクト全体の面積に対して、画面１２１上に残って表示されている面積の割合に所定の閾値を設け、画面１２１上に残っている面積の割合が所定の閾値を下回る場合に、送信指示が入力されたと判断することができる。あるいは、オブジェクト全体の面積に対して、画面１２１上から消失した面積の割合に所定の閾値を設け、画面１２１上から消失した面積の割合が所定の閾値を上回る場合に、送信指示が入力されたと判断するようにしてもよい。いずれの場合においても、設定される閾値は、オブジェクト１２２の内容のメインとなる部分が、視認によって把握できない程度に隠れてしまい、かつ、ドラッグ操作を行うためにユーザが指で触るには十分の面積を残すように設定される。このようにすることで、送信側の装置を操作するユーザが、オブジェクト１２２の内容の視認性よりも優先して、オブジェクト１２２を画面外に送りだす操作を行った、と確実に判断した時に、送信を開始することができるという効果がある。本実施形態では、送信側装置が、オブジェクトの、画面外にはみ出された部分を示す情報を、操作方向に関する情報と共に送ることで、送信側装置において画面からはみ出された部分が、受信側装置の画面に表示されるように制御することが可能である。従って、画面内に残っている面積（あるいは画面からはみ出された部分の面積）に応じて送信指示の入力を判断する場合、受信側装置では、受信を開始できる段階で、送信側装置の画面からはみ出された部分に相当するオブジェクト１２２を表示できる。従って、受信側装置の画面では、受信が開始されるときには、オブジェクトの内容を把握でき、かつドラッグ操作を行うのに十分な面積のオブジェクト１２２が表示できるという効果もある。なお、このとき、受信側装置において、ユーザが出現したオブジェクト１２２を押し戻したり、所定時間放置したりした場合には、オブジェクトおよび電子データの受け取りが拒否されたと判断し、送信を中止してもよい。なぜなら、画面に、オブジェクト１２２の内容が十分把握可能な表示がなされている状態で、押し戻したり放置したりすることは、すなわち、当該オブジェクト１２２を不要だと判断したユーザの直感的な行動であるとみなせるためである。
【００４７】
送信指示の入力は、他に、ユーザのタッチ操作によって判断されることもできる。例えば、オブジェクト１２２の外縁が画面１２１の縁に達した後、さらに押し出すように、より強いドラッグ操作が入力された場合に、画面外にはみ出すように表示制御を開始すると共に、送信指示が入力されたと判断するように変形することができる。この場合、オブジェクト１２２の外縁が画面１２１の縁に達した後、押し出すようなドラッグ操作が入力無ければ、オブジェクト１２２は、そのままの位置に表示され続ける。このようにすることで、送信側装置の画面１２１におけるドラッグ操作で、オブジェクト１２２が誤って画面１２１の縁に達してしまった場合でも、オブジェクト１２２が誤送信される危険性を低減することができる。また、オブジェクト１２２を画面の外に押し出すように強くドラッグすることは、ユーザが当該オブジェクト１２２をドラッグ方向に送信したいという目的に沿った自然な動きである。従って、ユーザには目的に沿った直感的な動きを行うだけで、よりセキュアなデータの送受信を可能とすることができるようになる。
【００４８】
また、オブジェクト１２２がドラッグ操作によって移動された場合に限らず、オブジェクト１２２に対する拡大操作が入力され、画面１２１外へオブジェクト１２２の一部が消失し、はみ出したように表示される場合にも、送信指示が入力されたと判断するように変形してもよい。拡大操作の例としては、２本の指を閉じた状態でオブジェクト１２２にタッチし、タッチした状態で指を広げるピンチアウトのような操作が考えられる。このようにすることで、送信側装置の画面においても受信側装置の画面においても、ある程度の面積のオブジェクト１２２が表示されることとなり、ユーザが互いにオブジェクトの内容を把握しながら送受信操作を行うことができる。この場合にも、受信側装置において、ユーザが出現したオブジェクト１２２を押し戻したり、所定時間放置したりした場合には、電子データの受け取りが拒否されたと判断し、送信を中止してもよい。また、このようにドラッグ操作だけでなく、様々なタッチ操作に応じてオブジェクト１２２が送信画面外へはみ出す場合、一様に送信指示が入力されたと一貫して判断することで、ユーザが覚えやすい操作を実現できるという効果がある。
【００４９】
前述した変形例は、これらのいずれかであっても効果があるが、組み合わせて利用してもよい。その際、画面の大きさに適した方法が選択されたり、あるいはユーザが任意に設定できるなどの構成とすることで、異なる大きさの画面を有したり、処理機能に違いのある様々な機器に適応可能となる。
【００５０】
次に、図３は、本実施形態の情報処理装置１００において実行される、オブジェクトを受信する処理の流れの一例を示すフローチャートである。本実施形態では、上述したように、送受信を行う複数の情報処理装置では、同じアプリケーションを実行することにより、予め互いを識別して通信を行うことが可能な状態となっている。情報処理装置１００では、当該アプリケーションにおいて受信モードが設定されたことにより、図３のフローチャートが起動され、受信側装置として機能する。
【００５１】
まず、ステップＳ３０１では、受信部１１７が、送信側装置から送信された情報を受信したか否かを判定する。本実施形態において、受信部１１７は、少なくとも送信側装置の送信部１１６が最初に送信したフラグの情報と、オブジェクト１２２（サムネイル画像）の画像情報の受信が完了したことに応じて、ステップＳ３０１の判定を行う。これにより、速やかにオブジェクト１２２の描画処理を開始できる。送信側装置から送信された情報を受信したと判定された場合には（ステップＳ３０１でＹＥＳ）、ステップＳ３０２に進む。送信側装置から送信された情報を受信していないと判定された場合には（ステップＳ３０１でＮＯ）、受信するまで待機する。なお、本実施形態では、オブジェクト１２２に対応する画像データは、以下に続くステップによる表示制御処理と同時に非同期で裏で引き続き受信されている。
【００５２】
ステップＳ３０２では、位置決定部１１８が、ステップＳ３０１で受信した情報に基づいて、操作方向は前回の送信操作と同じであるか否かを判定する。本実施形態では、ステップＳ３０１で受信したフラグの情報の値に応じて判定を行う。すなわち、フラグの値がｔｒｕｅであれば、操作方向は前回の送信操作と同じであると判定し（ステップＳ３０２でＹＥＳ）、ステップＳ３０６に進む。一方、フラグの値がｆａｌｓｅであれば、操作方向は前回の送信操作とは異なると判定し（ステップＳ３０２でＮＯ）、ステップＳ３０３に進む。
【００５３】
ステップＳ３０３では、受信部１１７が、送信側装置の送信部１１６が送信した、操作方向を示す情報を保持部１１２に保持させる。
【００５４】
ステップＳ３０４では、位置決定部１１８が、操作方向を示す情報に基づいて、送信側装置と受信側装置の位置関係を推定する。具体的には、受信側装置の画面１２１に対して送信側装置が存在する方向を推定する。そして、画面１２１において、操作対象のオブジェクト１２２を、推定された位置から出現するように表示するため、オブジェクト１２２を出現させる画面上の位置（以下、出現位置）を決定する。本実施形態では、送信側装置と受信側装置は、それぞれの画面１２１における表示上の上下左右を一致させるように配置された状態で操作される。このとき、オブジェクト１２２が両装置の画面を連続的に移動するように表示制御を行うためには、送信側装置でのオブジェクト１２２の移動操作の最終位置は、受信側装置でのオブジェクト１２２の出現位置と連続している必要がある。
【００５５】
本実施形態では、送信側装置のユーザは、送信側装置の画面に対して受信側装置が存在する方向に向かうドラッグ操作によって送信操作を入力し、その方向が操作方向として受信側装置に送信される。従って、受信側装置の画面から見れば、受信側装置の画面の中心から、操作方向の逆向きの方向に向かう方向の先に、送信側装置が存在すると推定することができる。
【００５６】
従って、位置決定部１１８は、画面の中心を始点とし、かつ操作方向を１８０度反転させた方向を持つベクトルを生成し、このベクトルと画面の縁とが交差する位置を、オブジェクトの出現位置として決定する。これは、このベクトルと画面の縁とが交差する位置の周辺が、受信側装置の画面の縁のうち、送信側装置への距離が近い部分であると考えるためである。本実施形態では、送信側装置と受信側装置の画面は表示上の上下左右が一致した状態で配置されているため、矩形の表示画面１２１の場合、それぞれの画面が隣接するのは、互いに対角関係にある辺あるいは頂点同士である可能性が高い。例えば、送信側装置でのドラッグ操作の最終位置が、送信側装置の画面１２１の左端だった場合、送信側装置が向かって右、受信側装置が向かって左という位置関係であって、それぞれ左辺側と右辺側のどこかが隣接するように配置されている可能性が高い。従って、送信側装置の画面の左端の最終位置の、画面１２１の中心の座標について点対称となる点、すなわち受信側装置の画面１２１の右端に存在する点を出現位置として決定することで、２つの装置の画面の境界において連続するように表示制御を行いやすくなる。本実施形態では、上述したように、操作方向を１８０度反転させた方向を持つベクトルを利用して出現位置の座標を決定する。従って、送信側装置と受信側装置の画面サイズや解像度に差異があった場合でも、最終位置に対して点対称な点を、妥当な出現位置として決定することができる。
【００５７】
次に、ステップＳ３０５では、位置決定部１１８が、ステップＳ３０４で決定した出現位置の情報を保持部１１２に保持させる。
【００５８】
一方、ステップＳ３０６では、位置決定部１１８が保持部１１２に保持されている情報のうち、前回ステップＳ３０４の処理が行われたときに決定した出現位置、及び操作方向の情報を読み出す。
【００５９】
ステップＳ３０７では、表示制御部１１９が、画面１２１において、位置決定部１１８が決定した出現位置からオブジェクト１２２が出現するように表示制御を実行する。本実施形態では、送信側装置で決定された操作方向に沿って、オブジェクト１２２が出現位置から出現するようなアニメーションを使って表示する。これは、送信側装置の画面におけるオブジェクトの移動方向と、受信側装置の画面における同じオブジェクトの移動方向は平行であるとみなすことができるからである。そのため、表示制御部１１９が、受信された画像情報を利用して描画処理を行い、出現位置の座標を中央として、オブジェクト１２２が出現するように位置を合わせた表示画像によるアニメーションを生成し、ディスプレイ１０５に出力する。ただし、オブジェクトを出現位置から出現させるように表示させる方法は、このようなアニメーションを使用するやり方に限らない。例えば、出現位置付近に、オブジェクト１２２の一部のみが表示され、オブジェクト１２２の残りの部分が画面１２１の外にはみ出しているような静止画像を生成し、ディスプレイ１０５に出力してもよい。
【００６０】
さらに、ユーザが出現したオブジェクト１２２をタッチしたことが検出された場合には、ユーザがタッチ位置を移動させるのに応じて、オブジェクト１２２の表示位置を制御する。さらに、ユーザがタッチを止めた時には、オブジェクト１２２の表示位置が画面１２１の中央になるように制御する。また、送信側装置から、送信操作時のドラッグスピードや、オブジェクト１２２の画面外に出た部分の面積の大きさを示す情報を受信した場合、送信側装置において画面外に出た部分が受信側装置の画面に出現するように同期した表示制御を行うこともできる。なお、ユーザが出現したオブジェクトをタッチしない場合に、電子データの受け取りが拒否されたとして、電子データの受信を中止したり、受信した電子データや閲覧権限を削除したりしてもよい。
【００６１】
以上が、本実施形態において、受信側装置として機能する情報処理装置１００が実行する、オブジェクトの受信処理の流れである。このように複数の情報処理装置が互いの位置情報を精度よく取得する手段を有さない場合でも、受信側装置において送信側装置から受信した、方向の情報に基づく処理を行うことにより、互いに連携した表示制御が可能になる。受信側装置のユーザは、送信側装置と連携した表示制御により、オブジェクトを受信したことと、当該オブジェクトを送信した相手の位置を直感的に把握できる。
【００６２】
なお、ステップＳ３０４において受信側装置が実行する出現位置の決定方法は、操作方向に基づくベクトルによる方法に限らない。例えば、送信側装置の画面におけるドラッグ操作での、最終的なタッチ位置の座標を基に、出現位置を決定しても良い。この場合、送信側装置では、ステップＳ２０９及びＳ２１２において、ステップＳ２０１で最後に検出されたタッチ位置の座標を、最終位置として受信側装置に送信する。そして、受信部１１７は、送信された最終位置の情報を、操作方向の情報とともに保持部１１２に保持する。そして、位置決定部１１８は、保持部１１２に保持されている最終位置の、画面の中心点について点対称となる点を出現位置の座標として決定する。この場合、本実施形態のように、送信側装置と受信側装置が同じ大きさで、画面解像度も等しいディスプレイを有する装置であれば、もともと画面の外周に相当する座標に、対応する対角の座標を保持させておくことも可能である。このように事前に情報を取得しておくことにより、ベクトルを生成するよりも速やかに出現位置を決定できる場合もある。
【００６３】
ここで、図４を参照し、ステップＳ２０６において実行される操作方向を決定処理と、ステップ３０４において実行される操作方向に基づく出現位置の決定処理について詳述する。
【００６４】
図４（ａ）は、上下を揃えて真横に並べられた２つの情報処理装置１００において、本実施形態によるオブジェクトの送受信操作を行う操作例を示している。ここでは送信側装置４０１ａから受信側装置４０１ｂに、オブジェクト４０３を送信する例を説明する。
【００６５】
まず、送信側装置４０１ａにおいて、操作方向が決定される処理（ステップＳ２０６）を説明する。今、送信側装置４０１ａから見て、受信側装置４０１ｂは左側に存在するため、ユーザは、オブジェクト４０３を左側に移動させるようにドラッグ操作を入力する。
【００６６】
図４（ａ）において、Ｐａ、Ｐｂ、Ｐｃ、Ｐｄ、Ｐｅは、ユーザがオブジェクト４０３に対してドラッグ操作を行っている間に、検出部１１１によって検出されたタッチ位置を示す。つまり、Ｐａで最初にタッチ位置が検出されてから、画面４０２ａの端に到達するまでに５回検出部１１１によってタッチ位置が検出されている。図４（ｂ）は、ステップＳ２０１において検出部１１１が保持部１１２に保持した情報を一例として示すテーブルである。本実施形態では、図４（ａ）と対応するように、Ｐａ、Ｐｂ、Ｐｃ、Ｐｄ、Ｐｅの各タッチ位置について、検出された時刻（Ｔｉｍｅ）と、座標（ｃｏｏｒｄｉｎａｔｅｄａｔａ  ｏｆ  Ｄｒａｇ）とが関連付けられている。このように、本実施形態では、図４（ｂ）のようにタッチ操作が開始されてからの一連の座標情報を保持している。この場合、最終位置はＰｅ（Ｘｅ，Ｙｅ）  である。
【００６７】
操作方向は、保持されている情報の少なくとも一部を用いて、例えば下記のような式で取得することができる。
【００６８】
操作方向  ＝  ａｔａｎ（（Ｙｅ  −  Ｙａ）／（Ｘｅ  −  Ｘａ））      ・・・（式３）
図４（ａ）の例において、求められる操作方向は矢印４０４に示されるように、左方向となり、角度を示す値２７０が操作方向を示す情報として、受信側装置４０１ｂに送信される。
【００６９】
ただし、保持部１１２には、必ずしも図４（ｂ）のようにドラッグ操作中に検出される全ての情報を保持しなくてもよい。例えば、タッチ開始時のタッチ位置と、最新の検出時のタッチ位置の２箇所を保持することでも、（式３）によって操作方向を取得することができる。このように、保持部１１２に保持するタッチ位置の情報を限定することで、必要な記憶領域を削減することもできる。
【００７０】
なお、操作方向を取得する方法は、保持された座標情報と（式３）を利用する例に限らず、方向の取得方法はどのような方法をとってもよい。例えば、最終位置が画面４０２ａの周囲四辺のうち、いずれの辺に近接するかに従って、操作方向を上下左右のいずれかに決定することもできる。その場合、角度を求める計算処理が不要となり、負荷をかけずに本実施形態を実現することができる。さらに４辺を任意の数に分割し、左上・右下などのように方向情報の粒度を調整することもできる。また、利用される計算式も（式３）に限定されず、例えば保持部１１２に保持されている複数の座標情報の分散を利用して特定される直線と、座標軸とのなす角度を求めることもできる。
【００７１】
次に、受信側装置４０１ｂにおいて、受信した操作方向を示す情報に基づいて、操作対象のオブジェクト４０３の出現位置を決定する処理（ステップＳ３０４）を説明する。
【００７２】
本実施形態では、受信した操作方向を示す情報に基づいて、画面４０２ｂの中心から送信側装置４０１ａ側に向かう方向を有するベクトルを生成する。図４（ａ）の例では、矢印４０７に示されるように、画面４０２ｂの中心４０６を始点とし、操作方向（ｙ軸から時計回りに２７０度）を、１８０度反転させた方向（ｙ軸から時計回りに９０度）を有するベクトルが生成される。そして、矢印４０７と画面４０２ｂが交差する点４０８が、出現位置として決定され、座標が取得される。
【００７３】
従って、受信側装置４０１ｂでは、出現位置として決定された点４０８から、オブジェクト４０３が出現するような表示制御が行われる。具体的には、点４０８が、オブジェクト４０３の左側の短辺の中点と一致する状態から、挿入が開始されるような表示画像が生成され、ディスプレイ１０５に出力される。
【００７４】
以上説明したように、本実施形態では、複数の情報処理装置が互いの位置情報を精度よく取得する手段を有さない場合でも、簡単な情報をやり取りすることで送信側装置、および受信側装置の画面において、オブジェクトの表示状態を連携させることができる。
【００７５】
なお、本実施形態では、送信側装置において、ドラッグ操作に基づいて決定した操作方向に基づく情報を受信側装置に送信し、当該情報を受信した受信側装置は、操作方向を使用して、オブジェクトを画面上に出現させる出現位置を決定した。このように操作方向に基づいて出現位置を決定することで、例えば、送信側装置と受信側装置の画面サイズや解像度に差異があった場合でも、最終位置に対して点対称な点を、妥当な出現位置として決定することができる。ただし、受信側装置においてオブジェクトの表示位置の制御に使用される情報として送信側装置が決定する情報は、操作方向に限らない。例えば、送信側装置において、受信側装置の画面におけるオブジェクトの出現位置を決定して、出現位置を示す情報を送信しても構わない。また、送信側装置において、受信側装置の画面に出力される表示画像を生成して、その描画のために使用される情報を送信しても構わない。また、送信時と受信時のオブジェクトの画面に対する出入りを表すアニメーション等が、予め複数の操作方向に対応するように複数用意され、各装置の記憶部あるいは外部装置にされていてもよい。この場合、送信側装置はユーザのドラッグ操作に基づいて、いずれのアニメーションを用いるかを決定することで、オブジェクトが画面外に向かって消失するように表示する。そして、オブジェクトの表示位置の制御に使用される情報として、受信側装置が用いるアニメーションを指定する情報を送信する。受信側装置では、受信した情報が示すアニメーションを使用して、オブジェクトが画面内に出現するように表示する。
【００７６】
また、上記では、操作対象を送信する送信側装置と、送信された操作対象を受信する受信側装置のどちらにもなり得る情報処理装置を説明したが、本実施形態では、送信専用装置と受信専用装置によっても実現される。
【００７７】
［操作例１］
次に、具体的な操作例を挙げて、本実施形態で実行される一連の処理を説明する。
【００７８】
図５は、図４（ａ）と同様に、上下を揃えて真横に並べられた情報処理装置１００において、本実施形態によるオブジェクトの送受信操作を行う操作例を示している。ここでは、送信側装置５０１ａから受信側装置５０１ｂに、オブジェクト５０３を送信する。送信側装置５０１ｂのユーザは、ドラッグ操作でオブジェクト５０３の表示位置を移動させ、受信側装置５０１ｂが存在する左側に向かって画面５０２ａの外に送りだすようにする。なお、図５で説明する操作例１は、初めて行われる操作であって、送信側装置５０１ａの保持部１１２には前回の操作方向を示す情報は保持されていないものとする。
【００７９】
図５（ａ）は、送信側装置５０１ａの画面５０２ａの中心にオブジェクト５０３が表示されている状態において、ユーザがオブジェクト上でドラッグ操作を開始した様子を示す。タッチ位置５０４は、ステップＳ２０１で取得される最新のタッチ位置であって、矢印方向にドラッグ操作が行われている（ステップＳ２０２でＹＥＳ）。従って、タッチ位置５０４が移動されるのに追従して、オブジェクト５０３の表示位置を移動させる表示制御が実行される（ステップＳ２０３）。本実施形態では、タッチ位置５０４が画面５０２ａの端に到達したとみなせるように、（式１）及び（式２）の条件を設定する。よって、図５（ａ）の状態では、オブジェクトの送信指示が入力されたとは判定されず（ステップＳ２０４でＮＯ）、送信側装置５０１ａ内に閉じたドラッグ操作であるとして扱われる。
【００８０】
図５（ｂ）は、ドラッグ操作が進められて、タッチ位置５０４が画面５０２ａの端に到達した様子を示す。この場合、タッチパネル上の左下を座標平面の原点とすると、タッチ位置５０４のドラッグ地点が示すドラッグ入力のＸ軸方向の座標値が０になり、（式１）を満たさなくなる。そのため、オブジェクトの送信指示が入力されたと判定される（ステップＳ２０４でＹＥＳ）。次に、ステップＳ２０５において、操作方向が決定される。図５（ｂ）では、オブジェクト５０３は、図４（ａ）と同様に、画面に向かって左方向にドラッグ操作で移動されているため、操作方向を示す角度の情報は、２７０［度］という値として決定される。今、保持部１１２には前回の操作方向を示す情報は保持されていないため、決定された操作方向は、前回の送信操作の操作方向と同じではないと判定される（ステップＳ２０７でＮＯ）。従って、操作方向を示す情報が保持部１１２に保持され（ステップＳ２１０）、操作方向は前回と異なることを示すフラグ情報ｆａｌｓｅが受信側装置５０１ｂに送信される（ステップＳ２１１）。さらに、操作方向を示す情報として、２７０［度］という角度を示す値、オブジェクト５０３の画像情報が、受信側装置５０１ｂに向け、送信される（ステップＳ２１２）。そして、画面５０２ａでは、操作方向に沿って、すなわち左に向かって、オブジェクト５０３が画面５０２ａから消失するように表示制御される（ステップＳ２１３）。
【００８１】
図５（ｃ）は、受信側装置５０１ｂが送信側装置５０１ａから送信された情報を受信した（ステップＳ３０１）ことにより、表示制御処理が開始された様子を示す。まず、受信側装置５０１ｂでは、送信側装置５０１ａから送信されたｆａｌｓｅというフラグ情報に基づいて、操作方向が前回とは異なると判定される（ステップＳ３０２でＮＯ）。従って、受信した操作方向を示す情報として、２７０［度］の値を保持部１１２に保持する（ステップＳ３０３）。そして、画面５０２ｂの中心を始点とし、２７０［度］を１８０度反転させた９０［度］という方向を持つベクトルを生成し、画面５０２ｂの端と交差する点５０５を出現位置として決定する（ステップＳ３０４）。受信側装置５０１ｂにおいては、出現位置５０５から出現したオブジェクト５０３が操作方向に沿って移動するように表示する（ステップ３０７）。本実施形態では、画面５０２ａと画面５０２ｂの表示上の上下左右が一致するように配置されているため、このような表示制御により、オブジェクト５０３が画面５０２ａと画面５０２ｂの境界を超えて、連続的に移動しているように表示される。従って、各装置が互いの位置情報を精度よく取得する手段を有さない場合でも、ユーザはオブジェクトの装置間の移動を直感的に把握できる。
【００８２】
［操作例２］
図６は、上下にずれた位置関係にある２つの情報処理装置１００において、本実施形態によるオブジェクトの送受信操作を行う操作例を示している。ただし、この場合にも、それぞれの装置の画面における表示上の上下左右は一致しているものとする。
【００８３】
ここでは、送信側装置６０１ａから受信側装置６０１ｂに、オブジェクト６０３に対応する画像データを送信する。送信側装置６０１ｂのユーザは、ドラッグ操作でオブジェクト６０３の表示位置を移動させ、受信側装置６０１ｂが存在する方向（画面６０２ａに向かって左上）に送りだす。ただし、図６で説明する操作例２においては、操作例１における操作方向が送信側装置６０１ａの保持部１１２に保持されているものとする。
【００８４】
図６（ａ）は、送信側装置６０１ａの画面６０２ａの中心にオブジェクト６０３が表示されている状態において、ユーザがオブジェクト上でドラッグ操作を開始した様子を示す。このとき、タッチ位置６０４が矢印方向にドラッグ操作で移動されるのに追従して、オブジェクト６０３の表示位置を移動させる表示制御が実行される（ステップＳ２０３）。図６（ａ）の状態では、タッチ位置６０４が（式１）（式２）を満たすため、オブジェクトの送信指示が入力されたとは判定されず（ステップＳ２０４でＮＯ）、送信側装置６０１ａ内に閉じたドラッグ操作であるとして扱われる。
【００８５】
図６（ｂ）は、ドラッグ操作が進められて、タッチ位置６０４が画面６０２ａの端に到達した様子を示す。この場合、タッチ位置６０４のドラッグ地点が示すドラッグ入力のＸ軸方向の座標値が０になり、（式１）を満たさなくなる。そのため、オブジェクトの送信指示が入力されたと判定される（ステップＳ２０４でＹＥＳ）。次に、ステップＳ２０５において、操作方向が決定される。図６（ｂ）では、操作方向を示す角度の情報は、３００［度］という値として決定されるとする。３００［度］は、保持部１１２に保持されている前回の操作方向を示す情報２７０［度］とは異なるため、決定された操作方向は、前回の送信操作の操作方向と同じではないと判定される（ステップＳ２０７でＮＯ）。従って、操作方向を示す情報が保持部１１２に保持され（ステップＳ２１０）、操作方向は前回と異なることを示すフラグ情報ｆａｌｓｅが受信側装置６０１ｂに送信される（ステップＳ２１１）。さらに、オブジェクト６０３の画像情報と、操作方向を示す情報として３００［度］という角度を示す値と、オブジェクト６０３に対応する画像データとが、受信側装置６０１ｂに向け、送信される（ステップＳ２１２）。そして、画面６０２ａでは、操作方向に沿って、すなわち左に向かって、オブジェクト６０３が画面６０２ａから左上に消失するように表示制御される（ステップＳ２１３）。
【００８６】
図６（ｃ）は、受信側装置６０１ｂが送信側装置６０１ａから送信された情報を受信した（ステップＳ３０１）ことにより、表示制御処理が開始された様子を示す。まず、受信側装置６０１ｂでは、送信側装置６０１ａから送信されたｆａｌｓｅというフラグ情報に基づいて、操作方向が前回とは異なると判定される（ステップＳ３０２でＮＯ）。従って、受信した操作方向を示す情報として、３００［度］の値を保持部１１２に保持する（ステップＳ３０３）。そして、画面６０２ｂの中心を始点とし、３００［度］を１８０度反転させた１２０［度］という方向を持つベクトルを生成し、画面６０２ｂの端と交差する点６０５を出現位置として決定する（ステップＳ２０４）。受信側装置６０１ｂにおいては、出現位置６０５から出現したオブジェクト６０３が操作方向に沿って移動するように表示する（ステップ３０７）。本実施形態では、画面６０２ａと画面６０２ｂの表示上の上下左右が一致するように配置されているため、このような表示制御により、オブジェクト６０３が画面６０２ａと画面６０２ｂの境界を超えて、連続的に移動しているように表示される。従って、各装置が互いの位置情報を精度よく取得する手段を有さない場合でも、ユーザはオブジェクトの装置間の移動を直感的に把握できる。
【００８７】
［操作例３］
図７は、操作例１と同様に、上下を揃えて真横に並べられた２つの情報処理装置１００において、２つ以上のオブジェクトに対して連続して送受信操作を行う操作例を示している。ただし、この場合にも、それぞれの装置の画面における表示上の上下左右は一致しているものとする。
【００８８】
図７（ａ）は、既にオブジェクト７０３ａが送信側装置７０１ａから、受信側装置７０１ｂに送信された状態を示している。送信側装置７０１ａの画面７０２ａには、さらにオブジェクト７０３ｂとオブジェクト７０３ｃが表示されており、ユーザがオブジェクト７０３ｂの送受信される操作例を説明する。ここで、前回オブジェクト７０３ａが送信されたときに決定された操作方向を示す情報は、２７０［度］であったとする。ここでは、タッチ位置７０４が、矢印方向にドラッグ操作で移動されるのに追従して、オブジェクト７０３ｂの表示位置を移動させる表示制御が実行される（ステップＳ２０３）。図７（ａ）の状態では、オブジェクトの送信指示が入力されたとは判定されず（ステップＳ２０４でＮＯ）、送信側装置７０１ａ内に閉じたドラッグ操作であるとして扱われる。
【００８９】
図７（ｂ）は、ドラッグ操作が進められて、タッチ位置７０４が画面７０２ａの端に到達した様子を示す。この場合、タッチ位置７０４のドラッグ地点が示すドラッグ入力のＸ軸方向の座標値が０になり、（式１）を満たさなくなる。そのため、オブジェクトの送信指示が入力されたと判定される（ステップＳ２０４でＹＥＳ）。次に、ステップＳ２０５において、操作方向が決定される。図７（ｂ）においても、操作方向を示す角度の情報は、２７０［度］と決定される。２７０［度］は、保持部１１２に保持されている前回の操作方向を示す情報２７０［度］と同じであると判定される（ステップＳ２０７でＹＥＳ）。従って、受信側装置７０１ｂに対して、操作方向が前回と同じ方向であることを示すフラグ情報ｔｒｕｅが送信される（ステップＳ２０８）。さらに、オブジェクト７０３ｂの画像情報と、オブジェクト７０３ｂに対応する画像データが受信側装置７０１ｂに対して送信される（ステップＳ２０９）。そして、画面７０２ａでは、操作方向に沿って、すなわち左に向かって、オブジェクト７０３ｂが画面７０２ａから左に消失するように表示制御される（ステップＳ２１３）。
【００９０】
図７（ｃ）は、受信側装置７０１ｂが送信側装置７０１ａから送信された情報を受信した（ステップＳ３０１）ことにより、表示制御処理が開始された様子を示す。まず、受信側装置７０１ｂでは、送信側装置７０１ａから送信されたｔｒｕｅというフラグ情報に基づいて、操作方向が前回とは同じであると判定される（ステップＳ３０２でＹＥＳ）。従って、保持部１１２に保持されている、前回の処理における操作方向を示す情報２７０［度］と、出現位置７０５の座標情報を読み出す（ステップｓ３０６）。そして、画面７０２ｂにおいて、出現位置７０５から出現したオブジェクト７０３ｂが操作方向に沿って移動するように表示する（ステップ３０７）。本実施形態では、画面７０２ａと画面７０２ｂの表示上の上下左右が一致するように配置されているため、このような表示制御により、オブジェクト７０３ｂが画面７０２ａと画面７０２ｂの境界を超えて、連続的に移動しているように表示される。従って、各装置が互いの位置情報を精度よく取得する手段を有さない場合でも、ユーザはオブジェクトの装置間の移動を直感的に把握できる。
【００９１】
このように、２つ以上のオブジェクトを連続して送受信する場合には、操作方向が前回の送受信操作と同じか否かを示すフラグ情報を利用した判定を行うことにより、送信される情報量を減少させることができ、通信処理の負荷の低減につながる。さらに、受信側装置において座標を求める計算処理を省略することができるので、情報処理装置１００の処理負荷を低減することができる。
【００９２】
＜第１の実施形態の変形例＞
これまで説明した第１の実施形態では、送信側装置の画面の中心に表示されているオブジェクトに対して行われるドラッグ操作で、オブジェクトの送信指示が入力されることを想定していた。すなわち、操作方向は、画面の中心付近から放射状に広がる方向のいずれかであるとみなしていた。従って、受信側装置において出現位置を決定するために生成するベクトルは画面の中心を始点とし、送受信の操作対象であるオブジェクトは常に画面の中心に向かって出現するように表示制御が行われた。
【００９３】
ここで、第１の実施形態の変形例として、受信側装置において出現位置を決定する際に、送信側装置から送信された操作方向に加えて、最終位置を利用する例を説明する。ここで、最終位置とは、送信側装置において、オブジェクトの送信指示が入力されたか否かを判定するのに利用された、最新のタッチ位置である。
【００９４】
これにより、変形例では、送信側装置において、オブジェクトの送信指示が入力されるまでに、送信側装置内に閉じたドラッグ操作で操作対象のオブジェクトが任意の位置に移動されていた場合でも、違和感なく両装置での表示内容を連携させることができる。
図８は、第１の実施形態の変形例における出現位置の決定方法を示す概要図である。図８（ａ）は、情報処理装置１００の画面８０１の周囲の辺のうち、２本の長辺を三分割することにより、画面８０１の周囲に８０２〜８０９の８つの分割領域を設定した様子を示している。図８（ｂ）は、送信側装置の画面において、最終位置がこれらのうちのいずれの領域に含まれるかによって、受信側装置の画面において出現位置がこれらのうちのいずれの領域内に決定されるかという対応関係を示すテーブルである。第１の実施形態の変形例では、このテーブルがＲＯＭ１０２に記憶されているものとする。なお、ここでは、「出現位置１」と「出現位置２」の２パターンの決定方法を示している。「出現位置１」に従う場合、２本の長辺付近の最終位置と、それに対応する出現位置の位置関係は、第１の実施形態と同様に、画面の中心に対して点対称となる。一方、「出現位置２」に従う場合、２本の長辺付近の最終位置と、それに対応する出現位置の位置関係は、画面の中央を縦断する直線に対して対象となる。それぞれの場合の表示状態については後述する。
【００９５】
第１の実施形態の変形例において、送信側装置及び受信側装置で実行される処理の具体的な内容は上述した図２及び図３のフローチャートの処理ステップに準じる。以下では、第１の実施形態と異なる点を説明する。
【００９６】
第１の実施形態の変形例では、送信側装置で実行されるステップＳ２０６において、方向決定部１１４が操作方向を決定する際に、保持部１１２に保持されている複数のタッチ位置の座標情報のうち、直近の所定回数の検出処理で取得された座標情報を利用する。それにより、送信側装置において、オブジェクトを画面外に送りだす直前のドラッグ操作の方向を求め、操作方向として決定する。例えば、保持部１１２に保持されているドラッグ操作中のタッチ位置の移動軌跡のうち、直近の５つのタッチ位置に基づいて求められる直線と、Ｙ軸のなす角度を操作方向として決定する。これにより、ドラッグ操作開始時にオブジェクトの表示位置に関わらず、ユーザが当該オブジェクトを送信する指示を入力した時に、オブジェクトが移動されていた方向を操作方向として決定する。そして、ステップＳ２０８またはステップＳ２１１において、表示制御部１１９が、操作方向が前回と同じか否かを示すフラグ情報とともに、最終位置の情報を受信側装置に送信する。ここで、最終位置の情報は、最終位置の座標情報か、あるいは最終位置が領域８０２〜８０９のいずれに含まれるかを示す識別情報であってもよい。
【００９７】
そして、第１の実施形態の変形例では、受信側装置で実行されるステップＳ３０４において、位置決定部１１８が、受信した最終位置の情報に基づいて出現位置を決定する。まず、受信した情報が示す最終位置が、上述した領域８０２〜８０９のいずれに含まれるかを判定し、図８（ｂ）のテーブルを参照する。位置決定部１１８は、図８（ｂ）のテーブルに基づいて、最終位置が含まれる領域に対して、出現位置が含まれる領域として対応付けられている領域を特定する。そして、操作対象のオブジェクトがその領域部分から受信側装置の画面内に出現するように、出現位置の座標を定める。第１の実施形態の変形例では、各領域の長手方向の辺のうち、より画面の外側に位置する辺の中心座標を出現位置として決定する。そして、ステップＳ３０７では、表示制御部１１９が、決定された出現位置から、操作対象のオブジェクトが出現するように表示制御を実行する。
【００９８】
図９は、２つの情報処理装置１００において、第１の実施形態の変形例によるオブジェクトの送受信操作を行う操作例を示している。ここでは送信側装置９０１ａから受信側装置９０１ｂに、オブジェクト９０３を送信する例を説明する。図９（ａ）は、受信側装置９０１ｂにおいて、図８（ｂ）のテーブルの「出現位置１」に従って、出現位置が決定された場合を示す。図９（ｂ）は、受信側装置９０１ｂにおいて、図８（ｂ）のテーブルの「出現位置２」に従って、出現位置が決定された場合を示す。
【００９９】
図９（ａ）は、送信側装置９０１ａにおいて、最終位置が領域８０８に含まれていたため、図８（ｂ）のテーブルの「出現位置１」に従って、出現位置が領域８０４内に決定された様子を示している。各装置のユーザが、各情報処理装置を手に保持して利用する際には、このように画面の上下方向のずれが生じる場合が多い。従って、送信側装置９０１ａのユーザが、あえてオブジェクト９０３を画面の左上寄りの位置に移動させるドラッグ操作を行った場合には、受信側装置９０１ｂが送信側装置９０１ａよりも左上寄りに配置されている可能性がある。従って、「出現位置１」に従う変形例では、第１の実施形態と同様に、２本の長辺付近の最終位置と、それに対応する出現位置の位置関係は、第１の実施形態と同様に、画面の中心に対して点対称となるように対応関係を設定する。
【０１００】
一方、図９（ｂ）は、送信側装置９０１ａにおいて、最終位置が領域８０８に含まれていたため、図８（ｂ）のテーブルの「出現位置２」に従って、出現位置が領域８０２内に決定された様子を示している。送信側装置９０１ａのユーザが、あえてオブジェクト９０３を画面の左上寄りの位置にスライドする場合には、オブジェクトが送信側装置９０１ａ内に閉じたドラッグ操作によって、既に画面の上側に寄った位置に表示されている場合も考えられる。この場合、装置同士に画面上下方向のずれが無かったとしてもユーザがオブジェクトを横方向にドラッグすることによって送信指示を入力したため、最終位置は左上に寄っている可能性がる。従って、「出現位置２」に従う変形例では、２本の長辺付近の最終位置と、それに対応する出現位置の位置関係は、画面の中央を縦断する直線に対して対象となる。それぞれの場合の表示状態については後述する。
【０１０１】
いずれの場合も、送信側装置において入力されたドラッグ操作の最終位置を利用して受信側装置におけるオブジェクトの出現位置を決定することにより、オブジェクト９０３が画面９０２ａと画面９０２ｂの境界を超えて、連続的に移動しているように表示される。従って、各装置が互いの位置情報を精度よく取得する手段を有さない場合でも、ユーザはオブジェクトの装置間の移動を直感的に把握できる。さらに、送信側装置において、オブジェクトの送信指示が入力されるまでに、送信側装置内に閉じたドラッグ操作で操作対象のオブジェクトが任意の位置に移動されていた場合でも、違和感なく両装置での表示内容を連携させることができる。
【０１０２】
なお、「出現位置１」に従うか、「出現位置２」に従うかは、操作環境に応じて設定することができるものとする。また、第１の実施形態と、第１の実施形態の変形例も、設定によって使い分けることができてもよい。また、第１の実施形態において、決定された操作方向が所定の条件を満たす場合に、第１の実施形態の変形例の処理に移行するなど、装置内の判断によって使い分けることもできる。
【０１０３】
＜第２の実施形態＞
第１の実施形態では、送信側装置と受信側装置とが、それぞれの画面における表示上の上下左右を一致させるように配置された状態を想定していた。そのため、それぞれの画面上で定義された座標軸に基づく角度情報を利用した表示制御を行うことによって、表示オブジェクトの２つの情報処理装置をまたぐ平行移動を実現した。それに対し、第２の実施形態では、２つの情報処理装置の姿勢が反転しているようなケースにおいても、画面間の境界を超えてオブジェクトが連続的に移動しているように表示する実施形態を説明する。
【０１０４】
図１０は本実施形態に係る情報処理装置１００の構成を示す図である。本実施形態では、情報処理装置１００は、操作対象を送信する送信側装置と、送信された操作対象を受信する受信側装置のどちらにもなり得る。尚、第１の実施形態と同様の処理を行う部分については、同一の符号を付記して、その詳細な説明を省略する。
【０１０５】
図１０（ａ）は、本実施形態に係る情報処理装置１００のハードウェア構成の一例を示すブロック図である。第１の実施形態と異なる点は、方位取得センサ１００７が加わったことである。方位取得センサ１００７は、ＧＰＳ（Ｇｌｏｂａｌ  Ｐｏｓｉｔｉｏｎｉｎｇ  Ｓｙｓｔｅｍ）センサ、地磁気センサ、加速度センサ等により、方位に対する情報処理装置１００の向き（姿勢）を検知するデバイスである。ここで、方位とは、東西南北で示される方位であって、情報処理装置１００やその周囲の環境に依存しない絶対的な基準としての方位情報である。
【０１０６】
図１０（ｂ）は、本実施形態に係る情報処理装置１００の機能構成の一例を示すブロック図である。第１の実施形態と異なる点は、方位検知部１０１１、第１の変換部１０１２、第２の変換部１０１３が加わったことである。
【０１０７】
方位検知部１０１１は、ＣＰＵ１０１、ＲＯＭ１０２、ＲＡＭ１０３、方位取得センサ１００７によって構成され、方位に対する情報処理装置１００の表示画面上の座標軸（座標軸の向きは第１の実施形態に順ずる）の方向を示す情報を取得する。第２の実施形態においても、方向決定部１１４は情報処理装置１００の画面上に対して定義された座標軸に基づく角度の情報として、操作方向を決定する。
【０１０８】
第１の変換部１０１２は、ＣＰＵ１０１、ＲＯＭ１０２、ＲＡＭ１０３等によって構成され、方位検知部１０１１が取得した方位との関係を利用して、画面上で定義された角度情報を、方位に対する角度情報に変換する。そして、変換後の方位に対する角度情報を、操作方向を示す情報として送信管理部１１５に通知するとともに保持部１１２に保持する。通知を受けた管理部１１５は、第１の実施形態と同様に、前回決定された操作方向を示す情報と、今回決定された操作方向を示す情報との比較結果に基づいて、送信部１１６に送信させる情報を決定する。
【０１０９】
第２の変換部１０１３は、受信部１１７が受信した情報のうち、操作方向を示す方位に対する角度情報を、画面上で定義された角度情報に変換して、変換後の角度情報を保持部１１２に保持するとともに、位置決定部１１８に通知する。位置決定部１１８は、第１の実施形態と同様に、操作方向を示す情報を利用して、出現位置を決定する。そして、表示制御部１１９では、決定された出現位置から、画面上で定義された角度情報に変換された操作方向に沿って、オブジェクトが出現するように表示制御を実行する。
【０１１０】
次に、図１１及び図１２のフローチャートを参照して、本実施形態において、送信側装置及び受信側装置のそれぞれで実行される具体的な処理の流れを説明する。ただし、図２及び図３と同番号を付した処理ステップでは、同じ内容の処理が実行される。従って詳細な説明は省略し、第１の実施形態と異なる点を説明する。
【０１１１】
図１１は本実施形態の情報処理装置１００において実行される、オブジェクトを送信する処理の流れの一例を示すフローチャートである。情報処理装置１００では、送信モードが設定され、画面の中心部に少なくとも１つのオブジェクトが表示されている状態で、ユーザがオブジェクト上をタッチしたことが入力インタフェース１０５から通知されると、図１１のフローチャートが起動される。
【０１１２】
第２の実施形態では、ステップＳ２０６において、方向決定部１１４が操作方向を決定したら、ステップＳ１１０１に進む。ただしステップＳ２０６において、方向決定部１１４は、送信側装置の画面上に定義された座標軸に基づいて、ユーザ操作によるドラッグ方向の、ｙ軸に対する角度の値を、操作方向を示す情報として決定する。
【０１１３】
ステップＳ１１０１では、方位検知部１０１１が、送信側装置の画面に定義された座標軸と方位の関係を取得する。本実施形態では、図１（ｃ）と同じように画面に対してｘ軸とｙ軸が定義されており、画面の奥行き方向（ｚ軸方向）は考えない。本実施形態のステップＳ１１０１では、方位検知部１０１１は、ｙ軸が真北に対してなす角度を示す値を取得する。ここで、角度を表す値は、真北方向を基準とし、０［度］から３５９［度］までの数値とし、３６０度以上あるいは０度以下の角度が求められた場合には、範囲内に納まるように値を変換するものとする。従って、真南に向く方向は１８０［度］、真西に向く方向は２７０［度］として扱うこととなる。ただし、方向を示す情報は角度を示す値に限らず、東西南北といったように、粒度を落とした情報を利用してもよい。
【０１１４】
ステップＳ１１０２では、第１の変換部１０１２が、ステップＳ１１０１で取得された座標軸と方位の関係を利用して、ステップＳ２０６において決定された操作方向を、方位で示される情報に変換する。本実施形態では、ｙ軸が方位の真北方向に対してなす角度の情報を利用して、ｙ軸に対する角度で定義されていた操作方向を、真北に対する角度を示す情報に変換する。
【０１１５】
ステップＳ２０７以降で実行される処理は、第１の実施形態に準じる。ただし、各処理で利用される操作方向の情報は、ステップＳ１１０２において第１の変換部１０１２による変換が行われた後の、真北に対する角度を示す情報で示された操作方向の情報である。
【０１１６】
以上が、第２の実施形態において、送信側装置として機能する情報処理装置１００が実行するオブジェクト送信処理の流れである。本実施形態でも、送信側装置のユーザは、送信したい相手（受信側装置）が存在する位置に向けて、オブジェクトをドラッグするという直感的な操作で、送信操作の対象の指定と送信開始の指示を入力することができる。
【０１１７】
次に、図１２は、第２実施形態の情報処理装置１００において実行される、オブジェクトを受信する処理の流れの一例を示すフローチャートである。本実施形態においても、送受信を行う複数の情報処理装置では、同じアプリケーションを実行することにより、予め互いを識別して通信を行うことが可能な状態となっている。情報処理装置１００では、当該アプリケーションにおいて受信モードが設定されたことにより、図１２のフローチャートが起動され、受信側装置として機能する。
【０１１８】
第２の実施形態では、ステップＳ３０２において、位置決定部１１８が、送信側装置から送信されたフラグ情報に基づいて、操作方向は前回の送信操作と同じではないと判定したら、ステップＳ１２０１に進む。
【０１１９】
ステップＳ１２０１では、方位検知部１０１１が、送信側装置の画面に定義された座標軸と方位との関係を取得する。本実施形態の方位検知部１０１１は、受信側装置の表示画面上で定義されるｙ軸が真北に対してなす角度を示す値を取得する。
【０１２０】
ステップＳ１２０２では、第２の変換部１０１３が、ステップＳ１２０１で取得された座標軸と方位との関係を利用して、受信部１１７が受信した、方位で示されている操作方向の情報を、受信側粗装置の画面上で定義された角度の情報に変換する。本実施形態では、Ｙ軸が方位の真北方向に対してなす角度の情報を利用して、真北に対する角度を示す情報を、Ｙ軸に対する角度で定義された操作方向を示す情報に変換する。
【０１２１】
ステップＳ３０３以降で実行される処理は、第１の実施形態に準じる。ただし、以降の処理において扱われる操作方向を示す情報は、受信装置の画面上で定義された座標軸に基づく角度で示される情報である。
【０１２２】
以上が、本実施形態において、受信側装置として機能する情報処理装置１００が実行する、オブジェクトの受信処理の流れである。本実施形態においても、受信側装置において送信側装置から受信した操作方向の情報に基づく処理を行うことにより、互いに連携した表示制御が可能になる。受信側装置のユーザは、送信側装置と連携した表示制御により、オブジェクトを受信したことと、当該オブジェクトを送信した相手の位置を直感的に把握できる。なお、本実施形態では、送信側装置から受信側装置に送信される方向情報を、方位を利用して示したが、方位に限らず、各装置の向き（姿勢）に依存しない外部の基準を利用することで、本実施形態は実現される。
【０１２３】
以上説明したように、第２の実施形態では、複数の情報処理装置間で、方位など、装置の状態に依存しない基準を利用した方向の情報を送受信する。従って、各情報処理装置の向き（姿勢）に影響を受けずに、複数の情報処理装置を連携させた表示制御を行うことができる。ただし、第２の実施形態においても、送信する情報は方向情報に限定されない。例えば、受信側装置の画面における出現位置を方位を利用して指定する情報を送信することもできる。
【０１２４】
［操作例４］
次に、具体的な操作例を挙げて、本実施形態で実行される一連の処理を説明する。
【０１２５】
図１３は、２つの情報処理装置１００を、片方を表示画面の長手方向を反転させて並べ、本実施形態によるオブジェクトの送受信操作を行う操作例を示している。ここでは、送信側装置１３０１ａから受信側装置１３０１ｂに、オブジェクト１３０３を送信する。送信側装置１３０１ａのユーザは、ドラッグ操作でオブジェクト１３０３の表示位置を移動させ、受信側装置１３０１ｂが存在する左側向かって画面１３０２ａの外に送りだすようにする。各装置の画面には、図示されるようにそれぞれ左下を原点としてＸ軸とＹ軸が定義されている。また、図１３の操作例では、送信側装置１３０１ａのＹ軸が、真北の方向を向いているとする。
【０１２６】
なお、図１３で説明する操作例４は、初めて行われる操作であって、送信側装置１３０１ａの保持部１１２には前回の操作方向を示す情報は保持されていないものとする。
【０１２７】
図１３（ａ）は、送信側装置１３０１ａの画面１３０２ａの中心にオブジェクト１３０３が表示されている状態において、ユーザがオブジェクト上でドラッグ操作を開始した様子を示す。タッチ位置１３０４は、ステップＳ２０１で取得される最新のタッチ位置であって、矢印方向にドラッグ操作が行われている（ステップＳ２０２でＹＥＳ）。従って、タッチ位置１３０４が移動されるのに追従して、オブジェクト１３０３の表示位置を移動させる表示制御が実行される（ステップＳ２０３）。本実施形態では、図１３（ａ）の状態では、オブジェクトの送信指示が入力されたとは判定されず（ステップＳ２０４でＮＯ）、送信側装置５０１ａ内に閉じたドラッグ操作であるとして扱われる。
【０１２８】
図１３（ｂ）は、ドラッグ操作が進められて、タッチ位置１３０４が画面１３０２ａの端に到達した様子を示す。この場合、タッチパネル上の左下を座標平面の原点とすると、タッチ位置１３０４のドラッグ地点が示すドラッグ入力のＸ軸方向の座標値が０になり、（式１）を満たさなくなる。そのため、オブジェクトの送信指示が入力されたと判定される（ステップＳ２０４でＹＥＳ）。次に、ステップＳ２０５において、操作方向が決定される。図１３（ｂ）では、オブジェクト１３０３は、画面に向かって左方向にドラッグ操作で移動されているため、操作方向を示す角度の情報は、２７０［度］という値として決定される。次に、方位検知部１０１１が、送信側装置１３０１ａのＹ軸が、真北方向に対してなす角度を示す値を取得する（ステップＳ１１０１）。図１３では、送信側装置１３０１ａのＹ軸は、真北方向に平行であるため、方位検知部１０１１は０［度］という値を取得する。次に、第１の変換部１０１２は、操作方向を、真北を基準とした方位で示される角度情報に変換する。図１３の例は、Ｙ軸と真北が平行であったため、送信方を示す情報は、真北に対して２７０［度］という値として出力される（ステップＳ１１０２）。今、保持部１１２には前回の操作方向を示す情報は保持されていないため、操作方向は、前回の送信操作の操作方向と同じではないと判定される（ステップＳ２０７でＮＯ）。従って、操作方向を示す情報が、保持部１１２に保持され（ステップＳ２１０）、操作方向は前回と異なることを示すフラグ情報ｆａｌｓｅが受信側装置１３０１ｂに送信される（ステップＳ２１１）。さらに、オブジェクト１３０３の画像情報と、２７０［度］という操作方向を示す値と、オブジェクト１３０３に対応する画像データとが、受信側装置１３０１ｂに向け、送信される（ステップＳ２１２）。そして、画面１３０２ａでは、操作方向に沿って、すなわち左に向かって、オブジェクト１３０３が画面１３０２ａから消失するように表示制御される（ステップＳ２１３）。
【０１２９】
図１３（ｃ）は、受信側装置１３０１ｂが送信側装置１３０１ａから送信された情報を受信した（ステップＳ３０１）ことにより、表示制御処理が開始された様子を示す。まず、受信側装置１３０１ｂでは、送信側装置１３０１ａから送信されたｆａｌｓｅというフラグ情報に基づいて、操作方向が前回とは異なると判定される（ステップＳ３０２でＮＯ）。そして、方位検知部１０１１が、送信側装置１３０１ａのＹ軸が、真北方向に対してなす角度を示す値を取得する。図１３の例の場合、受信側装置のＹ軸は、真南方向を向いているため、方位検知部１０１１は１８０［度］という値を取得する（ステップＳ１２０１）。次に、第２の変換部１０１３が、送信側装置から受信した２７０［度］という操作方向の情報を、受信側装置の画面に対して定義された角度情報に変換する。図１３の例の場合、受信側装置ではＹ軸が真北に対して１８０［度］回転しているため、操作方向は９０［度］であると変換される。これは例えば、２７０［度］から１８０［度］減じることで求められる。位置決定部１１８は、操作方向を示す情報として、９０［度］の値を保持部１１２に保持する（ステップＳ３０３）。そして、画面１３０２ｂの中心を始点とし、９０［度］を１８０度反転させた２７０［度］という方向を持つベクトルを生成し、画面１３０２ｂの端と交差する点１３０５を出現位置として決定する（ステップＳ２０４）。受信側装置１３０１ｂにおいては、出現位置１３０５から出現したオブジェクト１３０３が操作方向に沿って移動するように表示する（ステップ３０７）。このような表示制御により、オブジェクト１３０３が画面１３０２ａと画面１３０２ｂの境界を超えて、連続的に平行移動しているように表示される。従って、情報処理装置の向き（姿勢）に影響を受けることなく、ユーザは、オブジェクトの装置間の移動を直感的に把握できる。
【０１３０】
［操作例５］
次に、図１２は送信側装置１４０１ａと、受信側装置１４０１ｂとが、任意の相対角度を持って横に並べられ、本実施形態によるオブジェクトの送受信操作を行う操作例を示している。各装置の画面には、図示されるようにそれぞれ左下を原点としてＸ軸とＹ軸が定義されている。また、図示されるように、紙面に向かって上が真北の方向であるとし、送信側装置１４０１ａは真北に対して反時計回りに３０度、受信側装置１４０１ｂは真北に対して時計回りに２５度、傾けられている。以下、図１３の操作例４と動作が共通するステップは省略して説明する。
【０１３１】
図１４（ａ）は、送信側装置１４０１ａの画面１４０２ａの中心にオブジェクト１４０３が表示されている状態において、ユーザがオブジェクト上でドラッグ操作を開始した様子を示す。タッチ位置１４０４は、ステップＳ２０１で取得される最新のタッチ位置であって、矢印方向にドラッグ操作が行われている（ステップＳ２０２でＹＥＳ）。
【０１３２】
図１４（ｂ）は、さらにドラッグ操作が進められて、タッチ位置１４０４が画面１４０２ａの端に到達した様子を示す。ステップＳ２０５において、方向決定部１１４により操作方向が決定される。図１４（ｂ）では、操作方向を示す角度の情報は、３００［度］という値として決定されるとする。そして、図１３では、送信側装置１３０１ａのＹ軸は、真北方向に対して反時計回りに３０度傾いているため、方位検知部１０１１は３３０［度］という値を取得する（ステップＳ１１０１）。次に、第１の変換部１０１２は、３００［度］という角度で示された操作方向を、方位を基準とした角度情報２７０［度］に変換する（ステップＳ１１０１）。これは例えば、３００［度］と３３０［度］を足し合わせてから、３６０［度］以内に収まるように、３６０［度］を減じることで求められる。（３００＋３３０−３６０＝２７０）さらオブジェクト１４０３の画像情報と、２７０［度］という操作方向を示す方位に基づく値と、オブジェクト１４０３に対応する画像データとが、受信側装置１４０１ｂに向け、送信される（ステップＳ２１２）。
【０１３３】
図１４（ｃ）は、受信側装置１４０１ｂが送信側装置１４０１ａから送信された情報を受信した（ステップＳ３０１）ことにより、表示制御処理が開始された様子を示す。操作方向が前回とは異なると判定された場合（ステップＳ３０２でＮＯ）、方位検知部１０１１が、送信側装置１４０１ａのＹ軸が、真北方向に対してなす角度を示す値２５［度］を取得する（ステップＳ１２０１）。次に、第２の変換部１０１３が、送信側装置から受信した２７０［度］という操作方向の情報を、受信側装置の画面に対して定義された角度情報に変換する（ステップＳ１２０２）。図１４の例の場合、受信側装置ではＹ軸が真北に対して２５［度］回転しているため、操作方向は２４５［度］であると変換される。これは例えば、２７０［度］から２５［度］減じることで求められる。位置決定部１１８は、２４５［度］を１８０度反転させた６５［度］という方向を持つベクトルを生成し、画面１４０２ｂの端と交差する点１４０５を出現位置として決定する（ステップＳ２０４）。受信側装置１４０１ｂにおいては、出現位置１４０５から出現したオブジェクト１４０３が操作方向に沿って移動するように表示する（ステップ３０７）。このような表示制御により、オブジェクト１４０３が画面１４０２ａと画面１４０２ｂの境界を超えて、連続的に平行移動しているように表示される。従って、情報処理装置の向き（姿勢）に影響を受けることなく、ユーザは、オブジェクトの装置間の移動を直感的に把握できる。
【０１３４】
以上のような処理によって、本実施形態では、任意の相対角度を持って並べられた複数の情報処理装置にける表示内容を連携させることができる。
【０１３５】
＜その他の実施形態＞
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【図１】
2014123349.tif 000003
【図２】
2014123349.tif 000004
【図３】
2014123349.tif 000005
【図４】
2014123349.tif 000006
【図５】
2014123349.tif 000007
【図６】
2014123349.tif 000008
【図７】
2014123349.tif 000009
【図８】
2014123349.tif 000010
【図９】
2014123349.tif 000011
【図１０】
2014123349.tif 000012
【図１１】
2014123349.tif 000013
【図１２】
2014123349.tif 000014
【図１３】
2014123349.tif 000015
【図１４】
2014123349.tif 000016