JP5858731B2 - Tree display adjustment device - Google Patents

Tree display adjustment device Download PDF

Info

Publication number
JP5858731B2
JP5858731B2 JP2011238590A JP2011238590A JP5858731B2 JP 5858731 B2 JP5858731 B2 JP 5858731B2 JP 2011238590 A JP2011238590 A JP 2011238590A JP 2011238590 A JP2011238590 A JP 2011238590A JP 5858731 B2 JP5858731 B2 JP 5858731B2
Authority
JP
Japan
Prior art keywords
node
tree
display adjustment
tree display
nodes
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
JP2011238590A
Other languages
Japanese (ja)
Other versions
JP2013097508A (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.)
Toshiba Corp
Original Assignee
Toshiba 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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP2011238590A priority Critical patent/JP5858731B2/en
Publication of JP2013097508A publication Critical patent/JP2013097508A/en
Application granted granted Critical
Publication of JP5858731B2 publication Critical patent/JP5858731B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本明細書に記載の実施の形態は、ツリー表示調整装置に関する。   Embodiments described herein relate to a tree display adjustment device.

ツリー構造は、ある階層に属する一つのデータから、下位階層に位置する複数のデータが枝分かれした状態で配置されている構造であり、様々な局面で使用されている。開発者などがツリー構造をコンピュータ上で図示させて、検証、改良等の作業を行うことが一般的に行われている。   A tree structure is a structure in which a plurality of data located in a lower hierarchy is branched from one data belonging to a certain hierarchy, and is used in various aspects. In general, a developer or the like makes a tree structure illustrated on a computer and performs operations such as verification and improvement.

特開2006−048531号公報JP 2006-048531 A

しかしながら、ツリー構造が大きくなってノードの数が多数になり、あるいはツリー構造が複雑化するに従い、ツリー構造の内容を一目して把握することが困難になり、ツリー構造を整列させる必要が生ずる。しかし、ツリー構造におけるノードを、手動にて目的の配置に整列させることは負担が大きく、またどのような配置が見やすく理解しやすい配置となるかを直感的に見出すことも困難である。   However, as the tree structure becomes larger and the number of nodes becomes larger or the tree structure becomes more complicated, it becomes difficult to grasp the contents of the tree structure at a glance, and it becomes necessary to arrange the tree structures. However, manually arranging the nodes in the tree structure to the target arrangement is burdensome, and it is difficult to intuitively find out what kind of arrangement is easy to see and understand.

本発明は、ツリー構造を望ましいレイアウトに調整させて表示させることが可能な技術を提供することを目的とする。   An object of the present invention is to provide a technique capable of adjusting and displaying a tree structure in a desired layout.

一の実施の形態によれば、ツリー表示調整装置が提供される。ツリー表示提供装置は第1の決定手段と、第2の決定手段と、回転移動手段とを有している。   According to one embodiment, a tree display adjustment device is provided. The tree display providing device has first determination means, second determination means, and rotational movement means.

第1の決定手段は、ユーザの入力に応じて決定される値である第1の値及び第2の値を決定する。第2の決定手段は、対象となる部分木における親子ノード間の距離である半径方向距離が第1の値となるようにするとともに、全子ノードの情報に基づき兄弟ノードの処理順を決定し、最初に位置決定される前記子ノードを基準位置に配置し、隣接する前記兄弟ノード間の回転方向距離が所定の値以上になるように各子ノードの位置決定を行った後、親ノードの位置決定を行う。回転移動手段は、前記第2の値に応じて前記対象となる部分木を回転移動させる。 The first determining means determines a first value and a second value that are values determined in accordance with a user input. The second determination means sets the radial distance, which is the distance between the parent and child nodes in the target subtree, to the first value, and determines the processing order of the sibling nodes based on the information of all the child nodes. First, the child node to be positioned is placed at a reference position, and the position of each child node is determined so that the rotation direction distance between adjacent sibling nodes is equal to or greater than a predetermined value. Determine the position . The rotational movement means rotationally moves the target subtree according to the second value.

ツリー表示調整装置の構成例を示す機能ブロック図Functional block diagram showing a configuration example of a tree display adjustment device ツリー表示調整処理の内容を示したフローチャートFlow chart showing the contents of the tree display adjustment process ノード位置決定処理の一例を示すフローチャートA flowchart showing an example of node position determination processing 図4は、兄弟ノード処理順決定処理の一例を示したフローチャートFIG. 4 is a flowchart showing an example of sibling node processing order determination processing 兄弟ノードの処理順決定処理の例を示すためのツリーを示した図The figure which showed the tree for showing the example of processing order decision processing of the sibling node 兄弟ノードの処理順決定処理の例を示すためのツリーを示した別の図Another diagram showing a tree to show an example of processing order determination processing of sibling nodes 葉ノード位置決定処理の一例を示したフローチャートFlow chart showing an example of leaf node position determination processing 図8は、親ノード位置決定処理の一例を示したフローチャートFIG. 8 is a flowchart showing an example of parent node position determination processing ユーザによって選択された対象部分木の例を示す図The figure which shows the example of the object subtree selected by the user ノードの位置を決定するための極座標系を示す図Diagram showing the polar coordinate system for determining the position of a node ノードbが当該座標の位置に配置された状態を示す図The figure which shows the state by which the node b was arrange | positioned in the position of the said coordinate ノードcが葉ノード位置決定処理により決定された座標の位置に配置された状態を示す図The figure which shows the state by which the node c was arrange | positioned in the position of the coordinate determined by the leaf node position determination process ノードdが極座標に配置された状態を示す図The figure which shows the state by which the node d was arrange | positioned at the polar coordinate ノードeが上記極座標の位置に配置された状態を示す図The figure which shows the state by which the node e was arrange | positioned in the position of the said polar coordinate ノードe以下の部分木ツリー全体を原点を中心とした回転移動させた状態を示す図The figure which shows the state which rotated the whole subtree tree below node e centering on the origin ノードf、ノードg、ノードhが極座標系に配置された状態を示す図The figure which shows the state by which the node f, the node g, and the node h are arrange | positioned in the polar coordinate system ノードiが極座標に配置された状態を示す図The figure which shows the state where the node i is arrange | positioned at the polar coordinate ツリー方向θ’とツリー整列方向θを示した図Diagram showing tree direction θ ′ and tree alignment direction θ ツリー方向θ’をツリー整列方向下θに一致するように対象部分木全体を回転移動させた状態を示す図The figure which shows the state which rotated the whole object subtree so that tree direction (theta) 'may correspond to tree alignment direction lower (theta). ツリー表示調整装置の画面表示例を示す図The figure which shows the example of a screen display of a tree display adjustment apparatus 図20に続く、ツリー表示調整装置の画面表示例を示す図The figure which shows the example of a screen display of the tree display adjustment apparatus following FIG. 図21に続く、ツリー表示調整装置の画面表示例を示す図The figure which shows the example of a screen display of the tree display adjustment apparatus following FIG.

添付の図面を参照しながら、本発明の一実施の形態の説明をする。
[用語の定義]
本明細書中で使用する用語の定義を述べる。
An embodiment of the present invention will be described with reference to the accompanying drawings.
[Definition of terms]
Definitions of terms used in this specification will be described.

(1) ツリー
「ツリー」とは、木構造のデータの表示形式をいう。ツリーは、一般的にノードとノード間を結ぶエッジで表される。
(1) Tree “Tree” refers to a display format of tree-structured data. A tree is generally represented by an edge connecting nodes.

(2)ノード
「ノード」とは、ツリー内の枝の分かれる部分である。各ノードは0個以上の子ノードを持つ。子ノードを持つノードは、子ノードの親ノードと呼ばれる。
(2) Node A “node” is a portion where branches in a tree are divided. Each node has zero or more child nodes. A node having a child node is called a parent node of the child node.

(3)兄弟ノード
「兄弟ノード」とは、同じ親ノードを持つノード同士をいう。
(3) Sibling node “Sibling node” refers to nodes having the same parent node.

(4)ルートノード
「ルートノード」とは、木構造の頂点にある最上位ノードをいう。根ノードとも呼ばれる。
(4) Root node “Root node” refers to the highest node at the top of a tree structure. Also called root node.

(5)リーフノード
「リーフノード」とは、子ノードを有さないノードをいう。葉ノードとも呼ばれる。
(5) Leaf node “Leaf node” refers to a node having no child nodes. Also called leaf node.

(6)ツリーの方向
「ツリーの方向」とは、ルートノードの子ノードのうち両端に位置する子ノードの偏角の平均値をいう。「ツリーの方向」は、ルートノードからリーフノードへ広がっていく木のおよそ中心を通る軸の方向である。
(6) Tree direction “Tree direction” refers to the average value of the declinations of child nodes located at both ends of the child nodes of the root node. The “tree direction” is the direction of the axis passing through the approximate center of the tree extending from the root node to the leaf node.

(7)半径方向間隔
「半径方向間隔」とは、親ノードとその子ノードの距離をいう。また、「基準半径方向間隔」は、ツリー構造の整列に用いる半径方向間隔の値で、記号「r」で表す。
(7) Radial interval “Radial interval” refers to the distance between a parent node and its child nodes. The “reference radial direction interval” is a value of the radial direction interval used for arranging the tree structure, and is represented by a symbol “r”.

(8)回転方向間隔
「回転方向間隔」とは、隣り合う同世代ノード間の弧の長さをいう。「基準回転方向間隔」は、ツリー構造の整列に用いる回転方向間隔の値で、記号「l」(英小文字の「エル」)で表す。
(8) Rotation direction interval “Rotation direction interval” refers to the length of an arc between adjacent generation nodes. The “reference rotation direction interval” is the value of the rotation direction interval used for arranging the tree structure, and is represented by the symbol “l” (lower case “el”).

(9)深さ
「深さ」とは、ルートノードからのエッジ数をいう。ルートノードの子ノードは深さが「1」である。同じ親ノードから同一の深さの子ノードは同世代のノードである。
(9) Depth “Depth” refers to the number of edges from the root node. A child node of the root node has a depth of “1”. Child nodes of the same depth from the same parent node are nodes of the same generation.

