以下、情報処理装置等の実施形態について図面を参照して説明する。なお、実施の形態において同じ符号を付した構成要素は同様の動作を行うので、再度の説明を省略する場合がある。
(実施の形態1)
図1は、本実施の形態における情報処理装置1のブロック図である。
情報処理装置1は、形状情報格納部101、オブジェクト配置情報格納部102、配置用情報格納部103、操作受付部104、実行部105、ロック指定情報格納部106、ロック判断部107、操作制限部108、ロック指定情報受付部109、ロック指定情報蓄積部110、操作可否情報格納部111、出力部112を備える。
形状情報格納部101には、平面のオブジェクトである平面オブジェクトの形状を指定する情報である形状情報が格納される。平面オブジェクトは、例えば、二次元空間に配置されるオブジェクトである。1以上の平面オブジェクトは、例えば、平面オブジェクトの識別情報と対応付けて管理される。形状情報は、例えば、平面オブジェクトの外周の形状を指定する情報や、平面オブジェクトの領域内の画素の座標等を指定する情報である。形状情報は、例えば、矩形や、六角形、円形等の形状を指定する情報である。形状情報は、例えば、ビットマップ情報やベクトル情報で構成された情報であってもよい。形状情報は、例えば、2次元の図形オブジェクトの情報である。形状情報は、例えば、平面オブジェクトの頂点の座標の情報や、境界線や面等を表現する方程式のパラメータの情報等である。なお、形状情報は、当該形状情報が示す平面オブジェクトの輪郭線や、平面オブジェクトの背景色等の色を指定する情報等と対応付けられて形状情報格納部101に格納されていても良い。平面オブジェクトは表面を有している。平面オブジェクトの表面とは、例えば、後述する配置用情報が配置される面である。表面は、例えば、平面オブジェクトを表示する際に、ユーザ側に向かい合う面である。
形状情報格納部101には、平面オブジェクトごとにそれぞれ異なる形状情報が格納されていても良いし、1以上の平面オブジェクトに共通の一の形状情報が対応付けられて格納されていても良い。1以上の平面オブジェクトと形状情報との対応関係は、例えば、一の平面オブジェクトの識別情報と、当該識別情報が示す平面オブジェクトの形状を指定する形状情報とを有する1以上のオブジェクト管理情報を用いて管理される。
本実施の形態においては、2以上の平面オブジェクトは、1以上のグループにグループ化されていてもよい。一のグループに属する平面オブジェクトは、例えば、一のグループの識別情報と、一のグループに属する平面オブジェクトの識別情報とが対応付けられて管理される。形状情報格納部101は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能である。
オブジェクト配置情報格納部102には、1以上の平面オブジェクトが配置される位置を示す情報であるオブジェクト配置情報が格納される。オブジェクト配置情報は、例えば、平面オブジェクトの一以上の頂点や、中心等の座標情報である。ここでの位置は、例えば、出力部112が出力する出力領域内の位置である。オブジェクト配置情報は、例えば平面オブジェクトの識別情報等と対応付けられて格納されている。なお、一の平面オブジェクトに対して一の形状情報が1対1で用意されている場合、オブジェクト配置情報と上述した形状情報とを一の形状情報等で実現しても良い。例えば、形状情報が、オブジェクトが配置される領域を示す2次元座標系の座標値等を有する場合や、形状情報がオブジェクトの頂点や中心の座標を示す情報等を有するものである場合、形状情報とオブジェクト配置情報とを兼用することができる。オブジェクト配置情報は、例えば、デフォルト等で値が決まっており、ユーザの操作に応じてその値が変化するようにしてもよい。オブジェクト配置情報格納部102は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能である。
配置用情報格納部103には、平面オブジェクトの表面に配置可能な情報である配置用情報が、出力順番と対応付けられて複数格納される。配置用情報は、平面オブジェクトの表面に配置して出力(例えば表示)可能な情報であれば、静止画や動画等の画像情報や、テキスト情報等、どのような情報であっても良い。また、ここで述べる配置とは、上述した平面オブジェクトを示す形状情報の表面に対する画像情報やテキスト情報等のマッピングと考えても良い。また、配置用情報は、マッピング対象となる情報、例えばテクスチャ情報と考えても良い。各配置用情報のデータ構造は問わない。各配置用情報は、XMLデータ等の構造化されたデータであることが好ましい。また、各配置用情報は、それぞれの属性を示す情報と対応付けられていても良い。また、配置用情報は、タグ付けされた情報であっても良く、このタグを、各配置用情報の属性を示す情報の一つと考えても良い。配置用情報は、例えば、テーブルや、データベース等によって、配置用情報の属性を示す情報等と対応付けて管理された情報でも良い。また、配置用情報は、グループ化されている情報であっても良い。
配置用情報が出力順番と対応付けて格納されているということは、具体的には、各配置用情報が、出力順番に沿って並べて格納されていることであっても良いし、各配置用情報が、出力順番を示す情報と対応付けて格納されていても良い。また、配置用情報がタグ付けされた情報である場合、タグと出力順番を示す情報とが対応付けられていても良い。また、配置用情報を取得するための条件を示す情報と出力順番とが対応付けられていても良い。また、配置用情報格納部103に格納されている配置用情報が、各配置用情報とその前または後に表示される配置用情報とを対応付けて管理する出力順番の管理情報により管理されていることであっても良い。また、このような出力順番の管理情報の代わりに、後述するような配置用情報を取得するための条件を示す情報である取得条件情報を、出力順番と対応付けて管理する出力順番の管理情報を用いるようにしても良い。例えば、配置用情報を取得するため取得条件情報と、この取得条件情報が示す配置用情報の前または次の出力順番となる配置用情報を取得するための取得条件情報とを対応付けた出力順番の管理情報を用いるようにしてもよい。
また、配置用情報は、後述する異なる複数の出力変更操作にそれぞれ対応した異なる複数の出力順番と対応付けられて格納されていても良い。これにより、異なる出力変更操作に応じた出力順番で配置用情報を取得して表面に配置した平面オブジェクトを出力させることができる。また、配置用情報の出力順番を調整することで、六面体等の平面オブジェクトの各面に配置された配置用情報を、平面オブジェクトを縦方向や横方向に更新させて表示するような配置用情報の表示を平面オブジェクト上に擬似的に実現することも可能である。なお、配置用情報が構造化されたデータである場合、例えば、同じ階層にある配置用情報の配列順を出力順番と考えても良い。
配置用情報格納部103は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能である。
操作受付部104は、少なくとも平面オブジェクトの表面に配置される配置用情報を変更する操作である出力変更操作を含む操作を受け付ける。操作受付部104は、平面オブジェクトが複数の場合、各平面オブジェクトに対して個別に操作を受け付けても良いし、複数の平面オブジェクトに対して同時に同じ操作を受け付けても良い。操作受付部104は、少なくとも出力変更操作を受け付けることができればよい。
出力変更操作は、具体的には、実行部105が各平面オブジェクトについて取得する配置用情報を変更するための操作(即ち、変更するための指示を与えるための操作)である。出力変更操作は、例えば、平面オブジェクトに現在配置されている最新の配置用情報(つまり、現在出力中の配置用情報)と異なる配置用情報を後述する実行部105に取得させるため操作である。操作受付部104が、出力変更操作をどのように受け付けるかは問わない。出力変更操作は、例えば、後述する出力部112等により出力(例えば表示)されている平面オブジェクト上の領域(あるいはその近傍を含む領域)に対する予め指定された操作を出力変更操作として受け付ける。予め指定された操作とは、例えば、平面オブジェクト上の領域の一部の領域等にポインタを配置する操作や、この領域をポインタ等クリックする操作や、平面オブジェクト上の領域で、予め指定された方向にクリックした状態のポインタを移動させる操作である。なお、入力デバイスがタッチパネル等である場合、ポインタを配置する操作はタッチ、クリックはタップ、クリックした状態でポインタを予め指定された方向に動かす操作をスワイプ(指を滑らす操作)としてもよい。
また、操作受付部104は、例えば、異なる2以上の出力変更操作のうちの一つを選択的に受け付けてもよい。異なる2以上の出力変更操作とは、例えば、後述する実行部105に異なる出力順番に従って配置用情報を取得させるための操作である。操作受付部104が、異なる出力変更操作をどのように受け付けるかは問わない。操作受付部104は、例えば、ユーザによる異なる操作を、異なる出力変更操作として受け付ける。例えば、平面オブジェクト上にポインタをおく(タッチ)領域や、クリック(タップ)する領域の違いによって、異なる出力変更操作を受け付けるようにしても良い。また、平面オブジェクト上の領域におけるクリック状態のポインタの移動方向(スワイプ方向)によって異なる出力変更操作を受け付けるようにしてもよい。例えば、左方向に移動させる場合と、右方向に移動させる場合と、上方向に移動させる場合と、下方向に移動させる場合とで、それぞれ異なる出力変更操作を受け付けるようにしても良い。なお、同一直線上の異なる方向についてポインタを移動させる操作が行われた場合、操作受付部104は、一方の動作では、同一の出力順番の昇順で配置用情報を取得する出力変更操作を受け付け、他方の動作では、同一の出力順番の降順で配置用情報を取得する出力変更操作を受け付けるようにしてもよい。操作受付部104が受け付ける出力変更操作は、例えば、操作が行われた平面オブジェクトに対応付けられた配置用情報を対象とした出力変更操作である。なお、操作受付部104は、入力デバイスのポインタの座標の位置やその変化等から出力変更操作を取得可能である。
なお、出力変更操作は、操作に応じて取得した配置用情報を表面に配置した平面オブジェクトで現在出力されている平面オブジェクトの出力を更新する指示を与えるための操作や、この操作に応じて取得した配置用情報で、現在出力されている平面オブジェクトの表面に配置されている配置用情報を更新する指示を与えるための操作を兼用していると考えても良い。
なお、操作受付部104は、出力変更操作以外のどのような操作を受け付けても良い。例えば、平面オブジェクトを削除したり追加したりする操作を受け付けても良い。また、平面オブジェクトの位置を移動させる操作等を受け付けても良い。また、操作受付部104は、操作が制限されている平面オブジェクトに対する操作の制限を解除するための予め指定された操作を受け付けるようにしてもよい。操作の制限を解除する操作は、どのような操作であっても良い。例えば、パスワード等の入力を行う操作であっても良い。
ここで述べる受け付けとは、キーボードやマウス、タッチパネルなどの入力デバイスから入力された情報の受け付け、有線もしくは無線の通信回線を介して送信された情報の受信などを含む概念である。入力手段は、テンキーやキーボードやマウスやタッチパネルやメニュー画面によるもの等、何でも良い。操作受付部104は、キーボードやタッチパネル等の入力手段のデバイスドライバーや、メニュー画面の制御ソフトウェア等で実現され得る。
実行部105は、出力変更操作に応じて予め指定された出力順番となる一の配置用情報を取得する処理を少なくとも含む処理を実行する。実行部105は、少なくとも出力変更処理が実行できるものであればよい。なお、ここで述べる一の配置用情報とは、1つの配置用情報であっても良いし、一つの表面に配置される一組あるいは一グループの配置用情報であっても良い。予め指定された出力順番とは、例えば、現在、平面オブジェクトに配置されて出力されている配置用情報(言い換えれば、実行部105が取得した最新の配置用情報)の次または前の出力順番となる配置用情報である。あるいは2以上の予め指定された数だけ出力順番が次または前となる出力順番の配置用情報であっても良い。配置用情報と出力順番とはどのように対応付けられていても良く、例えば、配置用情報に対して直接出力順番が対応付けられていても良い。また、出力順番と配置用情報を取得するための条件である取得条件情報とが対応付けられているようにして、一の出力順番に対応する配置用情報を、この一の出力順番に対応付けられた取得条件情報が示す条件に合致する配置用情報としてもよい。取得条件情報については、後述する。実行部105は、例えば、取得条件情報を用いて配置用情報の出力順番を管理する予め用意された管理情報等から、出力順番に対応した配置条件情報を取得し、この配置条件情報が示す条件を満たす配置用情報を、この出力順番に応じた配置用情報として取得するようにしても良い。この管理情報は、例えば、取得条件情報と、出力順番とを対応付けた管理情報であり、この場合、例えば、一の出力順番に対応した取得条件情報が示す条件を満たす配置用情報が、その一の出力順番の配置用情報である。
取得条件情報は、取得対象となる1以上の配置用情報を結果的に指定可能な情報であれば、どのような情報であっても良い。例えば、取得条件情報は、配置用情報の属性を指定する情報であっても良い。ここで述べる属性とは、配置用情報のデータタイプ(画像、テキスト情報)や配置用情報に付与されたタグの種類やタグ名等である。また、配置用情報が項目分けされている場合は項目も属性と考えて良い。また、配置用情報にインデックス情報が付与されている場合、取得条件情報は、このインデックスを指定する情報であっても良い。また、配置用情報の場所やファイル名やディレクトリ等を指定する情報であっても良い。また、配置用情報を検索するための検索式や演算式であっても良い。なお、検索式は、必ずしも式の形で示されている必要はなく、検索に利用可能なキーワード等であっても良い。例えば、この検索式で示される取得条件情報は、「select」、「from」、「where」等の組み合わせ等である。なお、「select」は取得する配置用情報の項目、「from」は検索対象となる複数の配置用情報を指定する情報、「where」は検索のための条件を示す情報である(SQLの仕様を参照)。また、演算式で示される取得条件情報とは、例えば、1以上の配置用情報に対して行われる演算式であり、例えば、数値で表される2つの配置用情報を指定する情報と、これらの平均を算出する演算式等で表されたものや、現在の時間等に所定時間を加減算する演算式等で表されたもの等である。
なお、出力順番と取得条件情報との対応付けは、出力対象となり得る1以上の平面オブジェクトにそれぞれ個別に設定されていてもよいし、全ての平面オブジェクトや一部の平面オブジェクトに共通に設定されていても良い。
なお、実行部105は、例えば、異なる出力変更操作を受け付けた場合に、その変更指示に応じた出力順番に従って配置用情報を取得するようにしてもよい。なお、ここでは、一の出力順番の昇順に従って配置用情報を取得することと、降順に従って配置用情報を取得することとは、異なる出力順番に従って配置用情報を取得することと考えても良い。あるいは、異なる出力変更操作は、異なる系統の出力順番を指定する情報を含む指示と考えても良い。例えば、4つの配置用情報A、B、C、Dがある場合を考えると、第一の操作を繰り返し行った場合、実行部105は、配置用情報A、B、C、Dの順に配置用情報が取得し、第二の操作を繰り返し行った場合、上記とは逆に配置用情報D、C、B、Aの順に配置用情報が取得し、さらに第三の操作を行った場合、上記とは異なる系統で配置用情報B、C、A、Dの順に配置用情報を取得してもよい。例えば、この第一〜第三の方向は、それぞれ異なる方向に平面オブジェクトをなぞる操作である。なお、実行部105は、異なる出力変更操作別に取得条件情報と配置用情報の出力順番とを対応付けて有する管理情報等を用いて、出力順番に応じた配置用情報を取得するようにしても良い。ここでの異なる出力変更操作別に用意された管理情報は、例えば、出力変更操作と、取得条件情報と、出力順番とを対応付けた管理情報であり、各管理情報においては、例えば、一の出力順番に対応した取得条件情報が示す条件を満たす配置用情報が、その一の出力順番の配置用情報である。
なお、出力変更操作に応じて予め指定された出力順番となる一の配置用情報を取得する処理以外の実行部105が実行する処理は、どのような処理であっても良い。例えば、実行部105は、操作受付部104が受け付けた配置に関する操作に応じて、平面オブジェクトの配置が変更されるよう、オブジェクト配置情報格納部102に格納されているオブジェクト配置情報を更新してもよい。また、平面オブジェクトに配置された配置用情報を用いて予め指定されている演算を行ったりする処理や、平面オブジェクトを追加したり削除したりする処理等でもよい。また、複数の平面オブジェクトをグループ化する操作等であってもよい。また、実行部105が実行する処理は、平面オブジェクトに対する処理であっても、平面オブジェクトに対する処理以外の処理であっても良い。
なお、実行部105は、出力変更操作を受け付けた場合以外の予め指定されたタイミングやトリガーに応じて、1以上の平面オブジェクトのそれぞれの表面に配置される一の配置用情報を、各平面オブジェクトごとに取得してもよい。実行部105は、例えば、各平面オブジェクトに対応付けられた1以上の配置用情報の中から配置用情報を取得する。実行部105は、例えば、情報処理装置1の起動時等に、一の配置用情報を取得しても良い。また、図示しない受付部等を介して、ユーザ等から平面オブジェクトを表示する指示を受け付けた場合に、一の配置用情報を取得しても良い。
情報処理装置1が後述する出力変更操作を受け付けた場合以外の場合(例えば起動時等)において取得する一の配置用情報は、どのように決定されても良い。例えば、実行部105が、予め指定されている配置用情報を取得しても良い。また、実行部105が、図示しない受付部等を介してユーザ等により指定された配置用情報を取得しても良い。また、ランダムに配置用情報を取得しても良い。また、前回の終了時に出力されていた配置用情報を取得しても良い。また、実行部105は、例えば、予め用意された配置用情報を取得するための条件を示す情報である取得条件情報が示す条件に合う1つまたは一群の配置用情報を取得しても良い。
実行部105は、通常、MPUやメモリ等から実現され得る。実行部105の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。但し、ハードウェア(専用回路)で実現しても良い。
ロック指定情報格納部106には、配置用情報格納部103に格納されている配置用情報のうちの、操作にロックをかけるための配置用情報を指定する情報であるロック指定情報が格納される。操作にロックをかける、とは、例えば、平面オブジェクトに対して行われた1以上の操作を無効とすることである。ロック指定情報とは、具体的には、操作にロックをかけることを決定するための判断に利用される配置用情報を指定する情報である。例えば、このロック指定情報で指定される配置用情報が平面オブジェクトに配置される配置用情報として取得された場合(あるいは、平面オブジェクトに配置されている場合)、この平面オブジェクトに関する操作がロックされる。
ロック指定情報は、ロックをかける配置用情報を結果的に指定可能な情報であれば、どのような情報であっても良い。例えば、ロック指定情報は、ロックをかける配置用情報を示す情報であっても良い。また、ロックをかける配置用情報を指定するための条件を示す情報であっても良い。この条件を示す情報としては、例えば、上述した配置条件情報と同様の情報が利用可能である。ロック指定情報は、例えば1以上の平面オブジェクトに対して個別に対応付けて用意されていても良いし、1以上の平面オブジェクトに対して一括して対応付けて用意されていてもよい。ロック指定情報格納部106は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能である。
ロック判断部107は、実行部105が取得した配置用情報がロック指定情報により指定された配置用情報であるか否かを判断して、平面オブジェクトに対する操作の制限が必要であるか否かを判断する。ロック判断部107は、実行部105が取得した配置用情報が配置される平面オブジェクトについてだけ操作の制限が必要であると判断しても良いし、実行部105が取得した配置用情報が配置される平面オブジェクトも含めた、現在出力されている平面オブジェクトの全てや、予め指定された一部について、操作の制限が必要であると判断しても良い。予め指定された一部とは、例えば、取得された配置用情報が配置される平面オブジェクト(即ち、出力変更操作を受け付けた平面オブジェクト)を含む平面オブジェクトのグループに属する全ての平面オブジェクトである。
ロック判断部107は、例えば、ロック指定情報が、配置用情報を示す情報である場合、実行部105が取得した配置用情報が、ロック指定情報が示す配置用情報と一致するか否かを判断し、一致する場合、平面オブジェクトに対する操作の制限が必要であると判断し、一致しない場合操作の制限が必要でないと判断する。なお、ここでの一致は、完全一致であっても部分一致であっても良い。また、例えば、ロック指定情報が、配置用情報の条件を情報である場合、ロック判断部107は、実行部105が取得した配置用情報が、ロック指定情報の示す条件を満たすか否かを判断し、満たす場合、平面オブジェクトに対する操作の制限が必要であると判断し、一致しない場合操作の制限が必要でないと判断してもよい。なお、ロック判断部107は、実行部105が取得した配置用情報がロック指定情報により指定された配置用情報であるか否かが、結果的に判断できればよく、例えば、後述する出力部112が出力している平面オブジェクトに配置されている配置用情報がロック指定情報により指定された配置用情報であるか否か等を判断してもよい。
ロック判断部107は、例えば、配置用情報が配置される平面オブジェクト等の現在表示されている平面オブジェクトを操作の制限が必要であると判断した場合、この平面オブジェクトが操作の制限された平面オブジェクトであることを示す操作可否情報を、後述する操作可否情報格納部111に蓄積するようにしてもよい。操作可否情報は、操作制限がされている平面オブジェクトを示す情報であれば、どのような情報であっても良い。例えば、操作可否情報は、操作が制限された平面オブジェクトの識別情報のリストや、操作の制限対象となる平面オブジェクトの識別情報に対して付与された操作が制限されたことを示すフラグ情報である。また、操作可否情報は、現在表示されている全ての平面オブジェクトの操作を制限することを示す情報であっても良く、この場合、操作可否情報は、表示されている平面オブジェクトの全てが、操作制限された平面オブジェクトであることを示す情報となる。
ロック判断部107は、通常、MPUやメモリ等から実現され得る。ロック判断部107の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。但し、ハードウェア(専用回路)で実現しても良い。
操作制限部108は、ロック判断部107が、操作の制限が必要であると判断した平面オブジェクトに対する操作を制限する。平面オブジェクトに対する操作を制限する、ということは、例えば、平面オブジェクトに対する操作のうちの一部または全てを無効とする、ということである。操作を無効にするということは、例えば、操作受付部104を、ユーザからの操作等を受け付けないように制御することや、操作受付部104が受け付けた操作により発生する指示等を破棄する等によって無効化することや、実行部105が操作受付部104が受け付けた操作に応じた処理を実行しないようにすること等である。なお、操作制限部108により制限される操作には、この操作の制限を解除するための操作は除くことが好ましい。制限される操作は、例えば、予め指定された操作である。操作の制限とは、操作をロックすることと考えても良い。例えば、操作制限部108は、ロック判断部107が、操作が制限された配置用情報であると判断した場合に、上述した出力変更操作を無効とすることが好ましい。平面オブジェクトに配置される配置用情報を変更不可として、平面オブジェクトに配置され得る配置用情報が第三者に見られないようにすることができ、セキュリティを確保できるからである。
なお、操作の制限が必要であると判断された平面オブジェクトが1以上ある場合、操作制限部108は、他の平面オブジェクトに対する操作についても操作の制限を行うようにしてもよい。
操作制限部108は、例えば、操作可否情報により操作の制限が必要であることが指定されている平面オブジェクトに対する操作を制限するようにしてもよい。あるいは、現在出力されている平面オブジェクトのうちの少なくとも一つが、操作可否情報によって、操作の制限が必要な平面オブジェクトであることが指定されているものである場合、全ての平面オブジェクト、あるいは、同じグループに属する平面オブジェクトに対する操作を制限しても良い。操作可否情報は、上述したように操作が制限されている平面オブジェクトを示す情報である。
また、操作制限部108は、操作受付部104が平面オブジェクトに対する操作の制限を解除する操作を受け付けた場合に、操作に対する制限を解除するようにしてもよい。例えば、後述する操作可否情報格納部111に格納されている操作可否情報の中から、操作の制限が解除された平面オブジェクトを示す操作可否情報を削除しても良い。
操作制限部108は、通常、MPUやメモリ等から実現され得る。操作制限部108の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。但し、ハードウェア(専用回路)で実現しても良い。
ロック指定情報受付部109は、平面オブジェクトに対してロック指定情報を受け付ける。ロック指定情報は、1以上の平面オブジェクトのそれぞれに対してロック指定情報を受け付けても良いし、1以上の平面オブジェクトに対して一括してロック指定情報を受け付けても良い。例えば、ロック指定情報受付部109は、現在平面オブジェクトに配置されている配置用情報をロック指定情報として受け付けても良い。また、現在平面オブジェクトに配置されている配置用情報を取得する際に用いられた取得条件情報をロック指定情報として取得しても良い。ロック指定情報の入力手段は、テンキーやキーボードやマウスやメニュー画面によるもの等、何でも良い。ロック指定情報受付部109は、テンキーやキーボード等の入力手段のデバイスドライバーや、メニュー画面の制御ソフトウェア等で実現され得る。
ロック指定情報蓄積部110は、ロック指定情報受付部109が受け付けたロック指定情報をロック指定情報格納部106に蓄積する。ロック指定情報受付部109が平面オブジェクトに対して個別に対応付けられたロック指定情報を受け付けた場合、平面オブジェクトと対応付けて受け付けたロック指定情報をロック指定情報格納部106に蓄積する。ロック指定情報蓄積部110は、通常、MPUやメモリ等から実現され得る。ロック指定情報蓄積部110の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。但し、ハードウェア(専用回路)で実現しても良い。
操作可否情報格納部111には、操作が制限される平面オブジェクトを示す情報である操作可否情報が格納される。操作可否情報格納部111は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能である。
出力部112は、形状情報が示す平面オブジェクトの表面に、実行部105が取得した配置用情報を配置した画像情報を出力する。出力部112は、例えば、出力対象となる平面オブジェクトの形状情報と、実行部105が取得した出力対象となる平面オブジェクトの表面に配置される配置用情報とを取得して、読み出した形状情報が示す1以上の面に対し、それぞれに対応した配置用情報を配置した平面オブジェクトの画像情報を構成し出力する。平面オブジェクトの配置される位置は、出力対象となる平面オブジェクトに対応するオブジェクト配置情報により決定される。また、出力部112は、上述したような操作の制限を解除するための入力インターフェース画面、例えばパスワード入力画面等を、操作が制限された平面オブジェクト等に対する操作や、情報処理装置1に対する他の操作に応じて構成し出力するようにしてもよい。
ここで述べる出力とは、ディスプレイへの表示、プロジェクターを用いた投影、プリンタへの印字、音出力、外部の装置への送信、記録媒体への蓄積、他の処理装置や他のプログラムなどへの処理結果の引渡しなどを含む概念である。
出力部112は、ディスプレイ等の出力デバイスを含むと考えても含まないと考えても良い。出力部112は、出力デバイスのドライバーソフトまたは、出力デバイスのドライバーソフトと出力デバイス等で実現され得る。
図2は、本発明の実施の形態に係る情報処理装置1の動作を説明するためのフローチャートである。以下、図2を用いて動作について説明する。
(ステップS200)実行部105は、1以上の平面オブジェクトについて、予め指定された配置用情報を読み出す。1以上の平面オブジェクトは、デフォルト等で予め指定された1以上の平面オブジェクトや、ユーザ等により指定された1以上の平面オブジェクトである。また、各平面オブジェクトについて読み出される配置用情報は、各平面オブジェクトに対応付けられた配置用情報のうちの一の配置用情報である。
(ステップS201)出力部112は、1以上の平面オブジェクトの形状情報や、オブジェクト配置情報を読み出し、表面にステップS200で読み出した配置用情報をそれぞれ配置した1以上の平面オブジェクトの画像情報を構成し、出力する。
(ステップS202)操作制限部108は、操作可否情報格納部111に操作可否情報が格納されているか否かを判断する。なお、ここでは,一例として、操作可否情報格納部111に格納される操作可否情報が、現在出力されている平面オブジェクト全てに対して操作を制限することを示す操作可否情報である場合について説明する。ただし、操作可否情報は、各平面オブジェクトに対して個別に操作を制限することを示す情報であっても良い。この場合、この判断処理は、例えば、後述するステップS204で一の平面オブジェクトに対する操作を受け付けた場合の直後の処理として、この平面オブジェクトに対応する操作可否情報があるか否かを判断することで行われるようにすればよい。操作可否情報が格納されていない場合にはステップS203に進み、格納されている場合にはステップS212に進む。
(ステップS203)ロック指定情報受付部109は、ロック指定情報を受け付けたか否かを判断する。ロック指定情報受付部109が受け付けるロック指定情報は、平面オブジェクト別のロック指定情報であっても良いし、全ての平面オブジェクトに受け付けた場合、ステップS204に進み、受け付けていない場合、ステップS217に進む。
(ステップS204)操作受付部104は、平面オブジェクトに対する操作を受け付けたか否かを判断する。受け付けた場合、ステップS205に進み、受け付けていない場合、ステップS203に戻る。
(ステップS205)実行部105は、ステップS204において受け付けた操作が、一の平面オブジェクトに対する出力変更操作であるか否かを判断する。出力変更操作である場合、ステップS206に進み、出力変更操作でない場合、ステップS214に進む。
(ステップS206)実行部105は、ステップS204で受け付けた出力変更操作の操作対象となる平面オブジェクトについて、出力変更操作に応じた予め指定された出力順番の配置用情報を取得する。
(ステップS207)出力部112は、ステップS206で取得した配置用情報で、平面オブジェクトの表面に配置されていた配置用情報を置き換えた平面オブジェクトの画像を構成して出力する。
(ステップS208)ロック判断部107は、カウンターkに1を代入する。
(ステップS209)ロック判断部107は、k番目のロック指定情報をロック指定情報格納部106から読み出す。ロック指定情報が平面オブジェクト別に用意されている場合、出力変更操作の対象となった平面オブジェクトに対応付けられたk番目のロック指定情報を読み出す。
(ステップS210)ロック判断部107は、ステップS206で取得した配置用情報が、k番目のロック指定情報が指定する配置用情報であるか否かを判断する。指定する配置用情報である場合、ステップS211に進み、指定する配置用情報でない場合、ステップS215に進む。
(ステップS211)ロック判断部107は、操作可否情報を操作可否情報格納部111に蓄積する。そして、ステップS202に戻る。
(ステップS212)操作受付部104は、予め指定された操作制限を解除する操作を受け付けたか否かを判断する。受け付けた場合、ステップS213に進み、受け付けていない場合、ステップS202に戻る。
(ステップS213)操作制限部108は、操作可否情報格納部111に格納されている操作可否情報を削除する。そして、ステップS203に戻る。
(ステップS214)実行部105は、ステップS204において受け付けた操作に応じた処理を実行する。また、必要に応じて、出力部112は、処理結果を出力する。そして、ステップS203に戻る。
(ステップS215)ロック判断部107は、カウンターkの値を1インクリメントする。
(ステップS216)ロック判断部107は、k番目のロック指定情報がロック指定情報格納部106に格納されているか否かを判断する。格納されている場合、ステップS216に進み、格納されていない場合、ステップS203に戻る。
(ステップS217)ロック指定情報蓄積部110は、ステップS203で受け付けたロック指定情報をロック指定情報格納部106に蓄積する。そして、ステップS203に戻る。
なお、図2のフローチャートにおいて、電源オフや処理終了の割り込みにより処理は終了する。
以下、本実施の形態における情報処理装置1の具体的な動作について説明する。ここでは、情報処理装置1は、タッチパネルで操作可能な携帯情報端末であるとする。ただし、情報処理装置1が、どのような装置であるかは問わない。また、配置用情報格納部103に格納されている配置用情報が商品カタログに用いられる情報であり、情報処理装置1が出力する情報がインタラクティブな操作が可能な電子商品カタログである場合を例に挙げて説明する。
以下に示す表1は、形状情報格納部101に格納されている形状情報を管理する形状情報管理表である。
形状情報管理表は、「形状ID」、「幅」、「高さ」という項目を有して得る。「形状ID」は形状情報の識別情報である。「幅」、「高さ」は形状情報の幅、高さを示している。なお、ここでは形状情報が示す形状が矩形である場合を示しているが、形状は矩形以外であっても良い。また、形状情報は、平面オブジェクトの形状等を表す画像情報を有していても良い。なお、ここでは、w1や、h1は、それぞれ任意の値を示している。かかることは以下においても同様である。
図3は、オブジェクト配置情報格納部102に格納されているオブジェクト配置情報を管理するオブジェクト配置情報管理表を示す図である。オブジェクト配置情報管理表は、「オブジェクト配置ID」、「幅」、「高さ」という項目を有して得る。「オブジェクト配置ID」は、オブジェクト配置情報の識別情報である。「x座標」、「y座標」は、オブジェクト配置情報であり、平面オブジェクトが配置される座標を示している。この座標は、ここでは、形状情報が示す形状の平面オブジェクトの、左上隅の座標であるとする。なお、ここでは、x1〜x3等や、y1〜y3等は、それぞれ任意の値を示している。かかることは以下においても同様である。
図4は、配置用情報格納部103に格納されている配置用情報を示す図である。ここでは、配置用情報は、XML形式の構造化されたデータであるとする。ただし、配置用情報は、XML形式のデータでなくても良く、例えば、データを項目や属性別等に参照可能な形式のデータであれば良い。ここでは、配置用情報は、「商品名」、「色」、「メーカ」、「価格」、「発売日」、「仕様」、または「コメント」というタグのうちのいずれかのタグがつけられたデータである。配置用情報ここでは例として、ユーザ等により予め作成され、蓄積されているものとする。また、ここでは、配置用情報が商品別にグループ化されているものとする。すなわち、一対の商品タグ、すなわち「<商品>」と「</商品>」とで区切られた範囲のタグ付けられたデータが一の商品の配置用情報としてグループ化されているとする。なお、配置用情報として、画像ファイル等のアドレスを指定する情報、例えばリンク情報が含まれる場合、これにより指定されたファイルの情報が配置用情報として実行部105や出力部112により適宜取得されるものとする。
図5は、複数の平面オブジェクトのそれぞれと対応付けられた、形状情報と、オブジェクト配置情報と、配置用情報とを管理する平面オブジェクト管理表を示す図である。平面オブジェクト管理表は、平面オブジェクトを管理するための情報である。平面オブジェクト管理表は、「オブジェクトID」と、「形状ID」と、「オブジェクト配置ID」と、「対応配置用情報」という項目を有している。「オブジェクトID」は、平面オブジェクトの識別情報である。「形状ID」と、「オブジェクト配置ID」は、表1の形状情報管理表の「形状ID」と、図3のオブジェクト配置情報管理表の「オブジェクト配置ID」に対応する。「対応配置用情報」は、図4に示した配置用情報のうちの、各平面オブジェクトの表面に配置可能な配置用情報のグループ(群)を指定する情報である。「対応配置用情報」は、ここでは、図4に示した配置用情報の<商品>タグで区切られた配置用情報のグループに含まれる商品名タグの要素で、配置用情報のグループを指定する情報であり、この商品名タグの要素と同じグループに属する配置用情報が、対応する「オブジェクトID」が示す平面オブジェクトの表面に配置され得る配置用情報であるとする。
図6は、図示しない記憶媒体等に予め蓄積されている出力順番を示す情報を管理する右方向出力順番管理表(図6(a))および左方向出力順番管理表(図6(b))を示す図である。ここでは説明を簡単にするため、ここで示した右方向出力順番管理表と左方向出力順番管理表とは、全ての平面オブジェクトに共通して利用されるものとする。ただし、これらの出力順番の管理表は、各平面オブジェクトごとに個別に用意されていても良い。右方向出力順番管理表は、例えば、実行部105が最新の配置用情報を取得する際に用いられた取得条件情報と、出力部112により出力されている一の平面オブジェクト上の領域を右方向にポインタ等でなぞる処理を行った場合に操作受付部104が受け付けた出力変更操作に応じて、実行部105が新たに取得する次の配置用情報の条件を示す取得条件情報と、を対応付けて有する情報である。また、左方向出力順番管理表は、例えば、現在の最新の配置用情報を取得する際に用いられた取得条件情報と、出力部112により出力されている一の平面オブジェクト上の領域を左方向にポインタ等でなぞる処理を行った場合に操作受付部104が受け付けた出力変更操作に応じて、実行部105が新たに取得する次の配置用情報の条件を示す取得条件情報と、を対応付けて有する情報である。右方向出力順番管理表および左方向出力順番管理表の「第一配置条件情報」および「第二配置条件情報」の値は、実行部105が最新の配置用情報を取得する際に用いられた配置条件情報および次に取得する配置用情報の条件を示す配置条件情報である。
例えば、一の平面オブジェクト上の領域を右方向になぞる操作に応じた出力変更操作を操作受付部104が受け付けた場合、実行部105は、現在表示されている最新の配置用情報を取得するために用いた取得条件情報と一致する「第一配置条件情報」を有するレコードの「第二配置条件情報」の値を右方向出力順番管理表から取得して、次の配置用情報を取得するための配置条件情報として用いる。
同様に、左方向になぞる操作に応じた出力変更操作を操作受付部104が受け付けた場合、実行部105は、現在表示されている最新の配置用情報を取得するために用いた取得条件情報と一致する「第一配置条件情報」を有するレコードの「第二配置条件情報」の値を左方向出力順番管理表から取得して、次の配置用情報を取得するための配置条件情報として用いる。なお、左方向出力順番管理情報から取得した配置条件情報を用いて取得される配置用情報は、実行部105が取得した最新の配置用情報に対して次の順番となる配置用情報と考えても良い。
図7は、図示しない記憶媒体等に予め蓄積されている出力順番を示す情報を管理する下方向出力順番管理表(図7(a))および上方向出力順番管理表(図7(b))を示す図である。下方向出力順番管理表および上方向出力順番管理表は、対応する出力変更操作が一の平面オブジェクト上の領域を下方向および上方向になぞる操作に応じて受け付けた出力変更操作である点が異なることを除けば、上述した左方向出力順番管理表と同様であるのでここでは詳細な説明は省略する。
まず、ユーザが、例えば、情報処理装置1を起動すると、出力部112は、形状情報格納部101から、図5に示した平面オブジェクト管理表で管理される各平面オブジェクトの形状情報を読み出す。そして、取得した形状情報を、平面オブジェクトの識別情報と対応付けて、図示しない記憶媒体等に一時記憶する。
また、実行部105は、平面オブジェクト管理表で管理される各平面オブジェクトの表面にそれぞれ配置される配置用情報を配置用情報格納部103から取得する。具体的には、図6に示した平面オブジェクト管理表の各「オブジェクトID」が示す各平面オブジェクトに配置される配置用情報として、各「オブジェクトID」に対応した「対応配置用情報」が示すタグの要素を含む配置用情報のグループ(ここでは、商品タグで囲まれた情報を1のグループに属する情報とする)の中の一部の配置用情報をそれぞれ取得する。ここでは、この一部の配置用情報として、初期値として予め指定されている配置条件情報である「商品名、商品写真」という条件を満たす配置用情報を取得するものとする。
例えば、実行部105は、図5に示した平面オブジェクト管理表を参照して、「オブジェクトID」が「OB001」である平面オブジェクトに配置される配置用情報として、要素が「BS602」である商品名タグを含む配置用情報のうちの、「商品名、商品写真」という配置条件情報が示す条件を満たす配置用情報を取得することを決定する。「商品名、商品写真」という配置条件情報が示す条件を満たす配置用情報とは、図4に示した配置用情報のうちの、商品名タグの要素である配置用情報と、商品写真タグの要素である配置用情報とを意味する。そして、実行部105は、図4に示した配置用情報の「BS602」という要素を有する商品名タグを有する配置用情報のグループから、商品名タグの要素である「BS602」と、商品写真タグの要素である「bs602.gif」とを配置用情報として取得する。なお、「bs602.gif」としては、リンク先の画像情報を取得する。そして、取得した配置用情報を、出力部112に渡す。出力部112は、渡された配置用情報を、平面オブジェクトの識別情報と対応付けて、図示しない記憶媒体等に一時記憶する。同様にして、他の形状情報についても配置用情報を取得する。
また、出力部112は、各平面オブジェクトのオブジェクト配置情報を、オブジェクト配置情報格納部102から取得する。具体的には、図3に示したオブジェクト配置情報管理表から、図5で示した平面オブジェクト管理表で管理される各平面オブジェクトの「オブジェクト配置ID」に対応するオブジェクト配置情報である「x座標」と「y座標」との値を取得する。そして、取得したオブジェクト配置情報を、平面オブジェクトの識別情報と対応付けて、図示しない記憶媒体等に一時記憶する。
図8は、出力部112が取得して一時記憶した形状情報と、配置用情報と、オブジェクト配置情報と、取得条件情報とを平面オブジェクトの識別情報と対応付けて管理する取得平面オブジェクト管理表である。取得平面オブジェクト管理表は、「形状ID」と、「オブジェクト配置ID」と、「対応配置用情報」と、「配置用情報」と、「取得条件情報」とを有する。「形状ID」は、表1に示した形状情報管理表の形状IDに相当する。「オブジェクト配置ID」および「対応配置用情報」は、図5の「オブジェクト配置ID」および「対応配置用情報」に相当する。「配置用情報」は、実行部105が取得した配置用情報である。「取得条件情報」は、配置用情報を取得する際に用いられた取得条件情報である。
出力部112は、各平面オブジェクトについて取得した形状情報が示す形状を有する平面オブジェクトの表面に、各平面オブジェクトについて取得した配置用情報を配置した平面オブジェクトの画像情報を生成し、出力する。ここでは、出力として例えば表示を行う。
図9は、出力部112による平面オブジェクトを有する画像情報の表示例を示す図である。平面オブジェクト91〜93は、それぞれ、「オブジェクトID」がOB001〜OB003である平面オブジェクトであるとする。なお、本実施の形態においては、座標の値や、オブジェクトの配置等は、説明の便宜上のものであり、必ずしも正確に描かれたものではない。図9に示すように、各平面オブジェクトは、商品ごとの情報を表示するオブジェクトとなっている。
次に、ユーザがメニュー画面やマウス等を操作して、平面オブジェクト91の表面を左から右方向になぞる操作を行ったとする。操作受付部104は、タッチパネルから入力される指でタッチされた座標のx軸方向の変化とその速さ等から平面オブジェクト91上の領域を右方向になぞる操作が行われたと判断して、平面オブジェクト91に対応する「オブジェクトID」が「OB001」である平面オブジェクトに対する右方向になぞる操作に対応した出力変更操作を受け付ける。なお、「オブジェクトID」が「OB001」である平面オブジェクトを、以下適宜、平面オブジェクトOB001と称す。かかることは他のオブジェクトについても同様である。
次に、実行部105は、オブジェクトID「OB001」に対応した平面オブジェクトについて、出力変更操作に対応した配置用情報を新たに取得する。ここでは、右方向になぞる操作に応じた出力変更操作を受け付けたため、図6(a)に示した右方向出力順番管理表を用いて、新たに取得する配置用情報の条件を示す取得条件情報を取得する。
具体的には、まず、実行部105は、図8に示した取得平面オブジェクト管理表から、「オブジェクトID」が「OB001」である平面オブジェクトに配置されている配置用情報に対応する配置条件情報である「商品名、商品写真」を取得する。そして、図6(a)に示した右方向出力順番管理表において、「第一配置条件情報」の値が、取得した「商品名、商品写真」と一致するレコードを検索し、このレコードの「第二配置変更条件情報」である「価格」を取得する。そして、図4に示した配置用情報のうちの、「BS602」という商品名タグを有する要素を含む配置用情報のグループから、タグ名が「価格」であるタグが付けられた情報である「3.2万円」を次の配置用情報として取得する。そして、出力部112は、この取得した配置用情報を配置した平面オブジェクトの画像情報で、オブジェクトID「OB001」に対応した平面オブジェクトの画像情報を更新した画像を表示する。
図10は、出力部112による出力変更操作に応じて更新された平面オブジェクトの画像を示す図である。
また、出力部112は、図8に示した取得平面オブジェクト管理表の「オブジェクトID」が「OB001」であるレコードの「配置用情報」の値を「3.2万円」、「取得条件情報」の値を「価格」にそれぞれ更新(ここでは上書き)する。
図11は、更新後の取得平面オブジェクト管理表を示す図である。
図12は、ロック指定情報格納部106に格納されているロック指定情報を管理するロック指定情報管理表を示す図である。ロック指定情報管理表は、「オブジェクトID」と、「ロック指定情報」という項目を有している。「ロック指定情報」は、ロック指定情報である。「オブジェクトID」は、平面オブジェクトの識別情報である。ロック指定情報は、ここでは、操作にロックをかける配置用情報を指定するための取得条件情報であるとする。ロック指定情報は、ロック指定情報管理表により、平面オブジェクトの識別情報と対応付けられているものとする。
ロック判断部107は、上記のように実行部105が、一の平面オブジェクトに対して出力変更操作に応じた出力順番の配置用情報を取得した場合に、この平面オブジェクトに対応したロック指定情報を図12に示したロック指定情報管理表から読み出す。ここでは、出力変更操作を受け付けた平面オブジェクトの「オブジェクトID」が「OB001」であるため、図12に示したロック指定情報管理表の「オブジェクトID」が「OB001」であるレコードの「ロック指定情報」である「価格」を取得する。そして、実行部105が出力変更操作に応じて取得した配置用情報が、この取得したロック指定情報が示す配置用情報であるか否かを判断する。具体的には、取得したロック指定情報は「仕様」であるため、ロック判断部107は、実行部105が取得した配置用情報に付与されていたタグが、ロック指定情報が示す「仕様」と一致するタグであるか否かを判断する。
ここでは、実行部105が取得した配置用情報は「価格」タグが付与された配置用情報であるため、ロック判断部107は、実行部105が取得した配置用情報が、ロック指定情報が示す配置用情報でないと判断する。このため、ロック判断部107は、現在出力されている全ての平面オブジェクトに対する操作の制限が必要でないと判断する。このため、ロック判断部107は、出力されている全ての平面オブジェクトが操作の制限されていない平面オブジェクトであることを示す操作可否情報を、操作可否情報格納部111に蓄積しない。
以下に、操作可否情報格納部111に格納されている操作可否情報を管理する操作可否情報管理表を示す。
操作可否情報は、ここでは、例えばフラグ情報であるとする。ここでは、値が、「0」であれば、操作可否情報が格納されておらず、全ての平面オブジェクトに対する操作が制限されていない、つまり制限が解除されていることを示す。また、値が「1」であれば、操作可否情報が格納されており、全ての平面オブジェクトに対する操作が制限されていることを示す。ここでの操作に対する制限とは、例えば、制限を解除するための情報を入力するための操作以外の操作を無効とすることであるとする。ここでは、ロック判断部107により操作可否情報が格納されないため、操作可否情報は、上記の表に示すように初期設定の値である「0」のままとなる。
なお、一の平面オブジェクトに対応したロック指定情報が複数ある場合、ロック判断部107は、上記の判断処理を、制限が必要であると判断されるまで、ロック指定情報を変えながら全てのロック指定情報について繰り返すようにしても良い。
次に、操作制限部108は、操作可否情報格納部111に、平面オブジェクトに対する操作が制限されていることを示す操作可否情報が格納されているか否かを判断する。ここでは、上述した操作可否情報管理表に示すように、操作可否情報の値は「0」であり、操作可否情報が格納されていないことを示している。このため、操作制限部108は、操作受付部104に対する操作の制限を行わず、操作受付部104は操作の制限を受けない。
次に、ユーザがメニュー画面やマウス等を操作して、平面オブジェクト91の表面を上から下になぞる操作を行ったとすると、操作受付部104は、平面オブジェクトOB001に対する下方向になぞる操作に対応した出力変更操作を受け付ける。
次に、実行部105は、出力変更操作の対象となるオブジェクトID「OB001」に対応した平面オブジェクトについて、出力変更操作に対応した配置用情報を新たに取得する。具体的には、実行部105は、図11に示した取得平面オブジェクト管理表から、「オブジェクトID」が「OB001」である平面オブジェクトに配置されている配置用情報に対応する配置条件情報である「価格」を取得する。そして、図7(a)に示した下方向出力順番管理表において、「第一取得条件情報」の値が、取得した「価格」と一致するレコードを検索し、このレコードの「第二配置変更条件情報」である「仕様」を取得する。そして、図4に示した配置用情報のうちの、平面オブジェクトOB001に対応した「BS602」という商品名タグを有する要素を含む配置用情報のグループから、タグ名が「仕様」であるタグが付けられた情報である「ワンセグ対応」を次の配置用情報として取得する。そして、出力部112は、この取得した配置用情報を配置した平面オブジェクトの画像情報で、オブジェクトID「OB001」に対応した平面オブジェクトの画像情報を更新した画像を表示する。
図13は、出力部112による出力変更操作に応じて更新された平面オブジェクトの画像を示す図である。
また、出力部112は、図12に示した取得平面オブジェクト管理表の「オブジェクトID」が「OB001」であるレコードの「配置用情報」の値を「ワンセグ対応」、「取得条件情報」の値を「仕様」にそれぞれ更新(ここでは上書き)する。
図14は、更新後の取得平面オブジェクト管理表を示す図である。
ロック判断部107は、上記のように実行部105が、一の平面オブジェクトに対する出力変更操作に応じた出力順番の配置用情報を取得した場合に、この平面オブジェクトに対応したロック指定情報を図12に示したロック指定情報管理表から読み出す。ここでは、出力変更操作を受け付けた平面オブジェクトの「オブジェクトID」が「OB001」であるため、図12に示したロック指定情報管理表の「オブジェクトID」が「OB001」であるレコードの「ロック指定情報」である「仕様」を取得する。そして、実行部105が出力変更操作に応じて取得した配置用情報が、この取得したロック指定情報が示す配置用情報であるか否かを判断する。具体的には、取得したロック指定情報は「仕様」であるため、ロック判断部107は、実行部105が取得した配置用情報に付与されていたタグが、ロック指定情報が示す「仕様」と一致するタグであるか否かを判断する。
ここでは、実行部105が取得した配置用情報は「仕様」タグが付与されていた配置用情報であるため、ロック判断部107は、実行部105が取得した配置用情報が、ロック指定情報が示す配置用情報であると判断する。このため、ロック判断部107は、現在出力されている全ての平面オブジェクトに対する操作の制限が必要であると判断する。そして、ロック判断部107は、出力されている全ての平面オブジェクトが操作の制限された平面オブジェクトであることを示す操作可否情報を、操作可否情報格納部111に蓄積する。
ここでは、ロック判断部107により操作可否情報が格納されるため、上述した操作可否情報管理表の値は、以下に示すように「1」に更新される。
なお、ロック判断部107は、出力変更操作が行われた平面オブジェクトについてのみ操作の制限が必要であると判断し、この平面オブジェクトと対応付けた操作可否情報を、操作可否情報格納部111に蓄積するようにしてもよい。
次に、操作制限部108は、操作可否情報格納部111に、平面オブジェクトに対する操作が制限されていることを示す操作可否情報が格納されているか否かを判断する。ここでは、上述した操作可否情報管理表に示すように、操作可否情報の値は「1」であり、操作可否情報が格納されていることを示している。このため、操作制限部108は、操作受付部104に対して、操作の制限を解除する操作だけを受け付けるように指示する。この結果、操作受付部104は、操作の制限を解除する操作以外の操作を受け付けないようになり、平面オブジェクトに対する出力変更操作等を受け受けないようになる。
例えば、ユーザが平面オブジェクト上を上下や左右になぞったとしても、操作受付部104は、出力変更操作を受け付けない。
ここで、例えば、ユーザが、操作制限の解除のための予め指定された操作として、一の平面オブジェクトの画像上を叩く操作、いわゆるタップ操作を行ったとする。操作受付部104がこの操作を受け付けると、操作制限の解除のためのパスワード入力画面の画像情報を構成する指示を出力部112に出力する。出力部112は、パスワード入力画面を構成して表示する。
図15は、操作制限を解除するためのパスワード入力画面の表示例を示す図である。
つぎに、ユーザが平面オブジェクトの操作制限を解除するために、パスワード入力画面に、予め指定された制限解除のためのパスワードを入力したとする。
操作受付部104は、入力されたパスワードが制限解除のためのパスワードであるか否かを判断し、制限解除のためのパスワードと一致した場合、制限解除の操作を受け付けたと判断する。なお、パスワード等による認証処理等を行う構成や処理等は、公知技術であるので、ここでは詳細な説明を省略する。
操作制限部108は、ユーザから制限解除の操作を受け付けたため、操作可否情報格納部111に格納されている操作可否情報を削除する。ここでは、操作可否情報の値を「0」で上書きする。
これにより、操作受付部104は、平面オブジェクトに対する通常の操作を受け付けることが可能となる。例えば、平面オブジェクト「OB002」等に表示される配置用情報を出力変更操作によって変更させることができる。
ここで、ユーザが、一の平面オブジェクト「OB002」に現在表示されている配置用情報と同様の配置用情報をロック指定情報に指定するために、例えば一の平面オブジェクト「OB002」をマウスクリック等により指定して、この平面オブジェクトに現在表示されている配置用情報を取得するために用いられた取得条件情報をロック指定情報に設定するための操作(例えばメニュー項目の選択等)を行ったとする。ロック指定情報受付部109は、現在平面オブジェクト「OB002」に配置されている配置用情報を取得する際に利用したロック指定情報であるタグを取得し、ロック指定情報蓄積部110は、このタグを、ロック指定情報として、この平面オブジェクトの識別情報と対応付けてロック指定情報格納部106に蓄積する。具体的には追記する。現在平面オブジェクト「OB002」に配置されている配置用情報を取得する際に利用したロック指定情報であるタグが「商品ID」であったとすると、この「商品ID」が新たなロック指定情報として蓄積される。
図16は、ロック指定情報の追記されたロック指定情報管理表を示す図である。このように、一つの平面オブジェクトの一の面に配置されている配置用情報を指定すると、この配置用情報を取得する際に利用した取得条件情報等を、新たなロック指定情報として追加することができる。
なお、一の平面オブジェクトに対して、上記のようにロック指定情報を追加した場合に、他の平面オブジェクトにも同じロック指定情報が追加されるようにしても良い。このようにすることで、ロック指定情報を追加する手間を省くことができる。
また、上記のようにロック指定情報受付部109が受け付けたロック指定情報を追記する代わりに、上書き等によりロック指定情報受付部109が受け付けたロック指定情報で、既存のロック指定情報を更新してもよい。
以上、本実施の形態によれば、ロック指定情報が指定する配置用情報を、平面オブジェクトに表示させることで、平面オブジェクトに対する操作を制限することができる。これにより、例えば、第三者等が、平面オブジェクトを勝手に操作して、平面オブジェクト上に配置される配置用情報を許可なく見ることを防ぐことが可能となる。したがって、平面オブジェクトに配置される配置用情報を変更するという簡単な操作で、操作を制限することができ、平面オブジェクトを用いて出力される情報に対して、容易にセキュリティを保つことができる。
なお、本実施の形態においては、出力条件情報を仮想上の立体オブジェクトの各面に対応付けて管理しておくようにし、操作受付部104が出力変更操作を受け付けるごとに、出力変更操作に応じた向きに仮想上の立体オブジェクトを回転させた場合の予め指定された向き(例えば正面)を向く面を判断し、この面に対応付けられた出力条件情報を、次に平面オブジェクトに配置する配置用情報の条件を示す情報として取得するようにしてもよい。このようにすることで、立体オブジェクトを操作しているような操作感を平面画像によって実現できる。なお、この場合、形状情報は、立体図形を斜投影法等で示した画像情報を含むもの、あるいはこのような画像を生成可能なものであることが、立体オブジェクトのような操作が可能であることをユーザに示すことができる点で好ましい。かかることは以下においても同様である。
また、仮想上の立体オブジェクトの各面について、上下左右の向きを異なるものとしたものを、便宜上、それぞれ異なる面と考えて異なる識別情報を対応付けて示すようにする。そして、この立体オブジェクトの予め指定された一の方向(例えば正面)を向いた面が平面オブジェクトの表面に相当する出力用の面と考えて、上述した異なる識別情報と対応付けられた各面が出力用の面である状態から、立体オブジェクトを上下左右等に回転させた場合に、出力用の面となる面の識別情報を、回転前の面の識別情報と対応付けて回転方向別に管理情報等で管理する。また、向きが異なる面に対して付与された識別情報と、この各面に配置される配置用情報の条件を示す出力条件情報とを対応付けた管理情報も予め用意しておく。但し、立体オブジェクト自体の情報は不要である。そして、これらの管理情報を用いて、合成指示や出力変更操作に応じた方向に立体オブジェクトを回転させたと考えた場合に、最新の配置用情報の次の出力順番となる配置用情報を取得するための出力条件情報を取得するようにしてもよい。
例えば、直方体等を構成する一の面である面Aを、その一の辺が上に来るよう配置した場合、下に来るよう配置した場合、右に来るよう配置した場合、および左に来るよう配置した場合を、便宜上、それぞれ異なる面と考えるようにして、それぞれの面に異なる識別情報A01〜A04を付与する。ただし、これらの識別情報A01〜A04が示す面は、実際は一の面Aであるので、これらの面には、同じ出力条件情報を対応付けて管理する。同様にして、他の面についても、向きが違うものを異なる面と考えて、それぞれに異なる識別情報を付与する。次にこれらの面の識別情報を用いて、これらの各面の識別情報と、これらの識別情報が示す各面が出力面となっている状態から立体オブジェクトを所定の回転方向に所定の角度、例えば90度回転させたと考えた場合に次に出力面となる面の識別情報と、を対応付けた管理情報を、予め、所定の回転方向別に用意しておく。そして、例えば、合成指示や出力変更操作に応じて、これらの情報を用いて、実行部105が取得した最新の配置用情報に対応した出力条件情報と対応付けられた面の識別情報と対応付けられた次の出力順番(あるいは前の出力順番)となる面の識別情報に対応した出力条件情報を取得して、この出力条件情報が示す条件を満たす配置用情報を、次または前の配置用条件として取得するようにしてもよい。このようにすることで、平面オブジェクトであるにもかかわらず、直方体の立体オブジェクトの表面に配置した配置用情報を、立体オブジェクトを回転させて表示させるような表示効果を得ることが可能となる。かかることは、以下の実施の形態においても同様である。
(実施の形態2)
本実施の形態において、ユーザの操作のパターンに応じて平面オブジェクトの操作に制限を加えるようにしたものである。
図17は、本実施の形態における情報処理装置2のブロック図である。
情報処理装置2は、形状情報格納部201、オブジェクト配置情報格納部202、配置用情報格納部203、操作受付部204、実行部205、操作情報取得部206、操作履歴情報格納部207、出現パターン情報格納部208、ロック判断部209、操作制限部210、操作可否情報格納部211、出力部212を備えている。
情報処理装置2は、形状情報格納部201、オブジェクト配置情報格納部202、配置用情報格納部203、操作受付部204、実行部205、操作制限部210、操作可否情報格納部211、出力部212の構成及び動作については、上記実施の形態1における情報処理装置1の形状情報格納部101、オブジェクト配置情報格納部102、配置用情報格納部103、操作受付部104、実行部105、操作制限部108、操作可否情報格納部111、出力部112の構成および動作と同様であるのでここでは詳細な説明は省略する。
操作情報取得部206は、操作受付部204が受け付けた操作を示す情報である操作情報を取得する。操作受付部204が受け付ける操作とは、例えば平面オブジェクトに対する位置を変更する操作や、大きさを変更するための操作や、上述した出力変更操作等である。操作情報は、例えば、操作に応じて出力されるカーソル等の位置等を示す情報や、操作に応じて出力されるイベントを示す情報や、操作に応じて出力されるコマンド等を示す情報や、操作の識別情報等である。カーソル等の位置等を示す情報は、例えば、カーソルの指し示す位置の座標の情報や、カーソル等の移動により変化した、カーソルが指し示す座標の変換の差分を示す情報である。イベントを示す情報は例えばイベント名である。コマンドを示す情報は例えばコマンド名である。操作の識別情報は、例えば、位置を変更する操作等の操作名の情報である。操作情報取得部206は、これらの操作に応じて出力される情報を、操作情報を取得する。なお、操作情報は、結果的に操作受付部204が過去に受け付けた操作を示すことができる情報であればよく、例えば、操作受付部204が受け付けた操作によって行われた動作を示す情報でも良い。操作によって行われた動作を示す情報とは、例えば、操作によって配置が変化した平面オブジェクトの、配置情報の変化を示す情報、例えば配置情報の差分を記録した情報であってもよい。操作情報取得部206は、操作に応じて実行部205等により行われた動作を示す情報を、操作情報として、例えば、実行部205等から取得する。操作情報取得部206は、取得した操作情報を、例えば、図示しない記憶媒体等に蓄積しても良い。
ここでは、特に、操作情報取得部206が、操作受付部204が受け付けた操作を示す情報である操作情報を取得し、操作情報を含む操作履歴情報を構成し、構成した操作履歴情報を後述する操作履歴情報格納部207に蓄積する場合を例に挙げて説明する。操作履歴情報とは、操作受付部204が受け付けた操作の履歴を示す情報である。操作履歴情報とは、具体的には、操作受付部204が過去に受け付けた操作情報を少なくとも含む情報である。本実施の形態における操作履歴情報は、少なくとも過去に受け付けた操作の順番を示すことが可能な情報であればよい。具体的には、少なくとも過去に取得した操作情報の取得順を示すことが可能な情報であればよい。操作履歴情報は、例えば、操作受付部204が受け付けた1以上の操作を示す操作情報と、各操作情報が示す操作を受け付けた(あるいは操作に応じた動作が行われた)時刻を示す情報とを対応付けた情報である。また、操作履歴情報は、操作情報の取得された順番が分かるように取得順に操作情報が蓄積された情報であっても良いし、取得順を示す番号等を付与して蓄積された情報であっても良い。
操作情報取得部206は、例えば、上述したような操作情報を取得し、取得した操作情報に、操作を受け付けた時刻の情報、もしくは操作情報を取得した時刻の情報を付与して操作履歴情報を構成し、構成した操作情報を操作履歴情報格納部207に蓄積する。時刻を示す情報は、図示しない時計等の計時部等から取得可能である。また、操作情報取得部206は、例えば、上述したような操作情報を取得し、取得した操作情報に、操作を受け付けた順番を示す情報、もしくは操作情報を取得した順番を示す情報を付与して構成した操作履歴情報を、操作履歴情報格納部207に蓄積しても良い。また、操作情報取得部206は、取得した操作情報を、操作履歴情報として、操作を受け付けた順番が判断可能なように、例えば操作を受け付けた順番や取得した順番に従って、操作履歴情報格納部207に追記しても良い。
操作情報取得部206は、通常、MPUやメモリ等から実現され得る。操作情報取得部206の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。但し、ハードウェア(専用回路)で実現しても良い。
操作履歴情報格納部207は、操作受付部204が受け付けた操作の履歴を示す情報である操作履歴情報が格納される。操作履歴情報格納部207は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能である。
出現パターン情報格納部208は、予め指定された2以上の操作情報の出現パターンを示す情報である出現パターン情報が格納される。
出現パターン情報格納部208は、操作情報の出現パターンを示す情報である出現パターン情報が格納され得る。出現パターン情報は、例えば2以上の操作情報の出現パターンを示す情報である。出現パターン情報は、2以上の操作情報と、各操作情報と対応付けられた出現順番を示す情報とにより構成される情報である。また、出現パターン情報は、2以上の操作情報が、操作が行われる順番に従って格納されている情報であっても良い。出現パターン情報は、例えばユーザ等により予め蓄積される情報である。出現パターン情報は、当該出現パターン情報が示す操作パターンと一致する操作が行われた場合に行われる操作制限の種類等を指定する情報と対応付けられた情報であっても良い。出現パターン情報格納部208は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能である。
ロック判断部209は、操作情報取得部206が取得した最新の2以上の操作情報の出現パターンが、出現パターン情報格納部208に格納されている出現パターン情報が示す出現パターンと一致するか否かを判断して、平面オブジェクトに対する操作の制限が必要であるか否かを判断する。例えば、ロック判断部209は、一致すると判断した場合に、平面オブジェクトに対する操作の制限が必要であると判断する。ここでロック判断部209が操作の制限が必要であると判断した平面オブジェクトは、例えば、出力部212から出力されている平面オブジェクトのうちの1以上である。例えば、ロック判断部209は、出力されている全ての平面オブジェクトに対して動作の制限が必要であることを判断しても良い。例えば、特に制限対象となる平面オブジェクトが指定されていない場合等においては、全ての平面オブジェクトが動作の制限が必要な平面オブジェクトとして判断されるようにしても良い。また、出現パターン情報に操作の制限の対象となる平面オブジェクトを指定する情報が含まれている場合は、この指定する情報が指定する平面オブジェクトの操作だけを制限する必要があると判断するようにしても良い。
操作情報の出現パターンとは、例えば、1以上の操作情報を出現する順番も含めて示した情報である。ロック判断部209は、例えば、出現パターン情報格納部208に予め格納されている操作情報の出現パターンを構成するm個(mは正の整数)の操作情報と、操作情報取得部206が取得した最新の操作情報からm番目までの操作情報と、が、出現する順番も含めて一致するか否かを判断し、全てが一致していると判断された場合に、出現パターンが一致していると判断し、全てが一致していない場合、出現パターンが一致していないと判断する。ロック判断部209は、例えば、操作情報取得部206が取得した操作情報のうちの、最新の操作情報からn番目(nは正の整数)の操作情報と、出現パターン情報格納部208に予め格納されている操作情報の出現パターンが示す最新の操作情報からn番目の操作情報とが一致するか否かを、nの値を変化させながら順次判断していき、全てが一致していると判断された場合に、出現パターンが一致していると判断し、全てが一致していない場合、出現パターンが一致していないと判断する。なお、この判断時において、各出現順番が同じである操作情報同士が一致するか否かの判断は、完全一致としても部分一致としても良い。
ここでは例として、特に、ロック判断部209が、操作履歴情報格納部207に格納されている最新の2以上の操作履歴情報が示す操作情報の出現パターンが、予め指定された操作情報の出現パターンと一致するか否かを判断する場合を例に挙げて説明する。
具体的には、ロック判断部209は、操作情報取得部206が蓄積した操作履歴情報のうちの最新の操作履歴情報から順番に2以上の操作履歴情報を検出し、検出した操作履歴情報から、操作情報を取得する。そして上記と同様に取得した操作情報の出現パターンが、予め用意された操作情報の出現パターンと一致するか否かを判断する。
また、本実施の形態においては、ロック判断部209は、出現パターンが一致すると判断した場合に、操作を制限することを示す操作可否情報を、操作可否情報格納部211に蓄積する場合を例に挙げて説明する。操作可否情報については、上記実施の形態1において説明した操作可否情報と同様であるので、ここでは説明を省略する。
なお、ロック判断部209が判断する予め指定された2以上の操作情報の出現パターンは、例えば、平面オブジェクトに対して移動を指示する操作情報の出現パターンや、平面オブジェクトに対して回転を指示する操作情報の出現パターンや、平面オブジェクトに対して大きさの変更を指示する操作情報の出現パターンや、これらの組合せによる出現パターン等、どのような操作情報の出現パターンであってもよい。例えば、複数の回転操作を示す操作情報の出現パターンとしてもよい。例えば、回転操作を示す操作情報の出現パターンとすることで、例えば、「右2回転、左3回転」等のように、金庫等のダイヤル式鍵の操作と同様に、操作制限を行うための操作を他のユーザに伝えたり、覚えたりする上でわかりやすくすることができる。
ロック判断部209は、通常、MPUやメモリ等から実現され得る。ロック判断部209の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。但し、ハードウェア(専用回路)で実現しても良い。
図18は、本発明の情報処理装置2の動作を説明するためのフローチャートである。以下、図18を用いて動作について説明する。なお、図18のフローチャートにおいて、図2と同一符号は、同一または相当する部分を示している。また、これらのステップにおいては、図1に示した情報処理装置1の各ブロックに相当する情報処理装置2の各ブロックが処理を行うものとする。
(ステップS1800)操作受付部204は、ユーザ等による操作を受け付けたか否かを判断する。この操作は、例えば、平面オブジェクトに対する操作である。受け付けた場合、ステップS1801に進み、受け付けていない場合、ステップS1800に戻る。
(ステップS1801)操作情報取得部206は、ステップS1800において受け付けた操作を示す操作情報を取得する。
(ステップS1802)操作情報取得部206は、ステップS1801で取得した操作情報を示す操作履歴情報を、操作履歴情報格納部207に蓄積する。例えば、操作履歴情報は、操作情報と、当該操作情報を取得した時刻の情報を対応付けて有する情報である。
(ステップS1803)実行部205は、ステップS1800で受け付けた操作に応じた処理を実行する。
(ステップS1804)ロック判断部209は、カウンターhに1を代入する。
(ステップS1805)ロック判断部209は、出現パターン情報格納部208からh番目の出現パターン情報を取得する。
(ステップS1806)ロック判断部209は、h番目の出現パターン情報を構成する操作情報の数iを取得する。
(ステップS1807)ロック判断部209は、操作履歴情報格納部207にi個の操作履歴情報が格納されているか否かを判断する。格納されている場合、ステップS1808に進み、格納されていない場合、ステップS18214に進む。
(ステップS1808)ロック判断部209は、操作履歴情報格納部207から、最新のi個の操作履歴情報を取得する。
(ステップS1809)ロック判断部209は、カウンターjに1を代入する。
(ステップS1810)ロック判断部209は、ステップS1808で取得したi個の操作履歴情報のうちのj番目の操作履歴情報が示す操作情報が、h番目の出現パターン情報が示すj番目の操作情報の条件を満たすか否かを判断する。満たす場合、ステップS1811に進み、満たさない場合、ステップS1814に進む。ここでの順番jは、例えば、操作履歴情報が示す最新の操作情報と、出現パターン情報が示す最新の操作情報の条件とをそれぞれ先頭とした、値の増加に応じて操作情報が順次古くなるような順番でも良いし、その逆であっても良い。
(ステップS1811)ロック判断部209は、カウンターjの値がiであるか否かを判断する。iでなければステップS1812に進み、iであればステップS1813に進む。
(ステップS1812)ロック判断部212は、カウンターjの値を1インクリメントする。そして、ステップS1810に戻る。
(ステップS1813)ロック判断部209は、操作可否情報を操作可否情報格納部211に蓄積する。そして、ステップS102に戻る。
(ステップS1814)ロック判断部209は、カウンターhの値を1インクリメントする。
(ステップS1815)ロック判断部209は、出現パターン情報格納部208にh番目の出現パターン情報が格納されているか否かを判断する。格納されている場合、ステップS1805に進み、格納されていない場合、ステップS1800に戻る。
なお、図18のフローチャートにおいて、電源オフや処理終了の割り込みにより処理は終了する。
以下、本実施の形態における情報処理装置2の具体的な動作について説明する。なお、平面オブジェクトが画面に表示されるまでの処理等については、上記実施の形態1の具体例等と同様であるので、ここでは説明を省略する。
例えば、上記の実施の形態1の具体例と同様に、図9に示すように表示された平面オブジェクトの画像について、平面オブジェクト91の表面を左から右へなぞる操作をユーザが行ったとする。
操作受付部204は、このユーザによる操作を受け付け、この操作に応じて、右方向になぞる操作に対応した平面オブジェクト91に対する出力変更操作を受け付ける。そして、この具体例においては、操作受付部204は、例えば、この出力変更操作の受け付けに応じて、平面オブジェクトに配置される配置用情報を変更するコマンドを実行部205に対して出力したとする。このコマンドは、例えば、ここでは、「flip−right」といコマンドであるとする。
操作情報取得部206は、操作受付部204が出力するコマンド「flip−right」を操作情報として取得し、さらに、この操作情報に、図示しない内部の時計等から取得した現在の時刻の情報「12:30:24」を付与して操作履歴情報を構成し、操作履歴情報格納部207に格納する。
そして、実行部205は、操作受付部204が出力するコマンドに応じて、平面オブジェクト91に配置される配置用情報を取得する。出力部212は、実行部205が取得した配置用情報を配置した平面オブジェクトの画像情報を用いて、出力されている画像を更新する。
出力部212により出力された、出力変更操作に応じて更新された平面オブジェクトの画像を示す図は、図10と同様である。平面オブジェクトに配置される配置用情報を更新した画像を出力する処理等については、上記具体例と同様であるので、ここでは説明を省略する。
同様にして、ユーザが出力されている平面オブジェクトに対して、右方向になぞる操作や、上方向になぞる操作や、下方向になぞる操作等を複数回行ったとする。その都度、操作履歴情報が操作履歴情報格納部207に蓄積され、配置用情報が変更された平面オブジェクト91の画像が出力される。
図19は、操作履歴情報格納部207に格納された操作履歴情報を管理する操作履歴情報管理表である。操作履歴情報管理表は、「操作情報」と「時刻」という項目を有している。「操作情報」は、操作情報取得部206が取得した操作情報、「時刻」は、操作情報取得部206が取得した時刻の情報である。「操作情報」の「flip−left」は、左方向になぞる操作を受け付けた場合の操作情報(例えば、コマンド名)、「flip−up」は、上方向になぞる操作を受け付けた場合の操作情報、「flip−down」は、下方向になぞる操作を受け付けた場合の操作情報であるとする。操作履歴情報管理表の各レコードが、操作情報取得部206が取得した操作履歴情報である。なお、操作履歴情報管理表に格納されている複数のレコードの集合体も操作履歴情報と考えても良い。ここでは、操作履歴情報は、平面オブジェクトを区別せずに管理されているものとする。つまり、どの平面オブジェクトに対する操作に応じた操作履歴情報であるかを区別せずに、情報処理装置1によって出力されている平面オブジェクトの1以上に対する操作の履歴として、操作履歴情報が格納されているものとする。なお、操作履歴情報を、平面オブジェクト別に蓄積するようにして、操作履歴情報が平面オブジェクト別に示す操作情報の出現パターンから、一の平面オブジェクト、あるいは全ての平面オブジェクトに対する操作の制限を行うか否かを判断するようにしてもよい。
図20は、出現パターン情報格納部208に格納されている出現パターン情報を示す図である。出現パターン情報は、「操作情報」と「出現順」という項目を有している。「操作情報」は、操作情報取得部206が取得する操作情報に相当する。また、「出現順」は、操作パターンにおける操作情報の出現する順番を示す情報であり、ここでは、対応する「出現順」の数値の大きいものほど出現する順番が早い、即ち、古い操作情報であることを示す。
ここで、ロック判断部209は、操作履歴情報が新たに蓄積される毎に、図20に示すような出現パターン情報格納部208に格納されている出現パターン情報を取得する。ここでは、説明を簡単にするため、出現パターン情報格納部208に格納されている出現パターン情報が一つである場合について説明する。そして、出現パターン情報に含まれる操作情報数をカウントして、操作情報数iを取得する。ここでは、i=3を取得する。なお、ここでは、操作履歴情報が新たに蓄積される毎に、出現パターン情報を読み出し、操作情報数iを取得する場合を示したが、平面オブジェクトが読み出された際や、最初に平面オブジェクトに操作が行われた際等に一度だけ、操作履歴情報や操作情報数iを取得し、メモリ等の記憶媒体等に保持しておくようにし、ロック判断部209が、この取得した操作履歴情報や操作情報数iを適宜利用するようにしても良い。
次に、ロック判断部209は、操作履歴情報が新たに蓄積される毎に、操作履歴情報格納部207から、最新のi=3個の操作履歴情報を検出する。例えば、現時点の操作履歴情報管理表が、図19に示すようなものであった場合、図19に示す操作履歴情報管理表の全てのレコードのうち、「時刻」の示す時刻の値が新しいものから順に、3つのレコードを検出する。ここでは、例えば、操作履歴情報管理表のレコードが、「時刻」の値によって昇順にソートされていたとすると、下から3つのレコードを検出する。そして、検出した3つのレコード、即ち3つの操作履歴情報から、「時刻」の値が古いものから順に、操作情報を取得する。
図21に、ロック判断部209が、取得した3つの操作情報を示す図である。なお、ここでは、上のレコードほど、対応する時刻が古い操作情報、即ち出現順番が古い操作情報であるとする。
次に、ロック判断部209は、出現パターン情報に含まれる操作情報と、操作履歴情報から取得した最新の3個の操作情報とを、出現する順番が同じもの同士で比較して、操作パターン、即ち操作情報と出現順番との組合せが一致するか否かを判断する。ここでは例として完全一致を判断するものとする。ここでは、例として、まず、出現パターン情報に含まれる操作情報のうちの出現順番が最も古い操作情報と、操作履歴情報から取得した出現順番が最も古い操作情報とを比較するが、出現パターン情報に含まれる操作情報のうちの出現順番が最も古い操作情報が「flip−down」であり、操作履歴情報から取得した出現順番が最も古い操作情報が「flip−left」であるため、一致しない。このため、出現パターン情報に含まれる操作情報と、操作履歴情報から取得した最新の3個の操作情報との出現パターン同士が完全一致しないと判断される。このため、ロック判断部209は、操作制限を行うための処理を行わない。
なお、出現パターン情報が出現パターン情報格納部208に格納されている場合は、例えば、各出現パターン情報について、上記と同様の操作情報を比較する処理を、出現パターンが完全一致するものが検出されるまで、一通り行うようにする。操作履歴情報が平面オブジェクト別に管理されている場合、操作履歴情報が追加された平面オブジェクトに対してだけ、上記と同様の操作情報を比較する処理を行うようにしてもよい。
ここで、次に、ユーザによる平面オブジェクト91の表面を左方向になぞる操作に応じて、操作情報取得部206により、「操作情報」が「flip−left」で、「時刻」が「12:33:58」である操作履歴情報が追記されたとする。
図22は、レコードが追加された操作履歴情報管理表を示す図である。
この場合においても上記と同様に、ロック判断部209によって、操作履歴情報に含まれる最新の3つの操作情報が取得される。
図23は、ロック判断部209が、取得した3つの操作情報を示す図である。
そして、上記と同様に、ロック判断部209によって、操作履歴情報から取得した操作情報と、図19に示す出現パターン情報に含まれる操作情報とが出現順番の順に比較される。即ち出現パターン同士が比較される。
ここでは、出現順番が一致する全ての操作情報が完全一致するため、ロック判断部209は、操作履歴情報に含まれる最新の3つの操作情報の出現パターンと、出現パターン情報が定義する操作情報の出現パターンとが一致すると判断する。そして、ロック判断部209は、操作可否情報格納部211に格納されている平面オブジェクトに対する操作可否情報を、図11に示すように「1」に変更する。これにより、上記具体例1と同様に、情報処理装置2が出力する平面オブジェクトに対する操作が制限されることとなる。
その後の操作に対する制限等を行う処理や、制限を解除する処理等については、上記実施の形態の具体例等と同様であるので、ここでは説明を省略する。
以上、本実施の形態によれば、平面オブジェクトに対する複数の操作の組合せによって、平面オブジェクトに対する操作を制限することができる。これにより、例えば、第三者等が、平面オブジェクトに配置される配置用情報を勝手に変更させて、平面オブジェクト上に配置されている配置用情報を許可なく閲覧ことを防ぐことが可能となる。したがって、平面オブジェクトに一連の操作を行うだけで、操作を制限することができ、平面オブジェクトを用いて出力される情報に対して、容易にセキュリティを保つことができる。
また、平面オブジェクトに対する操作制限を、通常平面オブジェクトに対して行われる2以上の操作の組合せで実行できるため、操作制限を行うための特定の操作、例えば操作制限を行うためのメニューやボタン等が不要である。そして、出現パターン情報をユーザが自由に設定することで、操作制限の操作の組合せを自由に決定でき、更に操作自体の組合せを秘密にすることで、パスワード入力等を行わないでも平面オブジェクトに対する操作だけで操作制限を行うことが可能となる。
なお、本実施の形態においては、平面オブジェクトの表面を上下左右になぞる操作に応じた異なる出力変更操作の出現パターンによって、操作制限を行うか否かを判断するようにしたが、本発明においては、出力変更操作以外の操作、例えば移動や、サイズ変更等も含めた平面オブジェクトに対する2以上の操作の組合せによって、操作制限を行うか否かを判断するようにしてもよい。ただし、異なる出力変更操作の組合せによって操作制限を行うようにすることは、例えば、「右2回転、左3回転」等のように、金庫等のダイヤル式鍵の操作と同様に、操作を他のユーザに伝えたり、覚えたりする上でわかりやすく、好ましい。また、平面オブジェクトの表面を上下左右になぞる出力変更操作は、例えば平面オブジェクトの位置等を移動させたりする操作とは異なり、距離や位置等の指定が不要であり、操作が明確でわかりやすいため、操作性に優れていると考えられ、操作制限を行うための操作としては好ましい。
なお、上記実施の形態においては、最新の2以上の操作履歴情報に含まれる操作情報の出現パターンが、出現パターン情報が示す操作情報の出現パターンと一致するか否かを判断するようにした。しかしながら、本発明においては、操作情報取得部206が、操作情報を取得する毎に、取得した操作情報と、予め指定された操作情報の出現パターンが示す操作情報とを、出現順番が古いものから順に比較していくようにし、予め指定された操作情報の出現パターンが示す操作情報の全てが、操作情報取得部206が取得した一連の操作情報と一致する場合には、出現パターンが一致すると判断しても良い。また、途中で一致しなかった場合、再度予め指定された操作情報の出現パターンの最も古いものとの比較から、比較をやり直すようにすればよい。あるいは、比較の途中で、予め指定された操作情報の出現パターンが示す最も古い操作情報と同じ操作情報が現れた場合、並列して操作情報の出現パターンの比較を開始するようにしても良い。即ち、このように、操作履歴情報を用いずに、取得した操作情報をそのまま利用して出現パターン同士の比較を行うようにしても良い。
また、上記各実施の形態において、各構成要素は専用のハードウェアにより構成されてもよく、あるいは、ソフトウェアにより実現可能な構成要素については、プログラムを実行することによって実現されてもよい。例えば、ハードディスクや半導体メモリ等の記録媒体に記録されたソフトウェア・プログラムをCPU等のプログラム実行部が読み出して実行することによって、各構成要素が実現され得る。
なお、上記各実施の形態における情報処理装置を実現するソフトウェアは、以下のようなプログラムである。つまり、このプログラムは、平面のオブジェクトである平面オブジェクトの形状を指定する情報である形状情報が格納される形状情報格納部と、平面オブジェクトの表面に配置可能な情報である配置用情報が、出力順番と対応付けられて複数格納される配置用情報格納部と、配置用情報格納部に格納されている配置用情報のうちの、操作にロックをかけるための配置用情報を指定する情報であるロック指定情報が格納されるロック指定情報格納部と、にアクセス可能なコンピュータを、少なくとも平面オブジェクトの表面に配置される配置用情報を変更する操作である出力変更操作を含む操作を受け付ける操作受付部と、出力変更操作に応じて予め指定された出力順番となる一の配置用情報を取得する処理である出力変更処理を少なくとも含む処理を実行する実行部と、形状情報が示す平面オブジェクトの表面に、実行部が取得した配置用情報を配置した画像情報を出力する出力部と、実行部が取得した配置用情報がロック指定情報により指定された配置用情報であるか否かを判断して、平面オブジェクトに対する操作の制限が必要であるか否かを判断するロック判断部と、ロック判断部が、操作の制限が必要であると判断した平面オブジェクトに対する操作を制限する操作制限部と、して機能させるためのプログラムである。
また、平面のオブジェクトである平面オブジェクトの形状を指定する情報である形状情報が格納される形状情報格納部と、平面オブジェクトの表面に配置可能な情報である配置用情報が、出力順番と対応付けられて複数格納される配置用情報格納部と、予め指定された2以上の操作情報の出現パターンを示す情報である出現パターン情報が格納される出現パターン情報格納部と、にアクセス可能なコンピュータを、少なくとも平面オブジェクトの表面に配置される配置用情報を変更する操作である出力変更操作を含む操作を受け付ける操作受付部と、出力変更操作に応じて予め指定された出力順番となる一の配置用情報を取得する処理である出力変更処理を少なくとも含む処理を実行する実行部と、形状情報が示す平面オブジェクトの表面に、実行部が取得した配置用情報を配置した画像情報を出力する出力部と、操作受付部が受け付けた操作を示す情報である操作情報を取得する操作情報取得部と、操作情報取得部が取得した最新の2以上の操作情報の出現パターンが、出現パターン情報格納部に格納されている出現パターン情報が示す出現パターンと一致するか否かを判断して、平面オブジェクトに対する操作の制限が必要であるか否かを判断するロック判断部と、ロック判断部が、操作の制限が必要であると判断した平面オブジェクトに対する操作を制限する操作制限部として機能させるためのプログラムである。
なお、上記プログラムにおいて、上記プログラムが実現する機能には、ハードウェアでしか実現できない機能は含まれない。例えば、情報を取得する取得部や、情報を出力する出力部などにおけるモデムやインターフェースカードなどのハードウェアでしか実現できない機能は、上記プログラムが実現する機能には含まれない。
また、このプログラムを実行するコンピュータは、単数であってもよく、複数であってもよい。すなわち、集中処理を行ってもよく、あるいは分散処理を行ってもよい。
図24は、上記プログラムを実行して、上記実施の形態による情報処理装置を実現するコンピュータの外観の一例を示す模式図である。上記実施の形態は、コンピュータハードウェア及びその上で実行されるコンピュータプログラムによって実現されうる。
図24において、コンピュータシステム900は、CD−ROM(Compact Disk Read Only Memory)ドライブ905、FD(Floppy(登録商標) Disk)ドライブ906を含むコンピュータ901と、キーボード902と、マウス903と、モニタ904とを備える。
図25は、コンピュータシステム900の内部構成を示す図である。図25において、コンピュータ901は、CD−ROMドライブ905、FDドライブ906に加えて、MPU(Micro Processing Unit)911と、ブートアッププログラム等のプログラムを記憶するためのROM912と、MPU911に接続され、アプリケーションプログラムの命令を一時的に記憶すると共に、一時記憶空間を提供するRAM(Random Access Memory)913と、アプリケーションプログラム、システムプログラム、及びデータを記憶するハードディスク914と、MPU911、ROM912等を相互に接続するバス915とを備える。なお、コンピュータ901は、LANへの接続を提供する図示しないネットワークカードを含んでいてもよい。
コンピュータシステム900に、上記実施の形態による情報処理装置等の機能を実行させるプログラムは、CD−ROM921、またはFD922に記憶されて、CD−ROMドライブ905、またはFDドライブ906に挿入され、ハードディスク914に転送されてもよい。これに代えて、そのプログラムは、図示しないネットワークを介してコンピュータ901に送信され、ハードディスク914に記憶されてもよい。プログラムは実行の際にRAM913にロードされる。なお、プログラムは、CD−ROM921やFD922、またはネットワークから直接、ロードされてもよい。
プログラムは、コンピュータ901に、上記実施の形態による情報処理装置の機能を実行させるオペレーティングシステム(OS)、またはサードパーティプログラム等を必ずしも含んでいなくてもよい。プログラムは、制御された態様で適切な機能(モジュール)を呼び出し、所望の結果が得られるようにする命令の部分のみを含んでいてもよい。コンピュータシステム900がどのように動作するのかについては周知であり、詳細な説明は省略する。
本発明は、以上の実施の形態に限定されることなく、種々の変更が可能であり、それらも本発明の範囲内に包含されるものであることは言うまでもない。