欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

對數(shù)據(jù)幀動畫的通用表示的制作方法

文檔序號:6377813閱讀:248來源:國知局
專利名稱:對數(shù)據(jù)幀動畫的通用表示的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及產(chǎn)生表示數(shù)據(jù)幀的通用動畫表示。
背景技術(shù)
經(jīng)常難以看到諸如隨時間變化的數(shù)據(jù)等按順序改變的數(shù)據(jù)中的模式。例如,銷售數(shù)據(jù)可展示某種季節(jié)性(例如,夏季的銷售數(shù)據(jù)比冬季高)。針對該問題的解決方案是隨著數(shù)據(jù)變化動畫化該數(shù)據(jù)的可視表示。例如,圖表上的圖形元素可表示數(shù)據(jù),并且動畫可示出這些圖形元素改變以表示該數(shù)據(jù)中的變化。發(fā)明內(nèi)容
存在其中可呈現(xiàn)數(shù)據(jù)的動畫的許多不同類型的呈現(xiàn)環(huán)境。這些呈現(xiàn)環(huán)境中的某一些可被配置為客戶機(jī)一服務(wù)器系統(tǒng)中的客戶機(jī)環(huán)境,其中對動畫的處理的某一部分可由服務(wù)器執(zhí)行。其他呈現(xiàn)環(huán)境可被配置成使用本地應(yīng)用來本地地生成并運行動畫。例如,呈現(xiàn)環(huán)境可包括基于瀏覽器的環(huán)境、本地企業(yè)生產(chǎn)力軟件環(huán)境和/或其他環(huán)境。數(shù)據(jù)動畫的表示傳統(tǒng)上不適用于可以不同地配置并且可使用不同的語言來表示動畫的不同類型的呈現(xiàn)環(huán)境。本文描述的工具和技術(shù)涉及通用動畫表示,該通用動畫表示可被轉(zhuǎn)換成適于其中表示將被呈現(xiàn)為動畫的呈現(xiàn)環(huán)境的專用動畫表示。
作為示例,在一個實施例中,這些工具和技術(shù)可包括處理多個數(shù)據(jù)幀以產(chǎn)生表示這些數(shù)據(jù)幀的通用動畫表示。該通用動畫表示可以用適于被轉(zhuǎn)換成多種不同的專用語言中的任一種的通用語言。該通用動畫表示可被轉(zhuǎn)換成用適于由呈現(xiàn)環(huán)境處理的專用語言的專用動畫表示。該專用動畫表示可被發(fā)送到呈現(xiàn)環(huán)境,其中該專用動畫表示可被呈現(xiàn)在顯示設(shè)備上。
提供本發(fā)明內(nèi)容是為了以簡化的形式介紹一些概念。這些概念將在以下具體實施例中進(jìn)一步描述。本發(fā)明內(nèi)容并不旨在標(biāo)識所要求保護(hù)主題的關(guān)鍵特征或必要特征,也不旨在用于限制所要求保護(hù)主題的范圍。類似地,本發(fā)明不限于解決在背景、詳細(xì)描述、或附圖中討論的專用技術(shù)、工具、環(huán)境、缺點、或優(yōu)點的實現(xiàn)。
附圖簡述
圖I是其中可實現(xiàn)所描述的各實施例中的一個或多個實施例的合適的計算環(huán)境的框圖。
圖2是數(shù)據(jù)幀動畫環(huán)境的框圖。
圖3是動畫視圖的示例的圖示。
圖4是一種用于對數(shù)據(jù)幀動畫的通用表示的技術(shù)的流程圖。
圖5是另一種用于對數(shù)據(jù)幀動畫的通用表示的技術(shù)的流程圖。具體實施例
本文描述的各實施例涉及用于改進(jìn)數(shù)據(jù)幀的動畫的技術(shù)和工具。這樣的改善可源4于分開或組合地使用各種技術(shù)和工具。
這些技術(shù)和工具可包括創(chuàng)建可被轉(zhuǎn)換成不同的專用語言的圖形動畫元素的抽象或通用表示。用不同的專用語言的動畫表示各自能夠在不同類型的呈現(xiàn)環(huán)境中使用。例如, 專用語言可包括標(biāo)記語言,諸如基于XML的語言(例如,GVML)、基于HTML的語言(例如,HTML5)以及包括XAML的語言。用于動畫的專用語言可包括全都由呈現(xiàn)環(huán)境識別的不同語言的組合。
允許數(shù)據(jù)幀的動畫用通用語言來定義并且然后被轉(zhuǎn)換成專用語言可允許甚至對將被呈現(xiàn)在不同類型的呈現(xiàn)環(huán)境中的動畫使用用于定義通用動畫表示的相同技術(shù)。例如, 無論動畫將在基于客戶機(jī)一服務(wù)器瀏覽器的環(huán)境中使用,還是在不使用瀏覽器的本地環(huán)境中使用,都可使用用于定義通用動畫表示的相同技術(shù)。
所附權(quán)利要求中定義的主題不必限于本文描述的益處。本發(fā)明的專用實現(xiàn)可提供本文描述的益處的全部、一些、或未提供本文描述的益處。盡管本文出于呈現(xiàn)的目的以專用的順序次序描述了用于各種技術(shù)的操作,但應(yīng)理解除非要求專用的排序,否則這種描述方式涵蓋了操作順序上的重新安排。例如,在某些情況下,可以重新安排或并發(fā)執(zhí)行順序地描述的操作。此外,為了簡單起見,流程圖可能未示出可結(jié)合其他技術(shù)來使用專用技術(shù)的各種方式。
在此描述的技術(shù)可被用于在此描述的一個或多個系統(tǒng)和/或用于一個或多個其他系統(tǒng)。例如,本文描述的各種過程可用硬件或軟件、或兩者的組合來實現(xiàn)。例如,諸如應(yīng)用指定集成線路、可編程邏輯陣列以及其它硬件設(shè)備之類的專用硬件實現(xiàn)可被構(gòu)造來實現(xiàn)在此描述的一個或多個技術(shù)中的至少一部分??砂ǜ鞣N實施例的裝置和系統(tǒng)的應(yīng)用可廣泛地包括各種電子和計算機(jī)系統(tǒng)??墒褂脙蓚€或更多互連接的專用硬件模塊或具有可在模塊之間并通過模塊傳遞的相關(guān)控制和數(shù)據(jù)信號的設(shè)備、或作為應(yīng)用指定集成線路的部分的設(shè)備來實現(xiàn)各技術(shù)。此外,在此描述的技術(shù)可通過由計算機(jī)系統(tǒng)執(zhí)行的軟件程序來實現(xiàn)。作為一個示例,實現(xiàn)可包括分布的處理、組件/對象分布的處理、以及平行處理。此外,可構(gòu)造虛擬計算機(jī)系統(tǒng)處理來實現(xiàn)在此描述的技術(shù)或功能中的一個或多個。
示例性計算環(huán)境
圖I示出其中可實現(xiàn)所描述的各實施例中的一個或多個實施例的合適的計算環(huán)境(100)的一般化示例。例如,一個或多個這樣的計算環(huán)境可被用作通用動畫表示生成器、 動畫表示轉(zhuǎn)換器和/或呈現(xiàn)環(huán)境。一般而言,可使用各種不同的通用或?qū)S糜嬎阆到y(tǒng)配置。 適用于此處所描述的工具和技術(shù)的公知計算系統(tǒng)配置的示例包括,但不限于,服務(wù)器場和服務(wù)器群集、個人計算機(jī)、服務(wù)器計算機(jī)、手持式或膝上型設(shè)備、平板設(shè)備、多處理器系統(tǒng)、 基于微處理器的系統(tǒng)、可編程消費電子產(chǎn)品、網(wǎng)絡(luò)PC、小型機(jī)、大型計算機(jī)、包括上述系統(tǒng)或設(shè)備中的任一個的分布式計算環(huán)境等。
計算環(huán)境(100)不旨在對本發(fā)明的使用范圍或功能提出任何限制,因為本發(fā)明可以在完全不同的通用或?qū)S糜嬎悱h(huán)境中實現(xiàn)。
參考