[ツリー表示調整装置の概要]
本実施の形態にかかるツリー表示調整装置の概要を述べる。
ツリー表示調整装置は、ユーザの操作に応じて、ユーザの選択したノード(「選択ノード」と呼ぶ)以下の部分木に含まれる各ノードを、選択ノードからの位置が適切になるように配置して、適切なレイアウトでツリー構造の表示を行う装置である。
[Outline of tree display adjustment device]
An outline of the tree display adjustment apparatus according to the present embodiment will be described.
The tree display adjustment device arranges each node included in the subtree below the node selected by the user (referred to as a “selected node”) so that the position from the selected node is appropriate according to the user's operation. This is a device that displays a tree structure with an appropriate layout.

ツリー表示調整装置は、選択ノードを中心として見たときに隣り合う同世代ノード間の弧の長さが一定以上になるように選択ノード以下の各ノードを配置する。ツリー表示調整装置によって整列させられると、選択ノードの周りに選択ノードの子ノード及びそれ以降の世代のノードが放射状に並べられる。また、ツリー表示調整装置は、選択ノード以下の親子間の距離(半径方向間隔)をユーザの入力に応じて変化させ、その結果ツリーの広がり具合を変化させることが可能である。   The tree display adjustment device arranges each node below the selected node such that the arc length between adjacent generation nodes is a certain length or more when viewed from the selected node. When aligned by the tree display adjustment device, child nodes of the selected node and nodes of the subsequent generations are arranged radially around the selected node. Further, the tree display adjustment device can change the distance (radial direction interval) between the parent and the child below the selected node in accordance with the user input, and as a result, the extent of the tree can be changed.

ツリー表示調整装置は、ポインティングデバイスによって入力された位置をインタラクティブにツリー構造の整列に反映させる。
ツリー表示調整装置は、画面上に表示された選択ノードとポインティングデバイスによって指定されたポイントとの距離から、基準半径方向距離を計算し、その基準半径方向距離を選択ノード以下の全エッジ(ブランチ)に適用する。
The tree display adjustment apparatus interactively reflects the position input by the pointing device in the arrangement of the tree structure.
The tree display adjustment device calculates the reference radial direction distance from the distance between the selected node displayed on the screen and the point specified by the pointing device, and all the edges (branches) of the reference radial direction distance below the selected node. Applies to

ツリー表示調整装置は、選択ノードからポインティングデバイスにより指定されたポイントへの方向と、ツリー方向とを一致させるようにツリー全体を、ルートノードを中心として回転移動させる。   The tree display adjustment device rotates and moves the entire tree around the root node so that the direction from the selected node to the point designated by the pointing device matches the tree direction.

なお、視覚化されたツリー構造は、設計に使うツールであるため、中心から広がっていく放射状の配置が適しており、ツリー表示調整装置は、このような放射状の配置を実現するものである。   Since the visualized tree structure is a tool used for design, a radial arrangement spreading from the center is suitable, and the tree display adjustment apparatus realizes such a radial arrangement.

また、初めから最適な配置は分からず、試しながら配置するので、ユーザの操作に応じてインタラクティブに結果を視認できる本ツリー表示調整装置は有用である。   In addition, since the optimal arrangement is not known from the beginning, and the arrangement is made while trying, the present tree display adjustment apparatus that can visually check the result interactively according to the user's operation is useful.

また、本ツリー表示調整装置はトップのルートノードだけではなく、ツリーの一部分である部分木に対しても適用可能な配置技術である。そのため、本ツリー表示調整装置は部分的にバランスの悪いツリーを綺麗に並べる場合にも適している。   The tree display adjustment apparatus is an arrangement technique that can be applied not only to the top root node but also to a partial tree that is a part of the tree. Therefore, this tree display adjustment device is also suitable for arranging neatly partially unbalanced trees.

[ツリー表示調整装置の構成例]
本実施の形態にかかるツリー表示調整装置の構成例について説明する。
ツリー表示調整装置は、例えばコンピュータ、ワークステーションなどの情報処理装置によって実現される装置である。この情報処理装置は、演算処理装置(CPU)、主メモリ(RAM)、読出し専用メモリ(ROM)、入出力装置(I/O)、及び必要な場合にはハードディスク装置等の外部記憶装置を具備している装置である。
[Configuration example of tree display adjustment device]
A configuration example of the tree display adjustment apparatus according to the present embodiment will be described.
The tree display adjustment device is a device realized by an information processing device such as a computer or a workstation. The information processing apparatus includes an arithmetic processing unit (CPU), a main memory (RAM), a read-only memory (ROM), an input / output device (I / O), and, if necessary, an external storage device such as a hard disk device. It is a device.

図1は、ツリー表示調整装置の構成例を示す機能ブロック図である。なお、図1に示した各構成要素は、ツリー表示調整装置を機能ごとのまとまりとしてとらえた要素であって、実際のツリー表示調整装置が各構成要素に相当するハードウエア(回路、モジュール、ユニットなど)を備えていることを意味するものではない。なお、以下に構成要素が「接続する」、「接続されている」と記しているが、必ずしも物理的に配線等により接続されていることを指すものではなく、構成要素間でデータや信号を送受信できること意味しており、例えばプログラムモジュールなどの間でのデータの受け渡しの実行も「接続」されていると呼んでいる。   FIG. 1 is a functional block diagram illustrating a configuration example of the tree display adjustment device. Each component shown in FIG. 1 is an element in which the tree display adjustment device is regarded as a group for each function, and the actual tree display adjustment device has hardware (circuit, module, unit) corresponding to each component. Etc.) does not mean that it is equipped. In the following, the components are described as “connected” and “connected”, but this does not necessarily mean that the components are physically connected by wiring or the like, and data and signals between the components are not necessarily indicated. This means that data can be transmitted / received. For example, execution of data exchange between program modules is also called “connected”.

ツリー表示調整装置1は、入力部10と、入力部10に接続されたノード位置決定部30と、ノード位置決定部30に接続するツリー構造データ記憶部40、静的パラメータ値記憶部50と、ノード位置決定部30に接続された出力部20とを有している。   The tree display adjustment apparatus 1 includes an input unit 10, a node position determination unit 30 connected to the input unit 10, a tree structure data storage unit 40, a static parameter value storage unit 50 connected to the node position determination unit 30, And an output unit 20 connected to the node position determination unit 30.

ノード位置決定部30は、動的パラメータ値決定部31、兄弟ノード処理順決定部32、葉ノード位置決定部30、親ノード位置決定部30、ツリー方向変更部35、決定位置記憶部36とを有している。動的パラメータ値決定部31は本実施の形態の第1の決定手段に相当し、葉ノード位置決定部30及び親ノード位置決定部30は、本実施の形態の第2の決定手段に相当し、ツリー方向変更部35は本実施の形態の回転移動手段に相当する。   The node position determination unit 30 includes a dynamic parameter value determination unit 31, a sibling node processing order determination unit 32, a leaf node position determination unit 30, a parent node position determination unit 30, a tree direction change unit 35, and a determination position storage unit 36. Have. The dynamic parameter value determination unit 31 corresponds to the first determination unit of the present embodiment, and the leaf node position determination unit 30 and the parent node position determination unit 30 correspond to the second determination unit of the present embodiment. The tree direction changing unit 35 corresponds to the rotation moving unit of the present embodiment.

入力部10は、ノードの位置を決定するためのユーザの操作内容を出力する手段であって、例えばポインティングデバイス、タッチパネルなどである。
ノード位置決定部30は、入力部10から入力に基づいて、動的パラメータ値である基準半径方向距離r、ツリー整列方向θを決定し、これらに基づいてツリー中の選択されたノード群(後述する処理対象部分木)中の各ノードの位置を決定し、決定した位置に基づいてツリーを表示させる機能を有する。基準半径方向距離rは本実施の形態の第1の値に相当し、ツリー整列方向θは本実施の形態の第2の値に相当する。
The input unit 10 is means for outputting a user operation content for determining the position of the node, and is, for example, a pointing device or a touch panel.
The node position determination unit 30 determines a reference radial direction distance r and a tree alignment direction θ, which are dynamic parameter values, based on an input from the input unit 10, and based on these, a selected node group (described later) in the tree. A function of determining the position of each node in the processing target subtree) and displaying the tree based on the determined position. The reference radial direction distance r corresponds to the first value of the present embodiment, and the tree alignment direction θ corresponds to the second value of the present embodiment.

ツリー構造データ記憶部40は、ツリー構造データを記憶する機能を有する。
静的パラメータ値記憶部50は、静的パラメータである基準回転方向距離lを記憶する機能を有する。基準回転方向距離lは本実施の形態の所定の値に相当する。
The tree structure data storage unit 40 has a function of storing tree structure data.
The static parameter value storage unit 50 has a function of storing a reference rotational direction distance l that is a static parameter. The reference rotational direction distance l corresponds to a predetermined value in the present embodiment.

出力部20は、ノード位置決定部30によって決定されたノードの位置に基づいてツリーを表示する機能を有し、例えば液晶ディスプレイ装置である。
動的パラメータ値決定部31は入力部の操作に応じて動的に変化する値である動的パラメータの値を決定する機能を有する。
The output unit 20 has a function of displaying a tree based on the position of the node determined by the node position determination unit 30, and is a liquid crystal display device, for example.
The dynamic parameter value determination unit 31 has a function of determining a value of a dynamic parameter that is a value that dynamically changes according to an operation of the input unit.

兄弟ノード処理順決定部32は、兄弟ノードが複数存在する場合、ノードの位置決定処理を実行する順番を決定する機能を有し、後述する兄弟ノード処理順決定処理を実行する。   The sibling node processing order determination unit 32 has a function of determining the order in which node position determination processing is executed when there are a plurality of sibling nodes, and executes the sibling node processing order determination processing described later.

葉ノード位置決定部30は、位置決定をしようとするノードが葉ノードである場合に、当該葉ノードの位置決定を行う機能を有し、後述する葉ノード位置決定処理を実行する。   The leaf node position determination unit 30 has a function of determining the position of the leaf node when the node whose position is to be determined is a leaf node, and executes a leaf node position determination process described later.

親ノード位置決定部30は、位置決定をしようとするノードが親ノードである場合に、当該親ノードの位置決定を行う機能を有し、後述する親ノード位置決定処理を実行する。   The parent node position determination unit 30 has a function of determining the position of the parent node when the node whose position is to be determined is a parent node, and executes a parent node position determination process described later.

