(57)【特許請求の範囲】
【請求項１】
１以上の立体オブジェクトの形状を指定する情報である形状情報が格納され得る形状情報格納部と、
前記１以上の立体オブジェクトのそれぞれを構成する１以上の面に配置される１以上の情報である配置用情報が格納され得る配置用情報格納部と、
１以上の前記立体オブジェクトに対する操作を含む操作を受け付ける操作受付部と、
前記操作受付部が受け付けた操作に応じて、前記１以上の各立体オブジェクトに対する処理を実行する実行部と、
前記形状情報が示す立体オブジェクトを構成する面のうちの、操作にロックをかけるための面であるロック面を指定する情報であるロック面指定情報が格納され得るロック面指定情報格納部と、
前記立体オブジェクトの形状情報と、当該形状情報が示す立体オブジェクトの１以上の面に配置される前記配置用情報とを読み出し、当該読み出した形状情報が示す１以上の面に対し、それぞれに対応した前記配置用情報を配置した立体オブジェクトの画像情報を構成する画像情報構成部と、
前記画像情報構成部が構成した画像情報を出力する出力部と、
前記立体オブジェクトの、前記ロック面指定情報が指定するロック面が、予め指定された方向を向いているか否かを判断する方向判断部と、
前記方向判断部が、前記ロック面指定情報が指定するロック面が予め指定された方向を向いていると判断した場合に、立体オブジェクトに対する操作を制限する操作制限部と、を備えた情報処理装置。
【請求項２】
前記操作制限部は、立体オブジェクトに対する操作の制限を解除するための操作を受け付けた場合に、前記操作に対する制限を解除する請求項１記載の情報処理装置。
【請求項３】
前記形状情報が示す立体オブジェクトに対する操作を制限するか否かを示す情報である操作可否情報が格納され得る操作可否情報格納部を更に備え、
前記方向判断部は、前記立体オブジェクトの前記ロック面指定情報が指定するロック面が、予め指定された方向を向いていると判断した場合に、操作を制限することを示す操作可否情報を、前記操作可否情報格納部に蓄積し、
前記操作制限部は、前記操作可否情報格納部に操作を制限する操作可否情報が格納されている場合に、前記立体オブジェクトに対する操作を制限する請求項１記載の情報処理装置。
【請求項４】
前記操作受付部が受け付ける操作は、前記操作可否情報格納部に格納されている操作を制限する操作可否情報を、操作制限しない操作可否情報に変更させるための操作を含み、
前記操作制限部は、前記操作受付部が前記変更させる操作を受け付けた場合に、前記操作可否情報格納部に格納されている操作可否情報を、操作を制限しない操作可否情報に変更する請求項３記載の情報処理装置。
【請求項５】
前記方向判断部は、前記ロック面指定情報が指定するロック面が正面であるか否かを判断し、
前記操作制限部は、前記方向判断部が、前記ロック面が正面であると判断した場合に、前記立体オブジェクトに対する操作を制限する請求項１から請求項４いずれか記載の情報処理装置。
【請求項６】
形状情報格納部に格納されている一の立体オブジェクトに対するロック面指定情報を受け付けるロック面指定情報受付部と、
前記形状情報格納部に格納されている１以上の立体オブジェクトのそれぞれについて、前記ロック面指定情報受付部が受け付けたロック面指定情報が指定する面と同じ面を指定するロック面指定情報を取得し、取得したロック面指定情報を各立体オブジェクトと対応付けて、前記ロック面指定情報格納部に格納するロック面指定情報蓄積部とを備えた請求項１から請求項５いずれか記載の情報処理装置。
【請求項７】
前記１以上の立体オブジェクトの配置を指定する情報であるオブジェクト配置情報が格納され得るオブジェクト配置情報格納部を更に備え、
前記画像情報構成部は、前記立体オブジェクトの形状情報と、当該形状情報が示す立体オブジェクトの１以上の面に配置される前記配置用情報と、当該立体オブジェクトに対応するオブジェクト配置情報とを読み出し、当該読み出した形状情報が示す１以上の面に対し、それぞれに対応した前記配置用情報を配置した立体オブジェクトを、前記オブジェクト配置情報が示すよう配置した画像情報を構成する請求項１から請求項６いずれか記載の情報処理装置。
【請求項８】
１以上の立体オブジェクトの形状を指定する情報である形状情報が格納され得る形状情報格納部と、前記１以上の立体オブジェクトのそれぞれを構成する１以上の面に配置される１以上の情報である配置用情報が格納され得る配置用情報格納部と、操作受付部と、実行部と、前記形状情報が示す立体オブジェクトを構成する面のうちの、操作にロックをかけるための面であるロック面を指定する情報であるロック面指定情報が格納され得るロック面指定情報格納部と、画像情報構成部と、出力部と、方向判断部と、操作制限部とを用いて行われる情報処理方法であって、
前記操作受付部が、１以上の前記立体オブジェクトに対する操作を含む操作を受け付ける操作受付ステップと、
前記実行部が、前記操作受付ステップで受け付けた操作に応じて、前記１以上の各立体オブジェクトに対する処理を実行する実行ステップと、
前記画像情報構成部が、前記立体オブジェクトの形状情報と、当該形状情報が示す立体オブジェクトの１以上の面に配置される前記配置用情報とを読み出し、当該読み出した形状情報が示す１以上の面に対し、それぞれに対応した前記配置用情報を配置した立体オブジェクトの画像情報を構成する画像情報構成ステップと、
前記出力部が、前記画像情報構成ステップが構成した画像情報を出力する出力ステップと、
前記方向判断部が、前記立体オブジェクトの、前記ロック面指定情報が指定するロック面が、予め指定された方向を向いているか否かを判断する方向判断ステップと、
前記操作制限部が、前記方向判断ステップにより、前記ロック面指定情報が指定するロック面が予め指定された方向を向いていると判断した場合に、立体オブジェクトに対する操作を制限する操作制限ステップと、を備えた情報処理方法。
【請求項９】
コンピュータを、
形状情報格納部に格納されている１以上の立体オブジェクトの形状を指定する情報である形状情報により形状が指定される１以上の前記立体オブジェクトに対する操作を含む操作を受け付ける操作受付部と、
前記操作受付部が受け付けた操作に応じて、前記１以上の各立体オブジェクトに対して処理を実行する実行部と、
前記立体オブジェクトの形状情報と、前記１以上の立体オブジェクトのそれぞれを構成する１以上の面に配置される１以上の情報である配置用情報が格納され得る配置用情報格納部に格納されている、当該形状情報が示す立体オブジェクトの１以上の面に配置される前記配置用情報とを読み出し、当該読み出した形状情報が示す１以上の面に対し、それぞれに対応した前記配置用情報を配置した立体オブジェクトの画像情報を構成する画像情報構成部と、
前記画像情報構成部が構成した画像情報を出力する出力部と、
前記立体オブジェクトの、ロック面指定情報格納部に格納されている当該立体オブジェクトを構成する面のうちの操作にロックをかけるための面であるロック面を指定する情報であるロック面指定情報が指定するロック面が、予め指定された方向を向いているか否かを判断する方向判断部と、
前記方向判断部が、前記ロック面指定情報が指定するロック面が予め指定された方向を向いていると判断した場合に、立体オブジェクトに対する操作を制限する操作制限部として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、商品等の情報を配置した立体的な画像等を出力する情報処理装置等に関するものである。
【背景技術】
【０００２】
従来の技術として、立体図形の各領域にメニュー項目が割り当てられた、前記立体図形を表示する表示工程と、前記立体図形を、入力する指示コマンドに従って、移動させる移動工程と、前記立体図形に割り当てられたメニュー項目から、所要のメニューを選択する選択工程と、選択されたメニューに対応した処理を実行する選択処理実行工程とを、備えることを特徴とする３次元メニュー選択方法が知られていた（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平７−１１４４５１号公報（第１頁、第１図等）
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、従来の情報処理装置等においては、立体オブジェクトを用いて出力される情報に対して、容易にセキュリティを保つことができないという課題があった。
【０００５】
例えば、従来の技術においては、ユーザが、情報処理装置の操作から離れている間は、第三者が勝手に立体オブジェクトに対して操作を行うことも可能であったため、立体オブジェクトの操作によって得られる情報等についてのセキュリティを保つことができなかった。一方で、第三者が勝手に立体オブジェクトを操作できないようにするための操作が複雑であると、立体オブジェクトの操作性を妨げてしまう、という問題があった。
【課題を解決するための手段】
【０００６】
本発明の情報処理装置は、１以上の立体オブジェクトの形状を指定する情報である形状情報が格納され得る形状情報格納部と、１以上の立体オブジェクトのそれぞれを構成する１以上の面に配置される１以上の情報である配置用情報が格納され得る配置用情報格納部と、１以上の立体オブジェクトに対する操作を含む操作を受け付ける操作受付部と、操作受付部が受け付けた操作に応じて、１以上の各立体オブジェクトに対する処理を実行する実行部と、形状情報が示す立体オブジェクトを構成する面のうちの、操作にロックをかけるための面であるロック面を指定する情報であるロック面指定情報が格納され得るロック面指定情報格納部と、立体オブジェクトの形状情報と、形状情報が示す立体オブジェクトの１以上の面に配置される配置用情報とを読み出し、読み出した形状情報が示す１以上の面に対し、それぞれに対応した配置用情報を配置した立体オブジェクトの画像情報を構成する画像情報構成部と、画像情報構成部が構成した画像情報を出力する出力部と、立体オブジェクトの、ロック面指定情報が指定するロック面が、予め指定された方向を向いているか否かを判断する方向判断部と、方向判断部が、ロック面指定情報が指定するロック面が予め指定された方向を向いていると判断した場合に、立体オブジェクトに対する操作を制限する操作制限部と、を備えた情報処理装置である。
【０００７】
かかる構成により、例えば、ロック面を予め指定された方向に向けることにより立体オブジェクトに対する操作が制限され、立体オブジェクトを用いて出力される情報に対して、容易にセキュリティを保つことができる。
【０００８】
また、本発明の情報処理装置は、前記情報処理装置において、操作制限部は、立体オブジェクトに対する操作の制限を解除するための操作を受け付けた場合に、操作に対する制限を解除する情報処理装置である。
【０００９】
かかる構成により、例えば、立体オブジェクトを用いて出力される情報に対してアクセス権を持つユーザが、適宜、操作の制限を解除して、立体オブジェクトを用いて出力される情報にアクセスすることができる。
【００１０】
また、本発明の情報処理装置は、前記情報処理装置において、形状情報が示す立体オブジェクトに対する操作を制限するか否かを示す情報である操作可否情報が格納され得る操作可否情報格納部を更に備え、方向判断部は、立体オブジェクトのロック面指定情報が指定するロック面が、予め指定された方向を向いていると判断した場合に、操作を制限することを示す操作可否情報を、操作可否情報格納部に蓄積し、操作制限部は、操作可否情報格納部に操作を制限する操作可否情報が格納されている場合に、立体オブジェクトに対する操作を制限する情報処理装置である。
【００１１】
かかる構成により、ロック面が指定された方向を向いていた場合には、ロック面が指定された方向を向いているか否かの判断処理を減らすことができ、情報処理装置が行う処理を軽減できる。
【００１２】
また、本発明の情報処理装置は、前記情報処理装置において、前記操作受付部が受け付ける操作は、操作可否情報格納部に格納されている操作を制限する操作可否情報を、操作制限しない操作可否情報に変更させるための操作を含み、操作制限部は、操作受付部が変更させる操作を受け付けた場合に、操作可否情報格納部に格納されている操作可否情報を、操作を制限しない操作可否情報に変更する情報処理装置である。
【００１３】
かかる構成により、ロック面が指定された方向を向いていない場合には、ロック面が、指定された方向を向いているか否かの判断処理を実行させることができる。
【００１４】
また、本発明の情報処理装置は、前記情報処理装置において、方向判断部は、ロック面指定情報が指定するロック面が正面であるか否かを判断し、操作制限部は、方向判断部が、ロック面が正面であると判断した場合に、立体オブジェクトに対する操作を制限する情報処理装置である。
【００１５】
かかる構成により、ロック面を正面に向けることで、立体オブジェクトに対する操作を制限することができる。これにより、ユーザにとってわかりやすい操作で、操作に制限をかけることができる。
【００１６】
また、本発明の情報処理装置は、前記情報処理装置において、形状情報格納部に格納されている一の立体オブジェクトに対するロック面指定情報を受け付けるロック面指定情報受付部と、形状情報格納部に格納されている１以上の立体オブジェクトのそれぞれについて、ロック面指定情報受付部が受け付けたロック面指定情報が指定する面と同じ面を指定するロック面指定情報を取得し、取得したロック面指定情報を各立体オブジェクトと対応付けて、ロック面指定情報格納部に格納するロック面指定情報蓄積部とを備えた情報処理装置である。
【００１７】
かかる構成により、一の立体オブジェクトにロック面を指定すると、他の立体オブジェクトにも同様のロック面の指定を行うことができる。
【００１８】
また、本発明の情報処理装置は、１以上の立体オブジェクトの形状を指定する情報である形状情報が格納され得る形状情報格納部と、１以上の立体オブジェクトのそれぞれを構成する１以上の面に配置される１以上の情報である配置用情報が格納され得る配置用情報格納部と、１以上の立体オブジェクトに対する操作を含む操作を受け付ける操作受付部と、操作受付部が受け付けた操作に応じて、１以上の各立体オブジェクトに対する処理を実行する実行部と、操作受付部が受け付けた操作を示す情報である操作情報を取得する操作情報取得部と、操作情報取得部が取得した最新の２以上の操作情報の出現パターンが、予め指定された操作情報の出現パターンと一致するか否かを判断する出現パターン判断部と、出現パターン判断部が、出現パターンが一致すると判断した場合に、立体オブジェクトに対する操作を制限する操作制限部と、立体オブジェクトの形状情報と、形状情報が示す立体オブジェクトの１以上の面に配置される配置用情報とを読み出し、読み出した形状情報が示す１以上の面に対し、それぞれに対応した配置用情報を配置した立体オブジェクトの画像情報を構成する画像情報構成部と、画像情報構成部が構成した画像情報を出力する出力部と、を備えた情報処理装置である。
【００１９】
かかる構成により、立体オブジェクトに対する複数の操作の組合せによって、立体オブジェクトに対する操作を制限することができる。これにより、立体オブジェクトに一連の操作を行うだけで、操作を制限することができ、立体オブジェクトを用いて出力される情報に対して、簡単な操作で容易にセキュリティを保つことができる。
【００２０】
また、本発明の情報処理装置は、前記情報処理装置において、操作受付部が受け付けた操作の履歴を示す情報である操作履歴情報が格納され得る操作履歴情報格納部を更に備え、操作情報取得部は、取得した操作情報を含む操作履歴情報を操作履歴情報格納部に蓄積し、出現パターン判断部は、操作情報取得部が蓄積した最新の２以上の操作履歴情報に含まれる操作情報の出現パターンが、予め指定された操作情報の出現パターンと一致するか否かを判断する情報処理装置である。
【００２１】
かかる構成により、操作の履歴が、予め指定された操作である場合に、立体オブジェクトに対する操作を制限して、立体オブジェクトを用いて出力される情報に対して、容易にセキュリティを保つことができる。
【００２２】
また、本発明の情報処理装置は、前記情報処理装置において、操作制限部は、立体オブジェクトに対する操作の制限を解除するための操作を受け付けた場合に、操作に対する制限を解除する情報処理装置である。
【００２３】
かかる構成により、例えば、立体オブジェクトを用いて出力される情報に対してアクセス権を持つユーザが、適宜、操作の制限を解除して、立体オブジェクトを用いて出力される情報にアクセスすることができる。
【００２４】
また、本発明の情報処理装置は、前記情報処理装置において、形状情報が示す立体オブジェクトに対する操作を制限するか否かを示す情報である操作可否情報が格納され得る操作可否情報格納部を更に備え、出現パターン判断部は、出現パターンが一致すると判断した場合に、操作を制限することを示す操作可否情報を、操作可否情報格納部に蓄積し、操作制限部は、操作可否情報格納部に操作を制限する操作可否情報が格納されている場合に、立体オブジェクトに対する操作を制限する情報処理装置である。
【００２５】
かかる構成により、操作が制限されている場合には、操作制限を行うか否かの判断を行わないようにして、情報処理装置の行う処理を軽減させることができる。
【００２６】
また、本発明の情報処理装置は、前記情報処理装置において、操作受付部が受け付ける操作は、操作可否情報格納部に格納されている操作を制限する操作可否情報を、操作制限しない操作可否情報に変更させるための操作を含み、操作制限部は、操作受付部が変更させる操作を受け付けた場合に、操作可否情報格納部に格納されている操作可否情報を、操作を制限しない操作可否情報に変更する情報処理装置である。
【００２７】
かかる構成により、操作が制限されていない場合には、操作制限を行うか否かの判断を行わせることができる。
【００２８】
また、本発明の情報処理装置は、前記情報処理装置において、操作情報の出現パターンを示す情報である操作パターン定義情報が格納され得る操作パターン定義情報格納部と、をさらに備えた情報処理装置である。
【００２９】
かかる構成により、操作パターン定義情報によって、操作制限を行う操作情報の出現パターンを定義することができる。
【００３０】
また、本発明の情報処理装置は、前記情報処理装置において、１以上の立体オブジェクトの配置を指定する情報であるオブジェクト配置情報が格納され得るオブジェクト配置情報格納部を更に備え、画像情報構成部は、立体オブジェクトの形状情報と、形状情報が示す立体オブジェクトの１以上の面に配置される配置用情報と、立体オブジェクトに対応するオブジェクト配置情報とを読み出し、読み出した形状情報が示す１以上の面に対し、それぞれに対応した配置用情報を配置した立体オブジェクトを、オブジェクト配置情報が示すよう配置した画像情報を構成する情報処理装置である。
【００３１】
かかる構成により、オブジェクト配置情報が示すように配置した立体オブジェクトに対して、操作制限を行うことが可能となる。例えば、オブジェクト配置情報が示すように立体オブジェクトを配置した場合に、立体オブジェクトのロック面が予め指定された方向を向いているか否かを判断して、操作の制限を行うか否かを判断することができる。あるいは、オブジェクト配置情報が示すように配置した立体オブジェクトの配置を変化する操作の組合せによって、操作の制限を行うか否かを判断することができる。
【発明の効果】
【００３２】
本発明による情報処理装置等によれば、立体オブジェクトを用いて出力される情報に対して、容易にセキュリティを保つことができる。
【図面の簡単な説明】
【００３３】
【図１】本発明の実施の形態１にかかる情報処理装置のブロック図
【図２】同情報処理装置の動作について説明するフローチャート
【図３】同情報処理装置の動作を説明するための、形状情報管理表を示す図
【図４】同情報処理装置の動作を説明するための、立体オブジェクトの模式図
【図５】同情報処理装置の動作を説明するための、オブジェクト配置情報管理表を示す図
【図６】同情報処理装置の動作を説明するための、配置用情報格納部配置用情報を示す図
【図７】同情報処理装置の動作を説明するための、配置用情報管理表を示す図
【図８】同情報処理装置の動作を説明するための、画像情報の表示例を示す図を示す図
【図９】同情報処理装置の動作を説明するための、ロック面指定情報管理表を示す図
【図１０】同情報処理装置の動作を説明するための、操作可否情報を示す図
【図１１】同情報処理装置の動作を説明するための、操作可否情報を示す図
【図１２】同情報処理装置の動作を説明するための、操作制限を解除するためのパスワード入力画面の表示例を示す図
【図１３】同情報処理装置の動作を説明するための、ロック名指定情報管理表を示す図
【図１４】本発明の実施の形態２にかかる情報処理装置のブロック図
【図１５】同情報処理装置の動作について説明するフローチャート
【図１６】同情報処理装置の動作を説明するための、操作履歴情報管理表を示す図
【図１７】同情報処理装置の表示例を示す図
【図１８】同情報処理装置の動作を説明するための、操作履歴情報管理表を示す図
【図１９】同情報処理装置の動作を説明するための、操作パターン定義情報を示す図
【図２０】同情報処理装置の動作を説明するための、最新の操作情報を示す図
【図２１】同情報処理装置の動作を説明するための、操作履歴情報管理表を示す図
【図２２】同情報処理装置の動作を説明するための、最新の操作情報を示す図
【図２３】同情報処理装置を実現するコンピュータシステムの外観の一例を示す図
【図２４】同情報処理装置を実現するコンピュータシステムの構成の一例を示す図
【発明を実施するための形態】
【００３４】
以下、情報処理装置等の実施形態について図面を参照して説明する。なお、実施の形態において同じ符号を付した構成要素は同様の動作を行うので、再度の説明を省略する場合がある。
【００３５】
（実施の形態１）
図１は、本実施の形態における情報処理装置１のブロック図である。
【００３６】
情報処理装置１は、形状情報格納部１０１、オブジェクト配置情報格納部１０２、配置用情報格納部１０３、操作受付部１０４、実行部１０５、ロック面指定情報格納部１０６、方向判断部１０７、操作制限部１０８、画像情報構成部１０９、出力部１１０、ロック面指定情報受付部１１１、ロック面指定情報蓄積部１１２および操作可否情報格納部１１３を備える。
【００３７】
形状情報格納部１０１には、１以上の立体オブジェクトの形状を指定する情報である形状情報が格納され得る。形状情報とは、例えば、仮想三次元空間内に配置されるオブジェクトの形状等を定義する情報である。形状情報は、例えば、立体オブジェクトのいわゆるモデリング情報である。なお、形状情報は、擬似的に立体オブジェクトを表示するための、二次元のオブジェクトの形状を示す情報であっても良い。ここで述べる立体オブジェクトは、例えば３Ｄオブジェクトや３Ｄモデルや立体モデルと呼ばれるものも含む。形状情報は、立体オブジェクトの頂点の座標の情報や、境界線や面等を表現する方程式やそのパラメータの情報等で構成される。ここで述べる座標は、例えば、立体オブジェクト自身を基準に設定される座標系、いわゆるオブジェクト座標系の座標であっても良いし、１以上の立体オブジェクトが配置される仮想三次元空間の座標系、いわゆるワールド座標系の座標であっても良い。
【００３８】
立体オブジェクトは、１以上の面により構成されている。このため、形状情報は、立体オブジェクトの面を定義する情報、あるいは面を定義可能な情報を有している。例えば、立体オブジェクトの面は、例えば、面が他の面とで構成する頂点の座標や、面の周りの辺上の座標等の組合せ等で特定される。あるいは、面の法線を示す情報、例えば法線ベクトル等で特定される。形状情報が示す立体オブジェクトの１以上の面は、例えば、各面を識別するための識別情報と対応付けられていてもよい。このような面の識別情報をここでは、面識別情報と呼ぶ。面識別情報は、例えば、面を特定する頂点の座標の組合せと対応付けられていても良いし、面識別情報は、例えば、面を特定する法線を示す情報と対応付けられていても良い。また、立体オブジェクトの配置が、当該立体オブジェクトを構成する各面が正面となるように配置されるような何パターンかに限定されている場合、各パターンと、そのパターンにおいて正面となる面の面識別情報とが対応付けられていても良い。面識別情報は、形状情報に含まれていても良いし、図示しない記憶媒体等の他の格納部等に蓄積されていても良い。
【００３９】
立体オブジェクトは、例えば、面の構成方法によって、ポリゴンモデリングや、自由曲面を利用したモデリング等に分類できる。形状情報には、立体オブジェクトを出力する際の、立体オブジェクトの色や、透明度、反射、屈折率、バンプなどの設定項目の情報を含んでも良い。形状情報は、大きさや形状や色や透明度等が経時的に変化する動きのある立体オブジェクトの形状情報であっても良い。立体オブジェクトの形状情報は、どのような形式の情報であっても良い。例えば、形状情報は、ＦＬＡＳＨ（登録商標）形式のファイルであっても良い。立体オブジェクトの形状は、球、円柱、六面体や八面対等の多面体や、立方体、円錐、角錐等、どのような形状であっても良い。
【００４０】
形状情報格納部１０１には、１以上の立体オブジェクトの形状情報が格納され得る。なお、２以上の立体オブジェクトは、同じ形状および大きさであってもよいし、異なる形状および大きさであっても良い。立体オブジェクトには、立体オブジェクトを識別するための識別情報である立体オブジェクト識別情報が対応付けられていても良い。形状情報のサイズの単位等は、絶対的な単位であっても、相対的な単位であっても良い。また、複数の立体オブジェクトにおいて、共用可能な形状情報等は、リンク情報等を用いて参照することで、相互利用できるようにしても良い。すなわち、２以上の立体オブジェクトの形状情報は、２以上の立体オブジェクトにおいて共用される一の形状情報であってもよい。つまり、２以上の立体オブジェクトの形状情報は、２以上の立体オブジェクトに対応する形状情報と考えても良い。なお、形状情報格納部１０１には、グループ化された１以上の立体オブジェクトを内部に配置するための立体オブジェクトの形状を示す形状情報が予め格納されているようにしても良い。ここでは、このようなグループ化された１以上の立体オブジェクトを内部に配置するための立体オブジェクトを、グループ用立体オブジェクトと呼ぶ。また、このようなグループ化された１以上の立体オブジェクトを内部に配置するための立体オブジェクトの形状情報は、適宜、図示しない形状情報構成部等で構成されて、形状情報格納部１０１に格納されるようにしても良い。形状情報格納部１０１は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能である。
【００４１】
オブジェクト配置情報格納部１０２には、１以上の立体オブジェクトの配置を指定する情報であるオブジェクト配置情報が格納され得る。ここで述べる１以上の立体オブジェクトは、形状情報格納部１０１に格納されている形状情報が示す立体オブジェクトである。オブジェクト配置情報は、立体オブジェクトの形状情報の配置を指定する情報と考えても良い。ここで述べる配置とは、例えば、仮想三次元空間内における配置である。ただし、立体オブジェクトを用いて構成された二次元の画像や、立体オブジェクトを示す擬似的な三次元画像が配置される位置を示す二次元の座標情報等の位置の情報であっても良い。この配置は、例えば、立体オブジェクトの位置と方向との組み合わせを有する概念である。ただし、配置や、位置または方向のいずれか一方であっても良い。
【００４２】
オブジェクト配置情報は、立体オブジェクトの配置を結果的に指定可能な情報であればよく、例えば、立体オブジェクトが配置される位置の座標や、立体オブジェクトの方向を指定する情報である。方向を指定する情報は、例えば、ベクトル情報や、仮想三次元空間内における所定の軸を回転軸とした回転角度等の情報である。あるいは、仮想三次元空間内における座標軸と、立体オブジェクトに設定される座標軸との位置関係を示す情報と考えても良い。例えば、仮想三次元空間内における座標軸を基準として、立体オブジェクトに設定される各座標軸をベクトルで表した情報であっても良い。また、オブジェクト配置情報は、立体オブジェクトの大きさ等を指定する情報を含むものであっても良い。立体オブジェクトの位置を指定する座標は、仮想三次元空間内に設定された絶対的な座標であっても良いし、他の立体オブジェクト等に対して設定された相対的な座標であっても良い。また、立体オブジェクトの位置を指定する座標は、立体オブジェクトを構成する辺等が集まる頂点の座標であっても良いし、立体オブジェクトの中心等の位置の座標であっても良い。オブジェクト配置情報は、経時的に立体オブジェクトの配置が変化する動画像用のオブジェクト配置情報であっても良い。例えば、オブジェクト配置情報が複数フレームの情報を有し、フレーム毎に、立体オブジェクトの配置が指定されていても良い。
【００４３】
なお、ここではオブジェクト配置情報と立体オブジェクトの形状情報とをそれぞれ設けた場合について説明するが、形状情報格納部１０１とオブジェクト配置情報格納部１０２とを一の格納部で構成するとともに、オブジェクト配置情報を形状情報内に含めるようにしても良い。例えば、形状情報の頂点の情報を立体オブジェクトが配置される空間の座標系の座標で指定することで、形状情報をオブジェクト配置情報としても利用できるようにして、立体オブジェクトの配置の指定も可能としてもよい。なお、各立体オブジェクトを用いてレンダリングにより作成された二次元の画像を、二次元の背景画像上等に配置して最終的な出力画像を作成する場合等においては、オブジェクトの配置される位置の情報は、二次元の情報、例えばｘｙ座標等の座標情報であってもよい。
【００４４】
また、オブジェクト配置情報は、複数の立体オブジェクト同士がグループ化されているか否か等のグループ化の状況を管理する情報を有していても良い。グループ化の状況を管理する情報は、例えば、一のグループを構成する立体オブジェクトに、属するグループを識別するためのグループ識別情報を対応付けることや、同じグループに含まれる立体オブジェクトの識別情報を一のレコードの複数の項目で管理するデータベース等であっても良い。
【００４５】
なお、本実施の形態におけるグループとは、必ずしも上述したようにグループ化状況を管理する情報で管理される立体オブジェクトのグループのみに限るものではなく、結果として、１以上の立体オブジェクトをグループとして、実行部１０５等が判断可能な状態であればよい。例えば、立体オブジェクトのグループは、立体オブジェクトの配置に応じて判断可能なグループであっても良い。具体的には、上述したように一のウィンドウ内に配置されている１以上の立体オブジェクトを、一のグループと考えても良い。また、立体オブジェクトが階層化されて管理されている場合、一の階層に属する立体オブジェクトや、一の立体オブジェクトに従属している立体オブジェクトを一のグループと考えても良い。また、予め指定された領域内に配置されている立体オブジェクトを、一のグループの立体オブジェクトと考えても良い。このような予め指定された領域を指定する情報は、例えば、図示しない記憶媒体等に格納される。予め指定された領域は、例えば、購入対象物についての立体オブジェクトが配置される領域である。また、同じ属性を有する、あるいは同じ属性と対応付けられた立体オブジェクトを一のグループの立体オブジェクトと考えても良い。具体例を挙げると、立体オブジェクトが商品についての情報が配置されている立体オブジェクトである場合を例に挙げて説明すると、ユーザが「ショッピングカートに入れた」ことを示す情報と対応付けられた立体オブジェクトを一のグループの立体オブジェクトと考えても良い。また、購入対象の商品リストに登録された立体オブジェクトを一のグループの立体オブジェクトと考えても良い。なお、オブジェクト配置情報は、例えば、後述する実行部１０５が立体オブジェクトの配置を変更する際に、実行部１０５等により変更される。
【００４６】
オブジェクト配置情報格納部１０２は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能である。なお、このオブジェクト配置情報格納部１０２を、例えば、デフォルトで用意されたオブジェクト配置情報が予め格納されている格納部（図示せず）等から読み出したデフォルトのオブジェクト配置情報が一時的に格納され得るテンポラリの格納部等と考えても良い。
【００４７】
配置用情報格納部１０３には、１以上の立体オブジェクトのそれぞれを構成する１以上の面に配置される１以上の情報である配置用情報が格納され得る。具体的には、配置用情報格納部１０３には、形状情報格納部１０１に格納されている１以上の各立体オブジェクトの１以上の面にそれぞれ配置される配置用情報が格納され得る。配置用情報は、各立体オブジェクトの１以上の面に配置されれば良く、全ての面に配置されていなくてもよい
【００４８】
配置用情報は、立体オブジェクトを構成する面に配置して出力、例えば表示可能な情報であれば、静止画や動画等の画像情報や、テキスト情報等、どのような情報であっても良い。画像情報は、結果的に出力用の画像情報が構成可能な情報であれば良く、例えば、ベクターデータであってもラスタデータであっても良い。また、ここで述べる配置とは、いわゆる立体オブジェクトの面に対する画像情報等のマッピングと考えても良い。また、配置用情報は、マッピング対象となる情報、例えばテクスチャ情報と考えても良い。配置用情報のデータ構造は問わない。例えば配置用情報は、ＸＭＬ形式等のタグ付けされた情報であっても良い。また、配置用情報は、テーブルや、データベースにより、例えば項目や属性等と対応付けて管理された情報でも良い。また、配置用情報は、予めグループ化されていても良い。
【００４９】
配置用情報と、当該配置用情報が配置される立体オブジェクトの面とはどのように対応付けられていても良い。例えば、配置用情報またはその識別情報と、当該配置用情報に対応付けられた立体オブジェクトの面またはその面識別情報との組を、一のレコードの複数の項目として管理する管理情報等を用いて管理されても良い。具体的には、配置用情報と、当該配置用情報が配置される立体オブジェクトの識別情報と、当該立体オブジェクトの配置用情報が配置される面の識別情報とが対応付けられて管理されていても良い。この管理情報は、例えば図示しない格納部等に格納しておくようにすればよい。また、形状情報格納部１０１と配置用情報格納部１０３とが一の格納部により構成されており、形状情報が示す立体オブジェクトの面を示す情報と当該面に配置される配置用情報とが対応付けられて格納されていても良い。
【００５０】
また、形状情報が示す立体オブジェクトの面に対して、当該面に配置される配置用情報を取得するための条件を示す情報である取得条件情報等が対応付けられて、形状情報格納部１０１等に格納されていても良い。取得条件情報は、例えば、面に配置される配置用情報を検索するための検索式等の検索条件を示す情報である。この場合、各面に対応付けられた検索式等の情報を用いて検索を行うことで、面に配置される配置用情報を取得することが可能となる。
【００５１】
なお、取得条件情報は、１以上の立体オブジェクトの面に配置される１以上の配置用情報を結果的に指定可能な情報であれば、どのような情報であっても良い。例えば、取得条件情報は、配置用情報が項目分けされている場合、その項目を指定する情報であってもよい。また、配置用情報が属性を有している場合、その属性を指定する情報であっても良い。また、配置用情報がタグ付けされている場合、タグを指定する情報であっても良い。また、配置用情報にインデックス情報が付与されている場合、このインデックスを指定する情報であっても良い。また、リンク情報等の配置用情報の場所やファイル名やディレクトリ等を指定する情報であっても良い。また、配置用情報を検索するための検索式や演算式であっても良い。なお、検索式は、必ずしも式の形で示されている必要はなく、検索に利用可能なキーワード等であっても良い。例えば、この検索式で示される取得条件情報は、「ｓｅｌｅｃｔ」、「ｆｒｏｍ」、「ｗｈｅｒｅ」等の組み合わせ等である。なお、「ｓｅｌｅｃｔ」は取得する配置用情報の項目、「ｆｒｏｍ」は検索対象となる複数の配置用情報を指定する情報、「ｗｈｅｒｅ」は検索のための条件を示す情報である（ＳＱＬの仕様を参照）。また、演算式で示される取得条件情報とは、例えば、１以上の配置用情報に対して行われる演算式であり、例えば、数値で表される２つの配置用情報を指定する情報と、これらの平均を算出する演算式等で表されたものや、現在の時間等に所定時間を加減算する演算式等で表されたもの等である。取得条件情報とは、出力対象となりうる全ての立体オブジェクトにそれぞれ個別に指定されていてもよいし、全ての立体オブジェクト共通に指定されていても良い。また、一部の立体オブジェクトに共通に指定されていても良い。また、立体オブジェクトに属性等が設定されている場合、この属性が一致する立体オブジェクトに共通の取得条件を指定しても良い。また、取得条件情報は、立体オブジェクトの各面に対して予め指定されていてもよいし、各面にランダムに指定されても良い。配置用情報格納部１０３は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能である。
【００５２】
なお、形状情報格納部１０１、オブジェクト配置情報格納部１０２、配置用情報格納部１０３に、形状情報や、オブジェクト配置情報や、配置用情報が蓄積される過程は問わない。例えば、記録媒体を介して形状情報や、オブジェクト配置情報や、配置用情報が、それぞれ、形状情報格納部１０１、オブジェクト配置情報格納部１０２、配置用情報格納部１０３に蓄積されてもよく、通信回線等を介して送信された形状情報や、オブジェクト配置情報や、配置用情報が、それぞれ、形状情報格納部１０１、オブジェクト配置情報格納部１０２、配置用情報格納部１０３に蓄積されてもよく、入力デバイスを介して入力された形状情報や、オブジェクト配置情報や、配置用情報が、それぞれ、形状情報格納部１０１、オブジェクト配置情報格納部１０２、配置用情報格納部１０３に蓄積されてもよい。また、形状情報格納部１０１や、オブジェクト配置情報格納部１０２や、配置用情報格納部１０３に格納されている形状情報や、オブジェクト配置情報や、配置用情報は、例えば図示しない受付部等が受け付けた形状情報や、オブジェクト配置情報や、配置用情報により適宜更新されるようにしても良い。また、１以上の立体オブジェクトについての形状情報とオブジェクト配置情報との組合せ、あるいは、形状情報とオブジェクト配置情報と配置用情報との組合せ等を、ＦＬＡＳＨ（登録商標）形式のファイル等の一のファイルに格納するようにしてもよい。この場合、形状情報格納部１０１とオブジェクト配置情報格納部１０２との組合せや、形状情報格納部１０１とオブジェクト配置情報格納部１０２と配置用情報格納部１０３との組合せ等を一の格納部で実現しても良い。配置用情報格納部１０３は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能である。
【００５３】
操作受付部１０４は、形状情報格納部１０１に格納されている形状情報が示す１以上の立体オブジェクトに対する操作を受け付ける。操作受付部１０４が立体オブジェクトについて受け付ける操作は、どのような操作であっても良い。この操作は、例えば、例えば立体オブジェクトに関して何らかの変更を行うための操作である。例えば、立体オブジェクトの配置に関する操作のうちの予め指定された操作であっても良いし、立体オブジェクトの属性に関する操作のうちの予め指定された操作であっても良いし、立体オブジェクトに配置される配置用情報に関する操作のうちの予め指定された操作であっても良い。ここで述べる配置とは、位置や向き等を含む概念である。立体オブジェクトの配置に関する操作とは、立体オブジェクトの位置や向き等を変更するための操作等である。例えば、立体オブジェクトの配置に関する操作とは、立体オブジェクトの配置を変更させるための指示を与えるための操作、例えば「ｙ軸に平行に５０ピクセル移動」や「ｘ軸を回転軸として９０°回転」というコマンド等を与えるための操作であっても良いし、変更後の、立体オブジェクトの配置を指定する座標や向きの情報等を与えることでもよい。また、立体オブジェクトの配置に関する操作は、立体オブジェクトを所定の領域に移動させる操作であっても良い。立体オブジェクトの属性に関する操作とは、立体オブジェクトの属するグループ等の属性等を変更するための操作である。例えば、立体オブジェクトが商品に対応した立体オブジェクトであったとすると、この立体オブジェクトに対応した商品を購入対象として選択して、この立体オブジェクトに、購入対象であるという属性を与える操作を、立体オブジェクトの属性に関する操作と考えても良い。立体オブジェクトに配置される配置用情報に関する操作とは、例えば、立体オブジェクトに配置される配置用情報を変更する操作等である。例えば、配置用情報を、立体オブジェクトに対して割り当てる操作や、配置用情報の値を変更する操作等である。
【００５４】
立体オブジェクトに対する配置に関する操作以外の操作は、例えば、立体オブジェクトをグループ化する操作である。例えば、立体オブジェクトを一のグループに対応付ける処理をグループ化と考えても良い。例えば、上述したように、立体オブジェクトに、購入対象であるという属性等の予め指定された所定の属性を与える操作が、立体オブジェクトをグループ化する操作と考えてよい。また、例えば、予め指定された領域に立体オブジェクトの位置を変更する操作がグループ化する操作である。立体オブジェクト等をグループ化する処理や、グループ化された立体オブジェクトの管理方法等については、公知技術であるので、ここでは詳細な説明を省略する。立体オブジェクトに対する操作は、通常は、操作対象となる立体オブジェクトを指定する情報を含む情報である。なお、操作受付部１０４は、予め指定された所定の操作以外の操作を受けつけても良い。
【００５５】
また、操作受付部１０４は、後述する操作制限部１０８によって制限された立体オブジェクトに対する操作について、その制限を解除するための操作を受け付けてもよい。立体オブジェクトに対する操作の制限を解除するための操作とは、例えば、予め指定されたパスワードやユーザ識別情報等を入力するための一連の操作である。あるいは予め指定された操作、例えば、予め指定されたメニューを選択する操作や、予め指定されたキーを押す操作等であってもよい。操作受付部１０４が受け付ける操作は、後述する操作可否情報格納部１１３に格納されている操作を制限する操作可否情報を、操作制限しない操作可否情報に変更させるための操作でもよい。
【００５６】
ここで述べる受け付けとは、キーボードやマウス、タッチパネルなどの入力デバイスから入力された情報の受け付け、有線もしくは無線の通信回線を介して送信された情報の受信、光ディスクや磁気ディスク、半導体メモリなどの記録媒体から読み出された情報の受け付けなどを含む概念である。入力手段は、テンキーやキーボードやマウスやメニュー画面によるもの等、何でも良い。操作受付部１０４は、テンキーやキーボード等の入力手段のデバイスドライバーや、メニュー画面の制御ソフトウェア等で実現され得る。
【００５７】
実行部１０５は、操作受付部１０４が受け付けた操作に応じて、１以上の各立体オブジェクトに対する処理を実行する。実行部１０５が立体オブジェクトに対して実行する処理は、具体的には、操作受付部１０４が受け付けた操作に応じた処理である。例えば、実行部１０５は、操作受付部１０４が受け付けた配置に関する操作に応じて、立体オブジェクトの配置が変更されるよう、オブジェクト配置情報格納部１０２に格納されているオブジェクト配置情報を更新する。具体的には、ある立体オブジェクトに対して右方向に９０°回転させるための操作を受け付けた場合、この操作に応じて立体オブジェクトが右方向に９０°回転されるよう、オブジェクト配置情報を変更する。なお、各立体オブジェクトに対する処理を実行する、とは、立体オブジェクトの配置等を変更したりするだけでなく、オブジェクトに配置される配置用情報を変更する処理や、配置用情報を用いて予め指定されている演算を行ったりする処理や、立体オブジェクトを追加したり削除したりする処理等も含む。また、実行部１０５は、操作受付部１０４が受け付けた操作に応じて、立体オブジェクトに対する処理以外の処理を実行しても良い。
【００５８】
実行部１０５は、例えば、操作受付部１０４が受け付けた予め指定された所定の操作に応じて、１以上の各立体オブジェクの１以上の面に配置される配置用情報を用いて予め指定された所定の演算を行うようにしてもよい。具体的には、実行部１０５は、操作受付部１０４が受け付けた操作が、予め指定された所定の操作であるか否かを判断し、所定の操作である場合に所定の演算を行う。所定の操作は、上述したように、立体オブジェクトをグループ化する操作等である。所定の演算とは、具体的には、１以上の各立体オブジェクトのそれぞれの面に配置される数値をパラメータとする演算である。演算は例えば、予め指定された演算式に数値を代入して行われても良いし、予め指定されたルールに従って演算が行われても良い。演算式や演算のルールは、例えば図示しない記憶媒体等に予め格納されている。ここで述べる演算は、四則演算のうちの１以上を含む演算である。例えば、演算は、四則演算のうちの１以上を組み合わせた演算である。具体的には、演算は、１以上の各立体オブジェクトのそれぞれの面に配置される数値の和演算、差演算、積演算、または商演算のうちの少なくとも一つを含む演算である。具体例を挙げると、各立体オブジェクトの面に配置された数値を加算する演算である。また、各立体オブジェクトの面に配置された数値に所定の係数等を乗算した値を加算する演算である。所定の操作であるか否かは、例えば、予め指定したコマンドを受け付けたか否かや、予め指定したイベントが発生したか否か等により判断される。所定の操作に応じてとは、所定の操作をトリガーとして一の演算が行われることであっても良いし、所定の操作によって、行われる演算が異なることであっても良いし、その両方であっても良い。また、実行部１０５が、どの立体オブジェクトを演算の対象とするかは問わない。例えば、立体オブジェクトをグループに追加する操作を行った場合、同じグループに含まれる立体オブジェクトに配置されている情報を演算の対象としても良い。また、全ての立体オブジェクトを演算の対象としても良い。また、操作を行う際に指定された、あるいは選択された１以上の立体オブジェクトを演算の対象としても良い。
【００５９】
実行部１０５は、例えば、各立体オブジェクトに配置された情報のうちの、ユーザやデフォルト等により予め指定された情報を用いて演算を行う。実行部１０５は、各立体オブジェクトに配置された情報のうちの、どの情報を演算に用いるようにしても良い。例えば、実行部１０５は、各立体オブジェクトの予め指定された面に配置された数値等の情報を演算のパラメータとしても良い。例えば、立体オブジェクトの面にｘ１面、ｘ２面等の識別情報が付与されている場合、ｘ１面に配置された数値等だけを所定のパラメータとして用いて演算を行っても良い。また、各立体オブジェクトに配置された、予め指定された属性を有する数値等の情報を演算のパラメータとしても良い。予め指定された属性とは、どのような属性でも良く、例えば、価格や、数量等の属性である。例えば、実行部１０５は、所定の操作の対象となった立体オブジェクトから、「円」という文字列を有する配置用情報を検出し、この配置用情報の数値をパラメータとして所定の演算を行っても良い。これにより、属性が価格である数値の演算が行うことができる。また、所定の操作の対象となった立体オブジェクトから、「価格」というタグが付与された配置用情報を検出し、この配置用情報に含まれる数値をパラメータとして所定の演算を行っても良い。
【００６０】
例えば、立体オブジェクトが商品についての立体オブジェクトであり、その表面には、商品名や商品の価格の情報である配置用情報が配置されていたとする。そして、ユーザ等により、複数の立体オブジェクトについてグループ化を行う操作、例えば商品を示す複数の立体オブジェクトを購入対象に選択する処理が行われたとする。この場合、実行部１０５は、グループ化する操作が行われた複数の立体オブジェクトのそれぞれについて、表面に配置されている配置用情報の中から、末尾に予めデフォルト等で指定されている「円」という文字が続いている数値を取得する。そして、実行部１０５は、その数値に予め指定された消費税率、例えば「１．０５」を乗算し、乗算して得られた値を加算して、ユーザが購入対象として選んだ商品の税込み価格の合計を算出する。
【００６１】
実行部１０５は、通常、ＭＰＵやメモリ等から実現され得る。実行部１０５の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはＲＯＭ等の記録媒体に記録されている。但し、ハードウェア（専用回路）で実現しても良い。
【００６２】
ロック面指定情報格納部１０６には、形状情報が示す立体オブジェクトを構成する面のうちの、操作にロックをかけるための面であるロック面を指定する情報であるロック面指定情報が格納され得る。操作にロックをかける、とは、具体的には、立体オブジェクトに対して行われた１以上の操作を無効とすることである。ロック面とは、後述するように、操作にロックをかけるための判断対象となる面である。ロック面が指定可能な情報であればどのような情報であっても良い。
【００６３】
ロック面指定情報は、形状情報が示す立体オブジェクトの面に、上述したように面識別情報が対応付けられている場合、ロック面となる面の面識別情報をロック面指定情報としても良い。また、立体オブジェクトの各面は、法線ベクトルで識別可能であるため、法線ベクトルを、ロック面指定情報としても良い。但し、この実施の形態においては、立体オブジェクトの外側に向かう法線ベクトルを指すものとする。あるいは、ロック面となる面を定義する、立体オブジェクトの頂点の座標群をロック面指定情報としても良い。また、立体オブジェクトが、予め指定された限られた数の配置パターンのみを有している場合等においては、各配置パターンのうちの、前面に表示される面がロック面である配置パターンを識別する情報をロック面指定情報として用いても良い。
【００６４】
ロック面は、一の立体オブジェクトに複数指定されていても良い。ロック面指定情報は、各立体オブジェクト毎に個別に対応付けられていても良いし、複数の立体オブジェクトに一括して対応付けられていても良い。立体オブジェクトと、当該立体オブジェクトのロック面を指定するロック面指定情報とは、どのように対応付けられていても良い。例えば、対応するロック面指定情報と立体オブジェクトの識別情報（あるいは形状情報の識別情報）とが、対応付けられてロック面指定情報格納部１０６に蓄積しておくようにしても良い。ロック面指定情報と立体オブジェクトの識別情報とが対応付けて蓄積される、ということは、例えば、対応するロック面指定情報と立体オブジェクトとが一のレコードの異なるフィールドの値として蓄積されることである。あるいは、対応するロック面指定情報と立体オブジェクトとを、一のレコードの異なるフィールドの値として有する管理情報を、ロック面指定情報格納部１０６や図示しない記憶媒体等に蓄積しておくようにしても良い。
【００６５】
ロック面指定情報格納部１０６に立体オブジェクトと対応付けられたロック面指定情報が蓄積される過程は問わない。例えば、予め、デフォルト等で蓄積されていても良い。また、後述するロック面指定情報受付部１１１が受け付けたロック面指定情報が、立体オブジェクトと対応付けられて蓄積されても良い。ロック面指定情報格納部１０６は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能である。
【００６６】
方向判断部１０７は、配置された立体オブジェクトの、ロック面指定情報が指定するロック面が、予め指定された方向を向いているか否かを判断する。例えば、方向判断部１０７は、オブジェクト配置情報等に応じて仮想三次元空間等に配置された立体オブジェクトの、ロック面指定情報が指定するロック面が、予め指定された方向を向いているか否かを判断する。方向判断部１０７は、例えば、形状情報が示す立体オブジェクトを、当該形状情報に対応付けられたオブジェクト配置情報に応じて、例えばオブジェクト配置情報が示す位置や向きで、仮想三次元空間等に配置した場合に、その立体オブジェクトのロック面が予め指定された方向を向いているか否かを判断する。予め指定された方向は、具体的には、予め指定された操作以外の操作を無効とするか否かを判断するための方向である。操作をロックするか否かを判断するための方向と考えても良い。
【００６７】
なお、方向判断部１０７は、結果的にロック面が予め指定された方向を向いているか否かを判断できればよく、例えば、方向判断部１０７は、ロック面指定情報が指定するロック面がある位置から見て所定の面であるか否かを判断してもよい。具体的には、方向判断部１０７は、ロック面指定情報が指定するロック面が正面であるか否かを判断してもよい。ここで述べる正面とは、通常は、例えばディスプレイ等で出力された場合の、ユーザ側からみて前面に見える面である。ただし、立体オブジェクトが配置される座標系（ワールド座標系）において、予め指定された位置（例えばＺ軸の正方向の位置から）から、予め指定された方向（例えばＺ軸の原点に向かう方向）に向かって立体オブジェクトを見た場合に、前面に位置する立体オブジェクトの面を正面と考えても良い。
【００６８】
方向判断部１０７は、どのように立体オブジェクトのロック面指定情報が指定するロック面が、予め指定された方向を向いていると判断してもよい。例えば、各立体オブジェクトの面の中から、予め指定された方向を向いている面を検出し、この面が、ロック面指定情報が指定する面であるか否かを判断してもよい。具体的には、立体オブジェクトの各面の中から、予め指定された方向を向いている面を検出し、この予め指定された方向を向いている面の面識別情報と、ロック面指定情報である面識別情報とが一致するか否かを判断する。そして、一致する場合に、方向判断部１０７は、ロック面が、予め指定された方向を向いていると判断する。一致しない場合、予め指定された方向を向いていないと判断する。
【００６９】
なお、面がある方向を向く、とは、例えば、面の立体オブジェクトの外側に向かう法線が、ある方向と略平行であることを意味すると考えても良い。立体オブジェクトの面が、予め指定されている方向を向いているか否かは、例えば、立体オブジェクトの一の面の法線ベクトルが、予め指定されている方向を示すベクトルと略平行であるか否かを検出することで判断可能である。あるいは、立体オブジェクトの一の面が、予め指定されている方向を示すベクトルと略垂直であるか否かを検出することでも判断可能である。また、上述したように、立体オブジェクトの取り得る配置についての配置パターンが限られており、いずれの配置パターンにおいても、立体オブジェクトの一の面が上述した予め指定された方向を示す面となるよう設定されているとすると、これらの配置パターンのうちの、予め指定された方向を示している立体オブジェクトの一の面がロック面となる配置パターンを示す識別情報を、ロック面指定情報として用いてもよい。この場合、現在の立体オブジェクトの配置を示す配置パターンの識別情報が、ロック面指定情報と一致する場合、予め指定された方向を向いていると判断することができる。
【００７０】
ここで、略平行とは、完全に平行である場合に加えて、完全に平行な状態から、予め指定された許容範囲だけ傾いている場合も含む状態であることを示す。略垂直とは、完全に垂直である場合に加えて、完全に垂直な状態から、予め指定された許容範囲だけ傾いている場合も含む状態であることを示す。予め指定された許容範囲は、予め設定しておくようにすればよい。
【００７１】
また、ロック面指定情報が指定する各立体オブジェクトのロック面が、予め指定された方向を向いているか否かを判断するようにしても良い。具体的には、各ロック面の法線ベクトルを取得し、この法線ベクトルが、予め指定された方向に略平行であるか否かを判断するようにする。そして、略へ移行であると判断された場合、方向判断部１０７は、ロック面が予め指定された方向を向いていると判断する。
【００７２】
例えば、立体オブジェクトが立方体や直方体であり、各面がそれぞれオブジェクト座標系のｘ軸、ｙ軸、ｚ軸に垂直である場合において、予め指定された方向が、立体オブジェクトの配置されるワールド座標系のＸ軸、Ｙ軸、Ｚ軸のいずれかに平行な方向であったとすると、予め指定された方向を示す軸と、立体オブジェクトのロック面に垂直な軸とが略平行であって、２つの軸の正の方向を示す向きが、予め指定された相対的な関係となる場合、ロック面が予め指定された方向を向いていると判断しても良い。
【００７３】
なお、面がある方向を向く、ということを、例えば、面の立体オブジェクトの外側に向かう法線が、ある一点、もしくは予め指定されたその一点の周辺を含む領域を通過することと考えても良い。例えば、一の面が、正面であるということは、例えば、その法線ベクトルの延長上に、立体オブジェクトの画面をレンダリングする際の視点（カメラ位置）となる点が存在することと考えても良い。このような場合、例えば、立体オブジェクトの、レンダリングの際の視点との距離が最も近い面を、正面となる面と判断するようにしても良い。あるいは視点の代わりに、予め指定された座標を用いても良い。
【００７４】
方向判断部１０７は、操作受付部１０４が、回転や移動等のオブジェクトの配置を変更する操作を受け付けた場合にだけ上記の判断を行うようにしても良い。また、立体オブジェクトのロック面が、予め指定された方向を向いていると判断した直後から、後述するように立体オブジェクトの操作に対する制限が解除されるまでは、上記の判断を行わないようにしても良い。あるいは、上記の判断を、一定または不定の所定のタイミングで繰り返すとともに、後述するように立体オブジェクトの操作に対する制限が解除された直後から、立体オブジェクトに対する所定回数、例えば１回の操作が行われるまでは、上記の判断を行わないようにしても良い。
【００７５】
方向判断部１０７は、通常、ＭＰＵやメモリ等から実現され得る。方向判断部１０７の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはＲＯＭ等の記録媒体に記録されている。但し、ハードウェア（専用回路）で実現しても良い。
【００７６】
操作制限部１０８は、方向判断部１０７が、ロック面指定情報が指定するロック面が予め指定された方向を向いていると判断した場合に、立体オブジェクトに対する操作を制限する。例えば、方向判断部１０７が、立体オブジェクトのロック面が、正面であると判断した場合に、操作制限部１０８は、立体オブジェクトに対する操作を制限する。立体オブジェクトに対する操作を制限する、ということは、例えば、立体オブジェクトに対する操作の一部または全てを無効とする、ということである。具体的には、立体オブジェクトを回転させる操作を含む操作を無効とすることが好ましい。立体オブジェクトを回転できないようにして、立体オブジェクトの様々な面に配置されている配置情報が第三者に見られないようにすることができ、セキュリティを確保できるからである。
【００７７】
操作の制限対象となる立体オブジェクトは、例えば、少なくとも、ロック面が予め指定された方向を向いている立体オブジェクトを含む立体オブジェクトである。例えば、ロック面が予め指定された方向を向いている立体オブジェクトに対する操作だけが制限されても良い。また、全ての立体オブジェクトに対する操作が制限されても良い。立体オブジェクトに対する操作を制限するということは、立体オブジェクトに対する操作の少なくとも一部にロックをかけることと考えても良い。立体オブジェクトに対する操作も含めて、情報処理装置１に対する他の操作も制限するようにしても良い。なお、立体オブジェクトの操作に、後述する操作の制限を解除するための操作を含むと考えた場合、操作制限部１０８が行う操作の制限は、例えば、立体オブジェクトに対する操作のうちの、少なくともこの操作の制限を解除するための操作を除いた操作を無効とすることとすることが好ましい。なお、立体オブジェクトの操作に、後述する操作の制限を解除するための操作が含まれない場合、操作制限部１０８が行う操作の制限は、例えば、立体オブジェクトに対する全ての操作を無効とすることとであってもよい。
【００７８】
操作を制限するということは、結果的に、立体オブジェクト対して行われた少なくとも一部の操作が無効になればよく、どのように、操作を無効にするかは問わない。例えば、操作受付部１０４が、立体オブジェクトに対する立体オブジェクトに対する操作を受け付けないよう、操作受付部１０４に指示することであっても良い。また、操作受付部１０４が、操作を受け付けた後、その操作が立体オブジェクトに対する操作であった場合、その操作により発生する指示やイベント等を無視したり、破棄したりするよう、操作受付部１０４に指示することであっても良い。また、操作受付部１０４が受け付けた操作が無効の対象となる操作である場合、実行部１０５に対し、その操作に応じて受け付ける指示等を無視したり、指示に応じた操作を行わないよう指示することであっても良い。どのような操作を制限するかを設定する情報は、例えば、予め図示しない記憶媒体等の格納部に格納しておくようにすればよい。例えば、制限によって無効とされる操作によって発生するイベントや指示等のリストの情報を、予め格納しておくようにすればよい。
【００７９】
例えば、操作制限部１０８は、方向判断部１０７が示す、ロック面指定情報が指定するロック面が予め指定された方向を向いているか否かの判断結果を、一定または不定の所定のタイミング等で繰り返し取得し、取得した判断結果が、ロック面が予め指定された方向を向いていることを示す判断結果である場合に、立体オブジェクトに対する操作を制限するよう、操作受付部１０４や実行部１０５に指示するようにしても良い。
【００８０】
また、操作制限部１０８は、方向判断部１０７がロック面指定情報の指定するロック面が予め指定された方向を向いているか否かの判断結果が取得した以降は、方向判断部１０７の判断結果に関係なく、立体オブジェクトに対する操作を制限するよう、操作受付部１０４等に指示するようにしても良い。
【００８１】
また、操作制限部１０８は、操作可否情報格納部１１３に格納されている操作可否情報が、操作を制限することを示す操作可否情報であるか否かを判断し、操作を制限することを示す操作可否情報である場合、立体オブジェクトに対する操作を制限するよう、操作受付部１０４等に指示するようにしても良い。
【００８２】
操作制限部１０８は、例えば、操作受付部１０４が立体オブジェクトに対する操作の制限を解除するための操作を受け付けた場合に、操作に対する制限を解除する。操作受付部１０４が受け付ける立体オブジェクトに対する操作の制限を解除するための操作は、予め指定されたパスワードを入力する一連の操作や、特殊なキーの組合せを入力する操作である。なお、操作受付部１０４が受け付けた操作の制限を解除するためのパスワード入力等の操作において、その入力内容が適切なものであるか否か等を判断する処理や、その判断のための構成は、通常の認証処理等において公知の技術であるので、ここでは説明を省略する。このような構成は、操作受付部１０４が有していても良いし、操作制限部１０８が有していても良い。
【００８３】
例えば、操作受付部１０４が立体オブジェクトに対する操作の制限を解除するための操作を受け付けた場合に、操作制限部１０８は、立体オブジェクトに対する操作の制限を解除するよう、操作受付部１０４や実行部１０５に指示するようにしても良い。
【００８４】
なお、操作制限部１０８は、操作受付部１０４が立体オブジェクトに対する操作の制限を解除するための操作を受け付けた場合、具体的には、操作受付部１０４が、後述する操作可否情報格納部１１３に格納されている操作を制限する操作可否情報を、操作制限しない操作可否情報に変更させるための操作を受け付けた場合に、操作可否情報格納部１１３に格納されている操作を制限することを示す操作可否情報を、操作を制限しないことを示す操作可否情報に変更してもよい。
【００８５】
なお、上記のように立体オブジェクトに対する操作の制限が解除された場合、その直後の、立体オブジェクトに対する所定回数、例えば１回の操作においては、方向判断部１０７がロック面が予め指定された方向を向いているか否かの判断を行わないようにする、もしくは、操作制限部１０８が方向判断部１０７の判断結果に関係なく、操作の制限を行わないようにして、立体オブジェクトに対する操作を受け付け可能として、解除直後に、立体オブジェクトの操作に制限が再度加えられることを防ぐようにしても良い。
【００８６】
また、上記のように立体オブジェクトに対する操作の制限が解除された場合、立体オブジェクトに対する所定回数の、配置を変更する操作を受け付けるまで、方向判断部１０７はロック面が予め指定された方向を向いているか否かの判断を行わないようにする、もしくは、操作制限部１０８が方向判断部１０７の判断結果に関係なく、操作の制限を行わないようにして、立体オブジェクトに対する操作を受け付け可能としてもよい。
【００８７】
あるいは、立体オブジェクトに対する制限が解除された直後に、立体オブジェクトのロック面が、予め指定された方向を向かないよう立体オブジェクトの配置を自動的に変更して、再度操作の制限がかからないようにしてもよい。
【００８８】
操作制限部１０８は、通常、ＭＰＵやメモリ等から実現され得る。操作制限部１０８の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはＲＯＭ等の記録媒体に記録されている。但し、ハードウェア（専用回路）で実現しても良い。
【００８９】
画像情報構成部１０９は、立体オブジェクトの形状情報と、形状情報が示す立体オブジェクトの１以上の面に配置される配置用情報とを読み出し、読み出した形状情報が示す１以上の面に対し、それぞれに対応した配置用情報を配置した立体オブジェクトの画像情報を構成する。また、画像情報構成部１０９は、立体オブジェクトの形状情報と、形状情報が示す立体オブジェクトの１以上の面に配置される配置用情報と、立体オブジェクトに対応するオブジェクト配置情報とを読み出し、読み出した形状情報が示す１以上の面に対し、それぞれに対応した配置用情報を配置した立体オブジェクトを、オブジェクト配置情報が示すよう配置した画像情報を構成しても良い。また、画像情報構成部１０９は、上述した操作の制限を解除するための入力インターフェース画面、例えばパスワード入力画面等を、操作が制限された立体オブジェクト等に対する操作や、情報処理装置１に対する他の操作に応じて構成し、後述する出力部１１０から出力するようにしてもよい。
【００９０】
画像情報構成部１０９は、通常、ＭＰＵやＧＰＵやメモリ等から実現され得る。画像情報構成部１０９の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはＲＯＭ等の記録媒体に記録されている。但し、ハードウェア（専用回路）で実現しても良い。
【００９１】
出力部１１０は、画像情報構成部１０９が構成した画像情報を出力する。ここで述べる出力とは、ディスプレイへの表示、プロジェクターを用いた投影、外部の装置への送信、他の処理装置や他のプログラムなどへの処理結果の引渡しなどを含む概念である。
【００９２】
出力部１１０は、ディスプレイやスピーカー等の出力デバイスを含むと考えても含まないと考えても良い。出力部１１０は、出力デバイスのドライバーソフトまたは、出力デバイスのドライバーソフトと出力デバイス等で実現され得る。
【００９３】
ロック面指定情報受付部１１１は、形状情報格納部１０１に格納されている一の立体オブジェクトに対するロック面指定情報を受け付ける。例えば、ロック面指定情報受付部１１１は、マウスやタッチパッドやキーボード等により、立体オブジェクトの１以上の面を指定し、この指定した面をロック面を設定する指示を与えることで、この指定された面をロック面に指定するロック面指定情報を取得する。あるいは、予め用意された一の立体オブジェクトに対するロック面指定情報をユーザ等から受けつけても良い。
【００９４】
ロック面指定情報受付部１１１に対する情報の入力手段は、テンキーやキーボードやマウスやメニュー画面によるもの等、何でも良い。ロック面指定情報受付部１１１は、テンキーやキーボード等の入力手段のデバイスドライバーや、メニュー画面の制御ソフトウェア等で実現され得る。
【００９５】
ロック面指定情報蓄積部１１２は、形状情報格納部１０１に格納されている１以上の立体オブジェクトのそれぞれについて、ロック面指定情報受付部１１１が受け付けたロック面指定情報が指定する面と同じ面を指定するロック面指定情報を取得し、取得したロック面指定情報を各立体オブジェクトと対応付けて、ロック面指定情報格納部１０６に格納する。ロック面指定情報が指定する面と同じ面とは、例えば、複数の立体オブジェクトが同じ、もしくは相似形の立体オブジェクトであって、複数の立体オブジェクト間で、一致、もしくは対応する面に、同じ識別情報が割り当てられていた場合、一の立体オブジェクトの一の面を指定するロック面指定情報をロック面指定情報受付部１１１が受け付けた場合、この一の面の識別情報と同じ識別情報を有する他の立体オブジェクトの面を指定するロック面指定情報が取得され、取得したロック面指定情報が各立体オブジェクトと対応付けられて、ロック面指定情報格納部１０６に蓄積される。
【００９６】
ロック面指定情報蓄積部１１２は、通常、ＭＰＵやメモリ等から実現され得る。ロック面指定情報蓄積部１１２の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはＲＯＭ等の記録媒体に記録されている。但し、ハードウェア（専用回路）で実現しても良い。
【００９７】
操作可否情報格納部１１３には、立体オブジェクトに対する操作の制限を行うか否かを示す情報である操作可否情報が格納され得る。操作可否情報は、立体オブジェクトと個別に対応付けて格納されていても良いし、対応付けて格納されていなくても良い。操作可否情報は、結果的に、立体オブジェクトに対する操作の制限を行うか否かを示すことが可能な情報であればよい。操作可否情報は、例えば、操作の制限が行われることを示す情報だけであっても良い。この場合、操作可否情報が蓄積されていなければ、結果的に、操作可否情報によって操作が可能であることが示されていることとなる。操作可否情報は操作の制限が行われている場合と行われていない場合とで値が異なる、もしくは値の有無が変更されるいわゆるフラグの情報であってもよい。なお、操作可否情報格納部１１３には、方向判断部１０７等が、最新の操作可否情報が参照できるように、操作可否情報が蓄積されれば、操作可否情報がどのように蓄積されても良い。例えば、新しい操作可否情報が蓄積される際に、古い操作可否情報を上書きするようにしても良い。あるいは、古い操作可否情報には、最新でないことを示すフラグ等の情報を付与するようにしてもよい。操作可否情報格納部１１３は、不揮発性の記録媒体でも、揮発性の記録媒体でも良い。
【００９８】
次に、情報処理装置１の動作について図２のフローチャートを用いて説明する。ここでは、一の立体オブジェクトのロック面が所定の方向を向いていると判断された場合、全ての立体オブジェクトに対する操作を制限する場合を例に挙げて説明する。
【００９９】
（ステップＳ１００）画像情報構成部１０９は、形状情報格納部１０１から立体オブジェクトの形状情報を読み出し、各立体オブジェクトに対応したオブジェクト配置情報および配置用情報を、オブジェクト配置情報格納部１０２および配置用情報格納部１０３から読み出して、各面に配置用情報が配置された立体オブジェクトが、オブジェクト配置情報が示す位置および方向に配置された画像情報を構成する。
【０１００】
（ステップＳ１０１）出力部１１０は、画像情報構成部１０９が構成した画像情報を出力する。例えば、モニタ等に表示する。
【０１０１】
（ステップＳ１０２）操作制限部１０８は、操作可否情報格納部１１３に格納されている操作可否情報が、立体オブジェクトに対する操作が制限されていることを示すものであるか否かを判断する。ここでは、例として、１以上の立体オブジェクトに対して一の操作可否情報だけが格納され得るものであるとする。なお、操作可否情報の初期値は、操作が制限されていないことを示す値であるとする。操作が制限されていることを示す操作可否情報でない場合、どのような操作を受け付けても良いことを操作受付部１０４に指示してステップＳ１０５に進む。具体的には、操作制限を解除する処理に限らない立体オブジェクトに対する処理を指示するための操作を受け付けて良いことを操作受付部１０４に指示する。また、操作が制限されていることを示す操作可否情報である場合、制限された操作だけを受け付けるよう操作受付部１０４に指示してステップＳ１１４に進む。ここでは、例として、制限された操作が、操作制限を解除するための処理であるとする。
【０１０２】
（ステップＳ１０３）ロック面指定情報受付部１１１は、ロック面指定情報を受けつけたか否かを判断する。受け付けた場合、ステップＳ１１６に進み、受け付けていない場合、ステップＳ１０４に進む。
【０１０３】
（ステップＳ１０４）操作受付部１０４は、立体オブジェクトに対する操作を受け付けたか否かを判断する。ここで受け付ける操作は、どのような操作であっても良い。受け付けた場合、ステップＳ１０５に進み、受け付けていない場合、ステップＳ１０３に戻る。
【０１０４】
（ステップＳ１０５）実行部１０５は、操作受付部１０４が受け付けた操作に応じた処理を、立体オブジェクトに実行させる。例えば、立体オブジェクトの配置、例えば位置や、向きを変更する処理を実行しても良い。また、配置の変更に応じて、立体オブジェクトに配置されている配置用情報を用いて、予め指定された演算を行っても良い。また、操作に応じて、立体オブジェクトに配置されている配置用情報を変更してもよい。また、操作受付部１０４が受け付けた操作が、予め指定された操作である場合、操作に応じて、オブジェクト配置情報を変更し、立体オブジェクトの配置用情報から、数値を取得し、その数値の演算を行うようにしても良い。
【０１０５】
（ステップＳ１０６）方向判断部１０７は、カウンターｎに１を代入する。
【０１０６】
（ステップＳ１０７）方向判断部１０７は、カウンターｋに１を代入する。
【０１０７】
（ステップＳ１０８）方向判断部１０７は、ｎ番目の立体オブジェクトにｋ番目のロック面があるか否かを判断する。具体的には、ｎ番目の立体オブジェクトに対応したｋ番目のロック面指定情報がロック面指定情報格納部１０６に蓄積されているか否かを判断する。蓄積されている場合、ステップＳ１０９に進み、蓄積されていない場合、ステップＳ１１１に進む。
【０１０８】
（ステップＳ１０９）方向判断部１０７は、ｋ番目のロック面が予め指定された方向を向いているか否かを判断する。例えば、ｋ番目のロック面指定情報が示す面の法線ベクトルが、予め指定された方向を示す法線ベクトルと略平行であるか否かを判断する。そして、略平行であれば、予め指定された方向を向いていると判断し、略平行でなければ、予め指定された方向を向いていないと判断する。また、立体オブジェクトの取り得る配置パターンが限られている場合（例えば、立体オブジェクトの取り得る向きがいくつかのパターンに限定されている場合）、各配置パターンで立体オブジェクトを配置した場合の、予め指定された向きとなる面の面識別情報を、配置パターンと対応付けてオブジェクト配置情報格納部１０２等に予め格納しておく。そしてオブジェクト配置情報を用いて取得される現在の立体オブジェクトの配置パターンから、予め指定された方向を向いている面の面識別情報を取得し、この面識別情報が示す面が、ｋ番目のロック面指定情報が示す面と一致するか否かを判断するようにしても良い。そして一致する場合、ロック面が予め指定された方向を向いていると判断するようにし、一致しない場合、ロック面が予め指定された方向を向いていないと判断するようにしてもよい。ｋ番目のロック面が予め指定された方向を向いていない場合、ステップ１１０に進み、予め指定された方向を向いている場合、ステップＳ１１３に進む。
【０１０９】
（ステップＳ１１０）方向判断部１０７は、カウンターｋを１インクリメントする。そして、ステップＳ１０８に戻る。
【０１１０】
（ステップＳ１１１）方向判断部１０７は、カウンターｎを１インクリメントする。
【０１１１】
（ステップＳ１１２）方向判断部１０７は、ｎ番目の立体オブジェクトがあるか否かを判断する。ある場合、ステップＳ１０７に戻り、ない場合、ステップＳ１０３に戻る。
【０１１２】
（ステップＳ１１３）方向判断部１０７は、操作可否情報格納部１１３に格納されている操作可否情報を、立体オブジェクトに対する操作を制限することを示す操作可否情報に変更する。例えば、既に格納されている操作可否情報を上書きするように、立体オブジェクトに対する操作を制限することを示す操作可否情報を蓄積する。そして、ステップＳ１０２に戻る。
【０１１３】
（ステップＳ１１４）操作受付部１０４は、立体オブジェクトに対する操作制限を解除するための操作を受け付けたか否かを判断する。例えば、操作制限を解除するための特定の指示の入力、例えば特定のキーの組合せの入力を受け付けたか否かを判断する。あるいは、操作制限を解除するために用意されたパスワードと一致するパスワードを受け付けたか否かを判断してもよい。受け付けた操作が、操作制限を解除するための操作である場合、ステップＳ１１５に進み、解除するための操作でない場合、ステップＳ１０２に戻る。
【０１１４】
（ステップＳ１１５）操作制限部１０８は、操作制限を行わないことを示す操作可否情報を操作可否情報格納部１１３に蓄積する。例えば、操作制限部１０８は、操作可否情報格納部１１３に格納されている操作可否情報を、操作に対する制限が行われていないことを示す操作可否情報で上書きして蓄積する。そして、操作受付部１０４にどのような操作を受けつけても良いことを指示して、ステップＳ１０３に戻る。
【０１１５】
なお、各立体オブジェクトに対して個別に、操作可否情報を設けるようにし、ステップＳ１０２において、操作対象となる１以上の各立体オブジェクトについて、それぞれに対応する操作可否情報が操作を制限することを示すものであるか否かを判断し、１以上の操作可否情報が操作を制限することを示すものである場合には、ステップＳ１１４に進み、操作を制限することを示す操作可否情報がない場合には、ステップＳ１０３に進むようにしてもよい。
【０１１６】
また、操作を制限することを示す操作可否情報に応じて行われる操作の制限によって受け付け可能となる操作は、制限解除の操作に限るものではなく、例えば、制限解除の操作に加えて、その他の操作も受け付け可能として良い。
【０１１７】
また、ステップＳ１０２とステップＳ１１４との間のステップとして、制限解除のためのパスワード入力のインターフェース画面等を出力するための操作を受け付けたか否かを判断するステップや、この操作に応じてインターフェース画面を出力するステップや、このインターフェース画面を介して、パスワード入力を受け付けたか否かを判断するステップや、入力されたパスワードが、制限解除のためのパスワードであるか否かを判断するステップ等を設けるようにしても良い。この場合、入力されたパスワードが制限解除のパスワードである場合に、ステップＳ１１４で制限解除の操作を受け付けたと判断するようにしても良い。
【０１１８】
なお、図２のフローチャートにおいて、電源オフや処理終了の割り込みにより処理は終了する。
【０１１９】
以下、本実施の形態における情報処理装置１の具体的な動作について説明する。ここでは、情報処理装置１により、商品についてのカタログを表示する場合を例に挙げて説明する。ここでは、立体オブジェクトが立方体である場合を例に挙げて説明する。なお、本具体例において示しているサイズや角度等は、あくまでも説明のための便宜上のものであり、図等の立体オブジェクトの配置やサイズ等を正確に示さない場合がある。
【０１２０】
図３は、形状情報格納部１０１に格納されている形状情報を管理するための形状情報管理表である。形状情報は、ここでは例として予め用意されたものが蓄積されているものとする。形状情報管理表は、「オブジェクトＩＤ」、「サイズｘ」、「サイズｙ」、「サイズｚ」、「ｘ１面」、「ｘ２面」、「ｙ１面」、「ｙ２面」、「ｚ１面」、「ｚ２面」という項目を有している。「オブジェクトＩＤ」は立体オブジェクトを識別するための識別情報である。「サイズｘ」は、立体オブジェクトのｘ軸方向の長さ、すなわち幅である。「サイズｙ」は、立体オブジェクトのｙ軸方向の長さ、すなわち高さである。「サイズｚ」は、立体オブジェクトのｚ軸方向の長さ、すなわち奥行きである。ただし、ここで述べるｘ軸、ｙ軸、ｚ軸は、立体オブジェクト自身に設定されるｘ軸、ｙ軸、ｚ軸であり、仮想三次元空間に設定される絶対的なＸ軸、Ｙ軸、Ｚ軸とは異なる。立体オブジェクト自身に設定されるｘ軸、ｙ軸、ｚ軸の原点は、例えば、立体オブジェクトの中心や重心に設定される。なお、各サイズの単位等は、ピクセル等どのような単位であっても良い。ｘ１面、ｘ２面、ｙ１面、ｙ２面、ｚ１面およびｚ２面は、各立体オブジェクトを構成する面の面識別情報である。これらの面識別情報が示す面は、図示していないが、各面を構成する立体オブジェクトの頂点の座標等を用いて定義されているものとする。面の定義や、面に識別情報を対応付ける技術等については、三次元モデリングの技術等において公知であるので、ここでは説明を省略する。形状情報管理表の「ｘ１面」、「ｘ２面」、「ｙ１面」、「ｙ２面」、「ｚ１面」および「ｚ２面」の項目の値は、各面識別情報が示す面の法線のベクトルを示している。ただし、ここでの法線は、立体オブジェクト内から外側に向かう方向のベクトルであるとする。また、ここでは例として、各立体オブジェクトの中心にｘ軸、ｙ軸、ｚ軸の０点が位置しているものとする。ここでは、「ｘ１面」はｘ軸の正方向を法線とする面、「ｘ２面」はｘ軸の負方向を法線とする面、「ｙ１面」はｙ軸の正方向を法線とする面、「ｙ２面」はｙ軸の負方向を法線とする面、「ｚ１面」はｚ軸の正方向を法線とする面、「ｚ２面」はｚ軸の負方向を法線とする面である。ここでは、形状情報管理表により、３つの立体オブジェクトの形状情報が管理されている。
【０１２１】
図４は、立体オブジェクトと、ｘ１面、ｘ２面、ｙ１面、ｙ２面、ｚ１面およびｚ２面との関係を示すための模式図である。この図においては、ｚ１面が正面、ｚ２面が背面、ｘ１面が右側面、ｘ２面が左側面、ｙ１面が上面、ｙ２面が底面となっている。
【０１２２】
図５は、オブジェクト配置情報格納部１０２に格納されているオブジェクト配置情報を管理するためのオブジェクト配置情報管理表である。オブジェクト配置情報は、ここでは例として、予め用意されたものが蓄積されているものとする。オブジェクト配置情報は、「オブジェクトＩＤ」、「座標（Ｘ，Ｙ，Ｚ）」、および「回転角度（Ｘ，Ｙ，Ｚ）」という項目を有している。「オブジェクトＩＤ」は、立体オブジェクトを識別するための識別情報であり、上述した形状情報の「オブジェクトＩＤ」と対応している。「座標（Ｘ，Ｙ，Ｚ）」は、同じレコードの「オブジェクトＩＤ」が示す立体オブジェクトが配置される仮想三次元空間内の座標を示す情報であり、ここでは、立体オブジェクトの中心の座標である場合について説明する。ここでは、この座標の値は、仮想三次元空間内の座標の値であるとする。なお、ここでは、仮想三次元空間内の横方向（幅方向）をＸ軸、縦方向（高さ方向）をＹ軸、奥行き方向をＺ軸とする。また、「回転角度（Ｘ，Ｙ，Ｚ）」は、仮想三次元空間のＸ軸、Ｙ軸、Ｚ軸をそれぞれ回転軸とした回転角度を示す。回転角度は、立体オブジェクトの配置される方向を示す情報と考えても良い。例えば、立体オブジェクトをＹ軸を回転軸にして９０度回転させると、立体オブジェクトのｘ軸とｙ軸は、それぞれ仮想三次元空間のＸ軸およびＹ軸とそれぞれ直交することとなる。なお、それぞれの値が（０，０，０）である場合、立体オブジェクトのｘ軸、ｙ軸、ｚ軸が、それぞれ仮想三次元空間内のＸ軸、Ｙ軸、Ｚ軸に平行に配置されるものとする。なお、立体オブジェクトが配置される位置の奥行きを変更する必要がない場合、例えば、レンダリングした立体オブジェクトの画像を２次元平面上に配置する場合等においては、Ｚ座標の値は省略しても良い
【０１２３】
図６は、配置用情報格納部１０３に格納されている配置用情報を示す図である。ここでは、例として配置用情報がＸＭＬ（Ｅｘｔｅｎｓｉｂｌｅ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）形式の情報を構成している場合について説明する。ただし、配置用情報は、ＸＭＬ形式の情報でなくても良く、例えば、情報を項目や属性別等に参照可能な形式のデータであれば良い。図６に示したＸＭＬ形式の情報においては、便宜上、配置用情報は、開始タグと終了タグとにより囲まれた情報とで構成される情報であると考える。例えば、「＜商品名＞」と「＜／商品名＞」とで区切られた範囲のタグ付けられた情報が、一の商品の商品名を示す配置用情報である。また、「＜価格＞」と「＜／価格＞」とで区切られた範囲のタグ付けられた情報が、一の商品の詳細について示す情報のうちの価格を示す配置用情報である。また、「＜商品＞」と「＜／商品＞」で区切られた範囲の配置用情報は、一の商品についての配置用情報であり、一の立体オブジェクトに配置され得る配置用情報であるとする。ここでは、例として、配置用情報が、携帯電話についての情報であるとする。なお、配置用情報として、ファイル等を指定する情報、例えばリンク情報が含まれる場合、これにより指定されたファイルの情報が配置用情報となる。リンク先の情報は、画像を構成する際等に適宜読み出される。配置用情報は、ここでは例として、予め用意されたものが蓄積されているものとする。
【０１２４】
図７は、配置用情報格納部１０３に格納されている、配置用情報と、当該配置用情報が配置される立体オブジェクトと、配置される面との対応関係を管理するための配置用情報管理表を示す図である。配置用情報は、立体オブジェクトと対応付けて管理されている。配置指定情報管理表は、「オブジェクトＩＤ」という項目と、「商品ＩＤ」という項目と、「配置面」という項目とを有している。「配置面」は更に、「ｚ１面」、「ｘ１面」、「ｙ１面」という項目を有している。「オブジェクトＩＤ」は、図３に示したオブジェクトＩＤに相当する。「商品ＩＤ」は、「オブジェクトＩＤ」が示す立体オブジェクトと対応付けられた配置用情報を指定する情報であり、ここでは、図６に示した配置用情報のうちの商品ＩＤタグを示す情報である。即ち、この「商品ＩＤ」の値と一致する要素を有する商品ＩＤタグと対応付けられた配置用情報が、「配置用情報」が指定する配置用情報である。「配置面」は、立体オブジェクトの各面に配置される配置用情報のタグを指定する情報であり、「ｚ１面」、「ｘ１面」、「ｙ１面」は、それぞれ、立体オブジェクトの面識別情報がｚ１面、ｘ１面、ｙ１面である面にそれぞれ配置される配置用情報のタグを指定する情報である。ここでは、立体オブジェクトの各面には、「配置面」の値が示すタグが付与された情報が配置されるものとする。例えば、立体オブジェクト「ＯＢＪ１」のｚ１面には、「商品ＩＤ」タグの値が、「ＳＥＲ１３４５」で、「配置面」の「ｚ１面」の項目の値である「商品名」タグが付けられた配置用情報が配置される。なお、「配置面」の項目の値であるタグは、配置用情報を取得するための条件を示す情報である取得条件情報と考えても良い。
【０１２５】
まず、例えば、ユーザが、情報処理装置１に対して、商品についてのカタログを表示する指示を与えたとすると、画像情報構成部１０９は、図５に示したオブジェクト配置情報管理表で管理されているオブジェクト配置情報を読み出す。即ち、「ＯＢＪ１」から「ＯＢＪ３」までの「オブジェクトＩＤ」に対応したオブジェクト配置情報である「座標（Ｘ，Ｙ，Ｚ）」、および「回転角度（Ｘ，Ｙ，Ｚ）」の項目の値を読み出す。そして、例えば、「オブジェクトＩＤ」と対応付けて、図示しないメモリ等に一時記憶する。
【０１２６】
つぎに、情報処理装置１の画像情報構成部１０９は、配置用情報と対応付けられている立体オブジェクトについての形状情報を取得する。即ち、図５に示した配置用情報管理表の「オブジェクトＩＤ」の値を全て取得し、この値と一致する「オブジェクトＩＤ」と対応付けられた立体オブジェクトの形状情報を図３に示した形状情報管理表から読み出す。ここでは、図３に示した「オブジェクトＩＤ」が「ＯＢＪ１」から「ＯＢＪ３」までの形状情報を読み出し、例えば、「オブジェクトＩＤ」と対応付けて、メモリ等に一時記憶する。
【０１２７】
次に、画像情報構成部１０９が、形状情報を読み出した立体オブジェクト、すなわち「オブジェクトＩＤ」が「ＯＢＪ１」〜「ＯＢＪ３」である各立体オブジェクト（以下、立体オブジェクト「ＯＢＪ１」〜「ＯＢＪ３」と称す）を構成する面に配置する配置用情報を、図６に示す配置用情報の中から、図７に示した配置用情報管理表を用いて、以下のように取得する。
【０１２８】
まず、立体オブジェクト「ＯＢＪ１」を構成する各面、ここではｚ１面、ｘ１面、ｙ１面にそれぞれ配置される配置用情報のタグを、図７に示した配置用情報管理表から読み出す。具体的には、図７に示した配置用情報管理表の「オブジェクトＩＤ」が「ＯＢＪ１」であるレコードの「商品ＩＤ」の項目の値「ＳＥＲ１３４５」を読み出す。そして、図６に示した配置用情報のうちの、要素が「ＳＥＲ１３４５」である商品ＩＤタグを有する商品の情報、即ち要素が「ＳＥＲ１３４５」である商品ＩＤタグを有する「＜商品＞」タグから「＜／商品＞」タグに囲まれた情報を特定する。次に、図７に示した配置用情報管理表の「オブジェクトＩＤ」が「ＯＢＪ１」であるレコードの「ｚ１面」、「ｘ１面」、「ｙ１面」の項目の値であるタグ名、商品名、詳細、および商品写真を順次読み出し、図６に示した配置用情報のうちの上記で特定した、要素が「ＳＥＲ１３４５」である商品ＩＤタグを有する商品の情報から、それぞれのタグと一致するタグ名を有するタグを検出し、検出したタグの要素を順次取得する。取得したタグの要素が、「オブジェクトＩＤ」が「ＯＢＪ１」である立体オブジェクトのｚ１面、ｘ１面、ｙ１面にそれぞれ配置される配置用情報である。
【０１２９】
例えば、図７に示した配置用情報管理表の「オブジェクトＩＤ」が「ＯＢＪ１」であるレコードの「ｚ１面」の値は、「商品名」というタグであるため、図７に示した要素が「ＳＥＲ１３４５」である商品ＩＤタグを含む配置用情報から、商品名タグを検出し、この商品名タグの要素である「ＢＳ６０２」をｚ１面に配置する配置用情報として取得する。同様に、ｘ１面、ｙ１面についても配置用情報を取得する。取得した情報は、例えば、立体オブジェクトの識別情報と対応付けて、図示しないメモリ等の記憶媒体に一時記憶する。
【０１３０】
以下、同様にして、立体オブジェクト「ＯＢＪ２」〜「ＯＢＪ３」についてもそれぞれ、配置用情報を取得する。
【０１３１】
そして、画像情報構成部１０９は、立体オブジェクト「ＯＢＪ１」〜「ＯＢＪ３」の画像情報を構成する。
【０１３２】
具体的には、画像情報構成部１０９が取得した立体オブジェクト「ＯＢＪ１」〜「ＯＢＪ３」の形状情報が示す立体オブジェクトのｚ１面、ｘ１面、ｙ１面上に、各立体オブジェクト「ＯＢＪ１」〜「ＯＢＪ３」のｚ１面、ｘ１面、ｙ１面に対応して画像情報構成部１０９が取得した配置用情報を配置し、さらに、これらの立体オブジェクトを立体オブジェクト「ＯＢＪ１」〜「ＯＢＪ３」に対応して画像情報構成部１０９が取得した配置用情報が示す位置及び向きで配置した画像情報を構成する。具体的にはいわゆるレンダリング処理を行う。なお、ここでは、各立体オブジェクトの投影図が構成されるように、仮想三次元空間内の座標軸、つまりワールド空間の座標軸や、レンダリングの際の画角等のパラメータが予め設定されているものとする。
【０１３３】
そして、出力部１１０は、画像情報構成部１０９が構成した画像情報を出力する。ここでは、出力部１１０は、モニタ５０４に接続されており、当該モニタ５０４に合成した立体オブジェクトの画像情報を表示する。
【０１３４】
図８は画像情報構成部１０９が構成した画像情報の表示例を示す図である。図８において、立体オブジェクト８０１は立体オブジェクト「ＯＢＪ１」、立体オブジェクト８０２は、立体オブジェクト「ＯＢＪ２」、立体オブジェクト８０３は、立体オブジェクト「ＯＢＪ３」であるとする。なお、本実施の形態において座標の値や図に示される立体オブジェクトの表示されており、各商品とその商品に関連する仕様等の情報との対応関係が容易に把握で位置等については、説明のためのものであり、実際のサイズ等に合わせて正確に描かれたものではない。図８に示すように、各立体オブジェクトは、それぞれが商品に対応しており、各商品の商品名や商品画像や、仕様や価格等が、それぞれの立体オブジェクトの面にきるようになっている。ここでは、仮想三次元空間のＺ軸の正の側からＺ軸の負の側に向かって見た場合に、前面に位置する面を正面と考える。例えば、図８においては、各立体オブジェクト「ＯＢＪ１」〜「ＯＢＪ３」のｚ１面が正面となっている。
【０１３５】
図９は、ロック面指定情報格納部１０６に格納されているロック面指定情報を管理するロック面指定情報管理表である。ロック面指定情報管理表は、「オブジェクトＩＤ」と「ロック面」という項目を有している。「オブジェクトＩＤ」は、図３に示したオブジェクトＩＤに相当する。「ロック面」は、ロック面指定情報であり、ここでは、ロック面に指定された面の面識別情報である。例えば、図９においては、上から１番目のレコードは、「オブジェクトＩＤ」が「ＯＢＪ１」である立体オブジェクトのロック面が、「ｙ２面」であることを示している。
【０１３６】
図１０は、操作可否情報格納部１１３に格納されている操作可否情報を示している。操作可否情報は、例えばフラグ情報である。ここでは、値が、「０」であれば、全ての立体オブジェクトに対する操作が制限されていない、つまり制限が解除されていることを示し、値が「１」であれば、全ての立体オブジェクトに対する操作が制限されていることを示す。ここでの操作に対する制限とは、例えば、制限を解除するための情報を入力するための操作以外の操作を無効とすることであるとする。
【０１３７】
操作制限部１０８は、操作可否情報格納部１１３に格納されている操作可否情報が、立体オブジェクトに対する操作が制限されていることを示すものであるか否かを判断する。ここでは、図１０に示すように、操作可否情報の値は、初期値の「０」であり、操作が制限されていないことを示している。このため、操作制限部１０８は、操作受付部１０４に対して、どのような操作を受けつけても良いことを指示する。または、受け付ける操作を制限しないようにすることを指示してもよい。あるいは、立体オブジェクトについてデフォルト等で指定されている、操作を制限しない場合に受け付け可能な操作を受け付けることを指示してもよい。
【０１３８】
つぎに、ユーザが、出力された立体オブジェクト８０１、即ち立体オブジェクト「ＯＢＪ１」を、仮想三次元空間のＸ軸を回転軸として、上方向に９０°回転させるための操作を行ったとする。例えば、ここでは、立体オブジェクト上にポインタをおいて、マウスをドラッグすると、そのドラッグの方向に立体オブジェクトが９０°回転するものとし、ユーザが立体オブジェクト８０１上にポインタをおいて、マウスを上方向にドラッグしたとする。なお、この操作は、立体オブジェクトを回転させるためのメニュー項目を選択する操作等であっても良い。
【０１３９】
実行部１０５は、操作受付部１０４が受け付けた、立体オブジェクトを仮想三次元空間（ワールド空間）のＸ軸を回転軸として上方向に９０°回転させるための操作に応じて、立体オブジェクト８０１に対する処理を行い、立体オブジェクトの向きを変更する。具体的には、立体オブジェクト「ＯＢＪ１」のオブジェクト配置情報の「回転角度」のｘの値を、初期値である「０」から「−９０°」に変更する。なお、このとき、実行部１０５は、操作受付部１０４が操作を受け付けた操作対象の立体オブジェクト以外の他の立体オブジェクトの配置情報も同じように変更しても良い。即ち、上記の場合、立体オブジェクト「ＯＢＪ２」や立体オブジェクト「ＯＢＪ３」も回転させるようにしても良い。あるいは、操作対象となる立体オブジェクトとグループ化されている立体オブジェクトの配置だけを、操作対象と同様に変更するようにしても良い。
【０１４０】
次に、方向判断部１０７は、実行後の各立体オブジェクトのロック面が、予め指定された方向を向いているか否かを判断する。ここでは、ロック面が正面であるか否かを判断する。なお、この仮想三次元空間に配置される立体オブジェクトにおいては、正面が、法線がＺ軸に平行であって、正の方向を向いている面であることが、予め指定されているものとする。
【０１４１】
まず、方向判断部１０７は、表示されている立体オブジェクト「ＯＢＪ１」のロック面の法線を示すベクトルを図３に示す形状情報管理表から取得する。具体的には、まず、立体オブジェクト「ＯＢＪ１」のロック面指定情報である「ｙ２面」を、図９のロック面指定情報管理表から取得する。次に、立体オブジェクト「ＯＢＪ１」のロック面指定情報「ｙ２面」が指定する面の法線ベクトルを、図３に示した形状情報管理表から取得する。具体的には、形状情報管理表の「オブジェクトＩＤ」が「ＯＢＪ１」であるレコードの「ｙ２面」項目の値である「（０，−１，０）」をロック面の法線のベクトルとして取得する。
【０１４２】
取得した法線のベクトル「（０，−１，０）」は、立体オブジェクト内の座標系のベクトルであるため、このベクトルを立体オブジェクトが配置された仮想三次元空間内におけるベクトル、つまり仮想三次元空間（ワールド空間）におけるベクトルに変換する。具体的には、立体オブジェクトを仮想三次元空間（ワールド空間）にデフォルトの状態で配置した場合の立体オブジェクトの座標系と仮想三次元空間（ワールド空間）の座標系との関係を示す情報と、オブジェクト配置情報の回転角度の情報とを用いて、ロック面の法線のベクトルを仮想三次元空間内における方向を示すベクトルに変換する。例えば、この具体例においては、立体オブジェクト「ＯＢＪ１」を回転させずに配置した場合、即ち図８の状態においては、上述したように、立体オブジェクトのｘ軸、ｙ軸、ｚ軸が、それぞれ仮想三次元空間のＸ軸，Ｙ軸，Ｚ軸と平行となるように立体オブジェクトが配置される。このため、この状態でのロック面の法線ベクトルを仮想三次元空間（ワールド空間）の座標系で表したものは、元々の法線ベクトルと同じ「（０，−１，０）」となる。この立体オブジェクト「ＯＢＪ１」が、Ｘ軸を回転軸として上方向に９０度回転されているため、回転後の立体オブジェクト「ＯＢＪ１」のロック面「ｙ２面」の法線ベクトルを、仮想三次元空間（ワールド空間）の座標系で表したものは、演算により、「（０，０，１）」となる。
【０１４３】
つぎに、方向判断部１０７は、回転後のロック面が、正面であることを示す条件を満たすか否かを判断する。具体的には、回転後のロック面の法線ベクトルが、Ｚ軸に平行であって、正の方向を向いているか否かを判断する。ここでは、回転後のロック面「ｙ２面」の法線ベクトルは「（０，０，１）」であるので、法線ベクトルがＺ軸に平行であり、正の方向を向いているという条件を満たす。このため、方向判断部１０７は、この立体オブジェクト「ＯＢＪ１」のロック面「ｙ２面」が正面であると判断する。
【０１４４】
方向判断部１０７は、一の立体オブジェクトのロック面が、正面となっていると判断されたため、操作が制限されることを示す操作可否情報「１」を操作可否情報格納部１１３に蓄積して、操作可否情報格納部１１３に格納されている操作可否情報を変更する。そして、操作受付部１０４が次の操作の受け付けを待機する状態に戻る。
【０１４５】
図１１は、操作可否情報格納部１１３に格納されている変更後の操作可否情報を示す図である。
【０１４６】
なお、立体オブジェクト「ＯＢＪ１」のロック面が正面でないと判断された場合、表示されている他の立体オブジェクトについても同様の処理を行い、ロック面が正面であるものが検出された時点で、上記と同様に、操作可否情報を変更する。
【０１４７】
また、ロック面が正面である立体オブジェクトが一つも検出されなかった場合、そのまま操作受付部１０４が次の操作の受け付けを待機する状態に戻る。
【０１４８】
なお、上記のように、立体オブジェクトが立方体もしくは直方体であり、回転する角度が９０度単位に固定されている場合においては、方向判断部１０７は、立体オブジェクトをワールド空間において回転させた際に正面となる面を、形状情報により定義された立体オブジェクトの面同士の位置関係と、回転前に正面となっていた面とを用いて取得し、この正面となる面の面識別情報を取得して、これが、ロック面指定情報が指定する面の識別情報と一致するか否かを判断するようにしても良い。例えば、回転前の立体オブジェクトのｚ１面が正面のときに、上方向に９０°立体オブジェクトを回転させると、底面であるｙ２面が正面になることを、形状情報が示す面の位置関係を示す情報等から判断しても良い。
【０１４９】
あるいは、立体オブジェクトが立方体もしくは直方体であり、回転する角度が９０度単位に固定されている場合においては、方向判断部１０７は、回転前の正面となっている面の立体オブジェクトの座標系の法線ベクトルから、回転角度を逆算して、回転後に正面となる面の法線ベクトルを演算により算出し、この法線ベクトルと一致する面の面識別情報を取得することで、回転後の正面の面の面識別情報を取得し、これが、ロック面指定情報が指定する面の識別情報と一致するか否かを判断するようにしても良い。
【０１５０】
ここで、操作制限部１０８は、操作可否情報格納部１１３に格納されている操作可否情報が、立体オブジェクトに対する操作が制限されていることを示すものであるか否かを判断する。ここでは、図１１に示すように、操作可否情報の値は「１」であり、操作が制限されることを示している。このため、操作制限部１０８は、操作受付部１０４に対して、制限された操作だけを受け付けても良いことを指示する。ここでは、操作に対する制限を解除するために必要な操作だけを受け付けて良いことを指示する。操作に対する制限を解除するために必要な操作は、ここでは、制限解除のために予め指定されたパスワードを入力する操作であるとする。
【０１５１】
つぎに、ユーザが、いずれかの立体オブジェクトを回転させるために、立体オブジェクトの画像上にポインタを配置して、マウスボタンをクリックしドラッグする操作を行ったとする。この場合、操作受付部１０４は、操作制限部１０８により、受け付け可能な操作が制限されているため、立体オブジェクトを回転させるための操作を受け付けない。その代わりに、立体オブジェクトの画像上でマウスクリックした操作に応じて、操作制限の解除のためのパスワード入力画面の画像情報を構成する指示を、画像情報構成部１０９に出力する。画像情報構成部１０９は、パスワード入力画面を構成し、出力部１１０が、構成したパスワード入力画面を表示する。
【０１５２】
図１２は、操作制限を解除するためのパスワード入力画面の表示例を示す図である。
【０１５３】
つぎに、ユーザが立体オブジェクトの操作制限を解除するために、パスワード入力画面に、予め指定された制限解除のためのパスワードを入力したとする。
【０１５４】
操作受付部１０４は、入力されたパスワードが制限解除のためのパスワードであるか否かを判断し、制限解除のためのパスワードと一致した場合、制限解除の操作を受け付けたと判断する。
【０１５５】
操作制限部１０８は、ユーザから制限解除の操作を受け付けたため、操作可否情報格納部１１３に格納されている操作可否情報を、操作制限を解除するための操作可否情報「１」で上書きする。具体的には、操作可否情報格納部１１３に格納されている図１１に示したような操作可否情報を、図１０に示すような操作可否情報に変更する。そして、操作受付部１０４に対して受け付ける操作の制限を終了するよう指示する。
【０１５６】
これにより、操作受付部１０４は、少なくともその直後の立体オブジェクトに対する通常の操作を受け付けることが可能となる。例えば、この直後に、立体オブジェクト「ＯＢＪ１」を回転させて、ロック面が正面を向かないようにすることで、その後の操作の受け付けが可能となる。
【０１５７】
ただし、直後の操作で、ロック面を回転させない場合、再度操作制限がかかることとなる。このような状況を避けるために、操作制限解除後の最初の立体オブジェクトに対する配置の変更、特に回転動作が行われるまでは、ロック面が正面であるか否かの判断を行わないようにして、受け付けた操作に応じて、立体オブジェクトに対する処理を行うようにしても良い。
【０１５８】
ここで、ユーザが、一の立体オブジェクト「ＯＢＪ２」のロック面に設定したい面、例えば「ｘ１面」をマウスクリック等により指定して、この面をロック面に設定するためのメニュー項目等を選択したとする。ロック面指定情報受付部１１１は、「ｘ１面」をロック面に指定するロック面指定情報を受け付ける。ロック面指定情報蓄積部１１２は、表示されている全ての立体オブジェクトとそれぞれ対応付けて、ロック面指定情報受付部１１１が受け付けたロック面指定情報が指定する面と同じ面、ここでは同じ面指定情報「ｘ１面」が示す面をロック面に指定するロック面指定情報を、ロック面指定情報格納部１０６に蓄積する。具体的には、「ｘ１面」をロック面に指定するロック面指定情報を、図９に示したロック面指定情報管理表の全てのレコードの「ロック面」の値に追記する。
【０１５９】
図１３は、ロック面指定情報が蓄積されたロック名指定情報管理表を示す図である。このように、一つの立体オブジェクトの一の面をロック面に指定すると、他の立体オブジェクトの同じ面、ここでは、同じ面識別情報を有する面も、ロック面に指定することができ、ロック面を指定する手間を省くことができる。
【０１６０】
以上、本実施の形態によれば、ロック面を予め指定された方向に向けることにより、立体オブジェクトに対する操作を制限することができる。これにより、例えば、第三者等が、立体オブジェクトを勝手に回転させて、立体オブジェクト上に配置されている配置用情報を許可なく見ることを防ぐことが可能となる。したがって、立体オブジェクトのロック面を予め指定された方向に向けるという簡単な操作で、操作を制限することができ、立体オブジェクトを用いて出力される情報に対して、容易にセキュリティを保つことができる。
【０１６１】
（実施の形態２）
本実施の形態の情報処理装置は、立体オブジェクトに対する複数の操作に応じて、立体オブジェクトの動作を制限するようにしたものである。
【０１６２】
図１４は、本実施の形態における情報処理装置２のブロック図である。
情報処理装置２は、形状情報格納部２０１、オブジェクト配置情報格納部２０２、配置用情報格納部２０３、操作受付部２０４、実行部２０５、操作情報取得部２０６、操作履歴情報格納部２０７、出現パターン判断部２０８、操作制限部２０９、画像情報構成部２１０、出力部２１１、操作可否情報格納部２１２、操作パターン定義情報格納部２１３を備える。
【０１６３】
形状情報格納部２０１、オブジェクト配置情報格納部２０２、配置用情報格納部２０３、操作受付部２０４、実行部２０５、画像情報構成部２１０、出力部２１１、および操作可否情報格納部２１２の構成や動作については、上記実施の形態１の形状情報格納部１０１、オブジェクト配置情報格納部１０２、配置用情報格納部１０３、操作受付部１０４、実行部１０５、画像情報構成部１０９、出力部１１０、および操作可否情報格納部１１３とそれぞれ同様であるので、ここでは説明を省略する。
【０１６４】
操作情報取得部２０６は、操作受付部２０４が受け付けた操作を示す情報である操作情報を取得する。操作受付部２０４が受け付ける操作とは、例えば立体オブジェクトに対する仮想三次元空間内における向きや位置を変更する操作や、大きさを変更するための操作等である。操作情報は、例えば、操作に応じて出力されるカーソル等の位置等を示す情報や、操作に応じて出力されるイベントを示す情報や、操作に応じて出力されるコマンド等を示す情報である。カーソル等の位置等を示す情報は、例えば、カーソルの指し示す位置の座標の情報や、カーソル等の移動により変化した、カーソルが指し示す座標の変換の差分を示す情報である。イベントを示す情報は例えばイベント名である。コマンドを示す情報は例えばコマンド名である。操作情報取得部２０６は、これらの操作に応じて出力される情報を、操作情報を取得する。なお、操作情報は、結果的に操作受付部２０４が過去に受け付けた操作を示す情報であればよく、例えば、操作受付部２０４が受け付けた操作によって行われた動作を示す情報でも良い。操作によって行われた動作を示す情報とは、例えば、操作によって配置が変化した立体オブジェクトの、配置情報の変化を示す情報、例えば配置情報の差分を記録した情報であってもよい。操作情報取得部２０６は、操作に応じて実行部２０５等により行われた動作を示す情報を、操作情報として、例えば、実行部２０５等から取得する。操作情報取得部２０６は、取得した操作情報を、図示しない記憶媒体等に蓄積しても良い。
【０１６５】
ここでは、特に、操作情報取得部２０６が、操作受付部２０４が受け付けた操作を示す情報である操作情報を取得し、操作情報を含む操作履歴情報を構成し、構成した操作履歴情報を後述する操作履歴情報格納部２０７に蓄積する場合を例に挙げて説明する。
【０１６６】
操作履歴情報とは、操作受付部２０４が受け付けた操作の履歴を示す情報である。操作履歴情報とは、具体的には、操作受付部２０４が過去に受け付けた操作を示す情報である操作情報を少なくとも含む情報である。本実施の形態における操作履歴情報は、少なくとも過去に受け付けた操作の順番を示すことが可能な情報であればよい。具体的には、少なくとも過去に取得した操作情報の取得順を示すことが可能な情報であればよい。操作履歴情報は、例えば、操作受付部２０４が受け付けた１以上の操作を示す操作情報と、各操作情報が示す操作を受け付けた（あるいは操作に応じた動作が行われた）時刻を示す情報とを対応付けた情報である。また、操作履歴情報は、操作情報の取得された順番が分かるように取得順に操作情報が蓄積された情報であっても良いし、取得順を示す番号等を付与して蓄積された情報であっても良い。
【０１６７】
操作情報取得部２０６は、例えば、上述したような操作情報を取得し、取得した操作情報に、操作を受け付けた時刻の情報、もしくは操作情報を取得した時刻の情報を付与して操作履歴情報を構成し、構成した操作情報を操作履歴情報格納部２０７に蓄積する。時刻を示す情報は、図示しない時計等の計時部等から取得可能である。また、操作情報取得部２０６は、例えば、上述したような操作情報を取得し、取得した操作情報に、操作を受け付けた順番を示す情報、もしくは操作情報を取得した順番を示す情報を付与して構成した操作履歴情報を、操作履歴情報格納部２０７に蓄積しても良い。また、操作情報取得部２０６は、取得した操作情報を、操作履歴情報として、操作を受け付けた順番が判断可能なように、例えば操作を受け付けた順番や取得した順番に従って、操作履歴情報格納部２０７に追記しても良い。
【０１６８】
操作情報取得部２０６は、通常、ＭＰＵやメモリ等から実現され得る。操作情報取得部２０６の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはＲＯＭ等の記録媒体に記録されている。但し、ハードウェア（専用回路）で実現しても良い。
【０１６９】
操作履歴情報格納部２０７には、操作情報取得部２０６が取得した操作履歴情報が格納され得る。操作履歴情報格納部２０７は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能である。
【０１７０】
出現パターン判断部２０８は、操作情報取得部２０６が取得した最新の２以上の操作情報の出現パターンが、予め指定された操作情報の出現パターンと一致するか否かを判断する。出現パターン判断部２０８は、操作情報取得部２０６が取得した最新の２以上の操作情報の出現パターンが、予め指定された操作情報の出現パターンと一致するか否かを判断する。操作情報の出現パターンとは、１以上の操作情報の出現する順番を示す情報である。例えば、出現パターン判断部２０８が取得した操作情報のうちの、最新の操作情報からｎ番目（ｎは正の整数）の操作情報と、予め指定された操作情報の出現パターンが示す最新の操作情報からｎ番目の操作情報とが一致するか否かを、ｎの値を変化させながら順次判断していき、全てが一致していると判断された場合に、出現パターンが一致していると判断し、全てが一致していない場合、出現パターンが一致していないと判断する。ここでは、例として、出現パターン判断部２０８は、操作情報取得部２０６が取得した最新の２以上の操作情報の出現パターンが、後述する操作パターン定義情報格納部２１３に予め格納されている操作パターン定義情報が示す出現パターンと、一致するか否かを判断する。ここでの一致は完全一致としても部分一致としても良い。操作パターン定義情報とは、例えば、２以上の操作情報の出現順番を示す情報である。
【０１７１】
ここでは例として、特に、出現パターン判断部２０８が、操作情報取得部２０６が蓄積した最新の２以上の操作履歴情報に含まれる操作情報の出現パターンが、予め指定された操作情報の出現パターンと一致するか否かを判断する場合を例に挙げて説明する。
【０１７２】
具体的には、出現パターン判断部２０８は、操作情報取得部２０６が蓄積した操作履歴情報のうちの最新の操作履歴情報から順番に２以上の操作履歴情報を検出し、検出した操作履歴情報から、操作情報を取得する。そして上記と同様に取得した操作情報の出現パターンが、予め用意された操作情報の出現パターンと一致するか否かを判断する。
【０１７３】
また、本実施の形態においては、出現パターン判断部２０８は、出現パターンが一致すると判断した場合に、操作を制限することを示す操作可否情報を、操作可否情報格納部２１２に蓄積する場合を例に挙げて説明する。操作可否情報については、上記実施の形態１において説明した操作可否情報と同様であるので、ここでは説明を省略する。
【０１７４】
なお、出現パターン判断部２０８が判断する予め指定された２以上の操作情報の出現パターンは、移動を指示する操作情報の出現パターンや、回転を指示する操作情報の出現パターンや、大きさの変更を指示する操作情報の出現パターンや、これらの組合せによる出現パターン等、どのような操作情報の出現パターンであってもよい。例えば、複数の回転操作を示す操作情報の出現パターンとしてもよい。例えば、回転操作を示す操作情報の出現パターンとすることで、例えば、「右２回転、左３回転」等のように、金庫等のダイヤル式鍵の操作と同様に、操作制限を行うための操作を他のユーザに伝えたり、覚えたりする上でわかりやすくすることができる。
【０１７５】
出現パターン判断部２０８は、通常、ＭＰＵやメモリ等から実現され得る。出現パターン判断部２０８の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはＲＯＭ等の記録媒体に記録されている。但し、ハードウェア（専用回路）で実現しても良い。
【０１７６】
操作制限部２０９は、出現パターン判断部２０８が、出現パターンが一致すると判断した場合に、立体オブジェクトに対する操作を制限する。なお、ここでの行う操作の制限は一致すると判断された出現パターンに予め対応付けて設定された操作の制限であっても良い。例えば、第一の出現パターンと一致すると判断された場合に、第一の出現パターンに対応付けられた操作の制限を行い、第二の出現パターンと一致すると判断された場合に、第二の出現パターンに対応付けられた操作の制限を行っても良い。なお、操作制限部２０９が行う操作の制限や、操作制限部２０９が、立体オブジェクトに対する操作の制限を解除するための操作を受け付けた場合に、操作に対する制限を解除することや、操作制限部２０９が、操作可否情報格納部２１２に操作を制限する操作可否情報が格納されている場合に、立体オブジェクトに対する操作を制限することや、操作受付部２０４が変更させる操作を受け付けた場合に、操作制限部２０９が、操作可否情報格納部２１２に格納されている操作可否情報を、操作を制限しない操作可否情報に変更すること等については、上記実施の形態１の操作制限部１０８と同様であるので、ここでは説明を省略する。
【０１７７】
操作制限部２０９は、通常、ＭＰＵやメモリ等から実現され得る。操作制限部２０９の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはＲＯＭ等の記録媒体に記録されている。但し、ハードウェア（専用回路）で実現しても良い。
【０１７８】
操作パターン定義情報格納部２１３は、操作情報の出現パターンを示す情報である操作パターン定義情報が格納され得る。操作パターン定義情報は、例えば２以上の操作情報の出現パターンを示す情報である。操作パターン定義情報は、２以上の操作情報と、各操作情報と対応付けられた出現順番を示す情報とにより構成される情報である。また、操作パターン定義情報は、２以上の操作情報が、操作が行われる順番に従って格納されている情報であっても良い。操作パターン定義情報は、例えばユーザ等により予め蓄積される情報である。操作パターン定義情報は、当該操作パターン定義情報が示す操作パターンと一致する操作が行われた場合に行われる操作制限の種類等を指定する情報と対応付けられた情報であっても良い。操作パターン定義情報格納部２１３は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能である。
【０１７９】
次に、情報処理装置２の動作について図１５のフローチャートを用いて説明する。なお、図１５のフローチャートにおいて、図２と同一符号は同一又は相当するステップを示している。また、これらのステップにおいては、図１に示した情報処理装置１の各ブロックに相当する情報処理装置２の各ブロックが処理を行うものとする。
【０１８０】
（ステップＳ２０１）操作情報取得部２０６は、操作受付部２０４が受け付けた操作が、立体オブジェクトを回転させる操作であるか否かを判断する。例えば、操作受付部２０４が受け付けた操作に応じて出力されるコマンドの識別情報が、予め指定された回転を指示するコマンドの識別情報の一つであるか否かを判断する。回転させる操作である場合、ステップＳ２０２に進み、回転させる操作でない場合、ステップＳ１０５に進む。
【０１８１】
（ステップＳ２０２）操作情報取得部２０６は、操作受付部２０４が受け付けた操作を示す操作情報を取得する。ここで取得する操作情報は、例えば、操作受付部２０４が受け付けた操作に応じて出力されるコマンドの識別情報、例えばコマンド名を取得する。
【０１８２】
（ステップＳ２０３）操作情報取得部２０６は、ステップＳ２０２で取得した操作情報を、現在の時刻を示す時刻情報と対応付けて操作履歴情報を構成し、構成した操作履歴情報を、操作履歴情報格納部２０７に蓄積する。
【０１８３】
（ステップＳ２０４）出現パターン判断部２０８は、操作パターン定義情報格納部２１３に格納されている一の操作パターン定義情報を読み出す。ここでは例として操作履歴情報格納部２０７に格納されている操作パターン定義情報が一つである場合を例に挙げて説明する。
【０１８４】
（ステップＳ２０５）出現パターン判断部２０８は、ステップＳ２０４において読み出した一の操作パターン定義情報が定義する操作パターンを構成する操作情報数ｋをカウントする。
【０１８５】
（ステップＳ２０６）出現パターン判断部２０８は、操作履歴情報格納部２０７に格納されている操作履歴情報の中から、最新のｋ個の操作履歴情報を取得する。最新のｋ個の操作履歴情報とは、例えば、操作履歴情報に含まれる時刻情報が示す時刻が、最も新しいものから順にｋ個選らんだ場合に得られる操作履歴情報である。
【０１８６】
（ステップＳ２０７）出現パターン判断部２０８は、ステップＳ２０６において取得したｋ個の操作履歴情報に含まれるｋ個の操作情報を取得する。ここでは例えば取得した時間順、もしくは取得した時刻が新しいものから順に取得する。
【０１８７】
（ステップＳ２０８）出現パターン判断部２０８は、カウンターｎに１を代入する。
【０１８８】
（ステップＳ２０９）出現パターン判断部２０８は、ステップＳ２０４において読み出した操作履歴情報が示す操作された順番がｎ番目の操作情報と、ステップＳ２０７において取得した操作情報のうちの、操作された順番がｎ番目の操作情報とを比較し、一致するか否かを判断する。操作された順番がｎ番目とは、操作の古い方から数えてｎ番目としても、操作の新しい方から数えてｎ番目としてもよい。一致する場合、ステップＳ２１０に進み、一致しない場合、ステップＳ１０４に戻る。
【０１８９】
（ステップＳ２１０）出現パターン判断部２０８は、カウンターｎの値がｋであるか否かを判断する。ｋでない場合、ステップＳ２１１に進み、ｋである場合、ステップＳ２１２に戻る。
【０１９０】
（ステップＳ２１１）出現パターン判断部２０８は、操作可否情報格納部２１２に格納されている操作可否情報を、立体オブジェクトに対する操作を制限することを示す操作可否情報に変更する。例えば、既に格納されている操作可否情報を上書きするように、立体オブジェクトに対する操作を制限することを示す操作可否情報を蓄積する。そして、ステップＳ１０２に戻る。
【０１９１】
なお、図１５のフローチャートにおいて、電源オフや処理終了の割り込みにより処理は終了する。
【０１９２】
以下、本実施の形態における情報処理装置２の具体的な動作について説明する。なお、立体オブジェクトが画面に表示されるまでの処理等については、上記実施の形態の具体例等と同様であるので、ここでは説明を省略する。
【０１９３】
例えば、上記の実施の形態１の具体例と同様に、図８に示すように表示された立体オブジェクトの画像について、マウス等を用いて、予め指定された立体オブジェクト８０１を、Ｚ軸を回転軸として、右回りに９０度回転させるための操作をユーザが行ったとする。例えば、マウスを立体オブジェクト８０１の画像上で、左方向にドラッグしたとする。
【０１９４】
操作受付部２０４は、このユーザによる操作を受け付け、この操作に応じて、予め用意された右回りに９０度回転させるコマンドを実行部２０５に対して出力する。Ｚ軸を中心として右回りに９０度回転させるコマンドは、ここでは、「ｒｏｔａｔｅ−Ｒ−９０」であるとする。
【０１９５】
操作情報取得部２０６は、操作受付部２０４が出力するコマンド「ｒｏｔａｔｅ−Ｒ−９０」を操作情報として取得し、さらに、この操作情報に、内部の時計等から取得した現在の時刻の情報「１２：３０：２４」を付与して、操作履歴情報を構成し、操作履歴情報格納部２０７に格納する。
【０１９６】
図１６は、操作履歴情報格納部２０７に格納された、立体オブジェクト８０１、即ち立体オブジェクトＯＢＪ１についての、操作履歴情報を管理する操作履歴情報管理表である。なお、ここでは、操作履歴情報は、立体オブジェクト別に管理されているものとする。操作履歴情報管理表は、「操作情報」と「時刻」という項目を有している。「操作情報」は、操作情報取得部２０６が取得した操作情報、「時刻」は、操作情報取得部２０６が取得した時刻の情報である。操作履歴情報管理表の各レコードが、操作情報取得部２０６が取得した操作情報である。なお、操作履歴情報管理表に格納されている複数のレコードの集合体も操作履歴情報と考えても良い。
【０１９７】
そして、実行部２０５は、操作受付部２０４が出力するコマンドに応じて、立体オブジェクトを回転させた画像を出力する。
【０１９８】
図１７は、回転させた立体オブジェクト８０１の出力例を示す図である。立体オブジェクトを回転させた画像を出力する処理等については、上記具体例と同様であるので、ここでは説明を省略する。
【０１９９】
同様にして、ユーザが立体オブジェクト８０１に対して、右回りや、左回り、前回り、後回り等の複数回の操作を行ったとし、その都度、操作履歴情報が操作履歴情報格納部２０７に蓄積され、回転した立体オブジェクト８０１の画像が出力される。
【０２００】
図１８は、複数回の操作が行われた後の、立体オブジェクト８０１についての操作履歴情報管理表を示す図である。なお、「ｒｏｔａｔｅ−Ｌ−９０」は、左回りの操作を受け付けた場合の操作情報（コマンド）、「ｒｏｔａｔｅ−Ｆ−９０」は、前回りの操作を受け付けた場合の操作情報、「ｒｏｔａｔｅ−Ｂ−９０」は、後回りの操作を受け付けた場合の操作情報であるとする。
【０２０１】
図１９は、操作パターン定義情報格納部２１３に格納されている操作パターン定義情報を示す図である。操作パターン定義情報は、「操作情報」と「出現順」という項目を有している。「操作情報」は、操作情報取得部２０６が取得する操作情報に相当する。また、「出現順」は、操作パターンにおける操作情報の出現する順番を示す情報であり、ここでは、対応する「出現順」の数値の大きいものほど出現する順番が早い、即ち、古い操作情報であることを示す。
【０２０２】
ここで、出現パターン判断部２０８は、操作履歴情報が新たに蓄積され、立体オブジェクトが回転する毎に、図１９に示すような操作パターン定義情報格納部２１３に格納されている操作パターン定義情報を取得する。そして、操作パターン定義情報に含まれる操作情報数をカウントして、操作情報数ｋを取得する。ここでは、ｋ＝３を取得する。なお、ここでは、操作履歴情報が新たに蓄積される毎に、操作パターン定義情報を読み出し、操作情報数ｋを取得する場合を示したが、操作履歴情報や操作情報数ｋを、立体オブジェクトが読み出された際や、最初に立体オブジェクトに操作が行われた際等に一度だけ取得し、メモリ等の記憶媒体等に保持しておくようにし、出現パターン判断部２０８が、この取得した操作履歴情報や操作情報数ｋを適宜利用するようにしても良い。
【０２０３】
次に、出現パターン判断部２０８は、操作履歴情報が新たに蓄積され、立体オブジェクトが回転する毎に、操作履歴情報格納部２０７から、最新のｋ＝３個の操作履歴情報を検出する。例えば、現時点の操作履歴情報管理表が、図１８に示すようなものであった場合、図１８に示す操作履歴情報管理表の全てのレコードのうち、「時刻」の示す時刻の値が新しいものから順に、３つのレコードを検出する。ここでは、例えば、操作履歴情報管理表のレコードが、「時刻」の値によって昇順にソートされていたとすると、下から３つのレコードを検出する。そして、検出した３つのレコード、即ち３つの操作履歴情報から、「時刻」の値が古いものから順に、操作情報を取得する。
【０２０４】
図２０に、出現パターン判断部２０８が、取得した３つの操作情報を示す図である。なお、ここでは、上のレコードほど、対応する時刻が古い操作情報、即ち出現順番が古い操作情報であるとする。
【０２０５】
次に、出現パターン判断部２０８は、操作パターン定義情報に含まれる操作情報と、操作履歴情報から取得した最新の３個の操作情報とを、出現する順番が同じもの同士で比較して、操作パターン、即ち操作情報と出現順番との組合せが一致するか否かを判断する。ここでは例として完全一致を判断するものとする。ここでは、例として、まず、操作パターン定義情報に含まれる操作情報のうちの出現順番が最も古い操作情報と、操作履歴情報から取得した出現順番が最も古い操作情報とを比較するが、操作パターン定義情報に含まれる操作情報のうちの出現順番が最も古い操作情報が「ｒｏｔａｔｅ−Ｆ−９０」であり、操作履歴情報から取得した出現順番が最も古い操作情報が「ｒｏｔａｔｅ−Ｌ−９０」であるため、一致しない。このため、操作パターン定義情報に含まれる操作情報と、操作履歴情報から取得した最新の３個の操作情報との出現パターン同士が完全一致しないと判断される。このため、出現パターン判断部２０８は、操作制限を行うための処理を行わない。
【０２０６】
ここで、次に、ユーザによる立体オブジェクト８０１に対して左回りを指示する操作に応じて、操作情報取得部２０６により、「操作情報」が「ｒｏｔａｔｅ−Ｌ−９０」で、「時刻」が「１２：３３：５８」である操作履歴情報が追記されたとする。
【０２０７】
図２１は、レコードが追加された操作履歴情報管理表を示す図である。
【０２０８】
この場合においても上記と同様に、出現パターン判断部２０８によって、操作履歴情報に含まれる最新の３つの操作情報が取得される。
【０２０９】
図２２は、出現パターン判断部２０８が、取得した３つの操作情報を示す図である。
【０２１０】
そして、上記と同様に、出現パターン判断部２０８によって、操作履歴情報から取得した操作情報と、図１９に示す操作パターン定義情報に含まれる操作情報とが出現順番の順に比較される。即ち出現パターン同士が比較される。
【０２１１】
ここでは、出現順番が一致する全ての操作情報が完全一致するため、出現パターン判断部２０８は、操作履歴情報に含まれる最新の３つの操作情報の出現パターンと、操作パターン定義情報が定義する操作情報の出現パターンとが一致すると判断する。そして、操作可否情報格納部２１２に格納されている立体オブジェクトに対する操作可否情報を、図１１に示すように「１」に変更する。
【０２１２】
その後の操作に対する制限等を行う処理や、制限を解除する処理等については、上記実施の形態の具体例等と同様であるので、ここでは説明を省略する。
【０２１３】
以上、本実施の形態によれば、立体オブジェクトに対する複数の操作の組合せによって、立体オブジェクトに対する操作を制限することができる。これにより、例えば、第三者等が、立体オブジェクトを勝手に回転させて、立体オブジェクト上に配置されている配置用情報を許可なくみることを防ぐことが可能となる。したがって、立体オブジェクトに一連の操作を行うだけで、操作を制限することができ、立体オブジェクトを用いて出力される情報に対して、容易にセキュリティを保つことができる。
【０２１４】
また、立体オブジェクトに対する操作制限を、通常立体オブジェクトに対して行われる２以上の操作の組合せで実行できるため、操作制限を行うための特定の操作、例えば操作制限を行うためのメニューやボタン等が不要である。そして、操作パターン定義情報をユーザが自由に設定することで、操作制限の操作の組合せを自由に決定でき、更に操作自体の組合せを秘密にすることで、パスワード入力等を行わないでも立体オブジェクトに対する操作だけで操作制限を行うことが可能となる。
【０２１５】
なお、本実施の形態においては、立体オブジェクトに対する２以上の回転操作を出現パターンによって、操作制限を行うか否かを判断するようにしたが、本発明においては、回転操作以外の操作、例えば移動や、サイズ変更等も含めた立体オブジェクトに対する２以上の操作の組合せによって、操作制限を行う化否かを判断するようにしてもよい。ただし、回転操作の組合せによって操作制限を行うようにすることは、例えば、「右２回転、左３回転」等のように、金庫等のダイヤル式鍵の操作と同様に、操作を他のユーザに伝えたり、覚えたりする上でわかりやすく、好ましい。また、回転操作は、例えば立体オブジェクトの位置等を移動させたりする操作よりも、方角や距離や位置等の指定が不要であり、操作が明確でわかりやすいため、操作性に優れていると考えられ、操作制限を行うための操作としては好ましい。
【０２１６】
なお、上記実施の形態においては、最新の２以上の操作履歴情報に含まれる操作情報の出現パターンが、操作パターン定義情報が示す操作情報の出現パターンと一致するか否かを判断するようにした。しかしながら、本発明においては、操作情報取得部２０６が、操作情報を取得する毎に、取得した操作情報と、予め指定された操作情報の出現パターンが示す操作情報とを、出現順番が古いものから順に比較していくようにし、予め指定された操作情報の出現パターンが示す操作情報の全てが、操作情報取得部２０６が取得した一連の操作情報と一致する場合には、出現パターンが一致すると判断しても良い。また、途中で一致しなかった場合、再度予め指定された操作情報の出現パターンの最も古いものとの比較から、比較をやり直すようにすればよい。あるいは、比較の途中で、予め指定された操作情報の出現パターンが示す最も古い操作情報と同じ操作情報が現れた場合、並列して操作情報の出現パターンの比較を開始するようにしても良い。即ち、このように、操作履歴情報を用いずに、取得した操作情報をそのまま利用して出現パターン同士の比較を行うようにしても良い。
【０２１７】
なお、上記各実施の形態において、各処理（各機能）は、単一の装置（システム）によって集中処理されることによって実現されてもよく、あるいは、複数の装置によって分散処理されることによって実現されてもよい。
【０２１８】
また、上記各実施の形態において、一の装置に存在する２以上の通信手段（情報送信部など）は、物理的に一の媒体で実現されても良いことは言うまでもない。
【０２１９】
また、上記実施の形態において、各構成要素が実行する処理に関係する情報、例えば、各構成要素が受け付けたり、取得したり、選択したり、生成したり、送信したり、受信したりする情報や、各構成要素が処理で用いるしきい値や数式、アドレス等の情報等は、上記説明で明記していない場合であっても、図示しない記録媒体において、一時的に、あるいは長期にわたって保持されていてもよい。また、その図示しない記録媒体への情報の蓄積を、各構成要素、あるいは、図示しない蓄積部が行ってもよい。また、その図示しない記録媒体からの情報の読み出しを、各構成要素、あるいは、図示しない読み出し部が行ってもよい。
【０２２０】
また、上記各実施の形態では、情報処理装置がスタンドアロンである場合について説明したが、情報処理装置は、スタンドアロンの装置であってもよく、サーバ・クライアントシステムにおけるサーバ装置であってもよい。後者の場合には、出力部や受付部は、通信回線を介して入力を受け付けたり、画面を出力したりすることになる。
【０２２１】
また、上記各実施の形態において、各構成要素は専用のハードウェアにより構成されてもよく、あるいは、ソフトウェアにより実現可能な構成要素については、プログラムを実行することによって実現されてもよい。例えば、ハードディスクや半導体メモリ等の記録媒体に記録されたソフトウェア・プログラムをＣＰＵ等のプログラム実行部が読み出して実行することによって、各構成要素が実現され得る。
【０２２２】
なお、上記各実施の形態における情報処理装置を実現するソフトウェアは、以下のようなプログラムである。つまり、このプログラムは、コンピュータを、形状情報格納部に格納されている１以上の立体オブジェクトの形状を指定する情報である形状情報により形状が指定される１以上の立体オブジェクトに対する操作を含む操作を受け付ける操作受付部と、操作受付部が受け付けた操作に応じて、１以上の各立体オブジェクトに対する処理を実行する実行部と、立体オブジェクトの形状情報と、１以上の立体オブジェクトのそれぞれを構成する１以上の面に配置される１以上の情報である配置用情報が格納され得る配置用情報格納部に格納されている、形状情報が示す立体オブジェクトの１以上の面に配置される配置用情報とを読み出し、読み出した形状情報が示す１以上の面に対し、それぞれに対応した配置用情報を配置した立体オブジェクトの画像情報を構成する画像情報構成部と、画像情報構成部が構成した画像情報を出力する出力部と、立体オブジェクトの、ロック面指定情報格納部に格納されている立体オブジェクトを構成する面のうちの操作にロックをかけるための面であるロック面を指定する情報であるロック面指定情報が指定するロック面が、予め指定された方向を向いているか否かを判断する方向判断部と、方向判断部が、ロック面指定情報が指定するロック面が予め指定された方向を向いていると判断した場合に、立体オブジェクトに対する操作を制限する操作制限部として機能させるためのプログラムである。
【０２２３】
また、コンピュータを、形状情報格納部に格納されている１以上の立体オブジェクトの形状を指定する情報である形状情報により形状が指定される１以上の立体オブジェクトに対する操作を含む操作を受け付ける操作受付部と、操作受付部が受け付けた操作に応じて、１以上の各立体オブジェクトに対する処理を実行する実行部と、操作受付部が受け付けた操作を示す情報である操作情報を取得する操作情報取得部と、操作情報取得部が取得した最新の２以上の操作情報の出現パターンが、予め指定された操作情報の出現パターンと一致するか否かを判断する出現パターン判断部と、出現パターン判断部が、出現パターンが一致すると判断した場合に、立体オブジェクトに対する操作を制限する操作制限部と、立体オブジェクトの形状情報と、１以上の立体オブジェクトのそれぞれを構成する１以上の面に配置される１以上の情報である配置用情報が格納され得る配置用情報格納部に格納されている、形状情報が示す立体オブジェクトの１以上の面に配置される配置用情報とを読み出し、読み出した形状情報が示す１以上の面に対し、それぞれに対応した配置用情報を配置した立体オブジェクトの画像情報を構成する画像情報構成部と、画像情報構成部が構成した画像情報を出力する出力部として機能させるためのプログラムである。
【０２２４】
なお、上記各プログラムにおいて、上記プログラムが実現する機能には、ハードウェアでしか実現できない機能は含まれない。例えば、情報を取得する取得部や、情報を出力する出力部などにおけるモデムやインターフェースカードなどのハードウェアでしか実現できない機能は、上記プログラムが実現する機能には含まれない。
【０２２５】
また、各プログラムを実行するコンピュータは、単数であってもよく、複数であってもよい。すなわち、集中処理を行ってもよく、あるいは分散処理を行ってもよい。
【０２２６】
図２３は、上記プログラムを実行して、上記実施の形態による情報処理装置を実現するコンピュータの外観の一例を示す模式図である。上記実施の形態は、コンピュータハードウェア及びその上で実行されるコンピュータプログラムによって実現されうる。
【０２２７】
図２３において、コンピュータシステム９００は、ＣＤ−ＲＯＭ（Ｃｏｍｐａｃｔ  Ｄｉｓｋ  Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）ドライブ９０５、ＦＤ（Ｆｌｏｐｐｙ（登録商標）  Ｄｉｓｋ）ドライブ９０６を含むコンピュータ９０１と、キーボード９０２と、マウス９０３と、モニタ９０４とを備える。
【０２２８】
図２４は、コンピュータシステム９００の内部構成を示す図である。図２４において、コンピュータ９０１は、ＣＤ−ＲＯＭドライブ９０５、ＦＤドライブ９０６に加えて、ＭＰＵ（Ｍｉｃｒｏ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）９１１と、ブートアッププログラム等のプログラムを記憶するためのＲＯＭ９１２と、ＭＰＵ９１１に接続され、アプリケーションプログラムの命令を一時的に記憶すると共に、一時記憶空間を提供するＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）９１３と、アプリケーションプログラム、システムプログラム、及びデータを記憶するハードディスク９１４と、ＭＰＵ９１１、ＲＯＭ９１２等を相互に接続するバス９１５とを備える。なお、コンピュータ９０１は、ＬＡＮへの接続を提供する図示しないネットワークカードを含んでいてもよい。
【０２２９】
コンピュータシステム９００に、上記実施の形態による情報処理装置等の機能を実行させるプログラムは、ＣＤ−ＲＯＭ９２１、またはＦＤ９２２に記憶されて、ＣＤ−ＲＯＭドライブ９０５、またはＦＤドライブ９０６に挿入され、ハードディスク９１４に転送されてもよい。これに代えて、そのプログラムは、図示しないネットワークを介してコンピュータ９０１に送信され、ハードディスク９１４に記憶されてもよい。プログラムは実行の際にＲＡＭ９１３にロードされる。なお、プログラムは、ＣＤ−ＲＯＭ９２１やＦＤ９２２、またはネットワークから直接、ロードされてもよい。
【０２３０】
プログラムは、コンピュータ９０１に、上記実施の形態による情報処理装置の機能を実行させるオペレーティングシステム（ＯＳ）、またはサードパーティプログラム等を必ずしも含んでいなくてもよい。プログラムは、制御された態様で適切な機能（モジュール）を呼び出し、所望の結果が得られるようにする命令の部分のみを含んでいてもよい。コンピュータシステム９００がどのように動作するのかについては周知であり、詳細な説明は省略する。
【０２３１】
本発明は、以上の実施の形態に限定されることなく、種々の変更が可能であり、それらも本発明の範囲内に包含されるものであることは言うまでもない。
【産業上の利用可能性】
【０２３２】
以上のように、本発明にかかる情報処理装置等は、情報の表示を行うための情報処理装置等として適しており、特に、立体オブジェクトを用いた情報の表示等を行うための装置等として有用である。
【符号の説明】
【０２３３】
１、２  情報処理装置
１０１、２０１  形状情報格納部
１０２、２０２  オブジェクト配置情報格納部
１０３、２０３  配置用情報格納部
１０４、２０４  操作受付部
１０５、２０５  実行部
１０６  ロック面指定情報格納部
１０７  方向判断部
１０８、２０９  操作制限部
１０９、２１０  画像情報構成部
１１０、２１１  出力部
１１１  ロック面指定情報受付部
１１２  ロック面指定情報蓄積部
１１３、２１２  操作可否情報格納部
２０６  操作情報取得部
２０７  操作履歴情報格納部
２０８  出現パターン判断部
２１３  操作パターン定義情報格納部
５０４  モニタ
【図１】
0005427551.tif 000002
【図２】
0005427551.tif 000003
【図３】
0005427551.tif 000004
【図４】
0005427551.tif 000005
【図５】
0005427551.tif 000006
【図６】
0005427551.tif 000007
【図７】
0005427551.tif 000008
【図８】
0005427551.tif 000009
【図９】
0005427551.tif 000010
【図１０】
0005427551.tif 000011
【図１１】
0005427551.tif 000012
【図１２】
0005427551.tif 000013
【図１３】
0005427551.tif 000014
【図１４】
0005427551.tif 000015
【図１５】
0005427551.tif 000016
【図１６】
0005427551.tif 000017
【図１７】
0005427551.tif 000018
【図１８】
0005427551.tif 000019
【図１９】
0005427551.tif 000020
【図２０】
0005427551.tif 000021
【図２１】
0005427551.tif 000022
【図２２】
0005427551.tif 000023
【図２３】
0005427551.tif 000024
【図２４】
0005427551.tif 000025