圖1,計算環(huán)境(100)包括至少一個處理單元(110)和存儲器(120)。在圖I 中,這一最基本的配置(130)被包括在虛線內(nèi)。處理單元(110)執(zhí)行計算機(jī)可執(zhí)行指令,并且可以是真實或虛擬處理器。在多處理系統(tǒng)中,多個處理單元執(zhí)行計算機(jī)可執(zhí)行指令以提高處理能力。存儲器(120)可以是易失性存儲器(例如,寄存器、高速緩存、RAM)、非易失性存儲器(例如,ROM、EEPR0M、閃存)、或兩者的某種組合。存儲器(120)存儲實現(xiàn)對數(shù)據(jù)幀動畫的通用表示的軟件(180)。
盡管為了清楚起見用線條示出了圖I的各框,但是,實際上,描繪各組件并不是那樣清楚,并且用比喻方法,圖I以及下文討論的其他附圖的線條更精確地將是灰色的和模糊的。例如,可以將諸如顯示設(shè)備等呈現(xiàn)組件認(rèn)為是I/o組件。而且,處理器具有存儲器。 發(fā)明人關(guān)于此點認(rèn)識到,這是本領(lǐng)域的特性,并且重申,圖I的圖示只是例示可結(jié)合本發(fā)明的一個或多個實施例來使用的示例性計算設(shè)備。諸如“工作站”、“服務(wù)器”、“膝上型計算機(jī)”、“手持式設(shè)備”等分類之間沒有區(qū)別,它們?nèi)慷急徽J(rèn)為是在圖I的范圍之內(nèi)的并且被稱為“計算機(jī)”、“計算環(huán)境”、或“計算設(shè)備”。
計算環(huán)境(100)可具有附加特征。在圖I中,計算環(huán)境(100)包括存儲(140)、一個或多個輸入設(shè)備(150)、一個或多個輸出設(shè)備(160)以及一個或多個通信連接(170)。諸如總線、控制器或網(wǎng)絡(luò)等互連機(jī)制(未示出)將計算環(huán)境(100)的各組件互連。通常,操作系統(tǒng)軟件(未示出)為在計算環(huán)境(100)中執(zhí)行的其它軟件提供操作環(huán)境,并協(xié)調(diào)計算環(huán)境(100) 的各組件的活動。
存儲(140)可以是可移動或不可移動的,并可包括諸如磁盤、磁帶或磁帶盒、 CD-ROM、CD-RW、DVD之類的計算機(jī)可讀存儲介質(zhì),或者可用于儲存信息并可在計算環(huán)境 (100)內(nèi)訪問的任何其它介質(zhì)。存儲(140)存儲用于軟件(180)的指令。
輸入設(shè)備(150)可以是諸如鍵盤、鼠標(biāo)、筆或跟蹤球等觸摸輸入設(shè)備;語音輸入設(shè)備;掃描設(shè)備;網(wǎng)絡(luò)適配器KD/DVD讀取器;或可向計算環(huán)境(100)提供輸入的另一設(shè)備。 輸出設(shè)備(160)可以是顯示器、打印機(jī)、揚聲器、⑶/DVD刻錄機(jī)、網(wǎng)絡(luò)適配器、或從計算環(huán)境 (100)提供輸出的另一設(shè)備。
通信連接(170)允許通過通信介質(zhì)與另一計算實體進(jìn)行通信。因此,計算環(huán)境(100)可使用通往諸如個人計算機(jī)、服務(wù)器、路由器、網(wǎng)絡(luò)PC、對等設(shè)備或另一常見網(wǎng)絡(luò)節(jié)點等一個或多個遠(yuǎn)程計算設(shè)備的邏輯連接而工作在聯(lián)網(wǎng)環(huán)境中。通信介質(zhì)以已調(diào)制數(shù)據(jù)信號的形式傳達(dá)諸如數(shù)據(jù)或計算機(jī)可執(zhí)行指令或請求等信息。已調(diào)制數(shù)據(jù)信號是其一個或多個特征以在信號中編碼信息的方式設(shè)置或改變的信號。作為示例而非局限,通信介質(zhì)包括以電、光、RF、紅外、聲學(xué)或其他載波實現(xiàn)的有線或無線技術(shù)。
可在可以是存儲介質(zhì)或通信介質(zhì)的計算機(jī)可讀介質(zhì)的一般上下文中描述工具和技術(shù)。計算機(jī)可讀存儲介質(zhì)是能在計算環(huán)境內(nèi)被訪問的任何可用存儲介質(zhì),但是術(shù)語計算機(jī)可讀存儲介質(zhì)并不指傳播的信號本身。作為示例而非限制,結(jié)合計算環(huán)境(100),計算機(jī)可讀介質(zhì)包括存儲器(120 )、存儲(140 )、和以上的組合。
這些工具和技術(shù)可在諸如程序模塊中所包括的在目標(biāo)真實或虛擬處理器上的計算環(huán)境中執(zhí)行的計算機(jī)可執(zhí)行指令的一般上下文中描述。一般而言,程序模塊包括執(zhí)行專用任務(wù)或?qū)崿F(xiàn)專用抽象數(shù)據(jù)類型的例程、程序、庫、對象、類、組件、數(shù)據(jù)結(jié)構(gòu)等。程序模塊的功能可以如各實施例中所需的組合或在程序模塊之間分離。用于程序模塊的計算機(jī)可執(zhí)行指令可以在本地或分布式計算環(huán)境中執(zhí)行。在分布式計算環(huán)境中,程序模塊可以位于本地和遠(yuǎn)程計算機(jī)存儲介質(zhì)中。
出于演示的目的,詳細(xì)描述使用了如“確定”、“選擇”、“生成”、“接收”和“發(fā)送”等術(shù)語來描述計算環(huán)境中的計算機(jī)操作。這些以及其他類似術(shù)語是對計算機(jī)執(zhí)行的操作的高層抽象,并且不應(yīng)混淆于人類執(zhí)行的動作,除非明確指出人類(諸如“用戶”)的動作執(zhí)行。對應(yīng)于這些術(shù)語的實際的計算機(jī)操作取決于實現(xiàn)而不同。
數(shù)據(jù)幀動畫系統(tǒng)和環(huán)境
具有通用動畫表示的系統(tǒng)和環(huán)境
圖2是數(shù)據(jù)幀動畫環(huán)境(200)的框圖,可結(jié)合該環(huán)境來實現(xiàn)所描述的各實施例中的一個或多個。數(shù)據(jù)幀動畫環(huán)境(200)可包括一個或多個數(shù)據(jù)源(205),該一個或多個數(shù)據(jù)源可以向通用動畫表示生成器(220)提供數(shù)據(jù)幀(210)。數(shù)據(jù)幀(210)中的每一個都可包括表示一時間點(特定時刻、時間段等)的數(shù)據(jù)。數(shù)據(jù)幀(210)中的數(shù)據(jù)可以不是基于時間的,而是可表示除所設(shè)時間之外的順序。例如,數(shù)據(jù)幀(210)可表示來自多步驟過程中的一系列步驟的數(shù)據(jù),并且動畫可將每一步驟表示為該動畫中的時間點(時間段或特定時刻)。 每一幀(210)可包括來自單個數(shù)據(jù)源(205 )或來自多個數(shù)據(jù)源(205 )的數(shù)據(jù)。而且,這些數(shù)據(jù)幀(210)中的一個或多個可以僅僅指示不存在來自數(shù)據(jù)源的對應(yīng)于該數(shù)據(jù)幀(210)的數(shù)據(jù)。通用動畫表示生成器(220)可接收并處理來自不同類型的數(shù)據(jù)源(例如,不同類型的電子表格、不同類型的數(shù)據(jù)庫等)的數(shù)據(jù)字段,以供在相同的數(shù)據(jù)幀中使用和/或供在不同的數(shù)據(jù)幀中使用。通用動畫表示生成器(220)還可接收定義如何動畫化數(shù)據(jù)幀(210)的動畫定義(230)。例如,動畫定義(230)可接收自用戶輸入和/或按照默認(rèn)設(shè)置。作為示例,動畫定義(230)可定義用于動畫的標(biāo)題、軸標(biāo)簽、形狀、顏色等。這些動畫定義(230)還可接收自數(shù)據(jù)源(205)中的一個或多個。
通用動畫表示生成器(220)可使用動畫定義(230)來處理幀(210)以生成通用動畫表示(240)。通用動畫表示(240)可表示動畫的圖形特征,并且還可包括底層數(shù)據(jù)幀 (210)的表示(可以用或不用與動畫的圖形表示相同的語言來表示)。作為動畫的圖形表示的示例,通用動畫表示生成器(220)可以在通用動畫表示(240)中包括一個或多個時間線以及一個或多個動畫動作。通用動畫表示(240)可以用被配置成轉(zhuǎn)換成可表示動畫的多種不同的專用語言中的任一種專用語言的通用語言。
通用動畫表不(240)可被傳遞至動畫表不轉(zhuǎn)換器(250)。動畫表不轉(zhuǎn)換器(250)可將通用動畫表示(240)轉(zhuǎn)換成專用語言,以產(chǎn)生被配置成由專用呈現(xiàn)環(huán)境(270)使用的專用動畫表示(260)。專用動畫表示(260)可被發(fā)送到專用呈現(xiàn)環(huán)境(270)。例如,專用動畫表示(260)可以在計算機(jī)網(wǎng)絡(luò)上通過計算機(jī)中的應(yīng)用編程接口來發(fā)送,或以某一其他方式發(fā)送。呈現(xiàn)環(huán)境(270)可呈現(xiàn)數(shù)據(jù)幀(210)的所表示的動畫。呈現(xiàn)環(huán)境(270)可以在諸如個人計算機(jī)、平板計算機(jī)或諸如移動電話等手持式移動設(shè)備之類的許多不同類型的設(shè)備中的任一個中。而且,整個數(shù)據(jù)幀動畫環(huán)境(200)可以駐留在單個設(shè)備上,或者它可以分布在多個設(shè)備上。例如,通用動畫表不生成器(220)和動畫表不轉(zhuǎn)換器(250)可被主存在一個或多個服務(wù)器上,諸如主存在web服務(wù)中,并且呈現(xiàn)環(huán)境(270)可被主存在利用瀏覽器程序來呈現(xiàn)的客戶機(jī)上。
通用動畫表示生成器(220)和動畫表示轉(zhuǎn)換器(250)可形成核心動畫運行時工具,該工具可處理動畫表示并將專用動畫表示傳遞至被配置成處理該專用動畫表示(260) 的對應(yīng)的呈現(xiàn)環(huán)境(270)。
增量式更新和增量幀
如上所述,通用動畫表示生成器(220)可表示隨時間對動畫中的圖形元素進(jìn)行的改變。這可由定義順序圖形幀的通用動畫表示(220)來完成,這些順序圖形幀各自定義動畫視圖中對應(yīng)于特定時間點的所有圖形元素。或者,通用動畫表示(240 )可定義關(guān)鍵動畫幀(242),這些關(guān)鍵動畫幀各自定義動畫視圖中對應(yīng)于特定時間點的所有圖形元素。然后, 為了節(jié)省計算資源,后續(xù)動畫幀(包括關(guān)鍵幀(242)之間的幀)或增量動畫幀(244)各自能夠通過定義從前一視圖改變的圖形特征(諸如圖形元素的屬性)來定義圖形視圖。
增量動畫幀(244和264)可表示直接表示數(shù)據(jù)的已改變的圖形元素(條形圖上的條、圖線條、被調(diào)整大小以表示數(shù)據(jù)數(shù)量的圖形元素等)以及背景圖形元素(圖表軸、標(biāo)簽、 標(biāo)題等)。可以推斷出未在增量動畫巾貞(244或264)中表示的其他圖形元素將對前一動畫幀保持不變。在專用動畫表示(260)的專用語言中支持增量動畫幀(264)的特征的情況下, 在該專用動畫表示(260)中也可使用類似的關(guān)鍵動畫幀(262)和增量幀。為了確定什么圖形元素已經(jīng)在動畫幀之間發(fā)生變化,通用動畫表示生成器(220)可維護(hù)動畫圖形元素到數(shù)據(jù)幀(210)中的數(shù)據(jù)字段的映射。因此,如果圖形元素的底層數(shù)據(jù)未改變,則通用動畫表示生成器(220)無需在下一增量動畫幀(244)中包括關(guān)于對應(yīng)的圖形元素的信息。類似地,如果能夠在不改變背景圖形元素的情況下示出數(shù)據(jù)幀(210)之間的數(shù)據(jù)變化,則能夠從下一增量動畫幀(244)中省略關(guān)于那些背景圖形元素的新信息。例如,如果來自前一動畫幀的軸對于下一數(shù)據(jù)幀(210)中的數(shù)據(jù)值是足夠的,則該軸可保持不變并且可以從下一增量動畫幀(244)中省略關(guān)于該軸的信息。然而,如果例如下一數(shù)據(jù)幀(210)中的數(shù)據(jù)值超出現(xiàn)有軸的限制,則下一增量動畫幀(244)可定義具有足夠大來處理新數(shù)據(jù)值的表示的值的新軸。 應(yīng)當(dāng)注意,動畫可以不是圖表,并且背景圖形元素可以是其它類型的元素。例如,動畫可以是按照國家的州或省來顯示人口普查數(shù)據(jù)的該國家的數(shù)據(jù)驅(qū)動的地圖。在一個實現(xiàn)中,每一個州或省的顏色可取決于人口數(shù)的大小來由一定范圍的顏色表示。該動畫可表示100年的動畫化的人口數(shù)據(jù),各個州/省的顏色改變以指示每一個十年期間的對應(yīng)人口變化。
如果該動畫是執(zhí)行尋找操作以轉(zhuǎn)到動畫中的指定時間點或者該動畫是倒帶至動畫中的指定先前時間點,并且在專用動畫表示(260)中存在位于該時間點的增量動畫中貞 (264),則該動畫可轉(zhuǎn)到在該指定時間點之前的關(guān)鍵動畫幀(262),并且可前進(jìn)播放到位于該動畫中的指定時間點的增量動畫巾貞(264 )。
批量化數(shù)據(jù)和動畫幀
在其中有有限數(shù)量的數(shù)據(jù)幀(210)要處理的情形中,可以在呈現(xiàn)對應(yīng)的動畫圖形中的任一個之前處理所有數(shù)據(jù)幀(210),并且可將整個專用動畫表示(260)—起發(fā)送到呈現(xiàn)環(huán)境(270)。然而,對于數(shù)據(jù)幀(210)的大型集合而言,或者在要處理的數(shù)據(jù)幀(210)的集合是無界的情況下(諸如在數(shù)據(jù)幀(210)正被流傳輸至通用動畫表示生成器(220)的情況下),以下操作可以是有益的對數(shù)據(jù)幀(210)進(jìn)行批處理并將專用動畫表示(260)的相應(yīng)的各批量化部分發(fā)送到呈現(xiàn)環(huán)境(270)以便呈現(xiàn),同時其他數(shù)據(jù)幀(210)仍然由通用動畫表示生成器(220)和動畫表示轉(zhuǎn)換器(250)來處理。呈現(xiàn)環(huán)境(270)可以在接收到專用動畫表示(260)的各批量化部分時呈現(xiàn)那些批量化部分。
數(shù)據(jù)幀動畫實現(xiàn)
現(xiàn)在將描述用于數(shù)據(jù)幀動畫的一些工具和技術(shù)的實現(xiàn)的具體示例。
現(xiàn)在參考圖3,示出動畫視圖(300)的示例。動畫視圖(300)是諸如上文討論的動畫等所呈現(xiàn)的動畫的用戶界面顯示。動畫視圖(300)可包括數(shù)據(jù)驅(qū)動的圖表(310)。圖表(310)可包括圖表標(biāo)題(312)、軸(320)、第一系列數(shù)據(jù)表不序列(330)和第二系列數(shù)據(jù)表示序列(332)。在該示例中,圖表可表示關(guān)于各個國家的信息。軸(320)可包括表示一個國家的人均收入的水平軸以及表示一個國家的預(yù)期壽命的垂直軸。第一系列數(shù)據(jù)表示序列(330)將第一國家表示為位于圖表中的具有一個方向的陰影線的點,第二系列數(shù)據(jù)表示序列(332)將第二國家表示為位于圖表中的具有不同方向的陰影線的點(代替使用陰影線的不同方向,可使用不同顏色或某一其他外觀差異)。這些點的大小和位置可隨時間改變以表示相應(yīng)國家的特性隨時間的變化。例如,點的大小可表示國家的人口數(shù),而點相對于軸 (320)的位置可表示國家的人均收入和預(yù)期壽命。
在圖2的圖示中,為每一個數(shù)據(jù)表示序列(330)示出了多個點。這是為了示出在播放圖表(310)的動畫時這些點如何隨時間變化。例如,指示符T(N) (Tl、T2、T3、T4和T5) 指示點對應(yīng)于底層數(shù)據(jù)幀的序列中的數(shù)據(jù)幀N。點可以在關(guān)于對應(yīng)序列的數(shù)據(jù)變?yōu)榭捎脮r被添加到圖表(310)。同樣,點可以在關(guān)于對應(yīng)序列的數(shù)據(jù)變?yōu)椴豢捎脮r被從圖表(310)中移除。例如,在多個國家的情況下,可能只收集了一個國家在所表示的總時間段的一部分期間的數(shù)據(jù)(例如,這可以在一個國家只在該時間段的一部分期間存在的情況下發(fā)生)。底層數(shù)據(jù)幀各自可包括對應(yīng)于圖表的表示的數(shù)據(jù)(人口數(shù)、人均收入、預(yù)期壽命,全都在一給定時間)。具有虛線的點可以是基于數(shù)據(jù)幀之間的時間的插值表示。這些插值表示可允許動畫的移動比僅僅示出實際數(shù)據(jù)幀的表示的情況平滑。對這些表示的插值可以按具有不同類型的插值的不同方式執(zhí)行。參考圖2,作為示例,通用動畫生成器(220)可執(zhí)行插值并且在通用動畫表示(240)中包括結(jié)果?;蛘?,插值可由動畫表示轉(zhuǎn)換器(250)或由呈現(xiàn)環(huán)境(270) 來執(zhí)行。
回頭參考圖3,動畫視圖(300)還可包括用于圖表(310)的控件(250)。例如,控件 (350)可包括能夠在“播放”(在當(dāng)前未播放動畫時)和“暫?!?在當(dāng)前正在播放動畫時)之間切換的播放/暫停按鈕(352)??丶?350)還可包括速度控件(354),該速度控件可包括用于控制圖表(310)中的動畫的速度(可導(dǎo)致更改幀之間的時間)的指示符。控件(350)還可包括進(jìn)度條(356),該進(jìn)度條可包括用于跟蹤圖表(310)的動畫在動畫序列中的當(dāng)前位置的指示符。另外,進(jìn)度條(356)上的指示符可響應(yīng)于尋找到動畫中的特定時間點的用戶輸入(例如,拖放指示符)來移動。
使用通用語言的示例實現(xiàn)
回頭參考圖2,在一個示例中,通用動畫表示(240)可以用通用語言來編寫。通用語言可允許指定時間線和動畫動作。
動畫動作可涵蓋各種圖形場景。例如,一個動作可以是創(chuàng)建形狀,而另一動作可以是破壞形狀。該創(chuàng)建還可包括定義形狀屬性,包括形狀上的可由后續(xù)動作參考的標(biāo)識。另一動作可操縱或變換一個或多個形狀屬性。例如,這一操縱可包括從一個形狀變換成另一個形狀、改變顏色、改變形狀大小、改變形狀定向、改變形狀位置等。對形狀的操縱還可包括動作之間的插值。例如,插值動作可指定所操縱的屬性的初始和最終值,以及該操縱的一個或多個時鐘值。插值可以在這些初始和最終屬性之間執(zhí)行(例如,在初始和最終大小之間、 在初始和最終位置之間等)。可以對不同類型的動畫動作應(yīng)用不同的專用插值規(guī)則,并且指定一動作可包括指定插值規(guī)則的至少一部分為應(yīng)用于該動作的插值規(guī)則。
如上所述,通用語言還可允許使用可管控動畫動作的執(zhí)行的時間線。在一個示例中,可以為每一動畫指定根時間線。根時間線可管理用于動畫的時鐘,并且可驅(qū)動總動畫序列,包括管理子時間線。在一個示例中,時鐘的范圍可由關(guān)鍵幀的數(shù)量來定義,并且時鐘速率可由速度(例如,每秒多少幀)來定義。而且,無窮大的時鐘速率可導(dǎo)致只顯示關(guān)鍵幀,而不顯示關(guān)鍵幀之間的插值(針對子時間線的對應(yīng)于每一時鐘計時的時鐘值可以是零值)。根時間線可由諸如以上參考圖3討論的控件(350)等控件來操縱(播放、暫停、尋找、速度等)。
根時鐘可以對子時間線發(fā)動時鐘事件,并且每一子時間線都可控制一個或多個動畫動作。子時間線的開始和結(jié)束時間可相對于根時間線來指定,并且子時間線可以從根時間線接收時鐘計時值。子時間線可將根時間線時鐘計時值轉(zhuǎn)換成諸如O和I的兩個值之間的相對值(其中子時間線可開始于相對時間O并在相對時間I結(jié)束)。子時間線可以對由子時間線控制的動畫動作發(fā)動子時間線時鐘計時事件。
示例運行時技術(shù)實現(xiàn)
現(xiàn)在將討論在運行時對動畫執(zhí)行的技術(shù)的示例,但可使用不同的技術(shù)。運行時技術(shù)可包括視圖確認(rèn)和轉(zhuǎn)換/呈現(xiàn)。這些動作中的全部或部分可以在相同的計算機(jī)或不同的計算機(jī)上執(zhí)行。這些技術(shù)將參考數(shù)據(jù)驅(qū)動的圖表來討論,但可以對從數(shù)據(jù)幀導(dǎo)出的其它類型的動畫使用類似的技術(shù)。
在視圖確認(rèn)期間,圖表對象可創(chuàng)建數(shù)據(jù)驅(qū)動的根視圖元素并將其附加到視圖。該圖表對象可掃描所有關(guān)鍵幀以確定將用于圖表的軸的最小和最大值??蓜?chuàng)建根時間線并將其附加到根視圖元素。
該圖表對象還可創(chuàng)建根時間線控件。例如,該創(chuàng)建可包括創(chuàng)建具有開始時間的子時間線并在該開始時間將該子時間線附加到根時間線。用于播放控制的創(chuàng)建動畫動作、用于速度控制的創(chuàng)建動畫動作以及用于進(jìn)度條的創(chuàng)建動畫動作全都可被附加到子時間線。
圖表對象還可創(chuàng)建用于圖表上的靜態(tài)圖形的形狀。例如,這可包括創(chuàng)建用于靜態(tài)圖形的子時間線,并在該子時間線的開始時間將該子時間線附加到根時間線。可生成用于靜態(tài)圖形(例如,圖表標(biāo)題、繪圖區(qū)域、網(wǎng)格線、軸和軸標(biāo)簽)中的每一個的創(chuàng)建動畫動作,這些動作具有這些圖形的屬性,并且這些創(chuàng)建動畫動作各自可被附加到用于靜態(tài)圖形的子時間線。
另外,圖表對象可迭代通過關(guān)鍵數(shù)據(jù)幀的集合并對每一數(shù)據(jù)幀執(zhí)行以下操作創(chuàng)建子時間線并在該子時間線的開始時間將該子時間線附加到根時間線;對于每一個新形狀,將具有該形狀的屬性的創(chuàng)建動畫動作附加到子時間線;對于正要離開的每一個現(xiàn)有形狀,將具有形狀標(biāo)識的破壞動畫動作附加到子時間線;以及對于將被改變的每一個持續(xù)形狀,將具有形狀標(biāo)識以及初始和最終屬性值的變換或操縱動畫動作附加到子時間線。
對于本地應(yīng)用,可以與瀏覽器場景不同地完成變換/呈現(xiàn)。對于這兩種場景,根視圖元素均可解析根時間線。對于本地應(yīng)用場景,在解析時間線時,對于具有當(dāng)前開始時間的每一子時間線,可處理用于該子時間線的每一個相關(guān)聯(lián)的動畫動作。該處理可包括將動畫動作轉(zhuǎn)換成呈現(xiàn)環(huán)境專用的表示。例如,如果將用電子表格程序來完成呈現(xiàn),則動畫動作可被轉(zhuǎn)換成被該電子表格程序理解的專用語言(實際可包括一種或多種語言中的信息)。類似地,如果呈現(xiàn)將由數(shù)據(jù)庫程序或文字處理程序來完成,則動畫動作可被轉(zhuǎn)換成可被該程序理解的專用語言(同樣可以是一種或多種語言,諸如Java腳本和HTML)。經(jīng)轉(zhuǎn)換的專用表示可諸如通過在程序中傳遞或通過經(jīng)由應(yīng)用編程接口傳遞至程序來被提供給呈現(xiàn)引擎。
對于瀏覽器場景,根和子時間線及其關(guān)聯(lián)動畫動作可被轉(zhuǎn)換成可被瀏覽器理解和處理的專用語言中的凈荷。每一凈荷都可以在完全生成該凈荷時被發(fā)送到瀏覽器,并且瀏覽器可以在凈荷到達(dá)時處理凈荷,即使并非所有凈荷都已到達(dá)。除了以上討論的瀏覽器場景和本地應(yīng)用場景之外,其他場景可以類似地工作。例如,可以存在諸如手持式設(shè)備等用于處理幀和執(zhí)行動畫的專用設(shè)備??梢栽诓辉诮邮斩耸褂脼g覽器的情況下通過網(wǎng)絡(luò)來發(fā)送表示(例如,在不具有瀏覽器的專用動畫設(shè)備接收到表示并呈現(xiàn)動畫的情況下)。而且,不同的場景可涉及不同類型的設(shè)備,諸如平板設(shè)備、移動電話、臺式計算機(jī)、膝上型計算機(jī)等。應(yīng)當(dāng)注意,本地應(yīng)用可使用上述用于遠(yuǎn)程瀏覽器場景的機(jī)制,而遠(yuǎn)程瀏覽器場景可使用上述用于本地應(yīng)用的機(jī)制。
用于對數(shù)據(jù)幀動畫的通用表示的技術(shù)
現(xiàn)在將討論用于對數(shù)據(jù)幀動畫的通用表示的若干技術(shù)。可以在計算環(huán)境中執(zhí)行這些技術(shù)中的每一個。例如,可在包括至少一個處理器和存儲器的計算機(jī)系統(tǒng)中執(zhí)行每種技術(shù),該存儲器包括存儲于其上的、在由該至少一個處理器執(zhí)行時使該至少一個處理器執(zhí)行該技術(shù)的指令(存儲器存儲指令(例如,對象代碼),并且當(dāng)處理器執(zhí)行這些指令時,處理器執(zhí)行該技術(shù))。類似地,一個或多個計算機(jī)可讀存儲介質(zhì)可具有收錄于其上的計算機(jī)可執(zhí)行指令,該些指令在由至少一個處理器執(zhí)行時使該至少一個處理器執(zhí)行該技術(shù)。
參考圖4,將描述一種用于對數(shù)據(jù)幀動畫的通用表示的技術(shù)。該技術(shù)可包括處理 (410)多個數(shù)據(jù)幀以產(chǎn)生表示這些數(shù)據(jù)幀的通用動畫表示。通用動畫可將數(shù)據(jù)幀表示為諸如圖表等動畫的圖形元素集隨時間的變化。圖表可包括一組軸。
可將通用動畫表示轉(zhuǎn)換(420)成用適于由呈現(xiàn)環(huán)境處理的專用語言的專用動畫表示。通用動畫表示和/或?qū)S脛赢嫳硎究蓪⒚恳粋€數(shù)據(jù)巾貞表示為動畫中的時間點,但在數(shù)據(jù)幀之間可以存在插值。轉(zhuǎn)換(420)可包括從通用動畫表示中移除專用語言不支持的一個或多個特征。轉(zhuǎn)換可包括從通用動畫表示中標(biāo)識專用語言不支持的一個或多個特征,并用專用動畫表示中的一個或多個特征來替換通用動畫表示中的不支持的特征。例如,如果通用動畫表示要求一形狀在動畫動作中淡出,但專用語言不支持淡出,則淡出動畫動作可被移除或被替換為用于立即移除該形狀的動作。
可將專用動畫表示發(fā)送(430)到呈現(xiàn)環(huán)境。例如,專用動畫表示可通過計算機(jī)網(wǎng)絡(luò)來發(fā)送,并且呈現(xiàn)環(huán)境可包括瀏覽器。專用動畫表示可被發(fā)送到計算機(jī)中的程序模塊,該計算機(jī)還包括處理多個數(shù)據(jù)幀、轉(zhuǎn)換通用動畫表示和/或?qū)S脛赢嫳硎景l(fā)送到呈現(xiàn)環(huán)境的一個或多個程序模塊。
通用動畫表示可定義一個或多個動畫動作以及用于動畫動作的一個或多個時間線。例如,通用動畫表示可包括根時間線以及一個或多個子時間線。專用動畫表示可以用標(biāo)記語言。通用動畫表示可以用被配置成轉(zhuǎn)換成多種不同的專用語言中的任一種語言的通用語目。
為了讓本段清楚,數(shù)據(jù)幀可被稱為數(shù)據(jù)幀的第一集合,通用動畫表示可被稱為用通用語言的第一通用動畫表示,呈現(xiàn)環(huán)境可被稱為第一呈現(xiàn)環(huán)境,而專用動畫表示可被稱為用第一專用語言的第一專用動畫表示。該技術(shù)可包括處理多個數(shù)據(jù)幀的第二集合以產(chǎn)生用通用語言的第二通用動畫表示。第二通用動畫表示可表示數(shù)據(jù)幀的第二集合。第二通用動畫表示可被轉(zhuǎn)換成用與第一專用語言不同的第二專用語言的第二專用動畫表示。第二專用語言可適于由第二呈現(xiàn)環(huán)境來處理。第二專用動畫表示可以與用于呈現(xiàn)第二專用動畫表示的指令一起被發(fā)送到第二呈現(xiàn)環(huán)境。
仍舊參考圖4,該技術(shù)還可包括在呈現(xiàn)環(huán)境處接收(440)專用動畫。呈現(xiàn)環(huán)境可以在顯示設(shè)備上呈現(xiàn)(450)專用動畫。該呈現(xiàn)環(huán)境可包括參與呈現(xiàn)的程序。該程序可選自下組瀏覽器程序、文字處理程序、電子表格程序、數(shù)據(jù)庫程序、演示程序及其組合。
現(xiàn)在參考圖5,將描述另一種用于對數(shù)據(jù)幀動畫的通用表示的技術(shù)。該技術(shù)可包括處理(510)多個數(shù)據(jù)幀的第一集合以產(chǎn)生用通用語言的第一通用動畫表示。第一通用動畫可將數(shù)據(jù)幀的第一集合表示為第一動畫的圖形元素集(諸如數(shù)據(jù)驅(qū)動的圖表)隨時間的變化。第一通用動畫表示可定義一個或多個時間線以及一個或多個動畫動作??蓪⒌谝煌ㄓ脛赢嫳硎巨D(zhuǎn)換(520)成用適于由第一呈現(xiàn)環(huán)境處理的第一專用語言的第一專用動畫表示。 可將第一專用動畫表示發(fā)送(530)到第一呈現(xiàn)環(huán)境。
該技術(shù)還可包括處理(540)多個數(shù)據(jù)幀的第二集合以產(chǎn)生用通用語言的第二通用動畫表示。第二通用動畫表示可將數(shù)據(jù)幀的第二集合表示為第二動畫的圖形元素集隨時間的變化。第二通用動畫表示可定義一個或多個時間線以及一個或多個動畫動作??蓪⒌诙ㄓ脛赢嫳硎巨D(zhuǎn)換(550)成用適于由第二呈現(xiàn)環(huán)境處理的第二專用語言的第二專用動畫表示。可將第二專用動畫表示發(fā)送到第二專用呈現(xiàn)環(huán)境(560)。
盡管用結(jié)構(gòu)特征和/或方法動作專用的語言描述了本主題,但可以理解,所附權(quán)利要求書中定義的主題不必限于上述具體特征或動作。更確切而言,上述具體特征和動作是作為實現(xiàn)權(quán)利要求的示例形式公開的。
權(quán)利要求
1.一種計算機(jī)實現(xiàn)的方法,包括處理多個數(shù)據(jù)幀以產(chǎn)生表示所述數(shù)據(jù)幀的通用動畫表示;將所述通用動畫表示轉(zhuǎn)換成用適于由呈現(xiàn)環(huán)境處理的專用語言的專用動畫表示;以及將所述專用動畫表示發(fā)送到所述呈現(xiàn)環(huán)境。
2.如權(quán)利要求I所述的方法,其特征在于,所述通用動畫表示定義一個或多個動畫動作以及用于所述一個或多個動畫動作的一個或多個時間線。
3.如權(quán)利要求I所述的方法,其特征在于,所述通用動畫表示用被配置成轉(zhuǎn)換成多種不同的專用語言中的任一種語言的通用語言。
4.如權(quán)利要求I所述的方法,其特征在于,所述數(shù)據(jù)幀是數(shù)據(jù)幀的第一集合,所述通用動畫表示是用通用語言的第一通用動畫表示,所述呈現(xiàn)環(huán)境是第一呈現(xiàn)環(huán)境,所述專用動畫表示是用第一專用語言的第一專用動畫表示,并且所述方法還包括處理多個數(shù)據(jù)幀的第二集合以產(chǎn)生用所述通用語言的第二通用動畫表示,所述第二通用動畫表示表示所述數(shù)據(jù)幀的第二集合;將所述第二通用動畫表示轉(zhuǎn)換成用與所述第一專用語言不同的第二專用語言的第二專用動畫表示,所述第二專用語言適于由第二呈現(xiàn)環(huán)境來處理;以及將所述第二專用動畫表示發(fā)送到所述第二呈現(xiàn)環(huán)境。
5.如權(quán)利要求I所述的方法,其特征在于,轉(zhuǎn)換包括從所述通用動畫表示中移除所述專用語言不支持的一個或多個特征。
6.如權(quán)利要求I所述的方法,其特征在于,轉(zhuǎn)換包括從所述通用動畫表示中標(biāo)識所述專用語言不支持的一個或多個特征,并用所述專用動畫表示中的一個或多個特征來替換所述通用動畫表示中的不支持的特征。
7.如權(quán)利要求I所述的方法,其特征在于,所述方法還包括在所述呈現(xiàn)環(huán)境處接收所述專用動畫表示;以及在顯示設(shè)備上呈現(xiàn)所述專用動畫表示。
8.如權(quán)利要求I所述的方法,其特征在于,所述通用動畫表示和所述專用動畫表示兩者都將所述數(shù)據(jù)巾貞中的每一個表示為動畫中的時間點。
9.一種或多種其上包含有計算機(jī)可執(zhí)行指令的計算機(jī)可讀存儲介質(zhì),所述計算機(jī)可執(zhí)行指令在由至少一個處理器執(zhí)行時使所述至少一個處理器執(zhí)行以下動作處理多個數(shù)據(jù)幀以產(chǎn)生通用動畫表示,所述通用動畫表示將所述數(shù)據(jù)幀表示為動畫的圖形元素集隨時間的變化,所述通用動畫表示定義一個或多個時間線以及一個或多個動畫動作;將所述通用動畫表示轉(zhuǎn)換成用適于由呈現(xiàn)環(huán)境處理的專用語言的專用動畫表示;以及將所述專用動畫表示發(fā)送到所述呈現(xiàn)環(huán)境。
10.一種計算機(jī)實現(xiàn)的方法,包括處理多個數(shù)據(jù)幀的第一集合以產(chǎn)生用通用語言的第一通用動畫表示,所述第一通用動畫表示將所述數(shù)據(jù)幀的第一集合表示為第一動畫的圖形元素集隨時間的變化,所述第一通用動畫表示定義一個或多個時間線以及一個或多個動畫動作;將所述第一通用動畫表示轉(zhuǎn)換成用適于由第一呈現(xiàn)環(huán)境處理的第一專用語言的第一專用動畫表示;將所述第一專用動畫表示發(fā)送到所述第一呈現(xiàn)環(huán)境; 處理多個數(shù)據(jù)幀的第二集合以產(chǎn)生用所述通用語言的第二通用動畫表示,所述第二通用動畫表示將所述數(shù)據(jù)幀的第二集合表示為第二動畫的圖形元素集隨時間的變化,所述第二通用動畫表示定義一個或多個時間線以及一個或多個動畫動作; 將所述第二通用動畫表示轉(zhuǎn)換成用適于由第二呈現(xiàn)環(huán)境處理的第二專用語言的第二專用動畫表示;以及· 將所述第二專用動畫表示發(fā)送到所述第二呈現(xiàn)環(huán)境。
全文摘要
本發(fā)明公開了對數(shù)據(jù)幀動畫的通用表示??商幚矶鄠€數(shù)據(jù)幀以產(chǎn)生表示這些數(shù)據(jù)幀的通用動畫表示。該通用動畫表示可以用適于被轉(zhuǎn)換成多種不同的專用語言中的任一種語言的通用語言。該通用動畫表示可被轉(zhuǎn)換成用適于由呈現(xiàn)環(huán)境處理的專用語言的專用動畫表示。該專用動畫表示可被發(fā)送到呈現(xiàn)環(huán)境,其中該專用動畫表示可被呈現(xiàn)在顯示設(shè)備上。
文檔編號G06T13/00GK102930581SQ20121036454
公開日2013年2月13日 申請日期2012年9月26日 優(yōu)先權(quán)日2011年9月27日
發(fā)明者G·A·普里汀 申請人:微軟公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
青岛市| 抚顺市| 安远县| 阳新县| 隆昌县| 缙云县| 新密市| 西藏| 涞源县| 丽水市| 德阳市| 永嘉县| 荣成市| 当阳市| 始兴县| 玉树县| 合山市| 马边| 萨嘎县| 嘉鱼县| 霸州市| 宜良县| 无棣县| 宁晋县| 怀集县| 彭泽县| 卢湾区| 静安区| 霍邱县| 五寨县| 双柏县| 定安县| 常山县| 阳信县| 庐江县| 西畴县| 阳信县| 揭阳市| 定西市| 织金县| 珲春市|