專利名稱:使用聲明性動畫化方案來動畫化對象的制作方法
使用聲明性動畫化方案來動畫化對象背景演示應用程序提供用于創(chuàng)建并傳遞視聽演示的功能。通常,演示采用一個或多個 演示幻燈片的形式。每一演示幻燈片可包括多個對象,如文本、照片、列表、表格、圖表、形 狀、剪貼畫、聲音剪輯、電影等。演示可在屏幕上顯示并按用戶的命令導航以傳遞演示。許多演示應用程序提供用于動畫化每一演示幻燈片上的對象并將視覺效果應用 到這些對象且用于動畫化演示幻燈片之間的過渡并將視覺效果應用到這些過渡的功能。例 如,通過使用由典型演示應用程序提供的功能,用戶可定義對象隨時間在演示幻燈片上的 運動的路徑(“動作路徑”)。在顯示演示幻燈片時,演示應用程序將使對象沿所定義的動 作路徑被動畫化。用戶可按類似方式手動地將任何類型的動畫特性應用到演示對象。由演示應用程序提供的動畫化功能傳統(tǒng)上在若干方式中受限。例如,動畫化功能 通常限于將靜態(tài)的動畫特性組單獨應用到演示中的每一對象,如以上述方式將動作路徑應 用到對象。結果,對用戶而言使用之前的演示應用程序來以視覺上吸引人的方式編排演示 幻燈片上的多個對象的動畫化通常是耗時的。此處所做出的本發(fā)明正是對于這些和其它考慮事項而呈現(xiàn)的。概述此處描述了用于通過動畫化方案的使用來動畫化對象的技術。具體而言,通過使 用此處所呈現(xiàn)的技術和概念,可聲明性地定義包括用于編排多個對象的動畫化的指令的動 畫化方案。此外,通過此處所提供的技術,可取決于要動畫化的對象的數(shù)量、對象的位置、對 象的類型、或其它因素來定義動畫。因為使用聲明性語言來定義動畫,所以不太熟悉編程的 用戶可容易地編輯動畫化方案或定義新動畫化方案。可容易地將這些動畫化方案添加到可 由應用程序使用的動畫化方案。根據(jù)此處所呈現(xiàn)的一個方面,使用聲明性語言來定義動畫化方案。動畫化方案包 括定義應該被應用到一個或多個對象的動畫和/或視覺效果以及應該如何應用這些動畫 或視覺效果的指令。例如,在一實現(xiàn)中,動畫化方案包括標識應該被應用到每一對象的動畫 的數(shù)據(jù)連同指示應該順序地還是并發(fā)地動畫化對象的數(shù)據(jù)。在一實施例中,動畫化方案包括在被評估時定義將如何動畫化對象的規(guī)則。例如, 可指定規(guī)則以使得取決于對象的數(shù)量、對象的類型、對象的位置、或其它因素來不同地動畫 化對象。在一實現(xiàn)中,用于定義動畫化方案的聲明性語言是可擴展標記語言(“XML”)。然 而,應該理解,其它聲明性語言和數(shù)據(jù)格式也可用于定義動畫化方案。根據(jù)其它方面,提供用于評估動畫化方案連同其它因素以將合適的動畫應用到對 象中的每一個的動畫化方案引擎。具體而言,在一實施例中,動畫化方案引擎檢索要應用到 一個或多個對象的的動畫化方案。動畫化方案引擎還檢索關于對象的數(shù)據(jù)。關于對象的數(shù) 據(jù)可包括關于對象中的每一個的位置、對象的類型、對象的數(shù)量、或其它環(huán)境變量的數(shù)據(jù)。 動畫化方案引擎隨后評估動畫化方案連同關于對象的數(shù)據(jù)以確定要應用到每一對象的動 畫。一旦動畫化方案引擎確定了要應用到每一對象的動畫和視覺效果,即將這些動畫和視 覺效果應用到對象。還可按類似方式定義并應用諸如過渡或聲音等其它效果。
4
應當理解,上述主題也可被實現(xiàn)為計算機控制的裝置、計算機進程、計算系統(tǒng)或諸 如計算機可讀介質等制品。通過閱讀以下詳細描述和查閱相關聯(lián)的附圖,這些和各個其它 特征將是顯而易見的。提供本概述是為了以簡化的形式介紹將在以下詳細描述中進一步描述的一些概 念。本概述并不旨在標識出所要求保護的主題的關鍵特征或必要特征,本概述也不旨在用 于限定所要求保護的主題的范圍。此外,所要求保護的主題不限于解決在本發(fā)明的任一部 分中提及的任何或所有缺點的實現(xiàn)。附圖簡述
圖1是示出在此處所呈現(xiàn)的一個實現(xiàn)中提供的演示應用程序的各方面的軟件體 系結構圖;圖2是示出在此處所呈現(xiàn)的一個實現(xiàn)中提供的動畫化方案數(shù)據(jù)結構的各方面的 數(shù)據(jù)結構圖;圖3是示出其上顯示由此處所提供的動畫化方案引擎動畫化的若干對象的演示 幻燈片的屏幕圖;圖4是示出此處所述的一實現(xiàn)中用于使用動畫化方案來動畫化對象的說明性過 程的流程圖;以及圖5是示出用于能夠實現(xiàn)本文所提出的各實施例的計算系統(tǒng)的說明性計算機硬 件和軟件體系結構的計算機體系結構圖。詳細描述以下詳細描述涉及用于動畫化對象的技術。通過使用此處所呈現(xiàn)的各實施例,可 通過動畫化方案的創(chuàng)建來編排將動畫和視覺效果應用到對象。動畫化方案可通過諸如XML 等聲明性語言的使用來創(chuàng)建,并包含關于應該如何將動畫和視覺效果應用到一個或多個對 象的規(guī)則和指令。包含此處所呈現(xiàn)的概念和技術的應用程序利用動畫化方案來動畫化對象 并將視覺效果應用到對象。將在以下參考圖1-5呈現(xiàn)關于此處所呈現(xiàn)的各實施例的其它細 節(jié)。盡管此處所述的主題是在結合操作系統(tǒng)和應用程序在計算系統(tǒng)上的執(zhí)行而執(zhí)行 的程序模塊的一般上下文中提供的,但本領域技術人員可以認識到,可結合其它類型的程 序模塊來執(zhí)行其它實現(xiàn)。一般而言,程序模塊包括執(zhí)行特定任務或實現(xiàn)特定抽象數(shù)據(jù)類型 的例程、程序、組件、數(shù)據(jù)結構和其他類型的結構。此外,本領域的技術人員可以理解,此處 所述的本主題可以使用其它計算機系統(tǒng)配置來實踐,這些其它計算機系統(tǒng)配置包括手持式 設備、多處理器系統(tǒng)、基于微處理器或可編程的消費電子產(chǎn)品、小型計算機、大型計算機等。在以下詳細描述中,參考了構成其一部分并作為說明示出了各具體實施例或示例 的附圖?,F(xiàn)在參考附圖(全部若干附圖中相同的標號表示相同的元素),將描述用于布局圖 像及相關聯(lián)的文本的計算系統(tǒng)和方法的各方面?,F(xiàn)在轉到圖1,將提供關于此處所呈現(xiàn)的用于動畫化對象的一個實施例的細節(jié)。具 體而言,圖1示出根據(jù)一個實現(xiàn)的用于動畫化對象的軟件體系結構100的各方面。如圖1 所示,此處所呈現(xiàn)的各實施例在演示應用程序102的上下文中描述。演示應用程序102提 供用于創(chuàng)建并傳遞試聽演示的功能。通常,演示采用被包含在演示文檔104內(nèi)的一個或多 個演示幻燈片106A-106C的形式。演示幻燈片106A-106C中的每一個可包括多個視聽對象108A-108C。對象108A-108C包括可在演示中使用的任何類型的視聽組件,如文本、照片、列 表、表格、圖表、形狀、剪貼畫、聲音剪輯、以及電影。也可以利用其它類型的視聽對象。演示 幻燈片106A-106C可在計算機顯示屏幕上顯示并按用戶的命令導航以傳遞該演示。如此處所述地,演示應用程序102還包括用于動畫化對象108A-108C和演示幻燈 片106A-106C之間的過渡并將視覺效果應用到對象108A-108C和演示幻燈片106A-106C之 間的過渡的功能。就此,演示應用程序102包括動畫化方案引擎112。如將在以下更詳細 描述地,動畫化方案引擎112用于使用動畫化方案110A的內(nèi)容來確定要應用到演示幻燈片 106A-106C中的每一個上的對象108A-108C的動畫和視覺效果。如圖1所示,可定義并存儲一個或多個動畫化方案110A-110C以供結合演示應用 程序102使用。演示應用程序102可提供允許用戶選擇要將可用動畫化方案110A-110C中 的哪一個應用到演示文檔104中的演示幻燈片106A-106C中的每一個的用戶界面??蓪⒉?同的動畫化方案110A-110C應用到幻燈片106A-106C中的每一個。還可提供用于允許用戶 編輯動畫化方案110A-110C并添加新動畫化方案的功能。在一實施例中,結合視覺主題來 利用動畫化方案110A-110C。主題定義演示幻燈片106A-106C內(nèi)的對象的視覺風格,如應該 使用的調(diào)色板或應該按其格式化文本的方式。以此方式,可按與幻燈片106A的視覺風格一 致的方式來執(zhí)行演示幻燈片106A上的對象108A-108C的動畫化。如以下將更詳細描述地,可使用諸如XML等聲明性語言來定義動畫化方案 110A-110C。也可以類似地利用其它類型的聲明性語言。動畫化方案110A-110C包括使用 聲明性語言指定的定義應該被應用到對象108A-108C的動畫和/或視覺效果以及應該如何 應用這些動畫或視覺效果的指令。例如,在一實現(xiàn)中,動畫化方案110A-110C包括標識應該 被應用到對象106A-106C中的每一個的動畫的數(shù)據(jù)連同指示應該順序地還是并發(fā)地動畫 化對象108A-108C的數(shù)據(jù)。作為另一示例,可定義指定應該將旋轉動畫應用到對象108A并 指定旋轉的角度的動畫化方案110A?;蛘?,動畫化方案110A可指定對象108A應該遵循的 動作路徑。還可將每一動畫化方案110內(nèi)定義的動畫堆疊在一起,進而允許由組合效果組 成的復雜動畫。在一實施例中,動畫化方案110A-110C包括在被評估時定義將如何動畫化對象 106A-106C的規(guī)則。例如,可指定用于使得取決于對象108A-108C的數(shù)量來不同地動畫化對 象的規(guī)則。作為示例,可為其中幻燈片106A上存在兩個對象108A-108B的情況定義一組動 畫同時為其中幻燈片106A上存在三個對象108A-108C的情況定義另一動畫。根據(jù)另一方面,可指定基于對象108A-108C的類型來更改被應用的動畫的類型的 規(guī)則。例如,規(guī)則可指定要將一個動畫應用到文本對象同時要將另一動畫應用到圖像對象。 在另一實現(xiàn)中,可指定取決于幻燈片106A上的對象108A-108C的位置不同地動畫化對象 108A-108C的規(guī)則。例如,如以下將參考圖2-3所述地,可定義將對象108A-108C中的每一 個以取決于幻燈片106A上的對象108A-108C的最終靜止位置的方向移動到幻燈片106A上 的動畫。應該理解,可在動畫化方案110A-110C內(nèi)聲明性地定義其它類型的規(guī)則。如下文中將更詳細描述地,在一實施例中,動畫化方案引擎112利用動畫化方案 110A和來自演示文檔104的數(shù)據(jù)來確定將如何動畫化對象108A-108C。例如,動畫化方 案引擎112可檢索標識幻燈片106A上的對象108A-108C的類型、幻燈片106A上的對象 108A-108C的數(shù)量、以及幻燈片106A上的對象108A-108C的位置的數(shù)據(jù)。動畫化方案引擎112利用此信息來評估在合適的動畫化方案110A中闡明的規(guī)則以確定應該被應用到對 象108A-108C中的每一個的動畫。一旦標識了適當?shù)膭赢?,即可將這些動畫應用到對象 108A-108C。關于該過程的附加細節(jié)在以下參考圖2提供?,F(xiàn)在參考圖2,將描述說明性動畫化方案110A。圖2中示出的說明性動畫化方案 110A利用XML來定義要應用到對象108A-108C的規(guī)則和動畫。圖2中示出的說明性動畫化 方案110A還指定要應用到圖像對象的動畫。然而,應該理解,可利用類似的概念來指定要 應用到其它類型的對象的動畫和視覺效果。如圖2所示,動畫化方案110A包括涵蓋構成動畫化方案110A的其它標簽的 〈ANIMSCHEME (動畫化方案)> 標簽202A。在說明性動畫化方案110中,定義了兩組動畫。將 被應用到對象108A-108C的具體動畫化組取決于是否應用了主題。如上所述,主題定義了 用于演示中的對象的視覺風格。這通過〈THEMESPECIFIC (主題指定) > 標簽202B的使用來 達成。如果應用了名為“FL0W(流)”的主題,則將利用在〈THEMESPECIFIC〉標簽202B內(nèi)定 義的動畫。否則,將利用在〈ANIMEFFECTS(動畫效果)> 標簽202H內(nèi)定義的動畫?!碩HEMESPECIFIC〉標簽202b涵蓋定義動畫的〈ANIMEFFECTS (動畫效果) > 標簽 202C。還定義指定應該用于執(zhí)行所定義的動畫的時序的〈ANIMTIMING(動畫時序)> 標簽 202D。在圖2中示出的示例中,〈ANIMTIMING〉標簽202D指定應該被應用到對象108A-108C 中的每一個以使得對象順序地動畫化的動畫。然而,應該理解,可并發(fā)地或以另一方式來應 用這些動畫。圖2中示出的說明性動畫方案110A還包括若干〈ANIMINF0(動畫信息)> 標簽 202E和202F。這些標簽中的每一個描述應該被應用到對象108A-108C中的每一個的動 畫。例如,<ANIMINF0>標簽202E結合所涵蓋的<SIMPLEANIM(簡單動畫) > 標簽定義徑向 “飛入” (radial " fly-in 〃 )動畫,通過該動畫對象108A-108C中的每一個以取決于幻燈 片106A上的對象108A-108C的最終位置的方向移動到幻燈片106A上。<ANIMINF0>標簽 202E的N0DETYPE (節(jié)點類型)=WITHEFFECT (帶有效果)屬性指示該徑向“飛入”動畫應 該與被定義的任何其它動畫在同一時間執(zhí)行。DURATION(持續(xù)時間)=3.0屬性指示由 <ANIMINF0>標簽202E指定的動畫應該執(zhí)行三秒。<ANIMINF0> 標簽 202F 結合所涵蓋的〈R0TATEANIM (旋轉動畫) > 和〈BYDEGREES (旋 轉角度)> 標簽定義旋轉動畫,通過該旋轉動畫對象108A-108C中的每一個旋轉45度。 <ANIMINF0>標簽202F的N0DETYPE = WITHEFFECT屬性指示旋轉動畫應該與被定義的任何 其它動畫在同一時間執(zhí)行。DURATION = 3. 0屬性指示由<ANIMINF0>標簽202F指定的動畫 應該執(zhí)行三秒。如上所述,如果未應用名為“FLOW”的主題,將利用由〈ANIMEFFECTS〉標簽202H定 義的動畫來動畫化對象108A-108C。在此情況中,〈ANIMTIMING〉標簽2021指定應該被應用 到對象108A-108C中的每一個以使得對象順序地動畫化的動畫。<ANIMINF0>標簽202J和 所涵蓋的<ANIMINF0>標簽指示對象應在三秒時間內(nèi)淡入(FADE)。應該理解,動畫化方案 110A僅是說明性的,且可利用其它方案來聲明性地定義管理將如何動畫化對象108A-108C 的規(guī)則?,F(xiàn)在轉到圖3,將描述示出將在圖2中示出并在上文中被描述的動畫化方案110A 應用到包括三個對象108A-108C的演示幻燈片106A的說明性屏幕顯示。如上文參考圖2所述,動畫化方案110A定義取決于幻燈片106A上的對象108A-108C的最終位置的徑向“飛 入”動畫和在應用名為“流”的主題時的旋轉動畫。圖2示出了作為其中應用了名為“流” 的主題時動畫化方案110A內(nèi)的XML指令的結果的對象108A-108C的動畫化。具體而言,沿 從幻燈片106A的左上角到其最終位置的動作路徑來動畫化對象108A。沿動作路徑動畫化 對象108A的同時,對象108A還旋轉45度。沿從幻燈片106A的右上角到其最終位置的動 作路徑來動畫化對象108B。沿動作路徑動畫化對象108B的同時,該對象還旋轉45度。沿 從幻燈片106A的右下角到其最終位置的動作路徑來動畫化對象108C。沿動作路徑動畫化 對象108C的同時,該對象還旋轉45度。應該理解,此示例僅是說明性的,且可定義其它類 型的動畫并將其應用到對象108A-108C?,F(xiàn)在參考圖4,將提供關于此處所呈現(xiàn)的用于動畫化對象的實施例的其它細節(jié)。具 體而言,圖4示出描述用于使用動畫化方案110來動畫化對象108的例程400的流程圖。應 理解,此處所述的邏輯操作被實現(xiàn)為(1) 一系列計算機實現(xiàn)動作或運行于計算系統(tǒng)上的程 序模塊,和/或(2)計算系統(tǒng)內(nèi)的互連機器邏輯電路或電路模塊。該實現(xiàn)是取決于計算機 系統(tǒng)的性能和其他要求的選擇的問題。因此,此處所描述的邏輯操作被不同地稱為操作、結 構設備、動作或模塊。這些操作、結構設備、動作和模塊可用軟件、固件、專用數(shù)字邏輯以及 它們的任何組合來實現(xiàn)。還應當理解,可以實現(xiàn)比各附圖所示的并在此處描述的更多或更 少操作。這些操作也可按與本文所描述的不同的次序來執(zhí)行。例程400在操作402開始,其中定義并存儲了動畫化方案110A-110C。如上文簡要 描述地,因為動畫化方案110A-110C是使用聲明性語言指定的,設計者可容易地定義新動 畫并將其存儲在可由動畫化方案引擎112訪問的位置。還可按類似的方式容易地定制動畫 化方案 110A-110C。從操作402,例程400繼續(xù)至操作404,其中將動化畫方案110A應用到演示文檔 104內(nèi)的幻燈片106。例如,這可能響應于將動畫化方案110A應用到幻燈片106A的用戶請 求而發(fā)生。為將動畫化方案110A應用到幻燈片106A,例程400繼續(xù)至操作406,其中動畫 化方案引擎112檢索動畫化方案110A。例程400隨后繼續(xù)至操作408,其中動畫化方案引 擎112檢索評估動畫化方案110A的內(nèi)容所必需的關于演示文檔104和對象108A-108C的 信息。例如,如上所述,動畫化方案引擎112可檢索關于幻燈片106A上的對象108A-108C 的位置或對象108A-108C的數(shù)量和類型的數(shù)據(jù)。在操作410,動畫化方案引擎112使用檢索出的關于演示文檔104和對象 108A-108C的信息來評估包含在動畫化方案110A中的規(guī)則并確定應該被應用到對象 108A-108C中的每一個的動畫和視覺效果。一旦標識了要應用到對象108A-108C中的每一 個的動畫,例程400即隨后繼續(xù)至操作412,其中將所標識的動畫應用到對象108A-108C中 的每一個。一旦將動畫應用到了對象108A-108C,例程400即繼續(xù)至操作414,并在那里結 束o圖5示出了用于能夠執(zhí)行本文所描述的用于以上述方式使用動畫化方案來動畫 化對象的軟件組件的計算機500的說明性計算機體系結構。圖5所示的計算機體系結構示 出了常規(guī)臺式計算機、膝上型計算機或服務器計算機并且可用于執(zhí)行此處所描述的演示應 用程序102的任何方面。如上所述,計算機500還可執(zhí)行包含此處所呈現(xiàn)的用于使用動畫 化方案來動畫化對象的概念的其它類型的應用程序。
圖5所示的計算機體系結構包括中央處理單元502 (“CPU”)、包括隨機存取存儲器 514 ( “RAM”)和只讀存儲器(“ROM”) 516的系統(tǒng)存儲器508、以及將存儲器耦合至CPU 502 的系統(tǒng)總線504?;据斎?輸出系統(tǒng)被存儲在ROM 516中,該系統(tǒng)包含幫助諸如在啟動期 間在計算機500中的元件之間傳遞信息的基本例程。計算機500還包括用于存儲操作系統(tǒng) 518、應用程序和其它程序模塊等的大容量存儲設備510,這將在以下更為詳盡地描述。大容量存儲設備510通過連接至總線504的海量存儲控制器(未示出)連接到 CPU 502。大容量存儲設備510及其相關聯(lián)的計算機可讀介質為計算機500提供非易失性 存儲。盡管本文所包含的計算機可讀介質的描述指的是大容量存儲設備,如硬盤或CD-ROM 驅動器,但本領域的技術人員應理解,計算機可讀介質可以是可由計算機500訪問的任何 可用計算機存儲介質。作為示例而非限制,計算機可讀介質可包括以用于存儲諸如計算機可讀指令、數(shù) 據(jù)結構、程序模塊或其它數(shù)據(jù)等信息的任何方法或技術實現(xiàn)的易失性和非易失性、可移動 和不可移動介質。例如,計算機可讀介質包括但不限于,RAM、R0M、EPR0M、EEPR0M、閃存或其 它固態(tài)存儲器技術、⑶-ROM、數(shù)字多功能盤(“DVD”)、HD-DVD、藍光(BLU-RAY)或其它光學 存儲、磁帶盒、磁帶、磁盤存儲或其它磁性存儲設備、或能用于存儲所需信息且可以由計算 機500訪問的任何其它介質。根據(jù)各實施例,計算機500可以使用通過諸如網(wǎng)絡520等網(wǎng)絡與遠程計算機的邏 輯連接在聯(lián)網(wǎng)環(huán)境中操作。計算機500可以通過連接至總線504的網(wǎng)絡接口單元506來連 接到網(wǎng)絡520。應當理解,網(wǎng)絡接口單元506也可用于連接至其它類型的網(wǎng)絡和遠程計算機 系統(tǒng)。計算機500還可以包括用于接收和處理來自多個其它設備的輸入的輸入/輸出控制 器512,這些設備包括鍵盤、鼠標或者電子指示筆(未在圖5中示出)。類似地,輸入/輸出 控制器可以提供至顯示屏、打印機或其它類型的輸出設備(也未在圖5中示出)的輸出。如前簡述的那樣,多個程序模塊和數(shù)據(jù)文件可以存儲在計算機500的大容量存儲 設備510和RAM 514內(nèi),包括適于控制聯(lián)網(wǎng)的臺式計算機、膝上型計算機或服務器計算機的 操作的操作系統(tǒng)518。大容量存儲設備510和RAM 514還可以存儲一個或多個程序模塊。 具體而言,大容量存儲設備510和RAM 514可存儲提供此處所述的用于使用動畫化方案來 動畫化對象的功能的演示應用程序102。大容量存儲設備510和RAM 514還可存儲動畫化 方案110和演示文檔104,這兩者都在上文中被描述?;谏鲜鰞?nèi)容,應當理解,此處呈現(xiàn)了用于使用動畫化方案來動畫化對象的技術。 盡管用對計算機結構特征、方法動作和計算機可讀介質專用的語言描述了此處呈現(xiàn)的本主 題,但可以理解,所附權利要求書中定義的本發(fā)明不必限于此處所述的具體特征、動作或介 質。相反,具體特征、動作和介質是作為實現(xiàn)權利要求的示例形式公開的。上述主題僅作為說明提供,并且不應被解釋為限制??蓪Υ颂幩龅闹黝}作出各 種修改和改變,而不必遵循所示和所述的示例實施例和應用,且不背離所附權利要求書中 所述的本發(fā)明的真正精神和范圍。
權利要求
一種用于使用動畫化方案(110)來動畫化一個或多個對象(108)的方法,所述方法包括存儲定義所述動畫化方案(110)的數(shù)據(jù);將所述動畫化方案(110)與所述一個或多個對象(108)相關聯(lián);檢索關于所述一個或多個對象(108)的數(shù)據(jù);以及基于定義所述動畫化方案(110)的數(shù)據(jù)和關于所述一個或多個對象(108)的數(shù)據(jù)來動畫化所述一個或多個對象(108)。
2.如權利要求1所述的方法,其特征在于,使用聲明性語言表達定義所述動畫化方案 的數(shù)據(jù)。
3.如權利要求1所述的方法,其特征在于,定義所述動畫化方案的數(shù)據(jù)表達關于應該 如何動畫化所述一個或多個對象的一個或多個規(guī)則。
4.如權利要求1所述的方法,其特征在于,定義所述動畫化方案的數(shù)據(jù)指示應該順序 地還是并發(fā)地動畫化所述一個或多個對象。
5.如權利要求1所述的方法,其特征在于,定義所述動畫化方案的數(shù)據(jù)指定應該被應 用到所述一個或多個對象中的每一個的一個或多個動畫或視覺效果。
6.如權利要求1所述的方法,其特征在于,關于所述一個或多個對象的數(shù)據(jù)包括所述 一個或多個對象中的每一個的位置。
7.如權利要求1所述的方法,其特征在于,關于所述一個或多個對象的數(shù)據(jù)包括所述 一個或多個對象中的每一個的類型。
8.如權利要求1所述的方法,其特征在于,關于所述一個或多個對象的數(shù)據(jù)包括所述 一個或多個對象的數(shù)量。
9.一種其上存儲有計算機可執(zhí)行指令的計算機可讀介質,所述指令在由計算機執(zhí)行 時,使得所述計算機執(zhí)行如權利要求1所述的方法。
10.一種用于使用動畫化方案(110)來動畫化幻燈片演示(104)中的幻燈片(106)上 的一個或多個對象(108)的方法,所述方法包括存儲動畫化方案(110),所述動畫化方案(110)是使用聲明性標記語言來表達的;將所述動畫化方案(110)與所述幻燈片(106)上的所述一個或多個對象(108)相關 聯(lián);以及執(zhí)行動畫化方案引擎(112),所述動畫化方案引擎(112)用于檢索關于所述幻燈片 (106)上的所述一個或多個對象(108)的數(shù)據(jù)并利用所述動畫化方案(110)和關于所述幻 燈片(106)上的所述一個或多個對象(108)的數(shù)據(jù)來生成用于所述一個或多個對象(108) 的動畫。
11.如權利要求10所述的方法,其特征在于,所述動畫化方案表達定義應該如何動畫 化所述一個或多個對象的規(guī)則。
12.如權利要求11所述的方法,其特征在于,所述動畫化方案定義應該被應用到所述 一個或多個對象中的每一個的一個或多個動畫或視覺效果。
13.如權利要求11所述的方法,其特征在于,所述動畫化方案引擎由演示應用程序執(zhí)行。
14.如權利要求13所述的方法,其特征在于,關于所述一個或多個對象的數(shù)據(jù)包括所述一個或多個對象中的每一個的位置。
15.如權利要求14所述的方法,其特征在于,關于所述一個或多個對象的數(shù)據(jù)還包括 所述一個或多個對象中的每一個的類型。
16.如權利要求15所述的方法,其特征在于,關于所述一個或多個對象的數(shù)據(jù)還包括 所述一個或多個對象的數(shù)量。
17.一種其上存儲有計算機可執(zhí)行指令的計算機可讀介質,所述指令在由計算機執(zhí)行 時,使得所述計算機執(zhí)行如權利要求10所述的方法。
18.一種其上存儲有供由動畫化方案引擎(112)用于生成要應用到一個或多個對象 (108)的動畫的數(shù)據(jù)結構(110)的計算機可讀介質,所述數(shù)據(jù)結構(110)包括使用聲明性標記語言表達的第一數(shù)據(jù)域(202D),所述第一數(shù)據(jù)域(202D)存儲定義指 示應該如何動畫化所述一個或多個對象(108)的規(guī)則的數(shù)據(jù);以及使用所述聲明性標記語言表達的第二數(shù)據(jù)域(202E),所述第二數(shù)據(jù)域(202E)存儲定 義在滿足所述規(guī)則的情況中要應用到所述一個或多個對象(108)的動畫的數(shù)據(jù),且其中存 儲在所述第一數(shù)據(jù)域(202D)中的數(shù)據(jù)和存儲在所述第二數(shù)據(jù)域(202E)中的數(shù)據(jù)由所述動 畫方案引擎(112)用于生成用于所述一個或多個對象(108)的動畫。
19.如權利要求18所述的計算機可讀介質,其特征在于,所述數(shù)據(jù)結構還包括使用所 述聲明性標記語言表達的第三數(shù)據(jù)域,所述第三數(shù)據(jù)域存儲指示應該順序地還是并發(fā)地將 所述動畫應用到所述一個或多個對象中的每一個的數(shù)據(jù)。
20.如權利要求18所述的計算機可讀介質,其特征在于,所述一個或多個對象包括幻 燈片演示中的對象。
全文摘要
此處描述了用于通過使用動畫化方案來動畫化對象的技術。使用聲明性語言來定義動畫化方案,它包括定義要被應用到一個或多個對象的動畫和/或視覺效果以及應該如何應用這些動畫或可視效果的指令。動畫化方案包括在被評估時定義將如何動畫化對象的規(guī)則。還提供了用于評估動畫化方案連同其它因素以將合適的動畫應用到對象中的每一個的動畫化方案引擎。動畫化方案引擎檢索關于對象的動畫化方案和數(shù)據(jù)。動畫化方案引擎隨后評估動畫化方案連同關于對象的數(shù)據(jù)以標識要應用到每一對象的動畫。隨后將所標識的動畫和視覺效果應用到對象。
文檔編號G06T15/70GK101802876SQ200880108170
公開日2010年8月11日 申請日期2008年8月25日 優(yōu)先權日2007年9月21日
發(fā)明者B·李, C·R·陳, J·C·陳 申請人:微軟公司