我需要在C#中繪製一個公司結構樹(類似於家族樹)。所有的輔助代碼都在那裏。它是有色的,互動的,花哨的。唯一的麻煩是實際決定將每個節點放在哪裏的算法給我帶來了很多悲傷。有效繪製樹的算法?
目前,箱子尺寸爲100x50,我有一個名爲StaffNode
的類,它代表某個特定x,y座標的職員。
該算法只需要創建一個List<StaffNode>
與適當的x和y。
這是非常棘手的。
基本上,該算法是沿着企業結構遞歸的,所以左 - >右,然後沿着樹頂部 - >下。顯然,如果兩個節點彼此重疊,那就很糟糕。
我能想到的,可能會產生這樣的一些算法:
*
o O
o o o o o O
o O O O O O
O
鑑於這樣的事情會比較好,因爲樹是非常大的空間是非常有限:
*
o O
o o o o o O
o O O O O O
O
你們有沒有必須像以前那樣畫一棵樹?如果你有我相信你遇到了我遇到的很多障礙。有小費嗎?到目前爲止,我花了整整一天的時間。
您想要做什麼?不應該在微軟的visio或其他東西? – DrStrangeLove
採取一些俄羅斯方塊解算器... – Dialecticus
@DrStrangeLove不,我正在編寫一個交互式可視化。 – user1002358