以下、情報処理装置等の実施形態について図面を参照して説明する。なお、実施の形態において同じ符号を付した構成要素は同様の動作を行うので、再度の説明を省略する場合がある。
(実施の形態)
図1は、本実施の形態における情報処理装置1のブロック図である。
情報処理装置1は、形状情報格納部101、配置用情報格納部102、配置用情報取得部103、出力変更指示受付部104、オブジェクト配置情報格納部105、切換指示受付部106、ソート指示受付部107、配置情報更新部108、検索条件情報受付部109、検索部110、検索結果配置情報取得部111、および出力部112を備える。
形状情報格納部101には、平面のオブジェクトである2以上の平面オブジェクトの形状を指定する情報である形状情報が格納され得る。平面オブジェクトは、例えば、二次元空間に配置されるオブジェクトである。2以上の平面オブジェクトは、例えば、平面オブジェクトの識別情報と対応付けて管理される。形状情報は、例えば、平面オブジェクトの外周の形状を指定する情報や、平面オブジェクトの領域内の画素の座標等を指定する情報である。形状情報は、例えば、矩形や、六角形、円形等の形状を指定する情報である。形状情報は、例えば、ビットマップ情報やベクトル情報で構成された情報である。形状情報は、例えば、2次元の図形オブジェクトの情報である。形状情報は、例えば、平面オブジェクトの頂点の座標の情報や、境界線や面等を表現する方程式のパラメータの情報等である。なお、形状情報は、当該形状情報が示す平面オブジェクトの輪郭線や、平面オブジェクトの背景色等の色を指定する情報等と対応付けられて形状情報格納部101に格納されていても良い。平面オブジェクトは表面を有している。平面オブジェクトの表面とは、例えば、後述する配置用情報が配置される面である。表面は、例えば、平面オブジェクトを表示する際に、ユーザ側に向かい合う面である。
形状情報格納部101には、2以上の平面オブジェクトごとにそれぞれ異なる形状情報が格納されていても良いし、2以上の平面オブジェクトに共通の一の形状情報が格納されていても良い。2以上の平面オブジェクトと形状情報との対応関係は、例えば、一の平面オブジェクトの識別情報と、形状情報とを有する2以上のオブジェクト管理情報を用いて管理される。
本実施の形態においては、2以上の平面オブジェクトは、1以上のグループにグループ化されていてもよい。一のグループに属する平面オブジェクトは、例えば、一のグループの識別情報と、一のグループに属する平面オブジェクトの識別情報とが対応付けられて管理される。
形状情報格納部101は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能である。
オブジェクト配置情報格納部105には、複数の平面オブジェクトがそれぞれ配置される位置を示す情報であるオブジェクト配置情報が格納される。オブジェクト配置情報は、例えば、平面オブジェクトの配置される位置を示す情報(例えば平面オブジェクトの一以上の頂点や、中心等の座標情報)である。ここでの位置は、例えば、出力部112が出力する出力領域内の位置である。オブジェクト配置情報は、例えば平面オブジェクトの識別情報等と対応付けられて格納されている。なお、一の平面オブジェクトに対して一の形状情報が1対1で用意されている場合、オブジェクト配置情報と上述した形状情報とを一の形状情報等で実現しても良い。例えば、形状情報が、オブジェクトが配置される領域を、2次元座標系の座標値により指定するものである場合、形状情報とオブジェクト配置情報とを兼用することができる。オブジェクト配置情報は、例えば、デフォルト等で値が決まっており、ユーザの操作に応じてその値が変化するようにしてもよい。オブジェクト配置情報格納部105は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能である。
配置用情報格納部102には、2以上の平面オブジェクトの表面に配置可能な情報である配置用情報が、各平面オブジェクトごとに出力順番と対応付けられて複数格納される。配置用情報は、平面オブジェクトの表面に配置して出力(例えば表示)可能な情報であれば、静止画や動画等の画像情報や、テキスト情報等、どのような情報であっても良い。また、ここで述べる配置とは、上述した平面オブジェクトを示す形状情報の表面に対する画像情報やテキスト情報等のマッピングと考えても良い。また、配置用情報は、マッピング対象となる情報、例えばテクスチャ情報と考えても良い。各配置用情報のデータ構造は問わない。各配置用情報は、XMLデータ等の構造化されたデータであることが好ましい。また、各配置用情報は、それぞれの属性を示す情報と対応付けられていても良い。また、配置用情報は、タグ付けされた情報であっても良く、このタグを、各配置用情報の属性を示す情報の一つと考えても良い。配置用情報は、例えば、テーブルや、データベース等によって、配置用情報の属性を示す情報等と対応付けて管理された情報でも良い。また、配置用情報は、グループ化されている情報であっても良い。
配置用情報が出力順番と対応付けて格納されているということは、具体的には、各配置用情報が、出力順番に沿って並べて格納されていることであっても良いし、各配置用情報が、出力順番を示す情報と対応付けて格納されていても良い。また、配置用情報がタグ付けされた情報である場合、タグと出力順番を示す情報とが対応付けられていても良い。また、配置用情報を取得するための条件を示す情報と出力順番とが対応付けられていても良い。また、配置用情報格納部102に格納されている配置用情報が、各配置用情報とその前または後に表示される配置用情報とを対応付けて管理する出力順番の管理情報により管理されていることであっても良い。また、このような出力順番の管理情報の代わりに、後述するような配置用情報を取得するための条件を示す情報である取得条件情報と、この取得条件情報が示す配置用情報の前または次の出力順番となる配置用情報を取得するための取得条件情報とを対応付けた出力順番の管理情報を用いるようにしてもよい。
また、配置用情報は、後述する異なる複数の出力変更指示にそれぞれ対応した異なる複数の出力順番と対応付けられて格納されていても良い。これにより、異なる出力変更指示に応じた出力順番で配置用情報を取得して表面に配置した平面オブジェクトを出力させることができる。また、配置用情報の出力順番を調整することで、六面体等の平面オブジェクトの各面に配置された配置用情報を、平面オブジェクトを縦方向や横方向に更新させて表示するような配置用情報の表示を平面オブジェクト上に擬似的に実現することも可能である。なお、配置用情報が構造化されたデータである場合、例えば、同じ階層にある配置用情報の配列順を出力順番と考えても良い。
配置用情報格納部102は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能である。
配置用情報取得部103は、2以上の平面オブジェクトのそれぞれの表面に配置される一の配置用情報を、各平面オブジェクトごとに取得する。
配置用情報取得部103は、例えば、各平面オブジェクトに対応付けられた複数の配置用情報の中から配置用情報を取得する。配置用情報取得部103は、どのようなタイミングやトリガーにより、一の配置用情報を取得しても良い。例えば、情報処理装置1の起動時等に、一の配置用情報を取得しても良い。また、図示しない受付部等を介して、ユーザ等から平面オブジェクトを表示する指示を受け付けた場合に、一の配置用情報を取得しても良い。
情報処理装置1が後述する出力変更指示を受け付けた場合以外の場合(例えば起動時等)において取得する一の配置用情報は、どのように決定されても良い。例えば、予め指定されている配置用情報を取得しても良い。また、配置用情報取得部103は、図示しない受付部等を介してユーザ等により指定された配置用情報を取得しても良い。また、ランダムに配置用情報を取得しても良い。また、前回の終了時に出力されていた配置用情報を取得しても良い。なお、ここで述べる一の配置用情報とは、1つの配置用情報であっても良いし、一つの表面に配置される一組あるいは一グループの配置用情報であっても良い。また、一の条件を満たす1つまたは一群の配置用情報であっても良い。一の条件とは、例えば、後述する取得条件情報が示す条件や、検索に用いられる条件等である。
また、配置用情報取得部103は、例えば、予め用意された配置用情報を取得するための条件を示す情報である取得条件情報が示す条件に合う配置用情報を取得しても良い。取得条件情報は、1以上の配置用情報を結果的に指定可能な情報であれば、どのような情報であっても良い。例えば、取得条件情報は、配置用情報の属性を指定する情報であっても良い。ここで述べる属性とは、配置用情報のデータタイプ(画像、テキスト情報)や配置用情報に付与されたタグの種類やタグ名等である。また、配置用情報が項目分けされている場合は項目も属性と考えて良い。また、配置用情報にインデックス情報が付与されている場合、取得条件情報は、このインデックスを指定する情報であっても良い。また、配置用情報の場所やファイル名やディレクトリ等を指定する情報であっても良い。また、配置用情報を検索するための検索式や演算式であっても良い。なお、検索式は、必ずしも式の形で示されている必要はなく、検索に利用可能なキーワード等であっても良い。例えば、この検索式で示される取得条件情報は、「select」、「from」、「where」等の組み合わせ等である。なお、「select」は取得する配置用情報の項目、「from」は検索対象となる複数の配置用情報を指定する情報、「where」は検索のための条件を示す情報である(SQLの仕様を参照)。また、演算式で示される取得条件情報とは、例えば、1以上の配置用情報に対して行われる演算式であり、例えば、数値で表される2つの配置用情報を指定する情報と、これらの平均を算出する演算式等で表されたものや、現在の時間等に所定時間を加減算する演算式等で表されたもの等である。上記の取得条件情報は、出力対象となり得る全ての平面オブジェクトにそれぞれ個別に指定されていてもよいし、全ての平面オブジェクトや一部の平面オブジェクトに共通に指定されていても良い。
さらに、本実施の形態においては、配置用情報取得部103は、後述する出力変更指示に応じて、出力変更指示の対象となる1以上の平面オブジェクトと、それ以外の1以上の平面オブジェクトとのそれぞれについて、現在平面オブジェクトの表面に配置されている配置用情報に対して予め指定された出力順番となる配置用情報を取得する。出力変更指示の対象となる1以上の平面オブジェクトと、それ以外の1以上の平面オブジェクトとは、例えば、現在モニタ等に出力されている複数の平面オブジェクトのうちの、出力変更指示の対象となる1以上の平面オブジェクトと、それ以外の全ての平面オブジェクトであっても良い。また、出力変更指示の対象となる1以上の平面オブジェクトと、この平面オブジェクトの少なくともいずれか一つとグループ化されている平面オブジェクトであっても良い。あるいは、出力変更指示の対象となる1以上の平面オブジェクトと、この平面オブジェクトの少なくともいずれか一つと同じ属性を有する平面オブジェクトであっても良い。同じ属性を有する平面オブジェクトは、例えば、同じ属性を有する配置用情報と対応付けられた平面オブジェクトである。また、出力変更指示の対象となる1以上の平面オブジェクトに隣接する位置に配置されている平面オブジェクトであっても良い。また、出力変更指示の対象となる1以上の平面オブジェクトと、それ以外の1以上の平面オブジェクトとは、例えば、出力変更指示の対象となる1以上の平面オブジェクトと共通するルールを有する平面オブジェクトであっても良い。例えば、共通する形状の平面オブジェクトであっても良いし、同じグループに属する配置用情報と対応付けられた平面オブジェクトであっても良い。また、現在平面オブジェクトの表面に配置されているデータの属性が共通する平面オブジェクトであっても良い。データの属性とは、例えば、データに付与されているタグと考えても良い。
予め指定された出力順番とは、例えば、現在平面オブジェクトに配置されて出力されている配置用情報(言い換えれば、配置用情報取得部103が取得した最新の配置用情報)の次または前の出力順番となる配置用情報である。あるいは2以上の予め指定された数だけ出力順番が次または前となる出力順番の配置用情報であっても良い。配置用情報はどのように指定されていても良く、例えば、配置用情報が直接指定されていても良いし、出力順番等と対応付けられた取得条件情報により取得対象となる配置用情報の条件が指定されていても良い。配置用情報取得部103は、例えば、取得条件情報を用いて配置用情報の出力順番を管理する予め用意された管理情報等を用いて、出力順番に応じた配置用情報を取得するようにしても良い。この管理情報は、例えば、取得条件情報と、出力順番とを対応付けた管理情報であり、この場合、例えば、一の出力順番に対応した取得条件情報が示す条件を満たす配置用情報が、その一の出力順番の配置用情報である。
なお、配置用情報取得部103は、例えば、異なる出力変更指示を受け付けた場合に、その変更指示に応じた出力順番に従って配置用情報を取得するようにしてもよい。ここでは、一の出力順番の昇順に従って配置用情報を取得することと、降順に従って配置用情報を取得することとは、異なる出力順番で配置用情報を取得することと考えても良い。あるいは、異なる出力変更指示は、異なる系統の出力順番を指定する情報を含む指示と考えても良い。なお、配置用情報取得部103は、異なる出力変更指示別に取得条件情報と配置用情報の出力順番とを対応付けて有する管理情報等を用いて、出力順番に応じた配置用情報を取得するようにしても良い。ここでの異なる出力変更指示別に用意された管理情報は、例えば、出力変更指示と、取得条件情報と、出力順番とを対応付けた管理情報であり、各管理情報においては、例えば、一の出力順番に対応した取得条件情報が示す条件を満たす配置用情報が、その一の出力順番の配置用情報である。
また、配置用情報取得部103は、第一の更新モードと第二の更新モードとを有しているようにし、後述する切換指示により指定された第一の更新モードと第二の更新モードとのいずれか一方の更新モードで、平面オブジェクトの配置用情報を取得するようにしてもよい。第一の更新モードとは、2以上の平面オブジェクトのうちの1以上について出力変更指示を受け付けた場合に、出力変更指示の対象となる1以上の平面オブジェクトと、それ以外の1以上の平面オブジェクトとのそれぞれについて配置用情報を取得する更新モードである。また、第二の更新モードとは、2以上の平面オブジェクトのうちの1以上について出力変更指示を受け付けた場合に、出力変更指示の対象となる1以上の平面オブジェクトについてのみ配置用情報を取得する更新モードである。この第一および第二の更新モードは、それぞれ配置用情報取得部103の動作モードや、動作の際に利用されるアルゴリズム等と考えても良い。配置用情報取得部103は、例えば、後述する切換指示に応じて更新モードを、第一の更新モードと第二の更新モードとのいずれか一方に設定する設定情報等を図示しない記憶媒体等に蓄積することで、更新モードの切換を行う。
また、複数の平面オブジェクトがグループを構成している場合において、出力変更指示受付部104が、後述する切換指示受付部106が受け付けた切換指示により第一の更新モードが指定されているグループに含まれる1以上の平面オブジェクトに対する出力変更指示を受け付けた場合に、配置用情報取得部103は、出力変更指示を受け付けた平面オブジェクトと同じグループ内の平面オブジェクトのみを対象として第一の更新モードで配置用情報を取得するようにしてもよい。例えば、出力変更指示を受け付けた平面オブジェクトと同じグループ内の平面オブジェクトについては、出力変更指示を受け付けた平面オブジェクトと同様に、次の出力順番の配置用情報を取得するようにしても良い。
また、配置用情報取得部103は、後述する出力変更指示受付部104が受け付けた整理指示に応じて、複数の平面オブジェクトのそれぞれについて、予め指定された配置用情報を取得するようにしても良い。予め指定された配置用情報とは、例えば、各平面オブジェクトについてそれぞれ予め指定されている配置用情報であっても良いし、同じ出力順番(例えば一番)の配置用情報であっても良い。また、同じ属性を有する配置用情報であっても良い。
また、配置用情報取得部103は、検索部110が検索した1以上の平面オブジェクトの表面に配置される配置用情報を取得してもよい。例えば、検索部110が、ユーザにより指定された検索条件に合致する配置用情報を、各平面オブジェクトに対応付けられた配置用情報の中から検索し、検索された配置用情報を各平面オブジェクトについて取得しても良い。
配置用情報取得部103は、通常、MPUやメモリ等から実現され得る。配置用情報取得部103の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。但し、ハードウェア(専用回路)で実現しても良い。
出力変更指示受付部104は、2以上の平面オブジェクトのうちの1以上について、表面に配置される配置用情報を変更する指示である出力変更指示を受け付ける。2以上の平面オブジェクトとは、例えば、後述する出力部112により出力されている2以上の平面オブジェクトである。出力変更指示受付部104は、2以上の平面オブジェクトのうちの全てではない1以上について出力変更指示を受け付けることが好ましい。2以上の平面オブジェクトのうちの全てではない1以上とは、2以上の平面オブジェクトの一部の平面オブジェクトと考えても良い。出力変更指示は、具体的には、配置用情報取得部103が各平面オブジェクトについて取得する配置用情報を変更する指示である。出力変更指示は、例えば、配置用情報取得部103が取得した最新の配置用情報(つまり、現在出力中の配置用情報)と異なる配置用情報を配置用情報取得部103に取得させるための指示である。出力変更指示受付部104が、出力変更指示をどのように受け付けるかは問わない。出力変更指示は、例えば、後述する出力部112等により出力(例えば表示)されている平面オブジェクト上の領域(あるいはその近傍を含む領域)に対する予め指定された操作によって出力変更指示を受け付ける。予め指定された操作とは、例えば、平面オブジェクト上の領域の一部の領域等にポインタを配置する操作や、この領域をポインタ等クリックする操作や、平面オブジェクト上の領域で、予め指定された方向にクリックした状態のポインタを移動させる操作である。なお、入力デバイスがタッチパネル等である場合、ポインタを配置する操作はタッチ、クリックはタップ、クリックした状態でポインタを予め指定された方向に動かす操作をスワイプ(指を滑らす操作)としてもよい。
また、出力変更指示受付部104は、例えば、異なる2以上の出力変更指示のうちの一つを選択的に受け付けてもよい。異なる2以上の出力変更指示とは、例えば、異なる出力順番に従って配置用情報を取得させる指示である。出力変更指示受付部104が、異なる出力変更指示をどのように受け付けるかは問わない。出力変更指示受付部104は、例えば、異なる出力変更指示を、ユーザによる異なる操作に応じて受け付ける。例えば、平面オブジェクト上のポインタをおく(タッチ)領域や、クリック(タップ)する領域の違いによって、異なる出力変更指示を受け付けるようにしても良い。また、平面オブジェクト上の領域におけるクリック状態のポインタの移動方向(スワイプ方向)によって異なる出力変更指示を受け付けるようにしてもよい。例えば、左方向に移動させる場合と、右方向に移動させる場合と、上方向に移動させる場合と、下方向に移動させる場合とで、それぞれ異なる出力変更指示を受け付けるようにしても良い。なお、同一直線上の異なる方向についてポインタを移動させる操作が行われた場合、出力変更指示受付部104は、一方の動作では、同一の出力順番の昇順で配置用情報を取得する出力変更指示を受け付け、他方の動作では、同一の出力順番の降順で配置用情報を取得する出力変更指示を受け付けるようにしてもよい。出力変更指示受付部104が受け付ける出力変更指示は、例えば、操作が行われた平面オブジェクトに対応付けられた配置用情報を対象とした出力変更指示である。なお、出力変更指示受付部104は、入力デバイスのポインタの座標の位置やその変化等から出力変更指示を取得可能である。
また、出力変更指示受付部104は、複数の平面オブジェクトに配置される配置用情報を揃える指示である整理指示を更に受け付けてもよい。配置用情報を揃える指示とは、例えば、複数の平面オブジェクトのそれぞれに予め指定された配置用情報を配置する指示である。具体例を挙げると、各平面オブジェクトにそれぞれ異なる商品の情報を示す配置用情報が対応付けられている場合において、全ての平面オブジェクトに、それぞれに対応付けられた配置用情報のうちの商品の写真を配置させる指示である。
なお、出力変更指示は、この出力変更指示に応じて取得した配置用情報を表面に配置した平面オブジェクトで現在出力されている平面オブジェクトの出力を更新する指示や、出力変更指示に応じて取得した配置用情報で、現在出力されている平面オブジェクトの表面に配置されている配置用情報を更新する指示を含むと考えても良い。
ここで述べる受け付けとは、キーボードやマウス、タッチパネルなどの入力デバイスから入力された情報の受け付け、有線もしくは無線の通信回線を介して送信された情報の受信などを含む概念である。入力手段は、テンキーやキーボードやマウスやタッチパネルやメニュー画面によるもの等、何でも良い。出力変更指示受付部104は、キーボードやタッチパネル等の入力手段のデバイスドライバーや、メニュー画面の制御ソフトウェア等で実現され得る。
切換指示受付部106は、第一の更新モードと第二の更新モードとを切り替える指示である切換指示を受け付ける。また、平面オブジェクトがグループを構成している場合、切換指示受付部106は、平面オブジェクトのグループに対する第一の更新モードと第二の更新モードとを切り替える切換指示を受け付けてもよい。切換指示は、更新モードを現在の更新モード以外の更新モードに切り替える指示であっても良いし、更新モードを第一の更新モードと第二の更新モードとのいずれかに切り替える指示であっても良い。更新モードの設定は、例えば、配置用情報取得部103等により変更される。上述した配置用情報取得部103は、この切換指示で指定された更新モードに従って、平面オブジェクト、あるいはグループを構成する平面オブジェクトについての配置用情報の取得を行う。切換指示の入力手段は、テンキーやキーボードやマウスやメニュー画面によるもの等、何でも良い。切換指示受付部106は、テンキーやキーボード等の入力手段のデバイスドライバーや、メニュー画面の制御ソフトウェア等で実現され得る。なお、更新モードを設定する情報は、図示しない記憶媒体等に蓄積される。
ソート指示受付部107は、複数の平面オブジェクトをソートする指示であるソート指示を受け付ける。ソート指示は、現在出力されている複数の平面オブジェクトの配置を、各平面オブジェクトの表面に現在配置されている配置用情報に応じて並べる指示である。ソート指示は、ソートの際のルールを示す情報を有していても良いし有していなくても良い.有している場合、ソートは、例えば、このルールに従って行われる。又、有していない場合、ソートは、予め指定されたルールに従って行われる。
ソート指示の入力手段は、テンキーやキーボードやマウスやメニュー画面によるもの等、何でも良い。ソート指示受付部107は、テンキーやキーボード等の入力手段のデバイスドライバーや、メニュー画面の制御ソフトウェア等で実現され得る。
配置情報更新部108は、ソート指示に応じて、複数の平面オブジェクトにそれぞれ配置されている配置用情報によって決定される順番により平面オブジェクトが並べて配置されるよう、オブジェクト配置情報を更新する。複数の平面オブジェクトにそれぞれ配置されている配置用情報とは、ソート指示受付部107がソート指示を受け付けた現在に、平面オブジェクトに配置されている配置用情報である。ソートは、ソート指示が示すルールや、予め指定されているルールに応じて行われる。配置用情報によって決定される順番とは、配置用情報をソートのルールに従って並べることで決定される順番である。例えば、ソート指示に応じて、配置用情報を構成する文字列の50音順やアルファベット順や数字順に従って、当該配置用情報が配置されている平面オブジェクトが並べられる。ソートされる平面オブジェクトは、例えば、いわゆるグリッド等に沿って配置されても良いし、平面オブジェクト間の間隔が予め指定された間隔となるよう配置されても良い。
配置情報更新部108は、通常、MPUやメモリ等から実現され得る。配置情報更新部108の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。但し、ハードウェア(専用回路)で実現しても良い。
検索条件情報受付部109は、平面オブジェクトに対する検索条件を示す情報である検索条件情報を受け付ける。検索条件は、通常の検索に利用可能な検索条件であればどのような検索条件であっても良い。例えば、検索条件情報は、文字列の情報であっても良いし、値の範囲等を示す情報であっても良い。検索条件情報の入力手段は、テンキーやキーボードやマウスやメニュー画面によるもの等、何でも良い。検索条件情報受付部109は、テンキーやキーボード等の入力手段のデバイスドライバーや、メニュー画面の制御ソフトウェア等で実現され得る。
検索部110は、検索条件情報を用いて、検索条件に合致する配置用情報と対応付けられた1以上の平面オブジェクトを検索する。検索部110は、各平面オブジェクトに現在配置されている配置用情報だけを検索対象としても良いし、各平面オブジェクトと対応付けられた配置用情報を検索対象としても良い。また、検索部110は、例えば、検索された配置用情報を取得する。検索部110は、通常、MPUやメモリ等から実現され得る。検索部110の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。但し、ハードウェア(専用回路)で実現しても良い。
検索結果配置情報取得部111は、検索部110が検索により検出した1以上の平面オブジェクトが配置される位置を指定するオブジェクト配置情報を取得してオブジェクト配置情報格納部105に蓄積する。オブジェクト配置情報は、例えば予め指定されたルールやグリッド等に応じて決定される。検索結果配置情報取得部111は、通常、MPUやメモリ等から実現され得る。検索結果配置情報取得部111の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。但し、ハードウェア(専用回路)で実現しても良い。
出力部112は、形状情報が示す2以上の平面オブジェクトのそれぞれの表面に、2以上の平面オブジェクトのそれぞれについて配置用情報取得部103が取得した配置用情報を配置した画像情報を出力する。出力部112は、例えば、各平面オブジェクトを、当該平面オブジェクトと対応付けられたオブジェクト配置情報が示す位置に配置した画像情報を生成して出力する。また、出力部112は、配置用情報取得部103が出力変更指示に応じて取得した配置用情報をそれぞれ配置した平面オブジェクトの画像情報で出力を更新する。また、出力部112は、配置用情報取得部103が整理指示に応じて取得した配置用情報を配置した平面オブジェクトの画像情報で出力を更新する。また、出力部112は、配置情報更新部108が更新したオブジェクト配置情報が示す位置に平面オブジェクトを配置した画像情報で出力を更新する。また、出力部112は、配置用情報取得部103が後述する検索部110による検索に応じて取得した配置用情報を配置した1以上の平面オブジェクトの画像情報を生成し、これを用いて出力を更新してもよい。
出力部112は、ディスプレイやスピーカー等の出力デバイスを含むと考えても含まないと考えても良い。出力部112は、出力デバイスのドライバーソフトまたは、出力デバイスのドライバーソフトと出力デバイス等で実現され得る。
図2は、本実施の形態の情報処理装置1の動作を示すフローチャートである。以下、図2を用いて動作について説明する。
(ステップS201)出力部112は、出力対象となる複数の平面オブジェクトの形状情報を、形状情報格納部101から取得する。出力対象となる複数の平面オブジェクトは、例えば、ユーザ等により指定された複数の平面オブジェクトであっても良いし、予め出力対象として管理されている複数の平面オブジェクトであっても良いし、配置用情報のいずれかと対応付けられている複数の平面オブジェクトであっても良い。
(ステップS202)配置用情報取得部103は、出力対象となる複数の平面オブジェクトのそれぞれの表面に配置される一の配置用情報を、配置用情報格納部102から取得する。それぞれの平面オブジェクトに配置される一の配置用情報は、例えば、予めデフォルト等で指定されていても良いし、ユーザにより指定された配置用情報であっても良い。一の配置用情報は、平面オブジェクトの表面に配置可能な一群の配置用情報であってもよい。
(ステップS203)出力部112は、出力対象となる複数の平面オブジェクトのそれぞれに対応したオブジェクト配置情報を取得する。
(ステップS204)出力部112は、形状情報と、配置用情報と、オブジェクト配置情報とを用いて、平面オブジェクトが配置された画像情報を生成する。具体的には、ステップS201で各平面オブジェクトについて取得した形状情報が示す形状の平面オブジェクトの表面に、ステップS202で取得した配置用情報を配置した平面オブジェクトを、ステップS203で取得したオブジェクト配置情報が示す位置に配置した画像情報を生成する。なお、後述するステップS209やステップS212等において、現在出力されている平面オブジェクトの画像を生成するために用いられている配置用情報を更新した場合、これを用いて画像情報を生成する。また、後述するステップS214等において、現在出力されている平面オブジェクトの画像を生成するために用いられているオブジェクト配置情報を更新した場合、これを用いて画像情報を生成する。
(ステップS205)出力部112は、生成した画像情報を出力する。
(ステップS206)出力変更指示受付部104は、出力変更指示を受け付けたか否かを判断する。受け付けた場合、ステップS207に進み、受け付けていない場合、ステップS211に進む。
(ステップS207)配置用情報取得部103は、ステップS206で受け付けた出力変更指示の指示対象となる平面オブジェクトを含む平面オブジェクトのグループが、第一の更新モードに設定されているグループであるか否かを判断する。第一の更新モードに設定されている場合、ステップS208に進み、されていない場合、ステップS210に進む。
(ステップS208)配置用情報取得部103は、指示対象と同じグループに属する平面オブジェクトを検出する。ここで検出する平面オブジェクトは、指示対象の平面オブジェクトを含む平面オブジェクトである。
(ステップS209)配置用情報取得部103は、ステップS208で検出した平面オブジェクトのそれぞれについて出力変更指示に応じた出力変更後の配置用情報を取得し、現在出力されている平面オブジェクトの画像を生成するために用いられている配置用情報を更新する。そして、ステップS204に戻る。ここで述べる更新とは、既にある情報を新たな情報で上書きすることであっても良いし、既にある情報を削除して、新たな情報を蓄積することであってもよい。かかることは、以下においても同様である。
(ステップS210)配置用情報取得部103は、指示対象の平面オブジェクトについて、出力変更指示に応じた出力変更後の配置用情報を取得し、現在出力されている平面オブジェクトの画像を生成するために用いられている配置用情報を更新する。そして、ステップS204に戻る。
(ステップS211)出力変更指示受付部104は、整理指示を受け付けたか否かを判断する。受け付けた場合、ステップS212に進み、受け付けていない場合、ステップS213に進む。
(ステップS212)配置用情報取得部103は、ステップS211で受け付けた整理指示に応じて、それぞれの平面オブジェクトについて予め指定された配置用情報を取得する。そして、現在出力されている平面オブジェクトの画像を生成するために用いられている配置用情報を更新し、ステップS204に戻る。
(ステップS213)ソート指示受付部107は、ソート指示を受け付けたか否かを判断する。受け付けた場合、ステップS214に進み、受け付けていない場合、ステップS215に進む。ソート指示は、例えば、ソートの条件を示す情報を含む。
(ステップS214)配置情報更新部108は、ソート指示に応じて、現在出力されている平面オブジェクトに配置されている配置用情報の配列順番を決定し、この配列順番で平面オブジェクトが配列されるよう、現在出力されている平面オブジェクトの画像を生成するために用いられている配置情報を更新する。そして、ステップS204に戻る。
(ステップS215)検索条件情報受付部109は、検索条件情報を受け付けたか否かを判断する。受け付けた場合、ステップS216に進み、受け付けていない場合、ステップS220に進む。なお、検索結果がなかった場合、ステップS206に戻るようにしても良い。
(ステップS216)検索部110は、検索条件情報に合致する配置用情報を検索し、検索された配置用情報と対応付けられた平面オブジェクトを検出する。例えば、平面オブジェクトの識別情報等を取得する。
(ステップS217)配置用情報取得部103は、ステップS216で検索された平面オブジェクトについての形状情報を形状情報格納部101から読み出す。
(ステップS218)配置用情報取得部103は、検索部110がステップS216で検索した配置用情報を、ステップS216で検索された各平面オブジェクトの配置用情報として取得する。
(ステップS219)配置用情報取得部103は、ステップS216で検索された平面オブジェクトを配列して出力するためのオブジェクト配置情報を取得する。例えば、グリッドに沿った座標の値等をオブジェクト配置情報として取得する。そして、ステップS204に進む。なお、このステップの直後のステップS204においては、ステップS217からステップS219で取得した形状情報と、配置用情報と、オブジェクト配置情報とにより、現在出力されている画像情報に用いられている形状情報と、配置用情報と、オブジェクト配置情報とを更新する。これにより、ステップS216で検索された平面オブジェクトが配置された画像情報が生成される。
(ステップS220)切換指示受付部106は、切換指示を受け付けたか否かを判断する。受け付けた場合、ステップS221に進み、受け付けていない場合、ステップS206に進む。
(ステップS221)配置用情報取得部103は、更新モードを切換指示に応じた更新モードに切り替える。例えば、配置用情報取得部103は、更新モードを設定する情報を、図示しない記憶媒体等に蓄積する。そしてステップS206に戻る。
なお、図2のフローチャートにおいて、電源オフや処理終了の割り込みにより処理は終了する。
以下、本実施の形態における情報処理装置1の具体的な動作について説明する。ここでは、情報処理装置1は、タッチパネルで操作可能な携帯情報端末であるとする。ただし、情報処理装置1が、どのような装置であるかは問わない。また、配置用情報格納部102に格納されている配置用情報が商品カタログに用いられる情報であり、情報処理装置1が出力する情報がインタラクティブな操作が可能な電子商品カタログである場合を例に挙げて説明する。
以下に示す表1は、形状情報格納部101に格納されている形状情報を管理する形状情報管理表である。
形状情報管理表は、「形状ID」、「幅」、「高さ」という項目を有して得る。「形状ID」は形状情報の識別情報である。「幅」、「高さ」は形状情報の幅、高さを示している。なお、ここでは形状情報が示す形状が矩形である場合を示しているが、形状は矩形以外であっても良い。また、形状情報は、平面オブジェクトの形状等を表す画像情報を有していても良い。なお、ここでは、w1や、h1は、それぞれ任意の値を示している。かかることは以下においても同様である。
図3は、オブジェクト配置情報格納部105に格納されているオブジェクト配置情報を管理するオブジェクト配置情報管理表を示す図である。オブジェクト配置情報管理表は、「オブジェクト配置ID」、「幅」、「高さ」という項目を有して得る。「オブジェクト配置ID」は、オブジェクト配置情報の識別情報である。「x座標」、「y座標」は、オブジェクト配置情報であり、平面オブジェクトが配置される座標を示している。この座標は、ここでは、形状情報が示す形状の平面オブジェクトの、左上隅の座標であるとする。なお、ここでは、x1〜x5等や、y1〜y5等は、それぞれ任意の値を示している。かかることは以下においても同様である。
図4は、配置用情報格納部102に格納されている配置用情報を示す図である。ここでは、配置用情報は、XML形式の構造化されたデータであるとする。ただし、配置用情報は、XML形式のデータでなくても良く、例えば、データを項目や属性別等に参照可能な形式のデータであれば良い。ここでは、配置用情報は、「商品名」、「色」、「メーカ」、「価格」、「発売日」、「仕様」、または「コメント」というタグのうちのいずれかのタグがつけられたデータである。配置用情報ここでは例として、ユーザ等により予め作成され、蓄積されているものとする。また、ここでは、配置用情報が商品別にグループ化されているものとする。すなわち、一対の商品タグ、すなわち「<商品>」と「</商品>」とで区切られた範囲のタグ付けられたデータが一の商品の配置用情報としてグループ化されているとする。なお、配置用情報として、画像ファイル等のアドレスを指定する情報、例えばリンク情報が含まれる場合、これにより指定されたファイルの情報が配置用情報として配置用情報取得部103や出力部112により適宜取得されるものとする。
図5は、複数の平面オブジェクトのそれぞれと対応付けられた、形状情報と、オブジェクト配置情報と、配置用情報とを管理する平面オブジェクト管理表を示す図である。平面オブジェクト管理表は、平面オブジェクトを管理するための情報である。平面オブジェクト管理表は、「オブジェクトID」と、「形状ID」と、「オブジェクト配置ID」と、「対応配置用情報」という項目を有している。「オブジェクトID」は、平面オブジェクトの識別情報である。「形状ID」と、「オブジェクト配置ID」は、表1の形状情報管理表の「形状ID」と、図3のオブジェクト配置情報管理表の「オブジェクト配置ID」に対応する。「対応配置用情報」は、図4に示した配置用情報のうちの、各平面オブジェクトの表面に配置可能な配置用情報のグループ(群)を指定する情報である。「対応配置用情報」は、ここでは、図4に示した配置用情報の<商品>タグで区切られた配置用情報のグループに含まれる商品名タグの要素で、配置用情報のグループを指定しており、この商品名タグの要素と同じグループに属する配置用情報が、対応する「オブジェクトID」が示す平面オブジェクトの表面に配置され得る配置用情報であるとする。
図6は、図示しない記憶媒体等に予め蓄積されている出力順番を示す情報を管理する右方向出力順番管理表(図6(a))および左方向出力順番管理表(図6(b))を示す図である。ここでは説明を簡単にするため、ここで示した右方向出力順番管理表と左方向出力順番管理表とは、全ての平面オブジェクトに共通して利用されるものとする。ただし、これらの出力順番の管理表は、各平面オブジェクトごとに個別に用意されていても良い。右方向出力順番管理表は、例えば、現在の配置用情報取得部103が最新の配置用情報を取得する際に用いられた取得条件情報と、出力部112により出力されている一の平面オブジェクト上の領域を右方向にポインタ等でなぞる処理を行った場合に出力変更指示受付部114が受け付けた出力変更指示に応じて、配置用情報取得部103が新たに取得する次の配置用情報の条件を示す取得条件情報と、を対応付けて有する情報である。また、左方向出力順番管理表は、例えば、現在の最新の配置用情報を取得する際に用いられた取得条件情報と、出力部112により出力されている一の平面オブジェクト上の領域を左方向にポインタ等でなぞる処理を行った場合に出力変更指示受付部114が受け付けた出力変更指示に応じて、配置用情報取得部103が新たに取得する次の配置用情報の条件を示す取得条件情報と、を対応付けて有する情報である。右方向出力順番管理表および左方向出力順番管理表の「第一配置条件情報」および「第二配置条件情報」の値は、配置用情報取得部103が最新の配置用情報を取得する際に用いられた配置条件情報および次に取得する配置用情報の条件を示す配置条件情報である。
例えば、一の平面オブジェクト上の領域を右方向になぞる操作に応じた出力変更指示を出力変更指示受付部114が受け付けた場合、配置用情報取得部103は、現在表示されている最新の配置用情報を取得するために用いた取得条件情報と一致する「第一配置条件情報」を有するレコードの「第二配置条件情報」の値を右方向出力順番管理表から取得して、次の配置用情報を取得するための配置条件情報として用いる。
同様に、左方向になぞる操作に応じた出力変更指示を出力変更指示受付部114が受け付けた場合、配置用情報取得部103は、現在表示されている最新の配置用情報を取得するために用いた取得条件情報と一致する「第一配置条件情報」を有するレコードの「第二配置条件情報」の値を左方向出力順番管理表から取得して、次の配置用情報を取得するための配置条件情報として用いる。なお、左方向出力順番管理情報から取得した配置条件情報を用いて取得される配置用情報は、配置用情報取得部103が取得した最新の配置用情報に対して次の順番となる配置用情報と考えても良い。
図7は、図示しない記憶媒体等に予め蓄積されている出力順番を示す情報を管理する下方向出力順番管理表(図7(a))および上方向出力順番管理表(図7(b))を示す図である。下方向出力順番管理表および上方向出力順番管理表は、対応する出力変更指示が一の平面オブジェクト上の領域を下方向および上方向になぞる操作に応じて受け付けた出力変更指示である点が異なることを除けば、上述した左方向出力順番管理表と同様であるのでここでは詳細な説明は省略する。
まず、ユーザが、例えば、情報処理装置1を起動すると、出力部112は、形状情報格納部101から、図5に示した平面オブジェクト管理表で管理される各平面オブジェクトの形状情報を読み出す。そして、取得した形状情報を、平面オブジェクトの識別情報と対応付けて、図示しない記憶媒体等に一時記憶する。
また、配置用情報取得部103は、平面オブジェクト管理表で管理される各平面オブジェクトの表面にそれぞれ配置される配置用情報を配置用情報格納部102から取得する。具体的には、図6に示した平面オブジェクト管理表の各「オブジェクトID」が示す各平面オブジェクトに配置される配置用情報として、各「オブジェクトID」に対応した「対応配置用情報」が示すタグの要素を含む配置用情報のグループ(ここでは、商品タグで囲まれた情報を1のグループに属する情報とする)の中の一部の配置用情報をそれぞれ取得する。ここでは、この一部の配置用情報として、初期値として予め指定されている配置条件情報である「商品名、商品写真」という条件を満たす配置用情報を取得するものとする。
例えば、配置用情報取得部103は、図5に示した平面オブジェクト管理表を参照して、「オブジェクトID」が「OB001」である平面オブジェクトに配置される配置用情報として、要素が「BS602」である商品名タグを含む配置用情報のうちの、「商品名、商品写真」という配置条件情報が示す条件を満たす配置用情報を取得することを決定する。「商品名、商品写真」という配置条件情報が示す条件を満たす配置用情報とは、図4に示した配置用情報のうちの、商品名タグの要素である配置用情報と、商品写真タグの要素である配置用情報とを意味する。そして、配置用情報取得部103は、図4に示した配置用情報の「BS602」という要素を有する商品名タグを有する配置用情報のグループから、商品名タグの要素である「BS602」と、商品写真タグの要素である「bs602.gif」とを配置用情報として取得する。なお、「bs602.gif」としては、リンク先の画像情報を取得する。そして、取得した配置用情報を、出力部112に渡す。出力部112は、渡された配置用情報を、平面オブジェクトの識別情報と対応付けて、図示しない記憶媒体等に一時記憶する。同様にして、他の形状情報についても配置用情報を取得する。
また、出力部112は、各平面オブジェクトのオブジェクト配置情報を、オブジェクト配置情報格納部105から取得する。具体的には、図3に示したオブジェクト配置情報管理表から、図5で示した平面オブジェクト管理表で管理される各平面オブジェクトの「オブジェクト配置ID」に対応するオブジェクト配置情報である「x座標」と「y座標」との値を取得する。そして、取得したオブジェクト配置情報を、平面オブジェクトの識別情報と対応付けて、図示しない記憶媒体等に一時記憶する。
図8は、出力部112が取得して一時記憶した形状情報と、配置用情報と、オブジェクト配置情報と、取得条件情報とを平面オブジェクトの識別情報と対応付けて管理する取得平面オブジェクト管理表である。取得平面オブジェクト管理表は、「形状ID」と、「x座標」と、「y座標」と、「配置用情報」と、「取得条件情報」とを有する。「形状ID」は、表1の形状IDに相当する。「x座標」および「y座標」は、オブジェクト配置情報である。「配置用情報」は、配置用情報取得部103が取得した配置用情報である。「取得条件情報」は、配置用情報を取得する際に用いられた取得条件情報である。
図9は、オブジェクト配置情報格納部105に格納されているウィンドウを表示するための情報であるウィンドウ情報を管理するウィンドウ管理表を示す図である。ウィンドウ管理表は、「ウィンドウID」と、「高さ」、「幅」、「左上座標」、「オブジェクトID」という項目を有している。「ウィンドウID」はウィンドウの識別情報である。「高さ」、および「幅」は、ウィンドウの高さ、および幅である。「左上座標」はウィンドウの左上角の座標である。「オブジェクトID」は、ウィンドウ内に配置される平面オブジェクトのオブジェクトIDである。なお、同一のウインドウIDと対応付けられているオブジェクトIDが示す平面オブジェクトは、ここでは、同一のグループに含まれる平面オブジェクトであると考える。
出力部112は、各平面オブジェクトについて取得した形状情報が示す形状を有する平面オブジェクトの表面に、各平面オブジェクトについて取得した配置用情報を配置した平面オブジェクトの画像情報を生成する。また、図8に示したウィンドウ管理表で管理されるウィンドウ情報を用いてウィンドウの画像情報を生成する。そして、各平面オブジェクトのオブジェクト配置情報と、各ウィンドウの左上座標の値等に従って、生成した平面オブジェクトの画像情報とウィンドウの画像情報とを重ね合わせて配置した画像情報を生成し、出力する。ここでは、出力として例えば表示を行う。なお、重ね合わせる際には、平面オブジェクトの画像が、ウィンドウの画像よりも前面に配置されるようにする。
図10は、出力部112による平面オブジェクトを有する画像情報の表示例を示す図である。平面オブジェクト91〜95は、それぞれ、「オブジェクトID」がOB001〜OB005である平面オブジェクトであるとする。また、ウィンドウ810、811は、「ウィンドウID」が「w01」、「w02」であるウィンドウであるとする。なお、本実施の形態においては、座標の値や、オブジェクトの配置等は、説明の便宜上のものであり、必ずしも正確に描かれたものではない。図10に示すように、各平面オブジェクトは、商品ごとの情報を表示するオブジェクトなっている。
図11は、グループ別に対応付けられた更新モードを管理する更新モード管理表である。更新モード管理表は、「ウィンドウID」と、「更新モード」という項目を有している。「ウィンドウID」は、図7に示したウィンドウIDに相当する。ここでは、上述したように、一のウィンドウに対応付けられている1以上のオブジェクトを一のグループのオブジェクトと考えており、ウィンドウIDをグループの識別情報として用いている。また、「更新モード」は、ウィンドウに対して指定されている更新モードである。第一の更新モードは、出力変更指示が指定する平面オブジェクトに加えて、同じグループに含まれるそれ以外の平面オブジェクトも更新させるモードである。第二の更新モードは、出力変更指示が指定する平面オブジェクトだけを更新するモードであり、ここでは、デフォルトとして各ウィンドウの更新モードは第一の更新モードに設定されているものとする。更新モード管理表は、例えば、図示しない記憶媒体に蓄積される。
次に、ユーザがメニュー画面やマウス等を操作して、平面オブジェクト91の表面を左から右方向になぞる操作を行ったとする。出力変更指示受付部104は、タッチパネルから入力される指でタッチされた座標のx軸方向の変化とその速さ等から平面オブジェクト91上の領域を右方向になぞる操作が行われたと判断して、平面オブジェクト91に対応する「オブジェクトID」が「OB001」である平面オブジェクトに対する右方向になぞる操作に対応した出力変更指示を受け付ける。なお、「オブジェクトID」が「OB001」である平面オブジェクトを、以下適宜、平面オブジェクトOB001と称す。かかることは他のオブジェクトについても同様である。
配置用情報取得部103は、平面オブジェクトOB001の属するグループの識別情報、ここでは、平面オブジェクトOB001が配置されているウィンドウのウィンドウID「w01」を図9に示したウィンドウ管理表から取得する。
つぎに、配置用情報取得部103は、図11に示した更新モード管理表において、「オブジェクトID」の値が、取得した「w01」と一致するレコードを検出し、そのレコードの「更新モード」の値を取得する。ここでは、「第一の更新モード」を取得する。
取得した更新モードが、「第一の更新モード」であるため、配置用情報取得部103は、図9に示したウィンドウ管理表から、同じウィンドウ内の平面オブジェクトのオブジェクトIDを取得する。即ち「ウィンドウID」が「w01」であるレコードの「オブジェクトID」の値である「OB001」、「OB002」、「OB003」を取得する。
そして、取得したオブジェクトID「OB001」、「OB002」、「OB003」に対応した平面オブジェクトのそれぞれについて、順次、出力変更指示に対応した配置用情報を新たに取得する。ここでは、右方向になぞる操作に応じた出力変更指示を受け付けたため、図6(a)に示した右方向出力順番管理表を用いて、新たに取得する配置用情報の条件を示す取得条件情報を取得する。
具体的には、まず、配置用情報取得部103は、図8に示した取得平面オブジェクト管理表から、「オブジェクトID」が「OB001」である平面オブジェクトに配置されている配置用情報に対応する配置条件情報である「商品名、商品写真」を取得する。そして、図6(a)に示した右方向出力順番管理表において、「第一配置条件情報」の値が、取得した「商品名、商品写真」と一致するレコードを検索し、このレコードの「第二配置変更条件情報」である「価格」を取得する。そして、図4に示した配置用情報のうちの、「BS602」という商品名タグを有する要素を含む配置用情報のグループから、タグ名が「価格」であるタグが付けられた情報である「3.2万円」を次の配置用情報として取得する。そして、出力部112が、図8に示した取得平面オブジェクト管理表の「オブジェクトID」が「OB001」であるレコードの「配置用情報」の値を「3.2万円」、「取得条件情報」の値を「価格」にそれぞれ更新(ここでは上書き)する。
また、同様の処理を、「オブジェクトID」が「OB002」である平面オブジェクトと、「OB003」である平面オブジェクトとについても行う。これにより、図8に示した取得平面オブジェクト管理表の「オブジェクトID」が「OB002」であるレコードの「配置用情報」の値が「1.6万円」、「取得条件情報」の値が「価格」に更新され、「オブジェクトID」が「OB002」であるレコードの「配置用情報」の値が「4万円」、「取得条件情報」の値が「価格」に更新される。
図12は、更新後の取得平面オブジェクト管理表を示す図である。
出力部112は、更新後の取得平面オブジェクト管理表を用いて、再度、上記と同様に、平面オブジェクトの画像情報を生成し、生成された画像情報を図示しないモニタ等に出力(表示)する。
図13は、更新後の平面オブジェクトの出力例を示す図である。
ここで、ユーザが、メニューやマウス等の操作によって、ウィンドウ810に対する更新モードの切換指示を入力したとする。この入力に応じて、切換指示受付部106は、ウィンドウ810に対応付けられた更新モードを変更する指示を受け付ける。この切換指示は、例えば、更新モードを、第二の更新モードに切り替える指示であるとする。
配置用情報取得部103は切換指示受付部106が受け付けた切換指示により、図10に示した更新モード管理表の「更新モード」の値を、「第二の更新モード」で上書きする。
図14は、更新モードが変更された更新モード管理表を示す図である。
ここで、ユーザが平面オブジェクトOB002(平面オブジェクト92)に対して、さらに、表面を上から下方向になぞる操作を行ったとすると、出力変更指示受付部104は、平面オブジェクトOB002に対する下方向になぞる操作に対応した出力変更指示を受け付ける。
この平面オブジェクトOB002が配置されているウィンドウ810に設定されている「更新モード」は、図12に示す更新モード管理表に示すように「第二の更新モード」に変更されているため、配置用情報取得部103は、出力変更指示の対象となる平面オブジェクトOB002についてだけ、新たな配置用情報を上記と同様の処理により取得する。具体的には、配置用情報取得部103は、図12に示した取得平面オブジェクト管理表から、「オブジェクトID」が「OB002」である平面オブジェクトに配置されている配置用情報に対応する配置条件情報である「価格」を取得する。そして、図7(a)に示した下方向出力順番管理表において、「第一取得条件情報」の値が、取得した「価格」と一致するレコードを検索し、このレコードの「第二配置変更条件情報」である「仕様」を取得する。そして、図4に示した配置用情報のうちの、平面オブジェクトOB002に対応した「AW801」という商品名タグを有する要素を含む配置用情報のグループから、タグ名が「仕様」であるタグが付けられた情報である「有機EL」を次の配置用情報として取得する。そして、出力部112が、図12に示した取得平面オブジェクト管理表の「オブジェクトID」が「OB002」であるレコードの「配置用情報」の値を「有機EL」、「取得条件情報」の値を「仕様」にそれぞれ更新(ここでは上書き)する。
図15は、更新後の取得平面オブジェクト管理表を示す図である。
出力部112は、更新後の取得平面オブジェクト管理表を用いて、再度、上記と同様に、平面オブジェクトの画像情報を生成し、生成された画像情報を図示しないモニタ等に出力(表示)する。
図16は、更新後の平面オブジェクトの出力例を示す図である。
次に、ユーザが、メニュー等を操作して平面オブジェクトに表示される情報を揃える指示を与えたとすると、出力変更指示受付部104は、平面オブジェクトに対する整理指示を受け付ける。
配置用情報取得部103は、整理指示に応じて、全ての平面オブジェクトに配置される配置用情報が揃うように、各平面オブジェクトに対して、予め指定された取得条件情報を用いて各平面オブジェクトに対して、共通する条件に合致する配置用情報を取得する。例えば、ここでは、予め指定された取得条件情報が「商品名、商品写真」であったとすると、配置用情報取得部103は、全ての平面オブジェクトについて、商品名タグと、商品写真タグとが付けられた配置用情報を取得する。そして、出力部112が、各平面オブジェクトについて取得された配置用情報で取得平面オブジェクト管理表を更新し、更新された取得平面オブジェクト管理表に基づいて、表示されている平面オブジェクトの画像を更新する。更新後の取得平面オブジェクト管理表は、ここでは、図8と同様であり、平面オブジェクトの出力例は、図10と同様である。
なお、整列指示によって平面オブジェクトに配置される配置用情報を、どのような配置用情報で揃えるかについては、例えば予めデフォルト等で指定されているようにしても良いし、ユーザが整理指示とともに揃える配置用情報を指定する情報、例えば取得条件情報等を入力するようにし、この取得条件情報を用いて、各平面に配置される配置用情報を揃えても良い。
また、ここでは、全ての平面オブジェクトを揃えるようにしたが、ユーザにより指定されたグループの平面オブジェクト、例えば、ユーザにより指定されたウィンドウ内に配置される平面オブジェクトに配置される配置用情報だけを揃えるようにしても良い。
次に、ユーザが、メニュー等を操作して、ウィンドウ810内に配置されている平面オブジェクトを、平面オブジェクトに配置されている配置用情報のアルファベット音順で、表示画面の左側からソートする指示を与えたとする。この指示は、例えばウィンドウ810を指定して、「アルファベット順でソート」等のメニュー項目を選択することで入力されるとする。このソートの指示の入力により、ソート指示受付部107は、平面オブジェクトをソートするソート指示を受け付ける。
配置情報更新部108は、上記と同様に、ウィンドウ810内に配置されている平面オブジェクト「OB001」、「OB002」、「OB003」を検出する。そして、配置情報更新部108は、各平面オブジェクトに現在配置されている配置用情報を、図8に示した取得平面オブジェクト管理表からそれぞれの平面オブジェクトについて取得する。ただし、ここでは、画像情報は取得しない。ここでは、即ち「BS602」、「AW801」、「TM555」という文字列の情報を、各平面オブジェクトから取得する。そして、取得したこれらの情報から、先頭の文字列の第一音がアルファベット音順で最も早いものから順番に検出する。ここでは、「AW801」、「BS602」、「TM555」の順で情報が検出される。
配置情報更新部108は、配置用情報を検出した順に、配置用情報が配置された平面オブジェクトが配列されるように、それぞれの平面オブジェクトのオブジェクト配置情報を更新する。具体的には、ウィンドウ810の左側から、「AW801」が配置されている平面オブジェクトOB002、「BS602」が配置されている平面オブジェクトOB001、「TM555」が配置されている平面オブジェクトOB003の順に、各平面オブジェクトが配置されるよう各平面オブジェクトのオブジェクト配置情報を更新する。例えば、各平面オブジェクトは、図示しない予め指定されたグリッド等に沿って、予め指定された間隔で配置する。そして、配置情報更新部108は、更新されたオブジェクト配置情報を用いて、取得平面オブジェクト管理表を更新する。出力部112は、更新された取得平面オブジェクト管理表を用いて生成した画像情報を用いて平面オブジェクトの出力を更新する。
図17は、更新後の取得平面オブジェクト管理表である。
また、図18は、更新後の平面オブジェクトの表示例を示す図である。
つぎに、ユーザがメニュー等を操作して、「価格」タグの要素が「3万円以下」である平面オブジェクトを検索する指示を入力したとする。例えば、検索用の入力フィールド等から、上記のような検索条件を示す情報を入力して、検索を行うボタン等を押したとする。検索条件情報受付部109は、値が「3万円以下」である「価格」タグが付与された配置用情報が配置されていることを検索条件として平面オブジェクトの検索を行うことを指示する検索条件情報を受け付ける。
検索部110は、まず、検索条件情報受付部109が受け付けた検索条件情報が示す検索条件を満たす配置用情報を検索する。具体的には、図4に示した配置用情報のうちの、「価格」タグが付けられた配置用情報の中から、要素の値が3万円以下であるものを検出する。そして、検出された配置用情報と同じグループに属する「商品名」タグの値を取得する。ここでは、要素が「AW801」および「RW008」である「商品名」タグが付けられた配置用情報を同じグループに属するが「価格」タグが付けられた配置用情報が、条件を満たす、即ち要素の値が3万円以下であると判断される。このため、検索部110は、検索結果として、図5に示した平面オブジェクト管理表の、「商品名」タグが「SER2268」および「SER3661」であるレコード、即ち「対応配置用情報」の値が「商品名"AW801"」および「商品名"RW008"」であるレコードの「オブジェクトID」の値である「OB002」、「OB004」を取得する。
そして、検索結果配置情報取得部111は、検索部110が検索結果として取得した「オブジェクトID」が「OB002」および「OB004」である平面オブジェクトを配置するためのオブジェクト配置情報を作成する。ここでは、一例として、検索結果を表示するためのウィンドウを表示するための情報(図示せず)を作成するとともに、このウィンドウ内に平面オブジェクトOB002および平面オブジェクトOB004を配置するためのオブジェクト配置情報を新たに作成する。そして、検索結果配置情報取得部111は、このオブジェクト配置情報を含む取得平面オブジェクト管理表を図示しない記憶媒体等に蓄積する。検索結果を示すウィンドウが表示される位置やサイズ等はここでは予め指定されているものとする。また、検索結果の平面オブジェクトは、図示しないグリッド等に沿って、予め指定された間隔で配置するよう指定されているものとする。出力部112は、このように更新された取得平面オブジェクト管理表を用いて、平面オブジェクトの画像情報を生成して、出力を更新する。
図19は、更新後のオブジェクト配置情報管理表である。
また、図20は、更新後の平面オブジェクトの表示例を示す図である。なお、図において、ウィンドウ830は、検索結果の平面オブジェクトが表示されるウィンドウ、平面オブジェクト831および平面オブジェクト832は、それぞれ、オブジェクトIDが「OB002」および「OB004」である検索結果の平面オブジェクトである。
以上のように、本実施の形態によれば、一の平面オブジェクトで表示されている表示用情報を変更すると、他の平面オブジェクトに表示されている表示用情報も同様に連動して表示が変更されるため、複数の平面オブジェクトを操作する際の操作性を向上させることができる。
例えば、ユーザが比較したい複数の商品についての情報が配置用情報としてそれぞれの面に配置された平面オブジェクトが配置されていたとする。この場合、一の平面オブジェクトに現在表示されている配置用情報以外の配置用情報を見るために、この面に表示される配置用情報を変更する指示を与えたとすると、この平面オブジェクトだけでなく、比較したい他の平面オブジェクトに表示されている配置用情報も出力変更指示の対象となる平面オブジェクトと同様に変更させることができ、一の平面オブジェクトに対する変更操作によって、複数の平面オブジェクトに対しても同様の情報を比較しやすいように表示させることが可能となる。この結果、ユーザに対する操作性の向上を図ることができる。
また、本実施の形態によれば、グループ単位で、平面オブジェクトに配置される配置用情報が連動して変更するか否かを設定でき、平面オブジェクトの動作をカスタマイズすることができる。
なお、本実施の形態においては、平面オブジェクトが階層関係を有するよう管理されている場合、一の平面オブジェクトの出力変更指示に応じて、当該一の平面オブジェクトと連動して更新を行う他の平面オブジェクトは、同じ階層の平面オブジェクトのみとしてもよい。平面オブジェクトの階層関係は、各平面オブジェクトに対応付けられた配置用情報のグループの階層関係としてもよい。同じ階層の平面オブジェクトとは、例えば、平面オブジェクト間で包含関係、あるいは従属関係がない平面オブジェクトである。通常、同じ階層で管理されている平面オブジェクトは、同様の商品や同じカテゴリーの商品等についての配置用情報等が配置された平面オブジェクトであることが多いため、このような構成とすることで、同様の商品や同じカテゴリーの商品等についての平面オブジェクトだけを連動して動作させることができ、比較等の対象とならない商品の平面オブジェクトを動作させないようにして、操作性を向上させることが可能となる。なお、同じ階層にある複数の平面オブジェクトを、上述したような同じグループに属する平面オブジェクトの一例と考えても良い。
また、出力条件情報を仮想上の立体オブジェクトの各面に対応付けて管理しておくようにし、出力変更指示受付部104が出力変更指示を受け付けるごとに、出力変更指示に応じた向きに仮想上の立体オブジェクトを回転させた場合の予め指定された向き(例えば正面)を向く面を判断し、この面に対応付けられた出力条件情報を、次に平面オブジェクトに配置する配置用情報の条件を示す情報として取得するようにしてもよい。このようにすることで、立体オブジェクトを操作しているような操作感を平面画像によって実現できる。なお、この場合、形状情報は、立体図形を斜投影法等で示した画像情報を含むもの、あるいはこのような画像を生成可能なものであることが、立体オブジェクトのような操作が可能であることをユーザに示すことができる点で好ましい。かかることは以下においても同様である。
また、仮想上の立体オブジェクトの各面について、上下左右の向きを異なるものとしたものを、便宜上、それぞれ異なる面と考えて異なる識別情報を対応付けて示すようにする。そして、この立体オブジェクトの予め指定された一の方向(例えば正面)を向いた面が平面オブジェクトの表面に相当する出力用の面と考えて、上述した異なる識別情報と対応付けられた各面が出力用の面である状態から、立体オブジェクトを上下左右等に回転させた場合に、出力用の面となる面の識別情報を、回転前の面の識別情報と対応付けて回転方向別に管理情報等で管理する。また、向きが異なる面に対して付与された識別情報と、この各面に配置される配置用情報の条件を示す出力条件情報とを対応付けた管理情報も予め用意しておく。但し、立体オブジェクト自体の情報は不要である。そして、これらの管理情報を用いて、合成指示や出力変更指示に応じた方向に立体オブジェクトを回転させたと考えた場合に、最新の配置用情報の次の出力順番となる配置用情報を取得するための出力条件情報を取得するようにしてもよい。
例えば、直方体等を構成する一の面である面Aを、その一の辺が上に来るよう配置した場合、下に来るよう配置した場合、右に来るよう配置した場合、および左に来るよう配置した場合を、便宜上、それぞれ異なる面と考えるようにして、それぞれの面に異なる識別情報A01〜A04を付与する。ただし、これらの識別情報A01〜A04が示す面は、実際は一の面Aであるので、これらの面には、同じ出力条件情報を対応付けて管理する。同様にして、他の面についても、向きが違うものを異なる面と考えて、それぞれに異なる識別情報を付与する。次にこれらの面の識別情報を用いて、これらの各面の識別情報と、これらの識別情報が示す各面が出力面となっている状態から立体オブジェクトを所定の回転方向に所定の角度、例えば90度回転させたと考えた場合に次に出力面となる面の識別情報と、を対応付けた管理情報を、予め、所定の回転方向別に用意しておく。そして、例えば、合成指示や出力変更指示に応じて、これらの情報を用いて、配置用情報取得部103が取得した最新の配置用情報に対応した出力条件情報と対応付けられた面の識別情報と対応付けられた次の出力順番(あるいは前の出力順番)となる面の識別情報に対応した出力条件情報を取得して、この出力条件情報が示す条件を満たす配置用情報を、次または前の配置用条件として取得するようにしてもよい。このようにすることで、平面オブジェクトであるにもかかわらず、直方体の立体オブジェクトの表面に配置した配置用情報を、立体オブジェクトを回転させて表示させるような表示効果を得ることが可能となる。
例えば、立方体や直方体等の立体オブジェクトにおいては、立体オブジェクトを上下や左右に回転させて、同じ面が正面を向くように配置したとしても、回転の手順等が異なると、その面の上下左右が異なっている場合がある。このような場合、更に立体オブジェクトを右方向に回転させたとしても、常に同じ面が表示されるとは限らない。従って、図6(a)等で示すような出力順番を示す情報をでは、立体オブジェクトを回転させてその面を表示させるような動作を、平面オブジェクトにおいて実現することは困難である。しかし、立体オブジェクトの各面の上下左右が異なるものを、それぞれ異なる面として扱うようにして、この面と出力条件情報とを対応付けることで、立体オブジェクトを回転させる場合と同様の表示を、平面オブジェクトで実現することが可能となる。
例えば、図21に示すように、立方体(直方体)の各面を示す識別情報と、各面を現在の正面とした状態から、この立方体を右方向に90度させた場合に次の正面となる面の識別情報とを、対応付けて管理する出力順番を示す情報の管理表を用意する。ただし、ここでの各面の識別情報は、各面の配置される向きを考慮した識別情報であり、向きが異なる同一面には異なる識別情報が付与されているものとする。この管理表において、各面の識別情報は、立方体の6面を特定するA〜Fまでの記号と、各面の上下左右のそれぞれの辺を立方体の上側に配置した場合のそれぞれの向きを示す「01」から「04」とを組み合わせた文字列で表される。「現在」は、つまり現在の正面となっている面である。また、「次」は、次の正面となる面である。また、図示しないが、同様に、立方体の現在の正面と、この立方体を左方向、上方向、および下方向にそれぞれ90度回転させた場合の次の正面となる面とを、各面の向きを含めた識別情報を用いて対応付けて管理する出力順番を示す情報を管理する3つの管理表を用意する。
また、図22に示すような、図21に示した面の識別情報と、出力条件情報とを対応付けた管理表を用意する。
そして、図21に示す管理表を含む上述した4つの管理表を、合成指示に応じて図6(a)、図6(b)、図7(a)、図7(b)等に示した出力順番情報の代わりに用いて、次に出力される配置用情報や、合成される配置用情報を取得することで、図23に示すような立体オブジェクトを操作して、この立体オブジェクトの各面を順次表示していくような感覚で、平面オブジェクトに配置される配置用情報を変更していくことができる。
また、上記実施の形態においては、平面オブジェクトに配置される配置用情報を、出力条件情報を用いて指定するようにしたが、出力条件情報の代わりに、配置用情報を直接用いるようにしても良いことはいうまでもない。
なお、上記各実施の形態において、各処理(各機能)は、単一の装置(システム)によって集中処理されることによって実現されてもよく、あるいは、複数の装置によって分散処理されることによって実現されてもよい。
また、上記各実施の形態において、一の装置に存在する2以上の通信手段(情報送信部など)は、物理的に一の媒体で実現されても良いことは言うまでもない。
また、上記実施の形態において、各構成要素が実行する処理に関係する情報、例えば、各構成要素が受け付けたり、取得したり、選択したり、生成したり、送信したり、受信したりする情報や、各構成要素が処理で用いるしきい値や数式、アドレス等の情報等は、上記説明で明記していない場合であっても、図示しない記録媒体において、一時的に、あるいは長期にわたって保持されていてもよい。また、その図示しない記録媒体への情報の蓄積を、各構成要素、あるいは、図示しない蓄積部が行ってもよい。また、その図示しない記録媒体からの情報の読み出しを、各構成要素、あるいは、図示しない読み出し部が行ってもよい。
また、上記各実施の形態では、情報処理装置がスタンドアロンである場合について説明したが、情報処理装置は、スタンドアロンの装置であってもよく、サーバ・クライアントシステムにおけるサーバ装置であってもよい。後者の場合には、出力部や受付部は、通信回線を介して入力を受け付けたり、画面を出力したりすることになる。
また、上記各実施の形態において、各構成要素は専用のハードウェアにより構成されてもよく、あるいは、ソフトウェアにより実現可能な構成要素については、プログラムを実行することによって実現されてもよい。例えば、ハードディスクや半導体メモリ等の記録媒体に記録されたソフトウェア・プログラムをCPU等のプログラム実行部が読み出して実行することによって、各構成要素が実現され得る。
なお、上記各実施の形態における情報処理装置を実現するソフトウェアは、以下のようなプログラムである。つまり、このプログラムは、平面のオブジェクトである2以上の平面オブジェクトの形状を指定する情報である形状情報が格納され得る形状情報格納部と、前記2以上の平面オブジェクトの表面に配置可能な情報である配置用情報が、各平面オブジェクトごとに出力順番と対応付けられて複数格納される配置用情報格納部とにアクセス可能なコンピュータを、2以上の平面オブジェクトのそれぞれの表面に配置される一の配置用情報を、各平面オブジェクトごとに取得する配置用情報取得部と、形状情報が示す2以上の平面オブジェクトのそれぞれの表面に、当該2以上の平面オブジェクトのそれぞれについて配置用情報取得部が取得した配置用情報を配置した画像情報を出力する出力部と、2以上の平面オブジェクトのうちの1以上について、表面に配置される配置用情報を変更する指示である出力変更指示を受け付ける出力変更指示受付部として機能させるためのプログラムであって、配置用情報取得部は、前記出力変更指示に応じて、当該出力変更指示の対象となる1以上の平面オブジェクトと、それ以外の1以上の平面オブジェクトとのそれぞれについて、現在表面に配置されている配置用情報に対して予め指定された出力順番となる配置用情報を取得し、出力部は、前記配置用情報取得部が前記出力変更指示に応じて取得した配置用情報をそれぞれ配置した平面オブジェクトの画像情報で出力を更新するプログラム、である。
なお、上記プログラムにおいて、情報を送信する送信ステップや、情報を受信する受信ステップなどでは、ハードウェアによって行われる処理、例えば、送信ステップにおけるモデムやインターフェースカードなどで行われる処理(ハードウェアでしか行われない処理)は含まれない。
なお、上記プログラムにおいて、上記プログラムが実現する機能には、ハードウェアでしか実現できない機能は含まれない。例えば、情報を取得する取得部や、情報を出力する出力部などにおけるモデムやインターフェースカードなどのハードウェアでしか実現できない機能は、上記プログラムが実現する機能には含まれない。
また、このプログラムを実行するコンピュータは、単数であってもよく、複数であってもよい。すなわち、集中処理を行ってもよく、あるいは分散処理を行ってもよい。
図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がどのように動作するのかについては周知であり、詳細な説明は省略する。
本発明は、以上の実施の形態に限定されることなく、種々の変更が可能であり、それらも本発明の範囲内に包含されるものであることは言うまでもない。