(57)【特許請求の範囲】
【請求項１】
画面上に複数のオブジェクトを表示させると共に前記オブジェクトに対する操作に応じた処理を実行するオブジェクト表示処理装置であって、
前記複数のオブジェクトの前記画面上における位置に基づいて該画面上で空間的にまとめられているオブジェクトを１つのグループとしてグループ化するグループ化手段と、
前記オブジェクトの前記グループへの帰属を示すグループ識別表示と共に前記オブジェクトを前記画面上に表示させる表示手段と、
前記画面上で前記グループに対する所定の操作がなされたときに、該操作に応じた前記グループに対する処理であるグループ処理を実行するグループ処理手段と、
を備え、
前記グループ化手段は、前記複数のオブジェクトの前記画面上における位置と前記オブジェクトの各々に付与された仮想的なポテンシャル場とに基づくポテンシャルを前記複数のオブジェクトに対応した領域について算出するポテンシャル算出手段と、前記算出されたポテンシャルが所定の閾値以上となる領域を囲む境界を設定する境界設定手段とを含み、前記境界内に位置するオブジェクトを１つのグループとしてグループ化し、
前記ポテンシャル場は、前記オブジェクトの所定の基準位置におけるポテンシャルを最大とし、該基準位置から径方向に離れるほどポテンシャルを小さく規定する濃度関数として定められており、
前記表示手段は、前記設定された境界を前記グループ識別表示として前記オブジェクトと共に前記画面上に表示させるオブジェクト表示処理装置。
【請求項２】
前記グループ化手段は、前記画面上における前記オブジェクトの位置関係が変更されたときに前記オブジェクトのグループ化を実行する請求項１に記載のオブジェクト表示処理装置。
【請求項３】
前記グループ化手段によるグループ化と前記表示手段による表示処理と前記グループ処理手段によるグループ処理とが有効とされるグループモードの選択および該選択の解除を可能とするグループモード設定手段を更に備える請求項１または２に記載のオブジェクト表示処理装置。
【請求項４】
請求項１から３の何れかに記載のオブジェクト表示処理装置において、
前記複数のオブジェクトの前記画面上における位置を取得するオブジェクト位置取得手段を更に備え、
前記グループ化手段は、前記取得された前記オブジェクトの各々の位置と所定の制約とに基づいて１つのグループとしてグループ化されるべきオブジェクトの前記画面上における範囲であるグループ範囲を設定すると共に、前記オブジェクトごとに該オブジェクトが前記グループ範囲内に位置するか否かを判定し、該判定の結果に基づいて前記オブジェクトのグループ化を実行するオブジェクト表示処理装置。
【請求項５】
前記ポテンシャル算出手段は、前記画面に対して設定された複数のグリッドの少なくとも前記オブジェクトの各々に対応したグリッドごとに前記ポテンシャルを算出する請求項１から４の何れかに記載のオブジェクト表示処理装置。
【請求項６】
前記グループ処理手段は、前記画面上に前記グループに帰属する複数のオブジェクトの少なくとも一部が互いに重なり合うように表示されているときに、所定の拡張要求操作に応じて前記オブジェクト同士の重なりが概ね解消されるように前記グループに帰属する前記複数のオブジェクトを再表示させる請求項１から５の何れかに記載のオブジェクト表示処理装置。
【請求項７】
請求項６に記載のオブジェクト表示処理装置において、
前記グループ処理手段は、
前記グループに帰属する複数のオブジェクトの中から一対のオブジェクトを抽出するオブジェクト対抽出手段と、
前記抽出された一対のオブジェクトにおける重なりを解消するための該一対のオブジェクト間の相対位置関係を導出する相対位置関係導出手段と、
前記導出された相対位置関係と所定の位置制約とに基づいて前記抽出された一対のオブジェクトの前記重なりの解消後における前記画面上の目標位置を設定する目標位置設定手段と、
を含むオブジェクト表示処理装置。
【請求項８】
前記目標位置設定手段は、前記目標位置を自由変数とし、該目標位置に基づく前記一対のオブジェクトの相対位置関係と、前記設定された相対位置関係との間における残差の二乗の総和を表すエネルギ関数を最小二乗法で最小化して前記目標位置を設定する請求項７に記載のオブジェクト表示処理装置。
【請求項９】
前記グループ処理手段は、前記画面上で前記グループを分断するストロークの入力操作がなされたときに、前記入力されたストロークに基づいて前記グループを新たな複数のグループに分割する請求項１から８の何れかに記載のオブジェクト表示処理装置。
【請求項１０】
前記グループ処理手段は、前記グループに帰属するオブジェクトのうち、前記ストロークよりも一側に位置するオブジェクトを新たな１つのグループとしてグループ化し、前記入力されたストロークよりも他側に位置するオブジェクトを新たな１つのグループとしてグループ化する請求項９に記載のオブジェクト表示処理装置。
【請求項１１】
前記グループに帰属する何れかのオブジェクトに対する所定の操作がなされたときに、該操作に応じた前記何れかのオブジェクトに対する処理である個別処理を実行する個別処理手段を更に備える請求項１から１０の何れかに記載のオブジェクト表示処理装置。
【請求項１２】
前記オブジェクトは、前記画面上に表示されるアイコンである請求項１から１１の何れかに記載のオブジェクト表示処理装置。
【請求項１３】
画面上に複数のオブジェクトを表示させると共に前記オブジェクトに対する操作に応じ
た処理を実行するためのオブジェクト表示処理方法であって、
（ａ）前記複数のオブジェクトの前記画面上における位置に基づいて該画面上で空間的にまとめられているオブジェクトを１つのグループとしてグループ化するステップと、
（ｂ）前記オブジェクトの前記グループへの帰属を示すグループ識別表示と共に前記オブジェクトを前記画面上に表示させるステップと、
（ｃ）前記画面上で前記グループに対する所定の操作がなされたときに、該操作に応じた前記グループに対する処理であるグループ処理を実行するステップと、
を含み、
ステップ（ａ）は、前記複数のオブジェクトの前記画面上における位置と前記オブジェクトの各々に付与された仮想的なポテンシャル場とに基づくポテンシャルを前記複数のオブジェクトに対応した領域について算出し、前記算出したポテンシャルが所定の閾値以上となる領域を囲む境界を設定すると共に、前記境界内に位置するオブジェクトを１つのグループとしてグループ化し、
前記ポテンシャル場は、前記オブジェクトの所定の基準位置におけるポテンシャルを最大とし、該基準位置から径方向に離れるほどポテンシャルを小さく規定する濃度関数として定められており、
ステップ（ｂ）は、前記設定された境界を前記グループ識別表示として前記オブジェクトと共に前記画面上に表示させるオブジェクト表示処理方法。
【請求項１４】
複数のオブジェクトを画面上に表示させると共に前記オブジェクトに対する操作に応じた処理を実行するオブジェクト表示処理装置としてコンピュータを機能させるオブジェクト表示処理用プログラムであって、
前記複数のオブジェクトの前記画面上における位置に基づいて該画面上で空間的にまとめられているオブジェクトを１つのグループとしてグループ化するグループ化モジュールと、
前記オブジェクトの前記グループへの帰属を示すグループ識別表示と共に前記オブジェクトを前記画面上に表示させる表示モジュールと、
前記画面上で前記グループに対する所定の操作がなされたときに、該操作に応じた前記グループに対する処理であるグループ処理を実行するグループ処理モジュールと、
を備え、
前記グループ化モジュールは、前記複数のオブジェクトの前記画面上における位置と前記オブジェクトの各々に付与された仮想的なポテンシャル場とに基づくポテンシャルを前記複数のオブジェクトに対応した領域について算出し、前記算出したポテンシャルが所定の閾値以上となる領域を囲む境界を設定すると共に、前記境界内に位置するオブジェクトを１つのグループとしてグループ化し、
前記ポテンシャル場は、前記オブジェクトの所定の基準位置におけるポテンシャルを最大とし、該基準位置から径方向に離れるほどポテンシャルを小さく規定する濃度関数として定められており、
前記表示モジュールは、前記設定された境界を前記グループ識別表示として前記オブジェクトと共に前記画面上に表示させるオブジェクト表示処理用プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画面上に複数のオブジェクトを表示させると共に前記オブジェクトに対する操作に応じた処理を実行するオブジェクト表示処理装置、オブジェクト表示処理方法、およびオブジェクト表示処理用プログラムに関する。
【背景技術】
【０００２】
一般に、グラフィカルユーザインターフェース（ＧＵＩ）を実装したオペレーティングシステム等においては、階層的なフォルダ構造を構築すると共にフォルダ内にオブジェクトとしてのアイコンを保管することにより多数のファイルが分類・整理される。このようなフォルダ構造は、ある程度確定的かつ永続的なファイルの分類には適したものではあるが、明示的なフォルダの作成と当該フォルダへのファイル（アイコン）の格納操作とを要求するものであることから、相互の関係が比較的曖昧なファイルの分類や頻繁に再分類されるようなファイルの管理には必ずしも有用なものとはならない。このため、Manderらは、デスクトップ上でのファイル管理手法として、フォルダの代替としてファイルを積み重ねた‘Pile’（書類の山）を作成することにより多数のファイルを分類・整理する‘Pile’Metaphorを提案している（非特許文献１参照。）。
【非特許文献１】R. Mander, G. Salomon, and Y. Y. Wong. A 'Pile' Metaphor for Supporting Casual Organization of Information. In Proceedings of the SIGCHI conference on Human factors in computing systems, pp. 13-23, 1994.
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかしながら、上記‘Pile’Metaphorにおいては、画面上でファイル同士が完全に重なり合ってしまい、しかも‘Pile’の中身である個々のファイルの操作に特定の動作が要求されることから‘Pile’自体が実質的に独自のフォルダを構成することとなり、結局のところファイルの分類・整理の省力化や利便性の改善はさほど図られていない。その一方で、従来から、相互に関連性を有する複数のアイコンを画面上で互いに近接させたり重ね合わせたりすることにより空間的にまとめて配置し、それら複数のアイコンのまとまりを見た目上１つのグループとして表す手法も広く活用されている。このような手法は、単にアイコンを移動させるだけで明示的なグループ化操作なしにグループを表現し得る点で手軽かつ有用なものではある。しかしながら、これらのアイコンはシステムによってグループとして認識されているものではないから、グループを一括して操作することは不可能である。また、数多くのアイコンが重なり合っていると個々のアイコンに対するアクセスや操作が極めて面倒なものとなってしまう。
【０００４】
そこで、本発明によるオブジェクト表示処理装置、オブジェクト表示処理方法、およびオブジェクト表示処理用プログラムは、画面上の複数のオブジェクトを簡単に効率よく分類・管理可能とすることを目的の１つとする。また、本発明によるオブジェクト表示処理装置、オブジェクト表示処理方法、およびオブジェクト表示処理用プログラムは、画面上に表示されるオブジェクトを分類、管理する際の操作性を向上させることを目的の１つとする。
【課題を解決するための手段】
【０００５】
本発明による本発明のオブジェクト表示処理装置、オブジェクト表示処理方法、およびオブジェクト表示処理用プログラムは、上述の目的の少なくとも一部を達成するために以下の手段を採っている。
【０００６】
本発明によるオブジェクト表示処理装置は、
画面上に複数のオブジェクトを表示させると共に前記オブジェクトに対する操作に応じた処理を実行するオブジェクト表示処理装置であって、
前記複数のオブジェクトの前記画面上における位置に基づいて該画面上で空間的にまとめられているオブジェクトを１つのグループとしてグループ化するグループ化手段と、
前記オブジェクトの前記グループへの帰属を示すグループ識別表示と共に前記オブジェクトを前記画面上に表示させる表示手段と、
前記画面上で前記グループに対する所定の操作がなされたときに、該操作に応じた前記グループに対する処理であるグループ処理を実行するグループ処理手段と、
を備えるものである。
【０００７】
このオブジェクト表示処理装置では、複数のオブジェクトの画面上における位置に基づいて当該画面上で空間的にまとめられているオブジェクトが１つのグループとしてグループ化され、オブジェクトのグループへの帰属を示すグループ識別表示と共にオブジェクトが画面上に表示される。そして、画面上でグループに対する所定の操作がなされたときには、該操作に応じたグループに対する処理であるグループ処理が実行される。これにより、画面上でオブジェクトの空間的なまとまりを構築すれば、複数のオブジェクトをグループ化すると共にグループ化されたオブジェクトへのグループ処理を実行することが可能となる。従って、このオブジェクト表示処理装置によれば、画面上の複数のオブジェクトを簡単に効率よく分類・管理することができる。
【０００８】
また、前記グループ化手段は、前記画面上における前記オブジェクトの位置関係が変更されたときに前記オブジェクトのグループ化を実行するものであってもよい。この場合には、画面上で何れかのオブジェクトやグループが移動されたり、新たなオブジェクトが作成されたりして画面上におけるオブジェクトの位置関係が変更されると、オブジェクトのグループ化が実行されることになる。従って、あるオブジェクトあるいはグループ付近に新たなオブジェクトが追加されたり、画面上で何れかのオブジェクトあるいはグループを他のオブジェクトあるいはグループに接近させたりすれば、それらのオブジェクト等を自動的にグループ化することが可能となる。また、あるグループから何れかのオブジェクトを画面上で引き離せば、当該何れかのオブジェクトのグループ化を解除することができるので、オブジェクトの再分類も簡単に効率よく実行可能となる。
【０００９】
更に、本発明によるオブジェクト表示処理装置は、前記グループ化手段によるグループ化と前記表示手段による表示処理と前記グループ処理手段によるグループ処理とが有効とされるグループモードの選択および該選択の解除を可能とするグループモード設定手段を更に備えてもよい。これにより、グループモードの任意の選択が可能となり、複数のグループの構築あるいはグループ化の解除等をワンアクションで実行することも可能となる。
【００１０】
また、本発明によるオブジェクト表示処理装置は、前記複数のオブジェクトの前記画面上における位置を取得するオブジェクト位置取得手段を更に備えてもよく、前記グループ化手段は、前記取得された前記オブジェクトの各々の位置と所定の制約とに基づいて１つのグループとしてグループ化されるべきオブジェクトの前記画面上における範囲であるグループ範囲を設定すると共に、前記オブジェクトごとに該オブジェクトが前記グループ範囲内に位置するか否かを判定し、該判定の結果に基づいて前記オブジェクトのグループ化を実行するものであってもよい。これにより、画面上のオブジェクトを空間的なまとまり具合に応じてグループ化することが可能となる。
【００１１】
更に、前記グループ化手段は、前記複数のオブジェクトの前記画面上における位置と前記オブジェクトの各々に付与された仮想的なポテンシャル場とに基づくポテンシャルを前記複数のオブジェクトに対応した領域について算出するポテンシャル算出手段と、前記算出されたポテンシャルが所定の閾値以上となる領域を囲む境界を設定する境界設定手段とを含み、前記境界内に位置するオブジェクトを１つのグループとしてグループ化するものであってもよい。このように、各オブジェクトに仮想的なポテンシャル場を付与し、各オブジェクトの位置とポテンシャル場とに基づくポテンシャルを複数のオブジェクトに対応した領域（画面領域）について算出した場合、オブジェクトの密度が高い領域、すなわち、画面上で空間的にまとめられているオブジェクト群の周辺ほどポテンシャルの算出値が大きくなる。従って、算出したポテンシャルが所定の閾値以上となる領域に含まれるオブジェクトを１つのグループとすれば、画面上におけるオブジェクトの空間的なまとまり具合に応じてより適正なオブジェクトのグループ化を実行可能となる。
【００１２】
この場合、前記表示手段は、前記設定された境界を前記グループ識別表示として前記オブジェクトと共に前記画面上に表示させるものであってもよい。これにより、画面上にはグループ化されたオブジェクトを囲むグループ識別表示が表示されることになるので、１つのグループとそれに帰属するオブジェクトとを画面上で容易に識別させることが可能となる。そして、上述のようにして算出されるポテンシャルに基づく境界をグループ識別表示として画面上に表示させれば、画面上でオブジェクト等が移動されると、その移動に応じてグループ識別表示が伸縮するように画面上に表示されることになるので、グループ化やグループ化の解除がなされた否かを視覚的にわかりやすく提示することが可能となる。
【００１３】
また、前記ポテンシャル場は、前記オブジェクトの所定の基準位置におけるポテンシャルを最大とし、該基準位置から径方向に離れるほどポテンシャルを小さく規定する濃度関数として定められもよい。このように、各オブジェクトに付与するポテンシャル場として、いわゆるメタボールを２次元に応用した濃度関数を用いれば、いわゆるマーチングスクエア法を利用することにより、画面上におけるオブジェクトの空間的なまとまり具合に応じて、オブジェクトのグループ化やグループ識別表示としての境界の設定をより適正に実行することが可能となる。
【００１４】
更に、前記グループ化手段は、前記画面に対して設定された複数のグリッドの少なくとも前記オブジェクトの各々に対応したグリッドごとに前記ポテンシャルを算出するものであってもよい。
【００１５】
また、本発明によるオブジェクト表示処理装置において、前記グループ処理手段は、前記画面上に前記グループに帰属する複数のオブジェクトの少なくとも一部が互いに重なり合うように表示されているときに、所定の拡張要求操作に応じて前記オブジェクト同士の重なりが概ね解消されるように前記グループに帰属する前記複数のオブジェクトを再表示させるものであってもよい。これにより、１つのグループに帰属する複数のオブジェクトの少なくとも一部が互いに重なり合うように表示されていても、拡張要求操作を実行すれば、その重なりが概ね解消され、当該グループに帰属する複数のオブジェクトの各々に対するアクセスや操作を簡単に実行可能となるので、画面上に表示されるオブジェクトを分類、管理する際の操作性を向上させることができる。なお、ここでいう“重なりが「概ね解消」される”とは、オブジェクト同士の重なりが完全に解消されることに加えて、少なくとも下側のオブジェクトに対するアクセスが可能な程度に重なりが解消されることを含む。
【００１６】
この場合、前記グループ処理手段は、前記グループに帰属する複数のオブジェクトの中から一対のオブジェクトを抽出するオブジェクト対抽出手段と、前記抽出された一対のオブジェクトにおける重なりを解消するための該一対のオブジェクト間の相対位置関係を導出する相対位置関係導出手段と、前記導出された相対位置関係と所定の位置制約とに基づいて前記抽出された一対のオブジェクトの前記重なりの解消後における前記画面上の目標位置を設定する目標位置設定手段とを含むものであってもよい。これにより、重なり解消前のオブジェクトの相対的な位置関係を概ね維持すると共にグループの表示範囲を不必要に拡張することを抑制しながら、オブジェクト同士の重なりが解消されるように当該グループに帰属する複数のオブジェクトを再表示させることが可能となる。
【００１７】
また、前記目標位置設定手段は、前記目標位置を自由変数とし、該目標位置に基づく前記一対のオブジェクトの相対位置関係と、前記設定された相対位置関係との間における残差の二乗の総和を表すエネルギ関数を最小二乗法で最小化して前記目標位置を設定するものであってもよい。
【００１８】
更に、本発明によるオブジェクト表示処理装置において、前記グループ処理手段は、前記画面上で前記グループを分断するストロークの入力操作がなされたときに、前記入力されたストロークに基づいて前記グループを新たな複数のグループに分割するものであってもよい。これにより、画面上におけるオブジェクトの空間的なまとまり具合に応じて構築された１つのグループを再度複数のグループに簡単に分割することが可能となる。また、グループ化を意図されていないオブジェクトを含むグループが構築された場合には、グループ化が意図されたオブジェクトとそうではないオブジェクトとを切り分けるようにストロークを入力すれば、本来意図されたグループを簡単に構築することが可能となる。従って、このようなグループ処理手段を備えたオブジェクト表示処理装置では、画面上に表示されるオブジェクトを分類、管理する際の利便性を向上させることが可能となる。なお、ここでいう「新たな複数のグループ」は、単一のオブジェクトのみを含むものであってもよい。
【００１９】
この場合、前記グループ処理手段は、前記グループに帰属するオブジェクトのうち、前記ストロークよりも一側に位置するオブジェクトを新たな１つのグループとしてグループ化し、前記入力されたストロークよりも他側に位置するオブジェクトを新たな１つのグループとしてグループ化するものであってもよい。また、前記グループ化手段が、前記複数のオブジェクトの前記画面上における位置と前記オブジェクトの各々に付与された仮想的なポテンシャル場とに基づくポテンシャルを前記複数のオブジェクトに対応した領域について算出するポテンシャル算出手段と、前記算出されたポテンシャルが所定の閾値以上となる領域を囲む境界を設定する境界設定手段とを含み、前記境界内に位置するオブジェクトを１つのグループとしてグループ化するものである場合、前記グループ処理手段は、前記境界と前記ストロークとに基づいて形成される２つのループごとに、該ループ内のオブジェクトを１つのグループとしてグループ化するものであってもよい。
【００２０】
更に、本発明によるオブジェクト表示処理装置は、前記グループに帰属する何れかのオブジェクトに対する所定の操作がなされたときに、該操作に応じた前記何れかのオブジェクトに対する処理である個別処理を実行する個別処理手段を更に備えてもよい。
【００２１】
そして、本発明によるオブジェクト表示処理装置におけるオブジェクトは、前記画面上に表示されるアイコンであってもよい。すなわち、本発明によるオブジェクト表示処理装置は、デスクトップ等に表示させるアイコンを分類・管理する装置として構成されると極めて有用である。
【００２２】
本発明によるオブジェクト表示処理方法は、
画面上に複数のオブジェクトを表示させると共に前記オブジェクトに対する操作に応じた処理を実行するためのオブジェクト表示処理方法であって、
（ａ）前記複数のオブジェクトの前記画面上における位置に基づいて該画面上で空間的にまとめられているオブジェクトを１つのグループとしてグループ化するステップと、
（ｂ）前記オブジェクトの前記グループへの帰属を示すグループ識別表示と共に前記オブジェクトを前記画面上に表示させるステップと、
（ｃ）前記画面上で前記グループに対する所定の操作がなされたときに、該操作に応じた前記グループに対する処理であるグループ処理を実行するステップと、
を含むものである。
【００２３】
このオブジェクト表示処理方法によれば、画面上でオブジェクトの空間的なまとまりを構築すれば、複数のオブジェクトをグループ化すると共にグループ化されたオブジェクトへのグループ処理を実行することが可能となるので、画面上の複数のオブジェクトを簡単に効率よく分類・管理することができる。
【００２４】
本発明によるオブジェクト表示処理用プログラムは、
複数のオブジェクトを画面上に表示させると共に前記オブジェクトに対する操作に応じた処理を実行するオブジェクト表示処理装置としてコンピュータを機能させるオブジェクト表示処理用プログラムであって、
前記複数のオブジェクトの前記画面上における位置に基づいて該画面上で空間的にまとめられているオブジェクトを１つのグループとしてグループ化するグループ化モジュールと、
前記オブジェクトの前記グループへの帰属を示すグループ識別表示と共に前記オブジェクトを前記画面上に表示させる表示モジュールと、
前記画面上で前記グループに対する所定の操作がなされたときに、該操作に応じた前記グループに対する処理であるグループ処理を実行するグループ処理モジュールと、
を備えるものである。
【００２５】
このオブジェクト表示処理用プログラムがインストールされたコンピュータは、上述の本発明によるオブジェクト表示処理装置として機能することから、このオブジェクト表示処理用プログラムを用いれば、画面上の複数のオブジェクトを簡単に効率よく分類・管理することが可能となる。このオブジェクト表示処理プログラムは、例えばコンピュータにインストールされる既存のオペレーティングシステムにプラグインを追加することにより実現されるものであってもよい。
【発明を実施するための最良の形態】
【００２６】
次に、実施例を参照しながら本発明を実施するための最良の形態について説明する。
【実施例】
【００２７】
図１は、本発明の一実施例に係るオブジェクト表示処理装置としてのコンピュータ２０の概略構成図である。同図に示すように、実施例のコンピュータ２０は、図示しないＣＰＵ，ＲＯＭ，ＲＡＭ、グラフィックプロセッサ（ＧＰＵ）、システムバス、各種インターフェース、記憶装置（ハードディスクドライブ）、外部記憶装置等を含む汎用のコンピュータであり、液晶ディスプレイ等の表示装置３０や、入力装置としてのキーボード４０やマウス５０等と接続されて使用される。また、コンピュータ２０には、グラフィカルユーザインターフェース（ＧＵＩ）を実装すると共に装置全体を統括的に制御するオペレーティングシステムがインストールされており、当該オペレーティングシステムには、本発明によるオブジェクト表示処理用プログラムが予めまたはプラグインの追加により組み込まれている。オブジェクト表示処理用プログラムは、デスクトップやデスクトップ上のウィンドウに表示されるオブジェクトとしてのアイコンの自動グループ化やグループ化されたアイコンに対する一括的な処理であるグループ処理等を実現することにより、アイコンの分類・管理を簡単に効率よく実行可能とするものである。
【００２８】
そして、コンピュータ２０には、ＣＰＵやＲＯＭ，ＲＡＭ，ＧＰＵ、各種インターフェース、記憶装置といったハードウエアと、インストールされたオペレーティングシステムを始めとするアプリケーションプログラムとの一方または双方の協働により、画像処理部２１と、画像データ記憶部２２と、ポテンシャル算出部２４およびバブル境界設定部２５を含むグループ化演算部２３と、個別処理部２６と、グループ処理部２７とが機能ブロックとして構築されている。画像処理部２１は、様々なタスクに関連した画像処理を実行し、画像データ記憶部２２は、生成された各種画像データ等を記憶する。また、グループ化演算部２３は、アイコンの自動グループ化のための演算処理を実行して表示画面３１上で空間的にまとめられているアイコンをグループ化するものであり、ポテンシャル算出部２４は、アイコンの自動グループ化に際して、アイコンの表示画面３１上における位置（座標）と各アイコンに付与された仮想的なポテンシャル場とに基づくポテンシャルを算出し、バブル境界設定部２５は、ポテンシャル算出部２４により算出されたポテンシャルに基づいて１つのグループとしてグループ化されるべきアイコンの表示画面３１上における範囲であるグループ範囲を示すバブル境界を設定する。そして、個別処理部２６は、グループ化されているか否かに拘わらず、マウス５０を介して何れか１つのアイコンに対して何らかの操作が実行された際に、当該操作に応じた処理である個別処理を実行し、グループ処理部２７は、グループ化されたアイコンに対するグループ処理を実行するものである。グループ処理部２７により実行されるグループ処理には、グループ化されたアイコンをアイコン同士の重なりが解消されるように拡張して再表示させる拡張表示処理や、グループ化されたアイコンを更に複数のグループに分割するグループ分割処理等が含まれる。このため、グループ処理部２７は、拡張表示処理を実行する拡張表示処理部２８やグループ分割処理を実行するグループ分割処理部２９等を含む。
【００２９】
図２は、上述のコンピュータ２０に接続された表示装置３０の表示画面３１上に表示されるデスクトップの一例を示す説明図である。同図は、表示装置３０に通常表示されるデスクトップを例示するものであり、当該通常時におけるデスクトップ上には、基本的に既存のコンピュータに接続された表示装置の表示画面に表示されるデスクトップと同様に、プログラムやフォルダ、各種ファイル等を示すアイコン１０がユーザの意図に従って配列される。ここで、実施例のコンピュータ２０では、このような通常時のデスクトップ上でマウス５０を右クリックすると、図２に示すように、オペレーティングシステムにより提供されるデスクトップメニューＤＭが表示される。デスクトップメニューＤＭは、基本的には、既存のものと同様のメニュー項目を含むものであるが、実施例のデスクトップメニューＤＭには、一般的なメニュー項目に加えて、上述のグループ化演算部２３やグループ処理部２７の機能を有効にするための“グループモード”なるメニュー項目が用意されている。そして、ユーザが図２に示すように“グループモード”を選択（チェック）すると、デスクトップ上で互いに近接されたり、重ね合わされたりして空間的にまとめられているアイコン１０同士が所定のグループ化条件の成立に伴ってグループ化され、図３に示すようなグループモード選択時のデスクトップが瞬時に表示される。
【００３０】
グループモード選択時のデスクトップには、通常時と同一の配列（位置関係）を保ったままで通常時に表示されていたアイコン１０がそのまま表示されるが、それに加えて、各アイコン１０の周囲に薄色のバブル１１が表示される。図３からわかるように、他のアイコン１０からある程度距離を隔てて配置されているアイコン１０（例えば、図３における「DATA」、「memo」といったファイル）の周囲には、アイコン１０の基準位置（実施例ではアイコン１０の画像中心）を中心とする概ね円形のバルブ１１が表示される。一方、互いに近接したり、重なり合ったりしてグループ化されたアイコン１０（例えば、ファイル「abstract」と「figure」、あるいはフォルダ「0825」とファイル「bubble」、「004」、「007」等）の周囲には、グループに帰属する全アイコン１０を取り囲むようにバブル１１が表示される。すなわち、バブル１１は、アイコン１０のグループへの帰属やグループの範囲を示すグループ識別表示として機能する。
【００３１】
また、グループモードのもとでは、グループ化されているアイコン１０の周囲のバブル１１を左クリックによりドラッグすれば、グループ化されたアイコン１０を一体的に移動させることができる。更に、グループ化されているアイコン１０の周囲のバブル１１を右クリックすれば、図３に示すように、オペレーティングシステムにより提供されるグループメニューＧＭが表示される。グループメニューＧＭは、グループ化されているアイコン１０に対する一括的な処理であるグループ処理の選択を可能とするものであり、グループ全体の“切り取り”、グループ全体の“コピー”、グループ全体の“貼り付け”、…、“グループ化解除”、グループをフォルダ化するための“フォルダの作成”、
グループに帰属するアイコン１０の少なくとも一部が重なり合っている場合にアイコン１０同士の重なりが解消されるようにアイコン１０を再表示させるための“拡張表示”といったグループ処理に対応した複数のメニュー項目を含む。このようなグループメニューＧＭの中から所望のグループ処理を選択すれば、上述のグループ処理部２７等によりグループ化されたアイコン１０が一括して処理されることになる。
【００３２】
もちろん、グループモードのもとでも、グループ化されているか否かに拘わらず、マウス５０を介して何れか１つのアイコン１０に対して何らかの操作が実行された際に、当該操作に応じた処理が上述の個別処理部２６により実行される。例えば「０８２５」なるフォルダをダブルクリックすれば、表示画面３１上には図３に示すようにフォルダの中身を示す新たなウィンドウが表示される。この際、グループモードのもとでは、新たに表示されたウィンドウにおいても、図３に示すように、アイコン１０の周囲にはバブル１１が表示され、当該ウィンドウ内にグループ化されたアイコン１０（グループ）が存在すれば、グループに帰属するすべてのアイコン１０を取り囲むバブル１１が表示される。また、何れか１つのアイコン１０上で右クリックすれば、当該アイコン１０に対する個別処理の選択を可能とする図示しない個別メニューが表示される。
【００３３】
更に、グループモードのもとでは、表示画面３１上で何れかのアイコン１０または何れかのグループの位置が変更されたときにもアイコン１０のグループ化が実行される。すなわち、グループモードのもとでは、表示画面３１上で何れか１つのアイコン１０または何れかのグループを他の何れかのアイコン１０またはグループに近接させれば、それらのアイコン１０をグループ化することができる。また、表示画面３１上で、あるグループから何れかのアイコン１０を引き離せば、当該何れかのアイコン１０のグループ化を解除することもできる。この際、バブル１１は、移動されるアイコン１０等の位置に応じて変形し、バブル１１の境界は、グループ化やその解除に応じて変化する。従って、バブル１１は、グループ化の可否を視覚的に認識するための手がかりとなる連結領域としての役割をも果たすことになる。
【００３４】
次に、実施例のコンピュータ２０における上述のようなアイコン１０のグループ化を実現するための処理であるグループ化表示処理について説明する。また、グループ化表示処理の説明に引き続いて、グループ処理部２７により実行されるグループ処理の代表例として拡張表示処理およびグループ分割処理について説明する。
【００３５】
〔グループ化表示処理〕
図４は、実施例のコンピュータ２０において実行されるグループ化表示処理の一例を示すフローチャートである。このグループ化表示処理は、通常時のデスクトップ上でデスクトップメニューＤＭから“グループモード”が選択されたときや、グループモードのもとで新たなアイコン１０が作成されたときに１サイクル実行され、グループモードのもとで何れかのアイコン１０またはグループを表示画面３１上で移動させる移動操作がなされたときに当該移動操作の開始から完了までの間に繰り返し実行されるものである。
【００３６】
図４のグループ化表示処理の開始に際して、コンピュータ２０のグループ化演算部２３は、表示画面３１上に表示されている全アイコン１０の画像中心の表示画面３１における位置、すなわち表示画面３１の座標系（例えばピクセル単位の座標系）に基づく全アイコン１０の画像中心の座標を取得する（ステップＳ１００）。グループ化演算部２３に取り込まれた全アイコン１０の座標は、ポテンシャル算出部２４に与えられ、ポテンシャル算出部２４は、各アイコン１０の座標と各アイコン１０に対して付与されている仮想的なポテンシャル場とを用いて、表示画面３１に対して設定された複数のポテンシャルグリッドの各々における各アイコン１０の座標と各アイコン１０のポテンシャル場とに基づくポテンシャルを算出する（ステップＳ１１０）。ここで、実施例では、各アイコン１０に付与される仮想的なポテンシャル場として、図５に示すような、いわゆるメタボールを２次元に応用した濃度関数が用いられている。すなわち、各ポテンシャル場は、アイコン１０の基準位置である画像中心（あるいは画像重心）におけるポテンシャルを最大値Ｐｍａｘ（＞１）とし、画像中心から径方向に離れるにつれて所定の法則に従ってポテンシャルを小さく規定するものである。そして、実施例では、アイコン１０の画像中心からの距離が各アイコン１０の画像に概ね外接する円よりも多少大きい円の半径ｒ０となる箇所のポテンシャルを値１とし、画像中心からの距離が値ｒ１となる箇所のポテンシャルを値０としている。また、複数のポテンシャルグリッドは、例えば所定数のピクセル間隔で等間隔に並設されたものであり、表示画面３１の座標系と対応関係を有している。そして、１つのポテンシャルグリッドにおけるポテンシャルは、当該１つのポテンシャルグリッドと全アイコン１０の画像中心との距離に基づいて濃度関数としてのポテンシャル場から得られる値を加算することにより求められる。
【００３７】
このように各アイコン１０に仮想的なポテンシャル場を付与し、各アイコン１０の画像中心の座標（位置）とポテンシャル場とに基づくポテンシャルをすべてのポテンシャルグリッドについて算出した場合、ポテンシャル場の重なりにより、アイコン１０の密度が高い領域、すなわち、画面上で空間的にまとめられているアイコン１０の周辺に対応したポテンシャルグリッドほどポテンシャルが大きくなる。従って、表示画面３１上でまとめられているアイコン１０は、算出したポテンシャルがある閾値Ｐｒｅｆ以上となるポテンシャルグリッドに基づく領域に含まれることになり、図６に示すように、この領域に対しては、それを囲む閉じた境界であるバブル境界ｂｂを設定することができる。そして、このようなバブル境界ｂｂが設定されれば、バブル境界ｂｂ内に含まれるアイコン１０を１つのグループとしてグループ化することができる。このため、ポテンシャル算出部２４により算出された各ポテンシャルグリッドのポテンシャルは、バブル境界ｂｂの設定に供されるべく、バブル境界設定部２５に与えられる。
【００３８】
バブル境界設定部２５は、算出された各ポテンシャルグリッドのポテンシャルをポテンシャル算出部２４から受け取り、いわゆるマーチングキューブ法を２次元に応用したマーチングスクエア法を用いて、算出された各ポテンシャルグリッドのポテンシャルと所定の閾値Ｐｒｅｆとの比較を行うことにより、上述のバブル１１の境界たるバブル境界ｂｂ（図６参照。）を設定する（ステップＳ１２０）。このように各ポテンシャルグリッドのポテンシャルと閾値Ｐｒｅｆとを比較した場合、何れか１つのポテンシャルグリッドのポテンシャルが閾値Ｐｒｅｆ以上となったのに対して、当該何れか１つのポテンシャルグリッドに隣接するポテンシャルグリッドのポテンシャルが閾値Ｐｒｅｆ未満となった場合には、これら２つのポテンシャルグリッド間には、マーチングキューブ法における等値面に相当する境界が存在していることになる。これを踏まえて、実施例では、４つのポテンシャルグリッド間におけるポテンシャルの算出値と閾値Ｐｒｅｆとの比較結果に対応した境界を図７（ａ）〜図７（ｇ）に例示するようにパターン化したルックアップテーブルが画像データ記憶部２２に記憶されており（ただし、図７において黒い丸印はポテンシャルが閾値Ｐｒｅｆ以上となるポテンシャルグリッドを示し、白い丸印はポテンシャルが閾値Ｐｒｅｆ未満となるポテンシャルグリッドを示す。）、ステップＳ１２０において、バブル境界設定部２５は、当該ルックアップテーブルを参照しながら各ポテンシャルグリッドのポテンシャル値と所定の閾値Ｐｒｅｆとの比較結果に基づいて表示画面３１に表示させるバブル１１のバブル境界ｂｂの座標を設定する。これにより、表示画面３１上の全アイコン１０に関して、グループ化されるべきアイコン１０の表示画面３１上における範囲であるバブル境界ｂｂをより高速に設定することが可能となる。なお、図３等に示すように、他のアイコン１０からある程度距離を隔てて配置されているアイコン１０に関しては、閾値Ｐｒｅｆが値１であれば、バブル境界ｂｂは、画像中心を中心とした半径ｒ０の円として設定される。
【００３９】
こうして表示画面３１上のすべてのアイコン１０に関するバブル境界ｂｂが設定されると、グループ化演算部２３は、ステップＳ１００にて取得した各アイコン１０の座標とステップＳ１２０にて設定されたすべてのバブル境界ｂｂの座標とに基づいて、アイコン１０ごとに何れかのグループ範囲としてのバブル境界ｂｂ内に位置するか否かを判定し、判定結果に基づいてアイコン１０のグループ化を実行する（ステップＳ１３０）。ここでいうグループ化とは、１つのバブル境界ｂｂ内に位置するすべてのアイコン１０を上述のグループメニューＧＭに含まれる“切り取り”、“コピー”、“貼り付け”といったグループ処理に関して１つのアイコンと見なされるように互いに関連付けすることを意味する。そして、アイコン１０のグループ化が完了すると、画像処理部２１は、必要なデータを画像データ記憶部２２から読み出し、ステップＳ１００にて入力された座標に基づいて各アイコン１０を表示させると共に、ステップＳ１２０にて設定されたバブル境界ｂｂの座標に基づいて各アイコン１０に対応したバブル１１を表示させ（ステップＳ１４０）、本処理を一旦終了させる。このように、実施例のコンピュータ２０では、通常時のデスクトップ上でデスクトップメニューＤＭから“グループモード”が選択されると、上述のグループ化表示処理が実行されるので、複数のグループの構築あるいはグループ化の解除をワンアクションで実行することが可能となる。また、“グループモード”が選択されている状態で、何れかのアイコン１０やグループが表示画面３１上で移動されたり、表示画面３１上で新たなアイコン１０が作成されたりして表示画面３１上におけるアイコン１０の位置関係が変更されると、アイコン１０の作成直後あるいは移動操作の開始から完了まで上述のグループ化表示処理が実行されるので、それにより、変更されたアイコン１０の位置関係に応じたグループを構築することが可能となる。
【００４０】
ここで、図８を参照しながら、何れか１つのアイコン１０をドラッグして表示画面３１上で移動させたときの表示画面３１の表示状態を例にとって、上述のグループ化表示処理を具体的に説明する。なお、以後、各図面において、説明をわかりやすくするためにバブル境界ｂｂを実線で明瞭に示すこととする。図８（ａ）に示すように何れかのアイコン１０（あるいはその周囲のバブル１１）をドラッグして他の何れかのグループに接近させていくと、両者が表示画面３１上で十分に近づいたときには、ポテンシャル場同士の接合（重なり合い）に起因して、これらのアイコン１０はポテンシャルが閾値Ｐｒｅｆ以上となる領域に含まれるようになる。これに伴い、ステップＳ１１０にて算出されたポテンシャルに基づいてドラッグされたアイコン１０と当該何れかのグループに帰属するアイコン１０とを取り囲むバブル境界ｂｂが設定され（ステップＳ１２０）、それまで図８（ｂ）に示すように別々に表示されていた単一のアイコン１０のバブル１１とグループ化されているアイコン１０を取り囲むバブル１１とが、ステップＳ１４０にてあたかも互いに結合されたかのように一体に表示される（図８（ｃ）参照。）。また、このように２つのバブル１１が結合されて新たなバブル１１が表示された段階では、当該新たなバブル１１のバブル境界ｂｂ内に位置するすべてのアイコン１０が既にグループ化されていることになる（ステップＳ１３０）。そして、ドラッグされたアイコン１０が表示画面３１上で停止すると、図８（ｄ）に示すように、グループ化されたすべてのアイコン１０の位置（座標）に基づくバブル１１が表示される。このように、実施例のコンピュータ２０では、表示画面３１上で何れかのアイコン１０あるいはグループを他のアイコン１０あるいはグループに接近させれば、それらのアイコン１０（グループ）を自動的にグループ化すると共にグループ範囲を示すバブル１１を表示画面３１上に表示させることが可能となる。
【００４１】
一方、実施例のコンピュータ２０では、グループ化されている複数のアイコン１０のうち、所望のアイコン１０を例えばキーボード４０のシフトキーを押しながらドラッグすると、図８（ｅ）のように、当該所望のアイコン１０をグループ化されている他のアイコン１０から引き離すように移動させることができる。そして、そのアイコン１０を移動させていくと、グループ化されているアイコン１０を取り囲むバルブ１１は、ポテンシャル場同士の重なり合いが減少することに起因して徐々に引き延ばされるように変形していく（図８（ｆ）参照。）。その後、両者が表示画面３１上で十分に離間し合ったときには、ポテンシャル場同士の分離（重なり合いの解消）に起因して、ステップＳ１１０にて算出されたポテンシャルに基づいてドラッグされたアイコン１０を取り囲むバブル境界ｂｂと当該グループに帰属する他のアイコン１０を取り囲むバブル境界ｂｂとが設定されるので（ステップＳ１２０）、図８（ｇ）に示すように、ドラッグされたアイコン１０を取り囲むバブル１１と残された他のアイコン１０を取り囲むバブル１１とが分離して表示される（ステップＳ１４０）。また、このように２つの新たなバブル１１が表示された段階では、ドラッグされたアイコン１０のグループ化が既に解除されていることになる（ステップＳ１３０）。そして、ドラッグされたアイコン１０が表示画面３１上で停止すると、図８（ｈ）に示すように、グループから引き離されたアイコン１０の周囲にそれを取り囲む概ね円形のバブル１１が表示されると共に、グループ化されたままのアイコン１０の周囲には、それらを取り囲むバブル１１が表示される。このように、実施例のコンピュータ２０では、あるグループから何れかのアイコン１０を表示画面３１上で引き離せば、当該何れかのアイコン１０のグループ化を解除することができるので、アイコン１０の再分類も簡単に効率よく実行可能となる。
【００４２】
更に、実施例のコンピュータ２０では、グループモードのもとで表示画面３１上においてアイコン１０（グループ）を移動させれば、上述のグループ化表示処理が実行されるので、図９（ａ）〜図９（ｄ）に示すように、何れかのアイコン１０あるいはグループをドラッグし、順次他のアイコン１０またはグループ上でリリースすることを繰り返していけば、リリースがなされるたびに新たなグループが構築されていることになるので、いわゆるベリーピッキングを簡単に効率よく実行することもできる。これにより、表示画面３１上に分散して配置されている多数のアイコン１０を極めて効率よく分類・管理することが可能となる。なお、図９において、ハッチングが施されているアイコン１０は、他のグループ上でリリースされたアイコン１０を示す。また、ユーザが表示画面３１においてドラッグした何れかのアイコン１０またはグループを他のアイコン１０またはグループ上でリリースするケースとしては、ドラッグしたアイコン１０等と他のアイコン１０等とのグループ化を望むケース（グループ化）と、ドラッグしたアイコン１０等をフォルダである他のアイコン１０または他のグループのフォルダにドロップするケース（ドラッグアンドドロップ）とが含まれる。このため、実施例のコンピュータ２０では、これらのグループ化とドラッグアンドドロップとの何れか実行されたかを識別できるように、ドラッグアンドドロップが実行された際には、ドロップ先のフォルダあるいは当該フォルダを含むグループのバブル１１のバブル境界ｂｂを一時的に濃色で表示するようにしている。
【００４３】
以上説明したように、実施例のコンピュータ２０では、複数のアイコン１０の表示画面３１上における位置（座標）に基づいて当該表示画面３１上で空間的にまとめられているアイコン１０が１つのグループとしてグループ化され（ステップＳ１３０）、アイコン１０のグループへの帰属を示すグループ識別表示たるバブル１１と共にアイコン１０が表示画面３１上に表示される（ステップＳ１４０）。これにより、コンピュータ２０では、表示画面３１上でアイコン１０の空間的なまとまりを構築すれば、複数のアイコン１０をグループ化することができる。そして、実施例のコンピュータ２０では、表示画面３１上でマウス５０を介した移動操作やグループメニューＧＭを介したメニュー選択といったグループに対する操作がなされたときには、当該操作に応じたグループに対する処理であるグループ処理が実行される。また、グループに帰属する何れかのアイコン１０に対して何らかの操作が実行された際に、当該操作に応じた処理が実行される。従って、実施例のコンピュータ２０によれば、表示画面３１上の複数のアイコン１０を簡単に効率よく分類・管理すると共に、分類されたアイコン１０を簡単かつ効率よく再分類したり、管理したりすることが可能となる。
【００４４】
すなわち、コンピュータ２０では、ステップＳ１００にて取得された表示画面３１上におけるアイコン１０の各々の座標と所定の制約としての上述のポテンシャル演算（ステップＳ１１０）の結果とに基づいて１つのグループとしてグループ化されるべきアイコン１０の表示画面３１上における範囲（グループ範囲）であるバブル境界ｂｂが設定されると共に（ステップＳ１２０）、アイコン１０ごとに該アイコン１０がバブル境界ｂｂ内に位置するか否かが判定され、判定結果に基づいてアイコン１０のグループ化が実行される（ステップＳ１３０）。このように、各アイコン１０に仮想的なポテンシャル場を付与し、各アイコン１０の座標（位置）とポテンシャル場とに基づくポテンシャルを表示画面３１に対して設定された複数のポテンシャルグリッドごとに算出し、算出したポテンシャルが所定の閾値Ｐｒｅｆ以上となる領域を囲むバブル境界ｂｂ内のオブジェクトを１つのグループとすれば、表示画面３１上におけるアイコン１０の空間的なまとまり具合に応じてより適正にアイコン１０のグループ化を実行することができる。また、各アイコン１０に付与するポテンシャル場として、いわゆるメタボールを２次元に応用した濃度関数を用いれば、いわゆるマーチングスクエア法を利用することにより、表示画面３１上におけるアイコン１０の空間的なまとまり具合に応じて、アイコン１０のグループ化やグループ識別表示としてのバブル境界ｂｂをより適正に設定することが可能となる。なお、実施例では、表示画面３１に対して設定された複数のポテンシャルグリッドのすべてについてポテンシャルを算出しているが、これに限られるものではない。すなわち、演算負荷等を考慮して、アイコン１０の画像中心の座標と、当該アイコン１０のポテンシャル場の外延となる画像中心を中心とした半径ｒ１の円の外接四角形とに基づいてポテンシャルを算出するポテンシャルグリッドを選択した上で、選択されたポテンシャルグリッドについてポテンシャルを算出してもよい。
【００４５】
更に、実施例のコンピュータ２０では、ステップＳ１２０にて設定されるバブル境界ｂｂがグループ識別表示としてアイコン１０の周囲に表示されるので、１つのグループとそれに帰属するアイコン１０とを表示画面３１上で容易に識別させることが可能となる。そして、ステップＳ１２０にて設定されるバブル境界ｂｂは、上述のようにして算出されるポテンシャルに基づくものであるので、表示画面３１上でアイコン１０やグループが移動されると、その移動に応じてバブル１１が伸縮するように表示されることになり、グループ化やグループ化の解除がなされた否かを視覚的にわかりやすく提示することが可能となる。ただし、グループ識別表示は、必ずしもバブル境界ｂｂに基づくものである必要はなく、バブル１１の代わりに、アイコン１０のグループへの帰属を示すグループ識別表示としてグループ化されたアイコン１０に何らかのマークを表示させてもよく、グループ化されたアイコン１０の色を変化させてグループ識別表示としてもよい。また、通常時には、グループ識別表示としてのバブル１１を表示画面３１上に表示させず、表示画面３１上でマウスカーソルが空間的にまとめられているアイコン１０のバブル境界ｂｂの内側に置かれたときに、バブル１１あるいはバブル境界ｂｂを表示させるようにしてもよい。
【００４６】
〔拡張表示処理〕
続いて、実施例のコンピュータ２０のグループ処理部２７によるグループ処理の一つである拡張表示処理について説明する。拡張表示処理は、図１０（ａ）に示すように、表示画面３１上に同一のグループに帰属する複数のアイコン１０の少なくとも一部が互いに重なり合うように表示されているときに、ユーザによる拡張要求操作に応じてアイコン１０同士の重なりが解消されるように当該グループに帰属する複数のアイコン１０を再表示させる処理である（図１０（ｂ）参照。）。実施例では、上述のグループメニューＧＭから“拡張表示”を選択すること、図１０（ａ）に示すようにグループ化されたアイコン１０の周囲のバブル１１上に所定時間だけマウスカーソルを置くこと、グループ化されたアイコン１０の周囲のバブル１１をダブルクリックすること等がユーザにより実行可能な拡張要求操作として規定されている。そして、このような拡張要求操作が実行されると、主としてグループ処理部２７の拡張表示処理部２８により図１１に示す拡張表示処理が実行される。
【００４７】
図１１の拡張表示処理の開始に際して、拡張表示処理部２８は、まず拡張要求操作を受けたグループ（以下、適宜「対象グループ」という）に帰属する全アイコン１０の画像中心の表示画面３１における座標を取得した上で（ステップＳ４００）、取得した各アイコン１０の座標を入力点群とした周知のドロネー三角形分割処理を実行する（ステップＳ４１０）。このようなドロネー三角形分割処理を実行することにより、図１２に示すように、画像中心同士がドロネー辺で結ばれた一対のアイコン１０を対象グループに帰属する全アイコン１０における２個のアイコン１０の組み合わせとして抽出することができる。続いて、抽出した一対のアイコン１０のすべてに関し、ステップＳ４００にて取得した各アイコン１０の画像中心の座標や予め記憶されている各アイコン１０の画像外周の画像中心からの距離等に基づいてアイコン１０同士が重ならないようにする理想相対位置関係を導出する（ステップＳ４２０）。実施例において、ステップＳ４２０では、図１３（ａ）や図１３（ｂ）に例示するように一対のアイコン１０同士が重なり合っている場合、当該一対のアイコン１０を両者に対応したドロネー辺（図１３における破線参照。）と平行に離間させて両者の画像外周間の最短距離が所定値Ｇｍｉｎとなるときの両者間における相対位置ベクトルを理想相対位置関係として導出する。また、一対のアイコン１０同士が重なり合っていない場合には、理想相対位置関係としての相対位置ベクトルをゼロベクトルとして設定する。図１４に、このような理想相対位置関係を求めるためのプログラムのソースコードの一例を示す。
【００４８】
こうして抽出した一対のアイコン１０のすべてについて理想相対位置関係としての相対位置ベクトルを導出したならば、対象グループに帰属する全アイコン１０の新たな目標座標すなわち拡張表示時における画像中心の座標を自由変数とし、かかる目標座標に基づく一対のアイコン１０の相対位置関係とステップＳ４２０にて設定された理想相対位置関係との間における残差の二乗の総和を表す次式（１）のようなエネルギ関数を抽出した一対のアイコン１０のすべてについて作成する（ステップＳ４３０）。そして、これらのエネルギ関数を最小二乗法で最小化し（ステップＳ４４０）、各エネルギ関数の最小二乗解を当該エネルギ関数に対応した各アイコン１０の目標座標として設定する（ステップＳ４５０）。ここで、式（１）において、ＶiおよびＶjは、互いに対をなすアイコン１０の各々の目標座標に基づく位置ベクトルを示し、ｄＶijは、ステップＳ４２０にて設定された当該一対のアイコン１０における理想相対位置関係としての相対位置ベクトルである。また、実施例におけるステップＳ４３０の処理は、拡張要求操作直前の対象グループにおける全アイコン１０の画像中心に基づいて得られる対象グループの表示画面３１上における重心が不変（移動しない）であるものとして、上記各エネルギ関数を自由変数で偏微分して得られる連立１次方程式を解くものとされる。
【００４９】
Σi,j｛| Vi - Vj -dVij |2｝…（１）
【００５０】
次いで、ステップＳ４５０にて設定された対象グループに帰属する全アイコン１０の目標座標はポテンシャル算出部２４に与えられ、ポテンシャル算出部２４は、対象グループの各アイコン１０の目標座標と各アイコン１０に対して付与されているポテンシャル場とを用いて、表示画面３１上で対象グループを必要十分に囲む領域に対応した複数のポテンシャルグリッドの各々におけるポテンシャルを算出する（ステップＳ４６０）。ここで、対象グループを必要十分に囲む領域は、例えば、各アイコン１０に付与されているポテンシャル場の外延となる画像中心を中心とした半径ｒ１の円の外接四角形とステップＳ４５０にて設定された対象グループに帰属する全アイコン１０の目標座標とに基づいて設定され得るものである。ステップＳ４６０にて算出された各ポテンシャルグリッドのポテンシャルは、バブル境界設定部２５に与えられ、バブル境界設定部２５は、上述のマーチングスクエア法を用いて各ポテンシャルグリッドのポテンシャルと所定の閾値Ｐｒｅｆとの比較を行うことにより、対象グループに帰属する全アイコン１０のステップＳ４５０にて設定された目標座標に対応したバブル境界ｂｂの座標を設定する（ステップＳ４７０）。そして、画像処理部２１は、必要なデータを画像データ記憶部２２から読み出し、ステップＳ４５０にて設定された目標座標に基づいて対象グループの各アイコン１０を表示させると共に、ステップＳ４７０にて設定されたバブル境界ｂｂの座標に基づいて各アイコン１０に対応したバブル１１を表示させ（ステップＳ４８０）、本処理を終了させる。
【００５１】
以上説明したように、実施例のコンピュータ２０では、表示画面３１上で１つのグループに帰属する複数のアイコン１０の少なくとも一部が互いに重なり合うように表示されていても、拡張要求操作を実行すれば、当該グループに帰属する複数のアイコン１０の各々に対するアクセスや操作を簡単に実行可能となる。例えば、図１０（ａ）のアイコン１０ｘのように、同じグループに帰属する他のアイコン１０によって覆い隠されたアイコン１０が存在していても、拡張要求操作を実行することにより、図１０（ｂ）に示すようにアイコン１０同士の重なりが解消されるように当該グループに帰属する複数のアイコン１０が瞬時に拡張して再表示され（ステップＳ４８０）、それにより、それまでマウスカーソルを置き難い状態にあったアイコン１０ｘに対するアクセスや操作を極めて容易に実行可能となる。従って、実施例のコンピュータ２０では、表示画面３１上に表示されるアイコン１０を分類、管理する際の操作性を向上させることができる。
【００５２】
また、実施例のコンピュータ２０では、上述のように、対象グループに帰属する複数のアイコン１０の中から一対のアイコン１０を抽出し（ステップＳ４１０）、抽出した一対のアイコン１０のすべてについて重なりを解消するための当該一対のアイコン１０間の相対位置関係を導出する共に（ステップＳ４２０）、例えば対象グループの重心を固定するという位置制約のもとで、導出した相対位置関係と再表示（拡張表示）時における目標座標に基づく一対のアイコン１０の相対位置関係との間における残差の二乗の総和を表すエネルギ関数を最小二乗法で最小化して各アイコン１０の目標座標を設定している（ステップＳ４４０，Ｓ４５０）。これにより、重なり解消前の対象グループにおけるアイコン１０の相対的な位置関係を概ね維持すると共に対象グループの表示範囲たるバブル１１を不必要に拡張することを抑制しながら、アイコン１０同士の重なりが解消されるように対象グループに帰属する複数のアイコン１０を再表示させることが可能となる。
【００５３】
なお、ステップＳ４００〜Ｓ４４０の処理を１サイクル実行すれば、基本的に各アイコン１０へのアクセスが可能な程度に対象グループを拡張表示することができるものと考えられるが、対象グループにおけるアイコン１０の空間的なまとまり具合によっては、アイコン１０の重なりを完全に解消し得ないことも想定される。従って、ステップＳ４００〜Ｓ４４０の処理を複数サイクル（例えば１０サイクル）実行した後に、ステップＳ４５０にて対象グループの全アイコン１０の目標座標を設定してもよい。このようにステップＳ４００〜Ｓ４４０の処理を複数サイクルだけ繰り返す際には、前サイクルのステップＳ４５０にて設定された目標座標を次サイクルのステップＳ４００における各アイコンの画像中心の座標として用いればよい。更に、ステップＳ４４０の処理に際しては、対象グループの重心を固定するという位置制約の代わりに、ユーザによりクリックされたアイコン１０の画像中心あるいはクリックされた位置を固定するという位置制約を用いてもよい。
【００５４】
そして、実施例では、ステップＳ４８０の再表示後に所定の条件が成立すると、表示画面３１上には、対象グループに帰属するアイコン１０が拡張要求操作前の元の位置に表示され、対象グループのバブル１１も拡張要求操作前の元のグループ範囲を示すものとして表示される。この場合、拡張表示を元に戻すための条件としては、ステップＳ４８０における再表示後に所定時間が経過すること、ステップＳ４８０における再表示後に対象グループに帰属する何れかのアイコン１０に対して何らかの操作がなされること、対象グループのバブル１１からマウスカーソルが離れること、対象グループのバブル１１外で何らかの操作がなされること等が挙げられる。また、ステップＳ４８０の再表示後に例えばマウスカーソルが拡張表示された対象グループのアイコン１０やバブル１１上になお置かれたままである場合には、そのまま拡張表示を維持してもよい。
【００５５】
〔グループ分割処理〕
引き続き、実施例のコンピュータ２０のグループ処理部２７によるグループ処理の一つであるグループ分割処理について説明する。図１５は、主としてグループ処理部２７のグループ分割処理部２９により実行されるグループ分割処理の一例を示すフローチャートである。実施例のコンピュータ２０では、デスクトップメニューＤＭから“グループモード”が選択されている状態で、例えばマウス５０を左クリックして表示画面３１で移動させると、表示画面３１上に任意のストロークを入力することができる。そして、図１５のグループ分割処理は、図１６に示すように、ユーザにより入力されたストロークＳによって表示画面３１上の複数のアイコン１０を囲むバブル１１すなわち何れかのグループのバブル１１が分断されたときに開始される。
【００５６】
図１５のグループ分割処理の開始に際して、グループ分割処理部２９は、まず、ストロークＳにより分断されたバブル１１により囲まれている全アイコン１０の画像中心の座標と、当該バブルのバブル境界ｂｂの座標と、入力されたストロークＳの座標とを取得する（ステップＳ５００）。次いで、取得したバブル境界ｂｂの座標とストロークＳの座標とに基づいて図１６（ｂ）に示すような２つの閉じたループＬ１，Ｌ２を作成する（Ｓ５１０）。このような２つのループＬ１およびＬ２を作成したならば、ステップＳ５００にて取得した各アイコン１０の座標等を用いて、アイコン１０ごとにループＬ１，Ｌ２のうちの何れの内側に位置するか否かを判定し、判定結果に基づいてアイコン１０のグループ化を実行する（ステップＳ５２０）。ここでいうグループ化は、１つのループＬ１またはＬ２内に位置するすべてのアイコン１０を上述のグループメニューＧＭに含まれる“切り取り”、“コピー”、“貼り付け”といったグループ処理に関して１つのアイコンと見なされるように互いに関連付けすることを意味する。このようにしてストロークＳにより分断されたバブル１１により囲まれているアイコン１０の再グループ化を実行したならば、上述のポテンシャル算出部２４により、ステップＳ５１０にて設定されたループＬ１を必要十分に囲む表示画面３１上の領域に対応した複数のポテンシャルグリッドと、ステップＳ５１０にて設定されたループＬ２を必要十分に囲む表示画面３１上の領域に対応した複数のポテンシャルグリッドとのポテンシャルが算出される（ステップＳ５３０）。この場合、ループＬ１に対応した複数のポテンシャルグリッドについては、ループＬ１内に位置するアイコン１０のみのポテンシャル場によるポテンシャルが算出され、ループＬ２に対応した複数のポテンシャルグリッドについては、ループＬ２内に位置するアイコン１０のみのポテンシャル場によるポテンシャルが算出される。また、ループＬ１，Ｌ２を必要十分に囲む領域も、各アイコン１０に付与されているポテンシャル場の外延となる画像中心を中心とした半径ｒ１の円の外接四角形とループＬ１またはＬ２内に位置するアイコン１０の画像中心の座標とに基づいて設定され得るものである。こうしてステップＳ５３０にて算出された各ポテンシャルグリッドのポテンシャルは、バブル境界設定部２５に与えられ、バブル境界設定部２５は、上述のマーチングスクエア法を用いて各ポテンシャルグリッドのポテンシャルと所定の閾値Ｐｒｅｆとの比較を行うことにより、ループＬ１内に位置するアイコン１０に対応したバブル境界ｂｂと、ループＬ２内に位置するアイコン１０に対応したバブル境界ｂｂとの座標を設定する（ステップＳ５４０）。そして、画像処理部２１は、必要なデータを画像データ記憶部２２から読み出し、ステップＳ５００に取得された座標に基づいて各アイコン１０を表示させると共に、ステップＳ５４０にて設定されたバブル境界ｂｂの座標に基づいて各ループＬ１，Ｌ２に対応したバブル１１を表示させ（ステップＳ５５０）、本処理を終了させる。
【００５７】
以上説明したように、実施例のコンピュータ２０では、表示画面３１上で複数のアイコン１０を取り囲むバブル１１すなわちグループを分断するストロークＳの入力操作がなされたときに、当該バブル１１のバブル境界ｂｂとストロークＳとに基づいて形成される２つのループＬ１，Ｌ２ごとに、ループＬ１，Ｌ２内のオブジェクトが１つのグループとしてグループ化される。すなわち、コンピュータ２０では、何れかのバブル１１を分断するストロークＳが入力されると、図１６（ｂ）および（ｃ）に示すように、当該ストロークＳよりも一側（図中左側）に位置するアイコン１０が新たな１つのグループとしてグループ化され、入力されたストロークＳよりも他側に位置するアイコン１０が新たな１つのグループとしてグループ化される。これにより、表示画面３１上におけるアイコン１０の空間的なまとまり具合に応じて構築された１つのグループを再度複数のグループに簡単に分割することが可能となる。また、グループ化を意図されていないアイコン１０を含むグループが構築された場合には、グループ化が意図されたアイコン１０とそうではないアイコン１０とを切り分けるようにストロークＳを入力すれば、本来意図されたグループを簡単に構築することが可能となる。従って、このようなグループ分割処理が実行され得るコンピュータ２０では、表示画面３１上に表示されるアイコン１０を分類、管理する際の利便性を向上させることが可能となる。
【００５８】
なお、ストロークＳの入力の仕方によっては、バブル境界ｂｂとストロークＳとにより形成される２つのループＬ１，Ｌ２の何れかまたは双方にアイコン１０が１つのみ含まれることもあり得るので、ここでいう「新たな複数のグループ」は、単一のアイコン１０のみが帰属するものを含むことになる。そして、表示画面３１上におけるアイコン１０の空間的なまとまり具合によっては、図１６（ｃ）に示すように、ステップＳ５４０にて設定されるループＬ１に対応したバブル境界ｂｂとループＬ２に対応したバブル境界ｂｂとが交差し、それにより表示画面３１上でループＬ１に対応したバブル境界ｂｂとループＬ２に対応したバブル境界ｂｂとが重なり合うこともあり得る。ただし、このようにバブル境界ｂｂ同士が重なり合っても、その後、ユーザにより双方のバブル１１（グループ）は表示画面３１上で互いに離間されると想定されることから、実用上何ら不都合はないと考えられる。
【００５９】
また、このようなストロークＳに基づくグループ分割処理に関連した他のグループ処理の一例として、次のようなグループの一括削除が挙げられる。すなわち、複数のアイコン１０を取り囲むバブル１１（グループ）を完全に分断しないストローク、つまり複数のアイコン１０を取り囲むバブル１１のバブル境界ｂｂと１点（１箇所）のみで交差するストロークＳが入力された場合には、当該バブル１１に対応したグループを一括して削除するようにしてもよい。
【００６０】
以上、実施例を用いて本発明の実施の形態について説明したが、本発明は上記実施例に何ら限定されるものではなく、本発明の要旨を逸脱しない範囲内において、様々な変更をなし得ることはいうまでもない。
【００６１】
例えば、本発明は、コンピュータ２０に接続された表示装置３０の表示画面３１上におけるアイコン１０の分類・管理に適用される代わりに、チャットシステムやＢＢＳにおけるテキストボックスの管理や、ウェブページのブックマーク管理、音楽再生装置のプレイリスト管理に適用されてもよい。図１７に本発明が適用された２次元チャットシステムの表示画面を例示する。図１７の２次元チャットシステムにおいてチャットを行う際、ユーザは、既存のメッセージに対する自己のメッセージをオブジェクトとしてのテキストボックス１０Ｔに書き込んだ後、当該既存にメッセージが書き込まれたテキストボックス１０Ｔの周辺に配置する。これにより、それぞれ共通のテーマに関連した既存のテキストボックス１０Ｔと新たなテキストボックス１０Ｔとが図１７に示すようにグループ化されると共にグループ化されたテキストボックス１０Ｔの周囲にはグループ識別表示としてのバブル１１が表示されることになる。また、この２次元チャットシステムでは、テキストボックス１０Ｔ同士の重なり合いにより隠されてしまっているテキストボックス１０Ｔが存在していても、所定の拡張要求操作を実行すれば、グループ全体を拡張表示させて、それまで隠されていたテキストボックス１０Ｔに書き込まれているメッセージを読むことが可能となる。更に、この２次元チャットシステムにおいても、表示画面上で上述のストロークＳを入力することにより、テキストボックス１０Ｔの再グループ化等を実行することができる。
【産業上の利用可能性】
【００６２】
本発明は、情報処理分野において有用である。
【図面の簡単な説明】
【００６３】
【図１】本発明の一実施例に係るオブジェクト表示処理装置であるコンピュータ２０の概略構成図である。
【図２】実施例のコンピュータ２０に接続された表示装置３０の表示画面３１上に表示されるデスクトップの一例を示す説明図である。
【図３】グループモードが選択されたときに実施例のコンピュータ２０に接続された表示装置３０の表示画面３１上に表示されるデスクトップの一例を示す説明図である。
【図４】実施例のコンピュータ２０において実行されるグループ化表示処理の一例を示すフローチャートである。
【図５】実施例のコンピュータ２０において各アイコン１０に付与されるポテンシャル場を示す説明図である。
【図６】各アイコン１０の座標と各アイコン１０に付与されたポテンシャル場とに基づくポテンシャルにより規定されるバブル境界ｂｂを例示する説明図である。
【図７】（ａ），（ｂ），（ｃ），（ｄ），（ｅ），（ｆ）および（ｇ）は、バブル境界ｂｂを設定する際に用いられるルックアップテーブルを例示する説明図である。
【図８】（ａ），（ｂ），（ｃ），（ｄ），（ｅ），（ｆ），（ｇ）および（ｈ）は、表示画面３１上でアイコン１０を移動させたときの表示画面３１の表示状態を例示する説明図である。
【図９】（ａ），（ｂ），（ｃ）および（ｄ）は、表示画面３１上でいわゆるベリーピッキングを実行した場合の表示画面３１の表示状態を例示する説明図である。
【図１０】（ａ）および（ｂ）は、実施例のコンピュータ２０におけるグループ処理の一つである拡張表示処理を説明するための説明図である。
【図１１】実施例のコンピュータ２０において実行される拡張表示処理の一例を示すフローチャートである。
【図１２】ドロネー三角形分割処理を説明するための説明図である。
【図１３】（ａ）および（ｂ）は、アイコン１０同士が重ならないようにする理想相対位置関係を導出する手順を示す説明図である。
【図１４】理想相対位置関係を求めるためのプログラムのソースコードの一例を示す説明図である。
【図１５】実施例のコンピュータ２０において実行されるグループ分割処理の一例を示すフローチャートである。
【図１６】（ａ），（ｂ）および（ｃ）は、実施例のコンピュータ２０において実行されるグループ分割処理を説明するための説明図である。
【図１７】本発明の変形例としての２次元チャットシステムの表示画面を例示する説明図である。
【符号の説明】
【００６４】
１０，１０ｘ  アイコン、１０Ｔ  テキストボックス、１１  バブル、２０  コンピュータ、２１  画像処理部、２２  画像データ記憶部、２３  グループ化演算部、２４  ポテンシャル算出部、２５  バブル境界設定部、２６  個別処理部、２７  グループ処理部、２８  拡張表示処理部、２９  グループ分割処理部、３０  表示装置、３１  表示画面、４０  キーボード、５０  マウス、ｂｂ  バブル境界、Ｌ１，Ｌ２  ループ
【図１】
0004821000.tif 000002
【図２】
0004821000.tif 000003
【図４】
0004821000.tif 000004
【図７】
0004821000.tif 000005
【図８】
0004821000.tif 000006
【図９】
0004821000.tif 000007
【図１０】
0004821000.tif 000008
【図１１】
0004821000.tif 000009
【図１２】
0004821000.tif 000010
【図１３】
0004821000.tif 000011
【図１４】
0004821000.tif 000012
【図１５】
0004821000.tif 000013
【図１６】
0004821000.tif 000014
【図３】
0004821000.tif 000015
【図５】
0004821000.tif 000016
【図６】
0004821000.tif 000017
【図１７】
0004821000.tif 000018