以下、図面を参照しながら、本発明の実施形態について説明する。
まず、第1の実施形態について説明する。図1は、本発明の第1の実施形態における情報処理システムのシステム構成の一例を示す図である。情報処理システムは、情報処理装置101と投影撮像装置102と携帯端末103とを含む。情報処理装置101は、投影撮像装置102と通信可能に接続されており、更にディスプレイ410と入力デバイス409とも通信可能に接続されている。図1では、これらの装置は有線で接続されているが、無線であってもよい。また、情報処理装置101と携帯端末103とは、同じネットワークに接続しており、当該ネットワークを介して相互に通信可能となっている。尚、図1のシステム上に接続される各種端末の構成は一例であり、用途や目的に応じて様々な構成例がある。
情報処理装置101は、オペレーティングシステムを搭載する汎用的な装置である。情報処理装置101は、情報処理装置101に接続された各種デバイスに対して各種動作を実行するよう指示を行う。
投影撮像装置102は、デジタルカメラと赤外線センサとプロジェクタとを備える装置である。情報処理装置101からの指示に応じてプロジェクタで投影をし、投影された机上等の投影面をデジタルカメラで撮像し、また投影面上でユーザの手の動きや物体の位置を認識する。
投影撮像装置102の外部構造及び内部構造の概要の一例について、図2を用いて説明する。
図2は、投影撮像装置102の正面図と右側面図である。内部構造の隠れ線は破線で表現している。投影撮像装置102は、デジタルカメラ421(撮像装置)と赤外線センサ422(センサ装置)とプロジェクタ423(投影装置)とを格納する収納部203を備えている。収納部203は底面201と左側面202aと右側面202bとで左右から挟みこんで固定している。
また、上面204が左側面202aと右側面202bとの上部に設置され、上面204の下側にはプロジェクタ423から照射される光を反射するための反射鏡207を備える。すなわち、プロジェクタ423は第1の開口部205を通してこの反射鏡207に向けて投影できるよう、設置されている。デジタルカメラ421も同様に、反射鏡207で反射した投影面を撮像するため、デジタルカメラ421は第2の開口部206を通して反射鏡207に向けて設置されている。
また赤外線センサ422は、例えば赤外線を用いた深度センサである。これはプロジェクタ423が投影した投影面上におけるユーザの手や紙文書(以下、書類という。)等の位置や動きを特定するために、赤外線センサ422からこれらの物体までの距離を算出する。赤外線センサ422は、近赤外線のドットパターンを現実空間に投影し、このドットの形や間隔を取得することで物体までの距離を算出する。または、赤外線光を投影し、赤外線センサ422が備えるカメラによって反射した赤外線光を読み取り、赤外線光が往復した時間を算出することで距離を算出する方式であってもよい。現実空間における物体の位置や動きを取得することができれば、赤外線センサ422の距離の算出方式はどのような方式であってもよいし、赤外線センサ422以外のセンサを用いてもよい。また、赤外線センサ422もデジタルカメラ421と同様に、第2の開口部206を通して反射鏡207に向けて設置されている。この反射鏡207に向けて赤外線を照射する。
投影撮像装置102は以上のように大きく3つの装置を内包しており、これらがそれぞれ情報処理装置101と通信可能に接続されている。本実施形態においては、情報処理装置101と投影撮像装置102とが異なる筐体であるが、同一の筐体であってもよい。すなわち、投影撮像装置102に更に情報処理装置101を内包してもよいし、情報処理装置101がプロジェクタ、デジタルカメラ、赤外線センサを備えてもよい。
図1に説明を戻す。携帯端末103は、スマートフォンやタブレット端末といった携帯端末である。本実施形態では、携帯端末103−1と携帯端末103−2とが存在するものとして説明を行う。尚、携帯端末103は、情報処理装置101と通信可能な装置であれば何でもよく、携帯端末に限らない。
次に図3を用いて、本実施形態における投影撮像装置102とユーザとの位置関係について説明する。投影撮像装置102は、机上303に設置される。本実施形態では机を挟んで二人のユーザがいる。銀行窓口で商品説明を行うテラー301と、商品説明を受ける顧客302である。
テラー301は、入力デバイス409を操作して情報処理装置101に画面の表示指示を行うと、情報処理装置101からプロジェクタ423に対して当該画面の投影指示が送信される。プロジェクタ423はこれを受けると反射鏡207に向かって左右を反転させた画面を投影する。これは、反射鏡207で反射することにより、投影面304に投影される像が左右反転してしまうからである。こうすると、投影面304に指示した画面が投影される。画面を左右に反転させる処理は、情報処理装置101が行ってもよいし、プロジェクタ423が行ってもよい。また投影面304は、投影される光が見やすいよう模様のない白い面であることが望ましい。
プロジェクタ423から照射された光が反射鏡207で図3の破線の矢印で示すような方向に反射されると、その光が投影面304に投影される。この光によって表現される画面を見て、テラー301が顧客302に商品説明を行う。本実施形態では、このようにテラー301と顧客302とが机を挟んで位置しており、それぞれが投影された画面を見ながら操作していく形態を前提として説明を行う。
図4は、情報処理装置101及び投影撮像装置102のハードウェア構成の一例を示す図である。
CPU401は、システムバス404に接続される各デバイスやコントローラを統括的に制御する。
また、ROM402あるいは外部メモリ411(記憶手段)には、CPU401の制御プログラムであるBIOS(Basic Input / OutputSystem)やオペレーティングシステムプログラム(以下、OSという。)が記憶されている。更には、情報処理装置101の実行する機能を実現するために必要な各種プログラム等も記憶されている。RAM403は、CPU401の主メモリ、ワークエリア等として機能する。
CPU401は、処理の実行に際して必要なプログラム等をRAM403にロードして、プログラムを実行することで各種動作を実現するものである。
また、汎用入出力コントローラ405は、キーボードやマウス等の入力デバイス409、更には投影撮像装置102のデジタルカメラ421や赤外線センサ422との入出力を制御する。これらは、USB(Universal Serial Bus)等のバス規格により接続される。
ビデオコントローラ406は、ディスプレイ410や投影撮像装置102のプロジェクタ423等の表示装置や投影装置への表示を制御する。ディスプレイ410は例えばCRTや液晶ディスプレイである。更にビデオコントローラ406は、ディスプレイ410と投影撮像装置102のプロジェクタ423とそれぞれに対して同じ画面または異なる画面を表示及び投影指示する。これらは、いわゆるミラーリングやマルチモニタが可能である。
メモリコントローラ407は、ブートプログラム、ブラウザソフトウエア、各種アプリケーション、フォントデータ、ユーザファイル、編集ファイル、各種データ等を記憶するハードディスクやフレキシブルディスク等の外部メモリ411へのアクセスを制御する。或いはPCMCIAカードスロットにアダプタを介して接続されるカード型メモリ等の外部メモリ411へのアクセスも制御する。
通信I/Fコントローラ408は、ネットワークを介して、外部機器と接続及び通信するものであり、ネットワークでの通信制御処理を実行する。例えば、TCP/IPを用いたインターネット通信等が可能である。
尚、CPU401は、例えばRAM403内の表示情報用領域へアウトラインフォントの展開(ラスタライズ)処理を実行することにより、ディスプレイ410上での表示や投影撮像装置102のプロジェクタ423での投影を可能としている。また、CPU401は、ディスプレイ410上の不図示のマウスカーソル等でのユーザ指示を可能とする。更にCPU401は、投影面304に投影された画面をユーザの手でタッチすることによっても、ユーザ指示を可能とする。すなわち、赤外線センサ422で検知した現実空間におけるユーザの手の座標位置に応じて、画面のボタン等が押下されたのか否かを検知し、CPU401に動作を実行させる。尚、本実施形態における投影面304でのタッチ操作とは、投影面304である机上に触れているか否かは特に問わない。赤外線センサ422が検知したユーザの手や指の高さによって、タッチ操作を受け付けたか否かを判断する。
本発明の情報処理装置101が後述する各種処理を実行するために用いられる各種プログラム等は外部メモリ411に記録されており、必要に応じてRAM403にロードされることによりCPU401によって実行されるものである。さらに、本発明に係わるプログラムが用いる定義ファイルや各種情報テーブルは外部メモリ411に格納されている。
図5は、携帯端末103のハードウェア構成の一例を示す図である。
CPU501は、システムバス504に接続される各デバイスやコントローラを統括的に制御する。
また、ROM502あるいはフラッシュメモリ514には、CPU501の制御プログラムであるBIOSやOSや、携帯端末103が実行する機能を実現するために必要な、後述する各種プログラム等が記憶されている。RAM503は、CPU501の主メモリ、ワークエリア等として機能する。
CPU501は、処理の実行に際して必要なプログラム等をRAM503にロードして、プログラムを実行することで各種動作を実現するものである。
また、入力コントローラ505は、タッチパネル510、マイク511、カメラ512からの入力を制御する。タッチパネル510からはユーザのタッチ操作に関する入力を制御し、マイク511からは音声の入力を制御し、更にカメラ512からは撮影された静止画や動画の入力を制御する。出力コントローラ506は、タッチパネル510、スピーカ513への出力を制御する。
タッチパネル510は、ユーザからのタッチ操作を検知すると共に、前述した出力コントローラ506から送られた映像を表示する。タッチパネル510は、表示器と位置入力装置とが一体となった部品である。複数の箇所に対するタッチ操作(以下、マルチタッチという。)も検知可能である。
メモリコントローラ507は、ブートプログラム、ブラウザソフトウエア、各種アプリケーション、フォントデータ、ユーザファイル、編集ファイル、各種データ等を記憶するフラッシュメモリ514へのアクセスを制御する。本実施形態においては、フラッシュメモリとして説明を行うが、ハードディスクやフレキシブルディスク或いはPCMCIAカードスロットにアダプタを介して接続されるカード型メモリ等の記憶媒体であってもよい。
通信I/Fコントローラ509は、ネットワークを介して、外部機器と接続・通信するものであり、ネットワークでの通信制御処理を実行する。例えば、TCP/IPを用いたインターネット通信等が可能である。
センサコントローラ508は、携帯端末103が備えるセンサ515からの入力を制御する。携帯端末103のセンサ515には様々なセンサが存在し、例えば方位センサ、加速度センサ等である。
尚、CPU501は、例えばRAM503内の表示情報用領域へアウトラインフォントの展開(ラスタライズ)処理を実行することにより、タッチパネル510上での表示を可能としている。
本発明の携帯端末103が後述する各種処理を実行するために用いられる各種プログラム等はフラッシュメモリ514に記録されており、必要に応じてRAM503にロードされることによりCPU501によって実行されるものである。さらに、本発明に係わるプログラムが用いる定義ファイルや各種情報テーブルはフラッシュメモリ514に格納されている。
次に、情報処理装置101及び携帯端末103の機能構成の一例について図6を用いて説明する。尚、図6の情報処理装置101及び携帯端末103の機能構成は一例であり、用途や目的に応じて様々な構成例がある。
情報処理装置101は機能部として、記憶部601と、表示制御部602と、投影制御部603と、撮像制御部604と、センサ制御部605と、座標変換部606と、操作検知部607と、通信制御部608と、計測・算出部609とを備える。また、情報処理装置101は機能部として、アニメーション制御部610を備える。
記憶部601は、後述する各種テーブルの情報や各種画面を構成する情報を記憶するための機能部である。必要に応じて、情報の追加・更新・削除を行う。
表示制御部602は、情報処理装置101と通信可能に接続されたディスプレイ410の表示を制御するための機能部である。表示制御部602から画面等の表示指示がなされると、ビデオコントローラ406を介してディスプレイ410に表示指示が送信される。そして、ディスプレイ410はこの指示を受信すると、指示に従って画面等を表示する。
投影制御部603は、情報処理装置101と通信可能に接続されたプロジェクタ423の投影を制御するための機能部である。投影制御部603から画面等の投影指示がなされると、表示制御部602と同様にビデオコントローラ406を介してプロジェクタ423に投影指示が送信される。そして、プロジェクタ423はこの指示を受信すると、指示に従って画面等を現実空間に投影する。
撮像制御部604は、情報処理装置101と通信可能に接続されたデジタルカメラ421の撮像を制御するための機能部である。撮像制御部604から投影面304の撮像指示が出されると、汎用入出力コントローラ405を介してデジタルカメラ421に撮像指示がなされる。デジタルカメラ421はこの指示を受信すると、撮像を行い、撮像により生成された画像データを情報処理装置101に送信する。撮像制御部604は、これを受け取り、画像データを左右反転させた上で記憶部601が外部メモリ411等に記憶する。前述した通り、デジタルカメラ421は反射鏡207に写った像を撮像するため左右が反転している。これを補正するために、記憶部601で画像データを記憶する前に、撮像制御部604がこの画像データを左右反転する。
センサ制御部605は、情報処理装置101と通信可能に接続された赤外線センサ422から送信される、投影面304における現実空間の情報(物体の有無や位置等)を受信するための機能部である。赤外線センサ422が検出した現実空間の情報は、赤外線センサ422から情報処理装置101に対して逐一送信される。センサ制御部605はこれを受信し、後述する座標変換部606に渡す。
座標変換部606は、センサ制御部605が受信した現実空間の情報に含まれる、投影面304にある物体の位置を示す座標値を変換するための機能部である。座標変換部606は、この座標値を投影面304に投影された画面における座標値に変換する。すなわち、赤外線センサ422で検知した座標値が、情報処理装置101が管理する画面のどの座標値に該当するのかを、この座標変換部606を用いて特定する。尚、座標変換の方法は従来技術を用いるため詳細な説明は省略する。
操作検知部607は、ユーザからの操作を検知するための機能部である。情報処理装置101に接続された入力デバイス409を通じて送信されるユーザからの指示を検知したり、投影面304に投影された画面でユーザが行った指示を検知したりする。後者の指示の検知は、投影面304において検知した物体の座標値を座標変換部606で変換することにより画面上のどのボタンが押下されたのかを検知したり、書類が置かれることにより書類の取込が指示されたのかを検知したりする。
通信制御部608は、情報処理装置101と携帯端末103との通信を制御するための機能部である。通信制御部608は、情報処理装置101と携帯端末103との情報の送受信を制御する。また、通信制御部608は、情報処理装置101が属するネットワークに接続された携帯端末103のIPアドレス等(以下、接続先情報という。)を取得することが可能である。
計測・算出部609は、情報処理装置101と携帯端末103とのデータの送信時間を計測したり、投影面304上の距離を計測したりするための機能部である。また、計測・算出部609は、計測した各種情報を基に、情報処理装置101と携帯端末103と間の送信速度や後述するサムネイル画像の移動速度を算出することも可能である。
アニメーション制御部610は、ディスプレイ410及び/またはプロジェクタ423でユーザに提示する映像をアニメーションで表現するための機能部である。特に本実施形態では、アニメーション制御部610の機能によって、携帯端末103に送信する文書データに対応するサムネイル画像をアニメーションによって移動させる。移動する際の速度は、計測・算出部609で算出された移動速度を用いることができる。また、フェードアウト/フェードインといったエフェクトを実行することも可能である。
携帯端末103は機能部として、記憶部611と、表示制御部612と、通信制御部613と、文書保存アプリ制御部614とを備える。
記憶部611は、後述する各種画面を構成する情報を記憶するための機能部である。必要に応じて、情報の追加・更新・削除を行う。また、記憶部611は、後述する通信制御部613で受信した情報を記憶する機能も有する。
表示制御部612は、携帯端末103のタッチパネル510の表示を制御するための機能部である。表示制御部612から画面等の表示指示がなされると、出力コントローラ506を介してタッチパネル510に表示指示が送信される。そして、タッチパネル510はこの指示を受信すると、指示に従って画面等を表示する。
通信制御部613は、携帯端末103と情報処理装置101との通信を制御するための機能部である。通信制御部613は、携帯端末103と情報処理装置101との情報の送受信を制御する。また、通信制御部608は、携帯端末103が属するネットワークに接続された情報処理装置101の接続先情報を取得することが可能である。
文書保存アプリ制御部614は、携帯端末103にインストールされた文書保存アプリの動作を制御するための機能部である。本実施形態において、文書保存アプリは情報処理装置101と通信することにより受信した情報を保存するためのアプリケーションである。文書保存アプリを動作させることにより、携帯端末103は情報処理装置101の接続先情報を取得して情報処理装置101と携帯端末103との通信を確立し、情報処理装置101から文書データ等の情報(ファイル)が送信された場合に、これを受信する。
次に、商品説明画面800における処理の流れについて、図7に示すフローチャートを用いて説明する。
ステップS701では、情報処理装置101のCPU401は、図8に示すような商品説明画面800をプロジェクタ423に投影させて、投影面304に表示する。このとき、ミラーリング機能を用いて、ディスプレイ410にも同じ画面が表示されてもよいし、マルチモニタ機能を用いて、ディスプレイ410には画面を操作するためのマニュアルや説明すべきポイントを表示させてもよい。以下、プロジェクタ423から投影面304に画面を投影する場合についても同様である。
商品説明画面800は、テラー領域801と顧客領域802とを備える。テラー領域801は、テラー301が情報の閲覧や操作を行う領域であり、顧客領域802は顧客302が情報の閲覧や操作を行う領域である。それぞれ領域に表示する情報は、当該領域に対応するユーザの方向に向けて配置されている。テラー領域801には、サムネイル画像領域803と、文書送信ボタン804と、終了ボタン805とが配置されている。サムネイル画像領域803は、顧客領域802に表示する文書データのサムネイル画像を表示する領域である。情報処理装置101は、図9に示す文書データ管理テーブル900のサムネイル画像保存場所903が示す保存場所からサムネイル画像を取得し、表示位置904が示す位置にこれを表示する。サムネイル画像領域803でサムネイル画像の選択を検知すると、選択されたサムネイル画像に対応する文書データを取得し、これを顧客領域802の文書データ領域806に表示する。文書送信ボタン804は、サムネイル画像領域803に表示されているサムネイル画像に対応する文書データを、顧客の携帯端末103に送信するためのボタンである。終了ボタン805は、商品説明画面800の投影を終了するためのボタンである。
図9の文書データ管理テーブル900は、外部メモリ411に記憶され、投影面304に表示する文書データを管理するためのデータテーブルである。文書データ管理テーブル900は、文書ID901と、文書データ保存場所902と、サムネイル画像保存場所903と、表示位置904と、ファイル容量905とを備える。文書ID901は、文書データごとに割り振られる一意な識別情報を示す。文書データ保存場所902は、文書データの保存場所を示す。サムネイル画像保存場所903は、文書データに対応するサムネイル画像の保存場所を示す。表示位置904は、サムネイル画像を表示する座標を示す。この座標はサムネイル画像の中心点と一致させる座標である。ファイル容量905は、文書データのファイル容量を示す。尚、本実施形態では文書データを一例に説明を行うが、文書データに限らず、テキストデータや画像データや動画データであってもよい。また、文書データに対応するサムネイル画像をサムネイル画像領域803に表示する形態としているが、文書データ自体を縮小して表示する形態であってもよい。この場合、以下の説明で記載する“サムネイル画像”は、“文書データ”(投影データ)と読み替えることで本発明を実現することが可能である。
ステップS702では、情報処理装置101のCPU401は、サムネイル画像領域803に表示されたサムネイル画像に対する選択を、センサ制御部605の機能により検知したか否かを判定する。すなわち、投影面304に投影された商品説明画面800において、サムネイル画像に対するタッチ操作を検知したか否かを判定する。サムネイル画像に対する選択を検知したと判定した場合には、ステップS703に処理を進める。サムネイル画像に対する選択を検知していないと判定した場合には、ステップS705に処理を進める。
ステップS703では、情報処理装置101のCPU401は、選択されたサムネイル画像に対応する文書データを、文書データ管理テーブル900を用いて取得する。より具体的には、情報処理装置101は選択されたサムネイル画像に対応するレコードを文書データ管理テーブル900で特定し、当該レコードの文書データ保存場所902が示す保存場所に保存されている文書データを取得する。
ステップS704では、情報処理装置101のCPU401は、ステップS703で取得した文書データを顧客領域802の文書データ領域806に表示し、これが表示された商品説明画面800を投影面304に投影する。これにより、顧客302は文書データを閲覧することができるようになる。ステップS704の処理が終わったら、ステップS702に処理を戻す。
ステップS705では、情報処理装置101のCPU401は、商品説明画面800が備える文書送信ボタン804の押下を、センサ制御部605の機能により検知したか否かを判定する。すなわち、投影面304に投影された商品説明画面800において、文書送信ボタン804に対するタッチ操作を検知したか否かを判定する。文書送信ボタン804に対する押下を検知したと判定した場合には、ステップS706に処理を進める。文書送信ボタン804に対する押下を検知していないと判定した場合には、ステップS707に処理を進める。
ステップS706では、情報処理装置101のCPU401は、文書送信処理を実行する。文書送信処理の詳細は、後述する図12及び図13に示す。文書送信処理が終了したら、ステップS702に処理を戻す。
ステップS707では、情報処理装置101のCPU401は、商品説明画面800が備える終了ボタン805の押下を、センサ制御部605の機能により検知したか否かを判定する。すなわち、投影面304に投影された商品説明画面800において、終了ボタン805に対するタッチ操作を検知したか否かを判定する。終了ボタン805に対する押下を検知したと判定した場合には、本一連の処理を終了する。終了ボタン805に対する押下を検知していないと判定した場合には、ステップS702に処理を戻す。
次に、文書送信処理の流れについて、図10及び図11に示すフローチャートを用いて説明する。まず、図10では情報処理装置101が投影面304に配置された携帯端末103の位置や接続先を認識する処理や送信する文書データを選択する処理について説明し、図11では携帯端末103に文書データを送信する処理について説明を行う。
ステップS1001では、情報処理装置101のCPU401は、図12に示すような携帯端末検知画面1200をプロジェクタ423に投影させて、投影面304に表示する。携帯端末検知画面1200は、商品説明画面800と同様にテラー領域801と顧客領域802を備えている。
ステップS1002では、情報処理装置101のCPU401は、携帯端末103からの接続要求があるまで(ステップS1006で接続要求を受信するまで)、一旦待機をする。
ステップS1003では、携帯端末103のCPU501は、ユーザからの指示に応じて、携帯端末103にインストールされている文書保存アプリを起動する。文書保存アプリを起動すると、情報処理装置101が接続しているネットワーク(ローカルネットワークが望ましい)と同じネットワークに接続される。そして、文書保存アプリ制御部614及び通信制御部613の機能により、携帯端末103が接続したネットワークに接続している各種装置を検出し、検出した各種装置の接続先情報を取得する。ここでいう各種装置とは、情報処理装置101や携帯端末103等、当該ネットワークに接続している装置のことである。
ステップS1004では、携帯端末103のCPU501は、ステップS1003で取得した接続先情報を用いて図13に示すような接続先情報選択画面1300をタッチパネル510に表示する。そして、携帯端末103と接続すべき情報処理装置101の接続先情報に対する選択を受け付ける。接続先情報選択画面1300は、接続先情報領域1301を備えている。この接続先情報領域1301では、ステップS1003で取得した接続先情報が一覧表示される。
例えば顧客302は、顧客302の携帯端末103で文書保存アプリを起動し、目の前の投影面304に画面の投影指示を行っている情報処理装置101の接続先情報を、接続先情報領域1301から選択することになる。このとき、接続先情報が表示されるだけでは、顧客302の携帯端末103と接続したい情報処理装置101の接続先情報がどれかわからないため、図12の携帯端末検知画面1200に示すように、顧客領域802に当該接続先情報を表示する。情報処理装置101は、自身の接続先情報を取得して携帯端末検知画面1200に含めることで、これが可能となる。顧客302は投影面304に表示された接続先情報を参考に、携帯端末103で接続先情報を選択する。
ステップS1005では、携帯端末103のCPU501は、ステップS1004で選択を受け付けた接続先情報が示す情報処理装置101に対して、接続要求を送信する。
ステップS1006では、情報処理装置101のCPU401は、ステップS1005で携帯端末103から送信された接続要求を受信する。
ステップS1007では、情報処理装置101のCPU401は、ステップS1006で受信した携帯端末103からの接続要求に基づいて、図14に示す接続先管理テーブル1400に携帯端末103の接続先情報を保存する。情報処理装置101は携帯端末103から接続要求を受信すると、接続元の携帯端末103の接続先情報が取得できるので、これを接続先管理テーブル1400に保存する。こうすることで、情報処理装置101は文書データの送信先として携帯端末103の接続先情報を管理できる。
図14の接続先管理テーブル1400は、外部メモリ411に記憶され、情報処理装置101から文書データを送信する携帯端末103の情報を管理するデータテーブルである。接続先管理テーブル1400は、端末ID1401と、接続先情報1402と、配置位置1403(位置情報)と、サイズ1404と、送信速度1405とを備える。端末ID1401は、接続先の装置に対して一意に割り振られた識別情報を示す。接続先情報1402は、接続先の装置の接続先情報を示す。配置位置1403は、接続先の装置が投影された画面のどの位置に配置されているのかを示す。すなわち、配置位置1403は当該画面の座標系に基づく。尚、本実施形態ではいずれの画面の大きさも同じである。また、配置位置1403が示す座標は、携帯端末103の中心点を示すが、特にこれに限らない。サイズ1404は、センサ制御部605の機能により検知した携帯端末103の大きさを示す。送信速度1405は、後述する処理において計測される、携帯端末103に対するデータの送信速度を示す。
ステップS1008では、情報処理装置101のCPU401は、画面を投影している投影面304において、携帯端末103をセンサ制御部605の機能により検知したか否かを判定する。すなわち、図15に示すように、携帯端末103が情報処理装置101に接続要求を行った後に、携帯端末検知画面1200の顧客領域802に携帯端末103が配置されたか否かを検知する。情報処理装置101は、図15に示すように、顧客302の携帯端末103を顧客領域802に配置するよう指示する文章を表示してもよい。携帯端末103を検知したと判定した場合には、ステップS1009に処理を進める。携帯端末103を検知していないと判定した場合には、携帯端末103を検知するまでステップS1008を繰り返す。
ステップS1009では、情報処理装置101のCPU401は、携帯端末103を検知した現実空間上の位置に基づいて、投影面304に投影された画面上の位置を特定し、これをステップS1007で保存した接続先情報と対応付けて保存する。センサ制御部605の機能により取得する携帯端末103の位置は、現実空間上の位置である。情報処理装置101はこの位置に基づいて、投影面304に投影している画面の座標系における位置を特定し、接続先情報と対応付けて保存する。特定した画面上の位置は、接続先管理テーブル1400の配置位置1403に格納する。
本実施形態においては、携帯端末103の接続先情報とこの携帯端末103の配置位置とを情報処理装置101が対応付けて管理する。そのため、情報処理装置101が接続先情報を取得した後に投影面304で携帯端末103を検知した場合、この携帯端末103の配置位置を直前に取得した接続先情報と対応付けて管理している。別の実施形態としては、次のような形態が考えられる。情報処理装置101と通信したい携帯端末103は、携帯端末103の接続先情報を携帯端末103のタッチパネル510に表示し、顧客302が投影面304に携帯端末103を配置する。情報処理装置101は撮像制御部604の機能により投影面304を撮像すると、携帯端末103に表示されている接続先情報を含む画像データを取得できる。この画像データを解析することで接続先情報を取得すると共に、センサ制御部605で検知した位置と対応付けて保存することで、同様の対応付けを行うことができる。携帯端末103の接続先情報と配置位置との対応付けは、これ以外の方法であってもよい。
また、携帯端末103の配置位置は継続して取得するものとする。携帯端末103の配置位置はユーザによって移動(変更)される可能性があるので、投影面304の範囲内であれば、携帯端末103の配置位置を取得し続ける。更に別の実施形態としては、携帯端末103の配置位置がユーザによって移動されたか否かをセンサ制御部605で検知し、これを検知した場合に再度、配置位置を特定する形態も考えられる。こうすると、移動された携帯端末103だけを対象に配置位置を取得することができるので、継続して配置位置を取得し続けるよりも処理負荷を低減できる。
ステップS1010では、情報処理装置101のCPU401は、図16に示すような文書送信画面1600をプロジェクタ423に投影させて、投影面304に表示する。図16は、携帯端末103が配置された投影面304に文書送信画面1600を投影した様子を示す図である。つまり、文書送信画面1600は、図16に示す携帯端末103を除いた情報からなる画面である。文書送信画面1600は、商品説明画面800と同様にテラー領域801と顧客領域802を備えている。またテラー領域801は、商品説明画面800と同様にサムネイル画像領域803を備えている。サムネイル画像領域803の生成方法は前述した通りである。更にテラー領域801は、送信ボタン1601と送信終了ボタン1602を備えている。送信ボタン1601は、送信する文書データに対応するサムネイル画像を選択した後に押下することで、文書データを携帯端末103に送信するためのボタンである。送信終了ボタン1602は、携帯端末103に対する文書データの送信を終了し、商品説明画面800に戻るためのボタンである。
ステップS1011では、情報処理装置101のCPU401は、携帯端末103に送信する文書データを示すサムネイル画像の選択を受け付ける(投影データ選択受付手段)。すなわち、投影面304に投影された文書送信画面1600のサムネイル画像領域803の中から、携帯端末103に送信したい文書データのサムネイル画像のタッチ操作を受け付ける。
ステップS1012では、情報処理装置101のCPU401は、送信ボタン1601の押下を、センサ制御部605の機能により検知したか否かを判定する。すなわち、投影面304に投影された文書送信画面1600において、送信ボタン1601に対するタッチ操作を検知したか否かを判定する。送信ボタン1601に対する押下を検知したと判定した場合には、図11のステップS1013に処理を進める。送信ボタン1601に対する押下を検知していないと判定した場合には、送信ボタン1601の押下を検知するまでステップS1012を繰り返す。また、サムネイル画像の選択がなされていない状態で送信ボタン1601の押下がなされた場合には、エラーを通知し、ステップS1011に処理を戻すことが望ましい。
図11に説明を移す。ステップS1013では、情報処理装置101のCPU401は、ステップS1009で保存した、投影面304に配置されている携帯端末103の接続先情報を接続先管理テーブル1400から取得する。
ステップS1014では、情報処理装置101のCPU401は、通信制御部608の機能により、ステップS1013で取得した接続先情報を用いて、投影面304に配置されている携帯端末103に対してテストデータを送信する。テストデータとは、情報処理装置101と携帯端末103との間の送信速度を計測するために送信されるデータのことである。データの内容は特に問わない。
ステップS1015では、情報処理装置101のCPU401は、計測・算出部609の機能により、ステップS1014で送信されたテストデータの送信時間を計測する。ステップS1014でテストデータの送信が開始されてから、後述するステップS1019で携帯端末103からの通知を受信するまでの間の時間を計測する。
ステップS1016では、携帯端末103のCPU501は、通信制御部613の機能により、情報処理装置101から送信されたテストデータの受信を開始する。
ステップS1017では、携帯端末103のCPU501は、通信制御部613の機能により、ステップS1016で開始したテストデータの受信が完了したか否かを判定する。テストデータの受信が完了したと判定した場合には、ステップS1018に処理を進める。テストデータの受信が完了していないと判定した場合には、テストデータの受信が完了するまでステップS1017を繰り返す。
ステップS1018では、携帯端末103のCPU501は、通信制御部613の機能により、テストデータの受信が完了した旨の通知を情報処理装置101に送信する。受信完了通知の送信が完了したら、受信したテストデータを削除する。これは、携帯端末103に不要なデータを残さないようにするためである。
ステップS1019では、情報処理装置101のCPU401は、通信制御部608の機能により、携帯端末103から送信された、テストデータの受信完了通知を受信する。この受信が行われると、計測・算出部609はステップS1015で実行していたテストデータの送信時間の計測を完了する。
ステップS1020では、情報処理装置101のCPU401は、計測・算出部609の機能により、テストデータのファイル容量と計測した送信時間とを用いて、情報処理装置101と携帯端末103との間の送信速度を算出する。テストデータのファイル容量の単位をバイトからビットに変換し、送信時間(秒数)で割ることで送信速度(bit per second、bps)を算出する。算出した送信速度は、接続先管理テーブル1400の送信速度1405に格納する。尚、本実施形態では送信速度を算出したが、OSの機能によりこれを取得可能であれば、OSから送信速度を取得してもよい。
ステップS1021では、情報処理装置101のCPU401は、記憶部601の機能により、ステップS1011で選択されたサムネイル画像に対応する文書データを、文書データ管理テーブル900を用いて取得する。より具体的には、選択された位置と表示位置904とを用いて、選択されたサムネイル画像に対応するレコードを文書データ管理テーブル900から特定する。そして、このレコードが備える文書データ保存場所902が示す場所から文書データを取得する。
ステップS1022では、情報処理装置101のCPU401は、通信制御部608の機能により、ステップS1013で取得した接続先情報が示す携帯端末103に対して、ステップS1021で取得した文書データを送信する(送信手段)。
ステップS1023では、情報処理装置101のCPU401は、計測・算出部609の機能により、送信した文書データに対応するサムネイル画像が投影された位置から、送信先の携帯端末103が投影面304上に配置された位置までの距離を算出する。そして算出された距離を取得する(距離取得手段)。サムネイル画像が投影された位置は、文書データ管理テーブル900の表示位置904である。一方、携帯端末103が配置された位置は、接続先管理テーブル1400の配置位置1403である。すなわち、この二点間の距離を算出する。二点間の距離を算出する方法は、例えば三平方の定理に基づいて算出してもよいし、他の方法でもよい。尚、基準とする二点間の距離は、表示位置904と配置位置1403に限らない。例えば、携帯端末103のサイズ1404を用いて、携帯端末103のサイズ1404内のいずれかの位置からサムネイル画像の投影位置までの距離を算出するようにしてもよい。算出した距離は、図17に示す算出情報管理テーブル1700の距離1701に格納する。
図17の算出情報管理テーブル1700は、外部メモリ411に記憶され、計測・算出部609によって算出された情報を格納するためのデータテーブルである。算出情報管理テーブル1700は、距離1701と、送信時間1702と、移動速度1703とを備える。距離1701は、送信を開始した文書データに対応するサムネイル画像と送信先の携帯端末103との距離を示す。送信時間1702は、ファイル容量と送信速度から算出される送信時間を示す。すなわち、送信が完了するまでの予測時間である。移動速度1703は、送信中の文書データに対応するサムネイル画像を携帯端末103に向かって移動する際の速度を示す。
ステップS1024では、情報処理装置101のCPU401は、計測・算出部609の機能により、ステップS1022で送信した文書データの送信時間(送信が完了する予測時間、または送信が完了するまでの残り時間)を算出する。そして、算出した送信時間を取得する(送信時間取得手段)。送信時間は、ステップS1022で送信した文書データのファイル容量の単位をバイトからビットに変換し、ステップS1020で算出した送信速度(bps)で割ることで算出できる。
ここで、文書データ管理テーブル900の文書ID901が“001”のレコードに対応する文書データを携帯端末103に送信する場合を例に説明する。文書ID901が“001”のレコードのファイル容量905は、“10MB”である。つまり、送信する文書データのファイル容量は、10MBであることを示している。このファイル容量の単位をバイトからビットに変換すると、80Mbitとなる。また、送信先の携帯端末103の送信速度は、接続先管理テーブル1400の送信速度1405が示す通り、“40Mbps”である。よって、80Mbitを40Mbpsの速度で送信する場合、「80Mbit÷40Mbps=2sec」となる。つまり、ファイル容量が10MBの文書データを40Mbpsの送信速度で情報処理装置101から携帯端末103に送信すると、送信時間は2秒となることが予測される。こうして算出した送信時間は、算出情報管理テーブル1700の送信時間1702に格納する。
ステップS1025では、情報処理装置101のCPU401は、計測・算出部609の機能により、ステップS1011で選択を受け付けたサムネイル画像を携帯端末103に向かって移動する際の速度(以下、移動速度という。)を算出する。この移動速度は、ステップS1023で算出したサムネイル画像と携帯端末103と間の距離1701と、ステップS1024で算出した送信時間1702とを用いる。つまり、距離1701を送信時間1702で割ることで、移動速度を算出する。より具体的には、距離1701が“500mm”で、送信時間1702が“2sec”である場合、「500mm÷2sec=250mm/sec」となる。すなわち、移動速度が250mm/secと算出される。算出した移動速度は、算出情報管理テーブル1700の移動速度1703に格納する。
この算出された移動速度でサムネイル画像を移動させれば、サムネイル画像に対応する文書データの送信が完了するタイミング、またはその付近のタイミングで、サムネイル画像を送信先の携帯端末103の位置に到着させることができる。これにより、ユーザはどの文書データがどの携帯端末103に送信されたのかを確認することができ、かつ送信の完了を容易に把握することが可能となる。また、サムネイル画像の移動中は、移動している位置によって送信の進捗状況が把握できる。例えば、距離1701が“500mm”で、サムネイル画像が250mm進んだ場合には、送信の進捗状況は50%であることがわかる。このように、サムネイル画像が移動している位置によって、ユーザは直感的に送信状況を把握することが可能となる。尚、本実施形態では送信する文書データに対応するサムネイル画像を移動させたが、サムネイル画像領域803に文書データを縮小して表示する形態も考えられる。この場合には、縮小した文書データ自体を携帯端末103に向かって、算出した移動速度で移動させる。
ステップS1026では、情報処理装置101のCPU401は、アニメーション制御部610の機能により、ステップS1022で送信した文書データに対応するサムネイル画像を、送信先の携帯端末103に向かって移動する(投影データ移動手段)。このとき、移動する速度はステップS1025で算出した移動速度1703とする。図18は、ステップS1026における処理により、サムネイル画像が携帯端末103に向かって移動する様子を示す図である。図18に示す文書送信画面1600では、携帯端末103に送信する文書データに対応するサムネイル画像1801がステップS1011で選択された場合を示している。サムネイル画像1801に対応する文書データの送信が開始されると、ステップS1023乃至ステップS1025の各処理により、サムネイル画像1801の移動速度が算出される。そして、その算出された移動速度で、送信先の携帯端末103に向かってサムネイル画像1801を移動する。
一方、ステップS1027では、携帯端末103のCPU501は、通信制御部613の機能により、情報処理装置101から送信された文書データの受信を開始する。
ステップS1028では、携帯端末103のCPU501は、通信制御部613の機能により、文書データの受信が完了したか否かを判定する。文書データの受信が完了したと判定した場合には、ステップS1029に処理を進める。そうでない場合には、文書データの受信が完了するまで、ステップS1028の処理を繰り返す。
ステップS1029では、携帯端末103のCPU501は、記憶部611の機能により、受信が完了した文書データをフラッシュメモリ514等の記憶媒体に保存する。
ステップS1030では、携帯端末103のCPU501は、通信制御部613の機能により、文書データの受信が完了した旨の通知を情報処理装置101に送信する。
ステップS1031では、情報処理装置101のCPU401は、通信制御部608の機能により、携帯端末103から送信された、文書データの受信完了通知を受信する。
ステップS1032では、情報処理装置101のCPU401は、アニメーション制御部610の機能により、ステップS1026の処理によって移動していたサムネイル画像をフェードアウトする。例えば、図18の1802は、移動していたサムネイル画像がフェードアウトしている様子を示している。つまり、文書データの送信が完了したことをユーザに把握させるべく、移動していたサムネイル画像の表示態様を変化する。本実施形態では、フェードアウトしたが、サムネイル画像の色を変えたり、点滅させたり、大きさを変えたりすることによって、送信完了を通知してもよい。
ステップS1033では、情報処理装置101のCPU401は、文書送信画面1600が備える送信終了ボタン1602の押下を、センサ制御部605の機能により検知したか否かを判定する。すなわち、投影面304に投影された文書送信画面1600において、送信終了ボタン1602に対するタッチ操作を検知したか否かを判定する。送信終了ボタン1602に対する押下を検知したと判定した場合には、ステップS1034に処理を進める。送信終了ボタン1602に対する押下を検知していないと判定した場合には、図10のステップS1011に処理を戻す。
ステップS1034では、情報処理装置101のCPU401は、文書送信画面1600の投影を終了させ、ステップS701と同様に商品説明画面800をプロジェクタ423に投影させて、投影面304に表示する。以上により文書送信処理を終了する。
以上説明したように、投影面に投影された投影データから投影面上に配置された携帯端末までの距離と、投影データを携帯端末に送信する送信時間とを用いて移動速度を算出し、当該移動速度で投影面上の投影データを携帯端末に向かって移動させる。こうすることにより、携帯端末に対する投影データの送信状況を容易に把握することが可能となる。
次に、第2の実施形態について説明する。第1の実施形態では、投影データを1つの携帯端末に送信する例について説明した。第2の実施形態は、投影データを複数の携帯端末に送信する例について説明する。更には、投影データの送信中に変化する送信速度に応じて、投影データの移動速度を変化させる例についても説明を行う。
第2の実施形態における、システム構成、ハードウェア構成、機能構成、テーブル構成については、第1の実施形態と同様であるので説明を省略する。また、第2の実施形態は、第1の実施形態における文書送信処理の変形例であるため、第1の実施形態と異なる点について詳細に説明する。
第2の実施形態における文書送信処理の流れについて、図19乃至図21に示すフローチャートを用いて説明する。まず、図19では情報処理装置101が投影面304に配置された携帯端末103の位置や接続先を認識する処理や送信する文書データを選択する処理について説明し、図20では携帯端末103に文書データを送信する処理について説明を行う。また、図21では、送信速度の変化に応じて移動速度を変化させる処理について説明を行う。
図19のステップS1001乃至ステップS1009の各ステップは、図10のステップS1001乃至ステップS1009の各ステップにおける処理と同様であるので、説明を省略する。
ステップS1901では、情報処理装置101のCPU401は、図21に示す携帯端末検知画面1200が備える追加ボタン2101の押下を、センサ制御部605の機能により検知したか否かを判定する。すなわち、投影面304に投影された図21に示す携帯端末検知画面1200において、追加ボタン2101に対するタッチ操作を検知したか否かを判定する。追加ボタン2101に対する押下を検知したと判定した場合には、ステップS1001に処理を戻す。つまり、新たな携帯端末103の接続先情報と配置位置とを取得するべく(例えば、携帯端末103−2の接続先情報と配置位置とを取得するべく)、ステップS1001から処理を再開する。情報処理装置101は、携帯端末103の数だけステップS1001乃至ステップS1009を繰り返し実行することで、携帯端末103ごとに接続先情報と配置位置とを取得することができる。追加ボタン2101に対する押下を検知していないと判定した場合には、ステップS1902に処理を進める。
このようにして複数の携帯端末103の接続先情報と配置位置を接続先管理テーブル1400に保存すると、図22に示すようなデータテーブルとなる。図22に示す接続先管理テーブル1400は、携帯端末103−1と携帯端末103−2とを登録した結果の図である。端末ID1401が“001”のレコードが携帯端末103−1に対応する。また、端末ID1401が“002”のレコードが携帯端末103−2に対応する。ただし、第1の実施形態で備えていた送信速度1405は、後述する図25の送信情報管理テーブル2500に備える形態とする。このようにして、複数台の携帯端末103に関する情報を登録する。
ステップS1902では、情報処理装置101のCPU401は、図21に示す携帯端末検知画面1200が備える完了ボタン2102の押下を、センサ制御部605の機能により検知したか否かを判定する。すなわち、投影面304に投影された図21に示す携帯端末検知画面1200において、完了ボタン2102に対するタッチ操作を検知したか否かを判定する。完了ボタン2102に対する押下を検知したと判定した場合には、ステップS1903に処理を進める。完了ボタン2102に対する押下を検知していないと判定した場合には、ステップS1901に処理を戻す。
ステップS1903では、情報処理装置101のCPU401は、図23に示すような文書送信画面1600をプロジェクタ423に投影させて、投影面304に表示する。図23は、携帯端末103−1と携帯端末103−2とが配置された投影面304に文書送信画面1600を投影した様子を示す図である。文書送信画面1600の画面構成については、第1の実施形態と同様である。
ステップS1904では、情報処理装置101のCPU401は、携帯端末103に送信する文書データを示すサムネイル画像の選択を受け付ける。すなわち、投影面304に投影された文書送信画面1600のサムネイル画像領域803の中から、携帯端末103に送信したい文書データのサムネイル画像のタッチ操作を受け付ける。
ステップS1905では、情報処理装置101のCPU401は、ステップS1904で選択されたサムネイル画像に対応する文書データの送信先である携帯端末103に対して選択を受け付ける(携帯端末選択受付手段)。
図24に示すように、文書送信画面1600において、送信したい文書データに対応するサムネイル画像の選択を受け付けた後、送信先の携帯端末103に対する選択を受け付ける。サムネイル画像や携帯端末103が選択された場合に、選択されたサムネイル画像や携帯端末103に相当する領域を縁取りすることで、選択されていないものと識別表示してもよい。
ステップS1906では、情報処理装置101のCPU401は、ステップS1904で選択されたサムネイル画像に対応する文書データと、ステップS1905で選択された携帯端末103とを対応付ける。より具体的には、選択されたサムネイル画像に対応する文書データの文書ID901と、選択された携帯端末103の端末ID1401とを図25に示す送信情報管理テーブル2500に対応付けて登録する。
図25の送信情報管理テーブル2500は、外部メモリ411に記憶され、送信する文書データと送信先の携帯端末103とを対応付けるためのデータテーブルである。送信情報管理テーブル2500は、送信先端末ID2501、送信文書ID2502、送信速度2503を備える。送信先端末ID2501は、文書データの送信先である携帯端末103の端末ID1401を示す。送信文書ID2502は、送信する文書データの文書ID901を示す。送信速度2503は、送信先端末ID2501が示す携帯端末103に送信文書ID2502が示す文書データを送信したときの送信速度を示す。
ステップS1907では、情報処理装置101のCPU401は、送信ボタン1601の押下を、センサ制御部605の機能により検知したか否かを判定する。すなわち、投影面304に投影された文書送信画面1600において、送信ボタン1601に対するタッチ操作を検知したか否かを判定する。送信ボタン1601に対する押下を検知したと判定した場合には、図20のステップS1908に処理を進める。送信ボタン1601に対する押下を検知していないと判定した場合には、ステップS1904に処理を戻す。また、サムネイル画像の選択がなされていない状態で送信ボタン1601の押下がなされた場合には、エラーを通知し、ステップS1011に処理を戻すことが望ましい。
このようにして、ステップS1904乃至ステップS1906を繰り返し実行し、送信したい文書データと送信先の携帯端末103とを対応付けていく。こうすると、例えば図25に示すように、携帯端末103−1(端末ID1401“001”)に、文書ID901“002”の文書データが対応付けられる。また、携帯端末103−2(端末ID1401“002”)に、文書ID901“001”と“002”の複数の文書データが対応付けられる。つまり、携帯端末103ごとに、送信したい文書データを対応付ける。
図20に説明を移す。ステップS1908では、情報処理装置101のCPU401は、ステップS1009で保存した、投影面304に配置されている携帯端末103の接続先情報を接続先管理テーブル1400から取得する。複数の携帯端末103の接続先情報を接続先管理テーブル1400に保存したのであれば、この複数の接続先情報を取得する。
ステップS1909では、情報処理装置101のCPU401は、記憶部601の機能により、ステップS1904で選択されたサムネイル画像に対応する文書データを、文書データ管理テーブル900を用いて取得する。
ステップS1910では、情報処理装置101のCPU401は、通信制御部608の機能により、ステップS1908で取得した接続先情報が示す携帯端末103に対して、ステップS1909で取得した文書データを送信する(送信手段)。このとき、送信情報管理テーブル2500が示す携帯端末103と文書データとの対応付けに従って、携帯端末103ごとに、送信すべき文書データを特定し、特定した文書データをそれぞれ送信する。図25に示す送信情報管理テーブル2500では、携帯端末103−1に文書ID901“002”の文書データを送信し、携帯端末103−2に文書ID901“001”と“002”の文書データを送信する。
ステップS1911では、携帯端末103のCPU501は、通信制御部613の機能により、情報処理装置101から送信された文書データの受信を開始する。
ステップS1912では、携帯端末103のCPU501は、通信制御部613の機能により、文書データの受信が完了したか否かを判定する。文書データの受信が完了したと判定した場合には、ステップS1913に処理を進める。そうでない場合には、文書データの受信が完了するまで、ステップS1912の処理を繰り返す。
ステップS1913では、携帯端末103のCPU501は、記憶部611の機能により、受信が完了した文書データをフラッシュメモリ514等の記憶媒体に保存する。
ステップS1914では、携帯端末103のCPU501は、通信制御部613の機能により、文書データの受信が完了した旨の通知を情報処理装置101に送信する。
以上のステップS1911乃至ステップS1914は、文書データが送信された携帯端末103ごとに実行される。複数の文書データが送信された携帯端末103においては、携帯端末103において文書データごとに並列で実行される。
ステップS1915では、情報処理装置101のCPU401は、通信制御部608の機能により、携帯端末103からの受信完了通知を受信したか否かを判定する。ここでの判定は、図25に示すレコードごとに行う。すなわち、図25でいえば、携帯端末103−1と文書ID“002”の組と、携帯端末103−2と文書ID“001”の組と、携帯端末103−2と文書ID“002”の組とでそれぞれ判定することになる。以下、これら組を「組み合わせ」と称する。
また、本実施形態では複数の文書データを複数の携帯端末103に送信する場合を想定して説明を行うが、変形例として、1つの文書データを複数の携帯端末103に送信する場合や、複数の文書データを1つの携帯端末103に送信する場合が考えられる。こうした場合には、前者は携帯端末103ごとに判定を行い、後者は文書データごとに判定を行う。以下、前述した組み合わせごとに処理を実行する場合についても同様である。
ステップS1916では、情報処理装置101のCPU401は、計測・算出部609の機能により、前述した組み合わせのうち、受信完了通知を受信していない組み合わせの送信速度を当該組み合わせごとに算出する。そして、算出した送信速度を取得する(送信速度取得手段)。例えば、携帯端末103−1と文書ID“002”の組について、携帯端末103−1からの受信完了通知を受信していない場合には、携帯端末103−1に対する文書データ(文書ID“002”)の送信状況を確認し、その送信速度を算出する。これを、受信完了通知を受信していない組み合わせごとに実行する。送信速度については、ステップS1916までに送信した文書データのファイル容量と、その送信時間から算出する。算出方法については第1の実施形態と同様である。尚、本実施形態では送信速度を算出したが、OSの機能によりこれを取得可能であれば、OSから送信速度を取得してもよい。
ステップS1917では、情報処理装置101のCPU401は、計測・算出部609の機能により、ステップS1916で算出した送信速度が前回算出した送信速度から変化しているか否かを判定する。ステップS1916で算出した送信速度と、送信情報管理テーブル2500の送信速度2503とを、受信完了通知を受信していない組み合わせごとに比較すればよい。送信速度が少しでも変わった場合に変化したと判定してもよいし、ある程度幅を持たせて、所定の速さ以上変化した場合に変化したと判定してもよい。前回算出した送信速度から変化していると判定した場合には、ステップS1918に処理を進める。前回算出した送信速度から変化していないと判定した場合には、ステップS1915に処理を戻す。また、初めてステップS1917を実行する場合には、送信速度2503に何も格納されていないので、ステップS1918に処理を進める。
ステップS1917の処理が完了すると、ステップS1916で算出した送信速度を送信情報管理テーブル2500の送信速度2503に、組み合わせごとに格納する。
ステップS1918では、情報処理装置101のCPU401は、計測・算出部609の機能により、送信した文書データに対応するサムネイル画像が現在投影されている位置から、送信先の携帯端末103が配置されている位置までの残りの距離を算出する。これを、受信完了通知を受信していない組み合わせごとに実行する。距離の算出方法は、第1の実施形態と同様である。算出した距離は、図17に示す算出情報管理テーブル1700の距離1701に格納する。当該組み合わせごとに、算出情報管理テーブル1700を用意することが望ましい。すなわち、本実施形態でいえば、携帯端末103−1と文書ID“002”、携帯端末103−2と文書ID“001”、携帯端末103−2と文書ID“002”という3つの組み合わせが存在する。そのため、この組み合わせごとに算出情報管理テーブル1700を生成し、それぞれ算出された距離を距離1701に格納する。組み合わせごとに生成した算出情報管理テーブル1700の一例を図27に示す。
ステップS1919では、情報処理装置101のCPU401は、計測・算出部609の機能により、ステップS1917で送信した文書データの残りの送信時間を、受信完了通知を受信していない組み合わせごとに算出する。文書データの送信時間の算出方法は、第1の実施形態と同様である。算出した送信時間は、前述した組み合わせに対応する算出情報管理テーブル1700の送信時間1702に格納する。格納結果は、図27に示す通りである。
ステップS1920では、情報処理装置101のCPU401は、計測・算出部609の機能により、ステップS1905で選択を受け付けたサムネイル画像の移動速度を、受信完了通知を受信していない組み合わせごとに算出する。移動速度の算出方法は、第1の実施形態と同様である。算出した移動速度は、前述した組み合わせに対応する算出情報管理テーブル1700の移動速度1703に格納する。この格納結果も、図27に示す通りである。
ステップS1921では、情報処理装置101のCPU401は、アニメーション制御部610の機能により、ステップS1910で送信した各文書データに対応するサムネイル画像を、送信先の携帯端末103に向かって移動する。これも、受信完了通知を受信していない組み合わせごとに実行する。このとき、移動する速度はステップS1920で算出した、前述した組み合わせごとの移動速度1703とする。例えば、図27に示す通り、携帯端末103−1と文書ID“002”の組み合わせは、移動速度1703が“150mm/sec”である。よって、文書ID“002”の文書データに対応するサムネイル画像を、携帯端末103−1に向かって移動させる際には、150mm/secで移動させる。また、携帯端末103−2と文書ID“001”の組み合わせは、移動速度1703が“70mm/sec”である。よって、文書ID“001”の文書データに対応するサムネイル画像を、携帯端末103−2に向かって移動させる際には、70mm/secで移動させる。更に、また、携帯端末103−2と文書ID“002”の組み合わせは、移動速度1703が“100mm/sec”である。よって、文書ID“002”の文書データに対応するサムネイル画像を、携帯端末103−2に向かって移動させる際には、100mm/secで移動させる。
こうして、あらかじめ対応付けられた携帯端末103と文書データの組み合わせごとに、文書データに対応するサムネイル画像の移動速度を算出しておき、算出した移動速度でサムネイル画像を送信先の携帯端末103に移動する。図26は、図27に示す各移動速度でサムネイル画像が移動している様子を示す図である。携帯端末103−1に対して、文書ID“002”の文書データ(図26の2601に相当する。)に対応するサムネイル画像が移動している様子を示している。また、携帯端末103−2に対して、文書ID“001”と“002”の文書データ(図26の2602に相当する。)に対応するサムネイル画像が移動している様子を示している。
このように、携帯端末と投影データの組み合わせごと(または携帯端末ごと、投影データごと)、すなわち情報処理装置から携帯端末に投影データを送信するジョブごとに、投影データの移動速度が算出される。そして、組み合わせごとに投影データが移動するので、どの携帯端末のどの投影データが送信されているのか把握しやすい。更には、組み合わせごとに移動速度が制御されているので、組み合わせごとに送信完了を把握しやすい。
ステップS1921の処理が完了すると、ステップS1915に処理を戻す。こうして、受信完了通知があるまで、ステップS1915乃至ステップS1921の処理を組み合わせごとに繰り返す。
一方、ステップS1915で受信完了通知を受信したと判定した場合には、ステップS1922に処理を進める。ステップS1922では、情報処理装置101のCPU401は、アニメーション制御部610の機能により、ステップS1026の処理によって移動していたサムネイル画像をフェードアウトする。つまり、文書データの送信が完了したことをユーザに把握させるべく、移動していたサムネイル画像の表示態様を変化する。本実施形態では、フェードアウトしたが、サムネイル画像の色を変えたり、点滅させたり、大きさを変えたりすることによって、送信完了を通知してもよい。
ステップS1922では、情報処理装置101のCPU401は、通信制御部608の機能により、すべての組み合わせについて、文書データの送信が完了したか否かを判定する。すべての組み合わせについて、受信完了通知を受信していれば、完了したと判定する。すべての組み合わせについて、文書データの送信が完了したと判定した場合には、ステップS1924に処理を進める。すべての組み合わせについて、文書データの送信が完了していない場合には、ステップS1915に処理を戻す。
ステップS1924では、情報処理装置101のCPU401は、文書送信画面1600が備える送信終了ボタン1602の押下を、センサ制御部605の機能により検知したか否かを判定する。すなわち、投影面304に投影された文書送信画面1600において、送信終了ボタン1602に対するタッチ操作を検知したか否かを判定する。送信終了ボタン1602に対する押下を検知したと判定した場合には、ステップS1925に処理を進める。送信終了ボタン1602に対する押下を検知していないと判定した場合には、図19のステップS1904に処理を戻す。
ステップS1925では、情報処理装置101のCPU401は、文書送信画面1600の投影を終了させ、ステップS701と同様に商品説明画面800をプロジェクタ423に投影させて、投影面304に表示する。以上により文書送信処理を終了する。
以上説明したように、投影面に投影された投影データから投影面上に配置された携帯端末までの距離と、投影データを携帯端末に送信する送信時間とを用いて、携帯端末ごと、または投影データごと、またはこれらの組み合わせごとに移動速度を算出する。そして、当該移動速度で投影面上の投影データを携帯端末に向かって移動させる。こうすることにより、携帯端末に対する投影データの送信状況を容易に把握することが可能となる。
本発明は、例えば、システム、装置、方法、プログラム若しくは記憶媒体等としての実施形態も可能であり、具体的には、複数の機器から構成されるシステムに適用してもよいし、また、1つの機器からなる装置に適用してもよい。
なお、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラムを、システム或いは装置に直接、或いは遠隔から供給するものを含む。そして、そのシステム或いは装置のコンピュータが前記供給されたプログラムコードを読み出して実行することによっても達成される場合も本発明に含まれる。
したがって、本発明の機能処理をコンピュータで実現するために、前記コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するため(実行可能とするため)のコンピュータプログラム自体も含まれる。
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、OSに供給するスクリプトデータ等の形態であってもよい。
プログラムを供給するための記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、MO、CD−ROM、CD−R、CD−RWなどがある。また、磁気テープ、不揮発性のメモリカード、ROM、DVD(DVD−ROM,DVD−R)などもある。
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続する。そして、前記ホームページから本発明のコンピュータプログラムそのもの、若しくは圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードすることによっても供給できる。
また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるWWWサーバも、本発明に含まれるものである。
また、本発明のプログラムを暗号化してCD−ROM等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせる。そして、ダウンロードした鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される。その他、そのプログラムの指示に基づき、コンピュータ上で稼動しているOSなどが、実際の処理の一部又は全部を行い、その処理によっても前述した実施形態の機能が実現され得る。
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれる。その後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部又は全部を行い、その処理によっても前述した実施形態の機能が実現される。
なお、前述した実施形態は、本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。即ち、本発明はその技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。