JP2000155856A - ノ―ド―リンク構造のレンダリング空間へのマッピング方法 - Google Patents

ノ―ド―リンク構造のレンダリング空間へのマッピング方法

Info

Publication number
JP2000155856A
JP2000155856A JP11214492A JP21449299A JP2000155856A JP 2000155856 A JP2000155856 A JP 2000155856A JP 11214492 A JP11214492 A JP 11214492A JP 21449299 A JP21449299 A JP 21449299A JP 2000155856 A JP2000155856 A JP 2000155856A
Authority
JP
Japan
Prior art keywords
node
mapping
box
space
mapped
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.)
Pending
Application number
JP11214492A
Other languages
English (en)
Inventor
Ramana B Rao
ビー.ラオ ラマナ
John O Lamping
オー.ランピング ジョン
Tichomir G Tenev
ジー.テネヴ ティチョミア
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.)
Xerox Corp
Original Assignee
Xerox Corp
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 Xerox Corp filed Critical Xerox Corp
Publication of JP2000155856A publication Critical patent/JP2000155856A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/20Drawing from basic elements, e.g. lines or circles
    • G06T11/206Drawing of charts or graphs

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Processing Or Creating Images (AREA)

Abstract

(57)【要約】 【課題】 構造内の任意の要素からマッピングを開始で
きる技術を提供する。 【解決手段】 本技術は、構造内の開始要素を識別する
データを取得し(100)、レンダリング空間内の開始位置
に開始要素を配置し(102)、次にその構造の他の要素の
セットの個々に対して、負曲空間内の要素の位置をレン
ダリング空間内の位置にマッピングする。他の要素のセ
ットは、少なくとも開始要素の親と子を含み、セット内
の各要素は、そのセット内の要素のみを通るパスによっ
て開始要素から到達可能である。セット内の各要素の位
置をマッピングする際に本技術は、レンダリング空間内
の要素の位置を取得するために、その要素の負曲空間内
の先行要素との相対位置、及びレンダリング空間内の先
行要素の位置を使用する(104)。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、負曲率を有する空
間(負曲空間)にレイアウトされた(割付けられた)ノ
ード−リンク構造を、ディスプレイ上に表示するため等
のレンダリング(描画/変換)空間にマッピングするこ
とに関する。
【0002】
【従来の技術】『ジャーナル・オブ・ビジュアルランゲ
ージズ・アンド・コンピューティング誌(Journal of V
isual Languages and Computing)』、1996年、第7
号、33〜55頁に掲載されたランピング(Lamping, J.)
及びラオ(Rao, R.)による「双曲ブラウザ:大きな階
層を視覚化するための焦点+コンテキスト技術(The Hy
perbolic Browser: A Focus+Context Technique for Vi
sualizing Large Hierarchies)」は、階層を双曲平面
にレイアウトし、次にその平面をユニットディスク(単
位円)等のユークリッド表示領域にマッピングする技術
を開示している。最初は、ツリーが表示領域の中心又は
焦点にそのルートを有するが、他のノードに焦点を合わ
せるように表示をスムースに変形することが可能であ
る。焦点の変更は、例えば、ユニットディスクの中心に
マッピングされる位置に、新しい焦点を移動させる双曲
平面での変形等により、マッピングの焦点を双曲平面か
らユークリッド平面へ調整することによって実施される
ことができる。ランピング他は、米国特許第5,590,250
号で、類似のマッピング技術を開示しており、その技術
において変形はレイアウト空間内の位置で実行され、変
形された位置は次に、ディスプレイ上の位置を取得する
ためにマッピングされる。マッピングはルートノードか
ら開始され、再帰的に実行される。
【0003】『VRML(バーチャルリアリティモデリ
ング言語)'95シンポジウム(カリフォルニア州サンデ
ィエゴ、1995年12月13日から16日)の会報(Proceeding
s ofthe VRML '95 Symposium)』、ACM SIGGR
APH(米国計算機学会コンピュータグラフィックス分
科会)、1995年、33〜38頁及び138頁に掲載されたマン
ツナー(Munzner, T.)及びバーチャード(Burchard,
P.)による「ワールドワイドウェブ構造の3次元の双曲
空間での視覚化(Visualizing the Structureof the Wo
rld Wide Web in 3D Hyperbolic Space)」は、グラフ
の微細なサブツリーを標準の双曲空間にレイアウトする
ことに基づく技術を開示している。多数の画像が存在す
るため、洗練されたディテール(詳細さ)の程度の選択
が、多様体内のビューを効率的に描画するために必要と
される。微細なサブツリーの選択は、ルートノードと、
ルートノード以外の各ノードの1つの入エッジ(枝)(in
coming edge)の選択と一致する。ルートノードからナ
ビゲーションし、全ての子をアタッチ(接続)すること
により取得されるツリーを取得すると、サブツリーは、
ツリーの走査順序を選択し、次に各グラフノードの最初
のコピーのみを保持することによって選択されることが
可能である。グラフィック表現が形成され、パブリック
ドメイン(公開ソフト)の3Dビューワ(データ参照ソ
フト)であるGeomviewにロードされる3Dデータファイ
ルに書込まれる。
【0004】この発明は、双曲空間等の負曲率を有する
空間にレイアウトされたノード−リンク構造を、それを
表示することが可能な2次元空間等のレンダリング空間
にマッピングする際の問題点を提示している。
【0005】ランピング及びラオにより説明された技
術、及び負曲空間にレイアウトされたノード−リンク構
造のための他の従来のマッピング技術では、マッピング
は、有向グラフのルートノード又は有向グラフの最低レ
ベルのノード等の構造の固定の部分から開始される。し
かし、構造内の興味の対象がマッピングが開始される固
定の部分から遠い場合には、固定の部分付近の構造領域
は周辺的な興味対象に過ぎないため、ルートノード又は
他の固定の部分からのマッピングは非効率的であり得
る。更に、ルートから離れた位置の表現は、数字上の精
度を欠く恐れがあり、中心近くにマッピングされる場合
にノードの誤配置をもたらし得る。
【0006】
【発明が解決しようとする課題】本発明は、固定の部分
から開始することによるマッピングの問題を、構造内の
任意の要素からマッピングを開始できる技術を提供する
ことにより緩和する。
【0007】
【課題を解決するための手段】この技術は、構造内の開
始要素を識別するデータを取得する。この技術は次に、
レンダリング空間内の開始位置に開始要素を配置する。
次にこの技術は、その構造の他の要素のセットの個々に
対して、負曲空間内の要素の位置をレンダリング空間内
の位置にマッピングする。他の要素のセットは、少なく
とも開始要素の親と子を含み、セット内の各要素は、そ
のセット内の要素のみを通るパスによって開始要素から
到達可能である。セット内の各要素の位置をマッピング
する際に、この技術は、レンダリング空間内の要素の位
置を取得するために、その要素の負曲空間内の先行要素
との相対位置、及びレンダリング空間内の先行要素の位
置を使用する。
【0008】この新技術は、多くの場合、他のノードよ
りも効率的なマッピングをもたらす開始ノードを識別す
ることが可能であるので有利である。例えば、ユーザは
表示領域の焦点に位置されるべきノードを選択し得る。
その結果、マッピングを常に構造の固定の部分から始め
る場合よりも効率的に行なうことが可能であり、アニメ
ーション等の短時間に繰り返しマッピングを必要とする
処理をより効率的に行なうことができる。
【0009】この新技術は、ノード−リンク構造のレイ
アウトを定義するデータが絶対位置を示すよりも寧ろ負
曲空間内の他のノードとの相対位置を示す場合に、特に
有利である。例えば、ノードの親との相対位置が示され
得る。相対位置データを用いることにより、計算は特に
効率的となり得る。
【0010】また、新技術は、レンダリング空間へのマ
ッピングがルートノードから開始される場合に生じ得る
精度の問題を回避するので有利である。ルートノードと
対象となるノードとの間に非常に多くのジェネレーショ
ン(世代)が存在する場合、負曲空間内の対象ノードの
位置は不完全に明示され得る。
【0011】
【発明の実施の形態】以下の概念的構想は、米国特許第
5,590,250号及び第5,619,632号で述べられた概念的構想
と共に読むと、本発明の広い範囲を理解する上で役に立
ち、以下に定義される用語は、特許請求の範囲を含む本
出願を通して示された意味を有する。
【0012】「ノード−リンク構造」は、ノードとリン
クとに区別できる項目を含み、各リンクが2つ以上のノ
ードに関係している構造である。「グラフ」は、各リン
クが2つのノードに関係しているノード−リンク構造で
ある。「有向グラフ」は、各リンクが関係するノード間
の方向を示し、一方のノードがリンクのソース又は「フ
ロムノード」であり、他方のノードがリンクの宛先又は
「ツーノード」であるグラフである。「非環式有向グラ
フ」は、リンクが、それらの示された方向に辿られたと
きに、任意のノードからそれ自体に戻るパスを提供しな
い有向グラフである。「ツリー」は、ツリー内の任意の
非ルートノードについて、リンクが、その示された方向
に辿られたときに、ルートノードで始まり非ルートノー
ドへと導く1つのパスだけを提供するような、1つのル
ートノードだけを有する非環式有向グラフである。
【0013】ノード−リンク構造において、「ノード−
リンク関係」は、ノードのパス及び要素間のリンクに基
づく要素間の関係である。
【0014】マッピングされている要素から成るセット
の間のある種類のノード−リンク関係において、要素
は、そのセットに属さないマッピング可能な要素を一切
含まない、別の要素からその要素へのパスが少なくとも
1つ存在する場合、セット内の要素のみを通るパスによ
って別の要素から「到達可能」である。例えば、実行に
あたってノードの位置のみをマッピングする場合、要素
は、セットに属さないノードを一切含まないパスが存在
すると、セット内の要素のみを通るパスによって、別の
要素から到達可能である。
【0015】要素の個々に関して、マッピングされた位
置と、無限の精度でそれがマッピングされる予定の位置
との差が、レンダリング空間の表示の解像度の近似値で
あるSよりも小さい場合、要素はレンダリング空間の領
域内に「十分な精度で」マッピングされることが可能で
ある。例えば、所定の計算処理の実施のために、マッピ
ング演算とマッピングされるべき位置を示す数字のセッ
トとが与えられ、マッピング演算が無限の精度を有する
位置で実行される場合、累積誤差がレンダリング空間の
ピクセル解像度よりも小さい場合のみ、マッピングは十
分な精度を有するであろう。
【0016】本明細書では、「ナビゲーション信号」と
いう用語は、ユーザがノード−リンク構造のある部分に
他の部分よりも高い興味を持っていることを示す信号を
意味する。例えば「拡張信号」は、グラフのある要素の
表現が拡張されているグラフ表現を表示する要求を示
し、一方「収縮信号」は、グラフのある要素の表現が収
縮されているグラフ表現を表示する要求を示す。他の例
は、ノード−リンク構造の一部を特定の位置で表示する
要求を含み、それはブックマーク等を選択することによ
って、又は指し示されたフィーチャ(feature)を焦点
の中心へと移動することを要求するポイント及びクリッ
ク動作によって可能である。
【0017】図1は、負曲率を有する空間内にレイアウ
トされたノード−リンク構造10が、親と子とを有する
要素から開始してどのようにレンダリング空間にマッピ
ングされ得るかを示す。
【0018】ボックス20内に「X」で示されるよう
に、ノード22はマッピングのための開始要素として識
別される。ノード22は、多数の親ノードの1つであり
得る親ノード24と、多数の子ノードの1つであり得る
子ノード26とにリンクされる。
【0019】ボックス30に示されるように、ノード2
2はレンダリング空間内の開始位置32に配置される。
開始位置32は、2次元空間の起点に例示的に示される
が、あらゆる適切なレンダリング空間内の他のあらゆる
適切な位置であってよい。
【0020】その後、ノード−リンク構造10の他の要
素のセットのそれぞれは、レンダリング空間内の位置に
マッピングされることが可能である。ボックス40及び
50に示されるように、セットは親ノード24及び子ノ
ード26を含む。更に、セットは他の要素を含むことが
でき、各要素は上述のとおり、セット内の要素のみを通
るパスによってノード22から到達可能である。ボック
ス20に示されるように、ノードのみがマッピングされ
ているため、或いはリンクもマッピングされている場合
には要素のセットがノード22から親ノード24及び子
ノード26へのリンクも含むため、ノード22からそれ
らへのパスは他のマッピング可能な要素を全く含まない
ので、親ノード24及び子ノード26はそれぞれ上述さ
れたようなパスにより到達可能である。
【0021】セット内の各要素は、レンダリング空間内
の要素の位置を取得するために、その要素のノード22
からのパス内の先行要素との相対位置と、レンダリング
空間内の先行要素の位置とを使用することによりマッピ
ングされる。例えば、ノードのみがマッピングされる場
合、ノードの先行要素はそのパス内の先行ノードであ
る。この場合、親ノード24及び子ノード26の両方の
先行ノードはノード22である。ボックス42に示され
るように、親ノード24は位置44にマッピングされ、
ボックス52に示されるように、子ノード26は位置5
4にマッピングされる。
【0022】図2において、処理ボックス100の処理
は、負曲率を有する空間にレイアウトされたノード−リ
ンク構造内の開始要素を識別するデータを取得すること
により開始される。例えば、開始要素は対象ノードとし
てユーザにより指示され、処理ボックス100での処理
は、ノードの識別子を取得することによってそのノード
を示すユーザ信号に応答することが可能である。
【0023】次に処理ボックス102の処理は、開始要
素をレンダリング空間内の開始位置に配置する。例え
ば、レンダリング空間が表示領域である場合、開始位置
は表示領域の焦点であり得る。
【0024】次に処理ボックス104の処理は、開始要
素の少なくとも1つの親と少なくとも1つの子とを含
む、要素のセットの個々へのマッピングを実行する。即
ち、開始要素は、有向グラフのルート又は有向グラフの
最低レベルのノードであるよりも寧ろ、少なくとも1つ
の親と少なくとも1つの子とを構造内に有する。セット
内の各要素をレンダリング空間内の位置にマッピングす
る際に、処理ボックス104の処理は、セット内の要素
のみを通る開始要素からのパス内の先行要素とその要素
との相対位置を使用する。また、処理ボックス104の
処理は、レンダリング空間内の先行要素の位置も使用す
る。
【0025】図3の装置150は、ユーザ入力回路15
4からユーザ信号を示すデータを受信すると共にディス
プレイ156に画像を定義するデータを供給するために
接続された、プロセッサ152を含む。プロセッサ15
2は、ノード−リンクデータ158にアクセスするため
にも接続されており、ノード−リンクデータ158は、
負曲率を有する空間にレイアウトされたノード−リンク
構造の少なくとも一部を定義する。プロセッサ152
は、例えば、メモリ164、記憶媒体アクセス装置16
6、又はネットワーク168への接続から受信した命令
を供給できる命令入力回路162を介して、命令を示す
命令データ160を受信するためにも接続されている。
【0026】命令データ160により示される命令を実
行する際に、プロセッサ152はノード−リンク構造内
の開始要素の識別子を取得する。例えば、プロセッサ1
52は、選択された要素を示すユーザ入力回路154か
らユーザ信号を受信することができ、また開始要素とし
て機能するその選択された要素の識別子を取得すること
ができる。プロセッサ152は、レンダリング空間内の
開始位置に開始要素を配置する。次にプロセッサ152
は、構造内の他の要素のセットのそれぞれごとに、負曲
空間内の要素の位置をレンダリング空間内の位置にマッ
ピングする。他の要素のセットは、開始要素の少なくと
も1つの親と少なくとも1つの子とを含む。セット内の
各要素のマッピングに際して、プロセッサ152は、セ
ット内の要素のみを通る開始要素からのパス内の先行要
素とその要素との相対位置を使用する。また、プロセッ
サ152は、レンダリング空間内の先行要素の位置も使
用する。また、プロセッサ152は、ディスプレイ15
6にノード−リンク構造の表現を表示するためにレンダ
リング空間内の要素の位置を使用してもよい。
【0027】上述のように、図3は、命令入力回路16
2が命令を示すデータを受信し得る3つの可能なソー
ス、即ちメモリ164、記憶媒体アクセス装置166、
及びネットワーク168を示している。
【0028】メモリ164は、ランダムアクセスメモリ
(RAM)又は読取り専用メモリ(ROM)を含む、装
置150内の任意の従来のメモリか、又は任意の種類の
周辺又は遠隔メモリ装置であってよい。より一般には、
メモリ164は複数の種類のメモリ構成要素の組み合わ
せであってよい。
【0029】記憶媒体アクセス装置166は、例えば1
組の1つ以上のテープ、ディスケット、又はフロッピー
ディスクのような磁気媒体、1組の1つ以上のCD−R
OMのような光学媒体、又はデータを格納するための任
意の他の適切な媒体であり得る記憶媒体170にアクセ
スするための、ドライブ又は他の適切な装置又は回路で
あってよい。記憶媒体170は、装置150の一部、サ
ーバの一部、他の周辺又は遠隔メモリ装置、又はソフト
ウェア製品であってよい。これらの場合のそれぞれで、
記憶媒体170は装置150内に用いることができる1
つの製造品である。記憶媒体170の上にデータユニッ
トを配置して、記憶媒体アクセス装置166がデータユ
ニットにアクセスしてそれらを命令入力回路162を介
してプロセッサ152にシーケンスで供給できるように
することが可能である。データユニットは、シーケンス
で供給されると、図示されるように命令を示す命令デー
タ160を形成する。
【0030】ネットワーク168は、装置180から受
信した命令データ160を供給できる。装置180内の
プロセッサ182は、ネットワーク168を渡ってネッ
トワーク接続回路184及び命令入力回路162を介し
て、プロセッサ152との接続を確立できる。どちらの
プロセッサが接続を開始してもよく、接続は任意の適切
なプロトコルで確立されてよい。次に、プロセッサ18
2はメモリ186に格納されている命令データにアクセ
スして命令データをネットワーク168を渡ってプロセ
ッサ152に転送できるので、プロセッサ152はネッ
トワーク168から命令データ160を受信できる。次
に、命令データ160は、プロセッサ152によってメ
モリ164又はどこかに格納され、実行されることが可
能である。
【0031】上述した全般的なフィーチャは、ノード−
リンク構造をレンダリング空間にマッピングするための
多くの方法で様々な装置上で実施されてよい。以下に述
べる実施例は、マイクロソフトウインドウズ(Microsoft
Windows)の32ビット版を走らせ、C++言語ソースコー
ドからコンパイルされたコードを実行する、PCに基づ
くシステム上で実施されたものである。
【0032】図4では、システム200は、画像を表示
するためのディスプレイ204、及びユーザから信号を
供給するためのマウス208及びキーボード206に接
続された、PCプロセッサ202を含む。PCプロセッ
サ202は、メモリ210及びクライアント212にア
クセスできるようにも接続されている。メモリ210
は、例示されているように、プログラムメモリ214及
びデータメモリ216を含むことができる。クライアン
ト212は、メモリ210に格納されたルーチン及びデ
ータの組合せか、又は示されるようにメモリ210から
独立していてよい、有向グラフに関する情報のソースで
ある。例えば、プロセッサ202はネットワークを介し
てクライアント212と通信してもよい。
【0033】プログラムメモリ214に格納されている
ルーチンは、幾つかの機能にグループ化できる。グラフ
ァルーチン220は、クライアント212からの情報に
よって定義される有向グラフを表わすデータ構造を生成
及び変更する。ウォーカルーチン222は、有向グラフ
データ構造から情報を入手することによって、キーボー
ド206及びマウス208からのナビゲーション信号及
び他のユーザ信号に応答する。ペインタルーチン224
は、ディスプレイ204に信号を提供して有向グラフデ
ータ構造の表現を表示させる。数学ルーチン226は、
レイアウト空間内の有向グラフの要素の位置を得るため
に呼出されることができる。
【0034】次に、データメモリ216は、プログラム
メモリ214内のルーチンの実行中にプロセッサ202
によってアクセスされるデータ構造を収容する。有向グ
ラフデータ構造230は、上述のように、グラファルー
チン220によって生成及び変更され得ると共に、ウォ
ーカルーチン222及びペインタルーチン224によっ
てアクセスされ得る。
【0035】有向グラフデータ構造230内にリンクさ
れ得る又は含まれ得るノード位置データ232は、双曲
平面のような負曲空間内、及び2次元ユニットディスク
のようなレンダリング空間内のノードの位置を含むこと
ができる。ノード位置データ232はプログラムメモリ
214内のルーチンによってアクセスされ得る。
【0036】プログラムメモリ214内のルーチンは、
種々の雑データ構造234にもアクセスできる。データ
構造234は、例えば、標準ヒープとして実施される、
1対のノードIDからリンクIDへのマッピングのため
の予備データ構造を含んでもよい。即ち、この予備デー
タ構造は、リンク数の対数である時間内のリンクIDの
検索及び挿入を可能にする。
【0037】図5は、どのように図4のシステムがグラ
フの表現を表示することによってイベントに応答できる
かを示している。
【0038】処理ボックス300では、クライアント2
12は、開始グラフを入手すると共に、例えばノード生
成の呼出しを介して、要素の初期セットをメモリにロー
ドすることによって開始する。拡張フラグは要素の初期
セット内のツリーを定義する。クライアント212は、
双曲平面にツリーをレイアウトし、ツリーを双曲平面か
らユニットディスクへと、ルートノードをディスクの中
心においてマッピングし、マッピングされたツリーをペ
イントし、二重バッファをスワッピングすることによっ
てペイントされたバージョンをディスプレイ204に表
示することを、全て処理ボックス300で行うために、
メモリ214内のルーチンに対する適切な呼出しも行
う。
【0039】処理ボックス302では、クライアント2
12はグラフに関係するイベントを受信する。イベント
はナビゲーション信号、編集信号、又はユーザからの他
のタイプの信号から生じ得る。或いは、イベントはシス
テム200の内部又は外部いずれかの他のソースから受
信されてもよい。いずれにせよ、イベントはクライアン
ト212内から、メモリ214内のルーチンの1つか
ら、又はプロセッサ202によって実行される他の命令
からの呼出しの形態をとり得る。一連の受信されたイベ
ントは、処理ボックス302がキューからのイベントの
取り出しを含み得るように、キューの中に保持され得
る。
【0040】処理ボックス302で受信されたイベント
に応答して、クライアント212は、メモリ214内の
ルーチンに対して1つ以上の呼出しを行うことによっ
て、適切な応答を開始する。判断ボックス304によっ
て示されるように、応答はイベントのタイプによるの
で、イベントに基づいてブランチが選択される。
【0041】イベントは、オリエンテーション転換イベ
ント、ストレッチイベント、又はドラッグイベントのよ
うな、非アニメーションイベントであってもよい。オリ
エンテーションイベントは、ユーザがルートノードに対
して新たなオリエンテーションを示したときに生じ得
る。ストレッチイベントは、ユーザが表示されている表
現に対して新たなストレッチファクタを示したときに生
じ得る。ドラッグイベントは、例えば、ユーザが、マウ
スダウン(マウスボタンを押したまま)クリック等によ
って表現内の位置を選択し、適切なジェスチャ又は他の
信号によってその位置の移動を要求したときに生じ得
る。
【0042】処理ボックス310では、クライアント2
12は、イベントへの応答に必要な任意の情報を入手す
ることによって、非アニメーションイベントに対する応
答を開始する。オリエンテーションイベントについて
は、処理ボックス310で入手された情報が新たなオリ
エンテーションを含むことができる。ストレッチイベン
トについては、処理ボックス310で入手された情報が
新たなストレッチファクタを含むことができる。
【0043】ドラッグイベントについては、処理ボック
ス310での情報の入手は幾分複雑さが増す。クライア
ント212は、選択位置から最も近いノードのノード識
別子(ノードID)を入手してもよく、また、要求され
た動きに関する情報を入手してもよい。情報のこれらの
項目は、米国特許第5,590,250号のコラム71−72及
び図14に関係して記載されている「最も近いノードを
探索」という関数(機能)によって説明されているのと
ほぼ同じ方法で入手してもよい。
【0044】クライアント212が処理ボックス310
で必要な情報を入手したら、クライアント212はレイ
アウト、マッピング及びペイントのためのウォーカルー
チン222及びペインタルーチン224に対する適切な
呼出しで締めくくることができる。オリエンテーション
イベントについては、ルートノードは新たなオリエンテ
ーションでレイアウトされなくてはならない。ストレッ
チイベント又はドラッグイベントについてはレイアウト
は必要ない。しかしながら、ストレッチイベントについ
ては、ウォーカルーチン222に対する呼び出しが、マ
ッピングに用いるための新たなストレッチファクタを含
まなければならない。同様に、ドラッグイベントについ
ては、ウォーカルーチン222に対する呼び出しが、マ
ッピングに用いるための最も近いノードのノードID及
び動きのパスに沿った次の位置を含まなければならな
い。
【0045】処理ボックス312では、ウォーカルーチ
ン222は、まず、双曲平面内に任意の必要なレイアウ
トを行ってもよく、また、ツリーの任意の保留中の編集
をレイアウトしてもよい。次に、処理ボックス314で
は、ウォーカルーチン222は、開始ノードを開始位置
において開始して、ツリーをユニットディスクにマッピ
ングしてもよい。例えば、ドラッグイベントに応答し
て、開始ノードは処理ボックス310で識別された最も
近いノードであってよく、開始位置は動きのパスに沿っ
た次の位置であってよい。前にマッピングに用いられた
開始ノード及び開始位置を、オリエンテーション又はス
トレッチイベントに応答して用いてもよい。
【0046】ツリーがマッピングされたら、処理ボック
ス316で、マッピングされたツリーを表示バッファに
ペイントするためにペインタルーチン224を呼出すこ
とができる。ペイント中、ペインタルーチン224はノ
ード生成の結果ツリー内で生じる新たな編集をマーキン
グできる。各編集は、フラグを設定することによって又
は他の適切なデータを格納することによってマーキング
できる。ペイントが完了すると、ペイントされたように
ツリーを表示するために表示バッファのスワッピングを
行うことができ、グラフの表現が供給される。
【0047】上述のように、これらのイベントは現在は
非アニメーションイベントとして実施される。オリエン
テーションイベントに応答して、表現は新たなオリエン
テーションに、典型的には表示領域の焦点にあるノード
の周りを、旋回する。同様に、ストレッチイベントに応
答して、表現は半径方向に、典型的には焦点にあるノー
ドの周りで、拡張又は収縮する。ドラッグイベントに応
答して、表現は入力信号によって決定されたレートで移
動する。しかしながら、クライアント212は、オリエ
ンテーションイベント、ストレッチイベント、又はドラ
ッグイベントに対して、要求された変更を同等のより小
さなイベントのシーケンスに変換し、処理ボックス31
0で、1つの呼出しが個々のより小さなイベントに対す
る一連の呼出しを発することによって、アニメーション
化された応答を供給してもよい。
【0048】図5は、現在の実施では常にアニメーショ
ン化して扱われる2つの異なるタイプのイベントに対す
る応答も示している。第1のタイプはブックマーク又は
クリックイベントであり、それに応答して、アニメーシ
ョンシーケンス中に1つのノードの位置が移動され、他
の要素がその1つのノードの動きに合わせて移動する。
第2のタイプは挿入/削除イベントであり、それに応答
して、ある要素が収縮され別の要素が拡張されるアニメ
ーションシーケンス中に、1つのノードは安定したまま
であるが、他の要素は収縮及び拡張に合わせて移動す
る。
【0049】ブックマーク又はクリックイベントは、ユ
ーザがメニュー又は他のブックマークの集合の中の項目
を選択したとき、又はマウスダウンアップ(マウスボタ
ンを押して放す)クリックで表現内の位置を選択したと
きに生じ得る。このタイプのイベントに応答して、クラ
イアント212はノードID及びユニットディスク内の
宛先位置を入手する。ブックマークイベントの場合は、
ノードID及び宛先位置は以前に格納されており、メモ
リから検索できる。クリックイベントの場合は、クライ
アント212は、米国特許第5,590,250号のコラム71
−72に関係して記載されている「最も近いノードを探
索」という関数(機能)とほぼ同じ方法で、選択位置か
ら最も近いノードのノードIDを入手してもよく、宛先
はユニットディスクの中心のようなデフォルト位置であ
ってよい。
【0050】処理ボックス320では、クライアント2
12はウォーカルーチン222をノードID及び宛先位
置で呼出してもよい。ウォーカルーチン222は、ノー
ドが前の位置から宛先位置へと移動する表現のシーケン
スを表示するためのアニメーションループを実行するこ
とによって応答できる。処理ボックス320では、ウォ
ーカルーチン222は、個々がノードID及びユニット
ディスク内の位置を含むノード/位置の対のシーケンス
をセットアップすることによって開始する。位置は、米
国特許第5,619,632号の図12のボックス470、47
2、及び482に記載されているように、前の位置から
宛先位置への総トランスレーション(移動路)を入手し
て、次に総トランスレーションのn番目のルートを入手
して現在のトランスレーションと共に構成することを繰
り返すことによって入手できる。ノード/位置の対の数
は、アニメーション表示中に構造の要素を表わすフィー
チャがオブジェクト不変性を維持しながら、前の位置か
ら宛先位置への滑らかなアニメーションを確保するため
に、十分に大きくできる。n番目ルートの方法の代わり
に、前の位置から宛先位置へと双曲平面内で適切に選択
された弧に沿って適切な数の点を選択することによっ
て、位置を入手してもよい。弧は、不自然に見え得る直
線と、n番目ルートの方法でノードがとったであろう、
滑らかに見えるには過度のアニメーションステップ数を
必要とし得る弧との間を折衷するように選択されてもよ
い。点の数は、満足なアニメーションを確保するように
選択されてもよい。
【0051】次に、ウォーカルーチン222は、判断ボ
ックス322で示されるように、シーケンス中のノード
/位置の各対についてアニメーションループを反復す
る。処理ボックス324では、ウォーカルーチン222
は、処理ボックス312に関係して上述したように、ま
ず双曲平面にツリーの任意の保留中の編集をレイアウト
してもよい。次に、処理ボックス326では、ウォーカ
ルーチン222は、処理ボックス314に関係して上述
したように、ツリーをユニットディスクに、次のノード
/位置の対からのノード及び位置を開始ノード及び開始
位置として開始して、マッピングしてもよい。
【0052】ツリーがマッピングされたら、処理ボック
ス328でマッピングされたツリーを表示バッファにペ
イントするためにペインタルーチン224を呼出すこと
ができる。ペイント中、ペインタルーチン224は、処
理ボックス316に関連して上述されたように、ノード
生成の結果ツリー内で生じる新たな編集をマーキングで
きる。ペイントが完了したら、ツリーをペイントされた
ように表示するために表示バッファのスワッピングを実
行して、グラフの表現を提供することができる。
【0053】処理ボックス328でペインタルーチン2
24によって新たな編集がマーキングされると、次の反
復中、処理ボックス324で、新たな編集がレイアウト
される。その結果、表現のアニメーション化されたシー
ケンスは、米国特許第5,629,632号のように静的ノード
−リンク構造を示すのではなく、動的ノード−リンク構
造を示す。しかしながら、この編集は、基本的には、表
現が前の位置から宛先位置へと遷移するときに表現の外
周に沿って新たなノードを表わすフィーチャを追加する
ために働く。その結果、追加されたフィーチャは、他の
要素を表わすフィーチャについてのオブジェクト不変性
の知覚を妨害又は低下させない。
【0054】挿入/削除イベントは、ユーザがノードの
拡張又は収縮を要求したときに、又はグラフ又はツリー
の何か他の変更を要求したときに生じ得る。挿入/削除
イベントは、呼出しの形態でも受信されてもよく、従っ
て、人の手による制御を並行させないグラフ又はツリー
の自動変更のための機構を提供してもよい。
【0055】このタイプのイベントに応答して、クライ
アント212は、処理ボックス330で、要求されたグ
ラフ又はツリーの変更が許容可能か否かを決定するため
に、まずメモリ214内のルーチンに対する適切な呼出
しを行うことができる。
【0056】要求されたグラフ又はツリーの変更が許容
可能な場合は、それに従って、クライアント212は、
必要に応じてメモリ214内のルーチンを呼出して、グ
ラフ又はツリーを変更できる。変更を行うプロセスで
は、変更によって挿入、削除、又は変化させられ得る、
本明細書では「影響された要素」と呼ぶ各要素が、フラ
グの設定又は他の適切なデータの格納等によってマーキ
ングされる。あるノードが拡張信号又は収縮信号によっ
て選択された場合は、その親に割当てられた領域が変化
し得るので、その親も影響されたノードである。他の挿
入/削除イベントのほとんどについては、挿入又は削除
されたノードだけが影響される。クライアント212
は、あるノードが、変更のアニメーション表示中もその
ノードの前の位置に保持される、安定ノードとして選択
できる。
【0057】多くの場合、前にマッピングに用いられた
開始ノードを安定ノードとして選択することができ、そ
のノードを前の開始位置に保持することができる。他の
場合には、クライアント212にとって、異なる安定ノ
ードの選択が望ましいことがある。例えば、拡張されて
いるノードを、現在の位置に保持される安定ノードとし
て選択してもよく、従ってそのノードが新たな開始位置
となる。従って、クライアント212が異なる安定ノー
ドを選択しない限り、通常は前の開始ノード及び開始位
置が保たれる。しかし、前の開始ノードが削除されてい
る場合は、他のノードがクライアント212によって変
更されるデフォルト安定ノードとして選択されなければ
ならない。
【0058】削除が行われているとき、削除中のノード
及びマッピング中のツリー内に削除後も残る最も近い祖
先のノードIDでウォーカルーチン222を呼出すこと
ができる。この祖先は、削除中のノードから現在の挿入
/削除イベントによって削除されていない祖先に到達す
るまで上向きに巡回する(walk)ことによって、見つける
ことができる。
【0059】この呼出しに応答して、ウォーカルーチン
222は、削除中のノードが前の開始ノードか否かをテ
ストできる。そうである場合は、識別された祖先を、開
始ノードとして、削除中のノードと置換するために選択
することができる。祖先が表示されている位置に最近マ
ッピングされたものであり、それが使用可能な位置であ
る場合は、その位置を開始位置として選択できる。祖先
が最近マッピングされたものではない、又は、表示され
ない位置又は現在他の要素がマッピングされているため
に使用不可能な位置にマッピングされたものである場合
は、開始位置をユニットディスクの中心にすることがで
きる。
【0060】処理ボックス330でも、クライアント2
12は安定ノードのID及び位置でウォーカルーチン2
22を呼出してもよい。ウォーカルーチン222は、ま
ず削除されたノードが前の位置で収縮され、次に挿入さ
れたノードが新たな位置で拡張され、その間ずっと、安
定ノードは前の位置に保持されるという、表現のシーケ
ンスを表示するアニメーションループを実行することに
よって応答できる。安定ノードが、最近マッピングされ
たものではない、又は表示されない位置又は使用不可能
な位置にマッピングされたものであるので前の位置に保
持できない場合は、前の開始ノードが前の開始位置にあ
る状態で、削除されたノードが収縮された後に、安定ノ
ードをその位置に移動することができ、その結果、収縮
と拡張との間の突然の動きが生じる。ウォーカルーチン
222は、収縮及び拡張中、影響された各ノードに割当
てられた領域が変化するレートを支配する、重みのシー
ケンスをセットアップすることによって開始する。重み
は、アニメーション表示中のオブジェクト不変性を保つ
ために、十分に小さい増分で区分されている。
【0061】次に、ウォーカルーチン222は、判断ボ
ックス332で示されるように、シーケンス中の各重み
についてアニメーションループを反復する。処理ボック
ス334では、ウォーカルーチン222は、反復の重み
を用いて、まず双曲平面に影響されたノード及びツリー
の任意の保留中の編集をレイアウトしてもよい。次に、
処理ボックス336では、ウォーカルーチン222は、
処理ボックス314に関係して上述されたように、ツリ
ーをユニットディスクに、安定ノード及び位置で開始し
て、マッピングしてもよい。
【0062】ツリーがマッピングされたら、処理ボック
ス338で、マッピングされたツリーを表示バッファに
ペイントするために、ペインタルーチン224を呼出す
ことができる。ペイント中、ペインタルーチン224
は、処理ボックス316及び328に関係して上述され
たように、ノード生成の結果ツリー内で生じる新たな編
集をマーキングできる。ペイントが完了したら、ツリー
をペイントされたように表示するために表示バッファの
スワッピングを実行して、グラフの表現を提供すること
ができる。
【0063】保留中の編集が存在してもしなくても、判
断ボックス332で開始するアニメーションループの一
連の反復は、削除及び/又は挿入による動的ノード−リ
ンク構造の表現を生成する。更に、影響された要素は、
削除及び挿入の前の位置から新たな位置へと移動する。
この技術は、これらの動きの間のオブジェクト不変性を
生み出すために、うまく実現された。
【0064】処理ボックス316で表現が供給された
後、又は判断ボックス322又は332でアニメーショ
ンシーケンスが完了した後、図5の「A」と表示された
円によって示されるように、処理ボックス302で別の
イベントを受信できる。
【0065】図6は、図5の処理ボックス314、32
6及び336でマッピングがどのように実行され得るか
を示す。処理ボックス350に示されるように、マッピ
ングは、開始ノードのノードIDとレンダリング空間内
の開始位置とを含む呼出しを受信すると開始される。
【0066】図6の技術の総合的な戦略は、双曲平面が
その上にマッピングされ得るユニットディスクの変形さ
れた表現を示す図7から理解されることができる。ユニ
ットディスクの周辺近傍領域は、拡張されなければ識別
不可能なノードの位置を示すように拡張される。
【0067】ユニットディスクは、双曲限界(hyperbol
ic horizon)により境界を定められ、双曲限界は、双曲
平面のマッピングの漸近限界と考えることができる。開
始ノード402は例示的にユニットディスクの中心にマ
ッピングされており、従って、開始ノード402がユニ
ットディスク内で最大のディテールを有する双曲平面の
部分となる。しかし、開始ノード402は、ユニットデ
ィスク上の任意の位置にマッピングされてよい。
【0068】開始ノード402と双曲限界400との間
には、可視限界404及び高精度限界406の他の2つ
の限界が存在する。可視限界404の外側のノードは、
図5の処理ボックス316、328又は338ではペイ
ントされず、従ってユーザには見えない。以下で説明さ
れるように、高精度限界406は、マッピング時の精度
の問題を回避するのに役立つ。このような問題は、例示
されるようにルートノード410が開始ノード402の
何世代も上に存在することが可能なために生じ得る。
【0069】図7に示される例において、図6の技術
は、処理ボックス352で先ずツリーのパスを開始ノー
ド402からルートノード410まで上に辿る。この移
動の間、この技術は、パス内の各ノードのノードIDを
スタックに入れる。その後、処理ボックス354で、こ
の技術はパスを逆に辿って開始ノード402まで戻るた
めにスタックを使用する。この下方への移動では、この
技術はルートノード410の元のオリエンテーション
(向き)及び位置で開始され、パスに沿って各子ノード
のオリエンテーション及び位置を取得する。
【0070】この技術は、親のオリエンテーションと本
明細書では「D角(DAngle)」と呼ばれる子の入角差
(incoming difference angle)とを組み合わせること
から、子のオリエンテーションの取得を開始することが
できる。子のノードのD角は、その親の入リンクの延長
部分と、親から子への出リンクとの間の差であり得る。
オリエンテーション又は角度である2つの値を組み合わ
せるために、本明細書に参照として援用する米国特許第
5,590,250号の67及び68コラムに示される「方向回
転(rotate-direction)」関数に類似した関数が使用さ
れ得る。本明細書では「RotateDirection」と呼ばれ、
以下で説明されるような他の目的のためにも使用される
この関数は、ユニットディスク周辺上の点の座標(x,
y)により示される方向で角度θと共に開始され、座標
(xcosθ−ysinθ,ycosθ+xsinθ)である新しい方向
を取得する。
【0071】次に、下方への移動の間、RotateDirectio
nが、方向(x,y)で表わされる各ノードのオリエン
テーション及びノードの子のD角θと共に呼出される。
RotateDirectionは、上述の計算に基づき、方向として
表わされる組み合わされたオリエンテーションを戻す。
【0072】次に子の位置及びオリエンテーションが、
米国特許第5,590,250号のコラム67及び68に示され
る「方向へ移動(move-in-direction)」関数に類似し
た関数を使用して探索され得る。本明細書では「MoveIn
Direction」と呼ばれ、以下で説明されるような他の目
的のためにも使用されるこの関数は、双曲平面内の位置
(「pt」)で開始され、新しい位置(「newpt」)及び
新しい方向(「newdir」)を取得するために、ある距離
(「dist」)の間、ある方向(「dir」)に移動する。p
t、dir、newpt、及びnewdirの値は、複素数で表わされ
る。
【0073】MoveInDirectionは、ベクトル(「vec」)
を取得するために乗算(dir×dist)により実施され得
る。次にnewptの値が、和(vec+pt)を、(1,0)及
びvecとptの共役関数との積の和により除算することに
より取得され得る。次に、newdirの値が2段階で取得さ
れることができる。第1段階で、一時的数値変数(「tem
p」)の値が、和(dir+pt)を、(1,0)及びdirとp
tの共役関数との積の和により除算することにより取得
され得る。次に第2段階で、newdirの値が、差(temp−n
ewpt)を、(1,0)及びtempとnewptの共役関数との
積の差により除算することにより取得され得る。
【0074】子の位置及びオリエンテーションを取得す
るために、MoveInDirectionが、親ノードの位置(pt)
と、RotateDirectionから得られた組み合わされたオリ
エンテーションの負の値(dir)と、親ノードから子へ
の距離(dist)と共に呼び出される。MoveInDirection
により戻される位置(newpt)は、子ノードの位置であ
る。MoveInDirectionにより戻される方向(newdir)は、
子ノードのオリエンテーションである。
【0075】ルートノード410の元のオリエンテーシ
ョンは、初期値又はユーザ信号により示される値によっ
て示され得る。初期値は、例えば、垂直方向に上方の
(0,1)であり得る。ユーザは、水平方向に右方向の
(1,0)からの角のオフセット値(ずれ)として、別
の値を示すこともできる。ルートノード410の元の位
置は、ユニットディスクの起点(0,0)であってもよ
い。
【0076】処理ボックス354での下方への移動の完
了時には、レンダリング空間内に開始ノードを配置する
のに十分な情報が取得されている。これは、以下で説明
される上方への反復移動の準備として成され得る。開始
ノードがルートである場合は、既に取得されているオリ
エンテーション及び位置が十分であるので、更なる計算
は不要である。他のノードに関しては、MoveInDirectio
nからのオリエンテーションを、まず双曲平面における
そのノードの元の位置(即ち、ルートノードが起点に現
在のオリエンテーションで位置する時のそのノードの位
置)の近くでテスト位置を探索し、このテスト位置を、
そのノードの元の位置がMoveInDirectionからのノード
の位置に変換されるのと同じ方法で宛先に変換し、次に
テスト位置の宛先を、MoveInDirectionからのノードの
位置が起点に変換されるのと同じ方法で変換し、そして
ノードの補正されたオリエンテーションを取得するため
に結果を正規化することによって、補正することが可能
である。
【0077】再び開始ノード402から開始され、この
技術は、高精度限界406の外側の位置のノードに到達
したか、又はルートノード410に到達したと判断ボッ
クス360でのテストで判断されるまで、同じパスを反
復的に辿る。各反復において、処理ボックス362は、
最後のノードの親を取得することにより開始される。次
に処理ボックス364は、最後のノードのユニットディ
スク上のオリエンテーション及び位置を、双曲平面にお
ける最後のノードの親ノードとの相対位置と共に使用
し、ユニットディスク上の親ノードのオリエンテーショ
ン及び位置を取得する。
【0078】親ノードのオリエンテーション及び位置を
取得するために、先ずMoveInDirectionが子ノードの位
置(pt)と、子ノードのオリエンテーションの負の値
(dir)と、親ノードから子までの距離(dist)と共に
呼出される。MoveInDirectionにより戻される位置(new
pt)は、親ノードの位置である。MoveInDirectionによ
り戻される方向の負の値(newdir)は次に、親ノードの
オリエンテーションを取得するために、子のD角と共に
RotateDirection呼出しに与えられる。
【0079】判断ボックス360でのテスト及び他の時
点での同様のテストを実行するために、ユニットディス
ク上のノードの位置の座標が二乗され、次にその二乗の
和が、可視限界404又は高精度限界406の位置と適
切に比較され得る。例えば、二乗の和は、可視限界40
4及び高精度限界406の半径の二乗と比較され得る。
二乗の和が可視限界404の半径の二乗よりも小さい場
合、ノードは可視であり、二乗の和が高精度限界406
の半径の二乗よりも小さい場合、ノードは可視ルートで
あり得る。可視ルートとして選択されるノードは、開始
位置から上方への移動で到達可能な、高精度限界406
内の最上ノードであり得る。
【0080】図7のノード412のように、判断ボック
ス360での判断結果が肯定である場合、この技術は処
理ボックス366で、最後から2番目のノードを可視ル
ートとする。従って図7では、ノード414が可視ルー
トであり、その子孫のみがマッピングされることを意味
し、それによってマッピングされる世代数を削減する。
世代数が削減されるため、精度の問題もまた著しく減少
されることが可能である。これは、可視ルート414と
ルートノード410との間に多数の世代が存在する場合
に特に当てはまる。
【0081】ルートノード410が高精度限界内にある
場合、ルートノード410が処理ボックス366で可視
ルートとして選択される。
【0082】処理ボックス366ではまた、図6の技術
が、ツリーの下方への幅優先順の反復移動に備えて可視
ルートのノードIDをキューに入れる。判断ボックス3
70で示されるように、この移動はキューが空になるま
で続く。各反復において、処理ボックス372は、キュ
ーから戻りノードを取り出す。次にこの技術は、処理ボ
ックス374で、取り出された戻りノードの各子に対し
て幾つかの処理を実行する。各子ノードは、例えば、現
在の移動に関するカウンタの数値を記憶することによっ
て、移動されていることをマークされる。ユニットディ
スク上の子ノードのオリエンテーション及び位置が取得
される。子ノードの位置が可視限界404の内側である
場合、子ノードのノードIDはペイントスタックに入れ
られる。最後に、その子ノードは、それの子が順にマッ
ピングされるようにキューの先頭に入れられるが、これ
はその子ノードが適切な判定基準を満たす場合のみであ
るため、不要なマッピングは回避される。
【0083】子ノードのオリエンテーション及び位置を
取得するために、RotateDirectionが、親ノードのオリ
エンテーション及び子ノードのD角と共に呼出される。
次に結果として生じる方向は、親ノードの位置及び親ノ
ードの距離と共にMoveInDirection呼出しに与えられ
る。MoveInDirectionから取得された位置(newpt)及び
方向(newdir)は、それぞれ子ノードの位置及びオリエ
ンテーションである。
【0084】子ノードの位置及びオリエンテーションが
取得されると、子ノードの子をマッピングする必要があ
るか否かを決定するために、判断基準を適用することが
できる。不要なマッピングを回避するために適用されて
いる優れた判断基準の1つは、子ノードが以下の条件を
満たすことである。その条件は、子をグラフ内に有する
こと、子もツリー内に存在するように、拡張されるのは
リンクのツーノードであること、高精度限界406内に
あること、そして、可視限界404の内側にあるか、又
はその親が可視限界404の外側にあること、である。
例えば、この判断基準を図7に適用すると、ノード41
8が高精度限界406の外側にあるので、この技術はノ
ード414からノード416へ移動し、その後停止する
前にノード418に移動する。同様に、ノード422は
可視限界404の外側にあるが、ノード422の親であ
るノード420は可視限界404の内側にあるので、こ
の技術はノード402から中間ノードを介してノード4
20に移動し、その後停止する前にノード422に移動
する。
【0085】これに代わって、図6の技術は、処理ボッ
クス374で、それの子がその後の反復処理中にマッピ
ングされるようにキューにノードを入れるか否かを決定
する別の適切な判断基準を用いてもよい。
【0086】また処理ボックス374は、他の適切な処
理を含むこともできる。例えば、判断ボックス360に
関連して上述されたように算出される子ノードの位置か
ら双曲限界400への距離を、そのノードがペイントさ
れるのに十分な距離可視限界404から離れているか否
かを決定するために使用することができる。もし十分に
離れている場合は、ノードを表示するフィーチャの中心
と、そのフィーチャの高さ及び幅を取得するために更な
る計算が行われ得る。
【0087】キューが空である場合、この技術は次に、
処理ボックス380でペイントスタックから各ノードを
取り出すことができる。ノードに接触するため及び表示
バッファにそのノードをペイントするために、ペインタ
ルーチン224を呼出すことが可能である。ノードをペ
イントする間に、ペインタルーチン224はまた、表示
バッファへの適切なリンクをペイントする。ノード及び
リンクのペイントは、ユニットディスクから表示領域へ
のマッピングを含み、これは、米国特許第5,590,250号
の図11から13に関して説明されるように実施される
ことが可能である。ペイントは、先ずリンクに対して実
行され、次に子、次に親に対して実行され得る。また、
ペインタルーチン224は、ナビゲーションにおいてそ
の方向が重要な方向であるので、開始ノード402から
ルートノード410への方向を色着きの印等で視覚的に
示すことができる。他の全ての方向はツリーの下方へ進
むので、その方向のみがツリーの上方及び横方向に進む
ため重要である。
【0088】ノードに接触する状態で、ペインタルーチ
ン224はノード生成を開始することができる。またペ
インタルーチン224は、新しく生成された各ノードを
新しい編集としてマークすることができる。結果とし
て、新たに生成されたノードは、その後図5の処理ボッ
クス312、324又は334でレイアウトされる。
【0089】ペイントが完了すると、表示バッファは、
その内容がディスプレイ204に表示され、結果として
グラフの表現のユーザに提供されるように、処理ボック
ス382で切り替えられ得る。
【0090】図6の技術は、双曲限界400の半径の約
0.9993に相当する半径を有する可視限界404で上手く
実施された。そして高精度限界406の半径は、可視限
界404の半径と双曲限界400の半径との間で適切に
選択され得る。例えば、高精度限界406は、双曲限界
400の半径の約0.9995に相当する半径を有することが
できる。
【0091】上述の実施に類似の実施は、IBM互換P
Cのプロセッサ上でうまく実行されたが、実施は任意の
適切なプロセッサを有する他の装置で実行されてもよ
い。
【0092】上述の実施に類似の実施は、32ビットのウ
インドウズ(Windows)環境でC++言語を用いてうまく実
行されたが、非オブジェクト指向環境を含む他のプログ
ラム言語及び環境を用いてもよく、また、リスプ(Lis
p)、ユニックス(Unix)環境、ANSI C、及びパスカル(Pas
cal)等のような他のプラットフォームを用いてもよい。
【0093】上述の実施に類似の実施は、XML準拠フ
ォーマット及びある実験的フォーマットで表示されるノ
ード−リンクデータを用いてうまく実行されたが、本発
明は、静的又は動的いずれかの、メモリ内又はネットワ
ークを介してのように任意の適切な方法でアクセス可能
な、任意の適切なタイプのノード−リンクデータを用い
て実行されてもよい。
【0094】上述の実施に類似の実施は、ナビゲーショ
ン信号に応答してグラフの1つの表現又はアニメーショ
ン化された一連の表現を準備及び表示する各反復を用い
て実施されたが、本発明は他のタイプの信号又は呼出し
によって呼出される他のタイプの反復を用いて実施され
てもよい。
【0095】上述の実施に類似の実施は、キーボード及
びマウスから受信され、且つランピング他の米国特許第
5,619,632号に開示されている表現のようなノード−リ
ンク構造の特定のタイプの表現の表示された表現又はア
ニメーション化された一連の表現に関係するナビゲーシ
ョン信号を用いてうまく実行された。しかしながら、本
発明は、ナビゲーション信号を用いて又は用いずに実施
されてもよい。例えば、あるノードの子の異なるソーテ
ィングに応答して、又はある構造の要素への異なるフィ
ルタの適用に応答して、要素を動き回らせてもよい。ま
た、本発明は、任意の適切なタイプの拡張及び収縮信
号、又は外部の照会、示されたノード又はリンクの下に
拡張を要求するメニューエントリーのような項目の選
択、又は現在の焦点の下に拡張を要求するメニューエン
トリーのような項目の選択から生じた信号を含む他のナ
ビゲーション信号を用いて実施されてもよい。ナビゲー
ション信号は、代わりに、ビデオゲーム又はバーチャル
リアリティ環境によって生成される空間のような現実に
は無い空間又はディスプレイ以外の表示空間に関係して
もよく、また、ナビゲーション信号は、代わりに、他の
種類の位置決め装置、及び英数字又は声、身振りのよう
な言語的入力、又は他の様式のユーザ入力を受信するた
めの他の種類の装置を含む、任意の適切なユーザ入力装
置によって生成されてもよい。更に、本発明はノード−
リンク構造の他のタイプの表現と共に実施されてもよ
い。本発明は、アニメーションを一切使用せずに、又は
あらゆる適切なアニメーション技術を使用して、実施さ
れてもよい。
【0096】上述の実施は、双曲平面にレイアウトされ
たノード−リンク構造をマッピングし、その構造をユニ
ットディスクにマッピングするが、本発明は、あらゆる
適切な方法でレイアウトされたノード−リンク構造をあ
らゆる適切な負曲空間にマッピングすることができ、そ
の構造をあらゆる適切なレンダリング空間にマッピング
することが可能である。
【0097】上述の実施は、開始ノードからのノードの
パスに基づいて、双曲平面からユニットディスクにマッ
ピングする。また本発明は、他のあらゆる適切な負曲空
間から適切なレンダリング空間にマッピングするために
も実施されることが可能であり、更にリンクのパス又は
ノードとリンクとを組み合わせたパスに基づいてマッピ
ングすることもできる。
【0098】上述の実施は、特定の方法でノードのその
親との相対位置を示すデータを、位置の変位及び角度の
変位と共に使用するが、本発明は、子又は子孫等の他の
あらゆる適切な方法で関係する要素に対する相対位置を
示すデータにより実施されることが可能であり、相対位
置は他の変位の組み合わせ、又は他のあらゆる適切な方
法で示されてよい。
【0099】上述の実施は、ユーザからの信号に基づい
て開始ノード及び開始位置を識別するデータを取得する
が、ノード−リンク構造の他の要素を識別するデータが
取得されてもよく、またノード又は他の要素及び開始位
置を識別するデータが、実行されているコードからの呼
出し等による他の方法で取得されてもよい。
【0100】上述の実施は、ノードの子孫をマッピング
するか否かを決定するために所定の判断基準を適用する
が、本発明は、マッピングされたノードのそれぞれの子
孫全てをマッピングすることによって、又はどの要素が
マッピングされるべきか否かを決定するために他のあら
ゆる適切な判断基準を適用することによって実施されて
もよい。
【0101】上述の実施は、ツリーの要素をマッピング
するのに適している。本発明は、一般的なグラフ等の他
のタイプのノード−リンク構造の要素をマッピングする
ために使用されてもよい。
【0102】上述の実施は、特定のタイプのメモリ管理
により、グラフ内のツリーを定義するためのリンクの拡
張フラグを含むノード−リンクデータを用いるが、本発
明は、任意の他の適切な方法で定義され、任意の適切な
方法でメモリにロードされるノード−リンク構造を用い
て実施されてもよい。
【0103】上述の実施は、ユニットディスクの半径と
の関係から、双曲限界からの距離が固定である高精度限
界を用いるマッピングルートを選択する。本発明は、ル
ート要素から、又はノード−リンク構造の他の適切な要
素からのマッピングにより実施されることが可能であ
る。従って、高精度限界とは別の判断基準が、マッピン
グルートを選択するために使用されてもよく、また高精
度限界はあらゆる適切な方法で定義されてよい。
【0104】上述の実施は、フロムノードからの出リン
クのためのリスト、及びツーノードへの入リンクのため
のリストの、2つのリンクされたリスト内の項目として
リンクが表わされる、有向グラフデータ構造を使用す
る。他のあらゆる適切なデータ構造が使用されてもよ
い。
【0105】上述の実施は、循環有向グラフを含む有向
グラフを扱うことができるが、本発明は、他のタイプの
リンクを有向グラフの適切な組合せに変換することによ
って、又は別様ではグラフの構造をツリーにマッピング
するためのプロトコルを供給することによって、他のタ
イプのグラフ用に実施されてもよい。例えば、2つのノ
ード間の無向リンクが、同じノードの間の1対の有向リ
ンクに変換されてもよく、又は適切な基準に基づいて方
向を割り当てられてもよい。一般的に、全ての無向リン
クが1対の有向リンクへと変換されている表現は、結果
的に有向リンクの各対が循環するので、視覚的に混乱さ
せる傾向があるが、別の方法で循環を表示することによ
ってこの混乱は克服されるかもしれない。
【0106】上述の実施では、処理は多くの場合に変更
されてもよい順位で行われる。例えば、図5では、幅優
先巡回よりも深さ優先巡回が実行されてもよく、また各
ノードは、全てのノードがマッピングされてからではな
く、個々のノードがレンダリング空間にマッピングされ
た直後にペイントされてもよい。
【0107】同じく、上述の実施では、幾つかのソフト
ウェアの部分が、グラファ、ウォーカ、ペインタ、及び
数学ルーチン、並びにクライアントのように区別される
が、本発明は、ハードウェア及びソフトウェアの他の組
合せ並びに任意の適切な方法で構成されたソフトウェア
で実施されてもよい。
【0108】本発明は、ノード−リンク構造の対話式ブ
ラウザの提供に適用された。本発明は、ノード−リンク
構造が視覚化される様々なコンテキストに適用され得
る。特に、本発明は、キャッシュに格納された1組のウ
ェブページ又は他のウェブオブジェクトによって形成さ
れた構造のような、ウェブ関連構造の視覚化に適用され
得る。
【0109】より一般的には、本発明は、組織図、ファ
イルシステム階層、ハイパーテキスト階層、ワールドワ
イドウェブ接続性構造、パーツ分解、SGML構造、又
は任意の他の大きなノード−リンク構造のためのブラウ
ザの提供に適用され得る。このブラウザは、構造又は構
造の内容の編集に用いられてもよい。
【0110】本発明は、ソフトウェアとしての実施例に
関係して述べられてきたが、本発明は専用ハードウェア
を用いて実施されてもよい。
【図面の簡単な説明】
【図1】親と子とを有するノード−リンク構造内の要素
から、マッピングがどのように実行され得るかを示す概
略的なフローダイアグラムである。
【図2】図1に示されるようにマッピングを実行する際
の一般的な処理を示すフローチャートである。
【図3】図1に示されるようにマッピングを実行する装
置の一般的な構成要素を示す概略図である。
【図4】システムの概略図である。
【図5】図4のシステムが、有向グラフの表現の表示に
関するイベントにどのように応答し得るかを示すフロー
チャートである。
【図6】図5のマッピングがどのように実行され得るか
を示すフローチャートである。
【図7】ユニットディスクの変形された表現を示す概略
図である。
【符号の説明】
10 ノード−リンク構造 22 開始要素 24 親ノード 26 子ノード 32 開始位置 400 双曲限界 402 開始ノード 404 可視限界 406 高精度限界 410 ルートノード
───────────────────────────────────────────────────── フロントページの続き (72)発明者 ジョン オー.ランピング アメリカ合衆国 94024 カリフォルニア 州 ロス アルトス エヴァ アベニュー 1299 (72)発明者 ティチョミア ジー.テネヴ アメリカ合衆国 95123 カリフォルニア 州 サンノゼ クリー ドライブ 610

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】 負曲率を有する空間にレイアウトされた
    ノード−リンク構造をレンダリング空間にマッピングす
    るための方法であって、 (A)前記ノード−リンク構造内の開始要素を識別する
    データを取得するステップと、 (B)前記レンダリング空間内の開始位置に前記開始要
    素を配置するステップと、 (C)前記ノード−リンク構造内の他の要素から成るセ
    ットのそれぞれに対して、前記負曲率を有する空間内の
    前記要素の位置を前記レンダリング空間内の位置にマッ
    ピングするステップと、 を含み、ステップ(C)において、前記他の要素から成
    るセットは、前記開始要素の少なくとも親と子とを含
    み、前記他の要素から成るセット内の個々の要素は前記
    セット内の要素のみを通るパスによって前記開始要素か
    ら到達可能であり、各要素のパスは該パス内に前記要素
    の直前の先行要素を含み、 ステップ(C)におけるマッピングの処理は、前記他の
    要素から成るセット内の個々の要素に対して、前記レン
    ダリング空間における前記要素の位置を取得するため
    に、前記要素の前記負曲率を有する空間内の前記先行要
    素との相対位置と、前記レンダリング空間内の前記先行
    要素の位置とを使用する、 ノード−リンク構造のレンダリング空間へのマッピング
    方法。
JP11214492A 1998-07-29 1999-07-29 ノ―ド―リンク構造のレンダリング空間へのマッピング方法 Pending JP2000155856A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US124529 1993-09-22
US09/124,529 US6300957B1 (en) 1998-07-29 1998-07-29 Mapping a node-link structure to a rendering space beginning from any node

Publications (1)

Publication Number Publication Date
JP2000155856A true JP2000155856A (ja) 2000-06-06

Family

ID=22415406

Family Applications (1)

Application Number Title Priority Date Filing Date
JP11214492A Pending JP2000155856A (ja) 1998-07-29 1999-07-29 ノ―ド―リンク構造のレンダリング空間へのマッピング方法

Country Status (3)

Country Link
US (1) US6300957B1 (ja)
EP (1) EP0977153A3 (ja)
JP (1) JP2000155856A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010522916A (ja) * 2007-03-28 2010-07-08 トムソン ライセンシング ナビゲーション経路の生成による表示要素間のナビゲーション方法及びその方法を実施するための装置
JP2013097508A (ja) * 2011-10-31 2013-05-20 Toshiba Corp ツリー表示調整装置

Families Citing this family (58)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6658624B1 (en) * 1996-09-24 2003-12-02 Ricoh Company, Ltd. Method and system for processing documents controlled by active documents with embedded instructions
US6377259B2 (en) 1998-07-29 2002-04-23 Inxight Software, Inc. Presenting node-link structures with modification
WO2000013104A1 (en) * 1998-08-26 2000-03-09 Symtec Limited Methods and devices for mapping data files
US6453241B1 (en) 1998-12-23 2002-09-17 Rosetta Inpharmatics, Inc. Method and system for analyzing biological response signal data
US6714936B1 (en) * 1999-05-25 2004-03-30 Nevin, Iii Rocky Harry W. Method and apparatus for displaying data stored in linked nodes
AU2215201A (en) * 1999-12-20 2001-07-03 Headway Research Limited System and method for computer-aided graph-based dependency analysis
US6897885B1 (en) * 2000-06-19 2005-05-24 Hewlett-Packard Development Company, L.P. Invisible link visualization method and system in a hyperbolic space
US6954218B2 (en) * 2000-10-30 2005-10-11 Microsoft Corporation Method and apparatus for high-performance rendering and hit-testing of a window tree
US6931604B2 (en) * 2000-12-18 2005-08-16 Derek Graham Lane Method of navigating a collection of interconnected nodes
US6934907B2 (en) * 2001-03-22 2005-08-23 International Business Machines Corporation Method for providing a description of a user's current position in a web page
US7627588B1 (en) 2001-05-07 2009-12-01 Ixreveal, Inc. System and method for concept based analysis of unstructured data
US7194483B1 (en) 2001-05-07 2007-03-20 Intelligenxia, Inc. Method, system, and computer program product for concept-based multi-dimensional analysis of unstructured information
USRE46973E1 (en) 2001-05-07 2018-07-31 Ureveal, Inc. Method, system, and computer program product for concept-based multi-dimensional analysis of unstructured information
US6901555B2 (en) 2001-07-09 2005-05-31 Inxight Software, Inc. Tree visualization system and method based upon a compressed half-plane model of hyperbolic geometry
US20100305750A1 (en) * 2001-09-19 2010-12-02 Conley N Sharon Patient Controlled Timed Medication Dispenser
US7124358B2 (en) * 2002-01-02 2006-10-17 International Business Machines Corporation Method for dynamically generating reference identifiers in structured information
US7203701B1 (en) * 2002-02-20 2007-04-10 Trilogy Development Group, Inc. System and method for an interface to provide visualization and navigation of a directed graph
US6928436B2 (en) * 2002-02-28 2005-08-09 Ilog Sa Interactive generation of graphical visualizations of large data structures
US8589413B1 (en) 2002-03-01 2013-11-19 Ixreveal, Inc. Concept-based method and system for dynamically analyzing results from search engines
TWI290697B (en) * 2002-10-25 2007-12-01 Hon Hai Prec Ind Co Ltd System and method for analyzing and mapping patent information
TWI290698B (en) * 2002-12-20 2007-12-01 Hon Hai Prec Ind Co Ltd System and method for updating and displaying patent citation information
US7089266B2 (en) 2003-06-02 2006-08-08 The Board Of Trustees Of The Leland Stanford Jr. University Computer systems and methods for the query and visualization of multidimensional databases
US20050278362A1 (en) * 2003-08-12 2005-12-15 Maren Alianna J Knowledge discovery system
US7333997B2 (en) * 2003-08-12 2008-02-19 Viziant Corporation Knowledge discovery method with utility functions and feedback loops
US7756907B2 (en) * 2003-09-16 2010-07-13 The Board Of Trustees Of The Leland Stanford Jr. University Computer systems and methods for visualizing data
US20050132305A1 (en) * 2003-12-12 2005-06-16 Guichard Robert D. Electronic information access systems, methods for creation and related commercial models
US7587409B2 (en) * 2004-09-24 2009-09-08 Sas Institute Inc. Computer-implemented system and method for handling node-link representations
EP1812898A2 (en) * 2004-11-02 2007-08-01 Eagleforce Associates System and method for predictive analysis and predictive analysis markup language
US7800613B2 (en) * 2004-12-02 2010-09-21 Tableau Software, Inc. Computer systems and methods for visualizing data with generation of marks
EP1877968A2 (en) * 2005-04-12 2008-01-16 Alianna J. Maren System and method for evidence accumulation and hypothesis generation
US20060277476A1 (en) * 2005-06-02 2006-12-07 Hsuan-Cheng Lai Method and system for dynamic generation of graphical content using a markup language
US8914726B2 (en) * 2005-08-20 2014-12-16 Riverbed Technology, Inc. Visualizing a complex network based on a set of objects of interest
WO2007027967A2 (en) * 2005-08-31 2007-03-08 Eagleforce Associates System for hypothesis generation
US8099674B2 (en) 2005-09-09 2012-01-17 Tableau Software Llc Computer systems and methods for automatically viewing multidimensional databases
US7788251B2 (en) 2005-10-11 2010-08-31 Ixreveal, Inc. System, method and computer program product for concept-based searching and analysis
US7657848B2 (en) * 2006-01-09 2010-02-02 Sas Institute Inc. Computer-implemented node-link processing systems and methods
US7676485B2 (en) 2006-01-20 2010-03-09 Ixreveal, Inc. Method and computer program product for converting ontologies into concept semantic networks
US7487464B2 (en) * 2006-02-16 2009-02-03 International Business Machines Corporation Enhanced visualization and selection of multi-layered elements in a containment hierarchy
US7999809B2 (en) * 2006-04-19 2011-08-16 Tableau Software, Inc. Computer systems and methods for automatic generation of models for a dataset
CN101136106B (zh) * 2006-08-30 2010-07-07 国际商业机器公司 基于双曲几何显示加权树的方法和计算机系统
US8782043B2 (en) * 2007-07-10 2014-07-15 Nbc Universal, Inc. Multi-sided media viewer and technique for media association
US20110314382A1 (en) * 2010-06-22 2011-12-22 Primal Fusion Inc. Systems of computerized agents and user-directed semantic networking
US8805861B2 (en) * 2008-12-09 2014-08-12 Google Inc. Methods and systems to train models to extract and integrate information from data sources
US9245243B2 (en) 2009-04-14 2016-01-26 Ureveal, Inc. Concept-based analysis of structured and unstructured data using concept inheritance
JP5921536B2 (ja) * 2010-06-22 2016-05-24 プライマル フュージョン インコーポレイテッド コンピュータ化エージェントのシステムとユーザ指図セマンティックネットワーキング
US10795943B1 (en) 2013-08-08 2020-10-06 Teal Rainsky Rogers Three-dimensional network mapping system and method
US10372794B1 (en) * 2013-08-08 2019-08-06 Teal Rainsky Rogers Three-dimensional network mapping system and method
US9424318B2 (en) 2014-04-01 2016-08-23 Tableau Software, Inc. Systems and methods for ranking data visualizations
US20150278214A1 (en) 2014-04-01 2015-10-01 Tableau Software, Inc. Systems and Methods for Ranking Data Visualizations Using Different Data Fields
US9613102B2 (en) 2014-04-01 2017-04-04 Tableau Software, Inc. Systems and methods for ranking data visualizations
US11310121B2 (en) * 2017-08-22 2022-04-19 Moovila, Inc. Systems and methods for electron flow rendering and visualization correction
US10896297B1 (en) 2017-12-13 2021-01-19 Tableau Software, Inc. Identifying intent in visual analytical conversations
CN115842907A (zh) * 2018-03-27 2023-03-24 京东方科技集团股份有限公司 渲染方法、计算机产品及显示装置
US11055489B2 (en) 2018-10-08 2021-07-06 Tableau Software, Inc. Determining levels of detail for data visualizations using natural language constructs
US11314817B1 (en) 2019-04-01 2022-04-26 Tableau Software, LLC Methods and systems for inferring intent and utilizing context for natural language expressions to modify data visualizations in a data visualization interface
US11455339B1 (en) 2019-09-06 2022-09-27 Tableau Software, LLC Incremental updates to natural language expressions in a data visualization user interface
US11233705B2 (en) * 2019-12-23 2022-01-25 Robert Brennan Garvey System and method for visualizing and navigating network data
CN113345056A (zh) * 2021-06-04 2021-09-03 山东捷瑞数字科技股份有限公司 一种链传动高仿真动画的产生方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2646256A1 (fr) 1989-04-24 1990-10-26 Digital Equipment Int Procede pour realiser des dessins a l'aide d'un ordinateur
CA2097232C (en) 1993-05-28 1999-01-19 Phillip J. Beaudet Displaying partial graphs by expanding and collapsing nodes
US5590250A (en) 1994-09-14 1996-12-31 Xerox Corporation Layout of node-link structures in space with negative curvature
US5619632A (en) * 1994-09-14 1997-04-08 Xerox Corporation Displaying node-link structure with region of greater spacings and peripheral branches
US6032216A (en) * 1997-07-11 2000-02-29 International Business Machines Corporation Parallel file system with method using tokens for locking modes

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010522916A (ja) * 2007-03-28 2010-07-08 トムソン ライセンシング ナビゲーション経路の生成による表示要素間のナビゲーション方法及びその方法を実施するための装置
JP2013097508A (ja) * 2011-10-31 2013-05-20 Toshiba Corp ツリー表示調整装置

Also Published As

Publication number Publication date
US6300957B1 (en) 2001-10-09
EP0977153A2 (en) 2000-02-02
EP0977153A3 (en) 2007-10-10

Similar Documents

Publication Publication Date Title
JP2000155856A (ja) ノ―ド―リンク構造のレンダリング空間へのマッピング方法
US6377259B2 (en) Presenting node-link structures with modification
JP4864181B2 (ja) ノード表示装置
US6654761B2 (en) Controlling which part of data defining a node-link structure is in memory
JP2000067086A (ja) ノ―ド―リンクデ―タ取得方法
US5619632A (en) Displaying node-link structure with region of greater spacings and peripheral branches
JP3630791B2 (ja) ノードリンク構造レイアウト方法及びマシン動作方法
US5467444A (en) Method of three-dimensional display of object-oriented figure information and system thereof
US4731606A (en) Method for rapid windowing of display information in computer graphics
EP0435601B1 (en) Display of hierarchical three-dimensional structures
JPH0527677A (ja) 図形情報の3次元表示方法及び装置
Noser et al. Dynamic 3D visualization of database-defined tree structures on the WWW by using rewriting systems
JP3249902B2 (ja) 画像データ検索装置
JP3346130B2 (ja) グラフ図形配置法およびその装置
CN114090666A (zh) 幻灯片显示方法、装置、设备以及存储介质
Huang et al. On-line visualization and navigation of the global web structure
Nakamura et al. Interactive Graphics and Spatial Data Management for GIS using the Hierarchical Data Structure
Frangeš et al. Current changes in cartographic visualization
JP2004199130A (ja) 情報視覚化方法、装置、プログラム
Douma et al. SpicyNodes Radial Map Engine
Chan et al. QL/G: A Spatial Database Management System
Glover et al. A graphics environment for CIM applications
NAKAMURA et al. Central Research Laboratory Mitsubishi Electric Corporation
CA2358533A1 (en) Method and apparatus for displaying and navigating a data structure on a display unit
van Oosterom Geographic Information Systems

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060706

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20081007

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20090107

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20090113

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20090609