ツリー方向変更部は、処理対象部分木のツリー方向をツリー整列方向に一致させるように処理対象部分木を回転移動させる機能を有し、後述するツリー方向変更処理を実行する。   The tree direction changing unit has a function of rotating the processing target subtree so that the tree direction of the processing target subtree matches the tree alignment direction, and executes a tree direction changing process described later.

決定位置記憶部36は、ツリー方向変更部35によって、回転移動させられた後の各ノードの位置情報を記憶する機能を有する。記憶された各ノードの位置情報に基づいて、出力部20にレイアウトの調整されたツリーが表示される。   The determined position storage unit 36 has a function of storing the position information of each node after being rotated and moved by the tree direction changing unit 35. Based on the stored position information of each node, a tree whose layout has been adjusted is displayed on the output unit 20.

[ツリー表示調整]
以下に、ツリー表示調整装置による処理の概要について説明する。
[用いられるパラメータ]
[Adjust tree display]
The outline of processing by the tree display adjustment apparatus will be described below.
[Parameters used]

ツリー表示調整装置は、ツリー表示調整処理を実行するために3つのパラメータを使用する。3つのパラメータとは基準半径方向間隔r、基準回転方向間隔l、ツリー整列方向θである。   The tree display adjustment device uses three parameters to execute the tree display adjustment process. The three parameters are a reference radial direction interval r, a reference rotation direction interval l, and a tree alignment direction θ.

基準半径方向間隔rは、ユーザの入力操作により定まる動的パラメータであって、例えばツリー表示調整装置は、ポインティングデバイスによるドラッグ&ドロップ操作により決定する、ポインタの移動開始点とポインタの移動終了点との距離を半径方向間隔rとして記憶し、計算に使用する。   The reference radial direction interval r is a dynamic parameter determined by the user's input operation. For example, the tree display adjustment apparatus determines a pointer movement start point and a pointer movement end point determined by a drag and drop operation with a pointing device. Is stored as the radial interval r and used for the calculation.

ツリー整列方向θは、ユーザによる入力操作により定まるパラメータであって、例えばツリー表示調整装置は、ポインティングデバイスによるドラッグ&ドロップ操作により決定する、選択ノードの座標とポインタの移動終了点とを結ぶ線分により決定される方向(角度)である。   The tree alignment direction θ is a parameter determined by an input operation by the user. For example, the tree display adjustment device determines a line segment connecting the coordinates of the selected node and the pointer movement end point, which is determined by a drag and drop operation by the pointing device. The direction (angle) determined by

基準回転方向間隔lは、あらかじめ設定された値を有する静的パラメータである。基準回転方向間隔lは、上記基準半径方向間隔r及びツリー整列方向θとは異なり、別途ユーザ等により指定される値である。
[ツリー表示調整装置の動作(ツリー表示調整処理)]
The reference rotation direction interval l is a static parameter having a preset value. Unlike the reference radial direction interval r and the tree alignment direction θ, the reference rotation direction interval l is a value separately designated by the user or the like.
[Operation of the tree display adjustment device (tree display adjustment processing)]

次に、ツリー表示調整装置1の動作について説明する。図2は、ツリー表示調整装置1の主たる動作である、ツリー表示調整処理の内容を示したフローチャートである。   Next, the operation of the tree display adjustment apparatus 1 will be described. FIG. 2 is a flowchart showing the contents of the tree display adjustment process, which is the main operation of the tree display adjustment apparatus 1.

まず、ユーザが表示されているツリー構造のうち、整列させたい部分(対象部分木と呼ぶ)の最も上位のノード(対象部分木ルートノードと呼ぶ)から、所望のエッジの長さの距離分だけポインティングデバイスのポインタをドラッグするツリー表示調整装置1は、このドラッグ&ドロップにより出力される(ポインティングデバイスのポインタの座標(以下、ポインティングデバイス座標という)を取得する(S10)。ポインティングデバイス座標のドラッグ開始位置により、処理対象部分木の部分木ルートノードが特定される、   First, in the tree structure where the user is displayed, only the distance of the desired edge length from the highest node (called the target subtree root node) of the part (called the target subtree) to be arranged The tree display adjustment apparatus 1 that drags the pointer of the pointing device acquires the coordinates of the pointer of the pointing device (hereinafter referred to as pointing device coordinates) output by this drag and drop (S10). The subtree root node of the processing target subtree is identified by the position.

次に、ツリー表示調整装置1はポインティングデバイス座標のドラッグ開始位置及び終了位置にから基準半径方向距離rを算出する(S20)。   Next, the tree display adjustment apparatus 1 calculates the reference radial direction distance r from the drag start position and end position of the pointing device coordinates (S20).

次に、ツリー表示調整装置1は、ポインティングデバイス座標のドラッグ開始位置及び終了位置にからツリー整列方向を算出する(S30)。   Next, the tree display adjusting apparatus 1 calculates the tree alignment direction from the drag start position and end position of the pointing device coordinates (S30).

次にツリー表示調整装置1はノード位置決定処理を実行する(S40)ノード位置決定処理の内容については後述する。
次にツリー表示調整装置1はノード位置決定処理により決定された各ノードの位置(座標)に基づいて、ツリーを描画する(S50)。
Next, the tree display adjustment apparatus 1 executes a node position determination process (S40). Details of the node position determination process will be described later.
Next, the tree display adjustment device 1 draws a tree based on the position (coordinates) of each node determined by the node position determination process (S50).

次に、ツリー表示調整装置1は、ポインティングデバイスのポインタ(又はボタンなど)が離されたか否かを判定する(S60)。離されたと判定した場合(S60、Yes)、ツリー表示調整装置1は、ツリー表示調整装置1はツリー表示調整処理を終了する。一方、離されていないと判定した場合(S60、No)、ツリー表示調整装置1は、ステップS10に戻りツリー表示調整処理を続行する。この場合、その時点のポインティングデバイス座標を新たなドラッグ終了位置として、新たな基準半径方向間隔r及びツリー整列方向θが定まり、これらに基づいてツリー表示調整処理が再実行される。そのため、ユーザはポインティングデバイスのポインタを動かし続けることによって、ツリーの表示をインタラクティブに変化させて視認し続けることが出来、好ましいレイアウトを発見することが容易となる。   Next, the tree display adjustment apparatus 1 determines whether or not the pointer (or button or the like) of the pointing device has been released (S60). When it determines with having been released (S60, Yes), the tree display adjustment apparatus 1 complete | finishes a tree display adjustment process. On the other hand, if it is determined that they are not released (S60, No), the tree display adjustment device 1 returns to step S10 and continues the tree display adjustment processing. In this case, the new reference radius direction interval r and the tree alignment direction θ are determined with the pointing device coordinates at that time as the new drag end position, and the tree display adjustment process is executed again based on these. Therefore, by continuing to move the pointer of the pointing device, the user can interactively change the display of the tree and continue to visually recognize it, and it becomes easy to find a preferred layout.

以上で、ツリー表示調整装置1の主たる動作である、ツリー表示調整処理の説明を終了する。   This is the end of the description of the tree display adjustment process, which is the main operation of the tree display adjustment apparatus 1.

[ノード位置決定処理]
次にツリー表示調整処理中のノード位置決定処理(図2、S40)の内容を説明する。図3はノード位置決定処理の一例を示すフローチャートである。
[Node location processing]
Next, the contents of the node position determination process (FIG. 2, S40) during the tree display adjustment process will be described. FIG. 3 is a flowchart showing an example of the node position determination process.

ノード位置決定処理に入ると、ツリー表示調整装置1、より詳しくはノード位置決定部30は、処理対象ノードが葉ノードか否かを判定する(S110)。葉ノードでないと判定した場合(S110、No)、ツリー表示調整装置1、より詳しくはノード位置決定部30は、ツリー構造データ記憶部40から処理対象ノードの全子ノードの情報を取得する(S120)。なお、処理対象ノードが決定されてない場合は、対象部分木ルートノードが処理対象ノードとされる。   Upon entering the node position determination process, the tree display adjustment device 1, more specifically the node position determination unit 30, determines whether or not the processing target node is a leaf node (S110). When it is determined that the node is not a leaf node (S110, No), the tree display adjustment device 1, more specifically, the node position determination unit 30 acquires information on all child nodes of the processing target node from the tree structure data storage unit 40 (S120). ). If the processing target node is not determined, the target subtree root node is set as the processing target node.

次にツリー表示調整装置1、より詳しくは兄弟ノード処理順決定部32はステップS120において取得した情報に基づいて兄弟ノード処理順決定処理を実行する(S130)。兄弟ノード処理順決定処理は、兄弟ノードのうちどのノードを処理対象として選択するかの順番を定める処理である。兄弟ノード処理順決定処理の詳しい内容は後述する。   Next, the tree display adjustment apparatus 1, more specifically, the sibling node processing order determination unit 32 executes sibling node processing order determination processing based on the information acquired in step S120 (S130). The sibling node processing order determination process is a process for determining the order of selecting which of the sibling nodes to be processed. Detailed contents of the sibling node processing order determination processing will be described later.

次にツリー表示調整装置1は、未処理の兄弟ノードのうち最上位の処理順のノードの情報を読む(S140)。ここで情報を読まれるノードが新たな処理対象ノードとなる。   Next, the tree display adjustment apparatus 1 reads information on the highest processing order node among unprocessed sibling nodes (S140). Here, the node from which the information is read becomes a new processing target node.

次にツリー表示調整装置1は、ノード位置決定処理(S150)を行う。これはノード位置決定処理(S40)の再帰処理(再帰呼び出し)である。   Next, the tree display adjustment apparatus 1 performs a node position determination process (S150). This is a recursive process (recursive call) of the node position determination process (S40).

次にツリー表示調整装置1は、処理対象ノードの兄弟ノードのうち未処理のノードが存在するか否かを判定する(S160)。兄弟ノードのうち未処理のノードが存在すると判定した場合(S160、Yes)、次にツリー表示調整装置1は、ステップS140に戻る。   Next, the tree display adjustment apparatus 1 determines whether or not there is an unprocessed node among sibling nodes of the processing target node (S160). If it is determined that there is an unprocessed node among the sibling nodes (S160, Yes), the tree display adjustment apparatus 1 returns to step S140.

一方、兄弟ノードのうち未処理のノードは存在しないと判定した場合(S160、No)、ツリー表示調整装置1、より詳しくは親ノード位置決定部30は親ノード位置決定処理を実行する(S170)。親ノード位置決定処理は、処理対象ノードの親ノードの位置(座標)を、前述の動的及び静的パラメータ及びその子ノードの位置(座標)に基づいて決定する処理である。親ノード位置決定処理の内容については後述する。なお、ここで決定された親ノードの位置(座標)は最終的に確定されたものではなく、後述するツリー方向変更処理によってさらに変更されることがある。   On the other hand, when it is determined that there is no unprocessed node among sibling nodes (S160, No), the tree display adjustment device 1, more specifically, the parent node position determination unit 30 executes a parent node position determination process (S170). . The parent node position determination process is a process for determining the position (coordinates) of the parent node of the processing target node based on the above-described dynamic and static parameters and the positions (coordinates) of the child nodes. The contents of the parent node position determination process will be described later. Note that the position (coordinates) of the parent node determined here is not finalized and may be further changed by a tree direction changing process described later.

次に、ツリー表示調整装置1、より詳しくはツリー方向変更部35は、ツリー方向変更処理を実行する(S180)。ツリー方向変更処理は、処理対象部分木の各ノードの位置決定後、処理対象部分木のツリー方向を決定し、当該ツリー方向をユーザの入力で定まるツリー整列方向に一致させるように、処理対象部分木ツリーを対象部分木ルートノードを中心とした回転移動させる処理である。   Next, the tree display adjustment apparatus 1, more specifically the tree direction changing unit 35, executes a tree direction changing process (S180). In the tree direction changing process, after determining the position of each node of the processing target subtree, the tree direction of the processing target subtree is determined, and the processing target portion is determined so that the tree direction matches the tree alignment direction determined by the user input. This is a process of rotating the tree tree around the target subtree root node.

ツリー方向変更処理が終了すると、ツリー表示調整装置1はノード位置決定処理を終了する。なお、そのノード位置決定処理が再帰呼び出しされた処理である場合は、再帰呼び出ししたノード位置決定処理に戻り、ノード位置決定処理が続行されることになる。   When the tree direction change process ends, the tree display adjustment apparatus 1 ends the node position determination process. If the node position determination process is a recursively called process, the process returns to the recursively called node position determination process and the node position determination process is continued.

一方、ステップS110において処理対象ノードが葉ノードであると判定した場合(S110、Yes)、ツリー表示調整装置1、より詳しくは葉ノード位置決定部30は、葉ノード位置決定処理を実行する(S190)。葉ノード位置決定処理は、処理対象ノードである葉ノードの位置(座標)を、前述の動的及び静的パラメータに基づいて決定する処理である。葉ノード位置決定処理の内容については後述する。なお、ここで決定された葉ノードの位置(座標)は最終的に確定されたものではなく、後述するツリー方向変更処理によってさらに変更されることもある。葉ノード位置決定処理(S190)終了後、ツリー表示調整装置1はノード位置決定処理を終了する。なお、そのノード位置決定処理が再帰呼び出しされた処理である場合は、再帰呼び出ししたノード位置決定処理に戻り、ノード位置決定処理が続行されることになる。
以上で、ノード位置決定処理の説明を終了する。
On the other hand, when it determines with a process target node being a leaf node in step S110 (S110, Yes), the tree display adjustment apparatus 1, more specifically the leaf node position determination part 30 performs a leaf node position determination process (S190). ). The leaf node position determination process is a process of determining the position (coordinates) of the leaf node that is the processing target node based on the dynamic and static parameters described above. The contents of the leaf node position determination process will be described later. Note that the position (coordinates) of the leaf node determined here is not finally determined, and may be further changed by a tree direction changing process described later. After the leaf node position determination process (S190) ends, the tree display adjustment apparatus 1 ends the node position determination process. If the node position determination process is a recursively called process, the process returns to the recursively called node position determination process and the node position determination process is continued.
Above, description of a node position determination process is complete | finished.

[兄弟ノード処理順決定処理]
次に、上述したノード位置決定処理中の一処理である、兄弟ノード処理順決定処理(図3、S130参照)について説明する。図4は、兄弟ノード処理順決定処理の一例を示したフローチャートである。
[Sibling node processing order determination processing]
Next, sibling node processing order determination processing (see S130 in FIG. 3), which is one of the above-described node position determination processing, will be described. FIG. 4 is a flowchart showing an example of sibling node processing order determination processing.

兄弟ノード処理順決定処理に入ると、ツリー表示調整装置1、より詳しくは兄弟ノード処理順決定部32は、処理対象ノードの兄弟ノードから、互いに隣接するノードの組み合わせを全て生成する(S310)。   When the sibling node processing order determination process is entered, the tree display adjustment device 1, more specifically, the sibling node processing order determination unit 32, generates all combinations of adjacent nodes from the sibling nodes of the processing target node (S310).

次にツリー表示調整装置1より詳しくは兄弟ノード処理順決定部32は、それぞれの組み合わせにおける2つのノードのノード間角度を求める(S320)。「ノード間角度」とは、2つのノードの偏角の差の絶対値である。このステップで全ての組み合わせについて2つのノードのノード間角度が算出される。   Next, in more detail than the tree display adjustment apparatus 1, the sibling node processing order determination unit 32 obtains an inter-node angle between two nodes in each combination (S320). The “internode angle” is the absolute value of the difference between the declinations of two nodes. In this step, the inter-node angles of the two nodes are calculated for all combinations.

次にツリー表示調整装置1より詳しくは兄弟ノード処理順決定部32は、ステップS320において算出した全組み合わせのノード間角度のうち、最大のノード間角度を有する組み合わせを抽出する(S330)。   Next, in more detail than the tree display adjustment apparatus 1, the sibling node processing order determination unit 32 extracts a combination having the maximum inter-node angle among all inter-node angles calculated in step S320 (S330).

次にツリー表示調整装置1より詳しくは兄弟ノード処理順決定部32は、ステップS330において抽出した組み合わせの2つのノードのうち、反時計回り方向のノード(極座標において、より大きな偏角を有するノード)を最初の処理順(処理順位第1位)のノードに決定する(S340)。   Next, in more detail than the tree display adjustment device 1, the sibling node processing order determination unit 32 is a node in the counterclockwise direction (a node having a larger declination in polar coordinates) out of the two nodes of the combination extracted in step S330. Is determined as the node in the first processing order (first processing order) (S340).

次にツリー表示調整装置1は、最初の処理順に定められたノードを基準として、反時計回り方向から見て近い順番で、残りの兄弟ノードの処理順(処理順位第2位、第3位、…)を決定する(S350)。その後ツリー表示調整装置1より詳しくは兄弟ノード処理順決定部32は、兄弟ノード処理順決定処理を終了する。   Next, the tree display adjustment apparatus 1 uses the nodes determined in the first processing order as a reference, and the processing order of the remaining sibling nodes (processing order 2nd, 3rd, ...) is determined (S350). More specifically, the sibling node processing order determination unit 32 ends the sibling node processing order determination processing than the tree display adjustment device 1.

[兄弟ノード処理順決定処理の具体例]
次に、兄弟ノードの処理順決定処理(図4参照)の具体例を示す。図5、図6は、兄弟ノードの処理順決定処理の例を示すためのツリーを示した図である。
[Specific example of sibling node processing order determination processing]
Next, a specific example of the sibling node processing order determination processing (see FIG. 4) will be described. FIG. 5 and FIG. 6 are diagrams illustrating a tree for illustrating an example of processing order determination processing for sibling nodes.

ツリー表示調整装置1は、処理順を決定する対象となる兄弟ノードについて、互いに隣接するノードの組み合わせを生成する(S310)。図5に示したツリーにおいて、ノードaの子ノードであって、互いに兄弟ノードの関係であるノードb、ノードe、ノードiについて処理順を決定する場合は、ノードb、ノードe、ノードiが図5に示したような位置関係にある場合、ツリー表示調整装置1は、ノードbとノードeの組み合わせ、ノードeとノードiの組み合わせ、ノードiとノードbの組み合わせの3つの組み合わせを生成する。   The tree display adjustment apparatus 1 generates a combination of nodes adjacent to each other for the sibling nodes whose processing order is to be determined (S310). In the tree shown in FIG. 5, when the processing order is determined for the nodes b, e, and i which are child nodes of the node a and are sibling nodes, the nodes b, e, and i When the positional relationship is as shown in FIG. 5, the tree display adjustment device 1 generates three combinations of a combination of the node b and the node e, a combination of the node e and the node i, and a combination of the node i and the node b. .

次に、ツリー表示調整装置1は、それぞれの組み合わせにおける2つのノードのノード間角度を求める(S320)。「図5に示した例では、ノードbとノードeの組み合わせについてノードbとノードeのノード間角度α、ノードeとノードiの組み合わせについてノードeとノードiのノード間角度β、ノードiとノードbの組み合わせについてノードiとノードbのノード間角度γのそれぞれの角度を算出する。   Next, the tree display adjustment device 1 obtains an inter-node angle of two nodes in each combination (S320). “In the example shown in FIG. 5, the inter-node angle α between the node b and the node e for the combination of the node b and the node e, the inter-node angle β between the node e and the node i for the combination of the node e and the node i, For each combination of nodes b, an angle between nodes i and γ between nodes i and b is calculated.

次に、ツリー表示調整装置1、より詳しくは兄弟ノード処理順決定部32は、ステップS320で求めた組み合わせのノード間角度のうち最大のノード間角度を有する組み合わせを抽出する(S330)。図5に示した例では、γ>β>αの関係になるものとする。この場合には最大のノード間角度はノード間角度γであるので、ツリー表示調整装置1、より詳しくは兄弟ノード処理順決定部32は、ノードiノードbとの組み合わせを抽出する。   Next, the tree display adjustment apparatus 1, more specifically, the sibling node processing order determination unit 32, extracts a combination having the maximum inter-node angle among the inter-node angles of the combination obtained in step S320 (S330). In the example shown in FIG. 5, it is assumed that γ> β> α. In this case, since the maximum inter-node angle is the inter-node angle γ, the tree display adjustment device 1, more specifically, the sibling node processing order determination unit 32, extracts a combination with the node i-node b.

