一種基于三維空間的網絡拓撲布局方法及系統的制作方法
【專利摘要】本發明公開了一種基于三維空間的網絡拓撲布局方法及系統,首先,定義基于二維的拓撲結構數據;從葉子節點開始依次向上計算每個節點的孩子節點的最大權重和節點的總權重,直到計算出一級節點的總權重;基于定義的一級節點的二維坐標數據和計算出的一級節點的總權重,找出所有兩兩交叉的一級節點;計算所有兩兩交叉的一級節點不交叉時所需的放大比率:獲取所述放大比率的最大值,對整個一級節點進行放大,并重新計算一級節點的二維坐標數據;根據需要設定層間距,計算所有節點的三維坐標數據。利用本發明所述的技術方案所做的網絡拓撲布局不僅不會出現重疊和交叉的情況,同時達到美觀和實用的效果。
【專利說明】—種基于三維空間的網絡拓撲布局方法及系統
【技術領域】
[0001]本發明涉及網絡拓撲布局【技術領域】,尤其涉及一種基于三維空間的網絡拓撲布局方法及系統。
【背景技術】
[0002]隨著計算機技術的發展,云時代的到來。互聯網的規模和復雜度都急劇增加。所承載的信息輸送使命和包含的信息內容也是越來越大。因此對互聯網的網絡拓撲結構的探索也成為了我們研究中的重要內容。網絡拓撲具有網絡節點數量多,連接關系復雜等特點。因為對于網絡拓撲的布局和展示是我們對網絡拓撲進行研究的一個重點和難點。
[0003]傳統的網絡拓撲布局都是基于二維平面的。但是二維平面只有橫縱兩個坐標維度,決定了二維平面的網絡拓撲在布局時具有能清晰展示的節點數量有限、當節點過多時會出現節點以及節點之間的連線易疊加、易交叉的弊端。對于規模越大的網絡拓撲,此弊端愈加明顯,也嚴重干擾了我們對拓撲結構的分析和研究。因此二維平面的網絡拓撲的布局和展示效果很不理想,不再能滿足我們的需求。
[0004]隨著計算機的3D技術的發展,在界面上展示一定數量級的3D對象已經成為現實。三維空間給研究人員提供了更大的交互平臺。一個縱向的維度的增加,使得原本擁擠的二維空間多了一個梯度。海量數據或圖形可以分層次,按不同縱深進行展示和布局。可以更加形象的向用戶傳遞信息,提升界面展示效果。
[0005]基于三維空間的特性,將傳統的網絡拓撲展示,從二維空間移到三維空間上來。也成為了一種可能。但仍面臨較多的問題和挑戰。
[0006]首先,由于三維空間的自身特性,現有基于二維空間的網絡拓撲布局的算法和展示方法都不適用。
[0007]其次,拓撲的直觀性和美觀性問題。網絡拓撲是相互關聯的一個數據合集,具有一定的數據關聯特性,如果沿用常規的計算機式的思維方式,僅按照某種特定的方法或算法,對其進行布局展示,結果將會很不理想。因為計算機式的思維方式是機械性的思維,沒有人腦的感知能力(包括主觀的判斷力和界面美感判斷力)。所布局展示的結果,將會變得隨機性較大,不夠直觀,不可控。尤其是無法體現主干網絡的位置、關系。失去整個拓撲原有結構的關聯性和緊密性等特性。
[0008]再者,三維空間雖然增加了一個維度,但此維度如何利用,也是需要深入研究的。如果是利用的不合理,將會使整個拓撲在三維空間內的布局顯得繁瑣、凌亂。
[0009]最后,對于常規拓撲布局展示中的交叉和重疊問題,在三維空間內也會遇到。能否解決交叉和重疊,是決定在三維空間內布局展示成敗的關鍵。
【發明內容】
[0010]針對上述技術問題,本發明提供了一種基于三維空間的網絡拓撲布局方法及系統,能夠解決現有的網絡拓撲技術的不足,改善了現有網絡拓撲技術不適用,布局展示的繁瑣凌亂,并出現重疊和交叉等情況。
[0011]本發明采用如下方法來實現:一種基于三維空間的網絡拓撲布局方法,包括:
定義基于二維的拓撲結構數據,包括:各節點之間的連接關系和一級節點的二維坐標數據;所述一級節點為根據需要選取的核心節點;
定義N*N個權重空間=N權重*N權重,所述權重為在三維空間內定義的最小的空間單
位;
利用如下方法計算節點的自身權重:
C為該節點的孩子節點的個數,i從列表[1,2,3,…,C*C+1]中的I開始依次向后取值,一旦滿足C〈=i*i則停止,則該節點的自身權重為i ;當C=O時的節點稱為葉子節點,所述葉子節點的自身權重為I;
其中,節點的自身權重是指當該節點的所有孩子節點各占用一個權重空間時,保證彼此不交叉時,該節點所需占用的最少數量權重空間時所對應的權重;
孩子節點的最大權重,是指該節點的所有孩子節點中節點的總權重中的最大值;所述葉子節點的孩子節點的最大權重為I;
節點的總權重,就是該節點的自身權重和孩子節點的最大權重相乘所得的權重;則節點所需占用的空間為節點的總權重*節點的總權重得到的權重空間的個數;
從葉子節點開始依次向上計算每個節點的孩子節點的最大權重和節點的總權重,直到計算出一級節點的總權重;
基于定義的一級節點的二維坐標數據和計算出的一級節點的總權重,找出所有兩兩交叉的一級節點;所述兩兩交叉為兩個一級節點的總權重的覆蓋范圍存在重疊;由于一級節點的二維坐標數據是已經定義好的,所以再計算出一級節點的總權重之后,一級節點的總權重覆蓋范圍可能彼此有重疊,所以需要對拓撲網絡進行適當的縮放;
計算所有兩兩交叉的一級節點不交叉時所需的放大比率line_proportion: line_proportion=(first_length+second_length)/the_length ;
其中,所述first_length和second_length為根據兩兩交叉的一級節點的總權重確定的權重半徑;所述the_length為兩兩交叉的一級節點之間的直線距離;
獲取所述放大比率的最大值,對整個一級節點進行放大,并重新計算一級節點的二維坐標數據;
根據需要設定層間距,所述層間距為各級節點之間的層與層之間的垂直距離,根據重新計算的一級節點的二維坐標數據、各節點的總權重、孩子節點的最大權重和層間距,計算所有節點的三維坐標數據;通過所述層間距可以將每個層級的節點定位在同一個縱向維度上,將所有節點的坐標從二維擴展到三維;每一個節點下的孩子節點的坐標,如下計算:根據節點的二維坐標數據,節點的總權重,孩子節點的最大權重給每個孩子節點分配二維坐標數據,再根據層級和層間距來確定節點的三維坐標數據;
利用獲得的三維坐標數據,進行三維空間的網絡拓撲布局展示。
[0012] 其中,一級節點采用手動定義其二維坐標數據,并將一級節點單獨作為一個層級展示,由于一級節點基本是主干節點或者核心節點,利用手動定義其二維坐標數據,可以控制這個拓撲的主體布局和走向,如果利用計算機的機械原理自動布局的話,會使得整個拓撲生硬、不直觀。[0013]進一步地,所述拓撲結構數據包括:節點ID、節點類型、節點所處層級、橫坐標、縱坐標和相連節點列表,其中橫坐標、縱坐標為一級節點特有。
[0014]進一步地,所述放大比率line_proportion為:
line_proportion=(first_length+second_length+blank_length)/the_length ;
其中,所述first_length和second_length為根據兩兩交叉的一級節點的總權重確定的權重半徑;所述the_length為兩兩交叉的一級節點之間的直線距離;所述blank_length為根據美觀需求而設置的兩個一級節點之間的最小距離。
[0015]進一步地,所述獲取所述放大比率的最大值,對整個一級節點進行放大為:選取一個一級節點作為參照,其他一級節點依次按照所述放大比率的最大值進行放大。
[0016]本發明采用如下系統來實現:一種基于三維空間的網絡拓撲布局系統,包括: 初始定義模塊,用于定義基于二維的拓撲結構數據,包括:各節點之間的連接關系和一
級節點的二維坐標數據;所述一級節點為根據需要選取的核心節點;定義N*N個權重空間=N權重*N權重,所述權重為在三維空間內定義的最小的空間單位;
權重計算模塊,用于利用如下系統計算節點的自身權重:
C為該節點的孩子節點的個數,i從列表[1,2,3,…,C*C+1]中的I開始依次向后取值,一旦滿足C〈=i*i則停止,則該節點的自身權重為i ;當C=O時的節點稱為葉子節點,所述葉子節點的自身權重為I ;
孩子節點的最大權重,是指該節點的所有孩子節點中節點的總權重中的最大值;所述葉子節點的孩子節點的最大權重為I ;
節點的總權重,就是該節點的自身權重和孩子節點的最大權重相乘所得的權重;
從葉子節點開始依次向上計算每個節點的孩子節點的最大權重和節點的總權重,直到計算出一級節點的總權重;
放大比率計算模塊,用于基于定義的一級節點的二維坐標數據和計算出的一級節點的總權重,找出所有兩兩交叉的一級節點;所述兩兩交叉為兩個一級節點的總權重的覆蓋范圍存在重置;
計算所有兩兩交叉的一級節點不交叉時所需的放大比率line_proportion: line_proportion=(first_length+second_length)/the_length ;
其中,所述f irst_length和second_length為根據兩兩交叉的一級節點的總權重確定的權重半徑;所述the_length為兩兩交叉的一級節點之間的直線距離;
放大模塊,用于獲取所述放大比率的最大值,對整個一級節點進行放大,并重新計算一級節點的二維坐標數據;
坐標數據計算模塊,用于根據需要設定層間距,所述層間距為各級節點之間的層與層之間的垂直距離,根據重新計算的一級節點的二維坐標數據、各節點的總權重、孩子節點的最大權重和層間距,計算所有節點的三維坐標數據;
布局展示模塊,用于利用獲得的三維坐標數據,進行三維空間的網絡拓撲布局展示。
[0017]進一步地,所述拓撲結構數據包括:節點ID、節點類型、節點所處層級、橫坐標、縱坐標和相連節點列表,其中橫坐標、縱坐標為一級節點特有。
[0018]進一步地,所述放大比率line_proportion為:
line_proportion=(first_length+second_length+blank_length)/the_length ; 其中,所述first_length和second_length為根據兩兩交叉的一級節點的總權重確定的權重半徑;所述the_length為兩兩交叉的一級節點之間的直線距離;所述blank_length為根據美觀需求而設置的兩個一級節點之間的最小距離。
[0019]進一步地,所述獲取所述放大比率的最大值,對整個一級節點進行放大為:選取一個一級節點作為參照,其他一級節點依次按照所述放大比率的最大值進行放大。
[0020]綜上所述,本發明提供了一種基于三維空間的網絡拓撲布局方法及系統,本發明通過確定各節點的自身權重,孩子節點的最大權重和節點的總權重,從葉子節點循環向一級節點推進計算,當確定一級節點的總權重之后,則根據定義的二維坐標數據判斷一級節點之間是否存在交叉,若是則獲取最大的放大比率,利用所述放大比率對一級節點拓撲結構進行放大,從而避免交叉。本發明提供的網絡拓撲布局方法使得主體網絡布局可控,布局合理、清晰、實用;避免了節點之間的重疊和交叉;并且本發明所述的方法的時間復雜度低,節省時間和資源;本發明除了適用于網絡拓撲布局之外,也適用于其他類型的關系型數據或者樹形數據的布局和展示。
【專利附圖】
【附圖說明】
[0021]為了更清楚地說明本發明的技術方案,下面將對實施例中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發明中記載的一些實施例,對于本領域普通技術人員來講,在不付出創造性勞動的前提下,還可以根據這些附圖獲得其他的附圖。
[0022]圖1為本發明中用到的權重和權重空間的示意圖;
圖2為本發明提供的一種基于三維空間的網絡拓撲布局方法流程圖;
圖3為本發明提供的實施例的節點的自身權重的計算結果示意圖;
圖4為本發明提供的實施例的孩子節點的最大權重的計算結果示意圖;
圖5為本發明提供的實施例的節點的總權重的計算結果示意圖;
圖6為本發明中f irst_length、second_length和the_length的取值不意圖;
圖7為本發明提供的一種基于三維空間的網絡拓撲布局系統結構圖;
圖8為本發明提供的一個實施例的效果圖。
【具體實施方式】
[0023]本發明給出了一種基于三維空間的網絡拓撲布局方法及系統,為了使本【技術領域】的人員更好地理解本發明實施例中的技術方案,并使本發明的上述目的、特征和優點能夠更加明顯易懂,下面結合附圖對本發明中技術方案作進一步詳細的說明:
我們期望能夠保證在三維空間里,每個節點以及節點間的連線不會出現交叉或者重疊,因此需要保證每一個節點都在獨立的空間內。因此引進權重的概念:定義N*N個權重空間=N權重*N權重,所述權重為在三維空間內定義的最小的空間單位。若圖1所示,是一個8*8個權重空間=8權重*8權重,則節點I所占用的空間就是I權重,節點2和4占用了2*2個權重空間=2權重*2權重,節點3占用了 4*4個權重空間=4權重*4權重;這種基于權重的平均獨立分布的思想,保證了每個節點之間獨立分布,不會產生重疊和交叉。
[0024]本發明首先提供了一種基于三維空間的網絡拓撲布局方法,如圖2所示,包括: S201定義基于二維的拓撲結構數據,包括:各節點之間的連接關系和一級節點的二維坐標數據;所述一級節點為根據需要選取的核心節點;所述拓撲結構數據可以是json格式或者xml格式,如下:
[
ID (節點唯一標識),
類型(路由器、交換機、防火墻、服務器等),
層級(一級節點有),
橫坐標,(一級節點有)
縱坐標,(一級節點有)
[相連節點列表]
]
S202定義N*N個權重空間=N權重*N權重,所述權重為在三維空間內定義的最小的空間單位;
利用如下方法計算節點的自身權重:
C為該節點的孩子節點的個數,i從列表[1,2,3,…,C*C+1]中的I開始依次向后取值,一旦滿足C〈=i*i則停止,則該節點的自身權重為i ;當C=O時的節點稱為葉子節點,所述葉子節點的自身權重為I ;可利用程序實現如下,其中,weight為節點的自身權重:for i in range (I, OC+1):1f C<= i*1:weight = ibreak
例如,存在一個等待布局的三維網絡拓撲結構,如圖3所示,將按照上述方式計算的各個節點的自身權重標注在各個節點的旁邊;
孩子節點的最大權重,是指該節點的所有孩子節點中節點的總權重中的最大值;所述葉子節點的孩子節點的最大權重為I ;
節點的總權重,就是該節點的自身權重和孩子節點的最大權重相乘所得的權重;
S203從葉子節點開始依次向上計算每個節點的孩子節點的最大權重和節點的總權重,直到計算出一級節點的總權重;
針對圖3所示的等待布局的三維網絡拓撲結構,按照上述方案計算所有節點的孩子節點的最大權重,并標注在各個節點旁邊,如圖4所示;計算所有節點的總權重,并標注在各個節點旁邊,如圖5所示,其中,一級節點的總權重為16權重,需要占用16*16個權重空間;其中孩子節點的最大權重和節點的總權重的計算是彼此交替的,從葉子節點開始一步步向一級節點推進;
S204基于定義的一級節點的二維坐標數據和計算出的一級節點的總權重,找出所有兩兩交叉的一級節點;所述兩兩交叉為兩個一級節點的總權重的覆蓋范圍存在重疊;
S205計算所有兩兩交叉的一級節點不交叉時所需的放大比率line_proportion: line_proportion=(first_length+second_length)/the_length ;
其中,所述first_length和second_length為根據兩兩交叉的一級節點的總權重確定的權重半徑;所述the_length為兩兩交叉的一級節點之間的直線距離;所述first_length、second_length和the_length的取值可以參考圖6所示取值,其中兩個正方形區域是一級節點I和2的節點的總權重覆蓋的權重空間:
S206獲取所述放大比率的最大值,對整個一級節點進行放大,并重新計算一級節點的二維坐標數據;
S207根據需要設定層間距,所述層間距為各級節點之間的層與層之間的垂直距離,根據重新計算的一級節點的二維坐標數據、各節點的總權重、孩子節點的最大權重和層間距,計算所有節點的三維坐標數據;
S208利用獲得的三維坐標數據,進行三維空間的網絡拓撲布局展示。
[0025]優選地,所述拓撲結構數據包括:節點ID、節點類型、節點所處層級、橫坐標、縱坐標和相連節點列表,其中橫坐標、縱坐標為一級節點特有。
[0026]優選地,所述放大比率line_proportion為:
line_proportion=(first_length+second_length+blank_length)/the_length ;
其中,所述first_length和second_length為根據兩兩交叉的一級節點的總權重確定的權重半徑;所述the_length為兩兩交叉的一級節點之間的直線距離;所述blank_length為根據美觀需求而設置的兩個一級節點之間的最小距離。
[0027]優選地,所述獲取所述放大比率的最大值,對整個一級節點進行放大為:選取一個一級節點作為參照,其他一級節點依次按照所述放大比率的最大值進行放大。
[0028]本發明還提供了一種基于三維空間的網絡拓撲布局系統,如圖7所示,包括: 初始定義模塊701,用于定義基于二維的拓撲結構數據,包括:各節點之間的連接關系
和一級節點的二維坐標數據;所述一級節點為根據需要選取的核心節點;定義N*N個權重空間=N權重*N權重,所述權重為在三維空間內定義的最小的空間單位;
權重計算模塊702,用于利用如下系統計算節點的自身權重:
C為該節點的孩子節點的個數,i從列表[1,2,3,…,C*C+1]中的I開始依次向后取值,一旦滿足C〈=i*i則停止,則該節點的自身權重為i ;當C=O時的節點稱為葉子節點,所述葉子節點的自身權重為I ;
孩子節點的最大權重,是指該節點的所有孩子節點中節點的總權重中的最大值;所述葉子節點的孩子節點的最大權重為I ;
節點的總權重,就是該節點的自身權重和孩子節點的最大權重相乘所得的權重;
從葉子節點開始依次向上計算每個節點的孩子節點的最大權重和節點的總權重,直到計算出一級節點的總權重;
放大比率計算模塊703,用于基于定義的一級節點的二維坐標數據和計算出的一級節點的總權重,找出所有兩兩交叉的一級節點;所述兩兩交叉為兩個一級節點的總權重的覆蓋范圍存在重疊;
計算所有兩兩交叉的一級節點不交叉時所需的放大比率line_proportion: line_proportion=(first_length+second_length)/the_length ;
其中,所述first_length和second_length為根據兩兩交叉的一級節點的總權重確定的權重半徑;所述the_length為兩兩交叉的一級節點之間的直線距離;
放大模塊704,用于獲取所述放大比率的最大值,對整個一級節點進行放大,并重新計算一級節點的二維坐標數據;
坐標數據計算模塊705,用于根據需要設定層間距,所述層間距為各級節點之間的層與層之間的垂直距離,根據重新計算的一級節點的二維坐標數據、各節點的總權重、孩子節點的最大權重和層間距,計算所有節點的三維坐標數據;
布局展示模塊706,用于利用獲得的三維坐標數據,進行三維空間的網絡拓撲布局展
/Jn ο
[0029]優選地,所述拓撲結構數據包括:節點ID、節點類型、節點所處層級、橫坐標、縱坐標和相連節點列表,其中橫坐標、縱坐標為一級節點特有。
[0030]優選地,所述放大比率line_proportion為:
line_proportion=(first_length+second_length+blank_length)/the_length ;
其中,所述first_length和second_length為根據兩兩交叉的一級節點的總權重確定的權重半徑;所述the_length為兩兩交叉的一級節點之間的直線距離;所述blank_length為根據美觀需求而設置的兩個一級節點之間的最小距離。
[0031]優選地,所述獲取所述放大比率的最大值,對整個一級節點進行放大為:選取一個一級節點作為參照,其他一級節點依次按照所述放大比率的最大值進行放大。
[0032]如上所述,本發明給出了一種基于三維空間的網絡拓撲布局方法及系統的具體實施例,圖8給出了一種具體實施例的效果圖,其與傳統方法的區別在于,傳統的網絡拓撲布局是基于二維平面的,由于只有橫縱兩個坐標維度,所以會造成布局混亂、不清晰,甚至出現重疊和交叉的情況。本發明所給的布局方案是將節點分布在三維網絡拓撲空間中,利用所給的方式計算每個節點的自身權重,孩子節點的最大權重和節點的總權重,并從葉子節點開始循環計算,直至計算出一級節點的總權重,從而進一步獲取三維空間中的各節點的三維坐標數據,最后將各個節點布局展示出來。本發明所述的方案使得三維網絡拓撲速度快,不會占用過多的CPU資源,布局清晰并且實用,不會造成各個節點之間重疊和交叉。
[0033]以上實施例用以說明而非限制本發明的技術方案。不脫離本發明精神和范圍的任何修改或局部替換,均應涵蓋在本發明的權利要求范圍當中。
【權利要求】
1.一種基于三維空間的網絡拓撲布局方法,其特征在于,包括: 定義基于二維的拓撲結構數據,包括:各節點之間的連接關系和一級節點的二維坐標數據;所述一級節點為根據需要選取的核心節點; 定義N*N個權重空間=N權重*N權重,所述權重為在三維空間內定義的最小的空間單位; 利用如下方法計算節點的自身權重: C為該節點的孩子節點的個數,i從列表[1,2,3,…,C*C+1]中的I開始依次向后取值,一旦滿足C〈=i*i則停止,則該節點的自身權重為i ;當C=O時的節點稱為葉子節點,所述葉子節點的自身權重為I; 孩子節點的最大權重,是指該節點的所有孩子節點中節點的總權重中的最大值;所述葉子節點的孩子節點的最大權重為I; 節點的總權重,是該節點的自身權重和孩子節點的最大權重相乘所得的權重; 從葉子節點開始依次向上計算每個節點的孩子節點的最大權重和節點的總權重,直到計算出一級節點的總權重; 基于定義的一級節點的二維坐標數據和計算出的一級節點的總權重,找出所有兩兩交叉的一級節點;所述兩兩交叉為兩個一級節點的總權重的覆蓋范圍存在重疊; 計算所有兩兩交叉的一級節點不交叉時所需的放大比率line_proportion: line_proportion=(first_length+second_length)/the_length ; 其中,所述first_length和second_length為根據兩兩交叉的一級節點的總權重確定的權重半徑;所述the_length為兩兩交叉的一級節點之間的直線距離; 獲取所述放大比率的最大值,對整個一級節點進行放大,并重新計算一級節點的二維坐標數據; 根據需要設定層間距,所述層間距為各級節點之間的層與層之間的垂直距離,根據重新計算的一級節點的二維坐標數據、各節點的總權重、孩子節點的最大權重和層間距,計算所有節點的三維坐標數據; 利用獲得的三維坐標數據,進行三維空間的網絡拓撲布局展示。
2.如權利要求1所述的方法,其特征在于,所述拓撲結構數據包括:節點ID、節點類型、節點所處層級、橫坐標、縱坐標和相連節點列表,其中橫坐標、縱坐標為一級節點特有。
3.如權利要求1所述的方法,其特征在于,所述放大比率line_proportion為: line_proportion=(first_length+second_length+blank_length)/the_length ; 其中,所述first_length和second_length為根據兩兩交叉的一級節點的總權重確定的權重半徑;所述the_length為兩兩交叉的一級節點之間的直線距離;所述blank_length為根據美觀需求而設置的兩個一級節點之間的最小距離。
4.如權利要求1所述的方法,其特征在于,所述獲取所述放大比率的最大值,對整個一級節點進行放大為:選取一個一級節點作為參照,其他一級節點依次按照所述放大比率的最大值進行放大。
5.一種基于三維空間的網絡拓撲布局系統,其特征在于,包括: 初始定義模塊,用于定義基于二維的拓撲結構數據,包括:各節點之間的連接關系和一級節點的二維坐標數據;所述一級節點為根據需要選取的核心節點;定義N*N個權重空間=N權重*N權重,所述權重為在三維空間內定義的最小的空間單位; 權重計算模塊,用于利用如下系統計算節點的自身權重: C為該節點的孩子節點的個數,i從列表[1,2,3,…,C*C+1]中的I開始依次向后取值,一旦滿足C〈=i*i則停止,則該節點的自身權重為i ;當C=O時的節點稱為葉子節點,所述葉子節點的自身權重為1; 孩子節點的最大權重,是指該節點的所有孩子節點中節點的總權重中的最大值;所述葉子節點的孩子節點的最大權重為I; 節點的總權重,就是該節點的自身權重和孩子節點的最大權重相乘所得的權重; 從葉子節點開始依次向上計算每個節點的孩子節點的最大權重和節點的總權重,直到計算出一級節點的總權重; 放大比率計算模塊,用于基于定義的一級節點的二維坐標數據和計算出的一級節點的總權重,找出所有兩兩交叉的一級節點;所述兩兩交叉為兩個一級節點的總權重的覆蓋范圍存在重置; 計算所有兩兩交叉的一級節點不交叉時所需的放大比率line_proportion: line_proportion=(first_length+second_length)/the_length ; 其中,所述first_length和second_length為根據兩兩交叉的一級節點的總權重確定的權重半徑;所述the_length為兩兩交叉的一級節點之間的直線距離; 放大模塊,用于獲取所述放大比率的最大值,對整個一級節點進行放大,并重新計算一級節點的二維坐標數據; 坐標數據計算模塊,用于根據需要設定層間距,所述層間距為各級節點之間的層與層之間的垂直距離,根據重新計算的一級節點的二維坐標數據、各節點的總權重、孩子節點的最大權重和層間距,計算所有節點的三維坐標數據; 布局展示模塊,用于利用獲得的三維坐標數據,進行三維空間的網絡拓撲布局展示。
6.如權利要求5所述的系統,其特征在于,所述拓撲結構數據包括:節點ID、節點類型、節點所處層級、橫坐標、縱坐標和相連節點列表,其中橫坐標、縱坐標為一級節點特有。
7.如權利要求5所述的系統,其特征在于,所述放大比率line_proportion為: line_proportion=(first_length+second_length+blank_length)/the_length ; 其中,所述first_length和second_length為根據兩兩交叉的一級節點的總權重確定的權重半徑;所述the_length為兩兩交叉的一級節點之間的直線距離;所述blank_length為根據美觀需求而設置的兩個一級節點之間的最小距離。
8.如權利要求5所述的系統,其特征在于,所述獲取所述放大比率的最大值,對整個一級節點進行放大為:選取一個一級節點作為參照,其他一級節點依次按照所述放大比率的最大值進行放大。
【文檔編號】H04L12/24GK103916262SQ201310691465
【公開日】2014年7月9日 申請日期:2013年12月17日 優先權日:2013年12月17日
【發明者】王亮, 孫晉超, 肖新光 申請人:哈爾濱安天科技股份有限公司