自動布局的必要性
電信網絡拓撲節點量大、層級複雜,手工佈局成本極高。自動布局算法可快速生成美觀、可讀性強的拓撲圖,輔以人工微調達到最佳效果。
HT for Web 兩大內置布局引擎
1. AutoLayout:靜態算法布局
提供多種固定算法,一次性計算節點座標:
- Circular(圓形布局): 節點均勻分布在圓周,適合展示環狀拓撲

- Symmetric(對稱布局): 以中心點對稱分佈,空間緊湊

更多算法參考:官方手冊
2. ForceLayout:動態物理模擬布局
基於力導向圖算法:
- 節點間存在斥力(電荷排斥)
- 連接節點間存在引力(彈簧拉力)
- 迭代計算直至系統達到能量最小化平衡態
特點:
- 過程可視化,動畫效果佳
- 適合不規則、大規模拓撲
- 2D/3D 均支持

詳細文檔:ForceLayout 指南
進階需求:ShapeLayout 形狀約束布局
業務場景:節點需按特定幾何形狀分佈(橢圓、曲線、矩形等)。
核心思路:參數方程 + 座標映射
以橢圓為例:
// 橢圓參數方程
x = a * cos(θ)
y = b * sin(θ)
// θ = 2π * i / n (i=0..n-1, n為節點數)
計算每個節點對應角度,代入方程獲取座標,直接設置節點位置。

在線演示:ShapeLayout-Oval Demo
連線適配:BusEdgeType 多段智能路由
課題:連線端點在橢圓邊緣而非中心,拖動節點時連線需動態尋優。
解決:自定義 BusEdgeType,類似總線拓撲,支持多折線、動態路徑計算、端點吸附邊緣。
總結與展望
- AutoLayout:算法固定、見效快、適合規則拓撲
- ForceLayout:物理模擬、動態收斂、適合複雜非結構化拓撲
- ShapeLayout:業務約束導向、參數化幾何分佈、需配合智能邊路由
後續將深入講解 ShapeLayout 與 BusEdgeType 的具體實現細節。