次にツリー表示調整装置1、より詳しくは兄弟ノード処理順決定部32は、抽出した組み合わせの2つのノードのうち、親ノード(ノードa)を中心として反時計回り方向側(極座標の偏角が大きい方)のノードを最初の処理順のノードに決定する(S340)。図5の例では、ノードiよりノードbの偏角が大きいので、ノードbが最初の処理順ノードに決定される。   Next, the tree display adjustment device 1, more specifically, the sibling node processing order determination unit 32, of the two nodes of the extracted combination, counterclockwise direction centered on the parent node (node a) (the polar coordinate declination is The larger node is determined as the first processing order node (S340). In the example of FIG. 5, since the deflection angle of the node b is larger than the node i, the node b is determined as the first processing order node.

次にツリー表示調整装置1は、最初の処理順に定められたノードを基準として、反時計回り方向から見て最初の処理順に定められたノードに近い順番で、残りの兄弟ノードの処理順を決定する(S350)。図5に示した例では、反時計回り方向から見てノードbに近い順番は、ノードe、ノードiの順となる。   Next, the tree display adjustment apparatus 1 determines the processing order of the remaining sibling nodes in the order close to the node determined in the first processing order when viewed from the counterclockwise direction, with the node determined in the first processing order as a reference. (S350). In the example shown in FIG. 5, the order close to the node b when viewed from the counterclockwise direction is the order of the node e and the node i.

以上で、ノードaを親ノードとする3つの兄弟ノードの処理順はノードb、ノードe、ノードiと決定される。
これで第1世代の兄弟ノードについて兄弟ノードの処理順決定処理は終了する。
Thus, the processing order of the three sibling nodes having the node a as the parent node is determined as the node b, the node e, and the node i.
This completes the sibling node processing order determination process for the first generation sibling nodes.

兄弟ノードの処理順決定処理は、第2世代以降のノードにも同様に適用される。図6は、図5のツリーにおける第2世代のノードに兄弟ノードの処理順決定処理を適用する例を示した図である。この例では、第1世代のノードiの3つの子ノード、ノードf、ノードg、ノードhの処理順を決定する。この例では最大の角度を有する隣接する兄弟ノードの組み合わせはノードhとノードfの組み合わせであり、親ノードを中心として反時計回り方向側(座標の偏角が大きい方)のノードはノードfである。よって、最初の処理順のノードはノードfに決定され、ノードfから見て反時計回り方向に近いノードの順は、ノードg、ノードhとなる。よって、ノードf、ノードg、ノードhの処理順はノードf、ノードg、ノードhと決定される。   The sibling node processing order determination process is similarly applied to the second generation and subsequent nodes. FIG. 6 is a diagram illustrating an example in which the processing order determination process of sibling nodes is applied to the second generation node in the tree of FIG. In this example, the processing order of the three child nodes of the first generation node i, the node f, the node g, and the node h is determined. In this example, the combination of the adjacent sibling nodes having the maximum angle is the combination of the node h and the node f, and the node on the counterclockwise direction side (the one with the larger coordinate deviation angle) is the node f around the parent node. is there. Therefore, the node in the first processing order is determined as the node f, and the order of the nodes close to the counterclockwise direction when viewed from the node f is the node g and the node h. Therefore, the processing order of the node f, the node g, and the node h is determined as the node f, the node g, and the node h.

[葉ノード位置決定処理]
次に、ノード位置決定処理(図3参照)内の一処理である、葉ノード位置決定処理(図3、S190)の内容を説明する。図7は、葉ノード位置決定処理の一例を示したフローチャートである。
[Leaf node position determination processing]
Next, the contents of the leaf node position determination process (FIG. 3, S190), which is one process in the node position determination process (see FIG. 3), will be described. FIG. 7 is a flowchart illustrating an example of leaf node position determination processing.

葉ノード位置決定処理に入ると、ツリー表示調整装置1、より詳しくは葉ノード位置決定部30は、処理対象ノードである葉ノードが当該葉ノードと同世代ノードのうち最初に位置決定されるノードであるか否かを判定する(S410)。同世代ノードのうち最初に位置決定されるノードであると判定した場合(S410,Yes)、ツリー表示調整装置1、より詳しくは葉ノード位置決定部30は当該葉ノードの位置を当該世代の基準位置に定める。基準位置は、極座標の動径を基準半径方向距離r×当該葉ノードの深さ(世代数)とし、極座標の偏角を0[rad]とする位置(極座標)である。   When the leaf node position determination process is entered, the tree display adjustment device 1, more specifically, the leaf node position determination unit 30, determines which node is the first node among the same generation nodes as the leaf node that is the processing target node. It is determined whether or not (S410). When it is determined that the node is the first node to be positioned among the same generation nodes (S410, Yes), the tree display adjustment device 1, more specifically, the leaf node position determination unit 30 uses the position of the leaf node as a reference for the generation. Set in position. The reference position is a position (polar coordinate) where the radial radius of the polar coordinate is the reference radial direction distance r × the depth (number of generations) of the leaf node, and the polar coordinate declination is 0 [rad].

一方、同世代ノードのうち最初に位置決定されるノードでないと判定した場合(S410,No)、ツリー表示調整装置1は、当該葉ノードの位置を隣の同世代ノードから基準回転方向距離lだけ離れた位置に決定する(S420)。より詳しくは当該葉ノードの座標を、極座標の動径を基準半径方向距離r×当該葉ノードの深さ(世代数)とし、極座標の偏角を隣の同世代ノードから基準回転方向距離lだけ離れた位置となる角度]とする。   On the other hand, when it is determined that the node is not the first node to be positioned among the same generation nodes (No in S410), the tree display adjustment device 1 moves the position of the leaf node from the adjacent next generation node by the reference rotation direction distance l. The remote position is determined (S420). More specifically, the coordinate of the leaf node is the radial radius of the polar coordinate as a reference radial direction distance r × the depth (number of generations) of the leaf node, and the polar coordinate declination is the reference rotational direction distance l from the adjacent generation node. The angle at which it is far away].

なお、「隣の同世代ノード」とは、同世代ノードのうち、直近に位置決定がなされたノード、若しくは同世代ノードのうち最も大きな角度を有するノードである。
以上でツリー表示調整装置1、より詳しくは葉ノード位置決定部30は葉ノード位置決定処理を終了する。
The “adjacent generation node” is a node having a position determined most recently among the generation nodes, or a node having the largest angle among the generation nodes.
The tree display adjustment apparatus 1, more specifically the leaf node position determination unit 30, ends the leaf node position determination process.

[親ノード位置決定処理]
次に、ノード位置決定処理(図3参照)内の一処理である、親ノード位置決定処理(図3、S170)の内容を説明する。図8は、親ノード位置決定処理の一例を示したフローチャートである。
[Parent node position determination processing]
Next, the contents of the parent node position determination process (FIG. 3, S170), which is one process in the node position determination process (see FIG. 3), will be described. FIG. 8 is a flowchart showing an example of the parent node position determination process.

