JP3847915B2 - Information processing method and apparatus - Google Patents

Information processing method and apparatus Download PDF

Info

Publication number
JP3847915B2
JP3847915B2 JP24564697A JP24564697A JP3847915B2 JP 3847915 B2 JP3847915 B2 JP 3847915B2 JP 24564697 A JP24564697 A JP 24564697A JP 24564697 A JP24564697 A JP 24564697A JP 3847915 B2 JP3847915 B2 JP 3847915B2
Authority
JP
Japan
Prior art keywords
data
time
display
displayed
arrangement positions
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP24564697A
Other languages
Japanese (ja)
Other versions
JPH1185450A (en
Inventor
英夫 滝口
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP24564697A priority Critical patent/JP3847915B2/en
Priority to US08/929,981 priority patent/US5977974A/en
Publication of JPH1185450A publication Critical patent/JPH1185450A/en
Application granted granted Critical
Publication of JP3847915B2 publication Critical patent/JP3847915B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Description

【0001】
【発明の属する技術分野】
本発明は、情報処理装置及び方法に関する。特に、データベースやファイルシステムのように、複数のデータを各データに関連付けられたパラメータ(日時等)で管理し、表示する情報処理装置及び方法に関する。
【0002】
【従来の技術】
コンピュータのファイル管理システムや、データベースシステム等では、多数のデータを管理する際の重要なパラメータとして、日時を用いている。ファイル管理システムでは、そのファイルが作成された日時、また修正した日時等が自動的にファイルの属性として付加される。
【0003】
また、データベースシステムにおいても、データ中のフィールドに日時フィールドを設けて、ここに記入された日時によってデータを管理することができる。図21は一般的な人事管理データベースのデータ構成例を示す図である。図21に示す人事管理データベース30のようなものでは、生年月日を日時フィールド31に記入して管理を行う。また予定表アプリケーションソフトウェア(以降、スケジューラと呼ぶ)においても、予定自体が日時で管理されている。例えば、スケジュールの内容が会議で、その会議に使う予定のドキュメントファイルを登録しておけば、あとで何の資料を使って、会議に臨んだのか確認することができ便利である。
【0004】
そして、これら多数のデータから所望のデータを探し出す際に、これら日時データは重要なパラメータとなる。ファイル管理システムでは、ファイルを作成日時順や、修正日時順に並べて表示することにより、利用者のファイル作成、修正作業の記憶と合せて所望のデータを探し出すことができる。また、データベースシステムにおいても、例えば人事管理データベースでは、生年月日順に検索・表示するということは、通常よく行われていることである。また、スケジューラにおいても、日時順にスケジュールの内容を見ていって、関連した所望のデータファイルを見つけることができる。
【0005】
【発明が解決しようとする課題】
利用者にとって、記憶の最も一般的な単位は日時順である。ファイルを作成した日付、または、修正した日付というものを、通常は漠然といつ頃という感じで覚えていて、その記憶と、ファイル日付を照らし合わせれば、ファイル名を忘れた場合でも所望のファイルを探し出すことが可能である。また、スケジューラにおいても同様であり、いつ頃という記憶に従って、所望の内容を得ることができる。データベースシステムにおいても、例えば生年月日順に出すことで、データの閲覧を順番に行うことができる。
【0006】
しかし、ファイル管理システムにおいて、リスト上に上下して隣接して表示されているファイル同士が、非常に近い日時なのか、あるいは離れた時間なのかは明示的にはわからない。これに対して、利用者はそれぞれの日時の表示を見て、ファイル相互の時間間隔が近ければ近いなりに、遠ければ通りなりに、頭の中でその時間間隔を想像し、かつ自分の記憶と照らし合わせながら、所望のファイルを探し出す作業を行う。図22は一般的なファイル管理システムによるファイル表示例を示す図である。
【0007】
40は、ファイル管理システムによるファイル表示ウインドウであり、指定された41ディレクトリ内のファイルが新しい日時順に並べて表示される。しかし、どれぐらいの日時にデータが作成されたのか等の把握は、各ファイルの日時表示欄42を一個一個参照しなければならない。
【0008】
データベースシステムでの表示でも、生年月日順で表示されたある人のデータに対して、次のデータは、1歳しか違わなくても、10歳も違っても、やはり次の順番ということで表示される。これに対して利用者は、データ毎の生年月日を数字で確認し、その離れ具合を頭の中で想像する必要がある。そして、ある年代の人が多くかたまっていて、ある年代の人はあまりいないという全体の傾向を利用者が理解するための作業は、もっと大変である。生年月日順をさらに年代別に分けて表示して見たり、また、それをグラフ化してみたりする作業を通して、やっと全体の傾向をつかむことができる。
【0009】
以上のような課題に対して、もっと利用者に直感的に時間というものを感覚的に把握させながらデータを表示するシステムが望まれる。
【0010】
本発明は上記課題に鑑みてなされたものであり、データに関連付けられた時間の順序に基づいてデータアイコンを表示するに際して、良好な表示効率を維持すると共にそれらデータの時間間隔を容易に把握できるように表示することが可能な情報処理装置及び方法を提供することを目的とする。
【0011】
【課題を解決するための手段】
上記の目的を達成する本発明の情報処理装置は以下の構成を備える。すなわち、
アイコンを表示するための複数の配置位置を有する軌跡を表示する第1表示手段と、
格納されている複数のデータアイテムについて時間情報を獲得する獲得手段と、
前記獲得手段で獲得された時間情報に基づいて、前記複数のデータアイテムを前記複数の配置位置のそれぞれに時間順で割り当て、対応するアイコンを各配置位置に表示する第2表示手段と、
前記軌跡上の隣接する配置位置に割り当てられた2つのデータアイテムの時間情報によって得られる時間差が所定時間を越える場合、当該配置位置間にマークの表示を行う第3表示手段とを備え
前記第3表示手段は、前記時間差の量に基づいて、当該配置位置間に表示するマークの個数を変更する
【0012】
また、上記の目的を達成するための本発明による情報処理方法は、
アイコンを表示するための複数の配置位置を有する軌跡を表示する第1表示工程と、
格納されている複数のデータアイテムについて時間情報を獲得する獲得工程と、
前記獲得工程で獲得された時間情報に基づいて、前記複数のデータアイテムを前記複数の配置位置のそれぞれに時間順で割り当て、対応するアイコンを各配置位置に表示する第2表示工程と、
前記軌跡上の隣接する配置位置に割り当てられた2つのデータアイテムの時間情報によって得られる時間差が所定時間を越える場合、当該配置位置間にマークの表示を行う第 3 表示工程とを備え、
前記第3表示工程では、前記時間差の量に基づいて、当該配置位置間に表示するマークの個数を変更する
【0015】
【発明の実施の形態】
以下、添付の図面を参照して本発明の好適な実施形態を説明する。
【0016】
<第1の実施形態>
図1は第1の実施形態のデータ管理が実施されるプラットフォームであるパーソナルコンピュータシステムの構成の例を示す図である。図1において、301はコンピュータシステム本体、302はデータを表示するディスプレイである。303はポインティングデバイスとしてのマウス、304はマウス303のマウスボタン、305はキーボードである。
【0017】
図2はソフトウェアとハードウェアを含む階層データ管理システムの構成を示すブロック図である。図2において、509はハードウェア層であり、各種機器で構成される。505はオペレーティングシステム層(OS層)であり、ハードウェア層509の上で動作する。504はOS505の上で動作するアプリケーションソフトウェアである。なおハードウェア層509とOS層505を構成するブロックのうち構成要件として当然含まれるが、本発明の実施形態を説明する上で直接必要としないブロックに関しては、ここでは図示していない。そのような図示していないブロックの例としてハードウェアとしてはCPU、メモリ、OSとしてはメモリ管理システム等がある。
【0018】
515はハードディスクであり、ファイルやデータを物理的に格納する。508はOS層505を構成するファイルシステムであり、アプリケーションソフトウェアがハードウェアを意識せずにファイルの入出力が行えるようにする機能がある。514はファイルシステム508がハードディスク515の読み書きを行うためのディスクIOインターフェースである。
【0019】
507はOS層505を構成する描画管理システムであり、アプリケーションソフトウェアがハードウェアを意識せずに描画が行えるようにする機能がある。513は描画管理システム507がディスプレイ302に描画を行うためのビデオインターフェースである。
【0020】
506はOS層505を構成する入力デバイス管理システムであり、アプリケーションソフトウェアがハードウェアを意識せずにユーザの入力を受け取ることができるようにする機能がある。510は、入力デバイス管理システム506がキーボード305の入力を受け取るためのキーボードインターフェースである。また、512は、入力デバイス管理システム506がマウス303からの入力を受け取ることができるようにするためのマウスインターフェースである。501はデータ日時順表示システム(日時順データブラウザ)である。502はデータを日時順で管理するための日時管理部である。また、503は日時順で管理されたデータを、その時間順、間隔で表示するデータ表示部である。
【0021】
図3は本実施形態のコンピュータシステムの概略のハードウエア構成を示すブロック図である。同図において、11はCPUであり、ROM12やRAM13に格納された制御プログラムを実行することで、種々の制御を実現する。12はROMであり、コンピュータシステムのブート時においてCPU11が実行すべきプログラムや、各種データを格納する。13はRAMであり、ハードディスク515よりオペレーティングシステムやアプリケーションプログラムをダウンロードして格納する。また、RAM13はCPU11が各種の制御を実行するに際しての作業領域を提供する。14はバスであり、上記各構成や、ハードウエア層509の各構成を接続する。
【0022】
図4は、本実施形態によるデータ表示例を示す図である。同図において、101はディスプレイ302に表示される表示ウインドウである。102、103、105a、105bは、画像データを示すデータアイコンである。104は時間軸の一部を曲線状に描いたものであり、以下ではスパイラルと呼ぶ。スパイラル104上には、スパイラルの最も外側の端点が表す時刻よりも古い時刻において撮影あるいは作成されたデータが、時刻の新しいものから順にスパイラルの外側から内側に向かって並べられている。
【0023】
この例ではスパイラルの1周360度分(例えば同図のデータアイコン105aから105bまでのことであり、以下ではこれを周回と呼ぶ)に最大8つのデータが配置されるようにしている。
【0024】
スパイラル104の最も外側の端が表す時刻は可変であり、ユーザが指定することができる。例えばユーザが現在見ているデータよりも新しい時間に撮影あるいは作成されたデータを見たい場合には、マウス303の左ボタンを押すなどして、スパイラルの最も外側の点が表す時刻を未来方向にシフトさせることができる。この場合、スパイラル104の一番外側には新しい時刻のデータが出現し、代わりにスパイラルの一番内側にある古い時刻のデータは表示されなくなる。また、他のデータはスパイラル104上を内側に向かって(過去の方向へ)順次場所を移動していく。逆に、ユーザが現在見ているデータよりも古い時間に撮影あるいは作成されたデータを見たい場合には、マウス303の右ボタンを押すなどして、スパイラル104の最も外側の点が表す時刻を過去方向にシフトさせることができる。この場合、スパイラル104の一番内側には古い時刻のデータが出現し、代わりにスパイラル104の一番外側にある新しい時刻のデータは表示されなくなる。また、他のデータはスパイラル104上を外側に向かって徐々に移動していく。
【0025】
また、各データを示すデータアイコンの表示の大きさは、データの場所によって異なり、スパイラル104の一番外側の周回から内側の周回に向かってサイズが順次小さくなっていく。
【0026】
また、図4に示されるように、あるデータの作成日時とその次のデータの作成日時に所定値以上の開きがある場合には、その旨を106a、106b、106cのようにマーカによって表示する。例えば、所定値を3時間とすれば、データアイコン間106cのように1つのマーカが存在する場合は、両データの作成時間が3時間より大きい時間(ただし6時間以下)離れていることを示す。また、データアイコン間106aのように2つのマーカが表示されている場合は、両データの作成時間が6時間より大きい時間(ただし9時間以下)離れていることを示す。
【0027】
仮にデータとその次のデータが、48時間離れているとすると、マーカの個数は48/3=16で16個になるが、データアイコン間に16個のマーカを表示することになる。しかしながら、表示できるスペースは限られており、多数のマーカを表示すれば、マーカが重なって見にくくなってしまう。また、こういった大きく時間的に離れている場合、あるデータとその次のデータが時間的にかなり離れていることだけを表現できれば十分である。
【0028】
そこで図4の例ではあるデータとその次のデータの間に表示するマーカの最大個数を6個とし、6X3時間=18時間より離れている場合は一律にマーカを6個表示することにする。これをデータアイコン間106bに示す。すなわち、データアイコン間106bでは、両データ間の作成日時に18時間より大きい開きがあることになる。
【0029】
以上の手法により、データを時間順に表示し、かつあるデータとあるデータの間の時間間隔をマーカの個数という形で表現する。ユーザは、時間的に新しいデータ、古いデータという区別と、それらがどれぐらい時間的に離れているかという感覚を同時に体感しながらデータを見ることができる。また、時間間隔の大きさをデータアイコンの表示間隔で表現すると、データアイコンが表示されない部分が増加してしまうが、本実施形態では上記のようなマーカを用いて時間間隔の大きさを表現するので、データアイコンの表示効率が良い。
【0030】
次に、上記のようなデータ表示を行うために、本実施形態で使用するデータ構造を説明する。図5はスパイラル104上に表示される画像などのデータを管理するためのデータ構造の概念図である。同図において、202は表示されるデータの各種の属性を格納するデータアイテムである。データアイテム202の中には、データがファイルシステム508上のどこに格納されているかを示すデータのパス名206と、データの全体のイメージが分かる程度にデータを縮小して作成したデータアイコン205と、データの作成時間や撮影時間を示すデータ時間207が格納されている。データアイコン205はスパイラル上にデータを表示するために使われ、データのパス名206はオリジナルのデータそのものを表示する際に使用される。
【0031】
データアイテム202はデータリストの中に複数存在させることができ、その場合にはそれぞれのデータ時間207の新しい順にリストの先頭から配置させる。後述するように、各データはこのリスト内の順序に従ってスパイラル上に表示されることになる。
【0032】
また、208は先頭のデータアイテム(この例ではデータアイテム1)へのポインタであり、これはデータリストの一番最後に置かれる。データリスト内の先頭からデータアイテムをたどっていき、最後のデータアイテムまでたどり着いた場合には、先頭のデータアイテムへのポインタ208を参照することで、再びデータアイテム1に戻ることができる。これによって、後述するように、スパイラル上の途中で一番古いデータアイテムのデータアイコンが表示された場合に、その後ろに最も新しいデータアイテム(データアイテム1)から順にデータアイコンを表示できる。この結果、全てのデータを途切れることなくスパイラル上に表示していくことができる。
【0033】
図6はデータアイコンをスパイラル上に表示する位置を管理するためのデータ配置例を示す図である。また、図7は、データアイコンをスパイラル上に表示する位置を管理するためのデータ構造を説明する図である。図6において、611は表示ウインドウ、605はスパイラルであり、それぞれ図4の表示ウインドウ101及びスパイラル104と等価である。401〜406で示した線分は、表示されるデータアイコンの中心がその線分とスパイラルとの交点に配置されることを示すものである。参照番号の付されていない線分も同様である。スパイラル605上にデータアイコンを配置することが可能な位置を、以下ではデータ配置位置と呼ぶ。説明の都合上、データ配置位置を線分405より中心へ向かうスパイラル上では省略して示してある。よって、例えば線分405から線分406の間にも、実際には2つのデータアイコンを配置することができる。
【0034】
図7において、601はデータ配置位置を管理するためのデータ構造(データ配置位置リスト)を図示したものである。データ配置位置リストにおいて、612はスパイラル上に存在する全てのデータ配置位置の数を示す総データ配置位置数である。本実施形態ではこの数を72とする。つまり、スパイラル605において、データ配置位置401から内側に向かって72個のデータ配置位置が存在することになる。
【0035】
データ配置位置時間間隔613は、隣り合ったデータ配置位置が表わす時間間隔であり、本実施形態では1時間とする。つまり、スパイラル605を例にとると、線分401、402及び403で示されるデータ配置位置は、時間軸を1時間ごとに区切っていることになる。また、スパイラル上のデータアイコンを1つ内側のデータ配置位置に移動させるということは、スパイラルの一番外側の端点が表す時刻を1時間未来方向にシフトさせるということである。
【0036】
使用データ配置位置間隔614は、いくつごとのデータ配置位置にデータを実際に表示するかを表している。一度に全てのデータ配置位置にデータを表示するためには、データのサイズを小さくしなければならず見にくくなるため、本実施形態では一定の間隔を開けてデータを表示させる。なお、本実施形態ではこの値を3としている。つまり、3つごと(2つ抜き)のデータ配置位置を使用してデータを表示する。例えば、線分401のデータ配置位置にデータアイコンが表示されると、次のデータ配置位置は、線分404で示されるデータ配置位置となる。
【0037】
表示データ時間間隔615は、データが実際に表示されるデータ配置位置の時間間隔を表すものである。本実施形態では、3つのデータ配置位置毎にデータが表示され、また隣り合うデータ配置位置の時間間隔は1時間であるので、表示データ時間間隔は3時間である。表示データ時間間隔は、データ配置時間間隔613と使用データ配置位置関係614の積になる。
【0038】
602はそれぞれのデータ配置位置の属性を格納するデータ配置位置属性であり、その中に格納されているデータ配置位置番号603は、リスト中に格納されているデータ配置位置の通し番号であり1番から順に割り振られている。表示座標604は表示ウインドウ611における各データ配置位置の座標を示すものである。表示座標604は、例えばデータ配置位置の四角形の左上の座標と右下の座標によって表現され、データアイコン表示位置を示すとともに、その表示サイズをも規定する。この表示サイズは、図4で既に示したように、スパイラルの一番外側の周囲から、内側に向かって徐々に小さくなるようになっている。これによって、スパイラルに奥行き感を出すことができる。
【0039】
これらのデータ配置位置属性はリストの先頭から末尾に向かって、スパイラル上の一番外側から内側のデータ配置位置に、1対1に対応している。図6と図7の例で言えば、リストの一番先頭にあるデータ配置位置属性1は線分401で示されるデータ配置位置に、次のデータ配置位置属性2は線分402で示されるデータ配置位置に、更にその次のデータ配置位置属性3は線分403で示されるデータ配置位置に、それぞれ対応している。
【0040】
次に本実施形態におけるデータ表示のアルゴリズムを説明する。先ず、初期状態の表示を行う際のアルゴリズムに関して述べる。大まかに述べると、データ配置位置を1ずつ取り出し、各データの持つ時間を基準にして、その位置に表示すべきデータを選び、実際に表示を行っていく。
図8は、第1の実施形態によるデータアイコンの初期表示手順を説明するフローチャートである。まず、ステップS701において現在の日時あるいはユーザが指定した日時を取得し、そこからスパイラル日時を計算する。スパイラル日時とは、スパイラルの一番外側の端点、言い換えれば一番外側のデータ配置位置が指し示している日時である。スパイラル日時は、取得した現在日時あるいはユーザが指定した日時をデータ配置位置時間間隔613単位で切り捨てることによって計算する。本実施形態ではデータ配置位置時間間隔は1時間であるので、例えば、取得した現在日時が1990年1月1日13:25分であった場合には、1時間未満を切り捨てて、スパイラル日時は1990年1月1日13:00分となる。
【0041】
ただし、取得した現在日時あるいはユーザが指定した日時が、データリストの先頭のデータ時間と、最後尾のデータ時間との間でない場合、つまり、対応するデータが存在する時間範囲外の時間が指定された場合は、スパイラル日時は、データリストの先頭のデータの持つデータ時間を、データ配置位置時間間隔単位613で切り捨てた時間とする。これによってスパイラル日時は、常にデータが存在する時間の範囲にあることになる。
【0042】
次にステップS702では、最初のデータの表示に用いるデータ配置位置を決定する。これは、スパイラル日時より過去方向で、かつ表示データ時間間隔615の倍数である時刻に相当するデータ配置位置となる。本実施形態では、表示データ時間間隔は3時間であるため、データは基本的に3時間ごと、0:00、3:00、6:00などを示すデータ配置位置に画像が表示される。従って、例えば、スパイラル日時(図6の401の時刻)が1990年1月1日6:00であり、これより過去でもっとも新しいデータアイテムのデータ時間207が1990年1月1日4:15であった場合、1990年1月1日4:00を示す3番目のデータ配置位置(図6の403)が、最初のデータが表示されるデータ配置位置となる。
【0043】
次にステップS703では、注目日時の初期値を設定する。注目日時とは、選択されたデータ配置位置に対応する日時である。最初はステップS702で決定したデータ配置位置が選択されるので、ここでは、注目日時にそのデータ配置位置に対応する日時を設定する。上の例で言えば、1990年1月1日4:00である。そして、ステップS704では、データの非存在期間を計数するためのカウンタCOUNTを0に初期化しておく。
【0044】
次にステップS705では、データ配置位置リストから、まだ取得していないデータ配置位置属性を1つ取り出す。もし、すべてのデータ配置位置属性を取り出してしまって取得できない場合には処理を終了する。そうでない場合にはステップS706に進む。ステップS705では,最初の時点では、ステップS702で決定した位置のデータ配置位置を取得する。また,それ以降は、カウンタCOUNTの値が0のときは、直前に取得されたデータ配置位置属性と使用データ配置位置間隔614とに基づいて決定される。例えば,本実施形態では,配置位置間隔614として「3」が設定されているので、現在のデータ配置位置属性から3番目のデータ配置位置属性が取得される。これによって、本実施形態では72個あるデータ配置位置を3個ずつ選んでいくことになり、最大で24個のデータがスパイラル上に表示されることになる。なお,データのない期間用カウンタCOUNTが0より大きい場合(後述のステップS722又はS723より戻る場合)は、現在取得されているデータ配置位置属性をもう一度セットする。
【0045】
次のステップS706では、注目時間と、当該注目時間から表示データ時間間隔615だけ戻した時間との間に作成あるいは撮影されたデータ、具体的にはデータ時間207がその時間内に含まれるデータアイテムをデータリストから探す。例えば、注目日時が1990年1月1日18:00であるときには、データ時間が1990年1月1日18:00から1990年1月1日15:00まで(ただし1990年1月1日15:00は含まない)のデータを探す。もし1つ以上の該当するデータアイテムがあった場合にはステップS707に進み、1つもなかった場合にはステップS720に進む。
【0046】
ステップS720では、カウンタCOUNTの値を一つインクリメントする。そして、ステップS721において、注目日時を、「(注目日時)−(表示データ時間間隔)×(COUNTの値)」によって更新する。そして、ステップS722において、ステップS721の更新の結果、注目日時がデータリストの最後まで到達したかどうかを判定する。到達していなければ、この更新された注目日時を用いてステップS705からの処理を再度実行する。従って、例えば上記の例においてCOUNTの値が1の場合には、注目日時は15:00となる。この結果、ステップS705では、データ時間が1990年1月1日15:00から1990年1月1日12:00まで(ただし1990年1月1日12:00は含まない)のデータを探すことになる。
【0047】
また、注目日時がデータリストの最後に到達した場合は、ステップS723において注目日時をデータリストの先頭のデータ時間に設定してステップS705へ戻る。以上で3時間を単位としてデータを探し、存在しない場合にはCOUNTが加算され、注目日時が更新されていく。このCOUNTの数値が後で表示するマーカの個数となる。
【0048】
なお、ステップS723では、まずデータリストの最後尾に格納されている先頭のデータアイテムへのポインタ208を参照して、先頭のデータアイテムのデータ時間を取得する。そして、その時間をデータ配置位置時間間隔(本実施形態では1時間)単位で切り捨てた時間を求める。そして、その求めた時間より未来方向で、かつ表示データ時間間隔615の倍数である時刻を、注目日時に設定して、ステップS705に戻る。例えば、データリストの先頭のデータの時間が1995年4月1日19:25であった場合には、注目時間は1995年4月1日21:00に設定する。この時間に注目時間を設定すれば、次回ステップS705が実行されるときに、データリストの先頭のデータが取得されることになる。これによって、データリストの中で最も新しい時間を持つデータが、最も古い時間を持つデータの後に表示されることになり、すべてのデータをスパイラル上に繰り返し表示することが可能になる。
【0049】
一方、ステップS706で該当するデータアイテムが検出された場合は、ステップS707において、COUNTが0より大きくなっているかチェックする。COUNTが0より大きい場合は、前回表示したデータアイテムのデータ時間と、今回ステップS706で取得したデータアイテムのデータ時間との間に3×(COUNTの値)より大きい時間の空きがあることになる。従って、ステップS711へ進み、マーカの表示処理を行う。
【0050】
ステップS711では、COUNTの値が所定値MaxCOUNT(図4の例では6)より大きいかどうかを判断する。COUNTの値がMaxCOUNT以下のときはステップS712でCOUNTの値の個数分のマーカを、前回表示のデータアイテムと今回表示のデータアイテムとの間に表示する。また、COUNTの値がMaxCOUNTより大きいときは、ステップS713において、MaxCOUNT個のマーカを前回表示のデータと今回表示のデータとの間に表示する。なお、ステップS712、S713において、マーカの表示を終了した後に、次のデータの処理のためにCOUNTの値を0にリセットしておく。
【0051】
ステップS708では、ステップS706で探したデータ(複数存在する場合はそのうちの1つ)を取得し、ステップS705で取得したデータ配置位置属性の表示座標604の位置に、そのデータを表示する。表示を行う際には、データアイテム中のデータアイコン205の大きさを取得して、表示するサイズとの比較を行い、表示するサイズの方が大きい場合には補間処理によってデータアイコン画像の拡大を行う。一方、表示サイズのほうが小さければ、間引き処理によってデータアイコン画像の縮小を行う。
【0052】
次のステップS709では、ステップS706で検出したデータアイテムをすべて表示したかを判定し、もしすべてを表示していればステップS710に進む。もし未表示のデータアイテムがあればステップS703に戻り、前述した手順で別のデータ配置位置属性の取得と、その場所へのデータの表示を繰り返す。この結果、一つの注目時間に複数のデータアイテムが存在した場合には、各データアイコンが、データ配置位置に順次表示されることになる。
【0053】
ステップS709において、ステップS706で検出したデータの表示がすべて完了したと判断された場合は、ステップS710に進み、注目日時を表示データ時間間隔だけ戻す。例えば、現在の注目日時が1990年1月1日18:00であるときには、3時間戻して、注目日時を1990年7月1日15:00とし、ステップS703からの動作を繰り返す。これによって、さらに古いデータ時間を持つデータを探し出し、それを表示することができる。
【0054】
次に、スパイラル上をデータを移動させる際の動作に関して説明する。図9は、第1の実施形態によるデータ移動処理の手順を示すフローチャートである。
【0055】
まず、ユーザがマウス303のボタンを1回押した場合、ステップS801で、データを移動させる方向と移動する速度を求める。本実施形態では左ボタンを押した場合には、過去方向にデータを移動させるので、データはスパイラルを内側方向に移動する。また、逆に右ボタンを押した場合には、未来方向つまり外側方向に移動する。データアイコンを移動する速度は、データを1度に、データ配置位置の幾つ分移動させるかによって決まる。この値が大きいほど、データアイコンは長い距離を一度に移動することになり、ユーザにとっては早く移動しているように見える。
【0056】
本実施形態では、データアイコンの移動速度は、データアイコンを表示する画面上のどの位置でマウスのボタンを押したかによって決まり、表示画面の中心に近いほどデータの移動ステップ数が大きくなる。具体的には、カーソル位置の画面中心からの距離をdとしたとき、
ステップ数=8−int((d/中心から端までの距離)×8)
で求める。これによって、最大8ステップ移動することになる。
【0057】
次にステップS802では、データの移動によって変化したスパイラル日時を再計算する。例えばステップS801で、データの移動ステップ数が「外側方向に3」であった場合には、3時間分過去の方向に時間軸がシフトしたことになり、従ってスパイラル日時を3時間過去方向に戻す。例えば、現在のスパイラル日時が1990年1月1日15:00であれば、更新後のスパイラル日時は1990年1月1日12:00となる。
【0058】
ただし、スパイラル日時が、データリスト中の最後尾のデータ時間より過去になった場合には、データリストの先頭のデータ時間をデータ配置位置時間間隔単位で切り捨てた時間にセットする。これによって、以降のステップでは、データリストの先頭に戻って再びデータが検索されて表示されることになる。逆に、スパイラル日時が、データリスト中の先頭のデータ時間より未来になった場合には、データリストの最後尾のデータ時間をデータ配置位置時間間隔単位で切り捨てた時間にセットする。これによって、以降のステップでは、データリストの最後尾のデータが検索され、スパイラルの最も外側のデータ配置位置に表示されることになる。このように本発明では、データを移動させる場合に、一番新しいデータ時間を持つデータと古い時間を持つデータが連続してつながっているように、繰り返し表示させることができる。
【0059】
以降のステップでは、データ配置位置を選択しながらデータをその位置に表示していくのであるが、その処理は、図8で説明したステップS702以降の処理と共通であるので、ここでは説明を省略する。
【0060】
なお、第1の実施形態では、データを新しいものから順にスパイラルの外側から内側に並べた場合に関して説明しているが、これはもちろん古い順に並べても良く、その実現方法は本実施形態より明らかである。
【0061】
以上説明したように、第1の実施形態によれば、データを日時順にスパイラル上に並べて、それを外側や内側方向に動かすことにより、データを時間軸と関連づけて容易に検索・管理することができる。
【0062】
また、第1の実施形態によれば、あるデータと時間的に次に位置するデータとの間が所定時間より離れている場合、その離れた時間量に応じてマーカが表示される。すなわち、第1の実施形態によれば、スパイラル上にデータアイコンが時間間隔を明示するマーカとともに表示される。このため、ユーザは、直感的に各データアイコンに対応するデータの作成時間の間隔を把握できる。また、マーカによって時間間隔を示すので、データ作成時間の時間間隔が大きくなっても、効率良くデータアイコンをスパイラル上に表示することができる。
【0063】
<第2の実施形態>
第1の実施形態では、スパイラル状にデータアイコンを配置するとともに、スパイラル上に配置されるマーカによって各データアイテムのデータ時間の間隔を表現した。第2の実施形態では、同心の楕円を用いてデータアイコンを配置する。なお、第2の実施形態の装置構成等は第1の実施形態と同様であり、ここでは説明を省略する。
【0064】
図10は、第2の実施形態によるデータアイコンの表示例を示す図である。1が表示画面であり、2a,2bを始めとした四角がデータを表している。3a、3bは、そのデータが関連づけられている日を表すリングである。このリング上に、そのリングの日に関連づけられたデータが並べられる。このリングは、画面の中心に向かって、日単位で過去または未来を表わす。また、画面の周辺のリング上のデータほど、データは大きく表示される。これにより、周辺が手前で、真ん中が奥になっている奥行き感を表現している。
【0065】
利用者がこの画面において、奥のデータをより大きく表示させたいときはズームイン操作を行う。これによりデータアイコンは、より大きく表示され、例えば2bは、3bのリングとともに連続して大きくなる。そして、リング3aとリング3a上のデータアイコン2aは、画面のワクからはみ出て消えてしまう。逆にズームアウト操作のときは、表示されているリングとデータアイコンは、小さくかつよりリングの中心に集まり、画面の外側から、過去または未来の新たなデータアイコンとリングが現れてくる。
【0066】
ファイル管理システムでは、あるディレクトリを選択し、第2の実施形態の日時順表示に切り換える指定を行うことにより、その時点での日時のリングが最外郭(あるいは最内殻)に表示される。なお、デフォルトでは、奥が過去方向で、手前が現在方向となるので、その時点での日時のリングが最外郭となる。また、この方向は利用者が任意に逆に切り換えることができる。
【0067】
表示中に所望のデータが見つかった場合は、表示中のデータアイコンをマウスでダブルクリックする。こうしてそのデータファイルが別ウインドウにオープンされ、このファイルの内容を確認したり、編集することができる。
【0068】
また、リング3aが示す日時と、次のデータが存在する隣接するリング3bが示す日時が1日よりも多く離れているときには、4a、4b、4cで表される補助リングが挿入される。ここで、補助リングは一日を表すことととし、図10では、4a、4b、4cと3本の補助リングが有ることから、リング3aとリング3bが3日離れていることを示す。もし、リング3a、3bの間が所定量、例えば7日間以上離れているときは、挿入する補助リングの数を一律に7に制限する。これはある期間以上離れたときは、7本の補助リングで「かなり離れている」ということを表現でき、またこれ以上補助リングを増やしてしまうとリングが多すぎてみにくくなるためである。
【0069】
以上のようにデータが所定期間存在しない部分に補助リングを挿入、表示することにより、データがない期間を圧縮表示した効果を生み、データとデータの空き時間間隔を表現しながらも、常に効率的にデータが画面に表示されることになる。
【0070】
図11に、あるリングと、そのリング上に属すデータアイコンに着目したズームイン、ズームアウト例を示す。ここでは、奥が過去で、手前が未来を表示しているとする。40a〜dは表示画面であり、42a〜dはある日時を示すリング、41a〜dはそのリング上のデータアイコン(そのリングが示す時間帯内のデータ)を示す。図11に示すように、ズームイン(過去のデータを連続して見ていく)のときは、最初は、41a、42aに示すように画面中央に小さく現れ、ズームイン操作を続けることによって41b、42b、そして41c、42c、そして41d、42dと大きく表示されていく。41dは、データアイコンが大きく表示され一部分のみの表示となっている、その後、このデータは画面から消えることになる。ズームアウトのときは、これとは逆方向の表示になる。
【0071】
また、40aの画面状態のときは、実際には、42aリングの外側に、42aリングより1ステップ未来の時間帯であるより大きなリングがあり、そのまた外側には、さらに1ステップ未来の時間帯であるより大きなリングがある。また、画面40dのときは、実際には、42dリングの内側に、42dリングより1ステップ過去の時間帯であるより小きなリングがあり、そのまた内側には、さらに1ステップ過去の時間帯であるより小さなリングがある。よって、全体として第10図で示したような表示が実現される。
【0072】
以上のように、データアイコンを日時順に基づいて各リング上に配置し、これを表示させ、ズームイン、アウト操作で移動させることによって、利用者の記憶感覚に近いデータ表示を実現できる。また、時間軸におけるデータのまとまりの傾向等を直感的に捉えることもできる。
【0073】
さて、上記リングの一つ一つは所定の時間幅を有するが、ある時間幅に多数のデータが存在する場合は、一つのリングに表示しきれなくなる。この場合、第2の実施形態では、以下のようにリングの時間幅を変更して対応する。
【0074】
図12は第2の実施形態によるデータ管理の構造を示す図である。50は、表示の1つのリングに対応した、一定の時間間隔で区切った時間帯を表す。本実施形態では、これを一日としており、この時間帯をセルと呼ぶことにする。このセルに対して、セルが持つ時間帯のデータ51がセルにぶらさがっている形になる。表示の際には、このセルをたどってセル単位でリングを描画し、かつそのリング上に、当該セルにぶら下がるデータのデータアイコンを描画していく。そしてズームイン、ズームアウト操作に従って、このセルの並びを、右方向、あるいは左方向に進んで、データを表示させる。
【0075】
さてこのとき、あるセルに、言い換えるとあるセルの持つ時間帯に、多数のデータが属している場合は、全てのデータを十分確認できるようその部分をゆっくり表示するようにしたい。そこで、所定値より多いデータを持つセルをさらに細かい時間帯のセルに分割する。図12の例では、10月7日のセルに属するデータが多いので、このセルをさらに6時間おきの4つのセルに分割する。その中で、12:00〜18:00のセルには多数のデータがあるので、これをさらに時間毎のセルに分割する。こうして、以下、10分おき、分おき、秒おき…、と一つのセルに属するデータ数が所定値以下になるまでセルを分割していく。
【0076】
そして、表示に際しては、これら階層化されたセルをたどってデータアイコンを表示していく。表示はセル単位でのスピードで表示していくので、データが時間的に集まっているセルは、分単位、秒単位となり、リング間の時間幅が小さくなる。利用者に対してリング間の時間幅が小さいことを明示的に示すために、リングを図13に示すように、時間幅の狭いセルの表示になるにつれて、リングの色を薄く表示していく。図13では、説明のため、データアイコンの表示は省略している。
【0077】
図13において、60は表示画面であり、この中の最外郭にまず61リングがある。これは最も濃い色で表示され、日単位のセルであることを示す。ここでは、10月6日を示すものとする。次に、62a、62bは、その下の6時間単位を示し(例えば、0:00〜6:00と、6:00〜12:00)、61リングよりも薄い色で示される。さらに、63a、63bは時間単位を示し(12:00〜13:00と13:00〜14:00)、62a、62bよりもさらに薄い色で示される。さらに64には、その時点での最外郭リング、リング61の時間帯が表示される。以上の表示手法により、利用者は、データの多い箇所についても、時間間隔の変化を認識しながら、十分な時間で、データを見ることができる。
【0078】
また、上述のように、セルを細かく分割させるかどうかを決めるのは、そのセルに属するデータ数がある所定値より大きいかどうかである。この所定値は、一つのリング上に表示するデータの最大表示個数と同じにする。本実施形態では、図10に示すように、一つのリング上には最大8個のデータアイコンを置くようにしている。よって所定値も8となる。
【0079】
図14は第2の実施形態によるセルのデータ構造を示す図である。70はセルのリストを示す。セルリスト71は、当該セルリストに並べられるセルの属性を示すセル属性71を含む。セル属性71には、このセルがどの階層のものかを示すセルレベル71aが格納される。例えば、図12に示した日単位セルは基本セルであるのでセルレベル0であり、次の6時間単位セルはセルレベル1となり、時間単位セルはセルレベル2となる。71bはセル単位(時間間隔)である。図12において、日単位セルのセル単位72bは24時間、6時間単位セルでは6時間、時間単位セルでは1時間となる。
【0080】
また、セル個数71cは、このセルリストに入るセルの個数を示す。リングカラー71dは、このセルをリングとして描画するときのリングカラーが属する。本実施形態では、リングカラー71dには、セルレベル0のとき黒(V(0)=0)とし、レベルが増えるごとにV(N)=(255−V(N−1))/2で設定していく。また、親セルポインタ71eには、子セルリストからその親セルに戻るためのポインタが格納される。セルレベル0のときは、その親はないのでこのポインタには何も入らない。子セルリスト76の子セル属性には、第1セル72aへのポインタが含まれることになる。
【0081】
次に、このセルリスト70に属するセルが72a、72b、72cと並べられる。各セルには、そのセルに含まれる最初の時間と終わりの時間、及びこのセルに含まれるデータの個数を示す情報が含まれる。そしてデータリスト73中には、当該セルに属するデータ情報が保持される。各データは74に示すように、データアイコン74aとデータのパス名74b、データ時間74cが含まれている。データアイコン74aは、75aに示すように実際のデータ75bを縮小したビットマップ画像である。また、データのパス名74bから、ディスク上にあるデータファイルを参照できる。データ時間74cは、当該データが、このセルに属することになったデータ時間である。ファイル管理システムではデータ作成日時、またはデータ修正日時がデータ時間74cとなる。
【0082】
データの個数が所定値(一つのリングに並べる数の最大値)より大きくなるか否かは、新たなデータをこのデータリストに追加するときにデータの個数をチェックすることで判断することが出来る。図10で説明した表示形態では、データの個数が8より大きくなったときに、当該セルをさらに分割する子セルリスト76を生成する。この子セルリスト76の構造も、上述したセルリスト70と同じである。
【0083】
この子セルリストが生成されたときは、セルの中に含まれていたデータは、子セル内のデータリストにデータ時間に基づいて移動され、第1セル72aから消去される。よって、第1セル72a内にデータリスト73があるときには子セルリスト76は存在しないし、子セルリスト76が存在するときには第1セル72a内のデータリスト73は存在しない。なお、子セル属性には、セルレベルを一つ増やした値と、より薄い色となるリングカラーが含まれる。
【0084】
次に、図10で説明したようなデータアイコン表示の初期表示動作について説明する。図15は表示管理用データの構造を示す図である。ズーム表示の場合は、図15の表示例に示すように、最外郭リングと最内郭リングの間を32等分した量を1ステップとして動かす。また、リングの描画は8ステップ毎に行われる。すなわち、リングとリングの間には8ステップの距離が保たれる。
【0085】
それぞれのステップでのリングの大きさ、位置、そのリング上に描画されるデータアイコンの大きさを示すものが、表示ステップリスト80である。これは、先の32ステップの各ステップに対応したリストであり、それぞれのステップ毎に、81a、81b…とステップ情報が収められている。それぞれのステップ情報には次のような情報が含まれる。リング矩形82は、対応するステップのリングに外接する矩形を示す(左上の座標(x1,y1)と右下の座標(x2,y2))。また、データ矩形リスト83は、当該リングにおいて表示されるデータアイコンの大きさを示す。従って、リングの大きさはリング矩形82に接する楕円となり、データアイコンの大きさは、データ矩形リスト83中のデータ矩形にデータアイコンの縦横比を合わせて内接する大きさとなる。なお、本実施形態では、一つのリング上に表示するデータアイコン数は8個なので、データ矩形リストは8個のデータ矩形をもち、それぞれ表示位置を含んだ大きさ情報を持つ。
【0086】
また、リングの大きさ、データアイコン表示の大きさは、最小リングから最大リングになるにつれて、順次大きくなるように設定される。この大きさの変化の仕方は、線形に大きくしていく、途中から急に大きくなるように見せる等、種々の形態が考えられる。また、複数種類の変化形態をユーザの好みに応じて設定できるように構成してもよい。なお、ユーザによって変化形態を設定可能とする際には、ズーム操作中における大きさ、位置の計算を不要とするために、各種の変化形態に対応する各ステップのリング矩形、データ矩形をテーブル化して保持しておくことが望ましい。
【0087】
図16は最外郭リングで表示すべきセルを取得する手順を示すフローチャートである。ステップS1で選択された日時を取得する。選択された日時としては、基本的にはその時点の日時が採用される。また、利用者が明示的に日時を指定した場合は、その指定日時が採用される。次にステップS2で、初期値としてセルレベル0のセルリストを取得する。ステップS3でセルリスト中のセル単位71b(時間間隔)と、各セル中の最初の時間を取得する。ステップS4でこれらの情報から、指定された日時が何番目のセルになるかを計算し、ステップS5でそのセルを取得する。ステップS6でそのセル内に子セルがあるかチェックする。子セルがある場合は、ステップS7でこの子セルリストを取得し、ステップS3からの処理を繰り返す。子セルがなくなった時点で、現在注目しているセル内に指定日時が含まれていることになるので終了となる。
【0088】
図17は、第2の実施形態による初期表示の手順を示すフローチャートである。ステップS10でCOUNT値を初期値0にセットする。ステップS11で、図16のフローチャートで取得した最外郭のリングに表示すべきセルを取得する。ステップS12で、表示ステップリストからCOUNT×8番目のステップ情報を取得する。最初はCOUNT値=0であるから、第0ステップ情報81aの内容を取得することになる。ステップS13で、取得したステップ情報からリング矩形82を得るとともに、対応するセルのセル属性からリングカラー(71d)を取得する。そして、取得したリングカラーの色と取得したリング矩形の位置、大きさに基づいてリングの描画を行う。
【0089】
ステップS14で、セルのデータリスト中から、一個一個のデータアイコンを順番に取り出し、データ矩形83の大きさ内に収まるように、データ矩形83によって示される描画位置にデータアイコンを描画する。本例では、真上の位置から時計回りに順番に最大8個のデータアイコンが描画される。
【0090】
ステップS15でCOUNT値を一つ増やし、それが一度に描画可能なリング数5に到達していないかをステップS16でチェックする。もし5個のリングまでの描画が終わっていたら、ステップS20に進み、図18、図19で説明するズームイン、ズームアウトの処理で用いる変数stepに0をセットして終了する。
【0091】
COUNT値が5未満であれば、ステップS17で、ステップS14で描画したのが現在着目しているセルリストの最後のデータかどうかをチェックする。最後のデータでなければステップS18へ進み、次のセルを取得する。一方、セルリストの最後のデータであればステップS19へ進み、親セルポインタ71eを参照して親のセルに戻り、そのセルリスト中の次のセルを取得する。
【0092】
次にステップS21で、取得したセルが日付単位を示すレベル0のセルで、かつ、データおよび子セルを持っていないかどうかをチェックする。もしそうならば、当該セルに対応する日のデータがないわけで、後で補助リングとして描画することになる。従って、この状態を保持しておくため、ステップS22でEmpCOUNTをカウントアップして、ステップS17に戻る。
【0093】
一方、ステップS21においてデータもしくは子セルが存在するならば、ステップS23に進む。ステップS23では、EmpCOUNTが0より大きいかどうかをチェックして、補助リングを表示する必要があるかを判断する。YesであればステップS24にすすみ、EmpCOUNTと、補助リングとして表示する最大個数MaxEmpCOUNTとを比較する。EmpCOUNTがMaxEmpCOUNTより大きいときは、ステップS26でMaxEmpCOUNTの数の補助リングを描画し、EmpCOUNTを0にリセットする。また、MaxEmpCOUNT以下のときは、EmpCOUNTの数の補助リングを描画する。そして、EmpCOUNTを0にリセットする。
【0094】
なお、上記補助リングの描画は、次のリングとの間に行われる。その描画位置は、1つの補助リングを描画する場合は「現在の描画位置+4ステップ」、2つの補助リングを描画する場合は「現在の描画位置+3ステップ」と「現在の描画位置+6ステップ」という具合に、リングと補助リングで形成される各距離がなるべく等しくなる用に選択される。
【0095】
そして、処理は、以上のステップS23,S25或いはS26を経てステップS12へ戻る。ステップS12では、COUNT値×8番目のステップ情報を取得するので、今回は8番目のステップ情報を取得することになる。これはリング毎に、8ステップずつ離して表示するためである。以降は、上述した処理の繰り返しとなる。このようにして最初の描画が行われ、図10に示すような表示が得られる。
【0096】
次に、ズーム操作中のアルゴリズムを示す。図18及び図19は第2の実施形態によるズーム操作時の処理を説明するフローチャートである。
【0097】
まず本実施形態では、利用者がズームイン・アウトのスピードを8段階に切り換えることができ、このスピードをマウスカーソルの位置で指定する。すなわち、マウスの左ボタンを押している間がズームインで、右ボタンを押している間がズームアウトになる。更に、ズーム操作中のマウスカーソルの位置が画面中央であれば、最も速く、周辺であれば最も遅い。
【0098】
まず、ステップS30では、マウスカーソルの位置に基づいてスピードの計算を行う。カーソル位置の画面中心からの距離をdとしたとき、
skip=8−int((d/中心から端までの距離)×8)
で求める。次に、ステップS31で操作指示がズームインか否かを判定し、処理を分岐する。すなわち、マウスの左ボタンが押されていればズームインということなので、ステップS32へ進む。マウスの右ボタンが押されていればズームアウトなので、ステップS46のズームアウト処理に進む。まず、ズームイン処理を説明する。
【0099】
ステップS32からステップS47までの処理は、図17のステップS10からステップS26までの処理と基本的に同じである。違いは、ステップS34で、COUNT×8-step番目に描画を行う点である。このstepは上述の図17のステップS20によって初期値は0に設定されるが、ズーム操作によってskip分インクリメントされる(ステップS52)。これによって指定されたスピード(skip)の単位で、データがズーム表示されることになる。
【0100】
また、ステップS33−1で、もしCOUNT×8-step番目が0より小さいときは、最外郭リングがもう画面から消えているときなので描画処理をせずに、ステップS37に進む。
【0101】
このステップS32からステップS47までの部分で、表示すべきリングとデータアイコンを全て表示することになる。ここでの補助リングの表示に関わるステップS42からステップS47までの動作は、図17のステップS21からステップS26までの動作と同じである。
【0102】
ステップS52〜S55で、次のズーム操作に備えた処理が行われる。まずステップS52において、stepがskip単位で増やされる。例えば、マウスカーソの位置を画面中心においてズーム操作を行った場合は、ステップS30においてskip=8となるので、stepは8単位で増加することになる。また、マウスカーソルを端に位置させてズームイン操作を行えば、skip=1になって、stepは1単位ずつ増加することになる。
【0103】
以上の制御により、利用者は、データの出現状況に合わせて、簡単に所望のズーム速度でデータアイコンを移動させることができる。また、マウスボタンを離せば、図18のフローチャートへのイベントは発生しないので、表示は更新されず、じっくりデータアイコンを見ることができる。ステップS53でstepが8以上のときは、ステップS54でstepを8で割った余りをstepに入れ、ステップS55で最外郭リングのセルを一個次にシフトする。stepが8より小さいときはそのままイベント待ちに入る。もし、マウス左ボタンが押され続けているときは、すぐにまた同じイベントが発生し以上の処理が繰り返される。
【0104】
次にズームアウト処理について、ズームイン処理と違う部分を説明する。図19にそのフローチャートを示す。基本的に、ズームイン処理の逆を行うわけであるが、違いは次のようになる。ステップS33−1bで、 COUNT×8+step番目が32以上のときは、リングが小さすぎて表示しないのでステップS37に進む。また、 COUNT×8+step番目が32未満のときは、ステップS34bで COUNT×8+step番目のステップ情報を取得する。
【0105】
また、stepを制御するステップS52以降の処理のうち、ステップS55bでは、最外郭リングのセルを、新たに一つ前のセルにする。
【0106】
以上のようにして、ズームイン,ズームアウト操作が行われる。次に、データ追加時の処理について説明する。図20は第2の実施形態によるデータ追加処理の手順を表すフローチャートである。
【0107】
ステップS60においてデータの作成日時もしくは修正日時を取得する。なお、データファイルが新規作成された場合は作成日時が、データファイルの修正が行われた場合は修正日時が取得される。ステップS61でその日時に対応するセルを取得する。これは図16のステップS2からステップS7の手順で取得できる。次に、ステップS62で、取得したセル内のデータ個数を見て、これが8未満かどうかをチェックする。8未満のときは、ステップS63で、あといくつ表示すべき場所が空いているかを計算する。そして、ステップS64で、0から9の乱数を取得する。これは、例えばその操作時点の時間の秒の、下一桁をとって乱数とする。この乱数から、ステップS65で、何番目の空きにデータを入れることにするかを、
p=int((乱数/10)×空きの数)
で計算する。こうすることによって、データはデータリストの頭から格納されるのではなく、8個のデータの表示場所に対して、ランダムに入ることになる。これは表示の際に、データリスト中の最初のデータはリングの上に表示し、以降時計回りに表示していくと決めているので、必ずデータリストの頭からデータを格納するとなると、決まった表示位置に多くデータが表示されることになり、せっかくの画面の大きさが有効に使えないからである。
【0108】
また、表示をする際にランダムに表示する方法もあるが、利用者は、よく使用するデータはその表示位置で記憶する場合もあるので、データアイコンの表示位置は固定しているのが望ましい。よって本実施形態では上記の方法を採用している。次に、ステップS67でデータリストの空きをたどっていって、p番目のところにステップS66で取得したデータアイコン、データファイルのパス名、データ時間を書き込む。
【0109】
一方、ステップS62で、データの個数が既に8個でいっぱいのときは、このセルに子セルを作りデータを移す作業を行う。ステップS68で、そのセルを親セルとして、子セルリストを生成する。そして、ステップS69で、子セル属性と子セルを生成する。次に、ステップS70で親セルからデータを一個取得する。ステップS71では、ステップS70で取得したデータに含まれるデータ時間に基づいて、ステップS69で生成した子セルのうちの該当するセルにデータを挿入する。ステップS72では、データリスト中の全てのデータに対して以上の処理をしたかチェックする。全データの処理が終わっていればステップS73へ進み、親セルからデータリストを消去する。そして、ステップS61に戻り、改めて新たなデータファイルの登録作業を行う。
【0110】
以上説明したように第2の実施形態によれば、データを日時順にネストするリング上に並べて表示するシステムにおいて、データの存在するリングと、次にデータが存在するリングとの間が、所定時間より離れている場合、その離れた時間量に応じた個数の補助リングが表示される。これにより、データ間の時間間隔を感覚的に表現することが可能となる。また、作成時間間隔の開いたデータを効率的に表示することができる。
【0111】
なお、本発明は、複数の機器(例えばホストコンピュータ,インタフェイス機器,リーダ,プリンタなど)から構成されるシステムに適用しても、一つの機器からなる装置(例えば、複写機,ファクシミリ装置など)に適用してもよい。
【0112】
また、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記憶媒体に格納されたプログラムコードを読出し実行することによっても、達成されることは言うまでもない。
【0113】
この場合、記憶媒体から読出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【0114】
プログラムコードを供給するための記憶媒体としては、例えば、フロッピディスク,ハードディスク,光ディスク,光磁気ディスク,CD−ROM,CD−R,磁気テープ,不揮発性のメモリカード,ROMなどを用いることができる。
【0115】
また、コンピュータが読出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているOS(オペレーティングシステム)などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0116】
さらに、記憶媒体から読出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0117】
【発明の効果】
以上説明したように本発明によれば、データに関連付けられた時間の順序に基づいてデータアイコンを表示するに際して、良好な表示効率を維持すると共にそれらデータの時間間隔を容易に把握できる表示を行える。
【0118】
【図面の簡単な説明】
【図1】第1の実施形態のデータ管理が実施されるプラットフォームであるパーソナルコンピュータシステムの構成の例を示す図である。
【図2】ソフトウェアとハードウェアを含む階層データ管理システムの構成を示すブロック図である。
【図3】本実施形態のコンピュータシステムの概略のハードウエア構成を示すブロック図である。
【図4】本実施形態によるデータ表示例を示す図である。
【図5】スパイラル104上に表示される画像などのデータを管理するためのデータ構造の概念図である。
【図6】データアイコンをスパイラル上に表示する位置を管理するためのデータ配置例を示す図である。
【図7】データアイコンをスパイラル上に表示する位置を管理するためのデータ構造を説明する図である。
【図8】第1の実施形態によるデータアイコンの初期表示手順を説明するフローチャートである。
【図9】第1の実施形態によるデータ移動処理の手順を示すフローチャートである。
【図10】第2の実施形態によるデータアイコンの表示例を示す図である。
【図11】あるリングと、そのリング上に属すデータアイコンに着目したズームイン、ズームアウト例を示す図である。
【図12】第2の実施形態によるデータ管理の構造を示す図である。
【図13】第2の実施形態によるリングの表示形態を示す図である。
【図14】第2の実施形態によるセルのデータ構造を示す図である。
【図15】表示管理用データの構造を示す図である。
【図16】最外郭リングで表示すべきセルを取得する手順を示すフローチャートである。
【図17】第2の実施形態による初期表示の手順を示すフローチャートである。
【図18】第2の実施形態によるズーム操作時の処理を説明するフローチャートである。
【図19】第2の実施形態によるズーム操作時の処理を説明するフローチャートである。
【図20】第2の実施形態によるデータ追加処理の手順を表すフローチャートである。
【図21】一般的なファイル管理システムによるファイル表示例を示す図である。
【図22】一般的なファイル管理システムによるファイル表示例を示す図である。
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to an information processing apparatus and method. In particular, the present invention relates to an information processing apparatus and method for managing and displaying a plurality of data with parameters (such as date and time) associated with each data, such as a database or a file system.
[0002]
[Prior art]
Computer file management systems, database systems, and the like use date and time as important parameters when managing a large amount of data. In the file management system, the date and time when the file was created and the date and time when the file was modified are automatically added as file attributes.
[0003]
Also in the database system, a date / time field is provided in the field in the data, and the data can be managed according to the date / time entered here. FIG. 21 is a diagram illustrating a data configuration example of a general personnel management database. In the personnel management database 30 shown in FIG. 21, the date of birth is entered in the date / time field 31 for management. In the schedule table application software (hereinafter referred to as a scheduler), the schedule itself is managed by date and time. For example, if the contents of the schedule are a meeting and a document file to be used for the meeting is registered, it is convenient to check what material was used for the meeting later.
[0004]
And when searching for desired data from these many data, these date data become an important parameter. In the file management system, by displaying the files in order of creation date and time and in order of modification date and time, it is possible to search for desired data together with the storage of the user's file creation and modification work. Also in a database system, for example, in a personnel management database, searching and displaying in order of date of birth is a common practice. Also, the scheduler can find the relevant desired data file by looking at the contents of the schedule in order of date and time.
[0005]
[Problems to be solved by the invention]
For users, the most common unit of memory is date order. If you remember the date when the file was created or the date it was modified, usually vaguely, and if you remember the file date, you can find the desired file even if you forgot the file name. It is possible. The same applies to the scheduler, and desired contents can be obtained according to the memory of when. Also in the database system, for example, data can be browsed in order by putting out in order of birth date.
[0006]
However, in the file management system, it is not clear whether the files displayed adjacently up and down on the list are very close in date or time. On the other hand, the user looks at the display of each date and time, imagines the time interval in his head, closes if the time interval between files is close, passes if the time is far away, and stores his memory. To find the desired file. FIG. 22 is a diagram showing a file display example by a general file management system.
[0007]
Reference numeral 40 denotes a file display window by the file management system, in which files in the designated 41 directory are displayed side by side in order of new date and time. However, in order to grasp how much date and time the data was created, it is necessary to refer to the date and time display column 42 of each file one by one.
[0008]
Even in the database system, the next data is the next order, even if it is only 1 year old or 10 years old, with respect to the data of a person displayed in order of date of birth. Is displayed. On the other hand, the user needs to confirm the date of birth for each piece of data numerically and imagine the degree of separation in his / her head. And it's more difficult for users to understand the overall trend of many people of a certain age and few people of a certain age. It is possible to finally grasp the overall trend through the work of displaying the order of birth date divided into ages and viewing it in a graph.
[0009]
In response to the above problems, a system that displays data while allowing the user to intuitively grasp time is desired.
[0010]
The present invention has been made in view of the above problems, and when displaying data icons based on the order of time associated with data, it is possible to maintain good display efficiency and easily grasp the time interval between the data. It is an object of the present invention to provide an information processing apparatus and method that can be displayed as described above.
[0011]
[Means for Solving the Problems]
  The information processing apparatus of the present invention that achieves the above object has the following configuration. That is,
  First display means for displaying a trajectory having a plurality of arrangement positions for displaying icons;
  An acquisition means for acquiring time information for a plurality of stored data items;
  Second display means for assigning the plurality of data items to each of the plurality of arrangement positions in time order based on the time information acquired by the acquisition means, and displaying corresponding icons at the respective arrangement positions;
  When the time difference obtained by the time information of two data items assigned to adjacent placement positions on the trajectory exceeds a predetermined time, between the placement positionsMark'sThird display means for performing display,
  The third display unit changes the number of marks displayed between the arrangement positions based on the amount of the time difference..
[0012]
  Also achieve the above objectivesAn information processing method according to the present invention for
  A first display step for displaying a trajectory having a plurality of arrangement positions for displaying an icon;
  An acquisition process for acquiring time information for a plurality of stored data items;
  A second display step of allocating the plurality of data items to each of the plurality of arrangement positions in time order based on the time information acquired in the acquisition step, and displaying a corresponding icon at each arrangement position;
  When the time difference obtained by the time information of two data items assigned to adjacent arrangement positions on the locus exceeds a predetermined time, a mark is displayed between the arrangement positions. Three A display process,
  In the third display step, the number of marks displayed between the arrangement positions is changed based on the amount of the time difference..
[0015]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, preferred embodiments of the present invention will be described with reference to the accompanying drawings.
[0016]
<First Embodiment>
FIG. 1 is a diagram illustrating an example of a configuration of a personal computer system that is a platform on which data management according to the first embodiment is performed. In FIG. 1, reference numeral 301 denotes a computer system body, and 302 denotes a display for displaying data. Reference numeral 303 denotes a mouse as a pointing device, 304 denotes a mouse button of the mouse 303, and 305 denotes a keyboard.
[0017]
FIG. 2 is a block diagram showing a configuration of a hierarchical data management system including software and hardware. In FIG. 2, reference numeral 509 denotes a hardware layer, which includes various devices. An operating system layer (OS layer) 505 operates on the hardware layer 509. Reference numeral 504 denotes application software that operates on the OS 505. Of course, blocks included in the hardware layer 509 and the OS layer 505 are included as structural requirements, but blocks that are not directly necessary for describing the embodiment of the present invention are not shown here. Examples of such blocks (not shown) include a CPU as a hardware, a memory, and a memory management system as an OS.
[0018]
A hard disk 515 physically stores files and data. Reference numeral 508 denotes a file system constituting the OS layer 505, which has a function that allows application software to input and output files without being aware of hardware. Reference numeral 514 denotes a disk IO interface for the file system 508 to read / write the hard disk 515.
[0019]
Reference numeral 507 denotes a drawing management system constituting the OS layer 505, which has a function that allows application software to perform drawing without being aware of hardware. Reference numeral 513 denotes a video interface for the drawing management system 507 to draw on the display 302.
[0020]
Reference numeral 506 denotes an input device management system constituting the OS layer 505, which has a function that allows application software to receive user input without being aware of hardware. Reference numeral 510 denotes a keyboard interface for the input device management system 506 to receive input from the keyboard 305. Reference numeral 512 denotes a mouse interface for enabling the input device management system 506 to receive an input from the mouse 303. Reference numeral 501 denotes a data date order display system (date order data browser). Reference numeral 502 denotes a date management unit for managing data in order of date. Reference numeral 503 denotes a data display unit that displays data managed in order of date and time in order of time and interval.
[0021]
FIG. 3 is a block diagram showing a schematic hardware configuration of the computer system of this embodiment. In the figure, reference numeral 11 denotes a CPU, which implements various controls by executing control programs stored in the ROM 12 or RAM 13. A ROM 12 stores a program to be executed by the CPU 11 and various data when the computer system is booted. Reference numeral 13 denotes a RAM which downloads and stores an operating system and application programs from the hard disk 515. The RAM 13 provides a work area when the CPU 11 executes various controls. Reference numeral 14 denotes a bus, which connects the above components and the components of the hardware layer 509.
[0022]
FIG. 4 is a diagram illustrating a data display example according to the present embodiment. In the figure, reference numeral 101 denotes a display window displayed on the display 302. Reference numerals 102, 103, 105a, and 105b denote data icons indicating image data. A portion 104 of the time axis is drawn in a curved line, and is hereinafter referred to as a spiral. On the spiral 104, data photographed or created at a time older than the time represented by the outermost end point of the spiral is arranged in order from the outside of the spiral in order from the newest time.
[0023]
In this example, a maximum of eight pieces of data are arranged in one spiral of 360 degrees (for example, data icons 105a to 105b in the figure, which will be referred to as a circle in the following).
[0024]
The time represented by the outermost end of the spiral 104 is variable and can be specified by the user. For example, when the user wants to see data taken or created at a time newer than the data currently being viewed, the time represented by the outermost point of the spiral is set in the future direction by pressing the left button of the mouse 303 or the like. Can be shifted. In this case, the new time data appears on the outermost side of the spiral 104, and the old time data on the innermost side of the spiral is not displayed. In addition, other data sequentially moves on the spiral 104 inward (in the past direction). On the other hand, when the user wants to see data that has been shot or created at a time older than the data that the user is currently viewing, the time represented by the outermost point of the spiral 104 is determined by pressing the right button of the mouse 303 or the like. Shift in the past direction. In this case, the old time data appears on the innermost side of the spiral 104, and the new time data on the outermost side of the spiral 104 is not displayed instead. Other data gradually moves outward on the spiral 104.
[0025]
Further, the display size of the data icon indicating each data varies depending on the location of the data, and the size gradually decreases from the outermost circumference of the spiral 104 toward the inner circumference.
[0026]
Also, as shown in FIG. 4, when there is a gap of a predetermined value or more between the creation date and time of certain data and the creation date and time of the next data, this is displayed by a marker such as 106a, 106b, and 106c. . For example, assuming that the predetermined value is 3 hours, when one marker exists as in the data icon 106c, it indicates that the creation time of both data is longer than 3 hours (but 6 hours or less). . When two markers are displayed as between the data icons 106a, it indicates that the creation time of both data is longer than 6 hours (however, 9 hours or less).
[0027]
If the data and the next data are 48 hours apart, the number of markers is 48/3 = 16, which is 16, but 16 markers are displayed between the data icons. However, the space that can be displayed is limited, and if a large number of markers are displayed, the markers overlap and become difficult to see. In addition, in such a large time separation, it is sufficient to express only that a certain data and the next data are considerably separated in time.
[0028]
Therefore, in the example of FIG. 4, the maximum number of markers to be displayed between a certain data and the next data is set to six, and when the distance is longer than 6 × 3 hours = 18 hours, six markers are uniformly displayed. This is shown between data icons 106b. That is, in the data icon 106b, the creation date and time between the two data has a gap larger than 18 hours.
[0029]
By the above method, data is displayed in time order, and the time interval between certain data is expressed in the form of the number of markers. The user can view the data while experiencing the distinction between new data and old data in time and how far away they are. In addition, when the size of the time interval is expressed by the display interval of the data icon, the portion where the data icon is not displayed increases, but in the present embodiment, the size of the time interval is expressed using the marker as described above. Therefore, the display efficiency of the data icon is good.
[0030]
Next, a data structure used in this embodiment in order to perform data display as described above will be described. FIG. 5 is a conceptual diagram of a data structure for managing data such as images displayed on the spiral 104. In the figure, reference numeral 202 denotes a data item that stores various attributes of displayed data. In the data item 202, a data path name 206 indicating where the data is stored on the file system 508, a data icon 205 created by reducing the data to such an extent that the entire image of the data can be understood, A data time 207 indicating a data creation time and a photographing time is stored. The data icon 205 is used to display data on the spiral, and the data path name 206 is used to display the original data itself.
[0031]
A plurality of data items 202 can exist in the data list. In this case, the data items 202 are arranged from the top of the list in the order of the new data time 207. As will be described later, each data is displayed on the spiral according to the order in the list.
[0032]
Reference numeral 208 denotes a pointer to the top data item (data item 1 in this example), which is placed at the end of the data list. When the data item is traced from the top in the data list and the last data item is reached, the data item 1 can be returned again by referring to the pointer 208 to the top data item. Thereby, as will be described later, when the data icon of the oldest data item is displayed in the middle of the spiral, the data icon can be displayed in order from the newest data item (data item 1). As a result, all data can be displayed on the spiral without interruption.
[0033]
FIG. 6 is a diagram showing an example of data arrangement for managing the position where the data icon is displayed on the spiral. FIG. 7 is a diagram for explaining a data structure for managing the position where the data icon is displayed on the spiral. In FIG. 6, reference numeral 611 denotes a display window, and reference numeral 605 denotes a spiral, which are equivalent to the display window 101 and the spiral 104 in FIG. Line segments 401 to 406 indicate that the center of the displayed data icon is arranged at the intersection of the line segment and the spiral. The same applies to a line segment not attached with a reference number. A position where a data icon can be arranged on the spiral 605 is hereinafter referred to as a data arrangement position. For convenience of explanation, the data arrangement position is omitted on the spiral from the line segment 405 toward the center. Therefore, for example, two data icons can actually be arranged between the line segment 405 and the line segment 406.
[0034]
In FIG. 7, reference numeral 601 shows a data structure (data arrangement position list) for managing data arrangement positions. In the data arrangement position list, 612 is the total number of data arrangement positions indicating the number of all data arrangement positions existing on the spiral. In the present embodiment, this number is 72. That is, in the spiral 605, 72 data arrangement positions exist inward from the data arrangement position 401.
[0035]
The data arrangement position time interval 613 is a time interval represented by adjacent data arrangement positions, and is 1 hour in this embodiment. In other words, taking the spiral 605 as an example, the data arrangement positions indicated by the line segments 401, 402, and 403 divide the time axis every hour. In addition, moving the data icon on the spiral to the data arrangement position on the inner side means that the time represented by the outermost end point of the spiral is shifted in the future direction by one hour.
[0036]
The used data arrangement position interval 614 indicates how many data arrangement positions the data is actually displayed. In order to display data at all the data arrangement positions at once, it is difficult to see the data because the size of the data must be reduced. In this embodiment, the data is displayed with a certain interval. In the present embodiment, this value is set to 3. That is, data is displayed using every three (two omitted) data arrangement positions. For example, when a data icon is displayed at the data arrangement position of the line segment 401, the next data arrangement position becomes the data arrangement position indicated by the line segment 404.
[0037]
The display data time interval 615 represents a time interval between data arrangement positions where data is actually displayed. In the present embodiment, data is displayed at every three data arrangement positions, and the time interval between adjacent data arrangement positions is 1 hour, so the display data time interval is 3 hours. The display data time interval is a product of the data arrangement time interval 613 and the use data arrangement position relationship 614.
[0038]
Reference numeral 602 denotes a data arrangement position attribute for storing an attribute of each data arrangement position, and a data arrangement position number 603 stored therein is a serial number of the data arrangement position stored in the list. Allocated sequentially. A display coordinate 604 indicates the coordinates of each data arrangement position in the display window 611. The display coordinate 604 is expressed by, for example, the upper left coordinate and the lower right coordinate of the quadrangle of the data arrangement position, and indicates the data icon display position and also defines the display size. As already shown in FIG. 4, the display size gradually decreases from the outermost periphery of the spiral toward the inner side. Thereby, a sense of depth can be given to the spiral.
[0039]
These data arrangement position attributes have a one-to-one correspondence from the outermost to inner data arrangement positions on the spiral from the top to the end of the list. In the example of FIGS. 6 and 7, the data arrangement position attribute 1 at the top of the list is the data arrangement position indicated by the line segment 401, and the next data arrangement position attribute 2 is the data indicated by the line segment 402. The next data arrangement position attribute 3 corresponding to the arrangement position corresponds to the data arrangement position indicated by the line segment 403, respectively.
[0040]
Next, a data display algorithm in this embodiment will be described. First, an algorithm for displaying the initial state will be described. Roughly speaking, the data arrangement position is taken out one by one, the data to be displayed at that position is selected based on the time of each data, and the display is actually performed.
FIG. 8 is a flowchart for explaining an initial display procedure of data icons according to the first embodiment. First, in step S701, the current date or time specified by the user is acquired, and the spiral date is calculated therefrom. The spiral date and time is the date and time indicated by the outermost end point of the spiral, in other words, the outermost data arrangement position. The spiral date / time is calculated by rounding down the acquired current date / time or date / time specified by the user in units of data arrangement position time intervals 613. In this embodiment, since the data arrangement position time interval is 1 hour, for example, when the acquired current date and time is 13:25 minutes on January 1, 1990, the spiral date and time is rounded down to less than 1 hour. It will be 13:00 on January 1, 1990.
[0041]
However, if the acquired current date or time specified by the user is not between the first data time and the last data time in the data list, that is, a time outside the time range in which the corresponding data exists is specified. In this case, the spiral date / time is the time obtained by truncating the data time of the first data in the data list in the data arrangement position time interval unit 613. As a result, the spiral date and time is always within the time range in which data exists.
[0042]
In step S702, a data arrangement position used for displaying the first data is determined. This is a data arrangement position corresponding to a time that is in the past direction from the spiral date and time and is a multiple of the display data time interval 615. In this embodiment, since the display data time interval is 3 hours, an image is displayed at a data arrangement position indicating data basically every three hours, such as 0:00, 3:00, and 6:00. Therefore, for example, the spiral date and time (time 401 in FIG. 6) is 6:00 on January 1, 1990, and the data time 207 of the newest data item in the past is January 1, 1990 at 4:15. If there is, the third data arrangement position (403 in FIG. 6) indicating January 1, 1990 at 4:00 becomes the data arrangement position where the first data is displayed.
[0043]
In step S703, the initial value of the attention date is set. The attention date and time is the date and time corresponding to the selected data arrangement position. Initially, since the data arrangement position determined in step S702 is selected, here, the date and time corresponding to the data arrangement position is set as the attention date and time. In the above example, it is 4:00 on January 1, 1990. In step S704, a counter COUNT for counting the non-existing period of data is initialized to zero.
[0044]
In step S705, one data arrangement position attribute that has not yet been acquired is extracted from the data arrangement position list. If all the data arrangement position attributes are extracted and cannot be acquired, the process ends. Otherwise, the process proceeds to step S706. In step S705, the data arrangement position of the position determined in step S702 is acquired at the first time point. Thereafter, when the value of the counter COUNT is 0, it is determined based on the data arrangement position attribute acquired immediately before and the used data arrangement position interval 614. For example, in the present embodiment, since “3” is set as the arrangement position interval 614, the third data arrangement position attribute is acquired from the current data arrangement position attribute. Thus, in this embodiment, 72 data arrangement positions are selected three by three, and a maximum of 24 data are displayed on the spiral. When the period counter COUNT without data is larger than 0 (when returning from step S722 or S723 described later), the currently acquired data arrangement position attribute is set again.
[0045]
In the next step S706, data items created or photographed between the attention time and the time returned from the attention time by the display data time interval 615, specifically, the data item that includes the data time 207 within the time. Search from the data list. For example, when the attention date and time is January 1, 1990, 18:00, the data time is from January 1, 1990, 18:00 to January 1, 1990, 15:00 (however, January 1, 1990, 15 : Is not included). If there is one or more corresponding data items, the process proceeds to step S707, and if none exists, the process proceeds to step S720.
[0046]
In step S720, the value of the counter COUNT is incremented by one. In step S721, the attention date and time is updated by “(attention date and time) − (display data time interval) × (COUNT value)”. In step S722, it is determined whether the date and time of interest has reached the end of the data list as a result of the update in step S721. If not, the process from step S705 is executed again using the updated attention date and time. Therefore, for example, when the value of COUNT is 1 in the above example, the attention date and time is 15:00. As a result, in step S705, searching for data whose data time is from January 1, 1990 15:00 to January 1, 1990 12:00 (but not including January 1, 1990 12:00). become.
[0047]
If the attention date / time has reached the end of the data list, the attention date / time is set to the first data time of the data list in step S723, and the process returns to step S705. As described above, data is searched for in units of 3 hours. If there is no data, COUNT is added and the attention date and time is updated. The value of this COUNT is the number of markers to be displayed later.
[0048]
In step S723, first, the data time of the top data item is acquired by referring to the pointer 208 to the top data item stored at the end of the data list. Then, a time obtained by truncating the time in units of data arrangement position time intervals (1 hour in this embodiment) is obtained. Then, a time that is in the future direction from the determined time and is a multiple of the display data time interval 615 is set as the attention date and time, and the process returns to step S705. For example, when the time of the first data in the data list is 19:25 on April 1, 1995, the attention time is set to 21:00 on April 1, 1995. If the attention time is set to this time, the top data of the data list is acquired the next time step S705 is executed. As a result, the data having the newest time in the data list is displayed after the data having the oldest time, and all data can be repeatedly displayed on the spiral.
[0049]
On the other hand, if a corresponding data item is detected in step S706, it is checked in step S707 if COUNT is greater than zero. If COUNT is greater than 0, there will be a time gap greater than 3 × (COUNT value) between the data time of the previously displayed data item and the data time of the data item acquired in step S706 this time. . Accordingly, the process proceeds to step S711, and marker display processing is performed.
[0050]
In step S711, it is determined whether the value of COUNT is greater than a predetermined value MaxCOUNT (6 in the example of FIG. 4). If the value of COUNT is less than or equal to MaxCOUNT, markers corresponding to the number of values of COUNT are displayed between the previously displayed data item and the current displayed data item in step S712. If the value of COUNT is larger than MaxCOUNT, MaxCOUNT markers are displayed between the previously displayed data and the currently displayed data in step S713. In steps S712 and S713, after the marker display is completed, the value of COUNT is reset to 0 for processing the next data.
[0051]
In step S708, the data searched for in step S706 (one of them if there are multiple) is acquired, and the data is displayed at the position of the display coordinates 604 of the data arrangement position attribute acquired in step S705. When performing display, the size of the data icon 205 in the data item is acquired and compared with the display size. If the display size is larger, the data icon image is enlarged by interpolation processing. Do. On the other hand, if the display size is smaller, the data icon image is reduced by the thinning process.
[0052]
In the next step S709, it is determined whether all the data items detected in step S706 are displayed. If all the data items are displayed, the process proceeds to step S710. If there is an undisplayed data item, the process returns to step S703, and acquisition of another data arrangement position attribute and display of data at that location are repeated in the above-described procedure. As a result, when a plurality of data items exist in one attention time, each data icon is sequentially displayed at the data arrangement position.
[0053]
If it is determined in step S709 that the display of all the data detected in step S706 has been completed, the process proceeds to step S710, and the attention date and time is returned by the display data time interval. For example, when the current date and time of attention is 1st January 1990, 18:00, the current date and time is returned by 3 hours, and the current date and time is changed to 17:00 on 1st July 1990, and the operations from step S703 are repeated. As a result, data having an older data time can be found and displayed.
[0054]
Next, an operation for moving data on the spiral will be described. FIG. 9 is a flowchart illustrating a procedure of data movement processing according to the first embodiment.
[0055]
First, when the user presses the button of the mouse 303 once, in step S801, the direction in which the data is moved and the moving speed are obtained. In the present embodiment, when the left button is pressed, the data is moved in the past direction, so that the data is moved inward in the spiral. Conversely, when the right button is pressed, the robot moves in the future direction, that is, in the outward direction. The speed at which the data icon is moved depends on how many data arrangement positions the data is moved at a time. The higher this value, the longer the data icon will move at a time, and it appears to the user to move faster.
[0056]
In the present embodiment, the movement speed of the data icon is determined by the position on the screen where the data icon is displayed and the mouse button is pressed. The closer to the center of the display screen, the larger the number of data movement steps. Specifically, when the distance from the screen center of the cursor position is d,
Number of steps = 8−int ((d / distance from center to end) × 8)
Ask for. As a result, a maximum of 8 steps are moved.
[0057]
In step S802, the spiral date and time changed by the data movement is recalculated. For example, if the number of data movement steps is “outwardly 3” in step S801, the time axis has shifted in the past direction by 3 hours, and therefore the spiral date and time is returned to the past 3 hours. . For example, if the current spiral date and time is January 1, 1990, 15:00, the updated spiral date and time is January 1, 1990, 12:00.
[0058]
However, when the spiral date / time is past the last data time in the data list, the data time at the head of the data list is set to a time rounded down in units of data arrangement position time intervals. As a result, in the subsequent steps, the data is retrieved again and displayed, returning to the top of the data list. On the contrary, when the spiral date / time is later than the first data time in the data list, the last data time in the data list is set to a time rounded down in units of data arrangement position time intervals. Thus, in the subsequent steps, the last data in the data list is searched and displayed at the outermost data arrangement position of the spiral. As described above, in the present invention, when data is moved, data having the newest data time and data having the oldest time can be repeatedly displayed so that they are continuously connected.
[0059]
In the subsequent steps, the data is displayed at that position while selecting the data arrangement position, but the process is the same as the process after step S702 described in FIG. To do.
[0060]
In the first embodiment, a case has been described in which data is arranged in order from the outside to the inside of the spiral in order from the newest. However, this may of course be arranged in the oldest order, and the implementation method is clear from this embodiment. is there.
[0061]
As described above, according to the first embodiment, data can be easily retrieved and managed in association with a time axis by arranging data on a spiral in order of date and time and moving the data outward or inward. it can.
[0062]
In addition, according to the first embodiment, when a certain data and data positioned next in time are separated from each other by a predetermined time, a marker is displayed according to the separated time amount. That is, according to the first embodiment, the data icon is displayed on the spiral together with the marker that clearly indicates the time interval. Therefore, the user can intuitively grasp the data creation time interval corresponding to each data icon. Further, since the time interval is indicated by the marker, the data icon can be efficiently displayed on the spiral even if the time interval of the data creation time is increased.
[0063]
<Second Embodiment>
In the first embodiment, data icons are arranged in a spiral shape, and the data time interval of each data item is expressed by a marker arranged on the spiral. In the second embodiment, data icons are arranged using concentric ellipses. Note that the apparatus configuration of the second embodiment is the same as that of the first embodiment, and a description thereof will be omitted here.
[0064]
FIG. 10 is a diagram illustrating a display example of data icons according to the second embodiment. Reference numeral 1 denotes a display screen, and squares including 2a and 2b represent data. Reference numerals 3a and 3b denote rings representing the days with which the data is associated. On this ring, data associated with the day of the ring is arranged. This ring represents the past or future in days toward the center of the screen. Also, the data on the ring around the screen is displayed larger. This expresses a sense of depth with the periphery at the front and the middle at the back.
[0065]
When the user wants to display the back data larger on this screen, the user zooms in. As a result, the data icon is displayed larger, for example, 2b continuously increases with the ring of 3b. Then, the ring 3a and the data icon 2a on the ring 3a protrude from the screen and disappear. Conversely, during a zoom-out operation, the displayed rings and data icons are smaller and gather more in the center of the ring, and new past or future data icons and rings appear from the outside of the screen.
[0066]
In the file management system, by selecting a directory and specifying switching to date / time display according to the second embodiment, the date / time ring at that time is displayed in the outermost (or innermost) shell. Note that, by default, the back is the past direction and the foreground is the current direction, so the date and time ring at that time is the outermost contour. In addition, this direction can be arbitrarily reversed by the user.
[0067]
If the desired data is found during display, double-click the displayed data icon with the mouse. In this way, the data file is opened in another window, and the contents of this file can be confirmed and edited.
[0068]
Further, when the date and time indicated by the ring 3a and the date and time indicated by the adjacent ring 3b in which the next data exists are more than one day apart, auxiliary rings represented by 4a, 4b and 4c are inserted. Here, the auxiliary ring represents one day, and in FIG. 10, there are three auxiliary rings 4a, 4b, and 4c, and therefore, the ring 3a and the ring 3b are separated by three days. If the rings 3a and 3b are separated by a predetermined amount, for example, 7 days or more, the number of auxiliary rings to be inserted is uniformly limited to 7. This is because, when the distance is longer than a certain period, it is possible to express that “there are far apart” with seven auxiliary rings, and when the number of auxiliary rings is increased, it becomes difficult to see too many rings.
[0069]
As described above, the auxiliary ring is inserted and displayed in the part where the data does not exist for a predetermined period, so that the effect of compressing and displaying the period when there is no data is produced, and it is always efficient while expressing the free time interval between data and data. Data will be displayed on the screen.
[0070]
FIG. 11 shows an example of zoom-in and zoom-out focusing on a ring and a data icon belonging to the ring. Here, it is assumed that the back is the past and the front is the future. 40a to d are display screens, 42a to d are rings indicating a certain date and time, and 41a to d are data icons on the ring (data in a time zone indicated by the ring). As shown in FIG. 11, when zooming in (observing past data continuously), first, it appears small in the center of the screen as shown in 41a and 42a, and 41b, 42b, Then, 41c, 42c, and 41d, 42d are displayed larger. In 41d, the data icon is displayed in a large size and only a part of the data icon is displayed. Thereafter, the data disappears from the screen. When zooming out, the display is reversed.
[0071]
In addition, when the screen state is 40a, there is actually a larger ring outside the 42a ring, which is a time zone one step ahead of the 42a ring, and there is a further one step future time zone outside the 42a ring. There is a larger ring that is. In the case of the screen 40d, there is actually a smaller ring inside the 42d ring that is one step past the time zone than the 42d ring. There are smaller rings that are. Therefore, the display as shown in FIG. 10 is realized as a whole.
[0072]
As described above, by arranging data icons on each ring based on date order, displaying them, and moving them by zoom-in and out operations, data display close to the user's memory sensation can be realized. In addition, it is possible to intuitively grasp the tendency of data collection on the time axis.
[0073]
Now, each of the rings has a predetermined time width, but when a large number of data exists in a certain time width, it cannot be displayed on one ring. In this case, in the second embodiment, the time width of the ring is changed as follows.
[0074]
FIG. 12 is a diagram showing a data management structure according to the second embodiment. Reference numeral 50 represents a time zone corresponding to one ring of display and divided at a constant time interval. In the present embodiment, this is a day, and this time zone is called a cell. With respect to this cell, the time zone data 51 of the cell is hung on the cell. At the time of display, the cell is traced to draw a ring in cell units, and a data icon of data hung from the cell is drawn on the ring. Then, according to the zoom-in / zoom-out operation, the cell array is advanced rightward or leftward to display data.
[0075]
At this time, if a large number of data belongs to a certain cell, in other words, a time zone possessed by a certain cell, it is desirable to display the portion slowly so that all the data can be sufficiently confirmed. Therefore, a cell having more data than a predetermined value is divided into cells in a finer time zone. In the example of FIG. 12, since there is a lot of data belonging to the cell of October 7, this cell is further divided into four cells every 6 hours. Among them, since there are a lot of data in the cells from 12:00 to 18:00, it is further divided into cells for each time. Thus, the cells are divided until the number of data belonging to one cell becomes equal to or less than a predetermined value, such as every 10 minutes, every minute, every second, and so on.
[0076]
When displaying, the data icon is displayed by tracing these hierarchized cells. Since the display is performed at a speed in units of cells, the cells in which data is collected in time are in units of minutes and seconds, and the time width between rings is reduced. In order to explicitly indicate to the user that the time width between the rings is small, the color of the ring is displayed lightly as the ring is displayed with a cell having a narrow time width as shown in FIG. . In FIG. 13, the display of data icons is omitted for the sake of explanation.
[0077]
In FIG. 13, reference numeral 60 denotes a display screen. First, there is a 61 ring in the outermost outline. This is displayed in the darkest color, indicating that it is a daily cell. Here, October 6 is shown. Next, 62a and 62b indicate the unit of 6 hours below (for example, 0:00 to 6:00 and 6:00 to 12:00), and are shown in a lighter color than the 61 ring. Further, 63a and 63b indicate time units (12:00 to 13:00 and 13:00 to 14:00), and are displayed in a lighter color than 62a and 62b. Furthermore, at 64, the outermost ring at that time and the time zone of the ring 61 are displayed. With the display method described above, the user can view the data in a sufficient time while recognizing the change in the time interval even at a location where there is a lot of data.
[0078]
Further, as described above, whether or not to divide a cell finely is determined whether or not the number of data belonging to the cell is larger than a predetermined value. This predetermined value is made the same as the maximum display number of data displayed on one ring. In this embodiment, as shown in FIG. 10, a maximum of eight data icons are placed on one ring. Therefore, the predetermined value is also 8.
[0079]
FIG. 14 is a diagram showing a data structure of a cell according to the second embodiment. Reference numeral 70 denotes a list of cells. The cell list 71 includes a cell attribute 71 indicating an attribute of a cell arranged in the cell list. The cell attribute 71 stores a cell level 71a indicating which layer this cell belongs to. For example, since the daily unit cell shown in FIG. 12 is a basic cell, it is at cell level 0, the next 6 hour unit cell is at cell level 1, and the hour unit cell is at cell level 2. 71b is a cell unit (time interval). In FIG. 12, the cell unit 72b of the daily unit cell is 24 hours, 6 hours for the 6 hour unit cell, and 1 hour for the hour unit cell.
[0080]
The number of cells 71c indicates the number of cells that enter this cell list. The ring color 71d belongs to a ring color when the cell is drawn as a ring. In this embodiment, the ring collar 71d is black (V (0) = 0) when the cell level is 0, and V (N) = (255−V (N−1)) / 2 as the level increases. Set it up. The parent cell pointer 71e stores a pointer for returning from the child cell list to the parent cell. When cell level is 0, there is no parent and nothing is entered in this pointer. The child cell attribute of the child cell list 76 includes a pointer to the first cell 72a.
[0081]
Next, the cells belonging to the cell list 70 are arranged as 72a, 72b, 72c. Each cell includes information indicating the initial time and the end time included in the cell and the number of data included in the cell. In the data list 73, data information belonging to the cell is held. As shown by 74, each data includes a data icon 74a, a data path name 74b, and a data time 74c. The data icon 74a is a bitmap image obtained by reducing the actual data 75b as indicated by 75a. A data file on the disk can be referred to from the data path name 74b. The data time 74c is the data time at which the data belongs to this cell. In the file management system, the data creation date or the data modification date is the data time 74c.
[0082]
Whether or not the number of data is larger than a predetermined value (the maximum number of data arranged in one ring) can be determined by checking the number of data when adding new data to this data list. . In the display form described with reference to FIG. 10, when the number of data exceeds 8, a child cell list 76 for further dividing the cell is generated. The structure of the child cell list 76 is the same as that of the cell list 70 described above.
[0083]
When this child cell list is generated, the data contained in the cell is moved to the data list in the child cell based on the data time and erased from the first cell 72a. Therefore, when there is a data list 73 in the first cell 72a, the child cell list 76 does not exist, and when the child cell list 76 exists, the data list 73 in the first cell 72a does not exist. The child cell attribute includes a value obtained by increasing the cell level by one and a ring color that is a lighter color.
[0084]
Next, the initial display operation of the data icon display as described with reference to FIG. 10 will be described. FIG. 15 is a diagram showing the structure of display management data. In the case of zoom display, as shown in the display example of FIG. 15, the amount obtained by dividing the space between the outermost ring and the innermost ring into 32 equal parts is moved as one step. The drawing of the ring is performed every 8 steps. That is, a distance of 8 steps is maintained between the rings.
[0085]
The display step list 80 indicates the size and position of the ring at each step and the size of the data icon drawn on the ring. This is a list corresponding to each of the previous 32 steps, and step information such as 81a, 81b... Is stored for each step. Each step information includes the following information. The ring rectangle 82 indicates a rectangle circumscribing the ring of the corresponding step (upper left coordinates (x1, y1) and lower right coordinates (x2, y2)). The data rectangle list 83 indicates the size of the data icon displayed in the ring. Therefore, the size of the ring is an ellipse that is in contact with the ring rectangle 82, and the size of the data icon is a size that is inscribed in the data rectangle in the data rectangle list 83 together with the aspect ratio of the data icon. In the present embodiment, since the number of data icons to be displayed on one ring is 8, the data rectangle list has 8 data rectangles, each having size information including the display position.
[0086]
Further, the size of the ring and the size of the data icon display are set so as to increase sequentially from the smallest ring to the largest ring. Various ways of changing the size are conceivable, such as increasing linearly or making it suddenly increase from the middle. Moreover, you may comprise so that a multiple types of change form can be set according to a user preference. When the change mode can be set by the user, the ring rectangle and data rectangle of each step corresponding to the various change modes are tabulated in order to eliminate the need to calculate the size and position during the zoom operation. It is desirable to keep it.
[0087]
FIG. 16 is a flowchart showing a procedure for acquiring a cell to be displayed in the outermost ring. The date and time selected in step S1 is acquired. As the selected date and time, the date and time at that point is basically adopted. If the user explicitly specifies the date and time, the specified date and time is adopted. In step S2, a cell list of cell level 0 is acquired as an initial value. In step S3, the cell unit 71b (time interval) in the cell list and the first time in each cell are acquired. In step S4, the cell number of the designated date is calculated from these pieces of information, and the cell is acquired in step S5. In step S6, it is checked whether or not there is a child cell in the cell. If there is a child cell, this child cell list is acquired in step S7, and the processing from step S3 is repeated. When there are no child cells, the designated date / time is included in the currently focused cell.
[0088]
FIG. 17 is a flowchart showing a procedure of initial display according to the second embodiment. In step S10, the COUNT value is set to the initial value 0. In step S11, a cell to be displayed on the outermost ring acquired in the flowchart of FIG. 16 is acquired. In step S12, COUNT × 8th step information is acquired from the display step list. Since the COUNT value = 0 at first, the contents of the 0th step information 81a are acquired. In step S13, the ring rectangle 82 is obtained from the obtained step information, and the ring color (71d) is obtained from the cell attribute of the corresponding cell. Then, drawing of the ring is performed based on the acquired ring color color and the position and size of the acquired ring rectangle.
[0089]
In step S <b> 14, each data icon is sequentially extracted from the cell data list, and the data icon is drawn at the drawing position indicated by the data rectangle 83 so as to be within the size of the data rectangle 83. In this example, up to eight data icons are drawn in order clockwise from the position immediately above.
[0090]
In step S15, the COUNT value is incremented by one, and it is checked in step S16 whether it has reached the number of rings that can be drawn at one time. If the drawing of up to five rings has been completed, the process proceeds to step S20, and the variable step used in the zoom-in / zoom-out process described with reference to FIGS.
[0091]
If the COUNT value is less than 5, it is checked in step S17 whether the data drawn in step S14 is the last data in the currently focused cell list. If it is not the last data, it will progress to step S18 and will acquire the next cell. On the other hand, if it is the last data in the cell list, the process proceeds to step S19, the parent cell pointer 71e is referred to return to the parent cell, and the next cell in the cell list is acquired.
[0092]
Next, in step S21, it is checked whether the acquired cell is a level 0 cell indicating a date unit and has no data and child cells. If so, there is no date data corresponding to the cell, and it will be drawn later as an auxiliary ring. Therefore, in order to hold this state, EmpCOUNT is counted up in step S22, and the process returns to step S17.
[0093]
On the other hand, if data or a child cell exists in step S21, the process proceeds to step S23. In step S23, it is checked whether EmpCOUNT is greater than 0 to determine whether it is necessary to display the auxiliary ring. If Yes, the process proceeds to step S24, and EmpCOUNT is compared with the maximum number MaxEmpCOUNT displayed as an auxiliary ring. If EmpCOUNT is greater than MaxEmpCOUNT, MaxEmpCOUNT auxiliary rings are drawn in step S26, and EmpCOUNT is reset to zero. When the number is less than or equal to MaxEmpCOUNT, the number of EmpCOUNT number of auxiliary rings is drawn. Then, EmpCOUNT is reset to 0.
[0094]
The drawing of the auxiliary ring is performed between the next ring. The drawing position is “current drawing position + 4 steps” when drawing one auxiliary ring, and “current drawing position + 3 steps” and “current drawing position + 6 steps” when drawing two auxiliary rings. Specifically, the distances formed by the ring and the auxiliary ring are selected so that they are as equal as possible.
[0095]
And a process returns to step S12 through the above step S23, S25, or S26. In step S12, since COUNT value × 8th step information is acquired, the 8th step information is acquired this time. This is because each ring is displayed 8 steps apart. Thereafter, the above-described processing is repeated. Thus, the first drawing is performed, and a display as shown in FIG. 10 is obtained.
[0096]
Next, an algorithm during the zoom operation is shown. FIG. 18 and FIG. 19 are flowcharts for explaining processing at the time of a zoom operation according to the second embodiment.
[0097]
First, in the present embodiment, the user can switch the zoom-in / out speed to eight stages, and this speed is designated by the position of the mouse cursor. That is, zooming in is performed while the left button of the mouse is pressed, and zooming out is performed while the right button is pressed. Furthermore, if the position of the mouse cursor during the zoom operation is the center of the screen, it is the fastest, and if it is the periphery, it is the slowest.
[0098]
First, in step S30, the speed is calculated based on the position of the mouse cursor. When the distance from the screen center of the cursor position is d,
skip = 8-int ((d / distance from center to end) × 8)
Ask for. Next, in step S31, it is determined whether or not the operation instruction is zoomed in, and the process branches. That is, if the left button of the mouse is pressed, zoom-in means that the process proceeds to step S32. If the right button of the mouse is pressed, the zoom is out, so the process proceeds to the zoom out process in step S46. First, the zoom-in process will be described.
[0099]
The processing from step S32 to step S47 is basically the same as the processing from step S10 to step S26 in FIG. The difference is that in step S34, rendering is performed for the COUNT × 8-step. The initial value of this step is set to 0 by step S20 in FIG. 17 described above, but is incremented by skip by the zoom operation (step S52). As a result, the data is zoomed in the unit of the specified speed (skip).
[0100]
In step S33-1, if the COUNT × 8-step is smaller than 0, the outermost ring has already disappeared from the screen, so the drawing process is not performed, and the process proceeds to step S37.
[0101]
In this portion from step S32 to step S47, all the rings and data icons to be displayed are displayed. The operation from step S42 to step S47 related to the display of the auxiliary ring here is the same as the operation from step S21 to step S26 in FIG.
[0102]
In steps S52 to S55, processing for the next zoom operation is performed. First, in step S52, step is increased in units of skip. For example, when the zoom operation is performed with the mouse cursor position at the center of the screen, skip = 8 in step S30, so that step increases by 8 units. Also, if the zoom-in operation is performed with the mouse cursor positioned at the end, skip = 1 and step is incremented by one unit.
[0103]
With the above control, the user can easily move the data icon at a desired zoom speed in accordance with the appearance state of the data. Also, if the mouse button is released, the event to the flowchart of FIG. 18 does not occur, so the display is not updated and the data icon can be viewed carefully. If step is greater than or equal to 8 in step S53, the remainder obtained by dividing step by 8 is entered in step S54, and the cell in the outermost ring is shifted to the next one in step S55. When step is less than 8, the process waits for the event. If the left mouse button is kept pressed, the same event occurs immediately and the above processing is repeated.
[0104]
Next, the difference between the zoom-out process and the zoom-in process will be described. FIG. 19 shows the flowchart. Basically, the reverse of the zoom-in process is performed, but the difference is as follows. In step S33-1b, when the COUNT × 8 + step number is 32 or more, the ring is too small to display, and the process proceeds to step S37. If COUNT × 8 + step is less than 32, COUNT × 8 + step-th step information is acquired in step S34b.
[0105]
Of the processes after step S52 for controlling step, in step S55b, the cell of the outermost ring is newly set to the previous cell.
[0106]
As described above, zoom-in and zoom-out operations are performed. Next, processing when data is added will be described. FIG. 20 is a flowchart showing the procedure of data addition processing according to the second embodiment.
[0107]
In step S60, the data creation date or modification date is acquired. Note that when a data file is newly created, the creation date and time are acquired, and when the data file is modified, the modification date and time is acquired. In step S61, a cell corresponding to the date and time is acquired. This can be acquired by the procedure from step S2 to step S7 in FIG. In step S62, the number of data in the acquired cell is checked to check whether it is less than 8. If it is less than 8, it is calculated in step S63 how many more places to display are available. In step S64, random numbers from 0 to 9 are acquired. For example, the last digit of the time at the time of the operation is taken as a random number. From this random number, in step S65, in which vacant space data is to be entered,
p = int ((random number / 10) x number of vacant)
Calculate with By doing so, the data is not stored from the beginning of the data list, but randomly enters the display location of the eight data. This is because when the data is displayed, the first data in the data list is displayed on the ring and then displayed in the clockwise direction. This is because a lot of data is displayed at the display position, and the size of the precious screen cannot be used effectively.
[0108]
In addition, there is a method of displaying randomly at the time of display, but since the user often stores frequently used data at the display position, it is desirable that the display position of the data icon is fixed. Therefore, in the present embodiment, the above method is adopted. Next, in step S67, the data list is traced, and the data icon, the path name of the data file, and the data time acquired in step S66 are written in the p-th place.
[0109]
On the other hand, if the number of data is already full at step S62, a child cell is created in this cell and data is transferred. In step S68, a child cell list is generated with the cell as a parent cell. In step S69, child cell attributes and child cells are generated. Next, one piece of data is acquired from the parent cell in step S70. In step S71, based on the data time included in the data acquired in step S70, data is inserted into the corresponding cell among the child cells generated in step S69. In step S72, it is checked whether all the data in the data list has been processed. If all the data has been processed, the process proceeds to step S73, and the data list is deleted from the parent cell. Then, the process returns to step S61, and new data file registration is performed again.
[0110]
As described above, according to the second embodiment, in a system that displays data side by side on a ring that nests data in chronological order, the interval between the ring in which data exists and the ring in which data next exists is a predetermined time. If it is further away, the number of auxiliary rings corresponding to the amount of time away is displayed. Thereby, it becomes possible to express the time interval between data sensuously. In addition, it is possible to efficiently display data with an open creation time interval.
[0111]
Note that the present invention can be applied to a system including a plurality of devices (for example, a host computer, an interface device, a reader, a printer, etc.), or a device (for example, a copier, a facsimile device, etc.) including a single device. You may apply to.
[0112]
Another object of the present invention is to supply a storage medium storing software program codes for implementing the functions of the above-described embodiments to a system or apparatus, and the computer (or CPU or MPU) of the system or apparatus stores the storage medium. Needless to say, this can also be achieved by reading and executing the program code stored in the.
[0113]
In this case, the program code itself read from the storage medium realizes the functions of the above-described embodiments, and the storage medium storing the program code constitutes the present invention.
[0114]
As a storage medium for supplying the program code, for example, a floppy disk, a hard disk, an optical disk, a magneto-optical disk, a CD-ROM, a CD-R, a magnetic tape, a nonvolatile memory card, a ROM, or the like can be used.
[0115]
Further, by executing the program code read by the computer, not only the functions of the above-described embodiments are realized, but also an OS (operating system) operating on the computer based on the instruction of the program code. It goes without saying that a case where the function of the above-described embodiment is realized by performing part or all of the actual processing and the processing is included.
[0116]
Further, after the program code read from the storage medium is written into a memory provided in a function expansion board inserted into the computer or a function expansion unit connected to the computer, the function expansion is performed based on the instruction of the program code. It goes without saying that the CPU or the like provided in the board or the function expansion unit performs part or all of the actual processing, and the functions of the above-described embodiments are realized by the processing.
[0117]
【The invention's effect】
As described above, according to the present invention, when displaying data icons based on the order of time associated with data, it is possible to perform display that can maintain good display efficiency and easily grasp the time interval of the data. .
[0118]
[Brief description of the drawings]
FIG. 1 is a diagram illustrating an example of a configuration of a personal computer system that is a platform on which data management according to a first embodiment is performed.
FIG. 2 is a block diagram showing a configuration of a hierarchical data management system including software and hardware.
FIG. 3 is a block diagram showing a schematic hardware configuration of a computer system according to the present embodiment.
FIG. 4 is a diagram showing a data display example according to the present embodiment.
FIG. 5 is a conceptual diagram of a data structure for managing data such as images displayed on a spiral 104;
FIG. 6 is a diagram illustrating a data arrangement example for managing a position where a data icon is displayed on a spiral.
FIG. 7 is a diagram illustrating a data structure for managing a position where a data icon is displayed on a spiral.
FIG. 8 is a flowchart illustrating an initial display procedure of data icons according to the first embodiment.
FIG. 9 is a flowchart showing a procedure of data movement processing according to the first embodiment.
FIG. 10 is a diagram showing a display example of data icons according to the second embodiment.
FIG. 11 is a diagram illustrating an example of zoom-in and zoom-out focusing on a certain ring and a data icon belonging to the ring.
FIG. 12 is a diagram illustrating a data management structure according to the second embodiment;
FIG. 13 is a view showing a display form of a ring according to the second embodiment.
FIG. 14 is a diagram showing a data structure of a cell according to the second embodiment.
FIG. 15 is a diagram illustrating a structure of display management data.
FIG. 16 is a flowchart showing a procedure for acquiring a cell to be displayed in the outermost ring.
FIG. 17 is a flowchart showing an initial display procedure according to the second embodiment;
FIG. 18 is a flowchart illustrating processing during a zoom operation according to the second embodiment.
FIG. 19 is a flowchart illustrating processing during a zoom operation according to the second embodiment.
FIG. 20 is a flowchart illustrating a procedure of data addition processing according to the second embodiment.
FIG. 21 is a diagram showing a file display example by a general file management system.
FIG. 22 is a diagram showing a file display example by a general file management system.

Claims (9)

アイコンを表示するための複数の配置位置を有する軌跡を表示する第1表示手段と、
格納されている複数のデータアイテムについて時間情報を獲得する獲得手段と、
前記獲得手段で獲得された時間情報に基づいて、前記複数のデータアイテムを前記複数の配置位置のそれぞれに時間順で割り当て、対応するアイコンを各配置位置に表示する第2表示手段と、
前記軌跡上の隣接する配置位置に割り当てられた2つのデータアイテムの時間情報によって得られる時間差が所定時間を越える場合、当該配置位置間にマークの表示を行う第3表示手段とを備え
前記第3表示手段は、前記時間差の量に基づいて、当該配置位置間に表示するマークの個数を変更することを特徴とする情報処理装置。
First display means for displaying a trajectory having a plurality of arrangement positions for displaying icons;
An acquisition means for acquiring time information for a plurality of stored data items;
Second display means for assigning the plurality of data items to each of the plurality of arrangement positions in time order based on the time information acquired by the acquisition means, and displaying corresponding icons at the respective arrangement positions;
A third display means for displaying a mark between the arrangement positions when a time difference obtained by time information of two data items assigned to adjacent arrangement positions on the trajectory exceeds a predetermined time ;
The information processing apparatus according to claim 3, wherein the third display unit changes the number of marks displayed between the arrangement positions based on the amount of the time difference .
前記第1表示手段において表示される軌跡は螺旋状であることを特徴とする請求項1に記載の情報処理装置。  The information processing apparatus according to claim 1, wherein a trajectory displayed on the first display unit is spiral. 前記第3表示手段は、前記マークの個数を、前記時間差の量を前記所定時間で割ることにより得られる値に基づいて設定することを特徴とする請求項に記載の情報処理装置。The information processing apparatus according to claim 1 , wherein the third display unit sets the number of the marks based on a value obtained by dividing the amount of the time difference by the predetermined time. 前記第3表示手段は、前記マークの表示個数に関して最大限度数を有し、前記時間差の量が所定値を越えた場合は一律に前記最大限度数のマークを表示することを特徴とする請求項に記載の情報処理装置。The third display means has a maximum frequency with respect to the display number of the marks, and uniformly displays the maximum frequency mark when the amount of time difference exceeds a predetermined value. The information processing apparatus according to 1 . アイコンを表示するための複数の配置位置を有する軌跡を表示する第1表示工程と、
格納されている複数のデータアイテムについて時間情報を獲得する獲得工程と、
前記獲得工程で獲得された時間情報に基づいて、前記複数のデータアイテムを前記複数の配置位置のそれぞれに時間順で割り当て、対応するアイコンを各配置位置に表示する第2表示工程と、
前記軌跡上の隣接する配置位置に割り当てられた2つのデータアイテムの時間情報によって得られる時間差が所定時間を越える場合、当該配置位置間にマークの表示を行う第3表示工程とを備え
前記第3表示工程では、前記時間差の量に基づいて、当該配置位置間に表示するマークの個数を変更することを特徴とする情報処理方法。
A first display step for displaying a trajectory having a plurality of arrangement positions for displaying an icon;
An acquisition process for acquiring time information for a plurality of stored data items;
A second display step of allocating the plurality of data items to each of the plurality of arrangement positions in time order based on the time information acquired in the acquisition step, and displaying a corresponding icon at each arrangement position;
A third display step of displaying a mark between the arrangement positions when the time difference obtained by the time information of two data items assigned to adjacent arrangement positions on the trajectory exceeds a predetermined time ;
In the third display step, the number of marks displayed between the arrangement positions is changed based on the amount of time difference .
前記第1表示工程において表示される軌跡は螺旋状であることを特徴とする請求項5に記載の情報処理方法。6. The information processing method according to claim 5, wherein the trajectory displayed in the first display step is spiral. 前記第3表示工程では、前記マークの個数を、前記時間差の量を前記所定時間で割ることにより得られる値に基づいて設定することを特徴とする請求項5に記載の情報処理方法。6. The information processing method according to claim 5, wherein in the third display step, the number of marks is set based on a value obtained by dividing the amount of the time difference by the predetermined time. 前記第3表示工程では、前記マークの表示個数に関して最大限度数を有し、前記時間差の量が所定値を越えた場合は一律に前記最大限度数のマークを表示することを特徴とする請求項5に記載の情報処理方法。The maximum number of marks is displayed in the third display step, and when the amount of the time difference exceeds a predetermined value, the marks of the maximum number are uniformly displayed. 5. The information processing method according to 5. 複数のデータアイテムに対応するデータアイコンを表示するための情報処理方法をコンピュータに実行させるための制御プログラムを格納するコンピュータ可読メモリであって、該情報処理方法が、
アイコンを表示するための複数の配置位置を有する軌跡を表示する第1表示工程と、
格納されている複数のデータアイテムについて時間情報を獲得する獲得工程と、
前記獲得工程で獲得された時間情報に基づいて、前記複数のデータアイテムを前記複数の配置位置のそれぞれに時間順で割り当て、対応するアイコンを各配置位置に表示する第2表示工程と、
前記軌跡上の隣接する配置位置に割り当てられた2つのデータアイテムの時間情報によって得られる時間差が所定時間を越える場合、当該配置位置間にマークの表示を行う第3表示工程とを備え
前記第3表示工程では、前記時間差の量に基づいて、当該配置位置間に表示するマークの個数を変更することを特徴とするコンピュータ可読メモリ。
A computer-readable memory storing a control program for causing a computer to execute an information processing method for displaying data icons corresponding to a plurality of data items, the information processing method comprising:
A first display step for displaying a trajectory having a plurality of arrangement positions for displaying an icon;
An acquisition process for acquiring time information for a plurality of stored data items;
A second display step of allocating the plurality of data items to each of the plurality of arrangement positions in time order based on the time information acquired in the acquisition step, and displaying a corresponding icon at each arrangement position;
A third display step of displaying a mark between the arrangement positions when the time difference obtained by the time information of two data items assigned to adjacent arrangement positions on the trajectory exceeds a predetermined time ;
In the third display step, the number of marks to be displayed between the arrangement positions is changed based on the amount of the time difference .
JP24564697A 1996-09-17 1997-09-10 Information processing method and apparatus Expired - Fee Related JP3847915B2 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP24564697A JP3847915B2 (en) 1997-09-10 1997-09-10 Information processing method and apparatus
US08/929,981 US5977974A (en) 1996-09-17 1997-09-15 Information processing apparatus and method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP24564697A JP3847915B2 (en) 1997-09-10 1997-09-10 Information processing method and apparatus

Publications (2)

Publication Number Publication Date
JPH1185450A JPH1185450A (en) 1999-03-30
JP3847915B2 true JP3847915B2 (en) 2006-11-22

Family

ID=17136750

Family Applications (1)

Application Number Title Priority Date Filing Date
JP24564697A Expired - Fee Related JP3847915B2 (en) 1996-09-17 1997-09-10 Information processing method and apparatus

Country Status (1)

Country Link
JP (1) JP3847915B2 (en)

Families Citing this family (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3684865B2 (en) * 1998-10-15 2005-08-17 富士ゼロックス株式会社 Data grasping device and data grasping method
JP4326667B2 (en) * 2000-04-11 2009-09-09 シャープ株式会社 VIDEO REPRODUCTION DEVICE, VIDEO REPRODUCTION METHOD, AND COMPUTER-READABLE RECORDING MEDIUM CONTAINING VIDEO REPRODUCTION PROGRAM
JP4325075B2 (en) * 2000-04-21 2009-09-02 ソニー株式会社 Data object management device
JP2002312350A (en) * 2001-04-18 2002-10-25 Casio Comput Co Ltd Information terminal device and list display program
US6839072B2 (en) * 2001-06-15 2005-01-04 Koninklijke Philips Electronics N.V. Method and system and article of manufacture for display of option recommendations through time-by-score
KR100429806B1 (en) * 2002-01-07 2004-05-03 삼성전자주식회사 Method and apparatus for displaying additional information linked with a digital TV program
JP4108406B2 (en) * 2002-06-28 2008-06-25 クラリオン株式会社 Display control device
JP4250466B2 (en) * 2003-06-30 2009-04-08 キヤノン株式会社 Image processing apparatus, image processing method, recording medium thereof, and program
US7522174B2 (en) 2003-06-30 2009-04-21 Canon Kabushiki Kaisha Image processing apparatus, image processing method, program for implementing image processing method, and recording medium recording program
JP4264308B2 (en) * 2003-07-17 2009-05-13 任天堂株式会社 Image processing apparatus and image processing program
JP4168980B2 (en) * 2003-08-22 2008-10-22 セイコーエプソン株式会社 Element layout device, element layout program, and element layout method
JP4453365B2 (en) * 2004-01-09 2010-04-21 セイコーエプソン株式会社 Image layout apparatus, image layout program, and image layout method
JP2007536669A (en) * 2004-05-05 2007-12-13 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ Browse media items
JP5055685B2 (en) * 2004-05-13 2012-10-24 ソニー株式会社 Imaging apparatus, screen display method, and user interface
CN101959021B (en) 2004-05-13 2015-02-11 索尼株式会社 Image display apparatus and image display method
JP4757527B2 (en) * 2005-04-25 2011-08-24 ソニー エリクソン モバイル コミュニケーションズ, エービー Display control device, display control method, portable terminal device, and display control program
KR100802615B1 (en) 2005-09-09 2008-02-13 엘지전자 주식회사 Event display apparatus for mobile terminal and method thereof
JP4894252B2 (en) * 2005-12-09 2012-03-14 ソニー株式会社 Data display device, data display method, and data display program
JP4437548B2 (en) 2005-12-09 2010-03-24 ソニー株式会社 Music content display device, music content display method, and music content display program
JPWO2007111206A1 (en) * 2006-03-14 2009-08-13 ソニー株式会社 Image processing apparatus and image processing method
KR101125960B1 (en) 2006-09-29 2012-03-22 엘지전자 주식회사 Event display apparatus for mobile terminal and method thereof
JP2008176758A (en) * 2006-12-20 2008-07-31 Nec Corp System, method, and program for displaying group relationship
KR101392910B1 (en) 2007-02-27 2014-05-09 엘지전자 주식회사 Event display method for mobile terminal and apparatus thereof
JP2007183989A (en) * 2007-03-15 2007-07-19 Sony Corp Information processing apparatus, information processing method, and recording medium
JP2010108057A (en) * 2008-10-28 2010-05-13 Mitsubishi Electric Corp Content list display device
WO2010084602A1 (en) * 2009-01-23 2010-07-29 株式会社日立製作所 Image display system, method, and program
JP4840488B2 (en) * 2009-08-20 2011-12-21 ソニー株式会社 Imaging apparatus, screen display method, and user interface
JP2012160081A (en) * 2011-02-01 2012-08-23 Toshiba Tec Corp Display device, display control method and control program
JP2015535639A (en) * 2012-12-03 2015-12-14 トムソン ライセンシングThomson Licensing Dynamic user interface
JP5950282B2 (en) 2013-05-13 2016-07-13 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation Apparatus and method for generating a user interface
JP6278435B2 (en) * 2013-07-01 2018-02-14 株式会社オーケーライフ Content data distribution server apparatus and content data distribution system including the same
WO2017026172A1 (en) * 2015-08-10 2017-02-16 日本電気株式会社 Display processing device and display processing method
WO2023242986A1 (en) * 2022-06-15 2023-12-21 株式会社Fuji Action record display device

Also Published As

Publication number Publication date
JPH1185450A (en) 1999-03-30

Similar Documents

Publication Publication Date Title
JP3847915B2 (en) Information processing method and apparatus
US6317739B1 (en) Method and apparatus for data retrieval and modification utilizing graphical drag-and-drop iconic interface
US5481665A (en) User interface device for creating an environment of moving parts with selected functions
EP1785814B1 (en) Display information selection apparatus and method, program and recording medium
US5977974A (en) Information processing apparatus and method
US8056019B2 (en) System and method for providing a dynamic user interface including a plurality of logical layers
JP3809198B2 (en) Hierarchical data display method and browser system
US7228507B2 (en) Methods and systems for navigating a workspace
JP4701124B2 (en) Information processing apparatus and information processing method
US9015633B2 (en) Data management apparatus and method for organizing data elements into multiple categories for display
TW200535633A (en) Key-based advanced navigation techniques
JP2002525736A (en) Method and apparatus for mapping data files
CN105653150A (en) Image display apparatus and image display method
JP2008152585A (en) Display image control apparatus and its control method
JP3636493B2 (en) Time-series data display method and information processing apparatus for realizing the same
Fuchs et al. Visualizing abstract data on maps
JPH1091388A (en) Information processor and information processing method
JP2002041571A (en) Information retrieving device
JPH1091502A (en) Information processing device and method
JP3701127B2 (en) Data management apparatus and computer-readable recording medium recording data management program
JP2001056727A (en) Film list display device and method, and data display device and method
JPH0991307A (en) Relative information display device and relative information display control method
JP4692784B2 (en) Feature quantity selection program, feature quantity selection method and apparatus in image description system
JP3198941B2 (en) Information processing device and recording medium
JP2585311B2 (en) How to create a program

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040422

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040422

RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7426

Effective date: 20040422

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20040422

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20060515

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060522

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060721

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20060814

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20060824

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090901

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100901

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110901

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110901

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120901

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120901

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130901

Year of fee payment: 7

LAPS Cancellation because of no payment of annual fees