專利名稱:動態(tài)圖形界面陰影的制作方法
技術(shù)領(lǐng)域:
本公開內(nèi)容一般地涉及圖形用戶界面和渲染三維效果。
背景技術(shù):
圖形用戶界面經(jīng)常采用陰影技術(shù)來在二維表面上提供深度錯覺。通常,圖形用戶界面使用具有預(yù)定特性的陰影,預(yù)定特性諸如預(yù)定尺寸或者距投射陰影的對象或陰影與之相關(guān)聯(lián)的對象的預(yù)定距離。盡管這些技術(shù)可提供深度錯覺,但這些靜態(tài)陰影并不能隨圖形用戶界面對象的輪廓而調(diào)整,從而不能提供自然或真實的外觀與感覺。
發(fā)明內(nèi)容
描述了動態(tài)圖形界面陰影。在一些實現(xiàn)方式中,圖形用戶界面顯示對象可被配置為具有標高(elevation)偏移信息,來給予顯示對象可具有不同高度(height)的像素的三維表面。在一些實現(xiàn)方式中,在被配置為具有像素標高偏移信息的顯示對象上渲染的陰影可被調(diào)整來反映對象的三維表面,從而更近似于真實生活中的陰影。在一些實現(xiàn)方式中,陰影能根據(jù)其被投射于其上的顯示對象的標高被實時地動態(tài)渲染和調(diào)整。特定的實現(xiàn)方式提供至少以下優(yōu)點:陰影能看起來更真實并更好地傳達用戶界面元素的相對位置。針對每個像素的標高圖允許復(fù)雜紋理和表面的建模。動態(tài)陰影可被實現(xiàn)為允許硬件加速的圖形處理單元(GPU)濾波器。在其它方面平坦的圖形用戶界面元素可被配置為具有高度變化的三維表面。在三維表面上渲染的陰影可根據(jù)三維表面被扭曲。通過下文的附圖和描述來闡述一個或多個實現(xiàn)方式的細節(jié)。其他特征、方面和潛在優(yōu)點將通過說明書、附圖和權(quán)利要求變得顯然。
圖1示出了具有動態(tài)陰影的示例圖形用戶界面。圖2示出了與圖1的圖形用戶界面中的對象相關(guān)聯(lián)的不同標高的示例。圖3示出了其中圖形元素被配置為具有像素標高偏移信息的示例圖形用戶界面。圖4示出了配置有像素標高偏移信息的示例顯示對象。圖5示出了提供像素標高圖的示例圖形用戶界面編輯器。圖6示出了包括標高偏移信息的像素顏色數(shù)據(jù)的示例。圖7是生成顯示對象的動態(tài)陰影的示例過程的流程圖。圖8是配置像素深度偏移的示例過程的流程圖。圖9是實現(xiàn)了圖1 8的特征和過程的示例性系統(tǒng)架構(gòu)的方框圖。圖10是根據(jù)本公開內(nèi)容的實施例的設(shè)備1000的方框圖。圖11是根據(jù)本公開內(nèi)容的實施例的設(shè)備1100的方框圖。各個附圖中的類似參考標記指示類似的元件。
具體實施例方式現(xiàn)代計算機顯示器和圖形界面經(jīng)常嘗試模擬真實生活中的三維對象和空間。通常,三維模擬通過陰影的使用來在二維圖像上給予深度的外觀。另外,二維圖形界面上的對象布置可被用來暗示對象的深度和/或分層。例如,桌面比喻被通常用于計算機顯示器上,以布置并顯示窗口、文件、圖像、圖標和其他對象。桌面上的對象可以重疊(例如,重疊窗口)或遮擋其他對象(例如,位于桌面圖標上面的窗口可以隱藏或遮擋這些圖標)。對象的重疊和遮擋能暗示對象的分層或與每個對象相關(guān)聯(lián)的深度或標高。例如,分層可暗示用戶桌面上的對象被堆疊在彼此之上,使得每個對象位于離桌面不同的標高處。對象相對于桌面(或屏幕、或用戶)的標高(例如,高度或深度)能暗示第三個維度。因此,可以說圖形用戶界面具有沿X軸的水平維度、沿Y軸的豎直維度和沿Z軸的標高維度(例如,Z軸與桌面和顯示屏幕相垂直),并且顯示對象可根據(jù)X、Y和Z坐標被定位在顯示區(qū)域內(nèi)。在一些實現(xiàn)方式中,對象的標高(例如,窗口、圖標、光標和用戶界面元素等的標高)可被用來調(diào)整對象陰影以提供更真實的和動態(tài)調(diào)整的陰影。在一些實現(xiàn)方式中,圖形用戶界面的像素(例如,顯示對象、圖形元素的像素等)可被配置為具有標高偏移,以生成具有不同標高的有輪廓的表面的用戶界面元素。例如,像素標高偏移可以是被添加到顯示對象的標高(或從其減去)來為顯示對象提供有輪廓的表面的標高值。在一些實現(xiàn)方式中,像素標高偏移可被用來生成適應(yīng)圖形用戶界面對象和元素的有輪廓的表面的陰影。圖1示出了具有動態(tài)陰影的示例圖形用戶界面(GUI) 100。⑶1100是可被呈現(xiàn)在計算設(shè)備(例如,臺式電腦、平板電腦、智能電話和膝上式電腦等等)的顯示器上的用戶界面。⑶1100可包括桌面圖形界面(“桌面”)102。例如,桌面圖形界面102能呈現(xiàn)可被用來為用戶提供對計算設(shè)備上的應(yīng)用程序、文檔和文件的訪問的桌面比喻。GUIlOO可包括窗口104和窗口 106。例如,窗口 104和窗口 106可以是用于呈現(xiàn)計算設(shè)備的各個應(yīng)用程序的用戶界面的應(yīng)用程序窗口。在一些實現(xiàn)方式中,窗口 104和窗口 106可被布置和/或分層在不同標聞處。例如,桌面102可具有為零的標聞,窗口 104可具有為十(10)的標聞,而窗口106可具有為二十(20)的標高。在一些實現(xiàn)方式中,當(dāng)窗口被用戶移動或重排時,窗口的標高可被動態(tài)地確定。例如,用戶可選擇窗口 104,使得窗口 104成為最頂上的窗口。當(dāng)窗口104被選擇時,其他窗口(例如,窗口 106)可被布置在窗口 104下面(例如,位于較低的標高處)。在一些實現(xiàn)方式中,對象的標高可基于由計算設(shè)備指派給對象的順序而被確定。例如,計算設(shè)備可保持顯示在GUIlOO上的對象的列表或陣列。每個窗口、圖標、光標或其他對象能在陣列中占據(jù)位置。圖形對象的顯示位置(例如,標高、層級、標高等)可對應(yīng)于對象在陣列中的位置(例如,索引(index))。例如,占據(jù)陣列中的第一位置的對象可被顯示在頂部(例如,具有最高的標高),占據(jù)陣列中的第二位置的對象可被顯示在第一對象下面,等等。當(dāng)來自陣列中間的對象被選擇時(例如,用戶選擇顯示窗口并且其成為當(dāng)前工作窗口),被選擇的對象可被移動到陣列中的第一位置并且陣列中的其他對象可改變位置。GUIlOO可被更新以反映顯示對象在陣列中的經(jīng)調(diào)整位置(例如,被選擇的窗口將增加標高以成為GUIlOO中的最頂上的窗口)。因此,圖形對象可被顯示在反映對象在陣列中的相對位置的⑶1100的標高處。⑶1100可包括光標108。例如,用戶可采用光標108來與⑶1100、桌面102、窗口104和106、圖標110 122和/或顯示在⑶1100上的其他對象交互。例如,用戶可操縱光標108來選擇窗口 104,并使得窗口 104成為最頂上的窗口。光標108可與標高相關(guān)聯(lián)。例如,光標108可具有GUIlOO上顯不的任意對象的最聞標聞,使得光標108總是在其他圖形對象的頂上。因此,例如,如果桌面102具有為零的標聞,窗口 104具有為十(10)的標聞,而窗口 106具有為二十(20)的標高,則光標108可具有為三十(30)的標高。在一些實現(xiàn)方式中,圖形用戶界面對象(例如,窗口 104和106、光標108和圖標110 122)可基于對象的相應(yīng)位置(包括標高)和模擬的或檢測的光源的位置(例如,角度)來投射陰影。例如,⑶Iioo上的每個對象可具有水平位置(例如,沿X軸140)、豎直位置(例如,沿Y軸142)、和標高(例如,沿Z軸144)。為對象生成的陰影的位置可根據(jù)光源的位置以及投射陰影的對象(例如,遮擋對象)和陰影落到其上的對象(例如,被遮擋對象)之間的標高差而調(diào)整。另外,對象的陰影的尺寸、模糊半徑和不透明度可基于陰影從投射該陰影的對象下降至多遠而被調(diào)整。在一些實現(xiàn)方式中,光標108可具有相應(yīng)的投射陰影130或132。例如,當(dāng)光標在⑶1100中移動時,陰影(例如,陰影130或132)可追隨光標,以使得光標看起來像在桌面之上浮動。在一些實現(xiàn)方式中,陰影130、132的尺寸和位置可基于光標的標高和陰影投射于其上的對象的標高而被調(diào)整。例如,如果光標108在窗口 106上面,則陰影130的尺寸和位置可基于光標108的標高和窗口 106的標高之間的差而被調(diào)整。在這個示例中,光標108和窗口 106的標高差小,從而陰影130被定位成靠近光標108,并且陰影將與該光標具有大致相同的尺寸。作為對照的是,窗口 104的標高小于窗口 106的標高,從而窗口 104和光標108之間較大的標高差導(dǎo)致陰影132被定位成更遠離光標108。另外,陰影132的模糊半徑、不透明度和尺寸可被調(diào)整來考慮光標108和窗口 104之間的標高差,并提供更真實的陰影外觀。在一些實現(xiàn)方式中,觸摸屏界面被用來提供輸入。例如,用戶可使用手指觸摸觸摸屏界面并且在觸摸屏界面上的接觸點可是光標位置。在一些實現(xiàn)方式中,與觸摸位置相關(guān)聯(lián)的顯示對象可被顯示。例如,放大鏡或其他顯示對象可被顯示在鄰近觸摸位置的地方。在一些實現(xiàn)方式中,與觸摸位置相關(guān)聯(lián)的顯示對像可投射動態(tài)陰影。例如,如果放大鏡被顯示,則與放大鏡相關(guān)聯(lián)的陰影可被生成。在一些實現(xiàn)方式中,可能不針對觸摸輸入位置顯示顯示對象。在一些實現(xiàn)方式中,可為觸摸屏界面上被觸摸的區(qū)域生成動態(tài)陰影。例如,當(dāng)用戶用手指觸摸觸摸屏界面時,可基于手指所觸摸的觸摸屏界面區(qū)域生成并顯示動態(tài)陰影。例如,如果被手指觸摸的觸摸屏界面區(qū)域是10個像素寬及20像素高的橢圓區(qū)域,則可基于橢圓的尺寸和位置而生成動態(tài)陰影。例如,橢圓觸摸區(qū)域可投射很像顯示對象(例如,光標108)的動態(tài)陰影。類似地,窗口 104和106可以投下陰影134和136。例如,陰影134可基于窗口 104和桌面102之間的標高差而生成。這種情況下,由于桌面具有為零的標高,窗口 104的標高可被用來生成陰影134。可為窗口 106生成陰影136。然而,陰影136被投射在具有兩個不同標高的表面(例如,窗口 104和桌面102)上。例如,窗口 104和106之間的標高差小于窗口 106和桌面102之間的標高差。因此,陰影136的被投射在窗口 104上的部分與陰影136的被投射在桌面102上的部分將具有不同的維度。例如,陰影136的生成于桌面102上的部分可看起來比陰影136的生成于較近的窗口 104表面上的部分離窗口 106更遠。另夕卜,陰影的模糊半徑和不透明度可基于投射陰影的窗口和陰影生成于其上的對象之間的標高差而被調(diào)整。其他圖形對象,例如圖標110 122,也能投射可基于圖標的標高而被調(diào)整的陰影。在一些實現(xiàn)方式中,顯示對象能模糊陰影。例如,如果光標108的陰影應(yīng)當(dāng)在窗口106之下被生成(例如,基于光標108的位置、窗口 106的標高和光源的角度),則不會為光標108生成陰影,這是因為窗口 106將遮擋或隱藏該陰影。圖2示出了與圖形用戶界面GUIlOO中的對象相關(guān)聯(lián)的不同標高的示例。例如,圖2可表示包括光標108、窗口 104和106、圖標110 122以及桌面102的⑶1100的側(cè)視圖。在圖2中,可清楚地看出各個圖形對象的標高(例如,沿Z軸144)。例如,桌面102可具有為零的標高,并且其他所有圖形對象(例如,圖標110 122、窗口 104、窗口 106、光標108等等)可具有相對于桌面的標高?;蛘?,標高可對應(yīng)于表示每個對象距用戶或顯示屏200的距離的深度值(例如,其中顯示屏200具有為零的深度)。圖形對象可被布置在顯示屏200和桌面102之間的不同標高(或深度)處。例如,光標108可具有標高‘ΖΓ 202,其將光標108放置在界面100中的所有其他對象的之上,從而阻止光標108被顯示在界面100中的其他圖形對象模糊。窗口 104可具有標高‘Z2’204。窗口 106可具有窗口 104和光標108之間的標高‘Z3’206。圖標110 122也可具有相關(guān)聯(lián)的標高(或深度)。在一些實現(xiàn)方式中,被指派給對象的標高可相對于顯示在用戶界面100上的其他對象。例如,光標108可被配置為顯示在預(yù)定標高 ’處,而其他圖形對象的標高可相對于E而確定。在一些實現(xiàn)方式中,可從標高E中添加或者減去標高差以提供顯示對象之間的間距。標高差可被配置為5個單位(例如,像素、毫米、英寸等)。窗口 106的標高,例如,可被確定為光標108之下5個單位。窗口 104的標高,例如,可被確定為光標108之下10個單元以及窗口 106之下5個單元。因此,其中圖形對象被保持在其中圖形對象的順序也被保持的類陣列的數(shù)據(jù)結(jié)構(gòu)中,每個對象可根據(jù)標高差和對象在陣列中的位置而被顯示。例如,陣列中的每個顯示對象可被定位在陣列中先前顯示對象之下5個單位處。在一些實現(xiàn)方式中,標高(或深度)可相對于桌面102 (例如,具有為零的標高)或相對于屏幕(例如,具有為零的深度)確定。在一些實現(xiàn)方式中,標高差可被動態(tài)地確定。例如,如果桌面102具有為零(O)的標高,而屏幕200具有為五十(50)的標高,則通過將屏幕標高50除以顯示對象的數(shù)量而確定的標高差,顯示對象可在桌面102和屏幕200之間均勻間隔開來??墒褂糜糜趧討B(tài)確定顯示對象的標高差的其他方法。在一些實現(xiàn)方式中,圖形對象的標高可用來生成對象陰影。在一些實現(xiàn)方式中,圖形對象的標高可用來確定與顯示對象相關(guān)聯(lián)的陰影的位置、尺寸、不透明度和/或模糊半徑。例如,為了在窗口 104上面生成光標108的陰影,必須確定標高差‘ΑΖΓ208。為了這樣做,可從標高‘ΖΓ 202中減去標高‘Z2’ 204。一旦‘AZ1’ 208被計算出來,陰影從光標108的水平偏移(例如,沿X軸140)可基于光源與光標108相交的角度Θ的正切值(沿X軸140)和所計算的值‘ΑΖΓ 208(例如,ΛΧ1 = AZl/tan(9))而確定。豎直陰影偏移(例如,沿Y軸142)可以相似的方式計算。在一些實現(xiàn)方式中,陰影偏移在每個像素的基礎(chǔ)上被計算。例如,光標108的每個像素可投射對應(yīng)的陰影像素。陰影像素的位置可基于計算出的陰影偏移而確定。例如,如果光標108的像素在水平坐標‘X’處,并且像素偏移是五(5),則對應(yīng)的陰影像素的位置可以是‘X+5’。因此,光標108的投射陰影(和其他顯示對象、窗口、圖標等)可基于光標108的尺寸、形狀和位置而實時地生成。在一些實現(xiàn)方式中,可以模擬光源。例如,光源的位置和光與屏幕上的對象相交的角度可以是被配置的參數(shù)。在一些實現(xiàn)方式中,光源可被檢測。例如,耦合到照相機的計算設(shè)備可使用照相機來檢測計算設(shè)備外部的光源并計算或得出外部光源相對于計算設(shè)備或照相機的位置。因此,當(dāng)計算設(shè)備和/或照相機被相對于外部光源移動時,由計算設(shè)備為顯示對象生成的動態(tài)陰影可被調(diào)整,以反映計算設(shè)備和外部光源之間相對位置的變化。在一些實現(xiàn)方式中,陰影的尺寸可隨標高差(例如,投射陰影的對象和陰影被投射于其上的對象之間的標高差)的增加而增加。例如,在標高上的每五(5)個像素,陰影的尺寸可通過指定的百分比或其他機制被增加一(I)個像素。在一些實現(xiàn)方式中,陰影的不透明度可基于標高差被調(diào)整。例如,對于在標高上的每三(3)個像素,陰影的不透明度可減少五個百分點(5%)。在一些實現(xiàn)方式中,陰影的模糊半徑可基于標高差被調(diào)整。例如,對于標高上的每十(10)個像素,模糊半徑可增加二十個百分點(20%)。在一些實現(xiàn)方式中,對尺寸、不透明度和/或模糊半徑的調(diào)整可在陰影的位置被確定之后應(yīng)用。其他機制可被實施用來基于對象標高調(diào)整陰影的位置、尺寸、不透明度和/或模糊半徑。在一些實現(xiàn)方式中,一旦顯示對象(例如,窗口、圖標、桌面等)的標高被確定,則所確定的標高被指派給顯示對象的每個像素。例如,如果窗口 106具有為四十(40)的標高,則窗口 106的每個像素可被指派為四十的標高。如果窗口 104具有為三十五(35)的標高,則窗口 104的每個像素可被指派為三十五的標高。因此,當(dāng)渲染交疊的窗口 104和106時,如果來自窗口 104的像素和來自窗口 106的像素占據(jù)相同的水平和豎直位置(例如,X、Y位置),則可顯示具有最大標高的像素。這種情況下,因為窗口 106具有為40的標高而窗口 104具有為35的標高,與窗口 106相關(guān)聯(lián)的像素將被顯示。在一些實現(xiàn)方式中,為對象的每個像素指派所計算的對象標高將導(dǎo)致對象具有平坦表面(例如,沒有輪廓或紋理)。類似地,投射在這些平坦對象上的陰影也將看起來是平坦的(例如,沒有輪廓、紋理等)。圖3示出了示例圖形用戶界面300,其中圖形元素被配置為具有像素標高偏移信息。在一些實現(xiàn)方式中,圖形顯示對象(例如,窗口、圖標、桌面、圖形用戶界面、圖形元素等)可被配置為具有將顯示對象的每個像素與標高偏移值相關(guān)聯(lián)的像素標高偏移信息。例如,如上文關(guān)于圖2所描述的,像素標高偏移信息可以是能添加到對象的所確定的標高或者從其減去的標高值。因此,一旦針對對象已確定了標高,則所確定的標高可基于該對象的預(yù)配置的像素標高偏移信息而調(diào)整。在一些實現(xiàn)方式中,像素標高偏移信息可被配置來為圖形顯示對象提供輪廓和/或紋理。在一些實現(xiàn)方式中,⑶1300可包括具有像素標高偏移信息的窗口 302和窗口 304。例如,窗口 302可表示電子書應(yīng)用程序的圖形用戶界面。電子書應(yīng)用程序的開發(fā)者可以將窗口 302的像素配置為具有對應(yīng)于打開的書本的輪廓的標高偏移信息,如參照圖4將更詳細地描述的。在一些實現(xiàn)方式中,窗口 304可被配置為具有像素偏移信息來將圖形元素與不同標高相關(guān)聯(lián)。例如,窗口 304可具有凸起按鈕306,其中按鈕306的像素被配置為具有正的標高偏移。窗口 304可具有凹進圖像308,例如,其中凹進圖像308的像素被配置為具有負的標高偏移。在一些實現(xiàn)方式中,可通過考慮像素標高偏移信息而生成投射到窗口 302和304上的陰影。因此,根據(jù)指派給窗口的像素的像素標高偏移信息,在窗口 302和304上生成的陰影可以具有輪廓的、紋理的和/或變化的呈現(xiàn)。圖4示出了配置有像素標高偏移信息的示例顯示對象302。例如,顯示對象302可被配置為具有輪廓的表面402。輪廓的表面402可通過將顯示對象302的像素配置具有標高偏移信息而生成。例如,輪廓的表面402的虛線中的每個點可表示像素和顯示對象302的該像素的對應(yīng)標高。例如,如果顯示對象302是用于電子書應(yīng)用程序的圖形用戶界面,則顯示對象302的每個像素可被配置為具有模擬物理書本的輪廓的標高偏移。例如,書頁側(cè)面(例如,在書本的模擬的裝訂處)的像素的標高偏移值可具有小的偏移404,而接近書頁中間的像素的標高偏移值可具有較大的偏移406。當(dāng)電子書界面被渲染在計算設(shè)備的屏幕上時,像素標高偏移可從為顯示對象302所確定的標高中添加(或減去)。在一些實現(xiàn)方式中,像素標高偏移信息可被用來生成投射陰影。例如,光標108投射陰影410在顯示對象302上。由于顯示對象302被配置為具有模擬打開的書本的輪廓的像素標高偏移信息,陰影410可被生成為遵循書本的輪廓。例如,陰影410可基于為顯示對象302所確定的標高和為顯示對象302的每個像素所配置的像素標高偏移信息而生成。當(dāng)光標108在書本上移動時,光標可被調(diào)整以遵循書本的輪廓,從而接近于真實生活中的陰影。在一些實現(xiàn)方式中,為顯示對象所生成的陰影可基于針對顯示對象的輸入而調(diào)整。例如,光標108的陰影可如上所述地被生成。用戶可提供輸入至(或通過)光標108。用戶可執(zhí)行選擇操作(例如,鼠標點擊)來使得光標108之下的對象被選擇或以其它方式被操作。例如,顯示對象302可呈現(xiàn)模擬打開的書本的電子書應(yīng)用程序的輪廓的圖形用戶界面。顯示對象302可被配置為允許用戶使用光標108翻轉(zhuǎn)書本的書頁。當(dāng)光標108被定位在顯示對象302上面時,用戶可提供輸入至光標108 (例如,鼠標點擊)來使得電子書的書頁翻轉(zhuǎn)。在一些實現(xiàn)方式中,與光標108相關(guān)聯(lián)的投射陰影可被調(diào)整以模擬將光標降低到顯不對象302的表面上。例如,光標108的標聞可被調(diào)整直至光標108的標聞實質(zhì)上與顯示對象302的標高相同。與光標108相關(guān)聯(lián)的投射陰影可根據(jù)光標108的標高變化而被調(diào)整。因此,光標投射陰影將被激活而移動至更接近于光標的位置,直至當(dāng)光標看起來是觸摸顯不對象302的表面時(例如,光標具有與顯不對象302表面實質(zhì)相同的標聞,如果有的話,還包括任何標高偏移),它看起來位于光標下面或消失為止。圖5示出了提供可配置像素標高圖的示例圖形用戶界面編輯器500。在一些實現(xiàn)方式中,圖形用戶界面編輯器500可允許用戶界面開發(fā)者為圖形用戶界面元素和顯示對象指定標高偏移信息。例如,開發(fā)者可設(shè)計應(yīng)用程序圖形用戶界面502。應(yīng)用程序GUI502可包括背景區(qū)域504和圖形元素506、508及510。例如,圖形元素506、508及510可以是圖像、按鈕、菜單或任何其他可被包括在圖形用戶界面中的圖形元素。GUI502可以是全彩色界面。在一些實現(xiàn)方式中,開發(fā)者可調(diào)用(invoke)圖形用戶界面502的灰度級位圖顯示?;叶燃壩粓D顯示可以是指示⑶1502的像素的標高的全彩色⑶1502的灰度級表示。例如,像素的灰度級值(例如,亮度水平)可表示像素的標高。在一些實現(xiàn)方式中,亮度水平對應(yīng)于黑色(例如,完全沒有照明)和白色(例如,完全照明)之間的范圍,并且可被表示為百分比(0-100%)、整數(shù)值(例如,如果每個像素使用8比特,則為0-255)、或者任何其他表不。在一些實現(xiàn)方式中,黑色可表不零標聞(或最大標聞),而白色可表不最大標聞(或最小標聞)。黑色和白色之間的灰度值可對應(yīng)于零標聞和最大標聞之間的標聞。在一些實現(xiàn)方式中,開發(fā)者可調(diào)整灰度級位圖顯示的像素來為圖形用戶界面502的像素指派標高偏移值。例如,開發(fā)者可改變像素的灰度級值以導(dǎo)致像素的標高的對應(yīng)變化。開發(fā)者可使用任何位圖編輯技術(shù)(例如,線條描繪、區(qū)域填充等)來改變像素的灰度級值。例如,開發(fā)者可選擇顯示元素506并提供輸入至圖形用戶界面編輯器以指示顯示元素的45%亮度的灰度級填充。圖6示出了包括標高偏移信息的像素顏色數(shù)據(jù)500的示例。在一些實現(xiàn)方式中,一旦標高偏移(例如,灰度級值)被指派給GUI502的像素,則標高偏移可被與像素顏色數(shù)據(jù)500存儲在一起。像素顏色數(shù)據(jù)可以被存儲為能被用來為像素存儲顏色數(shù)據(jù)的多個比特(例如,8比特、16比特、32比特等)。例如,當(dāng)生成全彩色⑶1502時,⑶1502的每個像素的顏色數(shù)據(jù)可被存儲為32比特字,其中24比特用于紅色502(8比特)、綠色504(8比特)、藍色506 (8比特)(RGB)顏色數(shù)據(jù)。32比特字中剩余的8比特(Z508)可被用來存儲像素的標高信息。例如,對應(yīng)于標高的像素灰度級值可被存儲在剩余的8比特中。在一些實現(xiàn)方式中,像素標高偏移信息可與像素顏色數(shù)據(jù)分離地存儲。在一些實現(xiàn)方式中,當(dāng)⑶1502在顯示屏上被渲染,像素顏色數(shù)據(jù)(R502,G504,B506)可被用來渲染⑶1502的金彩色顯示。在一些實現(xiàn)方式中,當(dāng)陰影和/或其他三維效果被渲染在顯示屏上,像素標高偏移信息(Z508)可被用來渲染陰影和三維效果。因此,圖形用戶界面的每個像素可被配置為具有標高偏移信息,從而允許圖形用戶界面被配置為具有輪廓和/或紋理的三維表面。這個像素標高數(shù)據(jù)可被用來渲染能模擬或接近真實生活中的陰影的動態(tài)陰影。
示例過程圖7是為顯示對象生成動態(tài)陰影的示例過程700的流程圖。在一些實現(xiàn)方式中,陰影可基于為顯示對象所計算的標高和顯示對象的像素的像素標高偏移信息而動態(tài)地生成。例如,像素標高偏移可被添加至顯示對象的標高以在顯示對象上提供有輪廓的、有紋理的和/或波形的表面。生成在顯示對象上的陰影可根據(jù)像素標高偏移信息被動態(tài)地調(diào)整以反映或表示顯示對象的有輪廓的、有紋理的和/或波形的表面。在步驟702,圖形用戶界面對象的標高(例如,Z軸位置、坐標、數(shù)值等)可被確定。例如,窗口、光標、圖標和/或其他用戶界面顯示對象的標高可被確定。在一些實現(xiàn)方式中,顯示對象的標高可相對于其他顯示對象而被確定。例如,如果顯示在用戶界面上的圖形對象以列表、陣列或其他集合數(shù)據(jù)類型被管理,則顯示對象可基于顯示對象在列表中的位置在標高上被間隔開來,如上關(guān)于根據(jù)圖2所描述的。在步驟704,可獲取用于圖形用戶界面對象的像素標高偏移信息。在一些實現(xiàn)方式中,圖形顯示對象可被配置為具有像素標高偏移信息。例如,用戶界面開發(fā)者可生成顯示對象(例如,窗口、應(yīng)用程序用戶界面、圖標等)并且用像素標高偏移信息配置顯示對象來給予顯示對象的表面紋理、輪廓、波形和/或其他表面特性。在一些實現(xiàn)方式中,通過用像素標高偏移信息配置顯示對象,用戶界面開發(fā)者可以采用本來平坦的顯示對象并賦予該顯示對象三維的外觀和感覺。在一些實現(xiàn)方式中,顯示對象的每個像素可被分別地配置有像素標高偏移信息。一旦顯示對象已被配置有像素標高偏移信息,像素標高偏移信息可被訪問并用來渲染顯示對象和陰影。
在步驟706,陰影可基于顯示對象的標高和像素標高偏移信息而被生成。在一些實現(xiàn)方式中,像素標高可基于與像素相關(guān)聯(lián)的對象的標高和為像素配置的標高偏移而被計算。例如,如果顯示對象的像素具有標高為五(5)的偏移并且該顯示對象具有為四十(40)的標高,則該像素的標高可被計算為四十五(45)。一旦像素標高已被計算出,則像素標高可被用來生成動態(tài)陰影。例如,合并的標高位圖(例如,用于渲染顯示的標高位圖)可基于所計算的像素標高被生成,其包括具有桌面之上的最高標高的每個顯示對象的像素。例如,多個顯示對象可重疊,并且從而重疊的對象可具有帶有相同坐標(例如,Χ、γ坐標)的像素。然而,重疊的像素的每個可具有不同的標聞(Ζ值/坐標,標聞等)。在一些實現(xiàn)方式中,只有具有最聞標聞的像素將被包括在合并的標高位圖中。在一些實現(xiàn)方式中,可通過使用在每個像素基礎(chǔ)上確定陰影量的圖形處理單元(GPU)濾波器生成陰影。例如,通過搜索合并的標高圖,濾波器能確定在一個標高處的給定像素是否被在更高標高處的像素所遮擋。如果該像素被遮擋,則GPU可基于兩個像素間的相對距離計算亮度值。亮度值然后可被用來調(diào)整陰影的不透明度和模糊半徑,使得落到標高接近的像素上的陰影更尖銳,而落到距離更遠的像素上的陰影更分散(diffuse)。在步驟708,包括顯示對象和陰影的圖形用戶界面可被顯示。例如,計算設(shè)備的圖形處理單元可渲染用戶界面,包括在顯示設(shè)備上的窗口、光標、圖標、其他顯示對象和它們的陰影。圖8是為顯示對象配置像素標高偏移的示例過程800的流程圖。在一些實現(xiàn)方式中,顯示對象的像素標高偏移信息可通過編輯與顯示對象對應(yīng)的灰度級位圖而被配置。在步驟802,圖形用戶界面編輯器可被顯示。在一些實現(xiàn)方式中,圖形用戶界面編輯器可被用戶界面開發(fā)者使用來生成圖形用戶界面元素(例如,應(yīng)用程序圖形用戶界面)。圖形用戶界面編輯器可呈現(xiàn)在構(gòu)建中的圖形用戶界面的全彩色顯示。在步驟804,像素標高偏移位圖可被顯示。在一些實現(xiàn)方式中,用戶可提供輸入(例如,向菜單項目或工具欄)至圖形用戶界面編輯器來使編輯器顯示與圖形用戶界面相關(guān)聯(lián)的標高圖。例如,圖形用戶界面的灰度級標高位像可被顯示。位圖的每個像素的売度可表不與像素相關(guān)聯(lián)的標聞。例如,如果黑色對應(yīng)于零標聞且白色對應(yīng)于最聞標聞,則灰度像素是具有在零標聞(黑色)和最聞標聞(白色)之間的標聞的像素。在一些實現(xiàn)方式中,顯示對象的每個像素具有為零的默認標高。然而,如果顯示對象的像素已被配置有標高值,則灰度級位圖的像素將反映為像素配置的標高(例如,該像素將基于配置的標高顯示黑色、白色或灰色)。在步驟806,像素標高偏移信息可通過修改像素標高偏移位圖而被調(diào)整。在一些實現(xiàn)方式中,圖形用戶界面開發(fā)者可編輯灰度級標高位圖。例如,開發(fā)者可編輯位圖來改變像素的亮度??墒褂霉奈粓D編輯技術(shù)執(zhí)行位圖的編輯。例如,可通過使用允許填充位圖區(qū)域、描繪線條以及其他位像編輯功能的位圖編輯器來編輯位圖。在步驟808,像素標高偏移信息可被存儲。在一些實現(xiàn)方式中,像素標高偏移信息可與顯示對象的像素顏色 數(shù)據(jù)一起被存儲。例如,像素的標高數(shù)據(jù)可被存儲在用于存儲像素的顏色數(shù)據(jù)的相同數(shù)據(jù)結(jié)構(gòu)中,如參照圖6所描述的。
示例性系統(tǒng)架構(gòu)
圖9是實現(xiàn)了圖1 8的特征和過程的示例性系統(tǒng)架構(gòu)的方框圖。架構(gòu)900可被實現(xiàn)在運行從編譯指令得出的軟件應(yīng)用程序的任何電子設(shè)備上,電子設(shè)備包括但不局限于個人電腦、服務(wù)器、智能電話、媒體播放器、電子平板電腦、游戲操作桿、電子郵件設(shè)備等。在一些實現(xiàn)方式中,架構(gòu)900可包括一個或多個處理器902、一個或多個輸入設(shè)備904、一個或多個顯示設(shè)備906、一介或多個網(wǎng)絡(luò)接口 908、以及一個或多個計算機可讀介質(zhì)910。這些部件中的每一個都可通過總線912耦合。顯示設(shè)備906可以是任何已知的顯示技術(shù),包括但不局限于使用液晶顯示(IXD)或發(fā)光二極管技術(shù)(LED)的顯示設(shè)備。處理器902可使用任何已知的處理器技術(shù),包括但不局限于圖形處理器和多核處理器。輸入設(shè)備904可以是任何已知的輸入設(shè)備技術(shù),包括但不局限于鍵盤(包括虛擬鍵盤)、鼠標、軌跡球、以及觸敏板或觸敏顯示器??偩€912可以是任何已知的內(nèi)部或外部總線技術(shù),包括但不局限于ISA、EISA、PC1、PCI Express、NuBus、USB、串行ATA或FireWire。計算機可讀介質(zhì)910可以是參與將指令提供給處理器902以用于執(zhí)行的任何介質(zhì),包括但不局限于非易失性存儲介質(zhì)(例如,光盤、磁盤、閃存驅(qū)動等)或易失性介質(zhì)(例如,SDRAM、ROM等)。計算機可讀介質(zhì)910可包括用于實現(xiàn)操作系統(tǒng)(例如,Mac OS ,Windows ,Linux)的各種指令914。操作系統(tǒng)可以是多用戶的、多處理的、多任務(wù)的、多線程的、實時的等等。操作系統(tǒng)執(zhí)行基本任務(wù),包括但不局限于:識別來自輸入設(shè)備904的輸入;將輸出發(fā)送至顯示設(shè)備906 ;保持對在計算機可讀介質(zhì)910上的文件和目錄的跟蹤;控制可直接或通過I/O控制器控制的外圍設(shè)備(例如,磁盤驅(qū)動、打印機等);以及管理總線912上的負荷。網(wǎng)絡(luò)通信指令916可建立和保持網(wǎng)絡(luò)連接(例如,用于執(zhí)行通信協(xié)議,例如TCP/IP、HTTP、以太網(wǎng)等的軟件)。圖形處理系統(tǒng)918可包括提供圖形和圖像處理能力的指令。例如,圖形處理系統(tǒng)918可實現(xiàn)參照圖1 8描述的動態(tài)界面陰影化。應(yīng)用程序920可以是被配置為支持動態(tài)界面陰影化,或使用或?qū)崿F(xiàn)參照圖1 8描述的過程的應(yīng)用程序。例如,與應(yīng)用程序920相關(guān)聯(lián)的圖形用戶界面可被配置有允許以更近似于真實生活的方式模擬陰影的像素標高偏移信息。動態(tài)圖形界面陰影化可被實現(xiàn)在操作系統(tǒng)914中。所描述的特征可有利地被實施于在可編程系統(tǒng)上可執(zhí)行的一個或多個計算機程序中,可編程系統(tǒng)包括至少一個耦合以從數(shù)據(jù)存儲系統(tǒng)接收數(shù)據(jù)和指令以及傳送數(shù)據(jù)和指令至數(shù)據(jù)存儲系統(tǒng)的可編程處理器、至少一個輸入設(shè)備和至少一個輸出設(shè)備。計算機程序是可在計算機中直接或間接使用以執(zhí)行特定的動作或帶來特定的結(jié)果的計算機指令集。計算機程序可以任何形式的編程語言(例如,面向目標的C、Java)編寫,包括編譯的或解釋的語言,并且它能以任何方式被使用,包括作為獨立程序或作為模塊、部件、子例程或其他適合在計算環(huán)境中使用的單元。舉例來說,用于執(zhí)行指令程序的適合的處理器包括任何種類的電腦的通用微處理器和專用微處理器,以及單一處理器或者多處理器或多核中的一個。通常,處理器將從只讀存儲器或隨機存取存儲器或兩者中接收數(shù)據(jù)和指令。計算機的基本元件是用于執(zhí)行指令的處理器和用于存儲指令和數(shù)據(jù)的一個或多個存儲器。通常,計算機還將包括用于存儲數(shù)據(jù)文件的一個或多個大容量存儲設(shè)備或可操作地耦合來與之通信;這樣的設(shè)備包括磁盤,例如內(nèi)部硬盤和可移動盤;磁化光盤;和光盤。適合有形地體現(xiàn)計算機程序指令和數(shù)據(jù)的存儲設(shè)備包括所有形式的非易失性存儲器,舉例來說包括如EPROM、EEPROM和閃存存儲器設(shè)備之類的半導(dǎo)體存儲器設(shè)備;如內(nèi)部硬盤和可移動盤之類的磁盤;磁化光盤;以及CD-ROM和DVD-ROM盤。處理器和存儲器可由ASIC (專用集成電路)補充,或被合并于其中。為了提供與用戶的交互,這些特征可被實現(xiàn)在計算機上,該計算機具有用于向用戶顯示信息的如CRT (陰極射線管)或LCD (液晶顯示)監(jiān)控器之類的顯示設(shè)備以及鍵盤和用戶可借助其提供輸入至計算機的如鼠標或軌跡球之類的指示設(shè)備。這些特征可被實施在計算機系統(tǒng)中,該計算機系統(tǒng)包括如數(shù)據(jù)服務(wù)器之類的后端部件,或包括如應(yīng)用程序服務(wù)器或因特網(wǎng)服務(wù)器之類的中間件部件,或包括如具有圖形用戶界面或因特網(wǎng)瀏覽器的客戶端計算機之類的前端部件,或它們的任意組合。系統(tǒng)的部件可通過任何形式或如通信網(wǎng)絡(luò)之類的數(shù)字數(shù)據(jù)通信介質(zhì)而被連接。通信網(wǎng)絡(luò)的例子包括,例如,LAN、WAN、以及形成因特網(wǎng)的計算機和網(wǎng)絡(luò)。計算機系統(tǒng)可包括客戶端和服務(wù)器??蛻舳撕头?wù)器通常彼此距離很遠,并且典型地通過網(wǎng)絡(luò)交互??蛻舳撕头?wù)器的關(guān)系借助于遠行在相應(yīng)的計算機上并且彼此之間具有客戶端-服務(wù)器關(guān)系的計算機程序產(chǎn)生。所公開的實施例的一個或多個特征或步驟可使用API而實現(xiàn)。API可定義在調(diào)用應(yīng)用程序與提供服務(wù)、提供數(shù)據(jù)或執(zhí)行操作或計算的其他軟件代碼(例如,操作系統(tǒng)、庫例程、函數(shù))之間傳遞的一個或多個參數(shù)。API可被實現(xiàn)為程序代碼中的一個或多個調(diào)用,其基于在API規(guī)范文檔中定義的調(diào)用規(guī)則通過參數(shù)表或其他結(jié)構(gòu)來發(fā)送或接收一個或多個參數(shù)。參數(shù)可以是常量、密鑰、數(shù)據(jù)結(jié)構(gòu)、對象、對象類、變量、數(shù)據(jù)類型、指針、數(shù)組、列表或另一個調(diào)用。API調(diào)用和參數(shù)可以任何編程語言實現(xiàn)。編程語言可定義編程者將使用來訪問支持API的函數(shù)的詞匯表以及調(diào)用規(guī)則。在一些實現(xiàn)方式中,API調(diào)用能將運行應(yīng)用程序的設(shè)備的能力報告給應(yīng)用程序,如輸入能力、輸出能力、處理能力、電力能力、通信能力等。已描述了多個實現(xiàn)方式。然而,應(yīng)當(dāng)理解,能做出多種修改。例如,其他步驟可被提供,或一些步驟可從描述的流程中刪除,并且其他的部件可被添加至描述的系統(tǒng)中,或者從其去除。相應(yīng)地,其他實現(xiàn)方式也在如下權(quán)利要求的范圍內(nèi)。圖10是根據(jù)公開內(nèi)容的實施例的設(shè)備1000的框圖。設(shè)備1000包括確定單元1002,被配置為確定第一圖形用戶界面元素的標高值,其中標高值對應(yīng)于沿著垂直于圖形用戶界面顯示器的軸的距離;獲取單元1004,被配置為獲取第一圖形用戶界面元素的像素的標高偏移值;生成單元1006,被配置為基于所確定的標高值和標高偏移值生成與第二圖形用戶界面元素相關(guān)聯(lián)的陰影;以及顯示單元1008,被配置為顯示第一圖形用戶界面元素和陰影。優(yōu)選地,在一些示例中,第一圖形用戶界面元素是操作系統(tǒng)的窗口。優(yōu)選地,在一些示例中,第一圖形用戶界面元素是圖標。優(yōu)選地,在一些示例中,確定單元1002進一步地被配置為基于標高值和標高偏移值確定陰影的尺寸;并且生成單元1006進一步地被配置為基于所確定的尺寸生成陰影。優(yōu)選地,在一些示例中,確定單元1002進一步地被配置為基于標高值和標高偏移值確定陰影的不透明度;并且生成單元1006進一步地被配置為基于所確定的不透明度生成陰影。優(yōu)選地,在一些示例中,確定單元1002進一步地被配置為基于標高值和標高偏移值確定陰影的模糊半徑;并且生成單元1006進一步地被配置為基于所確定的模糊半徑生成陰影。圖11是根據(jù)公開內(nèi)容的實施例的設(shè)備1100的框圖。設(shè)備1100包括顯示單元1102,被配置為在圖形用戶界面編輯器中顯示圖形用戶界面;接收單元1104,被配置為接收指定圖形用戶界面的像素的像素標高偏移值的用戶輸入;以及存儲單元1106,被配置為存儲像素標高偏移值。優(yōu)選地,在一些示例中,顯示單元1102進一步地被配置為顯示圖形用戶界面的標高圖,其中標高圖的每個像素具有表示圖形用戶界面的對應(yīng)像素的標高偏移的亮度值。優(yōu)選地,在一些示例中,設(shè)備1100進一步地包括調(diào)整單元1108,并且其中接收單元1104進一步地被配置為接收指示標高圖的一個或多個像素的亮度值的輸入;調(diào)整單元1108進一步地被配置為基于接收的亮度值調(diào)整標高圖像素的亮度值;調(diào)整單元1108進一步地被配置為基于接收的亮度值調(diào)整圖形用戶界面的對應(yīng)像素的標高偏移;并且調(diào)整單元1108進一步地被配置為基于接收的亮度值調(diào)整標高圖的顯示。根據(jù)上文,公開內(nèi)容的一些示例涉及包括設(shè)備1000或1100的電子設(shè)備(1200或1300)。此處公開的多個單元可使用硬件、軟件或其組合來實現(xiàn)或執(zhí)行。它們通過通用的單一或多芯片處理器、數(shù)字信號處理器(DSP)、專用集成電路(ASIC)、現(xiàn)場可編程門陣列(FPGA)、或其他可編程邏輯設(shè)備、離散門或晶體管邏輯、離散硬件部件、或被設(shè)計來執(zhí)行此處所描述的功能的它們的任何組合來實現(xiàn)或執(zhí)行。通用處理器可以是微處理器,或任何傳統(tǒng)的處理器、控制器、微控制器或狀態(tài)機。處理器還可實現(xiàn)為計算設(shè)備的組合,例如,DSP和微處理器的組合、多個微處理器、與DSP核相結(jié)合的一個或多個處理器、或任何其他這樣的配置。在一些實現(xiàn)方式中,這些單元可被實現(xiàn)為給定功能特定的電路。因此,根據(jù)上文,公開內(nèi)容的一些示例涉及一種方法,包括:確定第一圖形用戶界面元素的標高值,其中標高值對應(yīng)于沿著與圖形用戶界面顯示器垂直的軸的距離;獲取第一圖形用戶界面元素的像素的標高偏移值;基于所確定的標高值和標高偏移值生成與第二圖形用戶界面元素相關(guān)聯(lián)的陰影;并且顯示第一圖形用戶界面元素和陰影。可補充或可替代地,對于上文公開的一個或多個示例,在一些示例中,第一圖形用戶界面元素是操作系統(tǒng)的窗口??裳a充或可替代地,對于上文公開的一個或多個示例,在一些示例中,第一圖形用戶界面元素是圖標。可補充或可替代地,對于上文公開的一個或多個示例,在一些示例中,該方法進一步包括基于標高值和標高偏移值確定陰影的尺寸;并且基于所確定的尺寸生成陰影??裳a充或可替代地,對于上文公開的一個或多個示例,在一些示例中,該方法進一步包括基于標高值和標高偏移值確定陰影的不透明度;并且基于所確定的不透明度生成陰影??裳a充或可替代地,對于上文公開的一個或多個示例,在一些示例中,該方法進一步包括基于標高值和標高偏移值確定陰影的模糊半徑;并且基于所確定的模糊半徑生成陰影。公開內(nèi)容的一些示例涉及一種方法,包括:在圖形用戶界面編輯器中,顯示圖形用戶界面;接收指定用戶圖形界面的像素的像素標高偏移值的用戶輸入;并且存儲像素標高偏移值。可補充或可替代地,對于上文公開的一個或多個示例,在一些示例中,該方法進一步包括顯示圖形用戶界面的標高圖,其中標高圖的每個像素具有表示圖形用戶界面的對應(yīng)像素的標高偏移的亮度值??裳a充或可替代地,對于上文公開的一個或多個示例,在一些示例中,該方法進一步包括接收指示標高圖的一個或多個像素的亮度值的輸入;基于接收的売度值,調(diào)整標聞圖像素的売度值;基于接收的売度值,調(diào)整對應(yīng)圖形用戶界面像素的標聞偏移;并且基于接收的売度值,調(diào)整売度圖的顯不。公開內(nèi)容的一些示例涉及包括一個或多個指令序列的非暫存計算機可讀介質(zhì),指令序列被一個或多個處理器執(zhí)行時導(dǎo)致:確定第一圖形用戶界面元素的標高值,其中標高值對應(yīng)于沿著與圖形用戶界面顯示器垂直的軸的距離;獲取第一圖形用戶界面元素的像素的標高偏移值;基于所確定的標高值和標高偏移值,生成與第二圖形用戶界面元素相關(guān)聯(lián)的陰影;并且顯示第一圖形用戶界面元素和陰影??裳a充或可替代地,對于上文公開的一個或多個示例,在一些示例中,第一圖形用戶界面元素是操作系統(tǒng)的窗口??裳a充或可替代地,對于上文公開的一個或多個示例,在一些示例中,第一圖形用戶界面元素是圖標??裳a充或可替代地,對于上文公開的一個或多個示例,在一些示例中,指令進一步導(dǎo)致基于標高值和標高偏移值確定陰影的尺寸;并且基于所確定的尺寸生成陰影??裳a充或可替代地,對于上文公開的一個或多個示例,在一些示例中指令進一步導(dǎo)致基于標高值和標高偏移值確定陰影的不透明度;并且基于所確定的不透明度生成陰影??裳a充或可替代地,對于上文公開的一個或多個示例,在一些示例中,指令進一步導(dǎo)致基于標高值和標高偏移值確定陰影的模糊半徑;并且基于所確定的模糊半徑生成陰影。公開內(nèi)容的一些示例涉及包括一個或多個指令序列的非暫存計算機可讀介質(zhì),指令序列被一個或多個處理器執(zhí)行時導(dǎo)致:在圖形用戶界面編輯器中,顯示圖形用戶界面;接收指定圖形用戶界面的像素的像素標高偏移值的用戶輸入;并且存儲像素標高偏移值??裳a充或可替代地,對于上文公開的一個或多個示例,在一些示例中,指令進一步導(dǎo)致顯示圖形用戶界面的標高圖,其中標高圖的每個像素具有表示圖形用戶界面的對應(yīng)像素的標高偏移的亮度值??裳a充或可替代地,對于上文公開的一個或多個示例,在一些示例中,指令進一步導(dǎo)致接收指示標高圖的一個或多個像素亮度值的輸入;基于接收的亮度值調(diào)整標高圖像素的亮度值;基于接收的亮度值調(diào)整對應(yīng)圖形用戶界面像素的標高偏移;并且基于接收的売度值調(diào)整標聞圖的顯不。公開內(nèi)容的一些示例涉及一種方法,包括:接收針對計算設(shè)備的觸摸界面的觸摸輸入;確定與觸摸輸入相關(guān)聯(lián)的觸摸界面的區(qū)域;確定第一圖形用戶界面元素的標高值,其中標高值對應(yīng)于沿著與圖形用戶界面顯示器垂直的軸的距離;獲取第一圖形用戶界面元素的像素的標聞偏移值;基于該區(qū)域、所確定的標聞值和標聞偏移值生成與觸摸輸入相關(guān)聯(lián)的陰影;并且顯示第一圖形用戶界面元素和陰影。
權(quán)利要求
1.一種方法,包括: 確定第一圖形用戶界面元素的標高值,其中所述標高值對應(yīng)于沿著與圖形用戶界面顯示器垂直的軸的距離; 獲取所述第一圖形用戶界面元素的像素的標高偏移值; 基于所確定的標高值和所述標高偏移值,生成與第二圖形用戶界面元素相關(guān)聯(lián)的陰影;并且 顯示所述第一圖形用戶界面元素和所述陰影。
2.如權(quán)利要求1所述的方法,其中所述第一圖形用戶界面元素是操作系統(tǒng)的窗口。
3.如權(quán)利要求1所述的方法,其中所述第一圖形用戶界面元素是圖標。
4.如權(quán)利要求1所述的方法,進一步包括: 基于所述標高值和所述標高偏移值,確定所述陰影的尺寸;并且 基于所確定的尺寸生成所述陰影。
5.如權(quán)利要求1所述的方法,進一步包括: 基于所述標高值和所述標高偏移值,確定所述陰影的不透明度;并且 基于所確定的不透明度生成所述陰影。
6.如權(quán)利要求1所述的方法,進一步包括: 基于所述標高值和所述標高偏移值,確定所述陰影的模糊半徑;并且 基于所確定的模糊半徑 生成所述陰影。
7.一種方法,包括: 在圖形用戶界面編輯器中,顯示圖形用戶界面; 接收指定所述圖形用戶界面的像素的像素標高偏移值的用戶輸入;并且 存儲所述像素標高偏移值。
8.如權(quán)利要求7所述的方法,進一步包括: 顯示所述圖形用戶界面的標高圖,其中所述標高圖的每個像素具有表示所述圖形用戶界面的對應(yīng)像素的標高偏移的亮度值。
9.如權(quán)利要求8所述的方法,進一步包括: 接收指示所述標高圖的一個或多個像素的亮度值的輸入; 基于接收的亮度值調(diào)整標高圖像素的所述亮度值; 基于接收的亮度值調(diào)整對應(yīng)的圖形用戶界面像素的所述標高偏移;并且 基于接收的売度值調(diào)整所述標聞圖的顯不。
10.一種設(shè)備,包括: 確定單元,被配置為確定第一圖形用戶界面元素的標高值,其中所述標高值對應(yīng)于沿著與圖形用戶界面顯示器垂直的軸的距離; 獲取單元,被配置為獲取所述第一圖形用戶界面元素的像素的標高偏移值; 生成單元,被配置為基于所確定的標高值和所述標高偏移值,生成與第二圖形用戶界面元素相關(guān)聯(lián)的陰影;以及 顯示單元,被配置為顯示所述第一圖形用戶界面元素和所述陰影。
11.如權(quán)利要求10所述的設(shè)備,其中所述第一圖形用戶界面元素是操作系統(tǒng)的窗口。
12.如權(quán)利要求10所述的設(shè)備,其中所述第一圖形用戶界面元素是圖標。
13.如權(quán)利要求10所述的設(shè)備,其中: 所述確定單元進一步被配置為基于所述標高值和所述標高偏移值,確定所述陰影的尺寸;并且 所述生成單元進一步被配置為基于所確定的尺寸生成所述陰影。
14.如權(quán)利要求10所述的設(shè)備,其中: 所述確定單元進一步被配置為基于所述標高值和所述標高偏移值,確定所述陰影的不透明度;并且 所述生成單元進一步被配置為基于所確定的不透明度生成所述陰影。
15.如權(quán)利要求10所述的設(shè)備,其中: 所述確定單元進一步被配置為基于所述標高值和所述標高偏移值,確定所述陰影的模糊半徑;并且 所述生成單元進一步被配置為基于所確定的模糊半徑生成所述陰影。
16.—種設(shè)備,包括: 顯示單元,被配置為在圖形用戶界面編輯器中,顯示圖形用戶界面; 接收單元,被配置為接收指定所述圖形用戶界面的像素的像素標高偏移值的用戶輸入;以及 存儲單元,被配置為存儲所述像素標高偏移值。
17.如權(quán)利要求16所述的設(shè)備,其中: 所述顯示單元進一步被配置為顯示所述圖形用戶界面的標高圖,其中所述標高圖的每個像素具有表示所述圖形用戶界面的對應(yīng)像素的標高偏移的亮度值。
18.如權(quán)利要求17所述的設(shè)備,進一步包括調(diào)整單元,并且其中: 所述接收單元進一步被配置為接收指示所述標高圖的一個或多個像素的亮度值的輸A ; 所述調(diào)整單元被配置為基于接收的亮度值調(diào)整所述標高圖像素的亮度值; 所述調(diào)整單元進一步被配置為基于接收的亮度值調(diào)整對應(yīng)的圖形用戶界面像素的所述標高偏移;并且 所述調(diào)整單元進一步被配置為基于接收的亮度值調(diào)整所述標高圖的顯示。
19.一種方法,包括 接收針對計算設(shè)備的觸摸界面的觸摸輸入; 確定與所述觸摸輸入相關(guān)聯(lián)的所述觸摸界面的區(qū)域; 確定第一圖形用戶界面元素的標高值,其中所述標高值對應(yīng)于沿著與圖形用戶界面顯示器垂直的軸的距離; 獲取所述第一圖形用戶界面元素的像素的標高偏移值; 基于所述區(qū)域、所確定的標高值和所述標高偏移值,生成與所述觸摸輸入相關(guān)聯(lián)的陰影;并且 顯示所述第一圖形用戶界面元素和所述陰影。
20.一種電子設(shè)備,包括根據(jù)權(quán)利要求10-18中任一項所述的設(shè)備。
全文摘要
描述了動態(tài)圖形界面陰影。更具體而言,描述了動態(tài)窗口陰影和光標陰影。在一些實現(xiàn)方式中,圖形用戶界面顯示對象可被配置有標高偏移信息,來給予顯示對象可具有不同高度的像素的三維顯示表面。在一些實現(xiàn)方式中,在配置有像素標高偏移信息的顯示對象上渲染的陰影可被調(diào)整以反映對象的三維表面,從而更接近于真實生活中的陰影。在一些實現(xiàn)方式中,陰影可根據(jù)其被投影于其上的顯示對象的標高被實時地動態(tài)渲染和調(diào)整。
文檔編號G06F3/0488GK103198516SQ201210473228
公開日2013年7月10日 申請日期2012年9月28日 優(yōu)先權(quán)日2011年11月29日
發(fā)明者N·V·金, D·R·克爾 申請人:蘋果公司