親ノード位置決定処理に入ると、ツリー表示調整装置1、より詳しくは親ノード位置決定部30は処理対象ノードの親ノードの半径方向の位置(原点からの距離)を基準半径方向距離r×(その親ノードの深さ(世代数))により決定する(S510)。   When the parent node position determination process is entered, the tree display adjustment device 1, more specifically, the parent node position determination unit 30 determines the radial position (distance from the origin) of the parent node of the processing target node as a reference radial direction distance r × ( It is determined by the depth (number of generations) of its parent node (S510).

次にツリー表示調整装置1、より詳しくは親ノード位置決定部30は、当該親ノードの偏角を子ノードの角度の最大値と最小値の平均値とする(S520)。   Next, the tree display adjustment device 1, more specifically, the parent node position determination unit 30, sets the deviation angle of the parent node as an average value of the maximum value and the minimum value of the child node angles (S520).

次にツリー表示調整装置1、より詳しくは親ノード位置決定部30は、当該親ノードと、その親ノードに隣接する同世代ノードとの回転方向距離が基準回転方向距離lより小さいか否かを判定する(S530)。当該回転方向距離が基準回転方向距離lより小さいと判定した場合(S530、Yes)、ツリー表示調整装置1、より詳しくは親ノード位置決定部30は、当該親ノードの偏角を、当該親ノードと隣接する同世代ノード距離が基準回転方向距離lとなる角度に変更する(S540)。変更された角度を変更後角度と呼ぶ。   Next, the tree display adjustment device 1, more specifically the parent node position determination unit 30, determines whether or not the rotation direction distance between the parent node and the same generation node adjacent to the parent node is smaller than the reference rotation direction distance l. Determination is made (S530). When it is determined that the rotation direction distance is smaller than the reference rotation direction distance l (S530, Yes), the tree display adjustment device 1, more specifically, the parent node position determination unit 30 determines the argument of the parent node as the parent node. And the adjacent generation node distance is changed to an angle that becomes the reference rotation direction distance l (S540). The changed angle is called a post-change angle.

次にツリー表示調整装置1、より詳しくは親ノード位置決定部30は、当該親ノードの変更後角度に合わせて、当該親ノード以下の全ノードを、原点を中心として回転移動させる(S550)。すなわち、ステップS520において算出された角度と変更後角度との差を、各ノードの座標の偏角に加算して各ノードの新しい座標の偏角とする。   Next, the tree display adjustment apparatus 1, more specifically, the parent node position determination unit 30, rotates all the nodes below the parent node around the origin in accordance with the changed angle of the parent node (S550). That is, the difference between the angle calculated in step S520 and the changed angle is added to the deviation angle of the coordinates of each node to obtain the deviation angle of the new coordinates of each node.

一方、当該回転方向距離が基準回転方向距離lより小さくないと判定した場合(S530、No)、ツリー表示調整装置1、より詳しくは親ノード位置決定部30はそのまま親ノード位置決定処理を終了する。
以上で親ノード位置決定処理の説明を終了する。
On the other hand, when it is determined that the rotation direction distance is not smaller than the reference rotation direction distance l (S530, No), the tree display adjustment device 1, more specifically, the parent node position determination unit 30 ends the parent node position determination process as it is. .
This is the end of the description of the parent node position determination process.

[ノード位置決定処理の具体例]
次に、上述したノード位置決定処理(図3参照)の具体例を説明する。
図9にユーザによって選択された対象部分木の例を示す。この対象部分木は、この部対象分木におけるルートノード(「部分木ルートノード」と呼ぶこととする)であるノードaと、ノードaの子ノードであるノードb、ノードe、ノードiと、ノードeの子ノードであるノードc、ノードdと、ノードiの子ノードであるノードf、ノードg、ノードhで構成される。
[Specific example of node location determination processing]
Next, a specific example of the above-described node position determination process (see FIG. 3) will be described.
FIG. 9 shows an example of the target subtree selected by the user. The target subtree is a node a that is a root node (referred to as a “subtree root node”) in this partial target branch tree, a node b, a node e, and a node i that are child nodes of the node a, It is composed of node c and node d which are child nodes of node e, and node f, node g and node h which are child nodes of node i.

部分木ルートノードであるノードaは第0世代のノード、ノードb、ノードe、ノードiは第1世代のノード、ノードc、ノードd、並びにノードf、ノードg、ノードhは第2世代のノードである。   Node a which is a sub-tree root node is a 0th generation node, node b, node e and node i are 1st generation nodes, node c and node d, and nodes f, node g and node h are 2nd generation nodes. It is a node.

[第1世代ノードのノード位置決定処理の開始]
対象部分木についてノード位置決定処理を実行するツリー表示調整装置1は、まず、部分木ルートノードaの子ノード、ノードb、ノードe、ノードiについて位置決定を行う。これらノードb、ノードe、ノードiをどのような順番で位置決定を行うかは、兄弟ノード処理順決定処理(図4参照)により定まる。ここでは、この兄弟ノード処理順決定処理により、ノードb、ノードe、ノードiの順に処理順が決定されたものとする。
[Start the node location determination process for the first generation node]
The tree display adjustment apparatus 1 that executes the node position determination process for the target subtree first determines the positions of the child nodes, the node b, the node e, and the node i of the subtree root node a. The order in which the positions of the node b, the node e, and the node i are determined is determined by the sibling node processing order determination process (see FIG. 4). Here, it is assumed that the processing order is determined in the order of node b, node e, and node i by this sibling node processing order determination process.

[ノードbの位置決定]
本実施の形態では、ツリー表示調整装置1は、図10に示すような極座標系を用いて各ノードの位置決定を行うものとして説明するが、その他の座標系を用いてもかまわない。
[Position of node b]
In the present embodiment, the tree display adjustment apparatus 1 is described as determining the position of each node using a polar coordinate system as shown in FIG. 10, but other coordinate systems may be used.

ツリー表示調整装置1は、第1世代ノードの中の処理順が最初と定められたノードであるノードbの位置決定を行う。ノードbの位置決定を行うに先立ち、ツリー表示調整装置1はノードbが葉ノードであるか否かを判定する。ノードbは葉ノードであるため、ツリー表示調整装置1は葉ノード位置決定処理を実行しノードbの位置を決定する。ノードbの位置は、同世代ノードの基準位置である座標、すなわち動径を基準半径方向距離rとし、偏角を角度0とする座標に決定される。図11は、ノードbが当該座標の位置に配置された状態を示す図である。   The tree display adjustment device 1 determines the position of the node b which is the node in which the processing order in the first generation node is determined to be first. Prior to determining the position of the node b, the tree display adjustment apparatus 1 determines whether or not the node b is a leaf node. Since the node b is a leaf node, the tree display adjustment device 1 executes the leaf node position determination process to determine the position of the node b. The position of the node b is determined as a coordinate that is a reference position of the node of the same generation, that is, a coordinate in which the radius is a reference radial direction distance r and the declination is an angle 0. FIG. 11 is a diagram illustrating a state in which the node b is arranged at the position of the coordinates.

[ノードe、ノードc、ノードdの位置決定]
次に、ツリー表示調整装置1は、ノードbと同世代である第1世代ノードの中で、処理順が第2位と定められたノードであるノードeを処理対象ノードとする。
[Position determination of node e, node c, and node d]
Next, the tree display adjustment apparatus 1 sets a node e, which is a node in which the processing order is determined to be second, among the first generation nodes that are the same generation as the node b as a processing target node.

ノードeの位置決定を行うに先立ち、ツリー表示調整装置1はノードeが葉ノードであるか否かを判定する。ノードeは葉ノードではないので、ツリー表示調整装置1はノードeの子ノード(第2世代ノード)であるノードc、ノードdの位置決定を行う。ここで、ツリー表示調整装置1は兄弟ノード処理順決定処理により、ノードc、ノードdの順に位置決定を行うものとする。   Prior to determining the position of the node e, the tree display adjustment device 1 determines whether or not the node e is a leaf node. Since the node e is not a leaf node, the tree display adjustment apparatus 1 determines the positions of the nodes c and d that are child nodes (second generation nodes) of the node e. Here, it is assumed that the tree display adjustment device 1 determines the position of the node c and the node d in the order of the sibling node processing order determination process.

[ノードcの位置決定]
ノードcの位置決定を行うに先立ち、ツリー表示調整装置1はノードcが葉ノードであるか否かを判定する。ノードcは葉ノードであるので、ツリー表示調整装置1は、葉ノード位置決定処理によって、ノードcの座標を第2世代ノードの基準位置である動径を半径方向距離r×深さ(世代数)=r×2=2rとし、偏角を角度0である座標に決定する。図12は、ノードcが葉ノード位置決定処理により決定された座標の位置に配置された状態を示す図である。
[Position of node c]
Prior to determining the position of the node c, the tree display adjustment apparatus 1 determines whether or not the node c is a leaf node. Since the node c is a leaf node, the tree display adjustment device 1 uses the leaf node position determination process to set the coordinate of the node c as the radial distance r × depth (number of generations) as the reference position of the second generation node. ) = R × 2 = 2r, and the declination angle is determined as a coordinate having an angle of 0. FIG. 12 is a diagram illustrating a state in which the node c is arranged at the coordinate position determined by the leaf node position determination process.

[ノードdの位置決定]
次に、ツリー表示調整装置1は、ノードcの次の順位であるノードdを新たな処理対象ノードとする。ノードdの位置決定を行うに先立ち、ツリー表示調整装置1はノードdが葉ノードであるか否かを判定する。ノードdは葉ノードであるので、ツリー表示調整装置1は、葉ノード位置決定処理によって、ノードdの動径を基準半径方向距離r×世代数=2rとし、偏角をノードcから回転方向距離lだけ離れた位置となる角度とする座標にノードdを配置する。すなわち、ノードdの座標(2r、l/2r)となる。図13は、ノードdが極座標に配置された状態を示す。
[Position of node d]
Next, the tree display adjustment apparatus 1 sets the node d, which is the next order after the node c, as a new processing target node. Prior to determining the position of the node d, the tree display adjustment apparatus 1 determines whether or not the node d is a leaf node. Since the node d is a leaf node, the tree display adjustment device 1 sets the radius of the node d to the reference radial direction distance r × number of generations = 2r and the declination angle from the node c to the rotation direction distance by the leaf node position determination process. The node d is arranged at an angle with an angle at a position separated by l. That is, the coordinates of the node d are (2r, l / 2r). FIG. 13 shows a state where the node d is arranged in polar coordinates.

[ノードeの再配置位置の決定]
ノードeの全ての子ノードの位置決定が完了すると、ツリー表示調整装置1は親ノード位置決定処理を実行して、ノードeの位置決定を行う。まず、ツリー表示調整装置1は、ノードeの座標の動径を基準半径方向距離r×深さ(世代数)=r×1=rとし、その偏角を子ノードの偏角の最大値と最小値の平均値とする。ここでは、子ノードの偏角の最大値はノードdの「l/2r」であり、子ノードの角度の最小値はノードcの「0」である。よって、これらの平均値は(l/2r+0)/2=l/4rとなる。この処理段階では、ノードeの位置は(r、l/4r)と算出される。図14は、ノードeが上記極座標の位置に配置された状態を示す。
[Determination of relocation position of node e]
When the position determination of all the child nodes of the node e is completed, the tree display adjustment apparatus 1 executes the parent node position determination process to determine the position of the node e. First, the tree display adjusting apparatus 1 sets the radius of the coordinate of the node e as the reference radial direction distance r × depth (number of generations) = r × 1 = r, and the declination is set as the maximum declination of the child node. Use the average of the minimum values. Here, the maximum value of the deflection angle of the child node is “l / 2r” of the node d, and the minimum value of the angle of the child node is “0” of the node c. Therefore, the average value of these is (l / 2r + 0) / 2 = l / 4r. In this processing stage, the position of the node e is calculated as (r, l / 4r). FIG. 14 shows a state where the node e is arranged at the position of the polar coordinates.

次にツリー表示調整装置1は、ノードeが同世代ノードで隣接するノードと基準回転方向距離lより離れているか否かを判定する。基準回転方向距離lより離れていると判定した場合、ツリー表示調整装置1は当該ノードの位置をそのままとする。一方、基準回転方向距離lより離れていないと判定した場合、同世代ノードで隣接するノードと基準回転方向距離lだけ離れるように、処理対象ノード以下のツリーを、原点を中心として回転移動させる。この例では、ノードeは、同世代ノードで隣接するノードであるノードbと基準回転方向距離lより離れていないので、ノードeがノードbから基準回転方向距離lだけ離れるように、ノードe以下の部分木ツリーを、原点を中心として回転移動させる。図15に、ノードeを、隣接する同世代ノードbから基準回転方向距離lだけ離れるように、ノードe以下の部分木ツリー全体を、原点を中心とした回転移動させた状態を示す。この回転移動によってノードeの座標は(r、l/r)となり、ノードbの座標は(2r、3l/4r)となり、ノードdの座標は(2r、5l/4r)となる。   Next, the tree display adjustment apparatus 1 determines whether or not the node e is separated from the adjacent node in the same generation node by the reference rotation direction distance l. When it is determined that the distance is greater than the reference rotation direction distance l, the tree display adjustment device 1 keeps the position of the node as it is. On the other hand, if it is determined that the distance is not greater than the reference rotation direction distance l, the tree below the processing target node is rotated about the origin so that it is separated from the adjacent node in the same generation node by the reference rotation direction distance l. In this example, since the node e is not separated from the node b which is an adjacent node in the same generation node by the reference rotation direction distance l, the node e is equal to or less than the node e so that the node e is separated from the node b by the reference rotation direction distance l. Rotate and move the subtree tree around the origin. FIG. 15 shows a state in which the entire subtree tree below the node e is rotated around the origin so that the node e is separated from the adjacent generation node b by the reference rotation direction distance l. By this rotational movement, the coordinates of the node e become (r, l / r), the coordinates of the node b become (2r, 3l / 4r), and the coordinates of the node d become (2r, 5l / 4r).

