当前位置: 首页 > 工具软件 > Circle Layout > 使用案例 >

[Web Chart系列之五] 图形布局-Circle Layout 之实现

长孙燕七
2023-12-01


 前言

关于Circle Layout 的基本介绍, 可以参考:

[Web Chart系列之三] 图形布局-Layout

布局的现实使用状况

这里使用这种布局来布局特定对象的关联。
这里的这些对象类似于物料的BOM表。(简单举个例子,一个自行车,两个轮子, 两个脚踏板等等。 ) 
有上下级的关系, 也有同级的关系。
在这种状况下,如何排列?
按层次排列, 当前关心的对象排在中心点, 其他的对象一层一层排在外围的圆周上。
每个节点, 我们都必须给他一个所在层次的属性(level), 中心点设为0, 往外递增或是递减。


动态效果


Current Node isForward ==>
(from parent to children)
Backward <==
(from child to parents)
Circle Layoutcenter nodeIF MaxLevel>0
   do nothing
ELSE
   clear; to center + expand 1 level sub nodes
IF MaxLevel>0
   clear; to center + expand 1 level parent nodes
ELSE
   do nothing
outer nodeIF MaxLevel>0
   IF CurLevel==MaxLevel
      expand 1 level sub nodes
   ELSE
      collapse all brother node(include sub nodes)+expand 1 level sub nodes
ELSE
   clear; to center + expand 1 level sub nodes
IF MaxLevel>0
  clear; to center + expand 1 level parent nodes
ELSE
   IF CurLevel==MinLevel
      expand 1 level parent nodes
   ELSE
      collapse all brother node(include parent nodes)+expand 1 level parent nodes

 类似资料: