專利名稱:動(dòng)畫展現(xiàn)動(dòng)態(tài)圖序列之間的轉(zhuǎn)變的方法和裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明總體上涉及動(dòng)態(tài)圖可視化領(lǐng)域,具體涉及一種動(dòng)畫展現(xiàn)動(dòng)態(tài)圖序列之間的轉(zhuǎn)變的方法和裝置。
背景技術(shù):
與靜態(tài)圖相比,動(dòng)態(tài)圖隨著時(shí)間而變化。圖元素(節(jié)點(diǎn)/邊)將被動(dòng)態(tài)地增加、移除,或者其屬性動(dòng)態(tài)地發(fā)生改變??梢暬瘎?dòng)態(tài)圖的主要目的是幫助揭示沿著時(shí)間維度的變化模式。它將揭露諸如社會(huì)網(wǎng)絡(luò)中社會(huì)團(tuán)體的演變之類的圖或網(wǎng)絡(luò)演變的本質(zhì)。
對(duì)于動(dòng)態(tài)圖 可視化,存在很多挑戰(zhàn)。其中最重要的一個(gè)是在不同的時(shí)間幀之間平滑展現(xiàn)圖的變化,以使用戶在視覺(jué)上保持連貫而不感到突兀。
具體地,圖變化可以分成以下三種類型1.由于移除元素而產(chǎn)生的圖變化;2.由于增加元素而產(chǎn)生的圖變化;以及3.由于改變現(xiàn)有元素的屬性而產(chǎn)生的圖變化。在動(dòng)態(tài)圖中移除或增加元素將直接改變圖的拓樸結(jié)構(gòu),這是非常顯著的圖變化。在這種情況下,如果不進(jìn)行動(dòng)畫展現(xiàn),用戶#^可能失去其注意焦點(diǎn),并且困惑于圖的突然變化。第三種圖變化相對(duì)輕微,它通常會(huì)導(dǎo)致元素的移動(dòng)。
為了在使用戶在視覺(jué)上保持連貫的同時(shí)可視化上述圖變化,現(xiàn)有技術(shù)中的動(dòng)態(tài)圖可視化系統(tǒng)已經(jīng)提出了一些動(dòng)畫展現(xiàn)方法。例如,目前最新且功能最強(qiáng)大的動(dòng)態(tài)圖可視化系統(tǒng)是Sonia (參見(jiàn)http:〃sonia.stanford.edu)。該系統(tǒng)提供了包括動(dòng)畫展現(xiàn)圖變化在內(nèi)的完整的動(dòng)態(tài)圖可視化方案。在該
系統(tǒng)中,使用邊驅(qū)動(dòng)的動(dòng)畫展現(xiàn)來(lái)平滑iiyL現(xiàn)拓樸結(jié)構(gòu)變化和屬性變化。
所有節(jié)點(diǎn)初始地全都布置在顯示器上(孤立的節(jié)點(diǎn)通常布置在一個(gè)圓上)。在節(jié)點(diǎn)之間動(dòng)態(tài)地添加或移除邊,新增加或移除的邊將兩個(gè)連接的節(jié)點(diǎn)拉到一起,或者將這些節(jié)點(diǎn)釋放到它們的初始位置。邊的長(zhǎng)度與邊的權(quán)重成反比。邊權(quán)重的變化將導(dǎo)致所連接的節(jié)點(diǎn)的移動(dòng)。節(jié)點(diǎn)在動(dòng)畫展現(xiàn)時(shí)沿著直線^移動(dòng)。當(dāng)變化的元素?cái)?shù)目較少時(shí),該動(dòng)畫展現(xiàn)方法是相當(dāng)有效且清楚的。然而,當(dāng)變化的元素?cái)?shù)目較多時(shí),由于節(jié)點(diǎn)的移動(dòng)距離較長(zhǎng),并且在移動(dòng)時(shí)容易發(fā)生元素重疊,因此該動(dòng)畫展現(xiàn)方法很有可能讓用戶產(chǎn)生 視覺(jué)混亂。此外,在大多數(shù)情況下,節(jié)點(diǎn)元素會(huì)被頻繁地添加到圖中或者 從其移除。對(duì)此,該動(dòng)畫展現(xiàn)方法將顯得不足。
發(fā)明內(nèi)容
在下文中給出了關(guān)于本發(fā)明的簡(jiǎn)要概述,以便提供關(guān)于本發(fā)明的某些 方面的基本理解。應(yīng)當(dāng)理解,這個(gè)概述并不是關(guān)于本發(fā)明的窮舉性概述。 它并不是意圖確定本發(fā)明的關(guān)鍵或重要部分,也不是意圖限定本發(fā)明的范 圍。其目的僅僅是以簡(jiǎn)化的形式給出某些概念,以此作為稍后論述的更詳 細(xì)描述的前序。
為了解決現(xiàn)有技術(shù)的上述問(wèn)題,本發(fā)明的目的是提供一種動(dòng)畫展現(xiàn)動(dòng) 態(tài)圖序列之間的轉(zhuǎn)變的方法和裝置,其能夠平滑且清楚地展現(xiàn)動(dòng)態(tài)圖序列 之間的轉(zhuǎn)變。
在下文中,為了敘述簡(jiǎn)明起見(jiàn),按照動(dòng)態(tài)圖序列當(dāng)中在時(shí)間上先后相 繼顯示的居前圖和居后圖之間的節(jié)點(diǎn)變化,將居后圖中相對(duì)于居前圖新增 加的節(jié)點(diǎn)稱作"新增加節(jié)點(diǎn),,,將居前圖和居后圖中都存在的節(jié)點(diǎn)稱作"未 變節(jié)點(diǎn)",并且將居前圖中相對(duì)于居后圖被移除的節(jié)點(diǎn)稱作"被移除節(jié)點(diǎn)"。
為了實(shí)現(xiàn)本發(fā)明的上述目的,才艮據(jù)本發(fā)明的一個(gè)方面,提供了一種動(dòng) 畫展現(xiàn)動(dòng)態(tài)圖序列之間的轉(zhuǎn)變的方法,其中動(dòng)態(tài)圖序列包括在時(shí)間上先后
相繼顯示的居前圖和居后圖,所述方法包括對(duì)于被移除節(jié)點(diǎn),選擇與其 最近的未變節(jié)點(diǎn),并將被移除節(jié)點(diǎn)通過(guò)動(dòng)畫與之合并,從而動(dòng)畫展現(xiàn)被移 除節(jié)點(diǎn)的移除;以及對(duì)于新增加節(jié)點(diǎn),選擇與其最近的未變節(jié)點(diǎn),并將新 增加節(jié)點(diǎn)通過(guò)動(dòng)畫從其分裂出去,從而動(dòng)畫展現(xiàn)新增加節(jié)點(diǎn)的增加。
根據(jù)本發(fā)明的另 一個(gè)方面,還提供了 一種動(dòng)畫展現(xiàn)動(dòng)態(tài)圖序列之間的 轉(zhuǎn)變的裝置,其中動(dòng)態(tài)圖序列包括在時(shí)間上先后相繼顯示的居前圖和居后 圖,所述裝置包括節(jié)點(diǎn)移除動(dòng)畫展現(xiàn)單元,其被配置成對(duì)于被移除節(jié)點(diǎn), 選捧與其最近的未變節(jié)點(diǎn),并將被移除節(jié)點(diǎn)通過(guò)動(dòng)畫與之合并,從而動(dòng)畫
展現(xiàn)被移除節(jié)點(diǎn)的移除;以及節(jié)點(diǎn)增加動(dòng)畫展現(xiàn)單元,其被配置成對(duì)于新 增加節(jié)點(diǎn),選擇與其最近的未變節(jié)點(diǎn),并將新增加節(jié)點(diǎn)通過(guò)動(dòng)畫從其分裂 出去,從而動(dòng)畫展現(xiàn)新增加節(jié)點(diǎn)的增加。
依據(jù)本發(fā)明的其它方面,還提供了相應(yīng)的計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)和計(jì)算 ;^n^呈序產(chǎn)品。根據(jù)本發(fā)明的上述技術(shù)方案,在動(dòng)畫展現(xiàn)過(guò)程中,可以縮短節(jié)點(diǎn)的移動(dòng)距離,并且可以避免在節(jié)點(diǎn)移動(dòng)時(shí)發(fā)生移動(dòng)路徑交叉和圖邊交叉,從而平滑且清楚地展現(xiàn)動(dòng)態(tài)圖序列之間的轉(zhuǎn)變。
通過(guò)以下結(jié)合附圖對(duì)本發(fā)明的最佳實(shí)施例的詳細(xì)說(shuō)明,本發(fā)明的這些以及其他優(yōu)點(diǎn)將更加明顯。
的部件。所述附圖連同下面的詳細(xì)說(shuō)明 一起包含在本說(shuō)明書中并且形成本說(shuō)明書的一部分,而且用來(lái)進(jìn)一步舉例說(shuō)明本發(fā)明的優(yōu)選實(shí)施例和解釋本
發(fā)明的原理和優(yōu)點(diǎn)。在附圖中
圖1示出了根據(jù)本發(fā)明實(shí)施例的動(dòng)畫展現(xiàn)動(dòng)態(tài)圖序列之間的轉(zhuǎn)變的方法的流程圖2示出了根據(jù)本發(fā)明實(shí)施例的動(dòng)畫展現(xiàn)動(dòng)態(tài)圖序列之間的轉(zhuǎn)變的方法的示意圖3示出了圖1所示的動(dòng)畫展現(xiàn)被移除節(jié)點(diǎn)的移除的處理的詳細(xì)流程
圖4示出了圖3所示的確定被移除節(jié)點(diǎn)的關(guān)鍵il:接點(diǎn)的處理的示例
圖5示出了圖l所示的動(dòng)畫展現(xiàn)新增加節(jié)點(diǎn)的增加的處理的詳細(xì)流程
圖6示出了根據(jù)本發(fā)明實(shí)施例的動(dòng)畫展現(xiàn)由于添加了邊而使互不連
通的第 一連通子圖和第二連通子圖連通成一個(gè)連通圖的圖變化的處理的
流程圖7示出了圖6所示的動(dòng)畫展現(xiàn)由于添加了邊而^^互不連通的第一連通子圖和第二連通子圖連通成一個(gè)連通圖的圖變化的處理的示例圖8示出了根據(jù)本發(fā)明實(shí)施例的動(dòng)畫展現(xiàn)由于移除了邊而使一個(gè)連
通圖分裂成互不連通的第 一連通子圖和第二連通子圖的圖變化的處理的
it^圖;以及圖9示出了根據(jù)本發(fā)明實(shí)施例的動(dòng)畫展現(xiàn)動(dòng)態(tài)圖序列之間的轉(zhuǎn)變的 裝置的框圖。
具體實(shí)施例方式
在下文中將結(jié)合附圖對(duì)本發(fā)明的示范性實(shí)施例進(jìn)行描述.為了清楚和 簡(jiǎn)明起見(jiàn),在說(shuō)明書中并未描述實(shí)際實(shí)施方式的所有特征。然而,應(yīng)該了 解,在開(kāi)發(fā)任何這種實(shí)際實(shí)施例的過(guò)程中必須做出4艮多特定于實(shí)施方式的 決定,以便實(shí)現(xiàn)開(kāi)發(fā)人員的具體目標(biāo),例如,符合與系統(tǒng)及業(yè)務(wù)相關(guān)的那 些限制條件,并且這些限制條件可能會(huì)隨著實(shí)施方式的不同而有所改變。 此外,還應(yīng)該了解,雖然開(kāi)發(fā)工作有可能是非常復(fù)雜和費(fèi)時(shí)的,M得益
于;^^開(kāi)內(nèi)容的本領(lǐng)域技術(shù)人員來(lái)說(shuō),這種開(kāi)發(fā)工作僅僅是例行的任務(wù)。
在此,還需要說(shuō)明的一點(diǎn)是,為了避免因不必要的細(xì)節(jié)而模糊了本發(fā) 明,在附圖中僅僅示出了與才艮據(jù)本發(fā)明的方案密切相關(guān)的裝置結(jié)構(gòu)和/或 處理步驟,而省略了與本發(fā)明關(guān)系不大的其他細(xì)節(jié).
圖l示出了根據(jù)本發(fā)明實(shí)施例的動(dòng)畫展現(xiàn)動(dòng)態(tài)圖序列之間的轉(zhuǎn)變的 方法的流禾呈圖,其中動(dòng)態(tài)圖序列包括在時(shí)間上先后相繼顯示的居前圖和居 后圖。
如圖i所示,在步驟siio中,對(duì)于被移除節(jié)點(diǎn),選擇與其最近的未 變節(jié)點(diǎn),并將被移除節(jié)點(diǎn)通過(guò)動(dòng)畫與"^合并,從而動(dòng)畫展現(xiàn)被移除節(jié)點(diǎn)的
移除。示意性地,如圖2的部分(a)所示,當(dāng)要從居前圖中移除節(jié)點(diǎn)nl時(shí), 在從居前圖向居后圖轉(zhuǎn)變的動(dòng)畫展現(xiàn)過(guò)程中,將被移除節(jié)點(diǎn)nl合并到未 變節(jié)點(diǎn)n2,即將被移除節(jié)點(diǎn)nl從其當(dāng)前位置ife漸移動(dòng)到未變節(jié)點(diǎn)n2的 位置,從而動(dòng)畫展現(xiàn)被移除節(jié)點(diǎn)nl的移除。
在步驟S120中,對(duì)于新增加節(jié)點(diǎn),選擇與其最近的未變節(jié)點(diǎn),并將 新增加節(jié)點(diǎn)通過(guò)動(dòng)畫從其分裂出去,從而動(dòng)畫展現(xiàn)新增加節(jié)點(diǎn)的增加。示 意性地,如圖2的部分(b)所示,當(dāng)要向居前圖增加新節(jié)點(diǎn)n4時(shí),在M 前圖向居后圖轉(zhuǎn)變的動(dòng)畫展現(xiàn)過(guò)程中,將新增加節(jié)點(diǎn)n4從未變節(jié)點(diǎn)n3 分裂出去,即將新增加節(jié)點(diǎn)n4從未變節(jié)點(diǎn)n3的位置逐漸移動(dòng)到新增加節(jié) 點(diǎn)n4的目標(biāo)位置,從而動(dòng)畫展現(xiàn)新增加節(jié)點(diǎn)n4的增加。
圖3示出了圖l所示的動(dòng)畫展現(xiàn)被移除節(jié)點(diǎn)的移除的處理的詳細(xì)流程圖。
如圖3所示,在步驟S310,在居前圖內(nèi)查找與被移除節(jié)點(diǎn)連通的最近未變節(jié)點(diǎn)作為被移除節(jié)點(diǎn)的關(guān)鍵連接點(diǎn)。具體地,首先,在居前圖內(nèi)從被移除節(jié)點(diǎn)開(kāi)始執(zhí)行廣度優(yōu)先搜索,以在居前圖內(nèi)的未變節(jié)點(diǎn)當(dāng)中查找與被移除節(jié)點(diǎn)連通且路徑最短的節(jié)點(diǎn),并且記^目應(yīng)的最短路徑作為最短路
徑集合。接下來(lái),對(duì)于最短路徑集合中的每條最短路徑,通it^目加該最短路徑中的各邊的權(quán)重來(lái)計(jì)算該最短路徑的權(quán)重。然后,根據(jù)路徑權(quán)重在最短#集合當(dāng)中選擇一條最短路徑,并將其所連接的未變節(jié)點(diǎn)確定為被移除節(jié)點(diǎn)的關(guān)鍵連接點(diǎn)。
在步驟S320,以動(dòng)畫方式將被移除節(jié)點(diǎn)從其當(dāng)前位置移動(dòng)到所確定的被移除節(jié)點(diǎn)的關(guān)鍵連接點(diǎn)的位置。
為了更清楚地描述如何確定被移除節(jié)點(diǎn)的關(guān)鍵連接點(diǎn),下面結(jié)合圖4的示例對(duì)此加以進(jìn)一步i兌明。圖4中的部分(a)對(duì)應(yīng)于動(dòng)態(tài)圖序列中的居前圖,而圖4中的部分(b)對(duì)應(yīng)于動(dòng)態(tài)圖序列中的居后圖,其中節(jié)點(diǎn)l、 2、3和4是被移除節(jié)點(diǎn),而節(jié)點(diǎn)5、 6和7是未變節(jié)點(diǎn)。對(duì)于被移除節(jié)點(diǎn)l,其最短絲集合為{(1, 2, 5), (1, 3, 5), (1, 3, 6)},其中絲(l, 2, 5)的權(quán)重為3+3=6, i^M圣(1, 3,5)的權(quán)重為2+2=4,而路徑(l, 3, 6)的權(quán)重為2 + 1 = 3,因此被移除節(jié)點(diǎn)1的關(guān)鍵連接點(diǎn)被確定為未變節(jié)點(diǎn)5。對(duì)于被移除節(jié)點(diǎn)2,其最短i^圣集合為((2, 5) },其中路徑(2, 5)的權(quán)重為3,因此被移除節(jié)點(diǎn)2的關(guān)鍵連接點(diǎn)被確定為未變節(jié)點(diǎn)5。對(duì)于被移除節(jié)點(diǎn)3,其最短路徑集合為{(3,5),(3,6)},其中路徑(3,5)的權(quán)重為2,而路徑(3,6)的權(quán)重為1,因此被移除節(jié)點(diǎn)3的關(guān)鍵連接點(diǎn)被確定為未變節(jié)點(diǎn)5。對(duì)于被移除節(jié)點(diǎn)4,其最短5§4圣集合為{(4,7)},其中#(4,7)的權(quán)重為1,因此被移除節(jié)點(diǎn)4的關(guān)鍵連接點(diǎn)被確定為未變節(jié)點(diǎn)7。需要注意的是,雖然在本例中是選擇具有最大權(quán)重的最短5^,但是例如在權(quán)重表示節(jié)點(diǎn)之間的疏遠(yuǎn)程度的情況下,也可以選擇具有最小權(quán)重的最短路徑。
圖5示出了圖l所示的動(dòng)畫展現(xiàn)新增加節(jié)點(diǎn)的增加的處理的詳細(xì)流程圖。
如圖5所示,在步驟S510,與圖3的步驟S310相類似地,在居后圖內(nèi)查找與新增加節(jié)點(diǎn)連通的最近未變節(jié)點(diǎn)作為新增加節(jié)點(diǎn)的關(guān)鍵連接點(diǎn)。具體地,首先,在居后圖內(nèi)從新增加節(jié)點(diǎn)開(kāi)始執(zhí)行廣度優(yōu)先搜索,以在居后圖內(nèi)的未變節(jié)點(diǎn)當(dāng)中查找與新增加節(jié)點(diǎn)連通且#最短的節(jié)點(diǎn),并且記錄相應(yīng)的最短路徑作為最短路徑集合。接著,對(duì)于最短路徑集合中的每條最短路徑,通it^目加該最短路徑中的各邊的權(quán)重來(lái)計(jì)算該最短路徑的權(quán)重。然后,根據(jù)路徑權(quán)重在最短路徑集合當(dāng)中選擇 條最短路徑,并將其所連接的未變節(jié)點(diǎn)確定為新增加節(jié)點(diǎn)的關(guān)鍵連接點(diǎn)。
在步驟S520,以動(dòng)畫方式將新增加節(jié)點(diǎn)從新增加節(jié)點(diǎn)的關(guān)鍵連接點(diǎn) 的位置移動(dòng)到新增加節(jié)點(diǎn)的目標(biāo)位置。
由上可知,在根據(jù)本發(fā)明實(shí)施例的上述方法中,對(duì)于被移除節(jié)點(diǎn),以 與最近未變節(jié)點(diǎn)合并的方式動(dòng)畫展現(xiàn)被移除節(jié)點(diǎn)的移除,并且對(duì)于新增加 節(jié)點(diǎn),以從最近未變節(jié)點(diǎn)分裂出去的方式動(dòng)畫展現(xiàn)新增加節(jié)點(diǎn)的增加。因 此,在動(dòng)畫展現(xiàn)過(guò)程中,可以縮短節(jié)點(diǎn)的移動(dòng)距離,并且可以避免在節(jié)點(diǎn) 移動(dòng)時(shí)發(fā)生移動(dòng)路徑交叉和圖邊交叉,從而平滑且清楚地展現(xiàn)動(dòng)態(tài)圖序列 之間的轉(zhuǎn)變。
此外,對(duì)于由于添加了邊而使互不連通的第 一連通子圖和第二連通子 圖連通成一個(gè)連通圖的圖變化,為了減少移動(dòng)節(jié)點(diǎn)的數(shù)目并且突出拓樸結(jié) 構(gòu)變化,根據(jù)本發(fā)明的一個(gè)實(shí)施例,提出了一種新穎的處理方案。下面結(jié) 合圖6的流程圖對(duì)此加以i兌明。
如圖6所示,在步驟S610,對(duì)于所要添加的連接第一連通子圖和第 二連通子圖的每條邊,將該邊中屬于第 一連通子圖的節(jié)點(diǎn)標(biāo)記為第 一連通 子圖的關(guān)鍵連接節(jié)點(diǎn),而將該邊中屬于第二連通子圖的節(jié)點(diǎn)標(biāo)記為第二連 通子圖的關(guān)鍵連接節(jié)點(diǎn)。
在步驟S620,將第一連通子圖中的每個(gè)非關(guān)鍵節(jié)點(diǎn)(即,除了關(guān)鍵連 接節(jié)點(diǎn)之外的每個(gè)其它節(jié)點(diǎn))匹配并合并到第 一連通子圖中的最近關(guān)鍵連 接節(jié)點(diǎn),并且將第二連通子圖中的每個(gè)非關(guān)鍵節(jié)點(diǎn)匹配并合并到第二連通 子圖中的最近關(guān)鍵連接節(jié)點(diǎn)。這里的匹配處理與圖3的步驟S310中確定 被移除節(jié)點(diǎn)的關(guān)鍵連接點(diǎn)的處理相類似,因此在此不再贅述。在步驟S620 的處理中,可選地,在第一和第二連通子圖的每個(gè)連通子圖內(nèi),為了使每 個(gè)連通子圖在合并處理之后仍然是一個(gè)連通圖,對(duì)于該連通子圖中的每?jī)?個(gè)關(guān)鍵連接節(jié)點(diǎn)nl和n2,如果在這兩個(gè)關(guān)鍵連接節(jié)點(diǎn)nl和n2之間沒(méi)有 邊,并且在該連通子圖中存在至少一條分別連接關(guān)鍵連接節(jié)點(diǎn)nl或與其 相匹配的非關(guān)鍵節(jié)點(diǎn)和關(guān)鍵連接節(jié)點(diǎn)n2或與其相匹配的非關(guān)鍵節(jié)點(diǎn)的 邊,則在這兩個(gè)關(guān)鍵連接節(jié)點(diǎn)nl和n2之間添加邊。
在步驟S630,添加連接第一連通子圖和第二連通子圖的每條邊。
可選地,在步驟S640,在第一連通子圖或第二連通子圖的關(guān)鍵連接 節(jié)點(diǎn)的位置發(fā)生變化的情況下,分別將第一連通子圖和第二連通子圖中發(fā) 生位置變化的關(guān)鍵連接節(jié)點(diǎn)移動(dòng)到其目標(biāo)位置。在步驟S650,分別將第一連通子圖和第二連通子圖中的每個(gè)非關(guān)鍵節(jié)點(diǎn)從所匹配的關(guān)鍵連接節(jié)點(diǎn)的位置展開(kāi)到其目標(biāo)位置。
圖7示意性地示出了動(dòng)畫展現(xiàn)由于添加了邊而使互不連通的第一連通子圖和第二連通子圖連通成一個(gè)連通圖的圖變化的處理的例子。圖7中的部分(a)示出了將要連通的第一連通子圖和第二連通子圖。圖7中的部分(b)對(duì)應(yīng)于圖6的步驟S610,其中虛線邊是所要添加的連接第一連通子圖和第二連通子圖的邊,因此該部分中的深色節(jié)點(diǎn)被確定為關(guān)鍵連接節(jié)點(diǎn)。圖7中的部分(c)對(duì)應(yīng)于圖6的步驟S620,其中作為非關(guān)鍵節(jié)點(diǎn)的淺色節(jié)點(diǎn)被匹配并合并到作為關(guān)鍵連接節(jié)點(diǎn)的深色節(jié)點(diǎn)。圖7中的部分(d)對(duì)應(yīng)于圖6的步驟S630和S640,其中添加了連接第一連通子圖和第二連通子圖的新邊,并且將關(guān)鍵連接節(jié)點(diǎn)移動(dòng)到其目標(biāo)位置。圖7中的部分e)對(duì)應(yīng)于圖6的步驟S650,其中示出了非關(guān)鍵節(jié)點(diǎn)從關(guān)鍵連接點(diǎn)的展開(kāi)。圖7中的部分f)示出了最后的結(jié)果。
類似地,對(duì)于由于移除了邊而使一個(gè)連通圖分裂成互不連通的第一連通子圖和第二連通子圖的圖變化,根據(jù)本發(fā)明的一個(gè)實(shí)施例,提出了相應(yīng)的解決方案。下面結(jié)合圖8的流程圖對(duì)此加以說(shuō)明。
如圖8所示,在步驟S810,對(duì)于所要移除的連接第一連通子圖和第二連通子圖的每條邊,將該邊中屬于第 一連通子圖的節(jié)點(diǎn)標(biāo)記為第 一連通子圖的關(guān)鍵連接節(jié)點(diǎn),而將該邊中屬于第二連通子圖的節(jié)點(diǎn)標(biāo)記為第二連通子圖的關(guān)鍵連接節(jié)點(diǎn)。
在步驟S820,將第一連通子圖中的每個(gè)非關(guān)鍵節(jié)點(diǎn)匹配并合并到第一連通子圖中的最近關(guān)鍵連接節(jié)點(diǎn),并且將第二連通子圖中的每個(gè)非關(guān)鍵節(jié)點(diǎn)匹配并合并到第二連通子圖中的最近關(guān)鍵連接節(jié)點(diǎn)。這里的匹配處理與圖3的步驟S310中確定被移除節(jié)點(diǎn)的關(guān)鍵連接點(diǎn)的處理相類似,因此在此不再贅述。在步驟S820的處理中,可選地,在第一和第二連通子圖的每個(gè)連通子圖中,為了使該連通子圖在合并處理之后仍然是一個(gè)連通圖,對(duì)于該連通子圖中的每?jī)蓚€(gè)關(guān)鍵連接節(jié)點(diǎn)nl和n2,如果在這兩個(gè)關(guān)鍵連接節(jié)點(diǎn)nl和n2之間沒(méi)有邊,并且在該連通子圖中存在至少一條分別連接關(guān)鍵連接節(jié)點(diǎn)Hi或與其相匹配的非關(guān)鍵節(jié)點(diǎn)和關(guān)鍵連接節(jié)點(diǎn)n2或與其相匹配的非關(guān)鍵節(jié)點(diǎn)的邊,則在這兩個(gè)關(guān)鍵連接節(jié)點(diǎn)nl和n2之間添加邊。
在步驟S830,移除連接第一連通子圖和第二連通子圖的每條邊。可選地,在步驟S840,在第一連通子圖或第二連通子圖的關(guān)鍵連接 節(jié)點(diǎn)的位置發(fā)生變化的情況下,分別將第 一連通子圖和第二連通子圖中發(fā) 生位置變化的關(guān)鍵連接節(jié)點(diǎn)移動(dòng)到其目標(biāo)位置。
在步驟S850,分別將第一連通子圖和第二連通子圖中的每個(gè)非關(guān)鍵 節(jié)點(diǎn)從所匹配的關(guān)鍵連接節(jié)點(diǎn)的位置展開(kāi)到其目標(biāo)位置。
此外,在動(dòng)態(tài)圖序列之間的變化同時(shí)包括與被移除節(jié)點(diǎn)相關(guān)的圖變 化、僅與未變節(jié)點(diǎn)相關(guān)的圖變化和與新增加節(jié)點(diǎn)相關(guān)的圖變化中的兩種以 上時(shí),為了防止同時(shí)進(jìn)行動(dòng)畫展現(xiàn)而導(dǎo)致不能清楚地展現(xiàn)圖變化,根據(jù)本 發(fā)明的實(shí)施例,提出了分步動(dòng)畫展現(xiàn)控制方案。
具體地,首先,動(dòng)畫展現(xiàn)與被移除節(jié)點(diǎn)相關(guān)的圖變化,其中可以包括 移除節(jié)點(diǎn)、移除連接兩個(gè)被移除節(jié)點(diǎn)的邊以及移除連接一個(gè)被移除節(jié)點(diǎn)和 一個(gè)未變節(jié)點(diǎn)的邊。在此,邊的動(dòng)畫展現(xiàn)可以伴隨著節(jié)點(diǎn)的動(dòng)畫展現(xiàn)而進(jìn) 行。
然后,動(dòng)畫展現(xiàn)僅與未變節(jié)點(diǎn)相關(guān)的圖變化,其中可以包括移除未變 節(jié)點(diǎn)之間的邊、在未變節(jié)點(diǎn)之間增加新的邊以及將未變節(jié)點(diǎn)移動(dòng)到新的目 標(biāo)位置。在此,邊的動(dòng)畫>|1現(xiàn)可以獨(dú)立于節(jié)點(diǎn)的動(dòng)畫展現(xiàn)。
最后,動(dòng)畫展現(xiàn)與新增加節(jié)點(diǎn)相關(guān)的圖變化,其中可以包括增加新節(jié) 點(diǎn)、添加連接兩個(gè)新增加節(jié)點(diǎn)的新邊、以及添加連接一個(gè)新增加節(jié)點(diǎn)和一 個(gè)未變節(jié)點(diǎn)的新邊。在此,邊的動(dòng)畫展現(xiàn)可以伴隨著節(jié)點(diǎn)的動(dòng)畫展現(xiàn)而進(jìn) 行。
圖9示出了根據(jù)本發(fā)明實(shí)施例的動(dòng)畫展現(xiàn)動(dòng)態(tài)圖序列之間的轉(zhuǎn)變的 裝置900的框圖,其中,為了簡(jiǎn)明^iL僅僅示出了與本發(fā)明密切相關(guān)的部 分。在該裝置卯0中,能夠執(zhí)行以上參考圖1所描述的動(dòng)畫展現(xiàn)動(dòng)態(tài)圖序 列之間的轉(zhuǎn)變的方法,從而可以平滑且清楚地展現(xiàn)動(dòng)態(tài)圖序列之間的轉(zhuǎn) 變。
如圖9所示,該裝置900可以包括節(jié)點(diǎn)移除動(dòng)畫展現(xiàn)單元910,其 被配置成對(duì)于被移除節(jié)點(diǎn),選擇與其最近的未變節(jié)點(diǎn),并將被移除節(jié)點(diǎn)通 過(guò)動(dòng)畫與之合并,從而動(dòng)畫展現(xiàn)被移除節(jié)點(diǎn)的移除;以及節(jié)點(diǎn)增加動(dòng)畫展 現(xiàn)單元920,其被配置成對(duì)于新增加節(jié)點(diǎn),選擇與其最近的未變節(jié)點(diǎn),并 將新增加節(jié)點(diǎn)通過(guò)動(dòng)畫從其分裂出去,從而動(dòng)畫>|1現(xiàn)新增加節(jié)點(diǎn)的增加。
可選地,該裝置900還可以包括連通子圖組合動(dòng)畫展現(xiàn)單元930,其 被配置成通過(guò)以下處理來(lái)動(dòng)畫展現(xiàn)由于添加了邊而使互不連通的第一連通子圖和第二連通子圖連通成一個(gè)連通圖的圖變化對(duì)于所要添加的連接 第 一連通子圖和第二連通子圖的每條邊,將該邊中屬于第一連通子圖的節(jié) 點(diǎn)標(biāo)記為第一連通子圖的關(guān)鍵連接節(jié)點(diǎn),并將該邊中屬于第二連通子圖的 節(jié)點(diǎn)標(biāo)記為第二連通子圖的關(guān)鍵連接節(jié)點(diǎn);將第 一連通子圖中的每個(gè)非關(guān) 鍵節(jié)點(diǎn)匹配并合并到第一連通子圖中的最近關(guān)鍵連接節(jié)點(diǎn),并且將第二連
通子圖中的每個(gè)非關(guān)鍵節(jié)點(diǎn)匹配并合并到第二連通子圖中的最近關(guān)鍵連 接節(jié)點(diǎn);添加連接第一連通子圖和第二連通子圖的每條邊;以及分別將第 一連通子圖和第二連通子圖中的每個(gè)非關(guān)鍵節(jié)點(diǎn)從所匹配的關(guān)鍵連接節(jié) 點(diǎn)的位置展開(kāi)到其目標(biāo)位置。
此外,可選地,該裝置900還可以包括連通子圖分裂動(dòng)畫展現(xiàn)單元 940,其被配置成通過(guò)以下處理來(lái)動(dòng)畫展現(xiàn)由于移除了邊而使一個(gè)連通圖 分裂成互不連通的第一連通子圖和第二連通子圖的圖變化對(duì)于所要移除 的連接第一連通子圖和第二連通子圖的每條邊,將該邊中屬于第一連通子 圖的節(jié)點(diǎn)標(biāo)記為第 一連通子圖的關(guān)鍵連接節(jié)點(diǎn),并將該邊中屬于第二連通 子圖的節(jié)點(diǎn)標(biāo)記為第二連通子圖的關(guān)鍵連接節(jié)點(diǎn);將第 一連通子圖中的每 個(gè)非關(guān)鍵節(jié)點(diǎn)匹配并合并到第一連通子圖中的最近關(guān)鍵連接節(jié)點(diǎn),并且將 第二連通子圖中的每個(gè)非關(guān)鍵節(jié)點(diǎn)匹配并合并到第二連通子圖中的最近 關(guān)鍵連接節(jié)點(diǎn);移除連接第一連通子圖和第二連通子圖的每條邊;以及分 別將第 一連通子圖和第二連通子圖中的每個(gè)非關(guān)鍵節(jié)點(diǎn)從所匹配的關(guān)鍵 連接節(jié)點(diǎn)的位置展開(kāi)到其目標(biāo)位置。
此外,可選地,該裝置卯0還可以包括分步動(dòng)畫展現(xiàn)控制單元950, 其被配置成控制首先動(dòng)畫展現(xiàn)與被移除節(jié)點(diǎn)相關(guān)的圖變化,然后動(dòng)畫展現(xiàn) 僅與未變節(jié)點(diǎn)相關(guān)的圖變化,最后動(dòng)畫展現(xiàn)與新增加節(jié)點(diǎn)相關(guān)的圖變化。
通過(guò)閱讀上面給出的相應(yīng)處理的描述,裝置900的各個(gè)組成部件的功 能如何實(shí)現(xiàn)就變得4艮清楚了 ,所以在此就不再贅述了。
此夕卜,顯然,根據(jù)本發(fā)明的上述方法的各個(gè)操作過(guò)程也可以以存儲(chǔ)在 各種機(jī)器可讀的存儲(chǔ)介質(zhì)中的計(jì)算機(jī)可執(zhí)行程序的方式實(shí)現(xiàn)。
而且,本發(fā)明的目的也可以通過(guò)下述方式實(shí)現(xiàn)將存儲(chǔ)有上述可執(zhí)行 程序代碼的存儲(chǔ)介質(zhì)直接或者間接地提供給系統(tǒng)或設(shè)備,并且該系統(tǒng)或設(shè) 備中的計(jì)算機(jī)或者中央處理單元(CPU)讀出并執(zhí)行上述程序代碼。此時(shí), 只要該系統(tǒng)或者設(shè)備具有執(zhí)行程序的功能,則本發(fā)明的實(shí)施方式不局限于 程序,并且該程序也可以是任意的形式,例如,目標(biāo)程序、解釋器執(zhí)行的 程序或者提供給操作系統(tǒng)的腳本程序等。上述這些機(jī)器可讀存儲(chǔ)介質(zhì)包括但不限于各種存儲(chǔ)器和存儲(chǔ)單元, 半導(dǎo)體設(shè)備,磁盤單元例如光、磁和磁光盤,以及其它適于存儲(chǔ)信息的介 質(zhì)等。
另夕卜,計(jì)算fet過(guò)連接到因特網(wǎng)上的相應(yīng)網(wǎng)站,并且將依據(jù)本發(fā)明的 計(jì)算M序代碼下載和安裝到計(jì)算機(jī)中然后執(zhí)行該程序,也可以實(shí)現(xiàn)本發(fā)明。
在本發(fā)明的裝置和方法中,顯然,各部件或各步驟是可以分解和/或 重新組合的。這些分解和/或重新組合應(yīng)視為本發(fā)明的等效方案。并且,
是并不需i"一定按照時(shí)間順序執(zhí)行。某些步驟可以并行或彼此獨(dú)立地執(zhí) 行。
以上雖然結(jié)合附圖詳細(xì)描述了本發(fā)明的實(shí)施例,但M當(dāng)明白,上面 所描述的實(shí)施方式只是用于說(shuō)明本發(fā)明,而并不構(gòu)成對(duì)本發(fā)明的限制。對(duì) 于本領(lǐng)域的技術(shù)人員來(lái)說(shuō),可以對(duì)上述實(shí)施方式作出各種修改和變更而沒(méi) 有背離本發(fā)明的實(shí)質(zhì)和范圍。因此,本發(fā)明的范圍僅由所附的權(quán)利要求及 其等效含義來(lái)限定。
權(quán)利要求
1.一種動(dòng)畫展現(xiàn)動(dòng)態(tài)圖序列之間的轉(zhuǎn)變的方法,其中動(dòng)態(tài)圖序列包括在時(shí)間上先后相繼顯示的居前圖和居后圖,所述方法包括對(duì)于被移除節(jié)點(diǎn),選擇與其最近的未變節(jié)點(diǎn),并將被移除節(jié)點(diǎn)通過(guò)動(dòng)畫與之合并,從而動(dòng)畫展現(xiàn)被移除節(jié)點(diǎn)的移除;以及對(duì)于新增加節(jié)點(diǎn),選擇與其最近的未變節(jié)點(diǎn),并將新增加節(jié)點(diǎn)通過(guò)動(dòng)畫從其分裂出去,從而動(dòng)畫展現(xiàn)新增加節(jié)點(diǎn)的增加。
2. 根據(jù)權(quán)利要求1所述的方法,其中動(dòng)畫展現(xiàn)被移除節(jié)點(diǎn)的移除進(jìn) 一步包括在居前圖內(nèi)查找與被移除節(jié)點(diǎn)連通的最近未變節(jié)點(diǎn)作為被移除節(jié)點(diǎn) 的關(guān)鍵連接點(diǎn);以及以動(dòng)畫方式將被移除節(jié)點(diǎn)從其當(dāng)前位置移動(dòng)到被移除節(jié)點(diǎn)的關(guān)鍵連 接點(diǎn)的位置。
3. 根據(jù)權(quán)利要求2所述的方法,其中在居前圖內(nèi)查找與被移除節(jié)點(diǎn) 連通的最近未變節(jié)點(diǎn)作為被移除節(jié)點(diǎn)的關(guān)鍵連接點(diǎn)進(jìn)一步包括在居前圖內(nèi)從被移除節(jié)點(diǎn)開(kāi)始執(zhí)行廣度優(yōu)先搜索,以在居前圖內(nèi)的未 變節(jié)點(diǎn)當(dāng)中查找與被移除節(jié)點(diǎn)連通JLi^徑最短的節(jié)點(diǎn),并且記料目應(yīng)的最 短#作為最短#集合;對(duì)于最短路徑集合中的每條最短路徑,通it^目加該最短路徑中的各邊的權(quán)重來(lái)計(jì)算該最短路徑的權(quán)重;以及根據(jù)路徑權(quán)重在最短i^集合當(dāng)中選擇一條最短#,并將其所連接 的未變節(jié)點(diǎn)確定為被移除節(jié)點(diǎn)的關(guān)鍵連接點(diǎn)。
4. 根據(jù)權(quán)利要求1所述的方法,其中動(dòng)畫展現(xiàn)新增加節(jié)點(diǎn)的增加進(jìn) 一步包括在居后圖內(nèi)查找與新增加節(jié)點(diǎn)連通的最近未變節(jié)點(diǎn)作為新增加節(jié)點(diǎn) 的關(guān)鍵連接點(diǎn);以及以動(dòng)畫方式將新增加節(jié)點(diǎn)從新增加節(jié)點(diǎn)的關(guān)鍵連接點(diǎn)的位置移動(dòng)到 新增加節(jié)點(diǎn)的目標(biāo)位置。
5. 根據(jù)權(quán)利要求4所述的方法,其中在居后圖內(nèi)查找與新增加節(jié)點(diǎn) 連通的最近未變節(jié)點(diǎn)作為新增加節(jié)點(diǎn)的關(guān)鍵連接點(diǎn)進(jìn)一步包括在居后圖內(nèi)從新增加節(jié)點(diǎn)開(kāi)始執(zhí)行廣度優(yōu)先搜索,以在居后圖內(nèi)的未 變節(jié)點(diǎn)當(dāng)中查找與新增加節(jié)點(diǎn)連通且路徑最短的節(jié)點(diǎn),并且記^f目應(yīng)的最短路徑作為最短i^集合;對(duì)于最短路徑集合中的每條最短路徑,通it^目加該最短路徑中的各邊 的權(quán)重來(lái)計(jì)算該最短路徑的權(quán)重;以及根據(jù)路徑權(quán)重在最短#集合當(dāng)中選擇一條最短5^,并將其所連接 的未變節(jié)點(diǎn)確定為新增加節(jié)點(diǎn)的關(guān)鍵連接點(diǎn)。
6. 根據(jù)權(quán)利要求1所述的方法,其中,對(duì)于由于添加了邊而使互不 連通的第 一連通子圖和第二連通子圖連通成一個(gè)連通圖的圖變化,所述方 法還包括對(duì)于所要添加的連接第一連通子圖和第二連通子圖的每條邊,將該邊 中屬于第一連通子圖的節(jié)點(diǎn)標(biāo)記為第一連通子圖的關(guān)鍵連接節(jié)點(diǎn),并將該 邊中屬于第二連通子圖的節(jié)點(diǎn)標(biāo)記為第二連通子圖的關(guān)鍵連接節(jié)點(diǎn);將第 一連通子圖中的每個(gè)非關(guān)鍵節(jié)點(diǎn)匹配并合并到第 一連通子圖中 的最近關(guān)鍵連接節(jié)點(diǎn),并且將第二連通子圖中的每個(gè)非關(guān)鍵節(jié)點(diǎn)匹配并合 并到第二連通子圖中的最近關(guān)鍵連接節(jié)點(diǎn);添加連接第一連通子圖和第二連通子圖的每條邊;以及分別將第 一連通子圖和第二連通子圖中的每個(gè)非關(guān)鍵節(jié)點(diǎn)從所匹配 的關(guān)鍵連接節(jié)點(diǎn)的位置展開(kāi)到其目標(biāo)位置。
7. 根據(jù)權(quán)利要求6所述的方法,其中,在第一連通子圖或第二連通 子圖的關(guān)鍵連接節(jié)點(diǎn)的位置發(fā)生變化的情況下,在添加步驟和展開(kāi)步驟之 間,所述方法還包括分別將第一連通子圖和第二連通子圖中發(fā)生位置變 化的關(guān)鍵連接節(jié)點(diǎn)移動(dòng)到其目標(biāo)位置。
8. 根據(jù)權(quán)利要求1所述的方法,其中,對(duì)于由于移除了邊而使一個(gè) 連通圖分裂成互不連通的第 一連通子圖和第二連通子圖的圖變化,所述方 法還包括對(duì)于所要移除的連接第一連通子圖和第二連通子圖的每條邊,將該邊 中屬于第 一連通子圖的節(jié)點(diǎn)標(biāo)記為第 一連通子圖的關(guān)鍵連接節(jié)點(diǎn),并將該 邊中屬于第二連通子圖的節(jié)點(diǎn)標(biāo)記為第二連通子圖的關(guān)鍵連接節(jié)點(diǎn);將第 一連通子圖中的每個(gè)非關(guān)鍵節(jié)點(diǎn)匹配并合并到第 一連通子圖中 的最近關(guān)鍵連接節(jié)點(diǎn),并且將第二連通子圖中的每個(gè)非關(guān)鍵節(jié)點(diǎn)匹配并合并到第二連通子圖中的最近關(guān)鍵連接節(jié)點(diǎn);移除連接第一連通子圖和第二連通子圖的每條邊;以及分別將第 一連通子圖和第二連通子圖中的每個(gè)非關(guān)鍵節(jié)點(diǎn)從所匹配 的關(guān)鍵連接節(jié)點(diǎn)的位置展開(kāi)到其目標(biāo)位置。
9. 根據(jù)權(quán)利要求8所述的方法,其中,在第一連通子圖或第二連通 子圖的關(guān)鍵連接節(jié)點(diǎn)的位置發(fā)生變化的情況下,在移除步驟和展開(kāi)步驟之 間,所述方法還包括分別將第一連通子圖和第二連通子圖中發(fā)生位置變 化的關(guān)鍵連接節(jié)點(diǎn)移動(dòng)到其目標(biāo)位置。
10. 根據(jù)權(quán)利要求1至9中的任一項(xiàng)所述的方法,其中,首先動(dòng)畫展 現(xiàn)與被移除節(jié)點(diǎn)相關(guān)的圖變化,然后動(dòng)畫展現(xiàn)僅與未變節(jié)點(diǎn)相關(guān)的圖變 化,最后動(dòng)畫展現(xiàn)與新增加節(jié)點(diǎn)相關(guān)的圖變化。
11. 一種動(dòng)畫展現(xiàn)動(dòng)態(tài)圖序列之間的轉(zhuǎn)變的裝置,其中動(dòng)態(tài)圖序列包 括在時(shí)間上先后相繼顯示的居前圖和居后圖,所述裝置包括節(jié)點(diǎn)移除動(dòng)畫展現(xiàn)單元,其被配置成對(duì)于被移除節(jié)點(diǎn),選擇與其最近 的未變節(jié)點(diǎn),并將被移除節(jié)點(diǎn)通過(guò)動(dòng)畫與之合并,從而動(dòng)畫展現(xiàn)被移除節(jié) 點(diǎn)的移除;以及節(jié)點(diǎn)增加動(dòng)畫展現(xiàn)單元,其被配置成對(duì)于新增加節(jié)點(diǎn),選擇與其最近的未變節(jié)點(diǎn),并將新增加節(jié)點(diǎn)通過(guò)動(dòng)畫從其分裂出去,從而動(dòng)畫展現(xiàn)新增 加節(jié)點(diǎn)的增加.
12. 根據(jù)權(quán)利要求11所述的裝置,其中節(jié)點(diǎn)移除動(dòng)畫展現(xiàn)單元進(jìn)一 步被配置成通過(guò)以下處理來(lái)動(dòng)畫展現(xiàn)被移除節(jié)點(diǎn)的移除在居前圖內(nèi)查找 與被移除節(jié)點(diǎn)連通的最近未變節(jié)點(diǎn)作為被移除節(jié)點(diǎn)的關(guān)鍵連接點(diǎn);以及以 動(dòng)畫方式將被移除節(jié)點(diǎn)從其當(dāng)前位置移動(dòng)到被移除節(jié)點(diǎn)的關(guān)鍵連接點(diǎn)的 位置。
13. 根據(jù)權(quán)利要求12所述的裝置,其中節(jié)點(diǎn)移除動(dòng)畫展現(xiàn)單元進(jìn)一 步被配置成通過(guò)以下處理來(lái)查找與被移除節(jié)點(diǎn)連通的最近未變節(jié)點(diǎn)作為 被移除節(jié)點(diǎn)的關(guān)鍵連接點(diǎn)在居前圖內(nèi)從被移除節(jié)點(diǎn)開(kāi)始執(zhí)行廣度優(yōu)先搜 索,以在居前圖內(nèi)的未變節(jié)點(diǎn)當(dāng)中查找與被移除節(jié)點(diǎn)連通且路徑最短的節(jié) 點(diǎn),并且記^目應(yīng)的最短路徑作為最短5^集合;對(duì)于最短#集合中的 每條最短路徑,通it^目加該最短路徑中的各邊的權(quán)重來(lái)計(jì)算該最短路徑的 權(quán)重;以及根據(jù)i^權(quán)重在最短^^集合當(dāng)中選擇一條最短路徑,并將其 所連接的未變節(jié)點(diǎn)確定為被移除節(jié)點(diǎn)的關(guān)鍵連接點(diǎn)。
14. 根據(jù)權(quán)利要求11所述的裝置,其中節(jié)點(diǎn)增加動(dòng)畫展現(xiàn)單元進(jìn)一 步被配置成通過(guò)以下處理來(lái)動(dòng)畫展現(xiàn)新增加節(jié)點(diǎn)的增加在居后圖內(nèi)查找 與新增加節(jié)點(diǎn)連通的最近未變節(jié)點(diǎn)作為新增加節(jié)點(diǎn)的關(guān)鍵連接點(diǎn);以及以 動(dòng)畫方式將新增加節(jié)點(diǎn)從新增加節(jié)點(diǎn)的關(guān)鍵連接點(diǎn)的位置移動(dòng)到新增加 節(jié)點(diǎn)的目標(biāo)位置。
15. 根據(jù)權(quán)利要求14所述的裝置,其中節(jié)點(diǎn)增加動(dòng)畫展現(xiàn)單元進(jìn)一 步被配置成通過(guò)以下處理來(lái)查找與新增加節(jié)點(diǎn)連通的最近未變節(jié)點(diǎn)作為 新增加節(jié)點(diǎn)的關(guān)鍵連接點(diǎn)在居后圖內(nèi)從新增加節(jié)點(diǎn)開(kāi)始執(zhí)行廣度優(yōu)先搜 索,以在居后圖內(nèi)的未變節(jié)點(diǎn)當(dāng)中查找與新增加節(jié)點(diǎn)連通且路徑最短的節(jié) 點(diǎn),并且記勤目應(yīng)的最短路徑作為最短路徑集合;對(duì)于最短路徑集合中的 每條最短#,通過(guò)相加該最短路徑中的各邊的權(quán)重來(lái)計(jì)算該最短路徑的 權(quán)重;以及根據(jù)路徑權(quán)重在最短路徑集合當(dāng)中選擇一條最短路徑,并將其 所連接的未變節(jié)點(diǎn)確定為新增加節(jié)點(diǎn)的關(guān)鍵連接點(diǎn)。
16. 根據(jù)權(quán)利要求11所述的裝置,還包括連通子圖組合動(dòng)畫展現(xiàn)單 元,其被配置成通過(guò)以下處理來(lái)動(dòng)畫展現(xiàn)由于添加了邊而使互不連通的第 一連通子圖和第二連通子圖連通成一個(gè)連通圖的圖變化對(duì)于所要添加的 連接第一連通子圖和第二連通子圖的每條邊,將該邊中屬于第一連通子圖 的節(jié)點(diǎn)標(biāo)記為第一連通子圖的關(guān)鍵連接節(jié)點(diǎn),并將該邊中屬于第二連通子 圖的節(jié)點(diǎn)標(biāo)記為第二連通子圖的關(guān)鍵連接節(jié)點(diǎn);將第 一連通子圖中的每個(gè) 非關(guān)鍵節(jié)點(diǎn)匹配并合并到第一連通子圖中的最近關(guān)鍵連接節(jié)點(diǎn),并且將第 二連通子圖中的每個(gè)非關(guān)鍵節(jié)點(diǎn)匹配并合并到第二連通子圖中的最近關(guān) 鍵連接節(jié)點(diǎn);添加連接第一連通子圖和第二連通子圖的每條邊;以及分別 將第 一連通子圖和第二連通子圖中的每個(gè)非關(guān)鍵節(jié)點(diǎn)從所匹配的關(guān)鍵連 接節(jié)點(diǎn)的位置展開(kāi)到其目標(biāo)位置。
17. 根據(jù)權(quán)利要求16所述的裝置,其中,連通子圖組合動(dòng)畫展現(xiàn)單 元還被配置成,在第 一連通子圖或第二連通子圖的關(guān)鍵連接節(jié)點(diǎn)的位置發(fā) 生變化的情況下,在添加處理和展開(kāi)處理之間,分別將第一連通子圖和第 二連通子圖中發(fā)生位置變化的關(guān)鍵連接節(jié)點(diǎn)移動(dòng)到其目標(biāo)位置。
18. 根據(jù)權(quán)利要求11所述的裝置,還包括連通子圖分裂動(dòng)畫展現(xiàn)單 元,其被配置成通過(guò)以下處理來(lái)動(dòng)畫展現(xiàn)由于移除了邊而4吏一個(gè)連通圖分 裂成互不連通的第一連通子圖和第二連通子圖的圖變化對(duì)于所要移除的 連接第一連通子圖和第二連通子圖的每條邊,將該邊中屬于第一連通子圖 的節(jié)點(diǎn)標(biāo)記為第一連通子圖的關(guān)鍵連接節(jié)點(diǎn),并將該邊中屬于第二連通子圖的節(jié)點(diǎn)標(biāo)記為第二連通子圖的關(guān)鍵連接節(jié)點(diǎn);將第 一連通子圖中的每個(gè) 非關(guān)鍵節(jié)點(diǎn)匹配并合并到第一連通子圖中的最近關(guān)鍵連接節(jié)點(diǎn),并且將第 二連通子圖中的每個(gè)非關(guān)鍵節(jié)點(diǎn)匹配并合并到第二連通子圖中的最近關(guān) 鍵連接節(jié)點(diǎn);移除連接第一連通子圖和第二連通子圖的每條邊;以及分別 將第 一連通子圖和第二連通子圖中的每個(gè)非關(guān)鍵節(jié)點(diǎn)從所匹配的關(guān)鍵連 接節(jié)點(diǎn)的位置展開(kāi)到其目標(biāo)位置。
19. 根據(jù)權(quán)利要求18所述的裝置,其中連通子圖分裂動(dòng)畫展現(xiàn)單元 還被配置成在第 一連通子圖或第二連通子圖的關(guān)鍵連接節(jié)點(diǎn)的位置發(fā)生 變化的情況下,在移除處理和展開(kāi)處理之間,分別將第一連通子圖和第二 連通子圖中發(fā)生位置變化的關(guān)鍵連接節(jié)點(diǎn)移動(dòng)到其目標(biāo)位置。
20. 根據(jù)權(quán)利要求11至19中的任一項(xiàng)所述的裝置,還包括分步動(dòng)畫 展現(xiàn)控制單元,其被配置成控制首先動(dòng)畫展現(xiàn)與被移除節(jié)點(diǎn)相關(guān)的圖變 化,然后動(dòng)畫展現(xiàn)僅與未變節(jié)點(diǎn)相關(guān)的圖變化,最后動(dòng)畫展現(xiàn)與新增加節(jié) 點(diǎn)相關(guān)的圖變化。
全文摘要
本發(fā)明提供了一種動(dòng)畫展現(xiàn)動(dòng)態(tài)圖序列之間的轉(zhuǎn)變的方法和裝置,其中動(dòng)態(tài)圖序列包括在時(shí)間上先后相繼顯示的居前圖和居后圖。所述方法包括對(duì)于被移除節(jié)點(diǎn),選擇與其最近的未變節(jié)點(diǎn),并將被移除節(jié)點(diǎn)通過(guò)動(dòng)畫與之合并,從而動(dòng)畫展現(xiàn)被移除節(jié)點(diǎn)的移除;以及對(duì)于新增加節(jié)點(diǎn),選擇與其最近的未變節(jié)點(diǎn),并將新增加節(jié)點(diǎn)通過(guò)動(dòng)畫從其分裂出去,從而動(dòng)畫展現(xiàn)新增加節(jié)點(diǎn)的增加。根據(jù)本發(fā)明,在動(dòng)畫展現(xiàn)過(guò)程中,可以縮短節(jié)點(diǎn)的移動(dòng)距離,并且可以避免在節(jié)點(diǎn)移動(dòng)時(shí)發(fā)生移動(dòng)路徑交叉和圖邊交叉,從而平滑且清楚地展現(xiàn)動(dòng)態(tài)圖序列之間的轉(zhuǎn)變。
文檔編號(hào)G06T13/00GK101676955SQ20081014934
公開(kāi)日2010年3月24日 申請(qǐng)日期2008年9月19日 優(yōu)先權(quán)日2008年9月19日
發(fā)明者劉世霞, 楠 曹, 蔡維佳, 理 談 申請(qǐng)人:國(guó)際商業(yè)機(jī)器公司