[ノードi、ノードf、ノードg,ノードhの位置決定]
次に、ツリー表示調整装置1は、第1世代ノードの中の処理順が第3位と定められたノードであるノードiの位置決定を行う。
[Position determination of node i, node f, node g, and node h]
Next, the tree display adjustment apparatus 1 determines the position of the node i, which is the node in which the processing order in the first generation node is determined as the third place.

ノードiの位置決定を行うに先立ち、ツリー表示調整装置1はノードiが葉ノードであるか否かを判定する。ノードiは葉ノードではないため、ツリー表示調整装置1はノードiの子ノード(第2世代ノード)であるノードf、ノードg、ノードhの位置決定を行う。ここで、ツリー表示調整装置1は「兄弟ノード処理順決定処理」により、ノードf、ノードg、ノードhの順に処理順を決定したものとする。   Prior to determining the position of the node i, the tree display adjustment device 1 determines whether or not the node i is a leaf node. Since the node i is not a leaf node, the tree display adjustment apparatus 1 determines the positions of the nodes f, g, and h that are child nodes (second generation nodes) of the node i. Here, it is assumed that the tree display adjustment apparatus 1 determines the processing order in the order of the node f, the node g, and the node h by the “sibling node processing order determination processing”.

[ノードfの位置決定]
次に、ツリー表示調整装置1は、第1の順位であるノードfの位置決定をする。ノードfの位置決定を行うに先立ち、ツリー表示調整装置1はノードfが葉ノードであるか否かを判定する。ノードfは葉ノードであるため、ツリー表示調整装置1は、葉ノード位置決定処理により、座標の動径を基準半径方向距離r×深さ(世代数)=r×2=2rとし、座標の偏角を、同世代ノードのうち直近に配置されたノード(ここではノードd)から回転方向距離lだけ離れた位置となる角度とする座標の位置にノードfを配置する。すなわち、ノードfの座標は(2r、7l/4r)となる。
[Determine the position of node f]
Next, the tree display adjustment device 1 determines the position of the node f which is the first order. Prior to determining the position of the node f, the tree display adjustment apparatus 1 determines whether or not the node f is a leaf node. Since the node f is a leaf node, the tree display adjustment device 1 sets the radius of coordinates to the reference radial direction distance r × depth (number of generations) = r × 2 = 2r by the leaf node position determination process. The node f is arranged at a coordinate position where the declination angle is an angle which is a position away from the node (here, the node d) arranged most recently among the same generation nodes by the rotation direction distance l. That is, the coordinates of the node f are (2r, 7l / 4r).

[ノードgの位置決定]
次に、ツリー表示調整装置1は、兄弟ノード中第2の順位であるノードgの位置決定をする。ノードgの位置決定を行うに先立ち、ツリー表示調整装置1はノードgが葉ノードであるか否かを判定する。ノードgは葉ノードであるため、ツリー表示調整装置1は、葉ノード位置決定処理により、座標の動径を基準半径方向距離r×深さ(世代数)=r×2=2rとし、座標の偏角を、同世代ノードのうち直近に配置されたノード(ここではノードf)から回転方向距離lだけ離れた位置となる角度とする座標の位置にノードgを配置する。すなわち、ノードgの座標は(2r、9l/4r)となる。
[Determine the position of node g]
Next, the tree display adjustment apparatus 1 determines the position of the node g which is the second rank among the sibling nodes. Prior to determining the position of the node g, the tree display adjustment apparatus 1 determines whether or not the node g is a leaf node. Since the node g is a leaf node, the tree display adjustment device 1 sets the coordinate radius to the reference radial direction distance r × depth (number of generations) = r × 2 = 2r by the leaf node position determination process. The node g is arranged at a coordinate position where the declination angle is an angle that is a position away from the node (here, the node f) arranged most recently among the same generation nodes by the rotation direction distance l. That is, the coordinates of the node g are (2r, 9l / 4r).

[ノードhの位置決定]
次に、ツリー表示調整装置1は、兄弟ノード中第3の順位であるノードhの位置決定をする。ノードhの位置決定を行うに先立ち、ツリー表示調整装置1はノードhが葉ノードであるか否かを判定する。ノードhは葉ノードであるため、ツリー表示調整装置1は、葉ノード位置決定処理により、座標の動径を基準半径方向距離r×深さ(世代数)=r×2=2rとし、座標の偏角を、同世代ノードのうち直近に配置されたノード(ここではノードg)から回転方向距離lだけ離れた位置となる角度とする座標の位置にノードhを配置する。すなわち、ノードhの座標は(2r、11l/4r)となる。
[Position of node h]
Next, the tree display adjustment device 1 determines the position of the node h which is the third rank among the sibling nodes. Prior to determining the position of the node h, the tree display adjustment device 1 determines whether or not the node h is a leaf node. Since the node h is a leaf node, the tree display adjustment device 1 sets the coordinate radius to the reference radial direction distance r × depth (number of generations) = r × 2 = 2r by the leaf node position determination process. The node h is arranged at a coordinate position where the declination angle is an angle that is a position away from the most recently arranged node (here, the node g) by the rotation direction distance l. That is, the coordinates of the node h are (2r, 11l / 4r).

図16にノードf、ノードg、ノードhが極座標系に配置された状態を示す。   FIG. 16 shows a state in which the node f, the node g, and the node h are arranged in the polar coordinate system.

[ノードiの位置決定]
ノードiの全ての子ノードの位置決定が完了すると、ツリー表示調整装置1はこれら子ノードの親ノードであるノードiの位置決定を行う。まず、ツリー表示調整装置1は、ノードiの座標の動径を基準半径方向距離r×世代数(1)=rとし、その偏角を子ノードの偏角の最大値と最小値の平均値とする。ここでは、子ノードの偏角の最大値はノードhの「11l/4r」であり、子ノードの角度の最小値はノードfの「7l/4r」である。よって、これらの平均値は(11l/4r+7l/4r)/2=9l/4rとなる。よって、この処理段階では、ノードiの座標は(r、9l/4r)と算出される。図17は、ノードiが極座標に配置された状態を示す。
[Position of node i]
When the position determination of all the child nodes of the node i is completed, the tree display adjustment apparatus 1 determines the position of the node i that is the parent node of these child nodes. First, the tree display adjusting apparatus 1 sets the radius of the coordinate of the node i as the reference radial direction distance r × number of generations (1) = r, and the declination is the average value of the maximum and minimum declinations of the child nodes. And Here, the maximum value of the declination of the child node is “11l / 4r” of the node h, and the minimum value of the angle of the child node is “7l / 4r” of the node f. Therefore, the average value of these is (11l / 4r + 7l / 4r) / 2 = 9l / 4r. Therefore, in this processing stage, the coordinates of the node i are calculated as (r, 9l / 4r). FIG. 17 shows a state where the node i is arranged in polar coordinates.

[ノードiの再配置位置の決定]
次に、ツリー表示調整装置1はノードiが同世代ノードで隣接するノードと回転方向距離lより離れているか否かを判定する。基準回転方向距離lより離れていると判定した場合、ツリー表示調整装置1は当該ノードの位置をそのままとする。一方、基準回転方向距離lより離れていないと判定した場合、同世代ノードで隣接するノードと基準回転方向距離lだけ離れるように、対象ノード以下のツリーを、原点を中心とした回転移動させる。この例では、ノードeは、同世代ノードで隣接するノードであるノードeと基準回転方向距離lより離れているので、そのままノードiの座標が決定される。
[ノードaの配置]
次に、ツリー表示調整装置1は原点に部分木ルートノードであるノードaを配置する。なお、部分木ルートノードはいつ行ってもかまわない。後述する回転移動の終了後であってもかまわない。
[Determination of relocation position of node i]
Next, the tree display adjustment apparatus 1 determines whether or not the node i is separated from the adjacent node in the same generation node by the rotation direction distance l. When it is determined that the distance is greater than the reference rotation direction distance l, the tree display adjustment device 1 keeps the position of the node as it is. On the other hand, if it is determined that it is not separated from the reference rotation direction distance l, the tree below the target node is rotated around the origin so that it is separated from the adjacent node in the same generation node by the reference rotation direction distance l. In this example, since the node e is separated from the node e, which is an adjacent node in the same generation node, by the reference rotation direction distance l, the coordinates of the node i are determined as they are.
[Arrangement of node a]
Next, the tree display adjustment apparatus 1 arranges a node a which is a subtree root node at the origin. Note that the subtree root node may be visited at any time. It may be after the end of the rotational movement described later.

[ツリー整列方向への回転移動]
次に、ツリー表示調整装置1は対象部分木のツリー方向を、ツリー整列方向θに一致させるよう対象部分木のツリー方向を回転移動させる。
[Rotation movement in the tree alignment direction]
Next, the tree display adjustment apparatus 1 rotates the tree direction of the target subtree so that the tree direction of the target subtree matches the tree alignment direction θ.

まず、ツリー表示調整装置1は対象部分木のツリー方向を算出する。
対象部分木のツリー方向は、全ての第1世代ノードの偏角の最大値と最小値の平均値である。ここでは、第1世代ノードの偏角の最大値はノードiの「9l/4r」であり、第1世代ノードの角度の最小値はノードbの「0」である。よって、これらの平均値は(9l/4r+0)/2=9l/4rとなり、ツリー方向θ’は=9l/4rと算出される。
First, the tree display adjustment apparatus 1 calculates the tree direction of the target partial tree.
The tree direction of the target subtree is an average value of the maximum and minimum declination values of all first generation nodes. Here, the maximum value of the deflection angle of the first generation node is “9l / 4r” of the node i, and the minimum value of the angle of the first generation node is “0” of the node b. Therefore, the average value of these is (9l / 4r + 0) / 2 = 9l / 4r, and the tree direction θ ′ is calculated to be 9l / 4r.

