(57)【要約】【課題】仮想空間で選択されるオブジェクトにかかるデータを他のオブジェクトに対応する装置に容易に送信可能な仕組みを提供すること【解決手段】仮想空間上のオブジェクトの位置情報から仮想空間で選択される第１のオブジェクトと、当該オブジェクトの形状にかかるデータを処理する処理装置に対応するオブジェクトである第２のオブジェクトとの仮想空間上の距離が所定の距離内か判定し、当該距離が所定距離内であると判定された場合に、当該第２のオブジェクトと所定の距離内にあると判定された前記第１のオブジェクトの形状にかかるデータを、当該第２のオブジェクトに対応する前記処理装置に送信する【選択図】図６
2018120598.tif 000002
【特許請求の範囲】
【請求項１】
仮想空間におけるオブジェクトの位置と、当該オブジェクトの形状にかかるデータを記憶する記憶手段を備え、当該オブジェクトの形状にかかるデータを処理する処理装置と通信可能な情報処理装置であって、
前記記憶手段に記憶されているオブジェクトの位置情報から、前記仮想空間で選択される第１のオブジェクトと、前記処理装置に対応するオブジェクトである第２のオブジェクトとの仮想空間上の距離が所定の距離内か判定する第１の距離判定手段と、
前記第１の距離判定手段で前記第１のオブジェクトと前記第２のオブジェクトの距離が所定距離内であると判定された場合、当該第２のオブジェクトと所定の距離内にあると判定された前記第１のオブジェクトの形状にかかるデータを、当該第２のオブジェクトに対応する前記処理装置に処理させるべく送信する送信手段と、
を備えることを特徴とする情報処理装置。
【請求項２】
前記第１の距離判定手段は、前記第１のオブジェクトと前記第２のオブジェクトが接触している場合に、前記前記第１のオブジェクトと前記第２のオブジェクトとの距離が所定距離内であると判定することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記情報処理装置は、複数の前記処理装置と通信可能であり、
前記第１の距離判定手段で、前記第１のオブジェクトとの距離が所定距離内であると判定された前記第２のオブジェクトが、前記複数の処理装置のうちいずれの装置に対応するオブジェクトかを特定する特定手段と、
前記特定手段で特定された前記処理装置において処理可能な形式の、前記第１のオブジェクトの形状にかかるデータを生成する生成手段と、
を備え、
前記送信手段は、前記生成手段で生成された前記特定手段で特定された前記処理装置において処理可能な形式のデータを、前記特定手段で特定された前記処理装置に対して送信することを特徴とする請求項１または２に記載の情報処理装置。
【請求項４】
前記第１のオブジェクトを選択するための第３のオブジェクトを、前記第１のオブジェクトに接触させることで、前記第１のオブジェクトの選択を受け付ける選択受付手段と、
前記選択受付手段で選択を受け付けた第１のオブジェクトを、前記第３のオブジェクトの移動に伴って、仮想空間上を移動させる移動制御手段と、
を備え、
前記送信手段は、前記第１の距離判定手段で、前記移動制御手段で移動した前記第１のオブジェクトと前記第２のオブジェクトとの距離が所定距離内になったと判定した場合に、前記第１のオブジェクトの形状にかかるデータを前記２のオブジェクトに対応する前記処理装置に送信することを特徴とする請求項１乃至３のいずれか１項に記載の情報処理装置。
【請求項５】
前記送信手段で前記処理装置に送信した前記第１のオブジェクトの形状にかかるデータの、前記処理装置における処理の進捗を示す進捗情報を、前記処理装置より取得する進捗情報取得手段と、
前記進捗情報取得手段で取得した前記第１のオブジェクトの形状にかかるデータの処理の進捗情報を用いて、前記第２のオブジェクトに対応付けて、処理の進捗を示す情報を表示すべく制御する進捗情報表示制御手段と、
を備えることを特徴とする請求項１乃至４のいずれか１項に記載の情報処理装置。
【請求項６】
前記進捗情報表示制御手段は、前記処理装置で処理がされた部分とまだ処理がされていない部分とを識別表示すべく、前記進捗情報の示す前記第１のオブジェクトの印刷の進捗分だけ、印刷中の第１のオブジェクトを描画することを特徴とする請求項５に記載の情報処理装置。
【請求項７】
前記進捗情報表示制御手段は、前記処理がされた部分とまだ処理がされていない部分とを識別表示すべく、前記進捗情報の示す前記第１のオブジェクトの形状に係るデータの処理の進捗に応じて、処理中の前記第１のオブジェクトの色を変更することを特徴とする請求項５又は６に記載の情報処理装置。
【請求項８】
前記第２のオブジェクトとの距離が所定距離内の前記第１のオブジェクトを選択したユーザの表示装置を特定する表示装置特定手段と、
を備え、
前記進捗情報表示制御手段は、前記表示装置特定手段で特定した前記第１のオブジェクトを選択したユーザの前記表示装置において、当該第１のオブジェクトの形状にかかるデータの処理の進捗を示す情報を表示すべく、前記表示装置特定手段で特定した表示装置に対して、前記進捗情報を表示する画像データを送信することを特徴とする請求項５乃至７のいずれか１項に記載の情報処理装置。
【請求項９】
表示装置の位置を取得する表示装置位置取得手段と、
前記表示装置の位置と、前記第１のオブジェクトと所定距離内にあると判定された前記第２のオブジェクトの位置とが、所定距離離れているか判定する第２の距離判定手段と、
を備え、
前記進捗情報表示制御手段は、前記第２の距離判定手段で前記表示装置の位置と前記第２のオブジェクトの位置とが所定距離離れていると判定した場合に、前記第２のオブジェクトに対応する処理装置で処理中の前記第１のオブジェクトの形状にかかるデータの処理の進捗を示す情報を、前記第１のオブジェクトに対応付けて表示すべく制御することを特徴とする請求項５乃至８のいずれか１項に記載の情報処理装置。
【請求項１０】
前記第１の距離判定手段で、前記第１のオブジェクトと前記第２のオブジェクトの距離が所定距離内であると判定した場合に、前記第１のオブジェクトが、前記第２のオブジェクトに対応する前記処理装置において処理可能か判定する処理可否判定手段と、
前記処理可否判定手段における処理可否の判定の結果を識別表示する識別画像を生成する識別画像生成手段と、
前記識別画像生成手段で生成した識別画像を重畳した画像データを表示装置に送信する画像送信手段と、
を備えることを特徴とする請求項１乃至９のいずれか１項に記載の情報処理装置。
【請求項１１】
前記処理可否判定手段で処理ができないと判定された場合に、前記第１のオブジェクトを、前記処理装置で処理可能なサイズにサイズ変更すべく、前記第１のオブジェクトに対応するサイズ変更用オブジェクトを生成するサイズ変更用オブジェクト生成手段と、
前記サイズ変更用オブジェクト生成手段で生成された前記サイズ変更用オブジェクトに対する指示を受け付けることで、前記第１のオブジェクトのサイズを変更するサイズ変更手段と、
を備え、
前記送信手段は、前記サイズ変更手段でサイズが変更された前記第１のオブジェクトにかかる形状のデータを送信することを特徴とする請求項１０に記載の情報処理装置。
【請求項１２】
仮想空間におけるオブジェクトの位置と、当該オブジェクトの形状にかかるデータを記憶する記憶手段を備え、当該オブジェクトの形状にかかるデータを処理する処理装置と通信可能な情報処理装置の制御方法であって、
前記記憶手段に記憶されているオブジェクトの位置情報から、前記仮想空間で選択される第１のオブジェクトと、前記処理装置に対応するオブジェクトである第２のオブジェクトとの仮想空間上の距離が所定の距離内か判定する第１の距離判定工程と、
前記第１の距離判定工程で前記第１のオブジェクトと前記第２のオブジェクトの距離が所定距離内であると判定された場合、当該第２のオブジェクトと所定の距離内にあると判定された前記第１のオブジェクトの形状にかかるデータを、当該第２のオブジェクトに対応する前記処理装置に処理させるべく送信する送信工程と、
を含むことを特徴とする情報処理装置の制御方法。
【請求項１３】
仮想空間におけるオブジェクトの位置と、当該オブジェクトの形状にかかるデータを記憶する記憶手段を備え、当該オブジェクトの形状にかかるデータを処理する処理装置と通信可能な情報処理装置で実行が可能なプログラムであって、
前記情報処理装置を、
前記記憶手段に記憶されているオブジェクトの位置情報から、前記仮想空間で選択される第１のオブジェクトと、前記処理装置に対応するオブジェクトである第２のオブジェクトとの仮想空間上の距離が所定の距離内か判定する第１の距離判定手段と、
前記第１の距離判定手段で前記第１のオブジェクトと前記第２のオブジェクトの距離が所定距離内であると判定された場合、当該第２のオブジェクトと所定の距離内にあると判定された前記第１のオブジェクトの形状にかかるデータを、当該第２のオブジェクトに対応する前記処理装置に処理させるべく送信する送信手段として機能させることを特徴とする情報処理装置のプログラム。
【請求項１４】
仮想空間におけるオブジェクトの位置と、当該オブジェクトの形状にかかるデータを記憶する記憶手段を備える情報処理装置と、当該オブジェクトの形状にかかるデータを処理する処理装置とを含む情報処理システムであって、
前記情報処理装置は、
前記記憶手段に記憶されているオブジェクトの位置情報から、前記仮想空間で選択される第１のオブジェクトと、前記処理装置に対応するオブジェクトである第２のオブジェクトとの仮想空間上の距離が所定の距離内か判定する第１の距離判定手段と、
前記第１の距離判定手段で前記第１のオブジェクトと前記第２のオブジェクトの距離が所定距離内であると判定された場合、当該第２のオブジェクトと所定の距離内にあると判定された前記第１のオブジェクトの形状にかかるデータを、当該第２のオブジェクトに対応する前記処理装置に処理させるべく送信する送信手段と、
前記処理装置は、
前記送信手段により送信された、当該処理装置に対応する第２のオブジェクトとの距離が所定距離内であると判定された前記第１のオブジェクトの形状にかかるデータを受信する受信手段と、
前記受信手段で受信したデータを出力する出力手段と、
を備えることを特徴とする情報処理システム。
【発明の詳細な説明】
【技術分野】
【０００１】
情報処理装置、情報処理システム、その制御方法及びプログラムに関する。
【背景技術】
【０００２】
近年、複合現実（Ｍｉｘｅｄ  Ｒｅａｌｉｔｙ／以下、ＭＲと記載）の技術が普及し、ＭＲ技術を用いて、室内に、現実物体と３Ｄモデル（ＣＧモデル）が配置されることが行われている。ＭＲでは、ＣＧの示す物体があたかも目の前に存在するかのように見え、臨場感が非常に高い。このため、ＭＲ技術の様々な活用方法が検討されている。
【０００３】
また、ＣＧモデルを現実物として生成する方法として、３Ｄプリンタ技術がある。３Ｄプリンタは、一般的には、専用のソフトウェアがインストールされたＰＣの画面上でマウス等による３Ｄモデルの選択を行い、出力対象の３Ｄプリンタを指定することで、選択されたＣＧに基づいた現実物体の生成処理を行う。
【０００４】
特許文献１には、当該マーカの存在をユーザに意識させないために、マーカを検出した場合に、当該マーカを隠した画像を描画する技術が記載されている。
【０００５】
また、特許文献２では、仮想のペットを育成する複合現実感提示装置において、ユーザの所定部位による所定動作により、仮想のペットを示す３次元モデルの内部状態を遷移させ、仮想物体の存在感の認知を容易にするＭＲに関する技術が開示されている。
【０００６】
特許文献３には、３Ｄモデルの選択を受け付け、選択された３Ｄモデルを３Ｄプリンタで印刷する技術について開示されている。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２０００−３５０８６０号公報
【特許文献２】特開２００２−１１２２８６号公報
【特許文献３】特表２０１３−５２４３０８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
ＭＲによるＣＧの表示・操作（ＭＲ体験）をしている最中に、ＭＲ空間で表示中のＣＧモデルを３Ｄプリンタに出力する場合、ユーザは一度、ＭＲ体験をするために装着したＨＭＤ（ヘッドマウントディスプレイ）を頭部から外して、３ＤプリンタへＣＧモデル（３Ｄモデル／オブジェクト／仮想オブジェクト）を出力するため、ＰＣ画面上でソフトウェアの操作を行うことが考えられる。ＨＭＤを装着したまま、ＰＣ端末を操作することも考えられるが、ＨＭＤの視野は広いものではなく、ＰＣ端末の操作がし辛い。
【０００９】
また、プリンタ出力のためのソフトウェアでＣＧモデルを選択する場合、それまでＨＭＤで閲覧していたＣＧモデル全体、あるいはその一部のパーツを、わざわざＰＣ画面上で探し出して、選択し、３Ｄプリンタへの出力指示をしなければならない。
【００１０】
本発明は、仮想空間で選択されるオブジェクトにかかるデータを他のオブジェクトに対応する装置に容易に送信可能な仕組みを提供することを目的とする。
【課題を解決するための手段】
【００１１】
本発明の情報処理装置は、仮想空間におけるオブジェクトの位置と、当該オブジェクトの形状にかかるデータを記憶する記憶手段を備え、当該オブジェクトの形状にかかるデータを処理する処理装置と通信可能な情報処理装置であって、前記記憶手段に記憶されているオブジェクトの位置情報から、前記仮想空間で選択される第１のオブジェクトと、前記処理装置に対応するオブジェクトである第２のオブジェクトとの仮想空間上の距離が所定の距離内か判定する第１の距離判定手段と、前記第１の距離判定手段で前記第１のオブジェクトと前記第２のオブジェクトの距離が所定距離内であると判定された場合、当該第２のオブジェクトと所定の距離内にあると判定された前記第１のオブジェクトの形状にかかるデータを、当該第２のオブジェクトに対応する前記処理装置に処理させるべく送信する送信手段と、を備えることを特徴とする。
【発明の効果】
【００１２】
本発明によれば、仮想空間で選択されるオブジェクトにかかるデータを他のオブジェクトに対応する装置に容易に送信可能な仕組みを提供することができる。
【図面の簡単な説明】
【００１３】
【図１】本発明の実施形態における、情報処理システムの構成の一例を示す図である。
【図２】本発明の実施形態における、ＰＣ、ＨＭＤのハードウェア構成の一例を示す図である。
【図３】本発明の実施形態における、３Ｄプリンタのハードウェア構成の一例を示す図である。
【図４】本発明の実施形態における、各種装置の機能構成の一例を示す図である。
【図５】本発明の第１の実施形態における、重畳画像の表示処理の概要を示すフローチャートである。
【図６】本発明の第１の実施形態における、オブジェクトの印刷処理の流れを示すフローチャートである。
【図７】本発明の第１の実施形態における、ＭＲを用いた印刷状況の通知処理の流れを示すフローチャートである。
【図８】本発明の第１の実施形態における、各種データの構成の一例を示す図である。
【図９Ａ】本発明の第１の実施形態における、選択デバイス及び選択デバイスに対応するオブジェクトの一例を示す図である。
【図９Ｂ】本発明の第１の実施形態における、オブジェクトの選択・移動・接触の様子の一例を示す図である。
【図９Ｃ】本発明の第１の実施形態における、オブジェクトの印刷状況の表示の一例を示す図である。
【図９Ｄ】本発明の第１の実施形態における、印刷完了通知の表示の一例を示す図である。
【図１０】本発明の第２の実施形態における、オブジェクトの印刷処理の流れを示すフローチャートである。
【図１１】本発明の第２の実施形態における、オブジェクトのサイズ変更処理の流れを示すフローチャートである。
【図１２】本発明の第２の実施形態における、オブジェクトの拡大・縮小の様子を示す図である。
【図１３】本発明の第３の実施形態における、印刷者の特定処理の流れを示すフローチャートである。
【図１４】本発明の第３の実施形態における、ＭＲを用いた印刷状況の通知処理の流れを示すフローチャートである。
【図１５】本発明の第３の実施形態における、各種データの構成の一例を示す図である。
【図１６】本発明の第５の実施形態における、情報処理システムの構成の一例を示す図である。
【図１７】本発明の第５の実施形態における、複合機（プリンタ、ＦＡＸ装置、データ送信装置）の機能構成の一例を示す図である。
【図１８】本発明の第５の実施形態における、各種装置の機能構成の一例を示す図である。
【図１９】本発明の第５の実施形態における、装置に対するオブジェクトのデータ送信処理の流れを示すフローチャートである。
【図２０】本発明の第５の実施形態における、装置に対して送信するデータ生成処理の流れを示すフローチャートである。
【図２１】本発明の第５の実施形態における、ＭＲを用いた処理状況の通知処理の流れを示すフローチャートである。
【図２２】本発明の実施形態における、各種データの構成の一例を示す図である。
【図２３】本発明の実施形態における、装置から送信するデータの送信先の選択の様子を示す図である。
【図２４】本発明の実施形態における、装置に送信するデータの確認画面の表示の様子を示す図である。
【発明を実施するための形態】
【００１４】
図１を参照して、本発明の実施形態における、情報処理システムの構成の一例について説明する。
【００１５】
本発明の情報処理システムは、ＰＣ２００、ＨＭＤ１００（ヘッドマウントディスプレイ１００）、３Ｄプリンタ３００、光学センサ１０４、選択デバイス１０５等から構成される。ＰＣ２００とＨＭＤ１００（表示装置）、３Ｄプリンタ３００、光学センサ１０４、選択デバイス１０５は、図１に示すＬＡＮ１０１や、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）等を介して相互にデータ通信可能に接続されている。
【００１６】
ＰＣ２００は、外部メモリ内に、ＭＲ空間に配置して表示するオブジェクト（３ＤＣＧモデル／３Ｄモデル／仮想オブジェクトともいう）を記憶している。ＰＣ２００は、ＨＭＤ１００から受信した現実画像にオブジェクトを重畳した重畳画像（ＭＲ画像）を生成して、ＨＭＤに送信する。例えば、ＨＭＤで撮像した現実画像に対して、ＨＭＤの現実空間における位置姿勢・画角と同じ位置姿勢・画角で仮想空間を撮像した画像（仮想空間に配置されたオブジェクトを撮影した画像）を重ね合わせて合成する。ＭＲ技術の仕組みの詳細については前述した先行技術文献や従来技術の通りであるためこれ以上の詳細な説明は割愛する。
【００１７】
ＨＭＤ１００は、ＰＣ２００から受信した重畳画像をディスプレイに表示する。選択デバイス１０５は、ＭＲ空間上に配置されたオブジェクトを選択して、移動するためのデバイスである。
【００１８】
ＨＭＤ１００と選択デバイス１０５には、それぞれオプティカルマーカーが設置されており、光学センサ１０４が当該オプティカルマーカーを撮影（検知・検出）することで、ＨＭＤ１００と選択デバイス１０５の位置姿勢（座標の情報）を特定し、ＰＣ２００に送信する。
【００１９】
３Ｄプリンタ３００は、ＰＣ２００からの指示に応じてオブジェクトを出力する３次元印刷装置（造形装置）である。選択デバイス１０５により選択されたオブジェクトと、３Ｄプリンタ３００とが接触した場合に、ＰＣ２００が当該選択中のオブジェクトを３Ｄプリンタ３００に送信して印刷させる。つまり、立体物を造形する（３次元モデル（オブジェクト）のデータを処理）させる。
【００２０】
また、３Ｄプリンタ３００は、印刷中のオブジェクトの印刷進捗（印刷の進捗状況）を監視しており、何％印刷が完了したかを記憶している。当該印刷進捗の情報をＰＣ２００に送信し、ＰＣ２００は当該印刷進捗に応じたオブジェクトを生成・描画してＨＭＤ１００に送信することで、ユーザ（ＨＭＤ１００をかけたユーザ）に対して印刷進捗を通知する。以上が図１の説明である。
【００２１】
尚、現実空間とＭＲ空間（原点座標Ｘ，Ｙ，Ｚ＝０，０，０を原点として、オブジェクトを配置した仮想空間）との位置合わせ（キャリブレーション）は既に行われているものとして、以下、本発明の実施形態について説明する。
【００２２】
次に図２を参照して、本発明の実施形態における、ＰＣ、ＨＭＤのハードウェア構成の一例について説明する。図２は、本発明の実施形態における、ＰＣ２００、ＨＭＤ１００のハードウェア構成の一例を示す図である。尚、図２のＰＣ２００とＨＭＤ１００のハードウェアの構成は一例であり、用途や目的に応じて様々な構成例がある。
【００２３】
まず、ＰＣ２００は、ＣＰＵ２０１、ＲＯＭ２０２、ＲＡＭ２０３、システムバス２０４、入力コントローラ２０５、ビデオコントローラ２０６、メモリコントローラ２０７、通信Ｉ／Ｆコントローラ２０８、入力デバイス２０９、ディスプレイ２１０、外部メモリ２１１等を備える。
【００２４】
ＣＰＵ２０１は、システムバス２０４に接続される各デバイスやコントローラを統括的に制御する。
【００２５】
また、ＲＯＭ２０２あるいは外部メモリ２１１には、ＣＰＵ５０１の制御プログラムであるＢＩＯＳ（Ｂａｓｉｃ  Ｉｎｐｕｔ  ／  ＯｕｔｐｕｔＳｙｓｔｅｍ）やオペレーティングシステムや、各種装置の実行する機能を実現するために必要な後述する各種プログラム等が記憶されている。ＲＡＭ２０３は、ＣＰＵ２０１の主メモリ、ワークエリア等として機能する。
【００２６】
ＣＰＵ２０１は、処理の実行に際して必要なプログラム等をＲＡＭ２０３にロードして、プログラムを実行することで各種動作を実現するものである。
【００２７】
また、入力コントローラ（入力Ｃ）２０５は、キーボードやマウス２５０等のポインティングデバイスからの入力を制御する。
【００２８】
ビデオコントローラ（ＶＣ）２０６は、ディスプレイ２１０等の表示器への表示を制御する。表示器は液晶ディスプレイでもＣＲＴでも構わない。
【００２９】
メモリコントローラ（ＭＣ）２０７は、ブートプログラム、ブラウザソフトウエア、各種のアプリケーション、フォントデータ、ユーザファイル、編集ファイル、各種データ等を記憶するハードディスク（ＨＤ）やフレキシブルディスク（ＦＤ）或いはＰＣＭＣＩＡカードスロットにアダプタを介して接続されるカード型メモリ等の外部メモリ２１１へのアクセスを制御する。
【００３０】
通信Ｉ／Ｆコントローラ（通信Ｉ／ＦＣ）２０８は、ネットワークを介して、外部機器と接続・通信するものであり、ネットワークでの通信制御処理を実行する。例えば、ＴＣＰ／ＩＰを用いたインターネット通信等が可能である。通信Ｉ／Ｆコントローラ２０８は、光学センサ１０４との通信を制御する。
【００３１】
尚、ＣＰＵ２０１は、例えばＲＡＭ２０３内の表示情報用領域へアウトラインフォントの展開（ラスタライズ）処理を実行することにより、ディスプレイ２１０上での表示を可能としている。また、ＣＰＵ２０１は、ディスプレイ２１０上の不図示のマウスカーソル等でのユーザ指示を可能とする。
【００３２】
本発明のＰＣ２００が後述する各種処理を実行するために用いられる各種プログラム等は外部メモリ２１１に記録されており、必要に応じてＲＡＭ２０３にロードされることによりＣＰＵ２０１によって実行されるものである。さらに、本発明に係わるプログラムが用いる定義ファイルや各種情報テーブルは外部メモリ２１１に格納されている。
【００３３】
次に、ＨＭＤ１００は、右目ビデオカメラ２２１、左目ビデオカメラ２２２、右目ディスプレイ２２３、左目ディスプレイ２２４、コントローラ２２５等を備える。
【００３４】
右目ビデオカメラ２２１と、左目ビデオカメラ２２２は、現実世界を撮影するビデオカメラである。右目ビデオカメラ２２１は、右目ディスプレイ２２３に表示するための画像を撮影し、左目ビデオカメラ５２２は、左目ディスプレイ２２４に表示するための画像を撮影する。撮影された画像（現実空間画像／現実画像）は、コントローラ２２５がＰＣ２００に送信し、通信Ｉ／Ｆコントローラ２０８を通じてＰＣ２００が受信する。
【００３５】
ＰＣ２００から通信Ｉ／Ｆコントローラ２０８を通じて複合現実画像（ＭＲ画像／重畳画像）が送信されると、コントローラ２２５が受信し、受信した複合現実画像を右目ディスプレイ２２３と左目ディスプレイ２２４に表示させる。この時、右目ビデオカメラ２２１で撮影された現実空間画像に基づいて生成された複合現実画像は、右目ディスプレイ２２３に表示し、左目ビデオカメラ２２２で撮影された現実空間画像に基づいて生成された複合現実画像は、左目ディスプレイ２２４に表示する。以上が図２の説明である。
【００３６】
次に図３を参照して、本発明の実施形態における、３Ｄプリンタのハードウェア構成の一例について説明する。
【００３７】
図３に示す３Ｄプリンタは、インクジェット方式で３次元物体を形成（印刷／造形）する３Ｄプリンタである。
【００３８】
本発明の実施形態において、図３は、あくまで、３Ｄプリンタのハードウェア構成の一例であって、ＰＣから取得した３Ｄモデルの印刷ができれば、どのような印刷方式、ハードウェア構成であってもよいものとする。
【００３９】
図３において、コントローラユニット３１０は、３Ｄモデルのデータ（３Ｄモデルデータ／オブジェクト）を、現実物体（３次元物体）として形成するための材料である粉体を供給する粉体供給部や、粉体を硬化させて形状を整える３次元物体の印刷処理（プリント）を行うためのインクを吐出するインクジェットヘッド他、各機構と接続される。また、ＬＡＮ（例えば、図１に示したＬＡＮ１０１）や公衆回線（ＷＡＮ）（例えば、ＰＳＴＮまたはＩＳＤＮ等）と接続することで、３Ｄモデルデータやデバイス情報（例えば印刷進捗の情報等）の入出力を行う。
【００４０】
コントローラユニット３１０において、３０１はＣＰＵで、システム全体を制御するプロセッサである。３０２はＲＡＭで、ＣＰＵ３０１が動作するためのシステムワークメモリであり、プログラムを記録するためのプログラムメモリや、画像データを一時記録するための画像メモリでもある。
【００４１】
３０３はＲＯＭで、システムのブートプログラムや各種制御プログラムが格納されている。３０４はハードディスクドライブ（ＨＤＤ）で、システムを制御するための各種プログラム，画像データ等を格納する。
【００４２】
３０７は操作部インタフェース（操作部Ｉ／Ｆ）で、操作部３０８（タッチパネルディスプレイ３０８）とのインタフェース部である。また、操作部Ｉ／Ｆ３０７は、操作部３０８から入力したキー情報（例えば、印刷スタートのためのスタートアイコンの押下）をＣＰＵ３０１に伝える役割をする。
【００４３】
３０５はネットワークインタフェース（Ｎｅｔｗｏｒｋ  Ｉ／Ｆ）で、ネットワーク（ＬＡＮ）１０１に接続する。また、無線通信も可能な構成となっており、赤外線やＢｌｕｅｔｏｏｔｈ（登録商標）、Ｗｉ-Ｆｉ（登録商標）を用いた通信にて他の装置と接続する。データの入出力を行う。３０６はモデム（ＭＯＤＥＭ）で、公衆回線に接続し、データの入出力を行う。
【００４４】
３２２は外部インタフェース（外部Ｉ／Ｆ）で、ＵＳＢ、ＩＥＥＥ１３９４，プリンタポート，ＲＳ−２３２Ｃ等の外部入力を受け付けるＩ／Ｆ部である。他に、ユーザ認証で必要となる携帯端末のＩＣカード（記憶媒体）の読み取り用のカードリーダ３２３が外部Ｉ／Ｆ部３２２に接続可能である。
【００４５】
カードリーダ３２３が接続されている場合、ＣＰＵ３０１は、この外部Ｉ／Ｆ３２２を介してカードリーダ３２３による携帯端末のＩＣカードからの情報読み取りを制御し、該携帯端末のＩＣカードから読み取られた情報を取得する。以上のデバイスがシステムバス３０９上に配置される。
【００４６】
その他、粉体供給コントローラ３１１、造形ステージコントローラ３１３、インクジェットヘッドコントローラ３１５、ローラ移動コントローラ３１７、回転モータコントローラ３１９等のデバイスがシステムバス３０９上に配置される。
【００４７】
粉体供給部３１２は、３次元物体（印刷の成果物）を形成するための粉末（粉体）を貯留する貯留タンクと、当該貯留タンクにあけた穴であって、当該貯留タンク内の粉体を、プレート３２１上に噴出するための穴を備える。また、当該プレート３２１上に粉体を噴出するために、貯留タンク内の粉体を穴の方向に向かって押し出す粉体供給ステージ（昇降機構）を備える。
【００４８】
プレート３２１は、粉体供給部３１２から供給された粉体を、後述する、３次元物体を形成する物理空間である造形ステージ３１４に運ぶための平面体である。ローラ３１８をプレート３２１上に、粉体供給部３１２から造形ステージ３１４方向に転がすことで、粉体を造形ステージ３１４上に移動させ、また、造形ステージ３１４上の粉体の滞留状態を平面化する（平らにする）。
【００４９】
粉体供給コントローラ３１１は、粉体をステージ上に噴出するため、粉体供給ステージを駆動させる。ここでは、プレート３２１の下部に、粉体供給部３１２が設置されているものとする。
【００５０】
当該粉体供給部３１２に隣接する位置に、プレート３２１の一部をくり抜いて、造形ステージ３１４が設置される。当該造形ステージ３１４は、３次元物体が形成される物理空間（フィールド）である。
【００５１】
造形ステージコントローラ３１３は、インクジェットヘッド３１６を用いて、造形ステージ３１４上の粉体への印刷処理（３次元物体を形成するため、粉体を硬化させる液体を吐出する処理）を行うにあたり、造形ステージ３１４を、所定の間隔で、所定の高さ分下降させるため、造形ステージ３１４下部に設置されたシリンダの駆動制御を行う。
【００５２】
インクジェットヘッドコントローラ３１５は、インクジェットヘッド３１６に付されたモータを制御して、インクジェットヘッド３１６を造形ステージ３１４の上部に移動させ、印刷中の３次元モデルデータ及び印刷進捗の情報に従って、造形ステージ３１４の上の粉体の所定の位置に、所定量のインク（粉体硬化用の液体）を吐出させる制御を行う。
【００５３】
回転モータコントローラ３１９は、ローラ３１８が備える回転モータ３２０の回転動作を制御して、ローラ３１８を回転させ、ローラ移動コントローラ３１７は、ローラ３１８を粉体供給部３１２から造形ステージ３１４方向に移動させて、粉体を造形ステージ３１４上に移動させ、また、造形ステージ３１４上の粉体の滞留状態を平面化する（平らにする）。以上が図３の説明である。
【００５４】
次に図４を参照して、本発明の実施形態における、各種装置の機能構成の一例について説明する。
【００５５】
ＰＣ２００の、オブジェクト記憶部４２１は、オブジェクト（ＭＲ空間上に配置する３ＤＣＧモデル）を記憶する記憶部である。当該オブジェクトの記憶形式については、図８の説明で後述する。
【００５６】
オブジェクト位置特定部４２２は、ＭＲ空間上の、オブジェクトが配置されている位置（座標）を特定する処理部である。重畳画像送信部４２３は、ＨＭＤ１００から取得したＨＭＤ１００の位置・姿勢の情報（ＭＲ空間上／仮想空間上の座標・姿勢）と、オブジェクト位置特定部４２２で特定したオブジェクトの位置の情報を用いて、ＨＭＤ１００のディスプレイに表示する現実画像に重畳すべきオブジェクトを、当該現実画像に、ＨＭＤ１００の位置姿勢から見た角度で重畳した重畳画像（ＭＲ画像）を、ＨＭＤ１００に送信する送信部である。
【００５７】
接触判定部４２４は、オブジェクト位置特定部４２２で特定した各オブジェクトの位置と、オブジェクトのサイズの情報を用いて、オブジェクト同士が接触したか否かを判定する判定部である。
【００５８】
オブジェクト送信部４２５は、３Ｄプリンタ３００のオブジェクト（３Ｄプリンタオブジェクト）に接触したオブジェクトのデータを、３Ｄプリンタ３００で印刷させるべく、３Ｄプリンタ３００に送信する送信部である。
印刷進捗情報受信部４２６は、３Ｄプリンタ３００より、３Ｄモデル（オブジェクト）の印刷進捗の情報（図８の８１０）を受信する受信部である。
【００５９】
通知処理部４２７は、当該印刷進捗情報受信部４２６で受信した印刷進捗の情報を、ＨＭＤ１００に送信して、ユーザに通知する。例えば、印刷が完了している分（印刷が完了しているパーセンテージ分）だけ、透過率０％で描画した、印刷中のオブジェクトを生成して現実画像に重畳し（進捗情報表示制御手段）、ＨＭＤ１００のディスプレイに表示させるために、ＨＭＤ１００に送信する処理を行うことで、印刷状況をユーザに通知する。
【００６０】
光学センサ１０４の、位置情報特定部４４１は、ＨＭＤ１００と選択デバイス１０５に付されたオプティカルマーカーを検知し、ＭＲ空間上のＨＭＤ１００と選択デバイス１０５の位置を特定する特定部である。位置情報送信部４４２は、位置情報特定部４４１で特定した各デバイスの位置情報をＰＣ２００に送信する送信部である。
【００６１】
ＨＭＤ１００の、撮像処理部４１１は、ＨＭＤ１００に設置されたカメラ装置を用いた現実画像の撮像処理を実行する処理部である。ＨＭＤ１００は、当該撮像処理部４１１で撮像した画像データをＰＣ２００に送信する。
【００６２】
そして、重畳画像受信部４１２が、当該ＰＣ２００で生成された、ＨＭＤ１００の位置・姿勢から見た重畳画像を受信して、重畳画像表示部４１３が、当該受信した重畳画像をディスプレイ上に表示する。
【００６３】
３Ｄプリンタ３００の、オブジェクト受信部４３１は、ＰＣ２００より、３次元印刷（造形）をすべき３Ｄモデルのデータを受信する受信部である。印刷処理部４３２は、当該オブジェクト受信部４３１で受信した３Ｄモデルデータ（オブジェクト）の印刷処理（造形処理）を実行する。印刷進捗情報送信部４３３は、当該３Ｄプリンタ３００で印刷中または印刷が完了したオブジェクトの印刷状況（印刷完了のパーセンテージの情報）をＰＣ２００に送信する送信部である。以上が図４の説明である。
【００６４】
＜第１の実施形態＞
以下、図５〜図９Ｄを参照して、本発明の第１の実施形態について説明する。
【００６５】
まず、図９Ａを参照して、本発明の第１の実施形態における、選択デバイス及び選択デバイスに対応するオブジェクトの一例について説明する。図９Ａにおいて、選択デバイス１０５はマウスである。選択デバイス１０５（マウス１０５）は、ポインティングデバイスであり、ＰＣ２００とデータ通信可能に接続されている。
【００６６】
選択デバイス１０５とＰＣ２００との接続は、有線接続であってもよいし、無線接続であってもよい。また、選択デバイス１０５は第１のボタン９０１と第２のボタン９０２を備える。
【００６７】
更に、選択デバイス１０５にもＨＭＤ１００と同様のオプティカルマーカーを備える。このオプティカルマーカーによって、ＨＭＤ１００だけでなく、選択デバイス１０５の位置や姿勢も特定することができる。
また、９０３は、オブジェクトの属性を示す図８の属性８０３＝選択デバイスである、選択用オブジェクトの一例である。
選択用オブジェクト９０２は、図９Ａに示すように、選択デバイス１０５に重畳するように表示される。
【００６８】
選択用オブジェクト９０３は、当該選択用オブジェクト９０３と接触している他のオブジェクト（属性８０３＝被選択  のオブジェクト）を、選択デバイス１０５を介して操作するための、選択デバイス１０５と他のオブジェクトの接触判定に用いられるオブジェクトである。
【００６９】
例えば、ユーザが移動して選択デバイス１０５をオブジェクトに近づけ、選択用オブジェクト９０３とオブジェクトとを接触させる。そして、接触している状態で選択デバイス１０５の第１のボタン９０１をユーザが押下する。すると、当該第１のボタンが押下されたことをＰＣ２００のＣＰＵ２０１が検知し、当該選択用オブジェクト９０３に接触しているオブジェクトを、選択用オブジェクト９０３に追従するように制御する。
【００７０】
例えば、図９Ｂに示すように、被選択用オブジェクトを移動する。図９Ｂの９１０、９２０は、ＨＭＤ１００のディプレイに表示される重畳画像である。
【００７１】
図９Ｂにおいて、９１１と９１３は被選択用オブジェクトである。図９Ｂでは、被選択用オブジェクト９１１と選択デバイス１０５のオブジェクト（選択用オブジェクト９０３）とが接触しているものとする。図９Ｂの９１０の状態で、被選択用オブジェクト９１１と選択用オブジェクト９０３とが接触し、第１ボタン９０１が押下されている状態で選択デバイス１０５を移動させることで、９３０に示すように、選択デバイス１０５（選択用オブジェクト９０３）に追従して、被選択用オブジェクト９１１を移動させる。
【００７２】
また、第１のボタンの押下が解除されると、当該第１のボタンの押下が解除されたことをＰＣ２００のＣＰＵ２０１が検知し、前記接触しているオブジェクトの、選択用オブジェクト９０３への追従を取りやめる。つまり、接触していたオブジェクトは、選択用オブジェクト９０３から分離し、当該第１のボタンの押下が解除された時点で、当該接触していたオブジェクトが存在した座標に停止する。
【００７３】
本発明の第１の実施形態においては、前記第２のボタンは使用しないため、当該第２のボタンについては、他の実施形態の説明で後述する。以上が図９Ａの説明である。
【００７４】
次に、図８を参照して、本発明の第１の実施形態における、各種データの構成の一例について説明する。図８に記載の情報は、ＰＣ２００の外部メモリに予め記憶されているものとする。
【００７５】
オブジェクト情報８００のオブジェクトＩＤ８０１は、各オブジェクトのデータ（オブジェクト情報）の識別情報である。オブジェクト名８０２は、オブジェクト（ここでは３ＤＣＧモデル）の名称（ファイル名）である。
【００７６】
属性８０３は、各オブジェクトが、３Ｄプリンタに対応するオブジェクトか、選択デバイス１０５に対応するオブジェクト（選択用オブジェクト）か、選択デバイスのオブジェクトに接触することで選択される選択対象のオブジェクト（３Ｄプリンタで印刷されるＣＧモデルを示すオブジェクト／被選択用オブジェクト）か、を示す情報である。
【００７７】
座標８０４は、各オブジェクトの、ＭＲ空間上（仮想空間上）の配置位置（Ｘ．Ｙ．Ｚ＝０００．０００．０００  を原点とするＸＹＺ座標）を示す。図８によれば、オブジェクトＩＤ＝Ｍ０００の座標８０４＝０００．０００．０００のため、３Ｄプリンタのオブジェクトは、ＭＲ空間上の原点座標に配置されていることとなる。ここでは、実際の３Ｄプリンタ３００の現実空間上の位置＝ＭＲ空間の原点座標（Ｘ．Ｙ．Ｚ＝０００．０００．０００）である。つまり、３Ｄプリンタオブジェクトの座標＝３Ｄプリンタの座標であり、３Ｄプリンタオブジェクトは、現実の３Ｄプリンタ３００に重畳して配置されているものとする。各座標８０４の座標値は、各オブジェクトの中心点の座標であるものとする。
【００７８】
尚、選択デバイス１０５の座標８０４は、光学センサにより補足されており、例えばユーザが選択デバイスを移動させることで、当該座標８０４がリアルタイムに更新される。当該更新に用いる選択デバイス１０５のリアルタイムの座標８０４の情報は、光学センサ１０４からＰＣ２００に送信され、ＰＣ２００が、当該光学センサ１０４から受信した座標の情報（位置情報）を、選択デバイスの座標８０４に上書することで更新を行う。
【００７９】
サイズ（スケール）８０５は、各オブジェクトの大きさを示す。ファイルパス８０６は、各オブジェクトのファイル（オブジェクトの形状を示すファイル）が記憶されている、記憶領域上のアドレスを示す。
【００８０】
選択中フラグ８０７は、被選択用オブジェクトが選択されている状態か否かを示すフラグである。選択中フラグ８０７＝０の場合、選択されていない状態であり、選択中フラグ８０７＝１の場合、選択中であることを示す。
【００８１】
印刷進捗情報８１０は、３Ｄプリンタ３００、ＰＣ２００の外部メモリにそれぞれ記憶されている。ＰＣ２００は、３Ｄプリンタ３００より当該印刷進捗情報を受信して外部メモリに記憶するものとする。
【００８２】
オブジェクトＩＤ８１１は、各オブジェクト（オブジェクト情報）の識別情報である。進捗８１２は、当該オブジェクトＩＤ８１１の示す各オブジェクトの、３Ｄプリンタ３００における印刷状況（印刷の進捗）を示す情報である。
【００８３】
３Ｄプリンタ特定情報８２０は、ＰＣ２００の外部メモリに予め記憶されている、３Ｄプリンタオブジェクトと３Ｄプリンタ３００の対応付けを示す情報である。オブジェクトＩＤ８２１は、３ＤプリンタオブジェクトのオブジェクトＩＤである。３Ｄプリンタ識別情報８２２は、オブジェクトＩＤ８２１の３Ｄプリンタオブジェクトに対応する３Ｄプリンタ３００の識別情報である。
【００８４】
３Ｄプリンタ識別情報８２２には、例えば、３Ｄプリンタ３００のＩＰアドレス等の識別情報が記憶されている。オブジェクトＩＤ８２１の３Ｄプリンタオブジェクトに被選択用オブジェクトが接触した場合には、当該被選択用オブジェクトを印刷すべく、当該被選択用オブジェクトのデータを、３Ｄプリンタ識別情報８２２の示す３Ｄプリンタ３００に送信する。以上が図８の説明である。
【００８５】
次に図５を参照して、本発明の第１の実施形態における、重畳画像の表示処理の概要について説明する。図５は、本発明の第１の実施形態における、重畳画像の表示処理の概要を示すフローチャートである。
【００８６】
ＨＭＤ１００は、撮像処理の開始指示を受け付ける（ステップＳ５０１）。一方、ＰＣ２００のＣＰＵ２０１は、ＨＭＤ１００より撮像画像を取得した場合に、重畳画像を生成してＨＭＤに返信する処理を開始する指示を、不図示の指示受付画面で受け付け、待機する（ステップＳ５０５）。
【００８７】
光学センサ１０４は、ＨＭＤ１００の位置を検知すべく、検知の開始指示を受け付ける（ステップＳ５１２）。つまり、例えば、光学センサ１０４の起動指示を受け付ける。
【００８８】
ＨＭＤ１００は、撮像処理を行い（ステップＳ５０２）、撮像した画像である撮像画像（現実画像）をＰＣ２００に順次送信する（ステップＳ５０３）。ここでいう撮像処理は例えばビデオ撮像である。
【００８９】
光学センサ１０４は、ＨＭＤ１００に設置された光マーカ、選択デバイス１０５に設置された光マーカの位置姿勢（座標）の特定処理を行い（ステップＳ５１３）、ＨＭＤ１００の位置姿勢、選択デバイス１０５の位置姿勢の情報をＰＣ２００に送信する（ステップＳ５１４）。
【００９０】
当該位置姿勢の情報（座標）とは、ＭＲ空間上の位置である。つまり、例えば、原点マーカにより定義されたＭＲ空間の世界座標の原点からのＨＭＤ１００の相対位置（相対座標）、及び、ＨＭＤの角度・方向の情報を取得して、ＰＣ２００に送信する。選択デバイス１０５についても同様に、ＭＲ空間の世界座標の原点からの選択デバイス１０５の相対位置（相対座標）、及び、選択デバイス１０５の角度・方向の情報を取得して、ＰＣ２００に送信する。
【００９１】
ＰＣ２００のＣＰＵ２０１は、ＨＭＤ１００より撮像画像を受信し（ステップＳ５０６）、光学センサ１０４よりＨＭＤ１００、選択デバイス１０５の位置、姿勢の情報を受信する（ステップＳ５０７／位置取得手段）。ＰＣ２００は当該位置・姿勢の情報を外部メモリに記憶する。
【００９２】
ＰＣ２００のＣＰＵ２０１は、ＨＭＤ１００より受信した撮像画像（現実画像）に、仮想空間上に配置したオブジェクトの画像を重畳した重畳画像（ＭＲ画像）を生成する処理、及びＨＭＤ１００に当該重畳画像を表示させるべく送信する処理を実行する（ステップＳ５０８）。ＨＭＤ１００は、重畳画像を受信してディスプレイに表示する（ステップＳ５１６）。
【００９３】
尚、当該重畳画像の生成処理の手法（例えば、オブジェクトのＭＲ空間上の位置・ＭＲ空間と現実空間の位置合わせを行い、ＨＭＤの位置姿勢の情報からユーザの視界に映すべきオブジェクトを特定して、ＨＭＤに設置されたカメラから取得した画像に、当該ユーザの視界に映すべきオブジェクトを重畳して重畳画像を生成し、ＨＭＤに送信して表示させる手法／ユーザのモーションに応じて、オブジェクトの状態を変化させる手法）、その具体的方法については、引用文献２：特開２００２−１１２２８６号公報にも記載されているように公知であるため、ここでは説明を割愛する。
【００９４】
ＰＣ２００のＣＰＵ２０１は、オブジェクト（オブジェクトの示す３Ｄモデル／３Ｄプリンタオブジェクト）の印刷処理（ステップＳ５０９／図６で後述）、及び、当該印刷処理がされているオブジェクトの印刷状況（印刷進捗）の表示処理（ステップＳ５１０／図７で後述）を行って、重畳画像を生成してＨＭＤ１００に返信する処理を終了する終了指示を受け付けたか判定し（ステップＳ５１１）、終了指示を受け付けた場合には処理を終了し、終了指示を受け付けていない場合は処理を継続する（ステップＳ５０６に処理を戻す）。
【００９５】
ＨＭＤ１００は撮像処理の終了指示を受け付けたか判定し（ステップＳ５０４）、終了指示を受け付けた場合には処理を終了し、終了指示を受け付けていない場合は撮像処理を継続する（ステップＳ５０２に処理を戻す）。
【００９６】
光学センサ１０４は、ＨＭＤ１００、選択デバイス１０５の位置情報を特定する処理の終了指示を受け付けたか判定し（ステップＳ５１５）、終了指示を受け付けた場合には処理を終了し、終了指示を受け付けていない場合は撮像処理を継続する（ステップＳ５１３に処理を戻す）。以上が図５の、重畳画像の表示処理の概要についての説明である。
【００９７】
次に図６を参照して、本発明の第１の実施形態における、オブジェクトの印刷処理の流れについて説明する。
【００９８】
ＰＣ２００のＣＰＵ２０１は、オブジェクト情報８００より、選択デバイス１０５の位置情報を読み出す（ステップＳ６０１）。具体的には、属性８０３＝選択デバイスであるオブジェクトの座標８０４を読み出して取得する。
【００９９】
ＰＣ２００のＣＰＵ２０１は、選択デバイス１０５から操作信号を受信する（ステップＳ６０２）。ここでは、第１のボタン９０１が押下された操作信号を受信し、第１のボタン９０１が押下されたことを検知したものとする。
【０１００】
ＰＣ２００のＣＰＵ２０１は、選択デバイス１０５が（モデル選択デバイス１０５に対応するオブジェクト（属性８０３＝モデル選択デバイスである選択用オブジェクト９０３））が、ＭＲ空間内に配置されているオブジェクト（選択対象オブジェクト（属性８０３＝被選択のオブジェクトである被選択用オブジェクト））と接触しているかを判定する（ステップＳ６０３）。
【０１０１】
つまり、選択用オブジェクトの座標８０４及びサイズ８０５を特定し、当該選択用オブジェクトから所定範囲内にある他のオブジェクト（被選択用オブジェクト）の座標８０４及びサイズ８０５を特定して、選択用オブジェクトと重なっている他のオブジェクトが存在するか判定する。例えば、図９Ｂの９３０に示すように、被選択用オブジェクト９１１と３Ｄプリンタオブジェクト９１２が接触しているか判定する。接触しているか否かは、例えばオブジェクトの座標８０３と、後述する図１５の所定範囲１５１０や図２２の所定距離２２４０の値、各オブジェクトのサイズ８０５を用いて特定可能である。例えば、座標８０３＝０００．０００．０００を中心とした１０００ｍｍ×１０００ｍｍ×１０００ｍｍの直方体の内側の空間に、座標８０３＝ＸＸ２．ＹＹ２．ＺＺ２を中心とした１００ｍｍ×１００ｍｍ×１００ｍｍの直方体の外面が入り込んでいる場合に（距離が０以下である場合に）、被選択用オブジェクト９１１と３Ｄプリンタオブジェクト９１２が接触していることを特定可能である。
【０１０２】
当該接触判定のための所定範囲の値（不図示）は、予め、ＰＣ２００の外部メモリに記憶されているものとする。
【０１０３】
また、当該接触判定の方法は一例であり、オブジェクト同士が接触したか否かを判断できれば、他の既知の技術を使用してもよい。
【０１０４】
尚、座標８０４とサイズ８０５の他に、オブジェクトの角度をＰＣ２００に記憶しておき、当該座標８０４とサイズ８０５、角度の情報を用いて、オブジェクト同士が接触しているか判定するようにしてもよい。
【０１０５】
ＰＣ２００のＣＰＵ２０１は、選択用オブジェクト９０３が、被選択用オブジェクトと接触していないと判定した場合（ステップＳ６０３でＮＯ）、処理をステップＳ６０３の前に戻す。選択用オブジェクト９０３が、被選択用オブジェクトと接触していると判定した場合に（ステップＳ６０３でＹＥＳ）、接触している被選択用オブジェクトの選択中フラグ８０７を１に変更し（つまり、被選択用オブジェクトを選択し／選択受付手段）、描画フレーム毎の選択デバイス１０５の移動量を取得する（ステップＳ６０４）。ここでいう移動量は、ＭＲ空間上での選択デバイス１０５の位置の変化量、および回転角度の変化量を指す。
【０１０６】
また、ステップＳ６０３で、選択デバイス１０５で選択される直前の、被選択用オブジェクトの座標８０４の値を、外部メモリの所定の領域に、当該被選択用オブジェクトのオブジェクトＩＤと対応付けて記憶する。
【０１０７】
ＰＣ２００のＣＰＵ２０１は、選択デバイス１０５（選択用オブジェクト９０３）と接触している被選択用オブジェクトの表示位置を、ステップＳ６０４で取得した、選択デバイス１０５の移動量の分だけ変更する（ステップＳ６０５／移動制御手段）。つまり、選択デバイス１０５（選択用オブジェクト９０３）の移動に追従して、接触中の被選択用オブジェクトを表示するよう、接触中の被選択用オブジェクトの位置（座標８０４）を更新する。追従の様子は、例えば図９Ｂに示す。
【０１０８】
ＰＣ２００のＣＰＵ２０１は、３Ｄプリンタオブジェクトと、ステップ６０４で表示位置を変更している、選択中の被選択用オブジェクトが接触しているか否かを判定する（ステップＳ６０６）。
【０１０９】
つまり、選択中フラグ８０７＝１の被選択用オブジェクト（選択中のオブジェクト）の座標８０４及びサイズ８０５を特定し、当該選択用オブジェクトから所定範囲内にある３Ｄプリンタオブジェクトの座標８０４及びサイズ８０５を特定して、選択中のオブジェクトと重なっている３Ｄプリンタオブジェクトが存在するか判定する。
【０１１０】
当該接触判定のための所定範囲の値（不図示）は、予め、ＰＣ２００の外部メモリに記憶されているものとする。
【０１１１】
また、当該接触判定の方法は一例であり、オブジェクト同士が接触したか否かを判断できれば、他の既知の技術を使用してもよい。
【０１１２】
３Ｄプリンタオブジェクトと、選択中の被選択用オブジェクトが接触していないと判定した場合（ステップＳ６０６でＮＯ）、処理をステップＳ６０６の前に戻す。３Ｄプリンタオブジェクトと、選択中の被選択用オブジェクトが接触したと判定した場合（ステップＳ６０６でＹＥＳ）、ＰＣ２００のＣＰＵ２０１は、被選択用オブジェクトの移動を停止する（ステップＳ６０７）。つまり、選択デバイスに追従して移動させる処理を終了する。
【０１１３】
ＰＣ２００のＣＰＵ２０１は、当該３Ｄプリンタオブジェクトに接触している被選択用オブジェクトのサイズ８０５を参照し（ステップＳ６０８）、当該３Ｄプリンタオブジェクトに対応する３Ｄプリンタの印刷可能サイズの情報を、外部メモリより取得する（ステップＳ６０９）。当該印刷可能サイズの情報は、３ＤプリンタオブジェクトのオブジェクトＩＤに対応付けられており、予めＰＣ２００の外部メモリに記憶されているものとする。
【０１１４】
ＰＣ２００のＣＰＵ２０１は、選択中の被選択用オブジェクトのサイズが、接触している３Ｄプリンタオブジェクトの示す３Ｄプリンタで印刷可能なサイズか判定する（ステップＳ６１０／印刷可否判定手段／処理可否判定手段）。
【０１１５】
出力が不可能なサイズの場合（ステップＳ６１０でＮＯ）、つまり、例えば、被選択用オブジェクトの大きさが、３Ｄプリンタで印刷可能なオブジェクトの大きさを超えていた場合、エラーを示す情報を３Ｄプリンタ３００のディスプレイに表示させるべく、当該エラーを示す情報を、ステップＳ６０６で接触していると判定された３Ｄプリンタオブジェクトに対応する３Ｄプリンタ３００に送信する（ステップＳ６１２）。
【０１１６】
ＰＣ２００のＣＰＵ２０１は、選択中の被選択用オブジェクトのサイズが、接触している３Ｄプリンタオブジェクトの示す３Ｄプリンタ３００で印刷可能なサイズであると判定した場合（ステップＳ６１０でＹＥＳ）、当該３Ｄプリンタオブジェクトに接触中の被選択用オブジェクトのファイルパス８０６を取得して（ステップＳ６１１）、当該被選択用オブジェクトの示す３Ｄモデルのファイル（オブジェクト名８０２に示す名称のファイル）を取得する（ステップＳ６１３）。
【０１１７】
ＰＣ２００のＣＰＵ２０１は、取得した３Ｄモデルのファイル及び当該３Ｄモデルを示す被選択用オブジェクトのオブジェクトＩＤを、ステップＳ６０６で接触していると判定された３Ｄプリンタ３００に対して送信し（ステップＳ６１４／出力して印刷指示を行い）、３Ｄプリンタ３００がこれを受信する（ステップＳ６１５）。
【０１１８】
３Ｄプリンタ３００のＣＰＵ３０１は、受信した３Ｄモデルのファイルを用いて、当該３Ｄモデルの印刷処理を開始し（ステップＳ６１６）、３Ｄプリンタ３００の外部メモリ上に、印刷中の３Ｄモデルを示す被選択用オブジェクトのオブジェクトＩＤを、オブジェクトＩＤ８１１に有する印刷進捗情報８１０（図８）を作成し、進捗８１２に０（％）の値を挿入して記憶する（ステップＳ６１７）。以降、３Ｄプリンタ３００のＣＰＵ３０１は、当該３Ｄモデルの印刷進捗状況を監視し、定期的に、進捗８１２の値を更新する。
【０１１９】
ＰＣ２００のＣＰＵ２０１は、ステップＳ６１４で印刷指示をした（３Ｄモデルのファイルを送信した）被選択用オブジェクトのオブジェクトＩＤを用いて、ステップＳ６０３で選択が行われる直前の当該被選択用オブジェクトの座標８０４を外部メモリから読み出し、当該被選択用オブジェクトを、当該選択前の座標８０４に配置しなおす（ステップＳ６１８）。つまり、選択前の位置に、被選択用オブジェクトを戻す処理を行う。以上が図６の説明である。
次に図７を参照して、本発明の第１の実施形態における、ＭＲを用いた印刷状況の通知処理の流れについて説明する。
【０１２０】
ＰＣ２００のＣＰＵ２０１は、ステップＳ５０７で継続して取得している、ＨＭＤ１００の位置姿勢の情報と、ＰＣ２００の外部メモリに予め記憶されている、ＨＭＤ１００の画角（ＨＭＤ１００に搭載されているカメラで撮像可能な範囲）、オブジェクトの座標８０４の情報を用いて、ＨＭＤ１００の視野内（カメラ２２１又はカメラ２２２の画角）に、印刷中の被選択用オブジェクト（オブジェクトＩＤ８１１のオブジェクト）が存在するか判定する（ステップＳ７０１）。
【０１２１】
ＨＭＤ１００の視野内に印刷中の被選択用オブジェクトが存在しないと判定した場合（ステップＳ７０１でＮＯ）、処理を終了する。ＨＭＤ１００の視野内に印刷中の被選択用オブジェクトが存在すると判定した場合（ステップＳ７０１でＹＥＳ）、当該画角内に含まれる印刷中の被選択用オブジェクトの印刷進捗の情報（進捗８１２）の取得要求を、当該印刷中の被選択用オブジェクトを印刷している３Ｄプリンタに送信する（ステップＳ７０２）。当該印刷進捗の取得要求には、印刷進捗を要求する被選択用オブジェクトのオブジェクトＩＤが含まれているものとする。
【０１２２】
３Ｄプリンタ３００のＣＰＵ３０１は、印刷進捗状況の取得要求を受け付け（ステップ７０３）、当該取得要求に含まれるオブジェクトＩＤをオブジェクトＩＤ８１１に持つ印刷進捗情報８１０（オブジェクトＩＤ８１１及び進捗８１２の）をＰＣ２００に送信する（ステップＳ７０４）。
【０１２３】
ＰＣ２００のＣＰＵ２０１は、当該印刷進捗情報８１０を受信して（ステップＳ７０５／印刷状況取得手段／進捗情報取得手段）、印刷が完了しているか判定する（ステップＳ７０６）。つまり、進捗８１２＝１００％か判定する。
【０１２４】
印刷が完了していると判定した場合（ステップＳ７０６でＹＥＳ）、当該印刷が完了した被選択用オブジェクトを画角内（視野内）に収めていない、他のＨＭＤ（同一のＭＲ空間上で起動しているＨＭＤ）に対して、当該被選択用オブジェクトの印刷が完了した旨を通知する（ステップＳ７１１）。
【０１２５】
例えば、当該他のＨＭＤの位置姿勢の情報と、印刷が完了した被選択用オブジェクトの座標を用いて、印刷が完了した被選択用オブジェクトの方向を示す矢印のオブジェクトを生成して現実画像に重畳し（図９Ｄのような画像を生成し）、当該他のＨＭＤに表示させるべく送信する。
【０１２６】
ここでいう矢印のオブジェクトとは、印刷完了をユーザに通知する通知オブジェクトであり、図９Ｄの９５１のようなオブジェクトである。図９ＤはＨＭＤ１００のディスプレイに表示された重畳画像を示す。つまり、ユーザ（ＨＭＤ１００）の視界を示す。図９Ｄによれば、印刷が完了した被選択用オブジェクトは、ユーザの右方に存在する。
【０１２７】
当該印刷完了を示す通知オブジェクトは、矢印の形状に限るものではなく、例えば、図９Ｄのオブジェクト９５１のように、印刷完了を示す吹き出しのようなオブジェクトでもよい。図９Ｄにおいては、矢印の通知オブジェクト９５２と、吹き出しの通知オブジェクト９５２の両方を、ステップＳ７１１で生成して重畳画像を生成している。
【０１２８】
尚、当該通知オブジェクトは複数生成して重畳してもよいし、１つだけ生成して１つだけ重畳するようにしてもよい（矢印の通知オブジェクト９５２と、吹き出しの通知オブジェクト９５２いずれか一方を重畳するようにしてもよい）。
【０１２９】
当該矢印のオブジェクト９５１を生成して、ユーザに提示することで、ユーザから見ていずれの方向に、印刷が完了した被選択用オブジェクトが配置されているかを、ユーザに通知することができる。
【０１３０】
また、当該被選択用オブジェクトを画角内（視野内）に収めているＨＭＤ１００に対しては、当該印刷が完了した被選択用オブジェクトを点滅させる等、強調表示した重畳画像を生成して、印刷完了を通知すべく送信する。ＨＭＤ１００は当該重畳画像を受信して表示画面に表示する。
【０１３１】
ＰＣ２００のＣＰＵ２０１は、ＨＭＤ１００の画角内にある被選択用オブジェクトの印刷が完了していないと判定した場合（ステップＳ７０６でＮＯ）、当該ＨＭＤ１００と当該ＨＭＤ１００の画角内に存在する被選択用オブジェクトを印刷中である、３Ｄプリンタ（３Ｄプリンタオブジェクト）の間の距離が、所定の距離範囲内か判定する（ステップＳ７０７／第２の距離判定手段）。つまり、ユーザが３Ｄプリンタから所定以上離れているか、３Ｄプリンタの近くにいるかを判定する。
【０１３２】
ＨＭＤ１００と３Ｄプリンタの間の距離が所定範囲内である場合（ステップＳ７０７でＹＥＳ／ユーザが３Ｄプリンタから近い位置にいると判定した場合）、印刷中の被選択用オブジェクトの印刷進捗を示すオブジェクトを生成して（ステップＳ７０８）、当該被選択用オブジェクトの代わりにＭＲ空間上に配置し、ＨＭＤ１００から取得した現実画像に重ね合わせた重畳画像を生成する（ステップＳ７０９）。そして、当該重畳画像をＨＭＤ１００に送信する（ステップＳ７１０／印刷状況表示制御手段）
【０１３３】
ステップＳ７０８で生成するオブジェクトは、例えば、図９Ｃに示す、オブジェクト９３１や、オブジェクト９４１のようなオブジェクトである。例えばオブジェクト９３１の場合、進捗８１２＝２０％のため、当該印刷がされた２０％分を透過率０％とし、未印刷の８０％分を所定の透過率（例：透過率５０％）とした、当該印刷中の被選択用オブジェクトと同一形状のオブジェクトであるものとする。オブジェクト９３１とオブジェクト９４１は、印刷の進捗を通知する進捗通知オブジェクトである。尚、図９Ｃの９３０、９４０は、ＨＭＤ１００のディプレイに表示される重畳画像である。
【０１３４】
オブジェクト９３１、オブジェクト９４１のように、印刷中の被選択用オブジェクトの表示を変更する（印刷進捗を示す、印刷中の被選択用オブジェクトに置き換える）ことで、ユーザに、いずれの被選択用オブジェクトが印刷中かを通知することができる。
【０１３５】
また、当該印刷の進捗を、印刷中の被選択用オブジェクトと対応付けて、視覚的にユーザに確認させることができる。
【０１３６】
つまり、印刷中の被選択用オブジェクトの印刷状態をユーザに通知することができる。
【０１３７】
尚、進捗通知オブジェクトの態様・形状は、オブジェクト９３１、オブジェクト９４１の態様・形状に限るものではなく、印刷の進捗を示す情報（オブジェクト）を、印刷中のオブジェクトに紐付けて通知できればよい。
【０１３８】
例えば、ステップＳ７０８で進捗通知オブジェクト９３２、進捗通知オブジェクト９４２のようなオブジェクトを生成し、図９Ｃに示すように、印刷中のオブジェクトから所定の距離範囲内に、進捗のパーセンテージを示す吹き出しのようなオブジェクトを生成・配置し、重畳画像を生成して（ステップＳ７０９）ＨＭＤ１００に送信するようにしてもよい（ステップＳ７１０）。
【０１３９】
また、ステップＳ７０１でＨＭＤ１００の視界内に存在すると判定された被選択用オブジェクトを印刷中の３Ｄプリンタの３Ｄプリンタオブジェクト９１２が、ＨＭＤ１００の視界内に存在するかを、例えば、ステップＳ７０７とＳ７０８の間で判定し、視界内に当該３Ｄプリンタオブジェクト９１２が存在する場合、ステップＳ７０８で、前記通知オブジェクトとあわせて、図９Ｃの９３３に示す、いずれの３Ｄプリンタでいずれの被選択用オブジェクトが印刷中かを示す印刷通知オブジェクトを生成して、３Ｄプリンタオブジェクト９１２から所定の距離範囲内に配置するようにしてもよい。
【０１４０】
また、印刷中の被選択用オブジェクトを、印刷進捗のパーセンテージに応じて透過率０％で描画するようにしてもよい。つまり、オブジェクトそのものを置き換えるのではなく、ステップＳ７０８で、印刷中の被選択用オブジェクトを取得して、当該印刷の進捗８１２の割合（進捗分）に応じた当該被選択用オブジェクトの画像（ＨＭＤ１００の方向から見た画像）を生成して、ステップＳ７０９で重畳画像を生成するようにしてもよい。
【０１４１】
また、印刷中の被選択用オブジェクトの色を、印刷進捗のパーセンテージに応じて変更するようにしてもよい（進捗８１２＝２０％の場合、オブジェクトの２０％分の表面積部分の色を赤に変更して描画する等してもよい）。
【０１４２】
当該印刷通知オブジェクト９３３を表示することで、ユーザに、いずれのいずれの３Ｄプリンタでいずれの被選択用オブジェクトが印刷中かを通知することができる。つまり、被選択用オブジェクトの印刷状態を通知することができる。
【０１４３】
ＰＣ２００のＣＰＵ２０１は、印刷の進捗状況をＨＭＤ１００に通知すべく、ステップＳ７０９で生成した重畳画像（印刷された割合だけ透過率０％で描画された被選択用オブジェクトが写った重畳画像）を、ＨＭＤ１００で表示させるべく、ＨＭＤ１００に送信する（ステップＳ７１０／印刷状況表示制御手段）。
【０１４４】
尚、ＨＭＤ１００の画角内に存在する印刷中の被選択用オブジェクトが複数存在する場合は、ステップＳ７０１〜Ｓ７１１の処理を、当該印刷中の被選択用オブジェクト分実行して処理を終了する。以上が図７の説明である。
【０１４５】
ＭＲは、現実空間とＭＲ空間を合成して、より現実に近い空間をユーザに体感させるものと考えられ、そのため、ＭＲ空間上のオブジェクト（３Ｄモデル）は、極力現実に近しいものを作成・用意して配置し、ユーザに提示する。よって、オブジェクトの透明化（透明度の変更）や、図９Ｃの９３３等に示すような付加情報を示す、現実空間に存在しないようなオブジェクトは、普段は、空間上に配置・描画しないことが望まれる場合がある。
【０１４６】
図７では、ＨＭＤ１００（ユーザ）が３Ｄプリンタに近い位置にいる場合、３Ｄプリンタの操作部、パネル又は、造形ステージを除くことが出来る窓を通して、どのオブジェクトを印刷中で、どの程度の印刷進捗か、３Ｄプリンタで直接確認可能であるため、例えば、（図９Ｃの９３１、９４１のような）印刷中の被選択用オブジェクトの透明化（一部透明化したオブジェクトとの置き換え）は行わない。よって、ユーザに、オブジェクトの印刷状況を確認させつつ、より現実感のある空間を体感させることができる。
【０１４７】
また、不要な処理（オブジェクト９３１、オブジェクト９４１の作成処・描画の処理）を省略することができ、ＰＣ２００の処理負荷を軽減できる。
【０１４８】
以上説明したように、本発明の第１の実施形態によれば、ＭＲ空間上でオブジェクトの選択を行うことで、容易に、印刷装置にオブジェクトを印刷させる仕組みを提供することができる。
【０１４９】
また、印刷状態を示すオブジェクトを生成して、印刷中の被選択用オブジェクトと対応付けて配置し、重畳画像を生成して、ＨＭＤに送信することで、印刷中の被選択用オブジェクトの印刷状態を、視覚的にユーザに通知することができる。
【０１５０】
例えば、オブジェクト９３１、オブジェクト９４１のように、印刷中の被選択用オブジェクトの表示を変更する（印刷進捗を示す、印刷中の被選択用オブジェクトに置き換える）ことで、ユーザに、いずれの被選択用オブジェクトが印刷中かを通知することができる。
【０１５１】
また、例えば、矢印のオブジェクト９５１を生成して、ユーザに提示することで、ユーザから見ていずれの方向に、印刷が完了した被選択用オブジェクトが配置されているかを、ユーザに通知することができる。
【０１５２】
また、例えば、当該印刷通知オブジェクト９３３を表示することで、ユーザに、いずれのいずれの３Ｄプリンタでいずれの被選択用オブジェクトが印刷中かを通知することができる。
【０１５３】
以上が本発明の第１の実施形態の説明である。
【０１５４】
＜第２の実施形態＞
次に、本発明の第２の実施形態について説明する。
【０１５５】
第２の実施形態においては、第１の実施形態で説明した図５〜図９Ｄの内容・処理を実行するが、３Ｄプリンタオブジェクトと被選択用オブジェクトとが接触した場合に、被選択用オブジェクトが３Ｄプリンタで印刷可能なサイズでなかった場合（ステップＳ６１０でＮＯ）、当該被選択用オブジェクトのサイズ（モデルサイズ）を変更する処理（図１０のＳ１００１＝図１１）を行う点で、第１の実施形態と異なる。
【０１５６】
本発明の第２の実施形態では、３Ｄプリンタでのオブジェクトの印刷可否に応じて、ＭＲ空間上で、印刷対象のオブジェクトの状態を変更できる。
【０１５７】
以下、図１０〜図１２を参照して、本発明の第２の実施形態について説明する。
【０１５８】
まず図１０を参照して、本発明の第２の実施形態における、オブジェクトの印刷処理の流れについて説明する。
【０１５９】
ＰＣ２００のＣＰＵ２０１は、ステップＳ６０１〜Ｓ６１０の処理を実行する。詳細は第１の実施形態の説明で記載したため、ここでは説明を割愛する。
【０１６０】
ＰＣ２００のＣＰＵ２０１は、図６のステップＳ６１０において、被選択用オブジェクトが３Ｄプリンタで印刷可能なサイズでないと判定した場合（ステップＳ６１０でＮＯ）、当該被選択用オブジェクトのサイズ変更処理を行う（ステップＳ１００１）。
【０１６１】
ＰＣ２００のＣＰＵ２０１は、ステップＳ６１１〜Ｓ６１８の処理を実行する。詳細は第１の実施形態の説明で記載したため、ここでは説明を割愛する。以上が図１０の説明である。
【０１６２】
次に図１１を参照して、本発明の第２の実施形態における、オブジェクトのサイズ変更処理について説明する。
【０１６３】
ＰＣ２００のＣＰＵ２０１は、ステップＳ６０６で、３Ｄプリンタの印刷可能サイズより大きいと判定された被選択用オブジェクトの外形を覆うような、立方体（立方体オブジェクト）を生成し、当該立方体オブジェクトの各頂点に、サイズ変更用の小型の立方体（サイズ変更用オブジェクト）を生成する（ステップＳ１１０１／サイズ変更用オブジェクト生成手段）。
【０１６４】
立方体オブジェクトとは、図１２でいう立方体オブジェクト１２０２であり、立方体内部の被選択用オブジェクト９１１をユーザが閲覧可能なよう、半透明に描画される。つまり、ＰＣ２００のＣＰＵ２０１は、例えば、所定の透過率（例：透過率＝７０％）の立方体オブジェクトをステップＳ１１０１で作成する。
【０１６５】
当該立方体オブジェクト１２０２は、サイズ変更を行う被選択用オブジェクト９１１の中心位置１２０１（被選択用オブジェクト９１１の座標８０４）を位置情報（図８のオブジェクト情報８００でいう座標８０４）とするよう生成される。
【０１６６】
また、サイズ変更用オブジェクトとは、図１２でいうサイズ変更用オブジェクト１２０３である。サイズ変更用オブジェクト１２０３は、立方体オブジェクト１２０２の各頂点を位置情報として有する（図８のオブジェクト情報８００でいう座標８０４とする）、所定のサイズのオブジェクトである。
【０１６７】
図１２の１２００に示すように、ユーザは、選択デバイス１０５を移動・操作し、選択用オブジェクト９０３とサイズ変更用オブジェクト１２０３を接触させて、選択デバイス１０５を移動させることで、立方体オブジェクト１２０２内の被選択用オブジェクト９１１を拡大・縮小する。
【０１６８】
図１１の説明に戻る。ＰＣ２００のＣＰＵ２０１は、ステップＳ１１０１で生成した立方体オブジェクト１２０２、サイズ変更用オブジェクト１２０３を、ＭＲ空間上に配置して重畳画像を生成し、ＨＭＤ１００に送信する（ステップＳ１１０２／識別画像生成手段）。ここでは、立方体オブジェクト１２０２は、サイズ変更を行う被選択用オブジェクト９１１と同一の座標８０４に配置し、サイズ変更用オブジェクト１２０３は当該立方体オブジェクト１２０２の各頂点の座標に配置する。つまり、印刷が不可能である旨（印刷不可を示す判定結果）をＭＲ空間上で（ＨＭＤ１００のディスプレイに）識別表示し、ユーザに通知する（印刷可否識別表示手段）。
【０１６９】
ＰＣ２００のＣＰＵ２０１は、選択デバイス１０５から、第１ボタン９０１の押下指示を受け付けた旨の操作信号を受け付ける（ステップＳ１１０３）。
【０１７０】
ＰＣ２００のＣＰＵ２０１は、選択デバイス１０５の選択用オブジェクト９０３と、サイズ変更用オブジェクト１２０３とが接触しているか判定する（ステップＳ１１０４）。接触していないと判定した場合には（ステップＳ１１０４でＮＯ）、処理をステップＳ１１０４の前に戻す。
【０１７１】
選択用オブジェクト９０３と、サイズ変更用オブジェクト１２０３とが接触していると判定した場合（ステップＳ１１０４でＹＥＳ）、ＰＣ２００のＣＰＵ２０１は、選択デバイスか１０４の移動量の取得を開始する（ステップＳ１１０５）。ここでいう移動量は、ＭＲ空間上での選択デバイス１０５の位置（選択用オブジェクト９０３の座標８０４）の変化量を指す。また、ＰＣ２００のＣＰＵ２０１は、ステップＳ１１０４で、選択用オブジェクト９０３とサイズ変更用オブジェクト１２０３とが接触し、選択デバイス１０５の第１ボタン９０１が押下された時点（サイズ変更用オブジェクト１２０３が選択された時点）での、選択用オブジェクト９０３の座標８０４、サイズ８０５を外部メモリに記憶する。
【０１７２】
ＰＣ２００のＣＰＵ２０１は、選択デバイス１０５が移動され、選択用オブジェクト９０３が、被選択用オブジェクト９１１の座標８０４（中心位置）から離れたか、近付いたかを判定する（ステップＳ１１０６）。つまり、選択デバイス１０５で、サイズ変更用オブジェクトを選択し、空間上を移動させる処理（移動指示／移動処理）がされたか判定し、当該移動方向に基づいて、被選択用オブジェクト９１１の座標８０４（中心位置）から離れたか、近付いたかを判定する。
【０１７３】
具体的には、ＰＣ２００のＣＰＵ２０１は、外部メモリに記憶した、サイズ変更用オブジェクト１２０３が選択された時点での選択用オブジェクト９０３の座標８０４と被選択用オブジェクト９１１の座標８０４の間の距離と、現在の選択用オブジェクト９０３と被選択用オブジェクト９１１の座標８０４の間の距離とを比較する。そして、サイズ変更用オブジェクト１２０３選択時点における選択用オブジェクト９０３から被選択用オブジェクトまでの距離の方が大きい場合、選択用オブジェクト９０３が被選択用オブジェクト９１１に近付いたと判定する。また、サイズ変更用オブジェクト１２０３選択時点における選択用オブジェクト９０３から被選択用オブジェクトまでの距離の方が小さい場合、選択用オブジェクト９０３が被選択用オブジェクト９１１から離れたと判定する。
【０１７４】
ＰＣ２００のＣＰＵ２０１は、選択デバイス１０５が移動され、選択用オブジェクト９０３が、被選択用オブジェクト９１１の座標８０４から離れたと判定した場合、当該移動量に応じて被選択用オブジェクト９１１、及び立方体オブジェクト１２０２を拡大する（ステップＳ１１０７）。つまり、移動量に応じて変更されたサイズの情報を、被選択用オブジェクト９１１のサイズ８０５に上書して、被選択用オブジェクト９１１を拡大する。
【０１７５】
選択デバイス１０５が移動され、選択用オブジェクト９０３が、被選択用オブジェクト９１１の座標８０４に近付いたと判定した場合、当該移動量に応じて被選択用オブジェクト９１１、及び立方体オブジェクト１２０２を縮小する（ステップＳ１１１１）。つまり、移動量に応じて変更されたサイズの情報を、被選択用オブジェクト９１１のサイズ８０５に上書して、被選択用オブジェクト９１１を縮小する。
【０１７６】
当該移動量がどの程度の場合に、どの程度、各オブジェクトを縮小するかを示す情報は、予め、ＰＣ２００の外部メモリに記憶されているものとする（不図示）。
【０１７７】
ＰＣ２００のＣＰＵ２０１は、被選択用オブジェクト９１１の拡大・縮小後のサイズが、３Ｄプリンタ３００の印刷可能サイズ以下か判定する（ステップＳ１１１２）。つまり、被選択用オブジェクト９１１のサイズが印刷可能サイズになったか判定する。
【０１７８】
ＰＣ２００のＣＰＵ２０１は、被選択用オブジェクト９１１の拡大・縮小後のサイズが、３Ｄプリンタ３００の印刷可能サイズ以下でないと判定した場合（ステップＳ１１１２でＮＯ）、処理をステップＳ１１０８に移行する。
【０１７９】
被選択用オブジェクト９１１の拡大・縮小後のサイズが、３Ｄプリンタ３００の印刷可能サイズ以下であると判定した場合（ステップＳ１１１２でＹＥＳ）、被選択用オブジェクト９１１が印刷可能なサイズになったことを識別表示すべく、被選択用オブジェクトの全面の色を、所定の色に変更する（ステップＳ１１１３）。当該所定の色の情報は、予め、ＰＣ２００の外部メモリに記憶されているものとする。
【０１８０】
ＰＣ２００のＣＰＵ２０１は、選択デバイス１０５から操作信号を受け付け（ステップＳ１１０８）、当該操作信号が、第２ボタン９０２（図９Ａ）の押下指示を受け付けた旨の操作信号か判定する（ステップＳ１１０９）。第２の実施形態において、第２ボタン９０２（図９Ａ）は、サイズ変更用オブジェクト１２０３の選択の解除に用いられる。
【０１８１】
ＰＣ２００のＣＰＵ２０１は、選択デバイス１０５から操作信号を受け付け（ステップＳ１１０８）、当該操作信号が、第２ボタン９０２（図９Ａ）の押下指示を受け付けた旨の操作信号か判定する（ステップＳ１１０９）。第２の実施形態において、第２ボタン９０２（図９Ａ）は、サイズ変更用オブジェクト１２０３の選択の解除に用いられる。
【０１８２】
ＰＣ２００のＣＰＵ２０１は、受け付けた操作信号が、第２ボタン９０２（図９Ａ）の押下を示す信号でないと判定した場合（ステップＳ１１０８でＮＯ／例えば、第１ボタン９０１の押下等）、処理をステップＳ１１０５に戻す。
【０１８３】
受け付けた操作信号が、第２ボタン９０２（図９Ａ）の押下を示す信号であると判定した場合（ステップＳ１１０８でＹＥＳ）、当該第２ボタン９０２が押下された時点での、被選択用オブジェクト９１１のサイズを、当該被選択用オブジェクト９１１の印刷サイズとして決定し、外部メモリに、当該被選択用オブジェクト９１１のオブジェクトＩＤと対応付けて、当該印刷サイズの情報を記憶する（ステップＳ１１１０）。以上が図１１の説明である。
【０１８４】
ＰＣ２００のＣＰＵ２０１は、図１１の処理後、図１０のステップＳ６０８において、ステップＳ１１１０で決定・記憶した印刷サイズを取得して、ステップＳ６１０で、当該印刷サイズが、３Ｄプリンタ３００において印刷可能なサイズかを判定するものとする。
【０１８５】
また、図１０のステップＳ６１８においては、サイズ変更にあたって、図１１のステップＳ１１０４で記憶した、被選択用オブジェクト９１１が選択された時点でのサイズ８０５（サイズ変更前のサイズ）を取得して、被選択用オブジェクト９１１が選択された時点でのサイズ８０５の情報を、現在の被選択用オブジェクト９１１のサイズ８０５に上書して（つまり被選択用オブジェクトのサイズを、サイズ変更前の、元のサイズに戻して）、配置位置を戻す処理を行う。
【０１８６】
以上説明したように、本発明の第２の実施形態によれば、３Ｄプリンタでのオブジェクトの印刷可否に応じて、ＭＲ空間上で、印刷対象のオブジェクトの状態を変更できる。
【０１８７】
以上が本発明の第２の実施形態の説明である。
【０１８８】
＜第３の実施形態＞
次に、本発明の第３の実施形態について説明する。
【０１８９】
第３の実施形態においては、第１の実施形態で説明した図５〜図９Ｄの内容・処理を実行するが、ＨＭＤの利用及び印刷進捗の表示にユーザ情報を用いる点で、第１の実施形態と異なる。また、第３の実施形態においては、複数のＨＭＤ１００（ＨＭＤ１００を装着したユーザ）が、同一のＭＲ空間上に存在し、現実画像の撮像・重畳画像の表示を行っているものとする。
【０１９０】
本発明の第３の実施形態では、印刷指示を行ったユーザのＨＭＤに対して、当該ユーザが印刷指示をしたオブジェクトにかかる印刷状態を通知することができる。
【０１９１】
以下、図１３〜図１５を参照して、本発明の第３の実施形態について説明する。第３の実施形態において、各装置は、ＨＭＤ１００の台数分（ユーザの人数分）、各フローチャートの処理を実行する。
【０１９２】
ＰＣ２００のＣＰＵ２０１は、ステップＳ６０１〜Ｓ６１０の処理を実行する。詳細は第１の実施形態の説明で記載したため、ここでは説明を割愛する。
【０１９３】
まず図１３を参照して、本発明の第３の実施形態における、印刷者の特定処理の流れについて説明する。
【０１９４】
ＰＣ２００のＣＰＵ２０１は、ステップＳ６１０で、被選択用オブジェクトが３Ｄプリンタ３００で印刷可能なサイズであると判定した場合（ステップＳ６１０でＹＥＳ）、３Ｄプリンタ３００に接触した被選択用オブジェクト（印刷指示される３Ｄモデル）のオブジェクトＩＤと、当該被選択用オブジェクトの座標から所定範囲内に位置するＨＭＤの識別情報を取得して（ステップＳ１３０１）、当該当該被選択用オブジェクトの座標から所定範囲内に位置するＨＭＤの識別情報を、当該被選択用オブジェクトの印刷指示をした印刷者（ユーザ）の識別情報として、被選択用オブジェクトのオブジェクトＩＤと対応付けて記憶する（ステップＳ１３０２）。
【０１９５】
当該対応付けの情報は、例えば図１５に示す印刷者特定情報１５００のような情報であり、ＰＣ２００の外部メモリに生成・記憶される。また、当該所定範囲の情報は、所定範囲１５１０のような情報であり、予め、ＰＣ２００の外部メモリに記憶されているものとする。図１５によれば、所定範囲１５１０は、３Ｄプリンタオブジェクトと接触し、印刷指示された被選択用オブジェクトの中心位置からＸ＝１ｍ（横）、Ｙ＝１ｍ（奥行き）、Ｚ＝１ｍ（高さ）の範囲を示す。
【０１９６】
印刷者ＨＭＤ識別情報１５０１は、ユーザからの印刷指示がされた時点（ステップＳ６１０でＹＥＳと判定した時点）で、印刷指示された被選択用オブジェクト（印刷中オブジェクトＩＤ１５０２の示すオブジェクト）から、所定範囲１５１０内に存在したＨＭＤ１００の識別情報（ＩＤ）である。
【０１９７】
尚、ここでは、所定範囲１５１０内にあるＨＭＤ１００が複数存在した場合、印刷指示された被選択用オブジェクトから最も近い位置にあるＨＭＤ１００の識別情報を、印刷者ＨＭＤ識別情報１５０１に記憶するものとする。
【０１９８】
また、印刷中オブジェクトＩＤ１５０２の示すオブジェクトの印刷完了が通知された場合（ステップＳ７１１）、当該印刷完了通知がされた、印刷中オブジェクトＩＤ１５０２、印刷者ＨＭＤ識別情報１５０１は、印刷者特定情報１５００から削除されるものとする。
【０１９９】
ＰＣ２００のＣＰＵ２０１は、ステップＳ６１１〜Ｓ６１８の処理を実行する。詳細は第１の実施形態の説明で記載したため、ここでは説明を割愛する。以上が図１３の説明である。
【０２００】
次に図１４を参照して、本発明の第３の実施形態における、ＭＲを用いた印刷状況の通知処理の流れについて説明する。
【０２０１】
ＰＣ２００のＣＰＵ２０１は、ステップＳ７０１の処理を実行する。詳細は第１の実施形態の説明で記載したため、ここでは説明を割愛する。
【０２０２】
ＰＣ２００のＣＰＵ２０１は、ＨＭＤ１００の視界内にオブジェクトが存在すると判定した場合（ステップＳ７０１でＹＥＳ）、当該ＨＭＤ１００の識別情報をＨＭＤ１００から取得し、視界内にあると判定されたオブジェクトの識別情報（オブジェクトＩＤ８０１）を、外部メモリから取得する（ステップＳ１４０１）。
【０２０３】
ＰＣ２００のＣＰＵ２０１は、当該ＨＭＤ１００が印刷者となった、印刷中の被選択用オブジェクトが、ＨＭＤ１００の視界内に存在するか判定する（ステップＳ１４０２）。
【０２０４】
具体的には、ＰＣ２００のＣＰＵ２０１は、外部メモリに記憶されている印刷者特定情報１５００を参照し、ステップＳ１４０１で取得したＨＭＤ１００の識別情報を印刷者ＨＭＤ識別情報１５０１に有する印刷中オブジェクトＩＤ１５０２を取得して、当該視界内にあるオブジェクトのオブジェクトＩＤが、当該印刷中オブジェクトＩＤ１５０２と一致するか判定する。当該印刷中オブジェクトＩＤ１５０２と一致するオブジェクトＩＤの被選択用オブジェクト＝ＨＭＤ１００が印刷者となった、印刷中の被選択用オブジェクトである。
【０２０５】
ＰＣ２００のＣＰＵ２０１は、ステップＳ１４０１で識別情報を取得したＨＭＤ１００が印刷者となった、印刷中の被選択用オブジェクトが、ＨＭＤ１００の視界内に存在しないと判定した場合（ステップＳ１４０２でＮＯ）、処理を終了する。
【０２０６】
ステップＳ１４０１で識別情報を取得したＨＭＤ１００が印刷者となった、印刷中の被選択用オブジェクトが、ＨＭＤ１００の視界内に存在すると判定した場合（ステップＳ１４０２でＹＥＳ）、ステップＳ７０２〜Ｓ７１１の処理を実行する。詳細は第１の実施形態の説明で記載したため、ここでは説明を割愛する。
【０２０７】
ＰＣ２００のＣＰＵ２０１は、印刷中オブジェクトＩＤ１５０２の示すオブジェクトの印刷完了が通知された場合（ステップＳ７１１）、当該印刷完了通知がされた、印刷中オブジェクトＩＤ１５０２、印刷者ＨＭＤ識別情報１５０１は、印刷者特定情報１５００から削除する（ステップＳ１４０３）。
【０２０８】
以上説明したように、本発明の第３の実施形態によれば、印刷指示を行ったユーザのＨＭＤに対して、当該ユーザが印刷指示をしたオブジェクトにかかる印刷状態を通知することができる。
【０２０９】
＜第４の実施形態＞
次に、本発明の第４の実施形態について説明する。
【０２１０】
第４の実施形態においては、第１の実施形態で説明した図５〜図９Ｄの内容・処理を実行するが、図７のステップＳ７０７で、ＨＭＤと、印刷中の被選択用オブジェクトとの間の距離が所定距離以内か判定して、印刷進捗を示すオブジェクトの生成、重畳画像の生成、重畳画像の送信を行うか否かを決定する点で、第１の実施形態と異なる。
【０２１１】
本発明の第４の実施形態では、ユーザと印刷中のオブジェクトとの距離に応じて、オブジェクトの印刷状況を確認させつつ、より現実感のある空間を体感させることができる。
【０２１２】
ＭＲは、現実空間とＭＲ空間を合成して、より現実に近い空間をユーザに体感させるものと考えられる。そのため、ＭＲ空間上のオブジェクト（３Ｄモデル）は、極力現実に近しいものを作成・用意して配置し、ユーザに提示する。よって、オブジェクトの透明化（透明度の変更）や、図９Ｃの９３３等に示すような付加情報を示す、現実空間に存在しないようなオブジェクトは、特別な場合を除き、空間上に配置・描画しないことが望まれる場合がある。
【０２１３】
本発明の第４の実施形態においては、ユーザと印刷中のオブジェクトが所定以上接近した場合に、ユーザが、当該印刷中のオブジェクトの詳細を確認したいものと推測し、印刷進捗を示すオブジェクトを表示するよう制御するものとする。
【０２１４】
本発明の第４の実施形態において、ＰＣ２００のＣＰＵ２０１は、第１の実施形態で説明した図７のステップＳ７０１〜Ｓ７０６の処理を実行した後、図７のステップＳ７０７で、ＨＭＤ１００の座標と、ステップＳ７０１で視界内にあると判定された、印刷中の被選択用オブジェクトの座標８０４とを特定して、当該２つの座標の間の距離が所定距離以内か判定する。当該所定距離の情報は、予め、ＰＣ２００の外部メモリに記憶されているものとする。
【０２１５】
ＨＭＤ１００と印刷中の被選択用オブジェクトとが所定距離以内に存在すると判定した場合、処理をステップＳ７０８に移行して、第１の実施形態で説明したように、ステップＳ７０８〜Ｓ７１０の処理を行う。つまり、例えば、ユーザ（ＨＭＤ１００）から近い位置にある、印刷中の被選択用オブジェクト印刷進捗を示すオブジェクトを生成して、重畳画像を生成し、ＨＭＤ１００に送信する。
【０２１６】
ＨＭＤ１００と印刷中の被選択用オブジェクトとが所定距離以内にないと判定した場合、処理を終了する。
【０２１７】
以上説明したように、本発明の第４の実施形態によれば、ユーザと印刷中のオブジェクトとの距離に応じて、オブジェクトの印刷状況を確認させつつ、より現実感のある空間を体感させることができる。
【０２１８】
＜第５の実施形態＞
【０２１９】
次に図１６〜図２２を参照して、本発明の第５の実施形態について説明する。
【０２２０】
第５の実施形態においては、３Ｄプリンタやその他の装置に対してどのようにデータを送信するかを詳細に説明する。
【０２２１】
また、第５の実施形態においては、第１の実施形態でいう３Ｄプリンタに対応する３Ｄオブジェクトの他に、例えば他の３Ｄプリンタに対応する３Ｄプリンタオブジェクト、ファクシミリ装置Ａ（ＦＡＸ装置Ａ）に対応するＦＡＸ装置オブジェクトなど、ＭＲ空間上に、現実の装置に対応するオブジェクト（装置オブジェクト）が複数配置されているものとする。
【０２２２】
第５の実施形態によれば、所定距離内に接近したオブジェクトに対応する装置に、接近した他のオブジェクトの情報を適切に送信させることができる。
【０２２３】
図１６は、本発明の第５の実施形態における情報処理システムの構成の一例を示す図である。前述したように、第５の実施形態においては、第１の実施形態で記載した装置（３Ｄプリンタ３００）に加え、ＦＡＸ装置１６０１、プリンタ１６０２、データ送信装置１６０３等の装置がネットワークを介して情報処理装置と通信可能に接続されている。また、３Ｄプリンタは、３ＤプリンタＡと３ＤプリンタＢの２機種が接続されているものとする。
【０２２４】
３Ｄプリンタ３００、ＦＡＸ装置１６０１、プリンタ１６０２、データ送信装置１６０３は、３次元モデル（仮想オブジェクト／オブジェクト）の形状にかかるデータを造形処理、ＦＡＸ処理、印刷処理、送信処理するデータ処理装置である。
【０２２５】
図１７は、本発明の第５の実施形態における、複合機のハードウェア構成の一例を示す図である。図１７のハードウェア構成は、ＦＡＸ装置１６０１、プリンタ１６０２、データ送信装置１６０３に適用可能な構成の一例であり、各装置の機能を１つの装置に搭載したと複合機のハードウェア構成を示す。第５の実施形態の説明においては、ＦＡＸ装置１６０１、プリンタ１６０２、データ送信装置１６０３は別の筐体として説明するため、各装置は必ずしも図１７に示す全ての構成を備えていなければならないものではなく、ＣＰＵや記憶領域及び各装置の主たる機能（プリンタであれば印刷データの受信と印刷機能、ＦＡＸ装置であればＦＡＸデータの受信と印刷機能、データ送信装置であればデータの送受信機能など）が実現できる程度の構成を最低限備えていればよいものとする。
【０２２６】
図１７において、１７１６はコントローラユニットで、画像入力デバイスとして機能するスキャナ１７１４や、画像出力デバイスとして機能するプリンタ部１７１２と接続する一方、ＬＡＮ（例えば、図１６に示したＬＡＮ１０１）や公衆回線（ＷＡＮ）（例えば、ＰＳＴＮまたはＩＳＤＮ等）と接続することで、画像データやデバイス情報の入出力を行う。
【０２２７】
コントローラユニット１７１６において、１７０１はＣＰＵで、システム全体を制御するプロセッサである。１７０２はＲＡＭで、ＣＰＵ１７０１が動作するためのシステムワークメモリであり、プログラムを記録するためのプログラムメモリや、画像データを一時記録するための画像メモリでもある。
【０２２８】
１７０３はＲＯＭで、システムのブートプログラムや各種制御プログラムが格納されている。１７０４はハードディスクドライブ（ＨＤＤ）で、システムを制御するための各種プログラム，画像データ等を格納する。
【０２２９】
１７０７は操作部インタフェース（操作部Ｉ／Ｆ）で、操作部（キーボード）１７０８とのインタフェース部である。また、操作部Ｉ／Ｆ１７０７は、操作部１７０８から入力したキー情報（例えば、スタートボタンの押下）をＣＰＵ１７０１に伝える役割をする。
【０２３０】
１７０５はネットワークインタフェース（Ｎｅｔｗｏｒｋ  Ｉ／Ｆ）で、ネットワーク（ＬＡＮ）１０１に接続する。また、無線通信も可能な構成となっており、赤外線やＢｌｕｅｔｏｏｔｈ（登録商標）、Ｗｉ-Ｆｉ（登録商標）を用いた通信にて他の装置と接続する。データの入出力を行う。１７０６はモデム（ＭＯＤＥＭ）で、公衆回線に接続し、ＦＡＸの送受信等のデータの入出力を行う。
【０２３１】
１７１８は外部インタフェース（外部Ｉ／Ｆ）で、ＵＳＢ、ＩＥＥＥ１３９４，プリンタポート，ＲＳ−２３２Ｃ等の外部入力を受け付けるＩ／Ｆ部であり、本実施形態においては認証で必要となる携帯端末のＩＣカード（記憶媒体）の読み取り用のカードリーダ１７１９が外部Ｉ／Ｆ部１７１８に接続されている。そして、ＣＰＵ１７０１は、この外部Ｉ／Ｆ１７１８を介してカードリーダ１７１９による携帯端末のＩＣカードからの情報読み取りを制御し、該携帯端末のＩＣカードから読み取られた情報を取得可能である。以上のデバイスがシステムバス１７０９上に配置される。
【０２３２】
１７２０はイメージバスインタフェース（ＩＭＡＧＥ  ＢＵＳ  Ｉ／Ｆ）であり、システムバス１７０９と画像データを高速で転送する画像バス１７１５とを接続し、データ構造を変換するバスブリッジである。
画像バス１７１５は、ＰＣＩバスまたはＩＥＥＥ１３９４で構成される。画像バス１７１５上には以下のデバイスが配置される。
【０２３３】
１７１０はラスタイメージプロセッサ（ＲＩＰ）で、例えば、ＰＤＬコード等のベクトルデータをビットマップイメージに展開する。１７１１はプリンタインタフェース（プリンタＩ／Ｆ）で、プリンタ部１７１２とコントローラユニット１７１６を接続し、画像データの同期系／非同期系の変換を行う。また、１７１３はスキャナインタフェース（スキャナＩ／Ｆ）で、スキャナ１７１４とコントローラユニット１７１６を接続し、画像データの同期系／非同期系の変換を行う。
【０２３４】
１７１７は画像処理部で、入力画像データに対し補正、加工、編集を行ったり、プリント出力画像データに対して、プリンタの補正、解像度変換等を行う。また、これに加えて、画像処理部１７１７は、画像データの回転や、多値画像データに対してはＪＰＥＧ、２値画像データはＪＢＩＧ、ＭＭＲ、ＭＨ等の圧縮伸張処理を行う。
【０２３５】
スキャナ部１７１４は、原稿となる紙上の画像を照明し、ＣＣＤラインセンサで走査することで、ラスタイメージデータとして電気信号に変換する。原稿用紙は原稿フィーダのトレイにセットし、装置使用者が操作部１７０８から読み取り起動指示することにより、ＣＰＵ１７０１がスキャナ１７１４に指示を与え、フィーダは原稿用紙を１枚ずつフィードし原稿画像の読み取り動作を行う。
【０２３６】
プリンタ部１７１２は、ラスタイメージデータを用紙上の画像に変換する部分であり、その方式は感光体ドラムや感光体ベルトを用いた電子写真方式、微少ノズルアレイからインクを吐出して用紙上に直接画像を印字するインクジェット方式等があるが、どの方式でも構わない。プリント動作の起動は、ＣＰＵ１７０１からの指示によって開始する。なお、プリンタ部１７１２には、異なる用紙サイズまたは異なる用紙向きを選択できるように複数の給紙段を持ち、それに対応した用紙カセットがある。
【０２３７】
操作部１７０８は、ＬＣＤ表示部を有し、ＬＣＤ上にタッチパネルシートが貼られており、システムの操作画面を表示するとともに、表示してあるキーが押されるとその位置情報を操作部Ｉ／Ｆ１７０７を介してＣＰＵ１７０１に伝える。また、操作部１７０８は、各種操作キーとして、例えば、スタートキー、ストップキー、ＩＤキー、リセットキー等を備える。
【０２３８】
尚、表示部は複合機によって表示性能が異なり、タッチパネルを介して操作をできる複合機、単に液晶画面を備え文字列を表示（印刷状態や印刷している文書名の表示）させるだけの複合機によって本発明は構成されている。
【０２３９】
ここで、操作部１７０８のスタートキーは、原稿画像の読み取り動作を開始する時などに用いる。スタートキーの中央部には、緑と赤の２色ＬＥＤがあり、その色によってスタートキーが使える状態にあるかどうかを示す。また、操作部１７０８のストップキーは、稼働中の動作を止める働きをする。また、操作部１７０８のＩＤキーは、使用者のユーザＩＤを入力する時に用いる。リセットキーは、操作部からの設定を初期化する時に用いる。
【０２４０】
カードリーダ１７１９は、ＣＰＵ１７０１からの制御により、ＩＣカード（ＩＣチップとして携帯端末内に備えられていてもよい）に記憶されている情報を読み取り、該読み取った情報を外部Ｉ／Ｆ１７１８を介してＣＰＵ１７０１へ通知する。また、カードリーダ１７１９はＮＦＣの通信規格に対応しており、ＩＣカードや携帯端末のＩＣチップへの読み書きを行うことが可能な構成となっている（カードリーダ／ライタ）。なお、ＮＦＣ規格対応のカードリーダに、ＮＦＣ規格対応の携帯端末をかざすと、認証を行い、携帯端末と複合機とのペアリングを行う。そして、かざされた携帯端末と複合機で通信（Ｐ２Ｐ）を確立してデータの通信を行うことが可能である。その他、高速通信規格である、Ｂｌｕｅｔｏｏｔｈ（登録商標）やＷｉ-Ｆｉ（登録商標）に通信を引き継ぎ（ハンドオーバー）、携帯端末と複合機間で通信を行わせることも可能である。例えば、携帯端末をカードリーダにかざすことで、携帯端末に記憶されている画像を複合機へ送信することが可能となる。なお、ＮＦＣの通信規格の詳細は、従来技術であるため、説明を省略するものとする。
【０２４１】
上述した複合機では、複合機を制御するためのプラットフォームが存在し、このプラットフォーム上で、認証サーバと通信するための認証アプリケーションが動作している。認証アプリケーションはＨＤＤ１７０４に記憶されている。プラットフォームが管理する、ログイン時にユーザ情報を格納するログインコンテキストや、各種設定情報は、ＨＤＤ１７０４上に領域が確保されている。
【０２４２】
また、プラットフォーム上には、複合機の本体機能を拡張したアプリケーションがインストールされ、動作している。これらアプリケーションは、プラットフォームのＡＰＩを用いて実行される。
【０２４３】
このプラットフォームを介して、複合機の各機能を制御することが可能な構成となっている。
【０２４４】
また、複合機には、Ｗｅｂブラウザも記憶されており、Ｗｅｂシステムと連携することも可能である。この場合、Ｗｅｂアプリケーションサーバから受信した画面をＷｅｂブラウザを用いて表示する。Ｗｅｂブラウザ上で指示した命令は、Ｗｅｂアプリケーションサーバへ要求がなされ、Ｗｅｂアプリケーションサーバからの命令を受け付けることによって、複合機により動作（スキャンやプリント処理）を実行することが可能である。
【０２４５】
以上のような構成によって、複合機は、スキャナ１７１４から読み込んだ画像データをＬＡＮ１０１上に送信したり、ＬＡＮ１０１から受信した印刷データをプリンタ部１７１２により印刷出力することができる。
【０２４６】
また、スキャナ１７１４から読み込んだ画像データをモデム１７０６により、公衆回線上にＦＡＸ送信したり、公衆回線からＦＡＸ受信した画像データをプリンタ部１７１２により出力することできる。以上が図１７の説明である。
【０２４７】
図１８は、本発明の第５の実施形態における各種装置の機能構成の一例を示す図である。
【０２４８】
ＰＣ２００の、オブジェクト記憶部４２１は、オブジェクト（ＭＲ空間上に配置する３ＤＣＧモデル／仮想オブジェクトともいう）を記憶する記憶部である。例えば外部メモリに、図２２のオブジェクト情報２２００を記憶する。
【０２４９】
オブジェクト位置特定部４２２、重畳画像送信部４２３の動作は図４の説明で前述したため割愛する。
【０２５０】
距離判定部１８０１は、オブジェクト位置特定部４２２で特定した各オブジェクトの仮想空間上の位置の情報を用いて、選択されているオブジェクトと、データ処理装置に対応するオブジェクト（装置オブジェクト）との距離が所定距離内になったか判定する判定部である。例えば接触した場合は、２つのオブジェクトの距離が０になっているものとし、当該距離の値（０を示す値）が外部メモリに記憶されている閾値（所定距離・所定範囲の値）内になった場合に、選択されているオブジェクトと、データ処理装置に対応するオブジェクト（第１の実施形態でいう３Ｄプリンタオブジェクト／装置オブジェクト）との距離が所定距離内になったと判定する。距離判定部１８０１は図４でいう接触判定部４２４である。
【０２５１】
データ送信部１８０２は、後述する送信用データ生成部で送信先の装置用に生成・変換された、距離判定部１８０１で所定距離内になったと判定されたオブジェクトに対応する、例えばオブジェクトの形状にかかるデータを、当該オブジェクトと所定距離内にあると判定された装置オブジェクトに対応する装置を送信先として送信する送信部である。データ送信部１８０２は、図４でいうオブジェクト送信部４２５である。
【０２５２】
進捗情報受信部１８０３は、各データ処理装置より、データ送信部１８０２により送信されたデータの処理の進捗の情報を受信する受信部である。例えば造形の進捗、印刷の進捗、送信先への送信が何パーセント完了しているかを示す情報を受信する。進捗情報受信部１８０３は、図４でいう印刷進捗情報受信部４２６である。ＰＣ２００のＣＰＵ２０１は、例えば図２２の進捗情報２２１０に示すように、オブジェクトごとにどの装置でどの程度処理が完了したかを受信して外部メモリに記憶する。進捗情報２２１０は、各データ処理装置、ＰＣ２００の外部メモリにそれぞれ記憶されている。
【０２５３】
通知処理部４２７は、進捗情報受信部１８０３で受信した進捗の情報を、ＨＭＤ１００に送信して、ユーザに通知する。例えば、処理が完了している分（造形が完了しているパーセンテージ分）だけ、透過率０％で描画した、印刷中のオブジェクトを生成して現実画像に重畳し、ＨＭＤ１００のディスプレイに表示させるために、ＨＭＤ１００に送信する処理を行うことで、印刷状況をユーザに通知する。
【０２５４】
ドライバ記憶部１８０４は、各データ処理装置に対応するドライバソフトウェアを記憶する記憶部である。例えば図２２のドライバ一覧２２３０に示すように、各データ処理装置の機種に応じたドライバ（ドライバ名２２３１の示すドライバ）を記憶している。
【０２５５】
ドライバ特定部１８０５は、距離判定部１８０１で所定距離内にあると判定された装置オブジェクト（例えば３Ｄプリンタオブジェクト）が、どの種類の装置のどの機種に対応する装置オブジェクトかを特定し、当該機種に対して送信する送信用データを生成するドライバソフトウェアを特定する特定部である。
【０２５６】
送信用データ生成部１８０６は、ドライバ特定部１８０５で特定されたドライバを起動して、例えば３Ｄプリンタオブジェクトに近づいた被選択用オブジェクトを、当該３Ｄプリンタオブジェクトが対応する３Ｄプリンタの機種で造形可能な形式に変換する（生成する）。
【０２５７】
光学センサ１０４の、位置情報特定部４４１、位置情報送信部４４２、ＨＭＤ１００の、撮像処理部４１１、重畳画像受信部４１２、重畳画像表示部４１３については、図４の説明で前述したため説明を割愛する。
【０２５８】
各データ処理装置の、データ受信部１８３１は、ＰＣ２００のデータ送信部１８０２で送信されたデータを受信する受信部である。処理部１８３２は、当該データ受信部１８３１で受信したデータの処理（例えば３Ｄプリンタの場合は受け付けた３オブジェクトの形状にかかるデータの造形処理、プリンタの場合は受け付けた印刷データの印刷などである）を実行する。進捗情報送信部１８３３は、各種データ処理装置で処理途中または処理が完了したオブジェクトの進捗状況（処理完了のパーセンテージの情報）をＰＣ２００に送信する送信部である。以上が図１８の説明である。
【０２５９】
図１９〜図２２の説明に移る。ＰＣ２００のＣＰＵ２０１は、前述した実施形態同様、図５、図９Ａ〜図９Ｄで説明した内容・当該内容に基づく処理を実行する。また、図６の処理の代わりに図１９の処理（図１９の一部を説明する図２０のフローチャートの処理）を実行し、図７の処理の代わり図２１の処理を行う。つまり、図５のステップＳ５０９で図１９の処理を実行し、ステップＳ５１０で図２１の処理を実行する。第１の実施形態と共通処理については説明を割愛する。
【０２６０】
図１９を参照して、本発明の第５の実施形態における、装置に対するオブジェクトのデータ送信処理の流れについて説明する。図１９は、図２０でデータ生成処理（データ送信のための詳細な処理）を説明するために、図６のステップＳ６０８〜Ｓ６１８の処理を簡略化して記載した図である。
【０２６１】
図１９のステップＳ６０１〜Ｓ６０５の処理は図６の同ステップ番号の処理と同じであるため説明は割愛する。
【０２６２】
ステップＳ１９０１で、ＰＣ２００のＣＰＵ２０１は、装置オブジェクト（例えば３Ｄプリンタオブジェクト）と、ステップ６０４で表示位置を変更している、選択中の被選択用オブジェクトが所定距離内にあるか判定する（ステップＳ１６０１）。当該所定距離の情報は例えば図２２の所定距離２２４０に示すような情報であり、予めＰＣ２００の外部メモリに記憶されているものとする。（図２２の各テーブルの情報はＰＣ２００の外部メモリに記憶されている。）例えば、第１の実施形態で説明したように２つのオブジェクトが接触している場合は、２つのオブジェクトの距離は０以下であるため、所定距離２２４０内であると判定する。
【０２６３】
尚、ここでいう装置オブジェクトとは、図２２の属性２２０３に所定の値を持つオブジェクト（例えば上述した実施形態における３Ｄプリンタオブジェクト）である。図２２では、例えば、属性２２０３に３Ｄプリンタ、ＦＡＸ装置、データ送信装置、プリンタの属性を持つオブジェクトを装置オブジェクトとする。
【０２６４】
なお、２２０１〜２２０２、２２０４〜２２０７の説明はそれぞれ図８の８０１〜８０２、８０４〜８０７の説明と同じであるため説明は割愛する。送信先２２０８は、装置オブジェクトに対応する送信先の情報である。例えばＦＡＸ装置に対応する装置オブジェクトには、当該装置オブジェクトに近づいた（所定距離内の）被選択用オブジェクトの画像をＦＡＸ送信する送信先が対応付けて記憶されている。また、例えばデータ送信装置に対応する装置オブジェクトには、当該装置オブジェクトに近づいた被選択用オブジェクトのデータを送信して格納する先のＵＲＩ（ＵＲＬ）の情報が送信先として記憶されている。処理可能な装置１８０９は、当該オブジェクトを処理可能な（処理を許可する）装置の識別情報である。
【０２６５】
ステップＳ１９０１で、ＰＣ２００のＣＰＵ２０１は、装置オブジェクトの座標２２０４と、選択中フラグ２２０７＝１の選択中の被選択用オブジェクトの座標２２０４が、所定距離２２４０に示す距離以内にあるか判定する。
【０２６６】
装置オブジェクトと選択中の被選択用オブジェクトが所定距離内にないと判定した場合（ステップＳ１９０１でＮＯ）、処理をステップＳ１９０１の前に戻す。装置オブジェクトと選択中の被選択用オブジェクトが所定距離内にあると判定した場合（ステップＳ１９０１でＹＥＳ）、ＰＣ２００のＣＰＵ２０１は、選択中の被選択用オブジェクトの移動を終了し（ステップＳ６０７）、移動を終了した被選択用オブジェクトのファイルパス２２０６を取得して（ステップＳ６１１）、当該ファイルパスの示す記憶領域からオブジェクト名２２０２のファイル（当該オブジェクトの形状にかかるファイル）を取得する（ステップＳ６１３）。その後、処理をステップＳ１９０２に移行して、選択中の被選択用オブジェクトと所定距離まで近付いた装置オブジェクトの装置に送信するデータの生成処理を行う（ステップＳ１９０２）。当該データの生成処理とは、３次元モデルのデータ（オブジェクトの形状にかかるデータ）を、例えば３Ｄプリンタ等のデータ処理装置で造形可能なように、３Ｄプリンタのドライバで変換する処理である。当該データ生成処理の詳細については図２０の説明で後述する。
【０２６７】
図２０を参照して、本発明の第５の実施形態における、装置に対して送信するデータ生成処理の流れについて説明する。
【０２６８】
ＰＣ２００のＣＰＵ２０１は、図１９のステップＳ１９０１で所定距離内にあると判定された被選択用オブジェクトの、処理可能な装置２２０９（図２２）の値を取得する（ステップＳ２００１）。また、図１９のステップＳ１９０１で所定距離内にあると判定された装置オブジェクトのオブジェクトＩＤ２２０１を特定し（ステップＳ２００２）、当該オブジェクトＩＤ２２０１に対応する属性２２０３を取得する（ステップＳ２００３）。
【０２６９】
ＰＣ２００のＣＰＵ２０１は、ステップＳ２００３で取得した属性が３Ｄプリンタを示すか判定する（ステップＳ２００４）。つまり、図１９のステップＳ１９０１で所定距離内にあると判定された装置オブジェクトが３Ｄプリンタに対応するオブジェクトか判定する。
【０２７０】
取得した属性が３Ｄプリンタを示す場合（ステップＳ２００４でＹＥＳ）、所定距離内にあると判定された当該被選択用オブジェクトについて、３Ｄプリンタでの造形処理が可能か（許可されているか）判定する（ステップＳ２００５／処理可否判定手段）。具体的には、ステップＳ２００１で取得した処理可能な装置２２０９に３Ｄプリンタが含まれているか判定する。含まれている場合は処理が可能と判定し、含まれていない場合は処理ができない（不許可）と判定する。
【０２７１】
処理が可能でないと判定された場合（ステップＳ２００５でＮＯ）、ステップＳ２０２２に移行して、エラーを示す仮想オブジェクト（エラーオブジェクト／例えば図２４の２４１１）を生成して（識別画像生成手段）、当該処理が不可能であると判定された装置オブジェクトの近傍の仮想空間中の位置に、図２４の２４１０に示すように、当該エラーオブジェクトを配置する。ＨＭＤ１００のカメラが当該エラーオブジェクトの位置を撮影する方向を向いている場合は、図５のステップＳ５０８で当該エラーオブジェクトを含むＭＲ画像を生成し、ＨＭＤ１００に送信する。
【０２７２】
ステップＳ２００５で処理が可能であると判定された場合（ステップＳ２００５でＹＥＳ）、ＰＣ２００のＣＰＵ２０１は、当該装置オブジェクト（３Ｄプリンタオブジェクト）に対応する装置の機種を、装置特定情報２２２０を取得して参照し、特定する。オブジェクトの識別情報はオブジェクトＩＤ２２２１に示し、機種の情報は機種名２２２３に示す。オブジェクトＩＤ２２２１及び装置識別情報２２２２は、図８の８２１、８２２と同じであるため説明は割愛する。ＰＣ２００のＣＰＵ２０１は、図２２のドライバ一覧２２３０（ＰＣ２００にインストールされているドライバソフトウェアの一覧）から当該３Ｄプリンタの機種名２２２３を対応機種２２３２に持つドライバを特定して起動し（ステップＳ２００６）、図１９のステップＳ１９０１で装置オブジェクトから所定距離内にあると判定された被選択用オブジェクトを当該３Ｄプリンタで造形可能なように、当該被選択用オブジェクト（オブジェクトの形状にかかるデータ／図２２のファイルパス２２０６に保存されているデータ）を当該ドライバの機能を用いて変換する（ステップＳ２００７）。つまり、データ処理装置で処理が可能なオブジェクトのデータを生成する。
【０２７３】
ステップＳ２００３で取得された属性が３Ｄプリンタを示さない場合（ステップＳ２００４でＮＯ）、ステップＳ２００３で取得された属性がプリンタ（例えば複合機／２Ｄプリンタ）を示すか判定する（ステップＳ２００８）。
【０２７４】
ステップＳ２００３で取得された属性がプリンタを示す場合（ステップＳ２００８でＹＥＳ）、所定距離内にあると判定された当該被選択用オブジェクトについて、プリンタでの印刷処理が可能か（許可されているか）判定する（ステップＳ２００９／処理可否判定手段）。具体的には、ステップＳ２００１で取得した処理可能な装置２２０９にプリンタ（印刷装置）が含まれているか判定する。含まれている場合は処理可能と判定し、含まれていない場合は処理ができない（不許可）と判定する。
【０２７５】
処理が可能でないと判定された場合（ステップＳ２００９でＮＯ）、処理をステップＳ２０２２に移行する。処理が可能であると判定された場合（ステップＳ２００９でＹＥＳ）、当該被選択用オブジェクトに対応する画像を取得する（ステップＳ２０１０）。例えば、当該被選択用オブジェクトに対応付けられて当該被選択用オブジェクトの２次元図面の画像データが外部メモリに予め記憶されており、ステップＳ２０１０において当該２次元図面の画像データを取得するものとする。
【０２７６】
ＰＣ２００のＣＰＵ２０１は、当該装置オブジェクト（プリンタに対応する装置オブジェクトであるプリンタオブジェクト）に対応するプリンタの機種を、装置特定情報２２２０を取得して参照し、特定する。そして当該機種に対応するドライバを図２２のドライバ一覧２２３０の対応機種２２３２と機種名２２２３から特定して起動する（ステップＳ２０１１）。
【０２７７】
そして、ステップＳ１９０１で当該プリンタオブジェクトから所定距離内にあると判定された被選択用オブジェクトの画像データを当該プリンタオブジェクトの示すプリンタで印刷可能なように、当該画像データを当該ドライバの機能を用いて変換する（ステップＳ２０１２）。つまり、データ処理装置で処理が可能なオブジェクトのデータ（ここでは印刷データ）を生成する。
【０２７８】
ステップＳ２００３で取得された属性がプリンタを示さない場合（ステップＳ２００８でＮＯ）、ステップＳ２００３で取得された属性がＦＡＸ装置を示すか判定する（ステップＳ２０１３）。
【０２７９】
ステップＳ２００３で取得された属性がＦＡＸ装置を示す場合（ステップＳ２０１３でＹＥＳ）、所定距離内にあると判定された当該被選択用オブジェクトについて、ＦＡＸ装置でのＦＡＸ送信処理が可能か（許可されているか）判定する（ステップＳ２０１４／処理可否判定手段）。具体的には、ステップＳ２００１で取得した処理可能な装置２２０９にＦＡＸ装置を示す値が含まれているか判定する。含まれている場合は処理可能と判定し、含まれていない場合は処理ができない（不許可）と判定する。
【０２８０】
処理が可能でないと判定された場合（ステップＳ２０１４でＮＯ）、処理をステップＳ２０２２に移行する。処理が可能であると判定された場合（ステップＳ２０１４でＹＥＳ）、例えばステップＳ２０１０で説明したように、装置オブジェクト（ＦＡＸ装置の装置オブジェクトであるＦＡＸ装置オブジェクト）から所定距離内にあると判定された被選択用オブジェクトの画像データを取得する（ステップＳ２０１５）。
【０２８１】
ＰＣ２００のＣＰＵ２０１は、当該ＦＡＸ装置オブジェクトに対応するＦＡＸ装置の機種を装置特定情報２２２０を取得して参照し、特定する。そして当該機種に対応するＦＡＸドライバを図２２のドライバ一覧２２３０の対応機種２２３２と、機種名２２２３から特定して起動する（ステップＳ２０１６）。
【０２８２】
そして、ステップＳ１９０１で当該ＦＡＸ装置オブジェクトから所定距離内にあると判定された被選択用オブジェクトの画像データを当該ＦＡＸ装置オブジェクトの示すＦＡＸ装置でＦＡＸ送信可能なように、当該画像データを当該ＦＡＸドライバの機能を用いて変換する（ステップＳ２０１７）。つまり、データ処理装置で処理が可能なオブジェクトのデータを生成する。また、当該ＦＡＸ装置オブジェクトに対応する送信先２２０８を取得する（ステップＳ２０１８）。
【０２８３】
ステップＳ２００３で取得された属性がＦＡＸ装置を示さない場合（ステップＳ２０１３でＮＯ）、ステップＳ２００３で取得された属性がデータ送信装置を示すか判定する（ステップＳ２０１９）。データ送信装置を示す場合は（ステップＳ２０１９でＹＥＳ）、所定距離内にあると判定された当該被選択用オブジェクトについて、データ送信装置によるデータの送信処理が可能か（許可されているか）判定する（ステップＳ２０２０／処理可否判定手段）。具体的には、ステップＳ２００１で取得した処理可能な装置２２０９にデータ送信装置を示す値が含まれているか判定する。含まれている場合は処理可能と判定し、含まれていない場合は処理ができない（不許可）と判定する。
【０２８４】
処理が可能でないと判定された場合（ステップＳ２０２０でＮＯ）、処理をステップＳ２０２２に移行する。処理が可能であると判定された場合（ステップＳ２０２０でＹＥＳ）、当該データ送信装置の装置オブジェクト（データ送信装置オブジェクト）のに対応する識別情報（図２２の装置識別情報２２２２）、装置オブジェクトに対応する送信先２２０８を取得する（ステップＳ２０２１）。以上が図２０の説明である。
【０２８５】
図１９の説明に戻る。ＰＣ２００のＣＰＵ２０１は、被選択用オブジェクトのデータを、当該被選択用オブジェクトから所定距離内にあると判定された装置オブジェクトの示すデータ処理装置に送信する（ステップＳ１９０３）。
【０２８６】
具体的には、例えば、ステップＳ２００７で３Ｄプリンタのドライバの機能を用いて生成したオブジェクトの形状にかかるデータを、ステップＳ２００６で取得した装置特定情報２２２０における当該３Ｄプリンタの装置識別情報２２２２を送信先として、造形処理の開始指示とあわせて送信する。そして、進捗情報２２１０の２２１１に当該送信したデータに対応するオブジェクトのＩＤを書き込み、機種名２２１３に送信先の装置の機種名を書き込んで記憶する。また、当該データを受信した３ＤプリンタのＣＰＵは、自装置の外部メモリに当該受信したデータを記憶し、進捗情報２２１０を生成し、オブジェクトＩＤ２２１１に受信したオブジェクトのＩＤを進捗２２１２に処理進捗のパーセンテージを書き込む。進捗２２１２には最初は０％を書き込み、外部メモリに記憶したオブジェクトのデータを読み出してオブジェクトの立体形状の造形処理（出力）を行い、当該処理が進むにつれて処理が完了したパーセンテージの値を進捗２２１２に書き込む。
【０２８７】
また、例えば、ステップＳ２０１２でプリンタドライバの機能を用いて生成した印刷データを、ステップＳ２００１で取得した装置特定情報２２２０における当該プリンタの装置識別情報２２２２を送信先として、印刷処理の開始指示とあわせて送信する。そして、進捗情報２２１０の２２１１に当該送信したデータに対応するオブジェクトのＩＤを書き込み、機種名２２１３に送信先の装置の機種名を書き込んで記憶する。また、当該データを受信したプリンタのＣＰＵは、自装置の外部メモリに当該受信したデータを記憶し、進捗情報２２１０を生成し、オブジェクトＩＤ２２１１に受信したオブジェクトのＩＤを進捗２２１２に処理進捗のパーセンテージを書き込む。進捗２２１２には最初は０％を書き込み、外部メモリに記憶したオブジェクトのデータを読み出して印刷処理（出力）し、当該処理が進むにつれて処理が完了したパーセンテージの値を進捗２２１２に書き込む。
【０２８８】
また、例えば、ステップＳ２０１７でＦＡＸドライバの機能を用いて生成したＦＡＸデータを、ステップＳ２００１で取得した装置特定情報２２２０における当該ＦＡＸ装置の装置識別情報２２２２を送信先として、ステップＳ２０１８で取得した送信先及び当該送信先に対するＦＡＸ処理の開始指示とあわせて送信する。そして、進捗情報２２１０の２２１１に当該送信したデータに対応するオブジェクトのＩＤを書き込み、機種名２２１３に送信先の装置の機種名を書き込んで記憶する。また、当該データを受信したＦＡＸ装置のＣＰＵは、自装置の外部メモリに当該受信したデータを記憶し、進捗情報２２１０を生成し、オブジェクトＩＤ２２１１に受信したオブジェクトのＩＤを進捗２２１２に処理進捗のパーセンテージを書き込む。進捗２２１２には最初は０％を書き込み、外部メモリに記憶したオブジェクトのデータを読み出して、ＰＣ２００から受信した（ステップＳ２０１８で取得された）送信先に対してＦＡＸ送信処理（出力）し、当該処理が進むにつれて送信処理が完了したパーセンテージの値を進捗２２１２に書き込む。
【０２８９】
また、例えば、図１９のステップＳ６１３で取得した被選択用オブジェクトの形状にかかるデータを、ステップＳ２００１で取得した装置特定情報２２２０における当該データ送信装置の装置識別情報２２２２を送信先として、ステップＳ２０２１で取得した送信先及び当該送信先に対するデータ送信処理の開始指示とあわせて送信する。そして、進捗情報２２１０の２２１１に当該送信したデータに対応するオブジェクトのＩＤを書き込み、機種名２２１３に送信先の装置の機種名を書き込んで記憶する。また、当該データを受信したデータ送信装置のＣＰＵは、自装置の外部メモリに当該受信したデータを記憶し、進捗情報２２１０を生成し、オブジェクトＩＤ２２１１に受信したオブジェクトのＩＤを進捗２２１２に処理進捗のパーセンテージを書き込む。進捗２２１２には最初は０％を書き込み、外部メモリに記憶したオブジェクトのデータを読み出して、ＰＣ２００から受信した（ステップＳ２０２１で取得された）送信先の当該データのＵＲＩへの送信・格納処理（出力）を行い、当該処理が進むにつれて処理が完了したパーセンテージの値を進捗２２１２に書き込む。
【０２９０】
ＰＣ２００のＣＰＵ２０１は、処理をステップＳ６１８に移行し、ステップＳ６０３で選択が行われる直前の当該被選択用オブジェクトの座標２２０４を外部メモリから読み出し、当該被選択用オブジェクトを、当該選択前の座標２２０４に配置しなおす（ステップＳ６１８）。つまり、選択前の位置に、被選択用オブジェクトを戻す処理を行う。以上が図１９の説明である。
【０２９１】
次に図２１を参照して、本発明の第５の実施形態における、ＭＲを用いた処理状況の通知処理の流れについて説明する。
【０２９２】
図２１の処理の流れは、基本的には第１の実施形態における図７と同じである。
【０２９３】
ＰＣ２００のＣＰＵ２０１は、ステップＳ５０７で継続して取得している、ＨＭＤ１００の位置姿勢の情報と、ＰＣ２００の外部メモリに予め記憶されている、ＨＭＤ１００の画角（ＨＭＤ１００に搭載されているカメラで撮像可能な範囲）、オブジェクトの座標８０４の情報を用いて、ＨＭＤ１００の視野内（カメラ２２１又はカメラ２２２の画角）に、データ処理装置で処理中の被選択用オブジェクト（オブジェクトＩＤ２２１１の示すオブジェクト＝データ処理装置にデータを送信済みのオブジェクト）が存在するか判定する（ステップＳ２１０１）。
【０２９４】
ＨＭＤ１００の視野内に処理中の被選択用オブジェクトが存在しないと判定した場合（ステップＳ２１０１でＮＯ）処理を終了する。ＨＭＤ１００の視野内に処理中の被選択用オブジェクトが存在すると判定した場合（ステップＳ２１０１でＹＥＳ）、当該オブジェクトの処理をしている装置（機種名２２１３の示す装置）を特定し（ステップＳ２１１２）、当該画角内に含まれる処理中の被選択用オブジェクトの処理進捗の情報（進捗２２１２に記憶する情報）の取得要求を、当該特定した装置に送信する（ステップＳ２１０２）。進捗情報の取得要求には、処理進捗を要求する被選択用オブジェクトのオブジェクトＩＤ２２１１の値が含まれているものとする。
【０２９５】
データ処理装置（本実施形態においては、３Ｄプリンタ、プリンタ、ＦＡＸ装置、データ送信装置のいずれか）のＣＰＵは、進捗情報の取得要求を受け付け（ステップ２００３）、当該取得要求に含まれるオブジェクトＩＤに対応する値を進捗情報２２１０のオブジェクトＩＤ２２１１に持つ、自装置の外部メモリに記憶された進捗情報２２１０（オブジェクトＩＤ２２１１及び進捗２２１２の）をＰＣ２００に送信する（ステップＳ２１０４）。
【０２９６】
ＰＣ２００のＣＰＵ２０１は、当該進捗情報２２１０を受信して（ステップＳ２１０５／進捗情報取得手段）、処理が完了しているか判定する（ステップＳ２１０６）。つまり、進捗２２１２＝１００％か判定する。
【０２９７】
処理が完了していると判定した場合（ステップＳ２１０６でＹＥＳ）、当該処理が完了した旨を各ＨＭＤ１００に通知する（ステップＳ２１１１）。通知の方法は図７のステップＳ７１１の説明で上述したとおりである。
【０２９８】
ＰＣ２００のＣＰＵ２０１は、ＨＭＤ１００の画角内にある被選択用オブジェクトの処理が完了していないと判定した場合（ステップＳ２１０６でＮＯ）、当該ＨＭＤ１００と、当該ＨＭＤ１００の画角内に存在する被選択用オブジェクトのデータを処理中であるデータ処理装置との間の距離が所定の距離範囲内か判定する（ステップＳ２１０７）。つまり、ユーザがデータ処理装置から所定以上離れているか、データ処理装置の近くにいるかを判定する。
【０２９９】
ＨＭＤ１００とデータ処理装置の間の距離が所定範囲内である場合（ステップＳ２１０７でＹＥＳ／ユーザがデータ処理装置から近い位置にいると判定した場合）、処理中の被選択用オブジェクトの処理進捗を示すオブジェクトを生成して（ステップＳ２１０８）、当該被選択用オブジェクトの代わりにＭＲ空間上に（当該被選択用オブジェクトの仮想空間上の位置／座標２２０４の位置に）配置し、ＨＭＤ１００から取得した現実画像に重ね合わせた重畳画像を生成する（ステップＳ２１０９）。そして、当該重畳画像をＨＭＤ１００に送信する（ステップＳ２１１０）
【０３００】
ステップＳ２１１０で生成するオブジェクトは、例えば、図９Ｃに示す、オブジェクト９３１や、オブジェクト９４１のようなオブジェクトであり、その説明は図７のステップＳ７１０の説明で上述した通りである。
【０３０１】
当該進捗を示すオブジェクトの生成・表示により、処理中の被選択用オブジェクトの処理進捗をユーザに通知することができる。
【０３０２】
尚、進捗通知オブジェクトの態様・形状は、オブジェクト９３１、オブジェクト９４１の態様・形状に限るものではなく、進捗を示す情報（オブジェクト）を、印刷中のオブジェクトに紐付けて通知できればよい。例えば、上述したように、進捗のパーセンテージを示す吹き出しのようなオブジェクトを生成・配置し、重畳画像を生成してＨＭＤ１００に送信するようにしてもよいし、進捗のパーセンテージに応じた色の情報を記憶しておき、当該パーセンテージに応じた色で処理中の被選択用オブジェクトを描画・重畳するようにしてもよい。
【０３０３】
ＰＣ２００のＣＰＵ２０１は、進捗状況をＨＭＤ１００に通知すべく、ステップＳ２１０９で生成した重畳画像（例えば、処理がされた割合だけ透過率０％で描画された被選択用オブジェクトが写った重畳画像）を、ＨＭＤ１００で表示させるべく、ＨＭＤ１００に送信する（ステップＳ２１１０）。
【０３０４】
尚、ＨＭＤ１００の画角内に存在する処理中の被選択用オブジェクトが複数存在する場合は、ステップＳ２１０１〜Ｓ２１１１の処理を、当該処理中の被選択用オブジェクト分実行して処理を終了する。以上が図２１の説明である。
【０３０５】
以上説明したように、本発明の第５の実施形態によれば、所定距離内に接近したオブジェクトに対応する装置に、接近した他のオブジェクトの情報を適切に送信させることができる。
【０３０６】
具体的には、所定距離まで接近したオブジェクトの装置で処理可能な形式に、送信するデータを変換して送信することができる。よって、当該データを受信した装置において、当該データ適切に処理可能となる。
【０３０７】
つまり、本発明によれば、仮想空間で選択されるオブジェクトにかかるデータを他のオブジェクトに対応する装置に容易に送信可能な仕組みを提供することができる。
【０３０８】
尚、上述した第５の実施形態の説明においては１つの装置オブジェクトに対して１つの送信先の情報が対応付けて記憶されている例を記載したが、例えば１つの装置オブジェクトに対して複数の送信先の情報を対応付けて記憶するようにし、ＰＣ２００のＣＰＵ２０１が当該複数の送信先を読み込んでユーザに選択させて、ユーザから選択された送信先をステップＳ２０１８またはステップＳ２０２１で取得するようにしてもよい。具体的には、例えばＦＡＸ装置の場合を例にあげて説明する。ＰＣ２００のＣＰＵ２０１は、ステップＳ２０１８で複数の送信先を取得した場合、図２３に示すようにＦＡＸ送信先選択オブジェクト２３１１を生成してＦＡＸ装置オブジェクトの近傍（装置オブジェクトの座標２２０４から所定距離はなれた座標／当該所定距離の値はＰＣ２００の外部メモリに予め記憶されているものとする）の仮想空間上に配置し、重畳画像を生成してＨＭＤ１００に送信する。当該ＦＡＸ送信先選択オブジェクト２３１１は、選択デバイス１０５のオブジェクト（オブジェクトの属性２２０３＝選択デバイスのオブジェクト）に接している状態で選択デバイス１０５で所定のボタンのクリック操作を受け付けることで選択可能な送信先２２０８に対応するオブジェクト２３１２（送信先オブジェクト）を複数並べたオブジェクトである。また、ＦＡＸ送信先選択オブジェクト２３１１上には「ＯＫ」ボタン、「キャンセル」ボタンのオブジェクトが配置されている。ＰＣ２００のＣＰＵ２０１は、送信先オブジェクトを選択する操作を受け付けた場合に選択中であることが分かるように選択中の送信先オブジェクトの色を変更し、「ＯＫ」ボタンのオブジェクトの押下指示を受け付けることで、選択中の送信先オブジェクトの示す送信先を、選択中の被選択用オブジェクトのデータをＦＡＸ送信する送信先としてステップＳ２０１８で取得したものと決定する。よって、複数の送信先を取得した場合においても、データ処理装置において、所望の送信先に対してデータを送信させることができる。
【０３０９】
尚、「キャンセル」ボタンが押されると、ＦＡＸ送信をキャンセルして処理を終了するものとする。
【０３１０】
また、例えば被選択用オブジェクトに対応する２次元図面等の画像データをデータ処理装置に送信する場合、図２４に示すような、送信するデータの確認用オブジェクト２４０１を生成して、２４００のようにデータ処理装置の装置オブジェクトの近傍（装置オブジェクトの座標２２０４から所定距離はなれた座標／当該所定距離の値はＰＣ２００の外部メモリに予め記憶されているものとする）に配置して、ＭＲ画像を生成、ＨＭＤ１００に送信して表示させるようにしてもよい。確認用オブジェクト２４０１上には、上述した送信先選択オブジェクト２３１１と同じように「ＯＫ」ボタン、「キャンセル」ボタンのオブジェクトが配置されている。また、実際にデータ処理装置に送信するデータを確認させるために、例えばデータ送信装置に送信する画像データ（例：２次元図面の画像）をテクスチャとして確認用オブジェクト２４０１上の所定の領域に貼り付けて、ユーザに当該画像を確認させるものである。ＰＣ２００のＣＰＵ２０１は、例えばステップＳ２０１０又はステップＳ２０１６の後、当該確認用オブジェクト２４０１の生成とＨＭＤへの送信処理を行い、「ＯＫ」ボタンの押下指示を受け付けた場合に処理をステップＳ２０１１、Ｓ２０１６にそれぞれ進めるものとする。当該確認用オブジェクト２４０１の生成、表示により、ユーザが選択したオブジェクトの形状自体とは異なるデータが装置に送信される場合であっても、当該送信するデータをユーザに確認させることできる。
【０３１１】
また、上述した実施形態においては、プリンタ又はＦＡＸ装置に送信するデータは、各装置から所定距離内に接近した被選択用オブジェクトの２次元図面のデータであるものとしたが、例えば当該被選択用オブジェクトの立体を展開した展開図（３次元モデル／オブジェクトの形状にかかるデータの１つ）を送信するようにしてもよい。例えば展開図をプリンタで印刷し、組み立てることで当該オブジェクトの形状を現実物体として再現可能である。当該展開図の作成方法は公知技術であり、例えば特開２０１０−８６２３７号公報等に記載されている方法を用いるものとする。
【０３１２】
また、上述した実施形態においては、プリンタ、ＦＡＸ装置、データ送信装置は別の装置であるものとして説明したが、例えばプリント機能、ＦＡＸ機能、データ送信機能を備える１つの装置（複合機）を用いるようにしてもよい。複合機の場合、例えば図２２のオブジェクト情報２２００において複数の装置オブジェクトの属性２２０３に「複合機」の値が記憶される。また、これらの装置オブジェクトのＩＤ（２２２１）に対応する装置識別情報２２２２、機種名２２２３は同一の複合機の値が記憶される。ステップＳ１９０３により送信された処理の開始指示及びデータを受信した複合機のＣＰＵは、受け付けた指示内容に応じて当該指示の示す処理を実行可能な自機機能（例えば、印刷機能、ＦＡＸ機能、データ送信機能のいずれか）を起動して、受信したデータの処理（例えば、印刷、ＦＡＸ送信、データ送信のいずれか）を実行するものである。
【０３１３】
また、上述した実施形態においては、３Ｄプリンタ、プリンタ、ＦＡＸ装置、データ送信装置を例にあげたが、装置オブジェクトに対応するデータ処理装置はこれに限るものではない。例えば大型のディスプレイを備え画像を表示する表示装置であってもよい。表示装置の場合、当該表示装置の装置オブジェクトとの距離が所定距離内であると判定された被選択用オブジェクトのデータを受信して記憶部に記憶し、自装置の備えるディスプレイに当該オブジェクトのデータを表示（出力）することができる。
【０３１４】
また、オブジェクト同士が接触している場合に、オブジェクトＩＤを接触している先のオブジェクトのオブジェクトＩＤと対応付けた接触情報（不図示）をＰＣ２００の外部メモリに記憶し、当該接触情報に基づいて、オブジェクト同士の接触の判定、オブジェクト同士が所定距離内にあるかの判定を行ってもよい。具体的には、例えば上述した第５の実施形態において、ステップＳ１９０１で外部メモリに記憶されている接触情報を取得して、選択中の被選択用オブジェクトが接触しているオブジェクトが装置オブジェクトである場合に、当該被選択用オブジェクトが装置オブジェクトと所定距離内にあるものと判定して、処理をステップＳ６０７に移行し、選択中の被選択用オブジェクトが他のオブジェクトに接触していない又は接触しているオブジェクトが装置オブジェクトでない場合に、当該被選択用オブジェクトが装置オブジェクトと所定距離内にないものと判定して、処理をステップＳ１９０１の前に戻すようにしてもよい。
【０３１５】
また、第５の実施形態と第２の実施形態を組み合わせてもよい。
【０３１６】
具体的には、図１０のステップＳ６０８〜Ｓ６１０、ステップＳ１００１の処理を、図２０のステップＳ２００５で処理可能と判定された後に実行する。ステップＳ６０８〜ステップＳ６０９の処理は前述した通りのため説明は割愛する。ＰＣ２００のＣＰＵ２０１は、３Ｄプリンタオブジェクトから所定距離内にあると判定された選択中の被選択用オブジェクトが、当該３Ｄプリンタオブジェクトの示す３Ｄプリンタで出力（造形）可能なサイズか判定する（ステップＳ６１０／処理可否判定手段）。造形可能なサイズの場合、処理をステップＳ２００６に移行し、造形可能なサイズでない場合、処理をステップＳ１００１に移行して図１１の処理を実行する。ステップＳ１００１の処理が終了したら、処理をステップＳ６０８の前に戻す。よって、３Ｄプリンタでのオブジェクトの造形可否に応じて、ＭＲ空間上で、造形対象のオブジェクトの状態を変更できる。
【０３１７】
また、第５の実施形態と第３の実施形態を組み合わせてもよい。
【０３１８】
具体的には、ＰＣ２００のＣＰＵ２０１は、図１９のステップＳ１９０２の後に、図１３のステップＳ１３０１、ステップＳ１３０２の処理を順次行う。そして、処理をステップＳ１８０３に移行する。また、図２１のステップＳ２１０１でＨＭＤ１００の視界内に処理中のオブジェクトがあると判定された場合に、図１４のステップＳ１４０１、ステップＳ１４０２の処理を順次行う。そして、ＰＣ２００のＣＰＵ２０１は、ステップＳ１４０２で、処理中のオブジェクトが当該オブジェクトの仮想空間上の位置を視界内におさめたＨＭＤ１００と対応付けて記憶されているオブジェクトであると判定された場合に、処理をステップＳ２１１２に移行する。また、ＰＣ２００のＣＰＵ２０１は、ステップＳ２１１１の後に図１４のステップＳ１４０３の処理を実行して図２１の処理を終了するようにする。よって、処理開始の指示を行ったユーザのＨＭＤに対して、当該ユーザが処理の開始指示をしたオブジェクトにかかる処理の進捗状態を通知することができる。
【０３１９】
また、第５の実施形態と第３の実施形態を組み合わせてもよい。
【０３２０】
具体的には、図２１のステップＳ２１０６で、処理が完了していないと判定された場合に、ステップＳ２１０６で判定の対象となった被選択用オブジェクトを視界におさめたＨＭＤ１００の座標２２０４と、当該被選択用オブジェクトの座標２２０４との値に基づいて、当該ＨＭＤ１００と当該被選択用オブジェクトとの距離が所定の距離内か判定する。所定の距離内であると判定した場合に処理をステップＳ２１０８に進め、所定の距離内でないと判定した場合は処理を終了する。よって、ユーザと処理中のオブジェクトとの距離に応じて、オブジェクトの処理の進捗を確認させることができる。
【０３２１】
以上説明したように、本発明によれば、ＭＲ空間上でオブジェクトの選択を行うことで、容易に、印刷装置にオブジェクトを印刷させる仕組みを提供することができる。
【０３２２】
本発明によれば、仮想空間で選択されるオブジェクトにかかるデータを他のオブジェクトに対応する装置に容易に送信可能な仕組みを提供することができる。
【０３２３】
具体的には、仮想空間で選択されたオブジェクトの形状にかかるデータを他のオブジェクトに対応する装置であって、当該形状にかかるデータを処理する装置に容易に送信可能な仕組みを提供することができる。
【０３２４】
また、所定距離内に接近したオブジェクトに対応する装置に、接近した他のオブジェクトの情報を適切に送信させることができる。
【０３２５】
本発明は、例えば、システム、装置、方法、プログラム若しくは記憶媒体等としての実施形態も可能であり、具体的には、複数の機器から構成されるシステムに適用してもよいし、また、１つの機器からなる装置に適用してもよい。
【０３２６】
また、本発明の各実施形態を組み合わせることが可能である。例えば、本発明の第３の実施形態における図１３の処理を、本発明の第２の実施形態における図５の処理の代わりに各端末が実行し、本発明の第３の実施形態における図１４の処理を、本発明の第２の実施形態における図７の処理の代わりに各端末が実行するようにしてもよい。
【０３２７】
なお、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラムを、システム或いは装置に直接、或いは遠隔から供給するものを含む。そして、そのシステム或いは装置のコンピュータが前記供給されたプログラムコードを読み出して実行することによっても達成される場合も本発明に含まれる。
【０３２８】
したがって、本発明の機能処理をコンピュータで実現するために、前記コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。
【０３２９】
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、ＯＳに供給するスクリプトデータ等の形態であってもよい。
【０３３０】
プログラムを供給するための記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＭＯ、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷなどがある。また、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＤＶＤ（ＤＶＤ−ＲＯＭ，ＤＶＤ−Ｒ）などもある。
【０３３１】
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続する。そして、前記ホームページから本発明のコンピュータプログラムそのもの、若しくは圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードすることによっても供給できる。
【０３３２】
また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるＷＷＷサーバも、本発明に含まれるものである。
【０３３３】
また、本発明のプログラムを暗号化してＣＤ−ＲＯＭ等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせる。そして、ダウンロードした鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
【０３３４】
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される。その他、そのプログラムの指示に基づき、コンピュータ上で稼動しているＯＳなどが、実際の処理の一部又は全部を行い、その処理によっても前述した実施形態の機能が実現され得る。
【０３３５】
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれる。その後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部又は全部を行い、その処理によっても前述した実施形態の機能が実現される。
【０３３６】
なお、前述した実施形態は、本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。即ち、本発明はその技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。
【符号の説明】
【０３３７】
１００  ＨＭＤ
２００  ＰＣ
３００  ３Ｄプリンタ
１０１  ＬＡＮ
１０４  光学センサ
１０５  選択デバイス
２０１  ＣＰＵ
２０２  ＲＯＭ
２０３  ＲＡＭ
２０４  システムバス
２０５  入力コントローラ
２０６  ビデオコントローラ
２０７  メモリコントローラ
２０８  通信Ｉ／Ｆコントローラ
２０９  入力デバイス
２１０  ディスプレイ
２１１  外部メモリ
２２１  右目ビデオカメラ
２２２  左目ビデオカメラ
２２３  右目ディスプレイ
２２４  左目ディスプレイ
２２５  コントローラ
【図１】
2018120598.tif 000003
【図２】
2018120598.tif 000004
【図３】
2018120598.tif 000005
【図４】
2018120598.tif 000006
【図５】
2018120598.tif 000007
【図６】
2018120598.tif 000008
【図７】
2018120598.tif 000009
【図８】
2018120598.tif 000010
【図９Ａ】
2018120598.tif 000011
【図９Ｂ】
2018120598.tif 000012
【図９Ｃ】
2018120598.tif 000013
【図９Ｄ】
2018120598.tif 000014
【図１０】
2018120598.tif 000015
【図１１】
2018120598.tif 000016
【図１２】
2018120598.tif 000017
【図１３】
2018120598.tif 000018
【図１４】
2018120598.tif 000019
【図１５】
2018120598.tif 000020
【図１６】
2018120598.tif 000021
【図１７】
2018120598.tif 000022
【図１８】
2018120598.tif 000023
【図１９】
2018120598.tif 000024
【図２０】
2018120598.tif 000025
【図２１】
2018120598.tif 000026
【図２２】
2018120598.tif 000027
【図２３】
2018120598.tif 000028
【図２４】
2018120598.tif 000029