国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      基于情境的動畫庫的制作方法

      文檔序號:6376597閱讀:307來源:國知局
      專利名稱:基于情境的動畫庫的制作方法
      基于情境的動畫庫背景技術(shù)
      許多常見用戶界面情境利用(leverage)轉(zhuǎn)變和動畫,從而創(chuàng)建更流暢的視覺效果以將用戶體驗聯(lián)系在一起。例如,當(dāng)在應(yīng)用之間轉(zhuǎn)變時,一個應(yīng)用可以在視覺上逐漸消失, 同時另一個應(yīng)用在視覺上逐漸顯現(xiàn)。為了創(chuàng)建統(tǒng)一、標(biāo)準(zhǔn)化的用戶體驗,應(yīng)當(dāng)以一致的方式應(yīng)用運動,使得該運動感覺好像它在講述單個連貫的故事。然而到目前為止,動畫傾向于使用諸如轉(zhuǎn)變、旋轉(zhuǎn)等之類的不同元素以零碎的方式執(zhí)行。這使得開發(fā)者或動畫設(shè)計者必須單獨地編程代碼以執(zhí)行這些不同的動畫元素,從而導(dǎo)致在相關(guān)系統(tǒng)上不一致的用戶體驗。發(fā)明內(nèi)容
      該發(fā)明內(nèi)容被提供以通過簡化形式引入在下面的具體實施方式
      中進(jìn)一步描述的概念的選擇。該發(fā)明內(nèi)容不旨在標(biāo)識要求保護(hù)的主題的關(guān)鍵特征或必要特征,也不旨在用作在確定要求保護(hù)的主題的范圍方面的輔助。
      各種實施例基于各種常見用戶界面情境提供了動畫描述的庫。應(yīng)用開發(fā)者可以使得該動畫庫基于用戶與用戶界面的交互而被針對動畫查詢。該庫定義了用于創(chuàng)建特定動畫的變換原語(transformation primitive)的用法、變換原語的故事板制作以及相關(guān)聯(lián)的計時功能。這些定義可以被提供給調(diào)用應(yīng)用,使得該應(yīng)用可以實現(xiàn)利用故事板制作的變換原語的動畫。
      利用動畫庫,應(yīng)用開發(fā)者可以將在他們的特定用戶界面中的情境映射到匹配動畫,而無需理解特定動畫后面的細(xì)節(jié)。該抽象不僅簡化了應(yīng)用開發(fā)者的任務(wù),而且它允許動畫設(shè)計在特定系統(tǒng)上一致地應(yīng)用。


      參照附圖描述具體實施方式
      。在附圖中,附圖標(biāo)記的最左邊的(多個)數(shù)字標(biāo)識該附圖標(biāo)記在其中第一次出現(xiàn)的附圖。在說明書和附圖中,不同實例中相同附圖標(biāo)記的使用可以指示相似或相同的項目。
      圖I是根據(jù)一個或多個實施例的示例實現(xiàn)方式中環(huán)境的圖示。
      圖2是圖I所示的示例實現(xiàn)方式中系統(tǒng)的更詳細(xì)的圖示。
      圖3是根據(jù)一個或多個實施例的示例動畫庫的圖示。
      圖4是根據(jù)一個或多個實施例的動畫定義的示例集合的圖示。
      圖5是根據(jù)一個或多個實施例的示例XML定義的故事板的圖示。
      圖6是示例XML定義的故事板和該故事板涉及的各種相關(guān)聯(lián)的用戶界面狀態(tài)。
      圖7是與圖6相關(guān)的、視覺地示出圖6的XML定義的故事板中定義的變換之間的時序關(guān)系的圖不。
      圖8是描述根據(jù)本發(fā)明的一個或多個實施例的方法中的步驟的流程圖。
      圖9圖示了可以被用于實現(xiàn)本文描述的各種實施例的示例計算設(shè)備。
      具體實施方式
      概沭各種實施例基于各種常見用戶界面情境提供動畫描述的庫。應(yīng)用開發(fā)者可以使得該動畫庫基于用戶與用戶界面的交互而被針對動畫查詢。該庫定義了用于創(chuàng)建特定動畫的變換原語的用法、變換原語的故事板制作以及相關(guān)聯(lián)的計時功能。這些定義可以被提供給調(diào)用應(yīng)用,使得該應(yīng)用可以實現(xiàn)利用故事板制作的變換原語的動畫。
      利用動畫庫,應(yīng)用開發(fā)者可以將在他們的特定用戶界面中的情境映射到匹配動畫,而無需理解特定動畫后面的細(xì)節(jié)。該抽象不僅簡化了應(yīng)用開發(fā)者的任務(wù),而且它允許動畫設(shè)計在特定系統(tǒng)上一致地應(yīng)用。
      例如,在特定系統(tǒng)中,具有“頁碼”情境的各種應(yīng)用可以利用動畫庫以基于在動畫庫中出現(xiàn)的“頁碼”動畫定義來轉(zhuǎn)變。因此,在不同應(yīng)用上的頁碼可以以標(biāo)準(zhǔn)化方式實現(xiàn)。 而且,動畫庫允許統(tǒng)一的、集成的未來更新。
      在一個或多個實施例中,動畫庫可以在多種不同的平臺上被利用,并且在此意義下,動畫庫可以是平臺無關(guān)的。
      因此,動畫庫提供各種動畫的統(tǒng)一的、標(biāo)準(zhǔn)化的描述所駐留的中央位置。所述定義基于通常發(fā)生在特定用戶界面內(nèi)的用戶界面情境。通過示例而非限制,通常發(fā)生的用戶界面情境可以包括用戶界面的漸顯或漸隱的部分、用戶界面的滑上或滑落屏幕的對話框或其他部分、在用戶界面元素被觸摸或另外地被占用時發(fā)生的效果、在新用戶界面元素出現(xiàn)在屏幕上時發(fā)生的效果、和/或在窗口希望發(fā)布用戶通知時發(fā)生的什么。動畫庫提供遠(yuǎn)離再現(xiàn)和復(fù)合技術(shù)的抽象的水平,其導(dǎo)致它的上述平臺無關(guān)的屬性。而且,各種實施例利用標(biāo)準(zhǔn)化語言來描述可以在多個元件、元件的陣列等上操作的動畫。
      在下面的討論中,首先描述可操作來使用本文所描述的技術(shù)的示例環(huán)境。然后,描述各種實施例的示例圖示,其可以在示例環(huán)境中以及在其他環(huán)境中使用。因此,該示例環(huán)境不限于執(zhí)行所描述的實施例并且所描述的實施例不限于在該示例環(huán)境中實現(xiàn)。
      示例環(huán)境圖I是可操作來使用本文檔中所描述的動畫技術(shù)的示例實現(xiàn)方式中的環(huán)境100的圖示。所圖示的環(huán)境100包括可以以多種方式配置的計算設(shè)備102的示例。例如,計算設(shè)備 102可以被配置為傳統(tǒng)計算機(jī)(例如臺式個人計算機(jī)、膝上型計算機(jī)等等)、移動站、娛樂器具、通信地耦合到電視的機(jī)頂盒、無線電話、上網(wǎng)本、游戲控制臺、手持式設(shè)備等等,如關(guān)于圖2進(jìn)一步描述的。因此,計算設(shè)備102的范圍可以是從具有大量存儲器和處理器資源的全資源設(shè)備(例如,個人計算機(jī)、游戲控制臺)到具有有限的存儲器和/或處理器資源的低資源設(shè)備(例如,傳統(tǒng)機(jī)頂盒、手持式游戲控制臺)。計算設(shè)備102還包括使計算設(shè)備102執(zhí)行下述一個或多個操作的軟件。
      計算設(shè)備102包括動畫庫104以用于提供如在本文檔中描述的動畫功能。動畫庫可以結(jié)合任何適當(dāng)類型的硬件、軟件、固件或其組合來實現(xiàn)。在至少一些實施例中,動畫庫在駐留在某種類型的有形的、計算機(jī)可讀存儲介質(zhì)上的軟件中實現(xiàn),下文中提供了所述存儲介質(zhì)的示例。
      動畫庫104表示基于各種常見用戶界面情境提供動畫描述的庫的功能。動畫庫可以基于用戶與用戶界面的交互而被針對動畫查詢。該庫定義了用于創(chuàng)建特定動畫的變換原語的用法、變換原語的故事板制作以及相關(guān)聯(lián)的計時功能。這些定義可以被提供給調(diào)用應(yīng)用,使得該應(yīng)用可以實現(xiàn)利用故事板制作的變換原語的動畫。
      因此,如上所記錄,動畫庫提供各種動畫的統(tǒng)一的、標(biāo)準(zhǔn)化的描述所駐留的中央位置。所述定義基于通常發(fā)生在特定用戶界面內(nèi)的用戶界面情境。動畫庫提供遠(yuǎn)離再現(xiàn)和合成技術(shù)的抽象的水平,其導(dǎo)致它的上述平臺無關(guān)的屬性。而且,各種實施例利用標(biāo)準(zhǔn)化語言來描述可以在多個元件、元件的陣列等上操作的動畫。
      計算設(shè)備102還包括手勢模塊105,其辨識可以由一個或多個手指執(zhí)行的手勢并且使得執(zhí)行對應(yīng)于這些手勢的操作。手勢可以由模塊105以多種不同方式辨識。例如,手勢模塊105可以被配置成辨識觸摸輸入,比如鄰近使用觸摸屏功能的計算設(shè)備102的顯示設(shè)備108的用戶的手106a的手指。模塊105可以被用于辨識單手指手勢和邊框手勢(bezel gesture)、多手指/同一只手的手勢和邊框手勢、和/或多手指/不同手的手勢和邊框手勢。
      計算設(shè)備102還可以被配置成檢測(例如由用戶的手106a的一個或多個手指提供的)觸摸輸入和(例如由觸控筆116提供的)觸控筆輸入并區(qū)分它們。所述區(qū)分可以以多種方式執(zhí)行,比如通過檢測被用戶的手106的手指接觸的顯示設(shè)備108的量對比被觸控筆116 接觸的顯示設(shè)備108的量。
      因此,手勢模塊105可以通過辨識和利用觸控筆與觸摸輸入之間的劃分 (division)以及不同類型的觸摸輸入支持多種不同的手勢技術(shù)。
      圖2圖示了示例系統(tǒng)200,其示出如在其中通過中央計算設(shè)備互連多個設(shè)備的環(huán)境中實現(xiàn)的動畫庫104和手勢模塊105。中央計算設(shè)備對多個設(shè)備而言可以是本地的,或者可以位于遠(yuǎn)離所述多個設(shè)備的地方。在一個實施例中,中央計算設(shè)備是“云”服務(wù)器群,其包括一個或多個通過網(wǎng)絡(luò)或因特網(wǎng)或其他裝置連接到多個設(shè)備的服務(wù)器計算機(jī)。
      在一個實施例中,該互連架構(gòu)使得能夠在多個設(shè)備上遞送功能,以便向多個設(shè)備的用戶提供共同的且無縫的體驗。多個設(shè)備中的每一個可以具有不同的物理需求和能力, 并且中央計算設(shè)備使用平臺以使得既針對該設(shè)備定制而又針對所有設(shè)備共同的體驗?zāi)軌蜻f送到設(shè)備。在一個實施例中,創(chuàng)建目標(biāo)設(shè)備的“類”并且針對設(shè)備的通用類定制體驗。設(shè)備的類可以通過設(shè)備的物理特征或用途或其他常見特性來定義。例如,如前所述,計算設(shè)備 102可以以多種不同方式來配置,比如針對移動裝置202、計算機(jī)204和電視206的使用來配置。這些配置的每一個具有通常對應(yīng)的屏幕尺寸并且因此計算設(shè)備102可以被配置為該示例系統(tǒng)200中這些設(shè)備類之一。例如,計算設(shè)備102可以采用包括移動電話、音樂播放器、 游戲設(shè)備等的移動裝置202類設(shè)備。計算設(shè)備102還可以采用包括個人計算機(jī)、膝上型計算機(jī)、上網(wǎng)本等的計算機(jī)204類設(shè)備。電視206配置包括涉及在休閑的環(huán)境中的顯示的設(shè)備的配置,例如電視、機(jī)頂盒、游戲控制臺等。因此,本文描述的技術(shù)可以由計算設(shè)備102的這些各種配置支持并且不限于下面部分中描述的特定示例。
      云208被圖示為包括用于web服務(wù)212的平臺210。該平臺210使云208的硬件 (例如服務(wù)器)和軟件資源的底層功能抽象化并且因此可以充當(dāng)“云操作系統(tǒng)”。例如,平臺 210可以使資源抽象化以將計算設(shè)備102與其他計算設(shè)備連接。平臺210還可以用來使資源的縮放抽象化以按照所遇到經(jīng)由平臺210實現(xiàn)的web服務(wù)212的需要提供對應(yīng)的縮放水平。多種其他示例也被預(yù)期,比如在服務(wù)器群中的服務(wù)器的負(fù)載平衡、防范惡意方(例如垃圾郵件、病毒或其他惡意軟件)等等。
      因此,云208作為關(guān)于經(jīng)由因特網(wǎng)或其他網(wǎng)絡(luò)被使得可用于計算設(shè)備102的軟件和硬件資源的策略的一部分而包括在內(nèi)。例如,動畫庫104可以部分地在計算設(shè)備102上以及經(jīng)由支持web服務(wù)212的平臺210來實現(xiàn)。
      由手勢模塊支持的手勢技術(shù)可以使用在移動配置202中的觸摸屏功能、計算機(jī)204配置的跟蹤板功能來檢測,通過作為不涉及與特定輸入設(shè)備接觸的自然用戶接口 (NUI)的支持的一部分的相機(jī)來檢測,等等。而且,用于檢測和辨識輸入以識別特定手勢的操作的執(zhí)行可以遍及系統(tǒng)200而比如由計算設(shè)備102和/或云208的平臺210支持的web 服務(wù)212來分配。
      一般地,本文所描述的任何功能可以使用軟件、固件、硬件(例如固定的邏輯電路)、手動處理或這些實現(xiàn)方式的組合來實現(xiàn)。如本文所使用的術(shù)語“模塊”、“功能”和“邏輯”一般地表示軟件、固件、硬件或其組合。在軟件實現(xiàn)方式的情況下,模塊、功能或邏輯表示當(dāng)在處理器(例如一個或多個CPU)上執(zhí)行或由處理器執(zhí)行時執(zhí)行指定任務(wù)的程序代碼。 程序代碼可以存儲在一個或多個計算機(jī)可讀存儲器設(shè)備中。下文所述的手勢技術(shù)的特征是平臺獨立的,這意味著所述技術(shù)可以在具有多種處理器的多種商業(yè)計算平臺上實現(xiàn)。
      在下面的討論中,各個部分描述各種示例實施例。標(biāo)題為“示例動畫庫”的部分描述根據(jù)一個或多個實施例的示例動畫庫。此后,標(biāo)題為“示例故事板”的部分描述根據(jù)一個或多個實施例的示例故事板。接下來,標(biāo)題為“示例方法”的部分描述根據(jù)一個或多個實施例的示例方法。最后,標(biāo)題為“示例設(shè)備”的部分描述可以用于實現(xiàn)一個或多個實施例的示例設(shè)備的各個方面。
      已經(jīng)描述了可以在其中利用動畫庫的示例操作環(huán)境,現(xiàn)在考慮根據(jù)一個或多個實施例的示例動畫庫的討論。
      示例動畫庫圖3 —般地在300處圖示了根據(jù)一個或多個實施例的示例動畫庫。在該示例中,動畫庫300包括動畫定義302的集合、語言分析器304和情境倉庫306。
      在一個或多個實施例中,動畫定義集合302包括以標(biāo)準(zhǔn)化語言表達(dá)的一組情境描述。情境描述提供了由可以包括應(yīng)用的各種系統(tǒng)使用的預(yù)定義的動畫和視覺風(fēng)格,所述應(yīng)用包括本地應(yīng)用、web應(yīng)用和托管應(yīng)用。所述集合內(nèi)所包含的動畫定義提供了在各種情境中一致的動畫和視覺風(fēng)格。所述集合內(nèi)的動畫定義定義了用于創(chuàng)建特定動畫的變換原語的用法、變換原語的故事板制作以及相關(guān)聯(lián)的計時功能。這些定義被提供給調(diào)用應(yīng)用,使得該應(yīng)用可以實現(xiàn)利用故事板制作的變換原語的動畫。
      如上所記錄,情境描述以標(biāo)準(zhǔn)化語言表達(dá)??梢岳萌魏芜m當(dāng)?shù)臉?biāo)準(zhǔn)語言,而不脫離要求保護(hù)的主題的精神和范圍。在至少一些實施例中,標(biāo)準(zhǔn)化語言包括可擴(kuò)展標(biāo)記語言 (XML),下文提供其示例。
      在所圖示和描述的實施例中,語言分析器304被配置成與動畫定義302的集合交互以處理這些定義和與之相關(guān)聯(lián)的圖形資產(chǎn),并且使得這些定義能夠被調(diào)用應(yīng)用訪問。
      情境倉庫306包括多個應(yīng)用程序接口,其使得調(diào)用應(yīng)用能夠訪問駐留在動畫定義的集合中的情境描述。
      圖4更詳細(xì)地圖示了根據(jù)一個或多個實施例的動畫定義302的集合。在該示例中,每個動畫定義或情境描述被表示為單獨的故事板。每個故事板被配置成定義或描述可以被調(diào)用應(yīng)用利用的動畫。任意適當(dāng)數(shù)量的故事板400、402可以包括在動畫定義302的集合內(nèi)。
      在所圖示和描述的實施例中,每個故事板包括一個或多個計時功能404和故事板內(nèi)容406。如技術(shù)人員將領(lǐng)會,動畫中的計時功能支配被圖示的動作發(fā)生的速度以及其他屬性。例如,在平板電腦環(huán)境中,如果用戶在足以使鍵盤暴露的顯示屏上輕敲,則計時功能支配在用戶界面中鍵盤暴露到用戶的速度和方式。同樣,如果用戶界面將在兩個不同的應(yīng)用之間的轉(zhuǎn)變,則計時功能支配這些應(yīng)用彼此間的轉(zhuǎn)變的速度和方式。
      故事板內(nèi)容406包括一個或多個目標(biāo)名稱408和一個或多個變換410。目標(biāo)名稱 408描述作為信息的主題的目標(biāo)。變換410描述將用在特定動畫中的單獨的變換原語以及如將在下文中變得清楚明白的與變換原語相關(guān)聯(lián)的屬性。
      已經(jīng)考慮了動畫定義302的示例集合,現(xiàn)在考慮根據(jù)一個或多個實施例的以XML 形式的標(biāo)準(zhǔn)化語言描述的示例故事板的討論。
      示例故事板圖5圖示了根據(jù)本發(fā)明的一個或多個實施例的以XML描述的示例故事板。在該示例中, 故事板一般地在500處使用兩個計時功能,每一個的類型為“CubicBezier (三次貝塞爾)”。 第一個計時功能被命名為“Easeln (逐步適應(yīng))”,而第二個計時功能被命名為“Linear (線性)”。每個計時功能的XML封裝包括要被用于實現(xiàn)該計時功能的參數(shù)。
      再往下,在故事板的XML表示中,出現(xiàn)故事板的名稱502-這里是“SampIe(樣本)”。 該XML還包括在504處的目標(biāo)名稱和與目標(biāo)名稱相關(guān)聯(lián)的其他屬性,以及一般地在506處所示的變換原語的集合。變換原語506的集合包括變換名稱和與如何將特定變換應(yīng)用到命名的目標(biāo)有關(guān)的各種參數(shù)。例如,出現(xiàn)的第一變換原語是“scale2D (縮放2D)”,連同與該特定變換如何被應(yīng)用有關(guān)的各種參數(shù)。在該示例中,這些參數(shù)包括開始時間和持續(xù)時間,以及與實現(xiàn)變換相關(guān)聯(lián)的值,和要與該變換一起使用的計時功能。
      在該示例中,存在七個要被應(yīng)用的變換,包括一個縮放變換、一個傾斜變換、一個旋轉(zhuǎn)變換、兩個平移變換、一個不透明變換以及一個交錯變換。此外,稱作 “OverlayBackground (覆蓋背景)”的靜態(tài)圖像508被定義并被用于實現(xiàn)與該特定故事板相關(guān)聯(lián)的動畫。
      因此,由該特定故事板定義的動畫可以由調(diào)用應(yīng)用用來依據(jù)用戶與應(yīng)用的用戶界面的交互來實現(xiàn)與該應(yīng)用遇到的用戶界面情境相關(guān)聯(lián)的特定動畫。
      作為示例,考慮圖6和7,它們圖示了示例XML定義的故事板的各個方面。特別地, 圖6圖示了在600處的XML定義的故事板,并且在正下方的用戶界面體驗,其對應(yīng)于由故事板600定義的動畫。相應(yīng)地,圖7圖示了如在XMl定義的故事板600中闡述的各種變換原語和它們的相關(guān)聯(lián)的時序關(guān)系的視覺表不。
      首先參照XML定義的故事板600,名為“Expansion (膨脹)”的動畫被定義。動畫 “Expansion”描述了各種元件如何膨脹以容納可以被用戶在其上點擊的元件,以及新元件如何可以插入在各種元件之間。在該示例中,存在三個目標(biāo)類型-第一個命名為“clicked (被點擊的)”、第二個命名為“affected (受影響的)”,以及第三個命名為“revealed (顯露的)”。
      “clicked”目標(biāo)對應(yīng)于用戶在其上點擊的元件?!癮ffected”目標(biāo)對應(yīng)于響應(yīng)于正被點擊的元件而移動的一個或多個元件?!皉evealed”目標(biāo)對應(yīng)于將會在定義在被點擊的元件和受影響的元件之間的空間內(nèi)出現(xiàn)的元件。
      參照XML定義的故事板600,每個被稱為“allowcollection (允許集合)”的目標(biāo)的屬性定義了多個元件是否可以包括在特定目標(biāo)內(nèi)。因此,例如,目標(biāo)類型“clicked”和 “affected”不允許多個元件。然而,目標(biāo)類型“affected”不允許特定目標(biāo)內(nèi)的多個元件。
      目標(biāo)類型“clicked”包括具有規(guī)定的持續(xù)時間、值和計時功能的兩個縮放變換。目標(biāo)類型“affected”具有平移變換和交錯變換,其具有規(guī)定的持續(xù)時間并且對于該變換而言具有計時功能。目標(biāo)類型“revealed”具有不透明變換,其具有規(guī)定的持續(xù)時間、值和計時功能。
      現(xiàn)在參照XML定義的故事板正下方的用戶界面體驗,分別在602、616、618、620和 624處示出多個不同的用戶界面狀態(tài)。
      用戶界面狀態(tài)602構(gòu)成在任意用戶交互之前的用戶界面的狀態(tài)。在該狀態(tài)中,多個元件出現(xiàn)在用戶界面內(nèi)。在604、606、608、610、612和614處示出了這些元件。
      在用戶界面狀態(tài)616中,假定用戶已在元件608上點擊,從而使其成為“clicked” 目標(biāo)。作為被點擊的目標(biāo),在XML中定乂的縮放變換被應(yīng)用于該兀件。在圖7中,一般地在700處示出故事板的時序關(guān)系的視覺表示。這里,應(yīng)用 于圖6中的元件608的變換被示出為前兩個條目。通過在元件608上點擊,用戶的動作已將元件610、612和614定義成為 “affected” 兀件。
      因此,在用戶界面狀態(tài)618中,這些元件根據(jù)如XML中定義的平移變換及其相關(guān)聯(lián)的參數(shù)而被向右平移。這對應(yīng)于圖7中的時序關(guān)系的視覺表示中的第三條目。
      參照用戶界面狀態(tài)620,根據(jù)在XML中定義的半透明變換,新元件622是 “revealed”。該元件漸顯,直到它完全漸顯。這在用戶界面狀態(tài)624中示出,在用戶界面狀態(tài)624中完全漸顯的元件被顯現(xiàn)為元件626。
      已經(jīng)考慮了根據(jù)一個或多個實施例的示例故事板,現(xiàn)在考慮根據(jù)一個或多個實施例的示例方法的討論。
      示例方法圖8是描述根據(jù)一個或多個實施例的方法中的步驟的流程圖。該方法可以結(jié)合任意適當(dāng)?shù)挠布?、軟件、固件或其組合來執(zhí)行。在至少一些實施例中,該方法可以由體現(xiàn)在某類型的計算機(jī)可讀存儲介質(zhì)上的軟件來執(zhí)行。在該特定流程圖中,存在兩列,一列指明為“應(yīng)用”,而另一列指明為“動畫庫”。每列表示執(zhí)行特定動作或操作的實體。
      步驟800接收與用戶界面相關(guān)聯(lián)的用戶交互??梢越邮杖我膺m當(dāng)類型的用戶交互。例如,用戶交互可以通過落在特定情境內(nèi)的手勢的形式來完成,比如輕打或猛擊。例如, 用戶可以在片塊或其他用戶界面元件上下壓。步驟802響應(yīng)于接收用戶交互來確定一個或多個受影響的目標(biāo)。步驟804調(diào)用動畫庫并且請求與特定情境相關(guān)聯(lián)的變換信息。該步驟可以以任何適當(dāng)方式實現(xiàn)。例如,在至少一些實施例中,該應(yīng)用對于特定情境而言可以包括故事板ID和一個或多個目標(biāo)名稱。在至少一些實施例中,該步驟可以詢問多少變換可用于故事板ID和一個或多個特定的目標(biāo)名稱。
      步驟806接收請求變換信息的調(diào)用并且相應(yīng)地處理該信息。處理可以以任何適當(dāng)方式發(fā)生。例如,該調(diào)用可以由情境倉庫來接收,比如圖3中的情境倉庫306。情境倉庫306 可以調(diào)用語言分析器304,使得該語言分析器可以從動畫定義302的集合獲得變換信息??商娲?,情境倉庫306可以直接從動畫定義302的集合獲得變換信息。一旦獲得了變換信息,步驟808將變換信息返回到調(diào)用應(yīng)用。
      步驟810接收變換信息,并且步驟812調(diào)用動畫庫并請求用于該情境的動畫定義。 應(yīng)當(dāng)領(lǐng)會和理解,取代單獨調(diào)用,可以取而代之地進(jìn)行一個調(diào)用。在至少一些實施例中,該調(diào)用請求用于與當(dāng)前情境相關(guān)聯(lián)的特定動畫的XML定義。
      步驟814接收請求動畫定義的調(diào)用并且相應(yīng)地處理該調(diào)用。處理可以以任何適當(dāng)方式發(fā)生。例如,該調(diào)用可以由情境倉庫接收,比如圖3中的情境倉庫306。情境倉庫306 可以調(diào)用語言分析器304,使得該語言分析器可以從動畫定義302的集合獲得動畫定義。可替代地,情境倉庫306可以直接從動畫定義302的集合獲得動畫定義。一旦獲得了動畫定義,步驟816將該動畫定義返回到調(diào)用應(yīng)用。
      步驟818接收動畫定義,并且步驟820建立相關(guān)聯(lián)的故事板并且實現(xiàn)如在該動畫定乂中定乂的動畫。
      已經(jīng)描述了根據(jù)一個或多個實施例的示例方法,現(xiàn)在考慮可以用于實現(xiàn)上述實施例的示例設(shè)備的討論。
      示例設(shè)各圖9圖示了可以實現(xiàn)為如參照圖1和2所描述的任何類型的便攜式和/或 計算機(jī)設(shè)備的示例設(shè)備900的各種組件,以實現(xiàn)本文所描述的動畫庫的實施例。設(shè)備900包括實現(xiàn)設(shè)備數(shù)據(jù)904 (例如,已接收的數(shù)據(jù)、正在接收的數(shù)據(jù)、調(diào)度用于廣播的數(shù)據(jù)、數(shù)據(jù)的數(shù)據(jù)分組等)的有線和/或無線通信的通信設(shè)備902。設(shè)備數(shù)據(jù)904或其他設(shè)備內(nèi)容可以包括設(shè)備的配置設(shè)置、存儲在該設(shè)備上的媒體內(nèi)容和/或與設(shè)備的用戶相關(guān)聯(lián)的信息。存儲在設(shè)備 900上的媒體內(nèi)容可以包括任何類型的音頻、視頻和/或圖像數(shù)據(jù)。設(shè)備900包括一個或多個數(shù)據(jù)輸入906,任何類型的數(shù)據(jù)、媒體內(nèi)容和/或輸入可以經(jīng)由所述數(shù)據(jù)輸入而被接收, 比如用戶可選擇的輸入、消息、音樂、電視媒體內(nèi)容、記錄的視頻內(nèi)容、以及從任何內(nèi)容和/ 或數(shù)據(jù)源接收的任何其他類型的音頻、視頻和/或圖像數(shù)據(jù)。
      設(shè)備900還包括通信接口 908,其可以實現(xiàn)為串行和/或并行接口、無線接口、任何類型的網(wǎng)絡(luò)接口、調(diào)制解調(diào)器的任意一個或多個并且實現(xiàn)為任何其他類型的通信接口。通信接口 908在設(shè)備900與通信網(wǎng)絡(luò)之間提供連接和/或通信鏈路,其他電子設(shè)備、計算設(shè)備和通信設(shè)備通過該連接和/或通信鏈路與設(shè)備900通信數(shù)據(jù)。
      設(shè)備900包括一個或多個處理器910 (例如微處理器、控制器等中的任意一個),其處理各種計算機(jī)可執(zhí)行或可讀指令以控制設(shè)備900的操作并且實現(xiàn)上述實施例??商娲鼗虼送?,設(shè)備900可以利用硬件、固件或結(jié)合一般地在912處標(biāo)識的處理和控制電路而實現(xiàn)的固定邏輯電路中的任何一個或其組合來實現(xiàn)。盡管未示出,但是設(shè)備900可以包括系統(tǒng)總線或數(shù)據(jù)傳送系統(tǒng),其耦合設(shè)備內(nèi)的各種組件。系統(tǒng)總線可以包括不同的總線結(jié)構(gòu)的任何一個或組合,比如存儲器總線或存儲器控制器、外圍總線、通用串行總線和/或利用多種總線架構(gòu)中任何一種的處理器或局部總線。
      設(shè)備900還包括計算機(jī)可讀介質(zhì)914,比如一個或多個存儲器組件,其示例包括隨機(jī)存取存儲器(RAM)、非易失性存儲器(例如,只讀存儲器(ROM)、閃存、EPROM、EEPROM等中的任意一個或多個)以及盤存儲設(shè)備。盤存儲設(shè)備可以被實現(xiàn)為任何類型的磁或光存儲設(shè)備,比如硬盤驅(qū)動器、可記錄和/或可重寫緊湊盤(⑶)、任何類型的數(shù)字通用盤(DVD)等等。 設(shè)備900還可以包括大容量存儲介質(zhì)設(shè)備916。
      計算機(jī)可讀介質(zhì)914提供數(shù)據(jù)存儲機(jī)構(gòu)以存儲設(shè)備數(shù)據(jù)904,以及各種設(shè)備應(yīng)用 918和與設(shè)備900的操作方面相關(guān)的任何其他類型的信息和/或數(shù)據(jù)。例如,操作系統(tǒng)920 可以被利用計算機(jī)可讀介質(zhì)914而被保持為計算機(jī)應(yīng)用并且在處理器910上執(zhí)行。設(shè)備應(yīng)用918可以包括設(shè)備管理器(例如,控制應(yīng)用、軟件應(yīng)用、信號處理和控制模塊、源自特定設(shè)備的代碼、用于特定設(shè)備的硬件抽象層等),以及其他應(yīng)用,所述其他應(yīng)用可以包括web瀏覽器、圖形處理應(yīng)用、比如即時消息傳遞應(yīng)用之類的通信應(yīng)用、字處理應(yīng)用和多種其他不同的應(yīng)用。設(shè)備應(yīng)用918還包括任何用于實現(xiàn)本文所述的技術(shù)的實施例的系統(tǒng)組件或模塊。在該示例中,設(shè)備應(yīng)用918包括接口應(yīng)用922和手勢捕獲驅(qū)動器924,其被示出為軟件模塊和 /或計算機(jī)應(yīng)用。手勢捕獲驅(qū)動器924表示為接口提供被配置成捕獲手勢的設(shè)備的軟件,所述設(shè)備比如觸摸屏、跟蹤板、相機(jī)等??商娲鼗虼送猓涌趹?yīng)用922和手勢捕獲驅(qū)動器924 可以被實現(xiàn)為硬件、軟件、固件或其任意組合。此外,計算機(jī)可讀介質(zhì)914可以包括如上文所述地運行的動畫庫925。
      設(shè)備900還包括向音頻系統(tǒng)928提供音頻數(shù)據(jù)并且/或者向顯示系統(tǒng)930提供視頻數(shù)據(jù)的音頻和/或視頻輸入-輸出系統(tǒng)926。音頻系統(tǒng)928和/或顯示系統(tǒng)930可以包括處理、顯示和/或以另外方式再現(xiàn)音頻、視頻和圖像數(shù)據(jù)的任何設(shè)備。視頻信號和音頻信號可以從設(shè)備900經(jīng)由RF (射頻)鏈路、S-視頻鏈路、復(fù)合視頻鏈路、分量視頻鏈路、DVI (數(shù)字視頻接口)、模擬音頻連接或其他類似的通信鏈路而被傳送到音頻設(shè)備和/或顯示設(shè)備。在實施例中,首頻系統(tǒng)928和/或顯不系統(tǒng)930被實現(xiàn)為設(shè)備900的外部組件??商娲?,音頻系統(tǒng)928和/或顯示系統(tǒng)930被實現(xiàn)為示例設(shè)備900的集成組件。
      結(jié)論各種實施例基于各種常見用戶界面情境提供了動畫描述的庫。應(yīng)用開發(fā)者可以基于用戶與用戶界面的交互針對動畫查詢動畫庫。該庫定義了用于創(chuàng)建特定動畫的變換原語的用法、變換原語的故事板制作以及相關(guān)聯(lián)的計時功能。這些定義可以被提供給調(diào)用應(yīng)用,使得該應(yīng)用可以實現(xiàn)利用故事板制作的變換原語的動畫。
      利用動畫庫,應(yīng)用開發(fā)者可以將在他們的特定用戶界面中的情境映射到匹配動畫,而無需理解特定動畫后面的細(xì)節(jié)。該抽象不僅簡化了應(yīng)用開發(fā)者的任務(wù),而且它允許動畫設(shè)計在特定系統(tǒng)上一致地應(yīng)用。
      盡管已經(jīng)以特定于結(jié)構(gòu)特征和/或方法動作的語言描述了實施例,但是應(yīng)當(dāng)理解,在所附權(quán)利要求中定義的實施例不必限于所描述的特定特征或動作。相反,這些特定特征和動作是作為實現(xiàn)要求保護(hù)的實施例的示例形式而被公開的。
      權(quán)利要求
      1.一種方法,包括 接收(800)與應(yīng)用用戶界面相關(guān)聯(lián)的用戶交互; 響應(yīng)于接收用戶交互,確定(802)—個或多個受影響的目標(biāo); 調(diào)用(812)動畫庫以請求用于與用戶交互相關(guān)聯(lián)且與所述一個或多個受影響的目標(biāo)相關(guān)聯(lián)的情境的動畫定義; 從動畫庫接收(818)用于所述情境的動畫定義;以及 使用動畫定義建立(820)被配置成實現(xiàn)與所述情境相關(guān)聯(lián)的動畫的故事板。
      2.權(quán)利要求I的方法,其中所述接收通過經(jīng)手勢的形式接收用戶交互來執(zhí)行。
      3.權(quán)利要求I的方法,進(jìn)一步包括在調(diào)用動畫庫以請求動畫定義之前,調(diào)用動畫庫以請求與特定情境相關(guān)聯(lián)的變換信息。
      4.權(quán)利要求I的方法,進(jìn)一步包括在調(diào)用動畫庫以請求動畫定義之前,調(diào)用動畫庫以請求與特定情境相關(guān)聯(lián)且包括故事板ID和一個或多個目標(biāo)名稱的變換信息。
      5.權(quán)利要求I的方法,其中調(diào)用動畫庫以請求動畫定義包括調(diào)用動畫庫以請求XML動畫定義。
      6.權(quán)利要求I的方法,進(jìn)一步包括使用故事板實現(xiàn)動畫。
      7.一個或多個計算機(jī)可讀存儲介質(zhì),包括存儲在其上的指令,這些指令被計算機(jī)執(zhí)行時完成如權(quán)利要求1-6中任一項所述的方法。
      8.一個或多個體現(xiàn)可調(diào)用動畫庫(300)的計算機(jī)可讀存儲介質(zhì)(914),該可調(diào)用動畫庫包括動畫定義(302)的集合,各個動畫定義(302)與各個的相應(yīng)用戶界面情境相關(guān)聯(lián),各個動畫定義(302)以標(biāo)準(zhǔn)化語言表達(dá); 所述動畫定義中的至少一些包括至少一個計時功能(404)和故事板內(nèi)容(406),所述故事板內(nèi)容包括一個或多個目標(biāo)名稱(408)和一個或多個變換(410); 所述至少一個計時功能(404)和所述故事板內(nèi)容(406)被配置成由調(diào)用應(yīng)用用來建立故事板并實現(xiàn)與用戶界面情境相關(guān)聯(lián)的相關(guān)聯(lián)動畫。
      9.權(quán)利要求8的所述一個或多個計算機(jī)可讀存儲介質(zhì),其中所述標(biāo)準(zhǔn)化語言包括XML。
      10.權(quán)利要求8的所述一個或多個計算機(jī)可讀存儲介質(zhì),其中至少一些動畫定義可以用于在多個元件上操作。
      11.權(quán)利要求8的所述一個或多個計算機(jī)可讀存儲介質(zhì),其中至少一些動畫定義可以用于在元件陣列上操作。
      全文摘要
      各種實施例基于各種常見用戶界面情境提供了動畫描述的庫。應(yīng)用開發(fā)者可以基于用戶與用戶界面的交互而針對動畫查詢動畫庫。該庫定義了用于創(chuàng)建特定動畫的變換原語的用法、變換原語的故事板制作以及相關(guān)聯(lián)的計時功能。這些定義可以被提供給調(diào)用應(yīng)用,使得該應(yīng)用可以實現(xiàn)利用故事板制作的變換原語的動畫。
      文檔編號G06F3/0488GK102981818SQ201210331630
      公開日2013年3月20日 申請日期2012年9月10日 優(yōu)先權(quán)日2011年9月10日
      發(fā)明者B.P.劉, 鄒松, 張煒, J.D.博蒙, B.D.貝克 申請人:微軟公司
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1