次に、ツリー表示調整装置1はそのツリー方向θ’をツリー整列方向θに一致するように、原点を中心として対象部分木ツリー全体を回転移動させる。図18はツリー方向θ’とツリー整列方向θを示した図、図19は、ツリー方向θ’をツリー整列方向下θに一致するように対象部分木全体を、原点を中心として回転移動させた状態を示す図である。   Next, the tree display adjusting apparatus 1 rotates and moves the entire target subtree tree around the origin so that the tree direction θ ′ coincides with the tree alignment direction θ. FIG. 18 is a diagram showing the tree direction θ ′ and the tree alignment direction θ, and FIG. 19 is the entire target subtree rotated around the origin so that the tree direction θ ′ coincides with the lower θ of the tree alignment direction. It is a figure which shows a state.

ツリー方向とツリー整列方向が一致するように、対象部分木を回転移動させると、ノード位置決定処理は完了する。
[画面例]
When the target subtree is rotated so that the tree direction matches the tree alignment direction, the node position determination process is completed.
[Screen example]

ツリー表示調整装置1の画面表示例を示す。図20はユーザがツリー表示を調整したい部分木の部分木ルートノード200にポインティングデバイスのポインタ210を置いた状態の画面例である。   The example of a screen display of the tree display adjustment apparatus 1 is shown. FIG. 20 shows an example of a screen in a state where the pointer 210 of the pointing device is placed on the subtree root node 200 of the subtree that the user wants to adjust the tree display.

図21は、図20の状態の後に、ポインタ210がドラッグされた状態の画面例である。ポインタ210の移動に応じて部分木ルートノード200以下のノードは、親子ノード間の距離である半径方向距離が基準半径方向距離rとなり、兄弟ノード間の回転方向距離が基準回転方向距離l以上になり、ツリー方向がツリー整列方向に一致するように回転移動されている。   FIG. 21 is a screen example in which the pointer 210 is dragged after the state of FIG. In response to the movement of the pointer 210, the nodes below the subtree root node 200 have a radial distance that is the distance between the parent and child nodes as the reference radial direction distance r, and the rotational direction distance between sibling nodes is greater than or equal to the reference rotational direction distance l. Thus, the tree direction is rotated so as to coincide with the tree alignment direction.

図22は、図21の状態の後にポインタ210がさらに部分木ルートノード200から離れた位置までドラッグされた状態の画面例である。親子ノード間の距離である半径方向距離がより長くなり、ツリー方向は現在のポインタの位置に従って新たなツリー整列方向に一致するように回転移動されている。   FIG. 22 shows a screen example in which the pointer 210 is further dragged to a position further away from the subtree root node 200 after the state of FIG. The distance in the radial direction, which is the distance between the parent and child nodes, becomes longer, and the tree direction is rotated to match the new tree alignment direction according to the current pointer position.

このように本ツリー表示調整装置によれば、インタラクティブにツリー表示の調整を行うことが可能となる。   As described above, according to the present tree display adjustment device, it is possible to interactively adjust the tree display.

[まとめ]
本実施の形態によれば、ノードを個別に移動させる必要がなくなるため、整列を行うのにかかる時間を短縮することが出来る。
また、本実施の形態によれば、インタラクティブに結果を確認しながらノードの整列が行われるため、ユーザが所望する配置にすることが容易となる。
[Summary]
According to the present embodiment, since it is not necessary to move the nodes individually, it is possible to reduce the time required for the alignment.
In addition, according to the present embodiment, nodes are aligned while interactively confirming the result, so that it is easy to achieve an arrangement desired by the user.

エッジの長さ(親子ノード間の距離)が変わると、連動してツリーの広がり具合が変化するため、直感的に整列を行える。
ドラッグアンドドロップにより、個別にノードを移動させることによって、整列の順序を容易に変更できる。
As the length of the edge (distance between parent and child nodes) changes, the extent of the tree changes in conjunction with it, so alignment can be performed intuitively.
The order of alignment can be easily changed by moving the nodes individually by drag and drop.

以上、本発明の実施の形態を説明したが、本発明はこれらに限定されるものではなく、発明の趣旨を逸脱しない範囲内において、種々の変更、追加、組み合わせ等が可能である。   As mentioned above, although embodiment of this invention was described, this invention is not limited to these, A various change, addition, a combination, etc. are possible in the range which does not deviate from the meaning of invention.

1・・・ツリー表示調整装置; 30・・・ノード位置決定部; 31・・・動的パラメータ決定部; 33・・・葉ノード位置決定部; 34・・・親ノード位置決定部; 35・・・ツリー方向変更部   DESCRIPTION OF SYMBOLS 1 ... Tree display adjustment apparatus; 30 ... Node position determination part; 31 ... Dynamic parameter determination part; 33 ... Leaf node position determination part; 34 ... Parent node position determination part; ..Tree direction changing part

Claims (3)

ユーザの入力に応じて決定される値である第1の値及び第2の値を決定する第1の決定手段と、
対象となる部分木における親子ノード間の距離である半径方向距離が第1の値となるようにするとともに、全子ノードの情報に基づき兄弟ノードの処理順を決定し、最初に位置決定される前記子ノードを基準位置に配置し、隣接する前記兄弟ノード間の回転方向距離が所定の値以上になるように各子ノードの位置決定を行った後、親ノードの位置決定を行う第2の決定手段と、
前記第2の値に応じて前記対象となる部分木を回転移動させる回転移動手段と
を有するツリー表示調整装置。
First determination means for determining a first value and a second value, which are values determined in accordance with a user input;
The radial distance that is the distance between the parent and child nodes in the target subtree is set to the first value, and the processing order of the sibling nodes is determined based on the information of all the child nodes, and the position is determined first. The child node is arranged at a reference position, and the position of each child node is determined so that the rotation direction distance between the adjacent sibling nodes is not less than a predetermined value, and then the position of the parent node is determined. A determination means;
A tree display adjustment apparatus comprising: a rotation moving unit that rotates the target subtree according to the second value.
前記第2の決定手段は、第1の値の変化にリアルタイムに応じて各ノードの位置決定を行い、
前記回転移動手段は第2の値の変化にリアルタイムに応じて前記部分木を回転移動させる
ことを特徴とする請求項1に記載のツリー表示調整装置。
The second determining means determines the position of each node according to a change in the first value in real time,
The tree display adjustment apparatus according to claim 1, wherein the rotation moving unit rotates the partial tree according to a change in the second value in real time.
前記第2の決定手段および前記回転移動手段は、ポインティングデバイスの操作により実行される  The second determination means and the rotational movement means are executed by operating a pointing device.
ことを特徴とする請求項2に記載のツリー表示調整装置。  The tree display adjusting apparatus according to claim 2, wherein
JP2011238590A 2011-10-31 2011-10-31 Tree display adjustment device Expired - Fee Related JP5858731B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011238590A JP5858731B2 (en) 2011-10-31 2011-10-31 Tree display adjustment device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011238590A JP5858731B2 (en) 2011-10-31 2011-10-31 Tree display adjustment device

Publications (2)

Publication Number Publication Date
JP2013097508A JP2013097508A (en) 2013-05-20
JP5858731B2 true JP5858731B2 (en) 2016-02-10

Family

ID=48619404

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011238590A Expired - Fee Related JP5858731B2 (en) 2011-10-31 2011-10-31 Tree display adjustment device

Country Status (1)

Country Link
JP (1) JP5858731B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101782816B1 (en) * 2015-05-12 2017-09-28 아주대학교산학협력단 Treemap visualization method and device using the method
CN111782329B (en) * 2020-07-03 2023-12-19 抖音视界有限公司 Node dragging method, device, equipment and computer readable medium

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3636272B2 (en) * 1998-02-09 2005-04-06 富士通株式会社 Icon display method, apparatus thereof, and recording medium
US6300957B1 (en) * 1998-07-29 2001-10-09 Inxight Software, Inc. Mapping a node-link structure to a rendering space beginning from any node

Also Published As

Publication number Publication date
JP2013097508A (en) 2013-05-20

Similar Documents

Publication Publication Date Title
EP2699998B1 (en) Compact control menu for touch-enabled command execution
US8332067B2 (en) Device and method for processing a robot control program
US20120256960A1 (en) Defining motion in a computer system with a graphical user interface
JP2017117008A5 (en)
US8643596B2 (en) Control of a scrollable context menu
KR102048313B1 (en) Graphical user interface having enhanced tool for connecting components
JP2000298685A (en) Selection navigator
JP2005259148A (en) Method and program for selecting element
TW201310255A (en) Parameter configuration method and system
US10262075B2 (en) Efficient navigation through hierarchical mappings
EP2669781B1 (en) A user interface for navigating in a three-dimensional environment
US9059931B2 (en) System and method for visualizing an address space
JP5858731B2 (en) Tree display adjustment device
KR102092979B1 (en) Interactive control of the curvature of links
JP6141561B2 (en) Object adjustment tool and object adjustment program
KR100348181B1 (en) A computer system and a method for dynamic information display
US10241651B2 (en) Grid-based rendering of nodes and relationships between nodes
JP5767371B1 (en) Game program for controlling display of objects placed on a virtual space plane
US20110102463A1 (en) Position fine tuning in a computer aided modeling
US10025884B1 (en) Manipulation tool for offset surface of a simulation model
US20100023894A1 (en) System for selecting elements displayed on a screen
JP5735939B2 (en) Map display device, map display method, and map display program
JP2016016319A (en) Game program for display-controlling objects arranged on virtual spatial plane
JP6063153B2 (en) Information processing apparatus, information processing method, and program
US11366571B2 (en) Visualization components including sliding bars

Legal Events

Date Code Title Description
RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20130221

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140813

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150617

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150623

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150824

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: 20151117

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20151215

R151 Written notification of patent or utility model registration

Ref document number: 5858731

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

LAPS Cancellation because of no payment of annual fees