在設(shè)備處于鎖定模式時提供導(dǎo)航指令的制作方法
【專利摘要】本發(fā)明公開了一種在設(shè)備的鎖定模式下提供導(dǎo)航指令的方法。在設(shè)備的顯示屏關(guān)閉時,所述方法確定設(shè)備在導(dǎo)航點附近。所述方法將顯示屏打開并提供導(dǎo)航指令。在一些實施例中,所述方法辨識設(shè)備周圍環(huán)境光線水平,并以所辨識的環(huán)境光線水平而確定的亮度水平打開顯示器。所述方法在通過導(dǎo)航點后關(guān)閉顯示器。
【專利說明】在設(shè)備處于鎖定模式時提供導(dǎo)航指令
【背景技術(shù)】
[0001] 許多現(xiàn)今可用的基于地圖的應(yīng)用程序設(shè)計用于多種不同設(shè)備(例如,臺式計算 機、膝上型計算機、平板設(shè)備、智能電話、手持式全球定位系統(tǒng)(GPS)接收器等)并且用于各 種不同目的(例如,導(dǎo)航、瀏覽、運動等)。這些應(yīng)用程序中的大多數(shù)基于描述感興趣的街 道、公路、點等在地圖中的相對位置的地圖數(shù)據(jù)來生成地圖顯示。
[0002] 此類應(yīng)用程序中使用的地圖通常是二維(2D)地圖或三維(3D)地圖。然而,部分 地由于查看3D地圖的密集處理需求,眾多應(yīng)用程序使用2D地圖。出于同一原因,使用3D 地圖的應(yīng)用程序通常緩慢、低效、簡陋和/或簡單以至于使應(yīng)用程序無用。
【發(fā)明內(nèi)容】
[0003] 本發(fā)明的一些實施例提供一種包括具有若干新型特征的導(dǎo)航應(yīng)用程序的設(shè)備。 在一些實施例中,該設(shè)備具有:觸敏屏幕,該觸敏屏幕顯示應(yīng)用程序輸出;以及多點觸摸界 面,該多點觸摸界面允許用戶通過屏幕提供觸摸輸入和手勢輸入以便與應(yīng)用程序進行交 互。
[0004] 在一些實施例中,導(dǎo)航應(yīng)用程序的新型特征包括:(1)導(dǎo)航期間多個不同視圖(例 如,二維逐向視圖、三維逐向視圖、總體路線視圖等)以及這些視圖之間的平滑轉(zhuǎn)變;(2)用 于導(dǎo)航的新型用戶界面(UI)控件;(3)用于辨識沿導(dǎo)航路線的操縱的逼真道路標志;(4) 用于所辨識操縱的道路標志和其它展示的指令和方向指示器的動態(tài)生成;(5)導(dǎo)航應(yīng)用程 序在設(shè)備上在后臺操作時的信息導(dǎo)航顯示;(6)新型嗓音識別導(dǎo)航引導(dǎo);以及(7)與設(shè)備上 可用或可用于設(shè)備的其它路線規(guī)劃應(yīng)用程序的整合。
[0005] 雖然在一些實施例中所有這些特征是導(dǎo)航應(yīng)用程序的一部分,但是其它實施例未 將所有這些特征用于導(dǎo)航應(yīng)用程序。另外,在一些實施例中,導(dǎo)航應(yīng)用程序是集成地圖繪制 應(yīng)用程序的一部分,集成地圖繪制應(yīng)用程序提供若干其它有用操作,包括位置瀏覽操作、地 圖搜索操作以及路線辨識操作。然而,普通技術(shù)人員將認識到,在其它實施例中,導(dǎo)航應(yīng)用 程序是不包括這些其它操作中的一些或所有的獨立應(yīng)用程序。
[0006] 這里描述每個上述特征。如上所述,一些實施例的導(dǎo)航應(yīng)用程序在導(dǎo)航期間提供 多個不同視圖以及這些視圖之間的平滑轉(zhuǎn)變。在一些實施例中,此類視圖的示例包括二維 (2D)逐向視圖、三維(3D)逐向視圖和總體路線視圖。在一些實施例中,應(yīng)用程序根據(jù)設(shè)備 所渲染的3D導(dǎo)航場景內(nèi)的透視渲染位置生成逐向視圖。在一些實施例中,這種透視渲染 位置是可調(diào)整的,并且可被視為能從多種不同視點(例如,從多種不同位置和取向)捕獲 3D導(dǎo)航場景的虛擬攝像機。因此,在一些實施例中,逐向?qū)Ш绞菍?dǎo)航路線的動畫渲染,動畫 渲染是從基于攜帶設(shè)備的用戶的遍歷方向和速度而沿著路線的方向遍歷的虛擬攝像機的 有利位置渲染出,在一些實施例中,遍歷方向和速度是由與設(shè)備相關(guān)聯(lián)的方向數(shù)據(jù)(例如, GPS數(shù)據(jù)、三角測量的蜂窩塔數(shù)據(jù)等)捕捉。
[0007] 在導(dǎo)航期間,一些實施例的導(dǎo)航應(yīng)用程序允許用戶通過設(shè)備屏幕上的手勢輸入來 改變虛擬攝像機的位置(即,從其渲染出導(dǎo)航路徑的位置)。虛擬攝像機的移動(即,渲染 出路線的位置的移動)允許導(dǎo)航應(yīng)用程序呈現(xiàn)另選的3D視圖。一些實施例甚至使用虛擬 攝像機來渲染俯視2D視圖以供逐向?qū)Ш?,而其它實施例通過縮放2D地圖來渲染俯視2D視 圖。
[0008] 在一些實施例中,導(dǎo)航應(yīng)用展示用作為3D指示器和3D啟動器/切換器二者的3D 控件(例如按鈕)。在一些實施例中,3D控件被實現(xiàn)為浮置控件,該浮置控件可在需要時 "浮"在2D或3D導(dǎo)航展示上方,而在不需要時從展示中"浮"出。此控件還用作當前視圖是 3D視圖的指示器。3D控件可具有不同外觀(例如,著色成灰色、黑色、藍色等)來提供不同 指示。在一些實施例中,3D控件在3D數(shù)據(jù)不可用于用戶當前位置時是灰色的,在3D數(shù)據(jù)可 用但該用戶當前正在以2D模式查看地圖時是黑色的,并且在用戶以3D模式查看地圖時是 紫色的。在一些實施例中,3D控件在用戶處于一定縮放水平時顯示建筑物的圖像,并且提 供由用戶選擇時的區(qū)域中的建筑物的"俯瞰"。它還提供一種進入和退出3D導(dǎo)航的快速機 制。如在以下另外描述,導(dǎo)航應(yīng)用程序允許通過設(shè)備的多點觸摸界面的其它手勢輸入來在 2D導(dǎo)航視圖和3D導(dǎo)航視圖之間轉(zhuǎn)變。
[0009] 在一些實施例中,導(dǎo)航應(yīng)用程序使用浮置控件以便使屏幕上控件保持最小,從而 盡可能多地顯示交互式導(dǎo)航。在一些實施例中,浮置控件是通過以下方式與當前任務(wù)相適 應(yīng)的控件集的一部分:當用戶在不同導(dǎo)航視圖之間、或就導(dǎo)航只是另一應(yīng)用程序的若干模 態(tài)之一的實施例而言在不同應(yīng)用程序模態(tài)之間變動時,以動畫方式調(diào)整控件集的內(nèi)容。這 種自適應(yīng)性質(zhì)允許導(dǎo)航應(yīng)用程序針對不同任務(wù)進行優(yōu)化,同時當在這些任務(wù)之間變動時維 持一致的外觀和交互模型。
[0010] 當導(dǎo)航應(yīng)用程序開始導(dǎo)航展示時,在一些實施例中,應(yīng)用程序(1)自動隱藏浮置 控件以及位于地圖頂部的條(包含其它n控件),導(dǎo)航沿著該條顯示;并且(2)開始全屏 逐向?qū)Ш秸故尽T诖四J较?,?yīng)用程序限制與地圖的觸摸交互。在一些實施例中,要求輕擊 以便訪問被自動隱藏的控件。在一些實施例中,這些控件適于全屏導(dǎo)航外觀,包括估計到達 時間(ETA)在沿頂部的條中的突出顯示。
[0011] 在一些實施例中,頂部條中的控件之一是概覽按鈕。通過在導(dǎo)航期間在任何時間 選擇這個按鈕,用戶可在以下各項之間進行無縫切換:全屏;顯示針對逐向指引優(yōu)化的視 圖的逐向展示;以及顯示更好地適應(yīng)瀏覽的剩余路線的視圖的概覽展示。
[0012] 在一些實施例中,不變控件集和地圖中的原位轉(zhuǎn)變在概覽模式與全屏模式之間提 供連貫性。這些控件還包括允許用戶在概覽模式或全屏模式下結(jié)束導(dǎo)航的控件。一些實施 例還允許在導(dǎo)航的同時執(zhí)行搜索。例如,一些實施例提供下拉句柄,該下拉句柄允許在概覽 模式下進行導(dǎo)航的同時將搜索欄拉動至概覽顯示中??商娲亍⒒蚩山Y(jié)合地,一些實施例允 許在導(dǎo)航期間通過一些實施例的設(shè)備的嗓音識別輸入來執(zhí)行搜索。另外,在一些實施例中, 應(yīng)用程序允許用戶在逐向?qū)Ш狡陂g執(zhí)行搜索(例如,嗓音啟動的和/或基于文本的搜索)。 一些實施例的導(dǎo)航應(yīng)用程序還允許通過設(shè)備的嗓音識別輸入來啟動導(dǎo)航。
[0013] 在導(dǎo)航期間,一些實施例的導(dǎo)航應(yīng)用程序還允許用戶在沒有標引浮置控件或頂部 條控件的情況下提供一些手勢輸入。例如,不同的實施例在逐向?qū)Ш狡陂g提供不同手勢輸 入來調(diào)整2D/3D視圖。在一些實施例中,手勢輸入是用于調(diào)整縮放水平的兩指收緊/張開 操作。對縮放水平的這種調(diào)整固有地調(diào)整攝像機相對于路線指引的位置和旋轉(zhuǎn),從而改變 路線指引的2D/3D透視圖??商娲?,代替或除了縮放操作,其它實施例提供改變攝像機的 位置的其它手勢輸入(例如,手指拖動操作)。在其它實施例中,手勢輸入(例如,手指拖動 操作)暫時改變攝像機的查看方向,以便允許用戶暫時掃視導(dǎo)航路線的一側(cè)。在這些實施 例中,在短時間段后,應(yīng)用程序使攝像機沿路線返回至其先前視角。
[0014] 導(dǎo)航應(yīng)用程序的另一新型特征是在導(dǎo)航期間所使用的逼真道路標志。在一些實施 例中,標志是與實際公路標志極其相似的紋理化圖像。在一些實施例中,這些標志包括指令 箭頭、文本、路盾(shield)和距離。一些實施例的導(dǎo)航應(yīng)用程序呈現(xiàn)眾多不同情景中的很 多種標志變體。另外,在一些實施例中,應(yīng)用程序根據(jù)區(qū)域規(guī)范以不同顏色呈現(xiàn)標志。
[0015] 對于緊接在一起的操縱,在一些實施例中,應(yīng)用程序在第一標志下方呈現(xiàn)第二標 志。另外,在一個操縱結(jié)束時,導(dǎo)航應(yīng)用程序利用模仿標志在公路頂上經(jīng)過的運動來動畫繪 制標志的離開。當將到來的操縱正在接近時,導(dǎo)航應(yīng)用程序利用精妙動畫(例如,整個標志 上的閃光)將注意力吸引至標志上。
[0016] 在一些實施例中,導(dǎo)航應(yīng)用程序基于應(yīng)用程序正在顯示標志或展示的情景動態(tài)生 成用于與導(dǎo)航操縱相關(guān)聯(lián)的道路標志和其它展示(例如,列表視圖)的指令。對于給定情 景,通過考慮諸如以下因素選擇指令文本:可用空間、通過本文之外的手段傳達的信息的可 用性(例如,嗓音引導(dǎo)的可用性)、指令變體中的每一個的局部長度、設(shè)備的顯示屏的大小 等。通過局部合成和評估若干替代形式,應(yīng)用程序可挑選每個場景中的最佳指令串。
[0017] 類似地,一些實施例的導(dǎo)航應(yīng)用程序基于應(yīng)用程序正在顯示標志或展示的情景自 適應(yīng)地生成用于與導(dǎo)航操縱相關(guān)聯(lián)的道路標志和其它展示(例如,列表視圖)的方向圖形 指示器。例如,當標志或展示上存在足夠空間以供使用較大標志時,一些實施例的導(dǎo)航應(yīng)用 程序通過使用較大圖形方向指示來辨識要在沿路線的路口處執(zhí)行的操縱,較大圖形方向指 示器包括:(1)粗略表示車輛的路徑的突出風(fēng)格化箭頭以及(2)對應(yīng)于路口的其它元件的 一組去強調(diào)的直線和曲線。在使用這種方法的一些實施例中,T字路口處的右轉(zhuǎn)是由與較 小較暗區(qū)段以直角接合的大箭頭表示,較小較暗區(qū)段平行于大箭頭的區(qū)段之一延伸。在一 些實施例中,較小區(qū)段還被推至一邊,使得車輛所經(jīng)過的路徑占據(jù)主導(dǎo)。
[0018] 操縱的這種表示(包括突出風(fēng)格化箭頭和一組去強調(diào)的直線)提供關(guān)于該操縱的 相當完整的信息,同時保持是抽象且易理解的。然而,在其它情景中,標志或其它展示上并 不存在足夠空間以供用于這種表示。因此,對于此類情況,一些實施例的導(dǎo)航應(yīng)用程序使用 操縱的另選表示,這種另選表示省略顯示路口并且替代地僅顯示在移動方向上的箭頭。
[0019] 為了生成用于沿路線的路口操縱的突出風(fēng)格化箭頭或簡化箭頭,在一些實施例 中,導(dǎo)航應(yīng)用程序從服務(wù)器接收對路口和操縱的描述。在一些實施例中,服務(wù)器執(zhí)行基于地 圖數(shù)據(jù)生成這個描述的自動化過程,并且以壓縮幾何點數(shù)據(jù)提供這個信息。另外,在一些實 施例中,在路線導(dǎo)航開始時,服務(wù)器向?qū)Ш綉?yīng)用程序供應(yīng)對沿路線的所有路口和操縱的描 述,并且在用戶偏離路線并且該服務(wù)器計算新的路線時偶爾更新這個描述。
[0020] 當導(dǎo)航應(yīng)用程序接收路口和操縱描述時,一些實施例的應(yīng)用程序初始執(zhí)行簡化路 口和操縱的表征的過程,并且隨后使用這個簡化表征生成用于路口的突出風(fēng)格化圖形方向 指示器。為了顯示路口處的操縱,一些導(dǎo)航應(yīng)用程序通常提供不是針對路口來表達的簡陋 箭頭并且不傳達更多信息;而其它導(dǎo)航應(yīng)用程序提供對路口的極詳細的表示并且通過這個 詳細表示提供復(fù)雜方向表示。因此,一種現(xiàn)有方法提供極少信息,而另一種方法提供太多信 息以致所渲染的信息實際上是無用的。通過基于對路口的簡化描述生成突出風(fēng)格化方向指 示器,一些實施例的導(dǎo)航應(yīng)用程序顯示路口處的操縱的詳細表示,同時消除路口的一些不 必要的復(fù)雜事物。
[0021] 在一些實施例中,在應(yīng)用程序正在后臺操作時并且甚至在設(shè)備被鎖定時,導(dǎo)航應(yīng) 用程序提供導(dǎo)航指令。在一些實施例中,當僅僅減少的控件集可用于將輸入提供到設(shè)備中 時,該設(shè)備被鎖定。例如,在一些實施例中,對設(shè)備的鎖定大大限制用戶通過該設(shè)備的觸敏 屏幕可提供的輸入次數(shù)。
[0022] 在一些實施例中,嗓音引導(dǎo)指令是在導(dǎo)航應(yīng)用程序正在后臺操作時或在設(shè)備被鎖 定時可提供的指令的一個示例??商娲ひ粢龑?dǎo)或與其相結(jié)合地,導(dǎo)航應(yīng)用程序可在正在 后臺操作時在至少兩種模式下提供文本和/或圖形指令。
[0023] 第一,一些實施例的應(yīng)用程序并入鎖定屏幕背景,即包括鎖定屏幕顯示中的文本 和圖形導(dǎo)航描述的活動導(dǎo)航視圖(例如,逐向視圖)。利用這種展示,用戶可在應(yīng)用程序正 在不解鎖設(shè)備的情況下在后臺運行時看到導(dǎo)航指令。在一些實施例中,應(yīng)用程序還會通過 向鎖定屏幕顯示中的抽屜發(fā)送通常將會占據(jù)導(dǎo)航顯示所占據(jù)的空間的通知來精化鎖定屏 幕體驗,在一些實施例中精化立即完成,而在其它實施例中,精化是在通知被顯示在鎖定屏 幕視圖上短時間段之后完成。另外,無論用戶何時解鎖設(shè)備,一些實施例都無動畫地返回導(dǎo) 航顯示,以便使得體驗是無縫的。
[0024] 在一些實施例中,如果沒有操縱即將發(fā)生,那么應(yīng)用程序在一段時間后關(guān)閉鎖定 屏幕導(dǎo)航顯示。然而,在這些實施例中的一些實施例中,當正在接近迫近的操縱和/或需要 提供新的導(dǎo)航指令時,應(yīng)用程序使屏幕亮起。相對于每個步驟的持續(xù)時間而言,此過程的時 間量很小,因此顯示導(dǎo)航指令不會以顯著衰減的電池壽命為代價。為了增強體驗,在一些實 施例中,導(dǎo)航應(yīng)用程序在導(dǎo)航提示很久之前激活環(huán)境光線傳感器,使得在要顯示導(dǎo)航地圖 時可使用環(huán)境光線設(shè)定使屏幕亮起達到正確的亮度。
[0025] 第二,在一些實施例中,導(dǎo)航應(yīng)用程序在后臺操作,甚至是在設(shè)備解除鎖定時也是 如此。這是導(dǎo)航應(yīng)用程序在執(zhí)行若干其它應(yīng)用程序的設(shè)備(例如,智能電話)上操作時的 情況。在這種設(shè)備中,當設(shè)備正在呈現(xiàn)由設(shè)備的操作系統(tǒng)提供的視圖(例如,頁面)或由設(shè) 備上的另一應(yīng)用程序提供的視圖時,導(dǎo)航應(yīng)用程序?qū)⒃诤笈_操作。
[0026] 當導(dǎo)航應(yīng)用程序在解鎖的設(shè)備上在后臺操作時,在一些實施例中,該設(shè)備(1)在 遠離將到來的操縱時,使用雙倍高度的狀態(tài)條指示該導(dǎo)航應(yīng)用程序的后臺操作;并且(2) 在正在接近操縱時或在引導(dǎo)指令可聽見時,使用包括動態(tài)更新的與操縱的距離的標志樣導(dǎo) 航橫幅。另外,應(yīng)用程序維持標志樣橫幅直至操縱完成,并且抑制該空間中的其它通知。在 一些實施例中,對雙倍高度狀態(tài)條或?qū)Ш綑M幅的選擇指引設(shè)備切換至由導(dǎo)航應(yīng)用程序生成 的導(dǎo)航視圖。
[0027] 以下另外描述一些實施例的導(dǎo)航應(yīng)用程序的上述特征以及一些其它特征。在以上 和以下的描述中,許多特征被描述為提供新型位置瀏覽、位置搜索、路線辨識和路線導(dǎo)航操 作的集成地圖繪制應(yīng)用程序的一部分。然而,普通技術(shù)人員將認識到,在其它實施例中,這 些新型操作由不執(zhí)行所有這些操作、或執(zhí)行除了這些操作之外的其它操作的應(yīng)用程序來執(zhí) 行。
[0028] 上述
【發(fā)明內(nèi)容】
旨在用作對本發(fā)明的一些實施例的簡單介紹。其并非意味著對在本 文檔中所公開的所有發(fā)明主題進行介紹或概述。隨后的【具體實施方式】以及在【具體實施方式】 中所參照的附圖將進一步描述
【發(fā)明內(nèi)容】
中所述的實施例以及其他實施例。因此,為了理解 該文檔所描述的所有實施例,需要全面審閱
【發(fā)明內(nèi)容】
、【具體實施方式】和附圖。此外,受權(quán)利 要求書保護的題材不被
【發(fā)明內(nèi)容】
、【具體實施方式】及附圖中的示例性細節(jié)所限定,而是被所 附權(quán)利要求所限定,這是因為受權(quán)利要求書保護的題材在不脫離本題材的實質(zhì)的情況下能 夠以其他特定形式而體現(xiàn)。
【專利附圖】
【附圖說明】
[0029] 在所附的權(quán)利要求中闡述了本發(fā)明的新穎特征。然而,出于說明目的,在以下附圖 中闡釋本發(fā)明的若干實施例。
[0030] 圖1例示執(zhí)行本發(fā)明的一些實施例的集成地圖繪制應(yīng)用程序的設(shè)備的實例。
[0031] 圖2例示關(guān)于用戶與地圖繪制應(yīng)用程序交互以獲得路線規(guī)劃指引的三個階段的 實例。
[0032] 圖3例示一些實施例的導(dǎo)航應(yīng)用程序提供3D控件作為用于進入3D導(dǎo)航模式的快 速機制的方式。
[0033] 圖4例示一種設(shè)備,該設(shè)備顯示在地圖繪制應(yīng)用程序從用于地圖瀏覽的非沉浸式 地圖視圖轉(zhuǎn)變成用于導(dǎo)航的沉浸式地圖視圖時的該應(yīng)用程序。
[0034] 圖5呈現(xiàn)例示虛擬攝像機的概念的簡化實例。圖6例示一些實施例的地圖繪制應(yīng) 用程序改變3D控件的外觀以指示地圖視圖的不同的2D狀態(tài)和3D狀態(tài)。
[0035] 圖7例示一些實施例中的從3D模式到2D模式的切換。
[0036] 圖8例示通過收縮手勢和展開手勢對虛擬攝像機的距離進行的調(diào)整。
[0037] 圖9例示角度可通過手勢來調(diào)整的攝像機的實施例。
[0038] 圖10概念性地例示一些實施例的地圖繪制應(yīng)用程序所提供的特征,該特征用于 將虛擬攝像機的位置維持在沿弧的限定范圍內(nèi)。
[0039] 圖11例示一些實施例的全屏模式。
[0040] 圖12例示一些實施例中的在設(shè)備上的電話呼叫期間具有控件被隱藏和顯示的導(dǎo) 航應(yīng)用程序。
[0041] 圖13例示一些實施例中的編程路線的結(jié)束。
[0042] 圖14例示一些實施例中的導(dǎo)航程序結(jié)束控件。
[0043] 圖15例示一些實施例中的當用戶向一旁推動地圖時該地圖的旋轉(zhuǎn)。
[0044] 圖16和圖17例示一些實施例中的概覽控件。
[0045] 圖18概念性地例示處理或地圖渲染流水線,該處理或地圖渲染流水線由一些實 施例的地圖繪制應(yīng)用程序執(zhí)行,以便渲染地圖以供在客戶端設(shè)備處顯示。
[0046] 圖19A和圖19B概念性地例示狀態(tài)圖,該狀態(tài)圖描述一些實施例的集成地圖繪制、 搜索和導(dǎo)航應(yīng)用程序(例如,以上節(jié)段中描述的應(yīng)用程序)的不同狀態(tài)以及這些狀態(tài)之間 的轉(zhuǎn)變。
[0047] 圖20例示一些實施例中的使用此類公路路盾的若干⑶I場景。
[0048] 圖21例示一些實施例中的若干不同場景,其中地圖繪制應(yīng)用程序顯示不同類型 的圖形指示器箭頭以視覺地向用戶表示操縱。
[0049] 圖22例示一些實施例中的相同轉(zhuǎn)彎的若干場景、以及不同箭頭可用于相同轉(zhuǎn)彎 的方式。
[0050] 圖23例示根據(jù)一些實施例的合成路口處的特定操縱的不同指令的實例。
[0051] 圖24例示多種不同情況下的若干不同場景,在這些場景中,地圖繪制應(yīng)用程序針 對第一路口的特定操縱顯示自適應(yīng)指令的不同實例。
[0052] 圖25例示一些實施例中的其中地圖繪制應(yīng)用程序使用合成的指令集的另外場 旦 -5^ 〇
[0053] 圖26以四個階段例示用于移除導(dǎo)航標志并且引入下一標志的一些實施例的動 畫。
[0054] 圖27以四個階段例示一些實施例中的這種閃光動畫,這四個階段將顯示的背景 例示為灰色,以便在閃光在標志上移動時與閃光形成對比。
[0055] 圖28以四個階段例示一些實施例中的用于快速連續(xù)的操縱的兩個標志的顯示。
[0056] 圖29例示本發(fā)明的一些實施例中的當導(dǎo)航正在后臺運行時的用戶設(shè)備顯示。
[0057] 圖30概念性地例示用于在導(dǎo)航應(yīng)用程序正在后臺運行時提供指引的一些實施例 的過程。
[0058] 圖31例示一些實施例的用戶界面,其中當導(dǎo)航應(yīng)用程序正在另一個應(yīng)用程序的 后臺運行時給出導(dǎo)航指令。
[0059] 圖32例示一些實施例中的顯示在應(yīng)用程序的頂部處的導(dǎo)航條。
[0060] 圖33例不一些實施例中的設(shè)備的用戶界面,其中在導(dǎo)航應(yīng)用程序正在另一個應(yīng) 用程序的后臺運行時,設(shè)備到達其目標。
[0061] 圖34例示呼叫狀態(tài)條和導(dǎo)航指令條之間的交互。
[0062] 圖35例示進入鎖定模式時導(dǎo)航應(yīng)用程序在后臺運行并且離開鎖定模式時導(dǎo)航應(yīng) 用程序在前臺運行的一些實施例的設(shè)備。
[0063] 圖36例示進入鎖定模式時導(dǎo)航應(yīng)用程序在前臺運行并且離開鎖定模式時導(dǎo)航應(yīng) 用程序在前臺運行的一些實施例的設(shè)備。
[0064] 圖37例示本發(fā)明的一些實施例中的在鎖定設(shè)備上給出指引的導(dǎo)航應(yīng)用程序。 [0065] 圖38例示當設(shè)備到達其目標時的一些實施例的鎖定模式視圖。
[0066] 圖39例示一些實施例的鎖定視圖通知系統(tǒng)。
[0067] 圖40例示本發(fā)明的一些實施例中的在解鎖設(shè)備之后查看通知消息。
[0068] 圖41例示本發(fā)明的一些實施例中的用于在接近導(dǎo)航點時打開設(shè)備屏幕的過程。 [0069] 圖42例示本發(fā)明的一些實施例中的在導(dǎo)航應(yīng)用程序在后臺運行時未向設(shè)備給出 命令時設(shè)備所經(jīng)歷的多個階段。
[0070] 圖43概念性地例示用于在接收到通知消息時打開屏幕的一些實施例的過程。
[0071] 圖44是一些實施例的移動計算設(shè)備的架構(gòu)的實例。
[0072] 圖45概念性地示出了實現(xiàn)本發(fā)明的一些實施例所利用的電子系統(tǒng)的實例。
[0073] 圖46例示根據(jù)一些實施例的地圖服務(wù)操作環(huán)境。
【具體實施方式】
[0074] 在本發(fā)明的以下【具體實施方式】中,提出并描述了本發(fā)明的許多細節(jié)、實例和實施 例。然而,對于本領(lǐng)域的技術(shù)人員來說將清楚和顯而易見的是,本發(fā)明并不限于所示出的實 施例,并且本發(fā)明可在沒有所討論的具體細節(jié)和實例的情況下被實施。
[0075] I.導(dǎo)航用戶界面
[0076] A.開始
[0077] -些實施例的導(dǎo)航應(yīng)用程序是集成地圖繪制應(yīng)用程序的一部分,集成地圖繪制應(yīng) 用程序包括若干有用模態(tài),包括位置瀏覽操作、地圖搜索操作、路線辨識操作以及路線導(dǎo)航 操作。在一些實施例中,此集成應(yīng)用程序(以下稱為地圖繪制應(yīng)用程序、導(dǎo)航應(yīng)用程序或 集成應(yīng)用程序)被限定由具有顯示應(yīng)用程序的輸出的觸敏屏幕的設(shè)備來執(zhí)行。在一些實 施例中,此設(shè)備具有多點觸摸界面,用于允許用戶通過屏幕提供觸摸輸入和手勢輸入以與 應(yīng)用程序交互。此類設(shè)備的示例是智能電話(例如,Apple Inc.所銷售的iph〇ne?、操作 Android?操作系統(tǒng)的電話、操作Windows 8?操作系統(tǒng)的電話等)。
[0078] 圖1例示執(zhí)行本發(fā)明的一些實施例的集成地圖繪制應(yīng)用程序的設(shè)備100的實例。 此圖另外例示在此應(yīng)用程序中開始路線導(dǎo)航的實例。此應(yīng)用程序具有新型用戶界面(UI) 設(shè)計,該n設(shè)計通過使用浮在內(nèi)容頂部以便盡可能多地顯示內(nèi)容的最小屏幕上控件集,針 對應(yīng)用程序的不同模態(tài)中的每個無縫并內(nèi)聚地集成控件。另外,此集適于當前任務(wù),從而在 用戶在不同模態(tài)之間(例如,在瀏覽、搜索、路線規(guī)劃和導(dǎo)航之間)變動時以動畫的方式調(diào) 整該集的內(nèi)容。具有自適應(yīng)性質(zhì)的此公共元素允許地圖繪制應(yīng)用程序針對不同任務(wù)進行優(yōu) 化,同時當在這些任務(wù)之間進行變動時維持一致的外觀和交互模型。
[0079] 圖1示出與地圖繪制應(yīng)用程序交互的六個階段105、110、115、117、119、121。第一 階段105示出設(shè)備的n 120,該n 120在任務(wù)欄區(qū)域125中并在n的頁面上包括若干應(yīng) 用程序的若干圖標。在此頁面上的圖標之一是地圖繪制應(yīng)用程序130的圖標。第一階段示 出用戶通過在地圖繪制應(yīng)用程序在設(shè)備的屏幕上的位置處觸摸接觸屏幕來選擇此應(yīng)用程 序。
[0080] 第二階段110示出在已經(jīng)打開地圖繪制應(yīng)用程序之后的設(shè)備。如此階段所示,地 圖繪制應(yīng)用程序的n具有開始頁面,在一些實施例中,開始頁面顯示(1)設(shè)備的當前位置 的地圖以及(2)布置在頂部條140中并作為浮置控件的若干n控件。如圖1所示,浮置控 件包括指示器145、3D控件150和翻頁控件155,而頂部條140包括指引控件160、搜索欄 165和書簽控件170。
[0081] 在一些實施例中,用戶可通過在搜索欄165中鍵入來發(fā)起搜索。這指引應(yīng)用程序 呈現(xiàn)動畫,動畫(1)呈現(xiàn)屏幕上鍵盤并且(2)打開充滿有價值的結(jié)果的搜索表。此表具有 一些重要細節(jié)。當輕擊搜索欄時,并且在編輯項之前或當搜索欄為空時,該表包含"最近"列 表,在一些實施例中,"最近"是用戶最近已請求的搜索和路線指引。這使快速調(diào)出最近訪問 的結(jié)果非常容易。
[0082] 在搜索欄上進行任何輸入之后,該表被填充有來自本地來源(例如,書簽、聯(lián)系 人、最近搜索、最近路線指引等)和遠程服務(wù)器兩者的搜索結(jié)果。將用戶的聯(lián)系人卡片并 入到搜索界面中增加了另外的設(shè)計靈活性。當顯示最近時,在一些實施例中,常常提供從當 前位置到用戶住宅的路線;但在其它實施例中,這條路線在被視為"適當"的情景下提供。 另外,在一些實施例中,當搜索項匹配地址標簽中的至少一部分(例如,"Work"的"ork") 時,應(yīng)用程序?qū)⒂脩舻臉擞浀刂纷鳛榻Y(jié)果呈現(xiàn)在搜索表中。這些行為一起使搜索n成為將 來自多種來源的結(jié)果獲取到地圖上的極有力的方式。除了允許用戶發(fā)起搜索之外,在一些 實施例中,在一級地圖視圖中存在文本字段還允許用戶看到對應(yīng)于地圖上的搜索結(jié)果的查 詢,并且允許用戶通過清除查詢來移除那些搜索結(jié)果。
[0083] 書簽控件170 (例如,按鈕)允許由應(yīng)用程序?qū)ξ恢煤吐肪€添加書簽。位置指示器 145允許在地圖上具體地指出設(shè)備的當前位置。一旦選擇此指示器,應(yīng)用程序就將設(shè)備的當 前位置維持在地圖的中心。在一些實施例中,指示器還可辨識設(shè)備當前所指向的方向。
[0084] 3D控件150是用于以三維(3D)方式查看地圖或檢查路線的控件。地圖繪制應(yīng)用 程序提供3D控件作為一種進入和退出3D的快速機制。此控件還用作:(1)當前視圖是3D 視圖的指示器;(2) 3D透視圖可用于給定地圖視圖(例如,縮小的地圖視圖可能并不具有可 用的3D視圖)的指示器;(3) 3D透視圖并不可用的指示器(例如,3D數(shù)據(jù)不可用于地圖區(qū) 域);以及(4)俯瞰動畫在給定縮放水平可用的指示器。3D控件可提供對應(yīng)于每個指示的 不同外觀。例如,3D控件在3D視圖不可用時可為灰色,在3D視圖可用但地圖處于2D視圖 時可為黑色,并且在地圖處于3D視圖時可為藍色。在一些實施例中,當俯瞰動畫針對地圖 上用戶給定的縮放水平和位置可用時,3D控件使得改變成建筑物的圖像。
[0085] 翻頁控件155是通過以下方式允許應(yīng)用程序最小化屏幕上控件的數(shù)目的控件:將 某些不太頻繁使用的動作放置在次級n屏幕上,該次級n屏幕是可通過顯示在地圖上的 翻頁控件來訪問的。在一些實施例中,翻頁永久地顯示在應(yīng)用程序所提供的至少一些地圖 視圖上。例如,在一些實施例中,應(yīng)用程序在允許用戶瀏覽或搜索位置或辨識路線的開始頁 面(第二階段no中所例示)上永久地顯示翻頁。
[0086] 指引控件160打開指引輸入頁面180,用戶可通過指引輸入頁面180請求要在起點 位置和終點位置之間辨識出的路線。圖1的第三階段115例示對指引控件160的選擇打開 第四階段117中所示的指引輸入頁面180。指引控件是可指引地圖繪制應(yīng)用程序辨識并顯 示兩個位置之間的路線所借助的三種機制之一;另外兩種機制是:(1)針對地圖中的所選 擇項目所顯示的信息橫幅中的控件;以及(2)顯示在搜索欄165中的設(shè)備所辨識的最近路 線。因此,信息橫幅控件和搜索欄165是應(yīng)用程序采用來使不同模態(tài)之間的轉(zhuǎn)變無縫的兩 個n工具。
[0087] 第四階段117示出:指引輸入頁面180包括用于提供路線的起點位置和終點位置 的起點字段和終點字段,以及列出應(yīng)用程序已向用戶提供的最近路線的表。此頁面上的其 它控件是用于以下各項的控件:啟動路線;逆轉(zhuǎn)起點位置和終點位置的次序;取消指引請 求;獲取步行、汽車或公共交通路線。這些控件和地圖繪制應(yīng)用程序的其它方面描述在于 2012年9月30日提交的名稱為"Problem R印orting in Maps"的美國專利申請13/632, 102 中。美國專利申請13/632, 102以引用方式并入本文。
[0088] 第四階段例示用戶選擇自動填充在表182中的最近指引中的一個。第五階段119 隨后在2D地圖視圖上顯示通過頁面180指定的指定起點位置和終點位置之間的三條路線。 它還示出對第二路線的選擇并且在版面頂部處的條中示出關(guān)于這條路線的一些信息。此條 被不出為包括啟動按鈕和結(jié)束按鈕。啟動按鈕被不出為在弟五階段中被選擇。
[0089] 如在第六階段中所示,對啟動按鈕的選擇指引應(yīng)用程序進入逐向?qū)Ш侥J健T谠?示例中,應(yīng)用程序已經(jīng)進入2D逐向?qū)Ш侥J健T谄渌鼘嵤├?,?yīng)用程序?qū)J進入3D 逐向?qū)Ш侥J?。在此模式下,?yīng)用程序顯示逼真標志184,該逼真標志184辨識導(dǎo)航路線中 從設(shè)備的當前位置到下一路口操縱的距離以及一些其它相關(guān)信息。在其它實施例中,應(yīng)用 程序還顯示:頂部條,該頂部條包括關(guān)于導(dǎo)航的一些信息;以及結(jié)束按鈕和概覽按鈕,該結(jié) 束按鈕和概覽按鈕分別用于結(jié)束導(dǎo)航和獲得導(dǎo)航路線的剩余部分或?qū)Ш铰肪€的整個部分 的概覽。
[0090] 一些實施例的地圖繪制應(yīng)用程序使用設(shè)備在設(shè)備的位置處接收到的GPS信號中 的坐標(例如,經(jīng)度、海拔和緯度坐標)來辨識設(shè)備的位置。可替代地或相結(jié)合地,地圖繪 制應(yīng)用程序使用其它方法(例如,蜂窩塔三角測量法)來計算當前位置。當攜有設(shè)備的用 戶與路線偏離時,一些實施例的地圖繪制應(yīng)用程序跟蹤設(shè)備的位置并且重新計算從偏離位 置開始的新路線,以便將用戶從偏離位置重新導(dǎo)向至目標位置。換句話講,以導(dǎo)航模式操作 的一些實施例的地圖繪制應(yīng)用程序要求設(shè)備一直在路線上。
[0091] 應(yīng)用程序還顯示上文描述的浮置3D控件和浮置列表控件。應(yīng)當指出的是,列表控 件在進入路線檢查和路線導(dǎo)航模態(tài)時被自適應(yīng)地添加至浮置控件集,而位置指示器在進入 路線導(dǎo)航模態(tài)時從浮置控件中被移除。另外,在從路線檢查模式轉(zhuǎn)變成路線導(dǎo)航模式時,在 一些實施例中,應(yīng)用程序執(zhí)行動畫,動畫涉及在應(yīng)用程序轉(zhuǎn)變至導(dǎo)航展示之前完全展開的 翻頁效果。
[0092] 在一些實施例中,動畫轉(zhuǎn)變包括:從導(dǎo)航展示中移除頂部條、頂部條相關(guān)聯(lián)的控件 以及浮置控件,以及在開始導(dǎo)航展示短時間段之后將標志184移動到展示的頂部邊緣。如 下文進一步描述,在一些實施例中,應(yīng)用程序要求用戶在導(dǎo)航地圖上輕擊以使頂部條、頂部 條的控件以及浮置控件返回,并且要求進行另一輕擊以再次將這些控件從地圖中移除。其 它實施例提供用于查看和移除這些控件的其它機制。
[0093] 作為允許用戶獲得導(dǎo)航體驗的另一種方式,一些實施例的地圖繪制應(yīng)用程序在信 息橫幅中提供UI項目,橫幅以表示感興趣點(POI)的圖針(pin)展來呈現(xiàn)。圖2例示關(guān)于 用戶與地圖繪制應(yīng)用程序交互以獲得路線規(guī)劃指引的三個階段205-215的實例。此實例在 使用汽車圖標230的情景下提供。
[0094] 第一階段205以3D地圖視圖例示地圖。如圖所示,3D控件250呈現(xiàn)為被加亮以 指示地圖處于3D地圖視圖。第一階段205還例示用于來自利用搜索查詢"Pizza"運行搜 索的搜索結(jié)果的兩個圖針的兩個信息橫幅,如圖所示。用戶選擇汽車圖標230。如上所述, 汽車圖標230用于示出通向圖針所表示的位置的一條或多條路線,該圖針與包括汽車圖標 230的橫幅相關(guān)聯(lián)。包括汽車圖標230的橫幅240還示出地點的簡述、星級以及用于開啟 POI的"平臺"的箭頭。
[0095] 第二階段210例示一些實施例的地圖繪制應(yīng)用程序響應(yīng)于先前階段205中對汽車 圖標230的選擇所示出的兩條路線,即路線1和路線2。用戶已經(jīng)選擇路線1,如由路線1 上的加亮區(qū)所指示。用戶還選擇了啟動按鈕。如上所述,在一些實施例中,啟動按鈕用于根 據(jù)所選擇的路線啟動導(dǎo)航。
[0096] 第三階段215例示地圖繪制應(yīng)用程序顯示指令標志260,該指令標志260是第一指 令的標志。地圖繪制應(yīng)用程序已經(jīng)在頂部條140中用結(jié)束按鈕270和概覽控件275來替換 清除控件255和啟動按鈕。結(jié)束按鈕用于結(jié)束路線的導(dǎo)航,并且概覽控件275用于在地圖 視圖中示出整個路線,如果示出整個路線必須調(diào)整縮放水平,那么通過調(diào)整所顯示地圖的 縮放水平來示出整個路線。在一些實施例中,地圖繪制應(yīng)用程序在頂部條140中顯示ETA、 即到達目標的時間量,以及距目標的剩余距離,如圖所示。
[0097] 當?shù)貓D繪制應(yīng)用程序接收對結(jié)束按鈕的選擇、同時地圖繪制應(yīng)用程序在路線檢查 模式下操作時,一些實施例的地圖繪制應(yīng)用程序通過返回地圖瀏覽模式來停止對所選擇路 線的檢查。一些實施例的地圖繪制應(yīng)用程序通過以下方式返回地圖瀏覽模式:從地圖中移 除所選擇路線,撤銷翻頁,以及用包括指引控件、搜索欄和書簽控件的一組其它控件來替換 頂部條中的信息和控件。即,地圖繪制應(yīng)用程序使得n頁面的外觀返回類似第一階段205 中示出的n頁面的n頁面。一些實施例的地圖繪制應(yīng)用程序在從檢查模式切換至地圖瀏 覽模式時并不使地圖朝另一區(qū)域偏移。
[0098] B. 2D 和 3D 導(dǎo)航
[0099] 一些實施例的導(dǎo)航應(yīng)用程序可以2D模式或3D模式顯示導(dǎo)航。如上所述,浮置控 件中的一個是允許用戶查看三維(3D)導(dǎo)航展示的3D控件250。圖3例示一些實施例的導(dǎo) 航應(yīng)用程序?qū)?D控件250提供作為用于進入3D導(dǎo)航模式的快速機制的方式。此圖以三個 階段305-315例示這個操作。第一階段305例示用戶在查看二維導(dǎo)航展示時選擇3D控件 150。
[0100] 第二階段310例示應(yīng)用程序轉(zhuǎn)變至3D展示的過程中的導(dǎo)航展示。如此圖中所示, 3D控件在此階段呈現(xiàn)為被加亮,以便指示導(dǎo)航展示已經(jīng)進入3D模式。如上所述,在一些實 施例中,導(dǎo)航應(yīng)用程序通過從三維場景中的特定位置渲染地圖視圖來生成導(dǎo)航地圖的3D 視圖,該特定位置可概念性地被認為是捕獲地圖視圖的虛擬攝像機的位置。以下參照圖5 來進一步描述這種渲染。
[0101] 隨后,第三階段315例示該應(yīng)用程序轉(zhuǎn)變至其3D外觀結(jié)束時的導(dǎo)航展示。如第二 階段和第三階段中建筑物的高度之間的差異所示,在一些實施例中,從2D導(dǎo)航轉(zhuǎn)變至3D導(dǎo) 航包括示出導(dǎo)航地圖中的三維對象正在變大的動畫。生成示出對象上升/下降和變大/變 小的此類動畫進一步描述在于2012年9月30日提交的名稱為"Displaying 3D Objects in a 3D Map Presentation"的美國專利申請13/632, 027中。美國專利申請13/632, 027 以引用方式并入本文。
[0102] 一些實施例使用從2D地圖視圖到3D地圖視圖或反之亦然的電影式轉(zhuǎn)變。例如, 當?shù)貓D繪制應(yīng)用程序在示出路線的起點位置時接收對3D控件250的選擇時,地圖繪制應(yīng)用 程序從2D地圖視圖開始,并且從2D第一虛擬攝像機視圖平滑地轉(zhuǎn)變至新的虛擬攝像機3D 視圖,該3D視圖更加放大并且指向路線的起點方向。如此,虛擬攝像機執(zhí)行平移、縮放和旋 轉(zhuǎn)操作的組合以便到達導(dǎo)航的路線的起點。即,虛擬攝像機沿弧移動,并且在該攝像機沿弧 向下移動時向上旋轉(zhuǎn)。另外,地圖繪制應(yīng)用程序可旋轉(zhuǎn)該弧自身,以使虛擬攝像機視點與路 線的初始路段對準。換句話講,地圖繪制應(yīng)用程序在電影式轉(zhuǎn)變期間使地圖旋轉(zhuǎn)。
[0103] 圖4例示一種設(shè)備400,該設(shè)備400以六個階段405-430顯示在地圖繪制應(yīng)用程序 從用于地圖瀏覽的非沉浸式地圖視圖轉(zhuǎn)變成用于導(dǎo)航的沉浸式地圖視圖時的該應(yīng)用程序。
[0104] 第一階段405例示用戶針對位置"Pizza Place"選擇快速路線按鈕,以便生成從 用戶的當前位置(設(shè)備400的屏幕的中心附近)到所選擇位置的路線。第二階段410例示 地圖繪制應(yīng)用程序顯示到達位置"Pizza Place"的路線435。在第二階段410,用戶選擇 "啟動"n控件440。因此,應(yīng)用程序開始進入導(dǎo)航。
[0105] 如圖所示,在第三階段415至第六階段430, 一些實施例使用從2D (或3D)非沉浸 式地圖視圖到3D沉浸式地圖視圖的電影式轉(zhuǎn)變。應(yīng)用程序顯示從其當前狀態(tài)(在410示 出)開始,并且從第一虛擬攝像機視角平滑地轉(zhuǎn)變至新的虛擬攝像機視角,新的虛擬攝像 機視角更加放大并且指向路線的起點方向。如此,虛擬攝像機可執(zhí)行平移、縮放和旋轉(zhuǎn)操作 的組合以便到達導(dǎo)航的路線的起點。如圖所示,在這些階段中,虛擬攝像機移動并旋轉(zhuǎn)到其 最終位置,該最終位置在第六階段430中示出的導(dǎo)航位置指示器(即,指向器)后方。
[0106] 另外,在一些實施例中,地圖繪制應(yīng)用程序提供兩種不同類型的3D展示--沉浸 式3D展示和非沉浸式3D展示。在一些實施例中,沉浸式展示不僅顯示更多幾何形狀,而且 顯示關(guān)于非沉浸式展示中顯示的幾何形狀的更多細節(jié)。地圖繪制應(yīng)用程序還提供非沉浸式 展示和沉浸式展示之間的平滑轉(zhuǎn)變。
[0107] 為實現(xiàn)這種平滑轉(zhuǎn)變并且生成其它新型效果,一些實施例的地圖繪制應(yīng)用程序使 用新型圖像處理流水線。該流水線執(zhí)行多種預(yù)載操作,以便下載、檢索和/或解壓縮導(dǎo)航展 示可能需要的地圖片,為其渲染操作準備其渲染流水線,并且準備復(fù)式流水線來在沉浸式 3D展示和非沉浸式3D展示之間平滑轉(zhuǎn)變。為了顯示沉浸式3D展示和非沉浸式3D展示,一 些實施例不得不生成要供客戶端設(shè)備渲染的多個片,以便生成道路、建筑物和周圍景物。在 一些實施例中,此類片的示例包括用于非沉浸式3D展示的道路和建筑物片以及用于沉浸 式3D展示的導(dǎo)航和建筑物片。此流水線描述在上文所并入的于2012年9月30日提交的 名稱為"Problem Reporting in Maps"的美國專利申請13/632, 102中。此流水線另外詳 細描述在于2012年9月30日提交的名稱為"Virtual Camera for 3D Maps"的美國專利 申請13/632,040中。美國專利申請13/632,040以引用方式并入本文。
[0108] 在一些實施例中,非沉浸式查看模式和沉浸式查看模式是用于查看具有不同構(gòu)建 體和/或幾何形狀的不同3D地圖的查看模式。例如,一些實施例的非沉浸式查看模式用于 查看包括道路、建筑物、土地覆蓋等的3D地圖。沉浸式查看模式用于查看更詳細的3D地 圖,該3D地圖包括與用于非沉浸式查看模式的3D地圖相同或類似的元素(例如,道路、建 筑物、土地覆蓋等)。然而,這種更詳細的3D地圖還包括提供更逼真且豐富的3D地圖的更 高程度細節(jié)構(gòu)建體(例如,樹木、葉、人行道、路中部分、道路的車道、路面浙青、路中部分、 人行橫道等)。
[0109] 此外,非沉浸式查看模式和沉浸式查看模式可限定用于在不同范圍的縮放水平下 查看3D地圖。例如,一些實施例的非沉浸式查看模式限定用于在低縮放水平(例如,縮放水 平0-14)下查看3D地圖,而一些實施例的沉浸式查看模式限定用于在高縮放水平(例如, 縮放水平16-21)下查看3D地圖。在不同實施例中,查看模式可限定在任何數(shù)目的不同縮放 水平下查看。在一些情況下,與針對非沉浸式查看模式所限定的縮放水平相比,沉浸式查看 模式的縮放水平的范圍限定為更高縮放水平、更低縮放水平、相同縮放水平,或者限定為與 針對非沉浸式查看模式所限定的縮放水平重疊的縮放水平。這些查看模式和地圖繪制應(yīng)用 程序的其它方面描述在上文所并入的于2012年9月30日提交的名稱為"Virtual Camera for 3D Maps"的美國專利申請13/632, 040中。
[0110] 1.虛擬攝像機
[0111] 一些實施例的導(dǎo)航應(yīng)用程序能從多個視點顯示導(dǎo)航地圖。應(yīng)用程序可以三維(3D) 或以二維(2D)顯示地圖。3D地圖是所生成的對如由虛擬攝像機所看到的虛擬場景的模擬。 圖5呈現(xiàn)例示虛擬攝像機512的概念的簡化實例。當渲染3D導(dǎo)航地圖時,虛擬攝像機是3D 地圖場景中的位置的概念化,設(shè)備從該位置渲染場景的3D視圖。圖5例示包括四個對象、 即兩座建筑物和兩條交叉道路的3D導(dǎo)航地圖場景510中的位置。為例示虛擬攝像機概念, 此圖例示三個場景,每個場景對應(yīng)于不同虛擬攝像機位置(即,不同渲染位置)和顯示在設(shè) 備上的不同所得視圖。
[0112] 第一階段501示出虛擬攝像機512位于第一位置處,以一角度(例如,30度角度) 朝下指向3D場景510。通過從階段501中示出的位置和角度渲染3D場景,應(yīng)用程序生成3D 地圖視圖518。從此位置,攝像機指向一個位置,即設(shè)備前方的移動位置。虛擬攝像機512 保持位于設(shè)備的當前位置后方。在這種情況下,"位于當前位置后方"是指與設(shè)備所移入的 當前位置在相反方向上沿導(dǎo)航應(yīng)用程序的限定路徑向后。
[0113] 導(dǎo)航地圖視圖518看起來像是由攝像機從設(shè)備的位置指示器516的后上方拍攝。 虛擬攝像機的位置和角度使位置指示器516位于導(dǎo)航地圖視圖518的底部附近。這還導(dǎo)致 屏幕的大部分被設(shè)備現(xiàn)在位置前方的街道和建筑物填滿。相比之下,在一些實施例中,位置 指示器516位于屏幕的中心,屏幕的一半表示設(shè)備前方的事物,而另一半表示設(shè)備后方的 事物。為簡化該圖,并未針對視圖518、528和538描繪道路標志。
[0114] 第二階段502示出虛擬攝像機512位于不同位置處,以較大的第二角度(例 如,-45° )朝下指向場景510。應(yīng)用程序從此角度渲染場景510,從而產(chǎn)生3D導(dǎo)航地圖視 圖528。建筑物和道路都小于它們在第一導(dǎo)航地圖視圖518中的圖示。虛擬攝像機512再 次位于場景510中的位置指示器516的后上方。這再次使得位置指示器顯現(xiàn)在3D地圖視圖 528的下部中。攝像機的位置和取向同樣再次使得屏幕的大部分顯示位置指示器516 (即, 攜有設(shè)備的汽車的位置)前方的事物,這是進行導(dǎo)航的人需要知道的內(nèi)容。
[0115] 第三階段503示出虛擬攝像機512處于俯視視角,向下觀看用于渲染3D視圖518 和528的3D地圖場景510中的位置。從此視點所渲染的場景是2D地圖視圖538。不像在 一些實施例中是透視3D渲染操作的第一階段和第二階段的3D渲染操作,第三階段中的渲 染操作相對簡單,因為它僅需要修剪由應(yīng)用程序或用戶所指定的縮放水平來辨識的2D地 圖的一部分。因此,在這種情況下,虛擬攝像機表征一定程度地使對應(yīng)用程序的操作的描述 不必要地復(fù)雜,因為修剪2D地圖的一部分不是透視渲染操作。
[0116] 在第三階段503,在一些實施例中,在攝像機從3D透視視角切換至2D俯視視角時, 地圖繪制應(yīng)用程序自從特定視點方向渲染3D場景切換至修剪2D場景。這是因為在這些實 施例中,應(yīng)用程序被設(shè)計成使用簡化渲染操作,這種簡化渲染操作更為容易并且不會生成 不必要的透視偽像。然而,在其它實施例中,地圖繪制應(yīng)用程序使用透視渲染操作來從俯視 虛擬攝像機位置渲染3D場景。在這些實施例中,所生成的2D地圖視圖一定程度地不同于 第三階段503中例示的地圖視圖538,因為遠離視圖中心的任何對象已失真,失真越大,對 象與視圖中心的距離越遠。
[0117] 虛擬攝像機512在不同實施例中沿不同軌線移動。圖5中例示兩條這樣的軌線550 和555。在這兩條軌線中,攝像機沿弧移動,并且在攝像機沿弧向上移動時向下旋轉(zhuǎn)。軌線 555與軌線550的不同之處在于:在軌線555中,攝像機在其沿弧向上移動時從當前位置向 后移動。
[0118] 當沿弧中的一條移動時,攝像機旋轉(zhuǎn)以維持位于位置指示器前方的點處于攝像機 的焦點處。在一些實施例中,用戶可關(guān)閉三維視圖并且采用純粹的二維視圖。例如,一些實 施例的應(yīng)用程序允許通過使用3D按鈕560來打開和關(guān)閉三維模式。3D按鈕560對于逐向 導(dǎo)航特征而言必不可少,在逐向?qū)Ш教卣髦校?D按鈕560具有指示器和開關(guān)的作用。當3D 關(guān)閉時,攝像機將維持2D導(dǎo)航體驗;而當3D打開時,在3D查看角度不適當時(例如,在圍 繞在3D模式下將被遮擋的拐角行走時)可能仍存在一些俯視視點。
[0119] 2. 3D 控件
[0120] 圖6以六個不同階段605-630例示一些實施例的地圖繪制應(yīng)用程序改變3D控件 的外觀以指示地圖視圖的不同的2D和3D狀態(tài)。第一階段605例示地圖繪制應(yīng)用程序正在 顯示地圖和包括3D控件150的浮置控件。地圖繪制應(yīng)用程序正在某一低縮放水平下以2D 模式顯示地圖(地圖尚未放大太多),如圖所示。3D控件150使用第一外觀(例如,灰色字 母"3D")來顯示,以便指示3D地圖數(shù)據(jù)在這個特定縮放水平下不可用。第一階段605還示 出地圖繪制應(yīng)用程序正在接收對地圖進行放大(即,增大縮放水平)的用戶手勢輸入。
[0121] 第二階段610示出地圖繪制應(yīng)用程序正在高于其在先前階段605所處的縮放水平 下顯示地圖。然而,3D控件150保持第一外觀,因為3D地圖數(shù)據(jù)即使在此特定較高縮放水 平下也仍然不可用。第二階段610還示出地圖繪制應(yīng)用程序正在接收對地圖進行進一步放 大的用戶手勢輸入。
[0122] 第三階段615示出地圖繪制應(yīng)用程序正在高于其在先前階段610所處的縮放水平 下顯示地圖。地圖繪制應(yīng)用程序已將3D控件150的外觀改變成第二外觀(例如,黑色字母 "3D"),以便指示3D地圖數(shù)據(jù)在此縮放水平下可用。當?shù)貓D繪制應(yīng)用程序接收對3D控件 150的選擇時,一些實施例的地圖繪制應(yīng)用程序?qū)?D控件150的外觀改變成第三外觀 (例如,藍色字母"3D")并且以3D模式顯示地圖(例如,通過從用于2D的筆直向下視圖改 變成透視圖)。第三外觀因此將指示地圖是以3D模式來顯示。第三階段615示出地圖繪制 應(yīng)用程序正在接收將地圖更進一步放大至更高縮放水平的另一手勢輸入。第三階段615示 出地圖繪制應(yīng)用程序正在這個縮放水平下將地圖中的建筑物顯示為灰色框。
[0123] 第四階段620示出地圖繪制應(yīng)用程序正在高于其在先前階段615所處的縮放水平 下顯示地圖。地圖繪制應(yīng)用程序已將3D控件150的外觀改變成第四外觀(例如,呈第一顏 色的建筑物圖標,如圖所示),以便指示用于渲染沉浸式3D地圖視圖的3D沉浸式地圖數(shù)據(jù) 在此縮放水平下可用。第四階段620還示出一些實施例的地圖繪制應(yīng)用程序正在接收對3D 控件150的選擇。
[0124] 第五階段625和第六階段630示出地圖繪制應(yīng)用程序在其開始提供3D沉浸式地 圖視圖后提供的后續(xù)視圖(雖然不一定是連續(xù)視圖)。在一些實施例中,縮放水平在第五階 段和第六階段之間并未改變,但是地圖視圖中的建筑物的高度增大,以提供傳達視圖正從 2D視圖變動成3D沉浸式地圖視圖的動畫。另外,從第四階段620到第五階段625,地圖繪 制應(yīng)用程序已將3D控件的外觀改變成第五外觀(例如,呈第二顏色的建筑物圖標,如圖所 示),以便指示地圖是以3D沉浸式視圖來顯示。
[0125] 3.視圖的自動改奪
[0126] 一些實施例的應(yīng)用程序允許使用任何特定虛擬攝像機角度,而不僅是這里指定的 30度和60度角度。一些實施例的應(yīng)用程序允許用戶設(shè)定攝像機的向下角度。一些實施例 的應(yīng)用程序出于各種原因(例如,為保持特定焦點位于屏幕的頂部附近)而自動調(diào)整攝像 機的角度。在其它實施例中,導(dǎo)航應(yīng)用程序自動設(shè)定攝像機的角度,但允許用戶覆寫自動設(shè) 定的角度。
[0127] 在一些實施例中,當以3D模式運行導(dǎo)航應(yīng)用程序的設(shè)備將要到達具有轉(zhuǎn)彎的路 口時,導(dǎo)航應(yīng)用程序切換至2D模式,以便使用戶能夠更清楚地辨識轉(zhuǎn)彎。圖7例示一些實 施例的從3D模式到2D模式的切換。該圖以五個階段701-705示出。在階段701中,應(yīng)用 程序以3D視圖示出導(dǎo)航地圖。導(dǎo)航框710示出在50英尺處右轉(zhuǎn)。地圖712呈3D形式,位 置標識符714也是如此。
[0128] 當設(shè)備在階段702中接近路口時(如由導(dǎo)航框720所指示),3D地圖712切換成 2D地圖722,其中位置指示器724也呈2D形式。地圖繪制應(yīng)用程序還改變3D控件150的 外觀,以便指示地圖現(xiàn)在呈2D形式。地圖722在設(shè)備在階段703中繞過拐角時保持呈2D 形式。在設(shè)備繞過拐角時,階段703中具有指令"右轉(zhuǎn)進入A大街"的導(dǎo)航框730被替換成 階段704中具有指令"沿A大街繼續(xù)直走0. 5英里"的導(dǎo)航框740。地圖在階段704中保持 呈2D形式直到已經(jīng)完全導(dǎo)航通過拐角,這時,在階段705中,地圖返回3D視圖,該3D視圖 在導(dǎo)航框750中具有新指令"目標在您左側(cè)0. 3英里處"。地圖繪制應(yīng)用程序還改變3D控 件150的外觀,以便指示地圖現(xiàn)在返回呈3D形式。
[0129] 在一些實施例中,導(dǎo)航應(yīng)用程序針對每一位置更新(例如,每秒一次)確定以下五 條信息中的一些或所有信息。第一,導(dǎo)航應(yīng)用程序確定參考點的位置(即,用戶的位置)。
[0130] 第二,導(dǎo)航應(yīng)用程序確定虛擬攝像機的焦點的位置,該位置用于確定虛擬攝像機 可能面對的方向。如果用戶偏離路線,焦點將沿用戶的行進方向(如果可確定用戶的行進 方向)在用戶前方的固定距離處,或在用戶北方的固定距離處(如果無法確定用戶的行進 方向)。如果用戶在路線上,焦點將沿路線在用戶前方的固定距離處,其中從用戶到此焦點 的向量與用戶的行進方向之間的角度限制在最大值。這允許虛擬攝像機在用戶實際轉(zhuǎn)彎之 前稍微窺視轉(zhuǎn)彎的四周。例如,如果路線在前方不遠處轉(zhuǎn)過拐角,焦點將是從設(shè)備的當前位 置開始、圍繞拐角的點。由于使虛擬攝像機轉(zhuǎn)動以面對該實際點可導(dǎo)致虛擬攝像機直接面 對建筑物,虛擬攝像機就其可沿目前方向看到多遠距離受到限制。第三,導(dǎo)航應(yīng)用程序確定 感興趣點的位置(例如,即將到來的交叉路口的位置)。
[0131] 第四,導(dǎo)航應(yīng)用程序確定虛擬攝像機查看樣式(居中俯視、向前俯視、或屋頂)。 "居中俯視"是指虛擬攝像機應(yīng)筆直向下看用戶的位置,使得用戶的位置位于屏幕中心。"向 前俯視"是指虛擬攝像機應(yīng)筆直向下用戶的位置,使得用戶的位置朝向屏幕底部。"屋頂"是 指虛擬攝像機應(yīng)位于用戶的位置后方并且傾斜,使得其沿從用戶的位置到焦點的向量向前 看。如果用戶偏離路線或無法確定用戶的行進方向(例如,當用戶停車時),虛擬攝像機將 采用居中俯視查看樣式。否則,查看樣式將由用戶是否已經(jīng)請求"2D"導(dǎo)航來確定。如果用 戶已經(jīng)請求2D導(dǎo)航,查看樣式將是向前俯視。否則,查看樣式將是屋頂。
[0132] 第五,導(dǎo)航應(yīng)用程序確定虛擬攝像機聚焦樣式(例如,巡航聚焦或硬聚焦)。"巡 航聚焦樣式"是指虛擬攝像機應(yīng)基于查看樣式采用預(yù)設(shè)高度和俯仰角。"硬聚焦"是指虛擬 攝像機應(yīng)調(diào)整其高度(在居中俯視或向前俯視查看樣式的情況下)或俯仰角(在屋頂查看 樣式的情況下),使得給定感興趣點正好在屏幕上(即,在用戶接近感興趣點時,虛擬攝像 機應(yīng)聚焦于感興趣點上)。當遠離交叉路口時,導(dǎo)航應(yīng)用程序使虛擬攝像機處于巡航聚焦 模式。當接近"有趣的"交叉路口時,導(dǎo)航應(yīng)用程序使虛擬攝像機處于如上所述的硬聚焦模 式,并且交叉路口的位置(感興趣點)將被傳送到虛擬攝像機。當處于硬聚焦模式時,應(yīng)用 程序調(diào)整虛擬攝像機的高度(在居中俯視或向前俯視查看樣式的情況下)或俯仰角(在屋 頂查看樣式的情況下),使得交叉路口位于屏幕上的合理位置。使用用戶將離開交叉路口時 所處的角度來確定給定交叉路口是"有趣"到足以聚焦在其上。如果角度足夠大(例如,向 右轉(zhuǎn)90度),交叉路口被認為是"有趣"并且虛擬攝像機將聚焦在交叉路口上。如果角度太 ?。ɡ?,匯入高速公路),虛擬攝像機將停留在巡航聚焦樣式。
[0133] 根據(jù)這五條信息,導(dǎo)航應(yīng)用程序計算虛擬攝像機的期望位置和取向。根據(jù)期望位 置和取向,可求出以下三個關(guān)鍵點的位置:(1)虛擬攝像機的位置,(2)虛擬攝像機的向前 向量與地面之間的交叉點,以及(3)沿虛擬攝像機的右向量的點。這三個點彼此獨立地如 下來動畫繪制:(1)當新點可用時,應(yīng)用程序擬合最近估評位置/該點的切線與新點之間的 三次多項式;并且(2)針對動畫繪制的每個步驟,導(dǎo)航應(yīng)用程序評估每條曲線的三次多項 式,并且根據(jù)三次多項式求出虛擬攝像機位置和取向。
[0134] 4.用戶對攝像機高度的調(diào)整
[0135] 除了(或代替)使導(dǎo)航應(yīng)用程序控制攝像機(例如,在圍繞拐角行走時從3D轉(zhuǎn)到 2D),一些實施例還允許用戶調(diào)整攝像機的水平。一些實施例允許用戶用兩指做出命令手 勢,以便調(diào)整攝像機的距離(高度)和角度。一些實施例甚至允許多種類型的手勢來控制 攝像機。圖8例示通過收縮手勢和展開手勢對虛擬攝像機的距離進行的調(diào)整。該圖以三個 階段801-803示出。在階段801中,應(yīng)用程序示出虛擬攝像機812處于默認3D查看水平情 況下的基本場景810以及從場景810渲染的屏幕視圖814?;緢鼍鞍瑑蓚€建筑物和一 個T形路口。在階段801中,建筑物是從45度向下角度并且以使得建筑物看起來為特定尺 寸的特定高度來查看。位置指示器816也被顯示為具有特定尺寸。
[0136] 在階段802中,用戶通過以下方式做出手勢:使兩個指尖在設(shè)備的屏幕上、即在屏 幕視圖824上位于彼此附近,并且在指尖位于屏幕上時使指尖移動分開。使指尖移動分開 具有使地圖(指間部分和地圖的其余部分兩者)變大的作用。為了使地圖中的事物看起來 更大,應(yīng)用程序使得虛擬攝像機812放大。在一些實施例中,地圖繪制應(yīng)用程序使用來使虛 擬攝像機812沿著移動的線850是由虛擬攝像機812的前部和虛擬攝像機812的焦點形成 的線。一些實施例的地圖繪制應(yīng)用程序基于用戶的輸入使虛擬攝像機812沿由虛擬攝像機 812的前部和3D地圖810中的一個位置形成的線移動,以便放大3D地圖810的視圖。
[0137] 在階段802的放大之后,用戶決定在階段803進行縮小。在此階段中,用戶使兩指 位于屏幕上并且使得手指更靠近在一起。使得手指更靠近在一起具有使地圖(指間部分和 地圖的其余部分兩者)收縮的作用??s小調(diào)整通過使虛擬攝像機812沿線855移動離3D地 圖810更遠來實現(xiàn)。在一些實施例中,地圖繪制應(yīng)用程序使用以使虛擬攝像機812沿著移 動的線855是由虛擬攝像機812的前部和虛擬攝像機812的焦點形成的線。一些實施例的 地圖繪制應(yīng)用程序基于用戶的輸入使虛擬攝像機812沿由虛擬攝像機812的前部和3D地 圖810中的一個位置形成的線移動,以便放大3D地圖810的視圖。
[0138] 在此位置使用虛擬攝像機812渲染3D地圖視圖產(chǎn)生3D地圖視圖834,其中建筑物 和道路看起來比3D地圖視圖824中例示的位置更遠。如由虛擬攝像機812的虛線型式所 示,虛擬攝像機812沿線855移動離3D地圖810更遠。
[0139] 除了可通過放大和縮小控制之外,一些應(yīng)用程序允許用戶改變虛擬攝像機的角 度。圖9例示角度可通過手勢來調(diào)整的攝像機的實施例。該圖以三個階段901-903示出。 在階段901中,攝像機以45度向下指向場景910。場景910包含屏幕視圖914中示出的兩 個建筑物和一個T形路口。建筑物是從特定角度并且以特定尺寸示出。位置指示器916也 被顯示為具有特定尺寸。
[0140] 在階段902中,用戶已使兩指920彼此近似水平地位于屏幕上并且向上拖動它們。 這具有使用手指向上拖動場景的明顯作用。場景上升通過虛擬攝像機912下降并且將其視 角從45度改變成30度來實現(xiàn)。在屏幕視圖924中,建筑物和位置指示器看起來比階段901 中高。
[0141] 在用戶在階段902中向上拖動場景之后,用戶隨后在階段903中向下拖動場景。為 此,用戶再次使兩指930位于屏幕上并且向下拖動它們。這使場景隨著手指930 -起向下 拖動。場景下降通過虛擬攝像機912上升并且將其向下與場景910所成的角度改變成60 度來實現(xiàn)。在階段903中,攝像機912已經(jīng)向上移動更遠,并且比在階段901中向下成更大 角度。因此,建筑物和位置標識符916在階段903中同樣看起來比在階段901中更矮且更 小。
[0142] 在一些實施例中,地圖繪制應(yīng)用程序針對不同操作(例如,平移、旋轉(zhuǎn)、從2D進入 到3D)提供一種慣性效應(yīng)。當用戶提供特定類型的輸入(例如,以比閾值速度大的速度終 止的輸入)來使3D地圖平移時,地圖繪制應(yīng)用程序產(chǎn)生使得3D地圖繼續(xù)平移并且減速直 至止點的慣性效應(yīng)。在一些實施例中,慣性效應(yīng)為用戶提供模仿現(xiàn)實世界中的行為的與3D 地圖的更真實交互。慣性效應(yīng)和慣性效應(yīng)的具體實施的細節(jié)描述在以上所并入的名稱為 "Virtual Camera for 3D Maps" 的美國專利申請 No. 13/632,040 中。
[0143] 一些實施例的應(yīng)用程序允許攝像機的距離和角度被獨立地控制。例如,應(yīng)用程序 允許由收縮和展開手指手勢來控制距離,并且允許通過拖動水平放置的手指來控制角度。 其它實施例使用正在執(zhí)行的任一手勢來設(shè)定攝像機的距離或角度,而其它變量自動地被設(shè) 定。雖然圖8和圖9示出在某一方向上執(zhí)行手勢從而引起某些結(jié)果,但在一些實施例中,可 使這些手勢之一或二者顛倒。例如,在一些實施例中,向下拖動水平放置的手指可使攝像機 向下而非使場景向下。這將具有以下作用:在手指向上移動時使場景向下移動,在手指向下 移動時使場景向上移動。
[0144] 圖10概念性地例示一些實施例的地圖繪制應(yīng)用程序所提供的特征,該特征用于 將虛擬攝像機的位置維持在沿弧的限定范圍內(nèi)。具體地,圖10例示處于三個不同階段 1005-1015的虛擬攝像機1000,這些階段1005-1015顯示虛擬攝像機1000的位置維持在弧 1050的限定范圍內(nèi)。如圖10所示,3D地圖1035中的位置包括兩個建筑物和形成一個T形 路口的兩條道路。
[0145] 第一階段1005示出虛擬攝像機1000沿弧1050處于特定位置。如圖所示,弧1050 表示限定范圍(例如,角度范圍),虛擬攝像機1000在該限定范圍內(nèi)是可移動的。第一階段 1005還示出沿弧1050的三個位置1055-1065(例如,透視視角角度)。在該示例中,地圖繪 制應(yīng)用程序使虛擬攝像機1000沿弧1050在弧1050的高視點端(例如,在虛擬攝像機1000 最大程度地向下傾斜時沿弧1050的位置)與位置1055之間移動,其方式類似于以上參考 圖9所述的方式。在第一階段1005中基于虛擬攝像機1000的位置渲染3D地圖視圖產(chǎn)生 3D地圖視圖1025。
[0146] 當虛擬攝像機1000在朝著弧1050的低視點端移動時經(jīng)過位置1055時,地圖繪制 應(yīng)用降低虛擬攝像機1000朝著弧1050的低視點端移動的速度(例如,減速),而不管用戶 所提供的輸入。在一些實施例中,地圖繪制應(yīng)用程序以恒定速率降低虛擬攝像機1000的速 度;而在其它實施例中,地圖繪制應(yīng)用程序以指數(shù)速率降低虛擬攝像機1000的速度。在一 些實施例中,使用用于減小虛擬攝像機1000的速度的另外和/或不同方法。
[0147] 第二階段1010示出已經(jīng)使虛擬攝像機1000沿弧1050移動至在弧1050的低視點 端處或附近的位置。如圖所示,用戶正在提供輸入以便通過以下方式調(diào)整3D地圖1035的 視圖的視點:使兩指觸摸在屏幕上并且在向上方向上拖動兩指(例如,橫掃手勢)。響應(yīng)于 該輸入,地圖繪制應(yīng)用程序使虛擬攝像機1000朝著弧1050的低視點端移動,同時使虛擬攝 像機1050向上傾斜。當虛擬攝像機沿弧1050到達位置1065時,地圖繪制應(yīng)用程序阻止虛 擬攝像機1000更向下移動并超過位置1065,即使在用戶繼續(xù)提供用于減小3D地圖1035的 視圖的視點的輸入(例如,用戶繼續(xù)在觸摸屏上向上拖動兩指)時也是如此。
[0148] 在一些實施例中,當用戶停止提供用于減小3D地圖1035的視圖的視角的輸入 (例如,用戶將兩指從觸摸屏抬起)時,地圖繪制應(yīng)用程序使虛擬攝像機1000的位置沿弧 1050從位置1065向上"回彈"或"回跳"到位置1060。當?shù)貓D繪制應(yīng)用程序正在回彈或回 跳運動期間基于虛擬攝像機1000的視角生成或渲染3D地圖1035的3D地圖視圖時,所生 成的3D地圖視圖提供簡要顯示3D地圖視圖的向下回彈或回跳的回彈動畫,以向用戶指示 地圖視圖的視點無法更進一步減小。使用定位成具有此角度的虛擬攝像機1000來渲染3D 地圖視圖產(chǎn)生3D地圖視圖1030,與地圖視圖1025相比,3D地圖視圖1030中建筑物和道路 更高。
[0149] 第三階段1015示出在地圖繪制應(yīng)用程序已響應(yīng)于用戶停止提供輸入而使虛擬攝 像機1000的位置回彈或回跳至位置1060之后的虛擬攝像機1000。不同實施例使用用于實 現(xiàn)虛擬攝像機1000的回彈或回跳的不同技術(shù)。例如,一些實施例的地圖繪制應(yīng)用程序開始 使虛擬攝像機1000沿弧1050快速加速達到限定距離,或直至虛擬攝像機1000達到限定速 度。隨后,地圖繪制應(yīng)用程序使虛擬攝像機1000沿弧1050在到位置1060的剩余距離上減 速。在一些實施例中,使用實現(xiàn)回彈或回跳效果的其它方式。在第三階段1015中使用沿弧 1050定位在位置1060處的虛擬攝像機1000來渲染3D地圖視圖產(chǎn)生3D地圖視圖1040,與 地圖視圖1030相比,3D地圖視圖1040中的建筑物看起來稍小且稍平并且道路看起來稍小。
[0150] 如上所述,圖10例示一種用于阻止虛擬攝像機移動超過弧的低視點端的技術(shù)。另 選地或結(jié)合阻止虛擬攝像機移動超過弧的低視點端,一些實施例的地圖繪制應(yīng)用程序利用 用于阻止虛擬攝像機移動超過弧的高視點端的類似技術(shù)。此外,圖10示出以下位置的示 例:沿弧的使虛擬攝像機減慢的位置、沿弧的阻止虛擬攝像機移動經(jīng)過的位置、以及沿弧的 虛擬攝像機往回回跳或回彈到的位置。不同實施例以任何數(shù)目的不同方式限定位置。例如, 在一些實施例中,沿弧的使虛擬攝像機減慢的位置與沿弧的虛擬攝像機回跳或回彈到的位 置相同或在其附近。
[0151] C.其他用戶奪互
[0152] L控件的顯現(xiàn)和消失
[0153] 一些實施例的應(yīng)用程序在導(dǎo)航時具有全屏模式。即,在指引的實際提供期間,通常 占據(jù)一部分屏幕表面的控件被隱藏。圖11例示一些實施例的全屏模式。該圖以六個階段 1101-1106示出。在階段1101中,通過選擇啟動按鈕1110來激活導(dǎo)航指令集。通過選擇啟 動按鈕,用戶從兩條可能路線中選擇加亮路線。未加亮的路線消失,并且較小比例尺導(dǎo)航地 圖1121在階段1102中顯現(xiàn)。第一階段1101示出道路名稱在道路上,這是因為地圖繪制應(yīng) 用程序正在顯示地圖視圖。第一階段1101還示出了位置控件1130因地圖繪制應(yīng)用程序正 在顯示地圖視圖而顯示出來。對列表控件1132的選擇將會使得地圖繪制應(yīng)用程序以列表 格式顯示可用路線。
[0154] 另外在階段1102中,連同結(jié)束控件1122、行程狀態(tài)區(qū)域1124(包括ETA、行程持續(xù) 時間估計值以及計劃路線指示器的距離)、概覽按鈕1126、狀態(tài)條1127和3D控件1128示 出第一指令1120。結(jié)束按鈕1122結(jié)束導(dǎo)航指令的運行。狀態(tài)區(qū)域1124顯示關(guān)于計劃路線 的信息。概覽按鈕1126顯示對路線的概覽。3D控件是導(dǎo)航應(yīng)用程序正在以3D模式還是以 2D模式示出場景的指示器以及用于進入和離開3D模式的開關(guān)。在此階段對列表控件1132 的選擇將會使得地圖繪制應(yīng)用程序以列表格式顯示導(dǎo)航指令集。此階段還示出道路名稱被 顯示在橫幅中而不是在道路上,這是因為地圖繪制應(yīng)用程序正在以導(dǎo)航模式操作。
[0155] 在短暫時間之后,結(jié)束控件1122、列表控件1132、狀態(tài)區(qū)域1124、概覽按鈕1126 和3D控件1128消失。在一些實施例中,控件突然消失;而在其它實施例中,控件逐漸淡出。 在一些實施例中,在屏幕的頂部的狀態(tài)條1127也會消失,并且導(dǎo)航框1120移動到屏幕的頂 部。
[0156] 在階段1103中示出控件的不存在和導(dǎo)航框1120的移動,其中看到導(dǎo)航地圖1121 上除上升的導(dǎo)航框1120之外不具有控件。在一些實施例中,用戶可通過輕擊屏幕來恢復(fù)隱 藏的控件。這在階段1104和1105中演示。在階段1104中,用戶用手指1140輕擊屏幕。 在階段1105中,由于前一階段中的輕擊,控件返回并且導(dǎo)航框1120向下退回至其初始位 置?;謴?fù)的控件包括結(jié)束控件1122、狀態(tài)區(qū)域1124、概覽按鈕1126、狀態(tài)條1127和3D控 件1128。一旦控件返回,用戶就可通過輕擊來使控件再次消失,如在階段1105中所示,其中 用戶用手指1150輕擊屏幕來將導(dǎo)航應(yīng)用程序恢復(fù)成階段1106中的全屏模式。在一些實施 例中,除了隱藏的控件之外,與地圖的觸摸交互在全屏模式下受到很大限制。在一些實施例 中,存在更多在一些模式下被顯示但是在全屏模式下被隱藏的控件(例如,列表控件)。
[0157] 在一些實施例中,當控件被顯示并且狀態(tài)條有附加內(nèi)容(例如,示出正進行的呼 叫的時長的電話呼叫狀態(tài)條)時,導(dǎo)航框被縮短以便為擴展的狀態(tài)條制造更多空間。這在 圖12中示出,圖12例示在設(shè)備上的電話呼叫期間具有控件被隱藏和顯示的導(dǎo)航應(yīng)用程序。 圖12包括階段1201和1202。在階段1201中,導(dǎo)航應(yīng)用程序的控件是隱藏的,并且導(dǎo)航框 1210和地圖1215是可見的。用戶用手指1217在觸摸屏上輕擊以命令導(dǎo)航應(yīng)用程序顯示其 控件。在階段1202中,導(dǎo)航應(yīng)用程序顯示其控件1220并且還顯示位于狀態(tài)條1224下方的 電話呼叫狀態(tài)條1222。導(dǎo)航應(yīng)用程序由于電話呼叫狀態(tài)條1222而具有較少空間。為了補 償可用于導(dǎo)航應(yīng)用程序的較小量的屏幕區(qū)域,一些實施例的導(dǎo)航應(yīng)用程序在電話呼叫狀態(tài) 條1222在屏幕上時使導(dǎo)航框1210收縮。在一些實施例中,當導(dǎo)航框收縮時,框中的文本和 /或方向箭頭被更改以配合可用于文本和箭頭的減小量的區(qū)域。
[0158] 2.導(dǎo)航結(jié)束
[0159] 在由導(dǎo)航應(yīng)用程序運行導(dǎo)航指令集的普通過程中,在設(shè)備到達需要導(dǎo)航指令的 每個新的路口時,用于下一這種路口的指令顯現(xiàn)。這會繼續(xù),直至設(shè)備到達它的目標。當 到達目標時,導(dǎo)航應(yīng)用程序停止提供指令并且所編程路線的延伸結(jié)束。圖13以四個階段 1301-1304例示所編程路線的結(jié)束。在階段1301中,應(yīng)用程序正在控件被隱藏的情況下運 行,并且導(dǎo)航框1310正在示出距離目標僅1000英尺。在地圖上,目標被顯示為具有圓頭的 圖針1312。然而,本領(lǐng)域的普通技術(shù)人員應(yīng)當理解,可在其它實施例的應(yīng)用程序中使用其它 符號,并且在一些實施例中,并不使用符號,而只是線條終結(jié)。當設(shè)備移動更靠近設(shè)備的目 標時,導(dǎo)航應(yīng)用程序倒計距離。在階段1302中,導(dǎo)航框1320示出去往目標僅有100英尺。 在階段1303中,設(shè)備剛剛到達設(shè)備的目標。導(dǎo)航框1330指示目標位于左側(cè)并且包括指向 靶中心的箭頭的符號。之后,在階段1304中,在設(shè)備已經(jīng)到達設(shè)備的目標時,導(dǎo)航應(yīng)用程序 關(guān)閉導(dǎo)航框1320,從而給用戶留下地圖1340而無另外指引。
[0160] 在一些實施例中,目標可能在無法通過汽車到達的地方,例如,終點圖針可能在公 園中間。在一些這樣的實施例中,駕駛指引將會結(jié)束,但將存在用于步行的繼續(xù)指引。在其 它這樣的實施例中,應(yīng)用程序?qū)⒉唤o出用于步行的文本指引,但是在以地圖模式或以鎖定 模式顯示地圖時仍將圖針維持在該位置(例如,公園中間)上。在一些這樣的實施例中,行 程的機動車部分結(jié)束之后的最后指令將是一個指引"請步行到達"。
[0161] 圖13例示在導(dǎo)航應(yīng)用程序全程將用戶引導(dǎo)到用戶的最終目標時所發(fā)生的情況。 然而,在一些實施例中,用戶可改變用戶關(guān)于獲得指引的想法。用戶可能想要停止沿著路線 走、改變目標、或因一些其它原因而可能想要結(jié)束導(dǎo)航指令集的運行。因此,一些實施例的 應(yīng)用程序包括"結(jié)束"按鈕。結(jié)束按鈕停止導(dǎo)航指令集的運行,并且在一些實施例中使得用 戶處于與他們已經(jīng)到達目標(例如,沒有指令但有地圖)時相同的狀況。圖14例示導(dǎo)航程 序結(jié)束控件。該圖以兩個階段1401和1402示出。階段1401示出具有其控件可見的導(dǎo)航 應(yīng)用程序。控件包括"結(jié)束"按鈕1410。用戶正在用手指1412輕擊按鈕。導(dǎo)航應(yīng)用程序距 其目標很遠,如由表明距下一路口 20英里的導(dǎo)航框1414和延伸到位置指示器1418的前方 一定距離的路線1416所指示。在階段1402中,由于用戶已經(jīng)輕擊結(jié)束按鈕1410,導(dǎo)航框 1414消失,路線1416同樣如此。位置指示器1418也在此階段中消失,被替換為球形位置指 示器1428。
[0162] 3.用于在導(dǎo)航期間看到路線一側(cè)的手勢
[0163] 如上所述,虛擬攝像機的默認行為是在虛擬世界中遵循設(shè)備的位置,并且向下指 向設(shè)備移動的方向,或至少指向其路線的在設(shè)備的目前位置前方短距離處的一部分。然而, 并非總是期望使攝像機指向正前方。有時,用戶反而想要攝像機指向一定角度。因此,一些 實施例的導(dǎo)航應(yīng)用程序在用戶向一旁拖動地圖時使虛擬攝像機四處旋轉(zhuǎn)。
[0164] 圖15例示當用戶向一旁推動地圖時的地圖的旋轉(zhuǎn)。該圖包括四個階段 1501-1504。在階段1501中,應(yīng)用程序被示出為處于其默認模式下,其中街道1510(主街) 和當前路線1512平行于屏幕的側(cè)邊在3D地圖1514上延伸。在這個階段1501中,用戶開 始向左推動地圖。在下一階段1502中,虛擬攝像機已經(jīng)移動到左側(cè)并旋轉(zhuǎn)到右側(cè)。即,3D 地圖1514已經(jīng)改變,好像虛擬攝像機已經(jīng)移動到左側(cè)并旋轉(zhuǎn)到右側(cè)一樣。已經(jīng)旋轉(zhuǎn)的地圖 1514現(xiàn)在示出位于街道右側(cè)的建筑物的樣子。在一些實施例中,地圖將旋轉(zhuǎn)的程度存在最 大閾值。在一些實施例中,除了能夠使地圖左右移動之外,用戶可移動到位于位置指示器稍 前方或稍后方的視圖(例如,通過用一個手指向下或向上拖動)。在一些這樣的實施例中, 地圖通過拖動可向前或向后移動的量也受到限制。
[0165] 在例示的實施例中,在用戶正向左(或向右)拖動地圖時、或在之后短時間內(nèi)(例 如,利用模擬慣性),應(yīng)用程序僅使建筑物旋轉(zhuǎn)。一旦用戶停止拖動地圖1514、或保持用戶 的手指在適當?shù)奈恢靡詫⒌貓D1514保持在適當?shù)奈恢?,地圖1514就還原到其在攝像機正 在拍攝的路線的方向上的默認視圖。這在階段1503中示出,其中用戶已經(jīng)停止拖動地圖 1514,并且虛擬攝像機在設(shè)備在設(shè)備的路線上移動時旋轉(zhuǎn)和/或移動返回虛擬攝像機位于 設(shè)備正后方的初始位置。通過階段1504,地圖1514已恢復(fù)其先前取向。在一些實施例中, 虛擬攝像機在地圖被拖向一旁時僅旋轉(zhuǎn),而不是既移動又旋轉(zhuǎn)。而在其它實施例中,攝像機 圍繞位置標識符轉(zhuǎn)動,使得位置標識符在地圖圍繞其轉(zhuǎn)動時好像是固定點。
[0166] 4.路線概覽樽式
[0167] 在一些情況下,除了僅察看示出下一路口的小比例尺地圖,一些用戶可能有時想 要察看大圖。即,在用戶正在路線上行進時,用戶可能想要察看他們的導(dǎo)航應(yīng)用程序的計劃 路線的全部。因此,一些實施例提供向用戶示出整個路線的概覽選項。圖16和圖17例示 概覽控件。圖16包括兩個階段1601和1602。在階段1601中,示出導(dǎo)航地圖1610、概覽按 鈕1612、手指1614和列表控件1617。在導(dǎo)航地圖1610中,位置指示器1616示出設(shè)備在主 街上、靠近第一大街。階段1601還示出地圖繪制應(yīng)用程序正在橫幅1618中顯示道路名稱, 這是因為地圖繪制應(yīng)用程序正以導(dǎo)航模式操作。在這個階段中,手指1614輕擊概覽按鈕 1612,使得概覽將在階段1602中得以顯示。
[0168] 在階段1602中,導(dǎo)航應(yīng)用程序已經(jīng)顯示概覽地圖1620、恢復(fù)按鈕1622、位置指示 器圖針1626、終點圖針1628和位置指示器控件1630。概覽地圖1620向用戶示出用戶從目 前位置開始的整個計劃路線。在例示的實施例中,概覽地圖聚焦在剩余路線上而非從起點 開始的整個路線,因為概覽地圖未示出指示先前已行進路線的淺色線。然而,在一些實施例 中,概覽地圖示出整個路線而非僅從設(shè)備的當前位置開始的路線。在一些實施例中,列表控 件1617也存在于概覽地圖中,以便允許用戶直接從概覽地圖轉(zhuǎn)到操縱列表(例如,將到來 的轉(zhuǎn)彎)。第二階段1602還示出道路名稱被顯示在道路上,這是因為地圖繪制應(yīng)用程序正 在顯示概覽地圖(即,并非處于導(dǎo)航模式)。應(yīng)當指出,一些實施例的地圖繪制應(yīng)用程序另 選地或相結(jié)合地使用橫幅來顯示道路名稱,不管地圖繪制應(yīng)用程序的操作模式如何。
[0169] 恢復(fù)按鈕1622將導(dǎo)航應(yīng)用程序切換回階段1601的導(dǎo)航視圖。位置指示器圖針 1626和終點圖針1628分別示出設(shè)備的當前位置和導(dǎo)航路線的最終目標。在一些實施例中, 應(yīng)用程序允許用戶四處移動地圖、進行放大和縮小,或以其它方式聚焦在概覽地圖1620的 不同部分上。在一些實施例中,位置指示器控件1630將地圖的中心定位在位置指示器圖針 1626 上。
[0170] 在一些實施例中,概覽模式具有搜索框,搜索框允許用戶輸入關(guān)于可在概覽地圖 中找到的項的搜索查詢。例如,用戶可在地圖上搜索加油站,使得用戶可確定在何處為其汽 車加油。另一示例將會是對咖啡店的搜索,這樣,用戶可停下來喝咖啡。一些實施例允許用 戶在恢復(fù)導(dǎo)航之前從初始終點目標切換成在搜索中找到的目標。
[0171] 在一些實施例中,所有概覽地圖都是2D形式。在其它實施例中,一些或所有概覽 地圖都是3D形式。例如,一些實施例針對覆蓋大距離的路線使用2D概覽地圖,而針對覆蓋 短距離的導(dǎo)航路線使用3D概覽地圖。圖17例示使用3D概覽地圖的實施例。圖17包括兩 個階段1701和1702。在階段1701中,示出導(dǎo)航地圖1710、概覽按鈕1712、手指1714和列 表按鈕1617。在導(dǎo)航地圖1710中,位置指示器1716示出設(shè)備在主街上、靠近第一大街。在 這個階段中,手指1714擊中概覽按鈕1712,使得概覽將在階段1702中得以顯示。
[0172] 在階段1702中,導(dǎo)航應(yīng)用程序已經(jīng)顯示概覽地圖1720、恢復(fù)按鈕1722、位置指示 器圖針1726、終點圖針1728和位置指示器控件1730。概覽地圖1720向用戶示出他們的整 個計劃路線。恢復(fù)按鈕1722將導(dǎo)航應(yīng)用程序切換回階段1701的導(dǎo)航視圖。位置指示器圖 針1726和終點圖針1728分別示出設(shè)備的當前位置和導(dǎo)航路線的最終目標。位置指示器控 件1730將地圖的中心定位在位置指示器圖針1726上。
[0173] 在一些實施例中,3D概覽地圖包括如相對于圖16所述的搜索功能。另外,在一些 實施例中,概覽模式包括用于將地圖的中心定位在終點圖針上的控件。在一些實施例中,位 置指示器控件允許用戶在將中心定位在設(shè)備的目前位置和將中心定位在設(shè)備的目標上之 間進行切換。在一些實施例中,概覽模式可在導(dǎo)航時在任何時間激活。
[0174] D.多模式應(yīng)用程序
[0175] 1.涫染樽塊
[0176] 圖18概念性地例示由一些實施例的地圖繪制應(yīng)用程序執(zhí)行以渲染地圖以供顯示 在客戶端設(shè)備上(例如,在客戶端設(shè)備的顯示器上)的處理或地圖渲染流水線1800。在一 些實施例中,地圖渲染流水線1800可統(tǒng)稱為地圖渲染模塊。此處理流水線的更詳細的型式 描述在上文所并入的名稱為"Virtual Camera for 3D Maps"的美國專利申請13/632, 040 中。如圖所示,處理流水線1800包括片檢索器1805、一組網(wǎng)構(gòu)建器1815、一組網(wǎng)構(gòu)建處理 器1810、片提供器1820、虛擬攝像機1830和地圖渲染引擎1825。
[0177] 在一些實施例中,片檢索器1805執(zhí)行根據(jù)來自網(wǎng)構(gòu)建器1815對地圖片的請求以 檢索地圖片的各種過程。網(wǎng)構(gòu)建器1815(如以下將描述)辨識需要構(gòu)建它們相應(yīng)的網(wǎng)的現(xiàn) 有地圖片(存儲在地圖繪制服務(wù)服務(wù)器上或存儲在執(zhí)行處理流水線1800的設(shè)備上的高速 緩存中的地圖片)。片檢索器1805接收針對地圖片的請求,確定從其檢索地圖片的最佳位 置(例如,從地圖繪制服務(wù)、從設(shè)備上的高速緩存),并且解壓縮地圖片(如果需要的話)。
[0178] 一些實施例的網(wǎng)構(gòu)建器1815(也被稱為片源)由片提供器1820實例化,以便構(gòu)建 不同層的視圖片。根據(jù)地圖繪制應(yīng)用程序所顯示地圖的類型,片提供器1820可實例化不同 數(shù)目和不同類型的網(wǎng)構(gòu)建器1815。例如,就俯瞰(或衛(wèi)星)視圖地圖而言,片提供器1820 可能僅實例化一個網(wǎng)構(gòu)建器1815,因為一些實施例的俯瞰地圖片不包含多層數(shù)據(jù)。事實上, 在一些實施例中,俯瞰地圖片包含在地圖繪制服務(wù)處生成的已構(gòu)建網(wǎng),俯瞰圖片(由衛(wèi)星、 飛機、直升機等拍攝)針對該網(wǎng)用作紋理。然而,在一些實施例中,可實例化另外的網(wǎng)構(gòu)建 器以用于在應(yīng)用程序處于混雜模式時生成標簽以上覆于俯瞰圖像上。就2D或3D渲染向量 地圖(即,非衛(wèi)星圖像地圖)而言,一些實施例實例化獨立的網(wǎng)構(gòu)建器1815,以便構(gòu)建土地 覆蓋多邊形數(shù)據(jù)(例如,公園、水體等)、道路、感興趣位置標記物、點狀標簽(例如,用于公 園的標簽等)、道路標簽、交通(如果顯示交通的話)、建筑物、柵格數(shù)據(jù)(針對特定縮放水 平下的特定對象)以及其它層的數(shù)據(jù)的網(wǎng),以便并入地圖中。
[0179] -些實施例的網(wǎng)構(gòu)建器1815從片提供器1820接收"空的"視圖片并且向片提供 器1820返回"構(gòu)建好的"視圖片。S卩,片提供器1820向每個網(wǎng)構(gòu)建器1815發(fā)送一個或多個 視圖片(未示出)。每個視圖片都指示世界上要繪制出網(wǎng)的區(qū)域。在接收到這種視圖片時, 網(wǎng)構(gòu)建器1815辨識來自地圖繪制服務(wù)的所需地圖片,并將其列表發(fā)送至片檢索器1805。
[0180] 在接收到從片檢索器1805返回的片時,網(wǎng)構(gòu)建器使用存儲在片中的向量數(shù)據(jù)來 構(gòu)建由視圖片描述的區(qū)域的多邊形網(wǎng)。在一些實施例中,網(wǎng)構(gòu)建器1815使用若干不同的網(wǎng) 構(gòu)建處理器1810來構(gòu)建網(wǎng)。這些功能可包括網(wǎng)生成器、三角儀、陰影生成器和/或紋理解 碼器。在一些實施例中,這些功能(和另外的網(wǎng)構(gòu)建功能)可供用于每個網(wǎng)構(gòu)建器,其中不 同的網(wǎng)構(gòu)建器1815使用不同功能。每個網(wǎng)構(gòu)建器1815在構(gòu)建其網(wǎng)之后,將其視圖片返回 至片提供器1820,其中每個網(wǎng)構(gòu)建器1815的網(wǎng)的層被填滿。
[0181] 片提供器1820從控制器1875接收表示將要顯示的地圖視圖(即,從虛擬攝像機 1830可見的體積)的特定視圖(即,體積或視錐)。片提供器執(zhí)行任何挑選(例如,辨識要 顯示在視圖片中的表面區(qū)域),隨后將這些視圖片發(fā)送到網(wǎng)構(gòu)建器1815。
[0182] 片提供器1820隨后從網(wǎng)構(gòu)建器接收構(gòu)建好的視圖片,并且在一些實施例中,使用 來自虛擬攝像機1830的特定視圖來對已構(gòu)建網(wǎng)進行挑選(例如,移除距離太遠的表面區(qū) 域,移除將完全在其它對象后方的對象等)。在一些實施例中,片提供器1820在不同時間 (例如,由于完成更復(fù)雜的或不太復(fù)雜的網(wǎng)的不同處理時間、在從片檢索器1805接收必要 的地圖片之前所經(jīng)過的不同時間等)從不同網(wǎng)構(gòu)建器接收構(gòu)建好的視圖片。一旦已經(jīng)返回 所有視圖片層,一些實施例的片提供器1820將層放在一起并且將數(shù)據(jù)釋放到控制器1875 以供用于渲染。
[0183] 虛擬攝像機1830生成供流水線1800渲染的體積或表面,并且將此信息發(fā)送至控 制器1875?;趯钠滗秩镜貓D的特定位置和取向(S卩,3D空間中的一點,用戶從該點"查 看"地圖),虛擬攝像機辨識視場以實際上發(fā)送至片提供器1820。在一些實施例中,當?shù)貓D 繪制應(yīng)用程序正在渲染要導(dǎo)航的3D透視圖時,虛擬攝像機的視場是根據(jù)一種算法來確定, 該算法以規(guī)則的間隔基于用戶設(shè)備的移動來生成新的虛擬攝像機位置和取向。
[0184] 在一些實施例中,控制器1875負責管理片提供器1820、虛擬攝像機1830和地圖渲 染引擎1825。在一些實施例中,實際上可實例化多個片提供器,并且控制器將若干視圖片 (例如,地圖片和建筑物片)放在一起以便創(chuàng)建移交至地圖渲染引擎1825的場景。
[0185] 地圖渲染引擎1825負責基于從虛擬攝像機發(fā)送的網(wǎng)片(未示出)來生成用以輸 出至顯示設(shè)備的繪圖。一些實施例的地圖渲染引擎1825具有若干個子過程。在一些實施 例中,每種不同類型的地圖元素是由不同的子過程渲染,其中渲染引擎1825處理對不同對 象層的遮擋(例如,將標簽放置在不同的建筑物的上方或后方,在土地覆蓋上面生成道路 等)。此類渲染過程的示例包括道路渲染過程、建筑物渲染過程、標簽渲染過程、植被渲染過 程、柵格交通渲染過程、柵格道路渲染過程,衛(wèi)星渲染過程、多邊形渲染過程、背景柵格渲染 過程等。
[0186] 現(xiàn)將描述一些實施例中的渲染流水線1800的操作?;谠谔囟s放水平下查看 特定地圖區(qū)域的用戶輸入,虛擬攝像機1830指定從其查看地圖區(qū)域的位置和取向,并且將 此視錐或體積發(fā)送至控制器1875。控制器1875實例化一個或多個片提供器。雖然在此圖 中示出一個片提供器1820,但是一些實施例允許一次實例化多個片提供器。例如,一些實施 例實例化獨立的片提供器以供用于建筑物片和地圖片。
[0187] 片提供器1820執(zhí)行生成辨識地圖中需要構(gòu)建網(wǎng)的區(qū)域的空視圖片所必要的任何 挑選,并且將空視圖片發(fā)送至針對所繪制地圖的不同層(例如,道路、土地覆蓋、POI標簽 等)實例化的網(wǎng)構(gòu)建器1815。網(wǎng)構(gòu)建器1815使用從地圖繪制服務(wù)接收的清單,該清單辨識 地圖繪制服務(wù)服務(wù)器上可用的不同的片(S卩,作為四元樹的節(jié)點)。網(wǎng)構(gòu)建器1815從片檢 索器1805請求特定地圖片,片檢索器1805向網(wǎng)構(gòu)建器1815返回所請求的地圖片。
[0188] -旦特定網(wǎng)構(gòu)建器1815已接收到其地圖片,它就開始使用存儲在地圖片中的向 量數(shù)據(jù)來構(gòu)建從片提供器1820發(fā)送的視圖片的網(wǎng)。網(wǎng)構(gòu)建器1815在構(gòu)建其地圖層的網(wǎng)之 后,將構(gòu)建好的視圖片發(fā)送回片提供器1820。片提供器1820等待直到其已經(jīng)從各種網(wǎng)構(gòu) 建器1815接收所有視圖片,隨后將這些片層疊在一起并且將完整的視圖片發(fā)送到控制器 1875??刂破鲗钠渌衅峁┢鞣祷氐钠ɡ?,地圖視圖片和建筑物視圖片)縫接在 一起,并且將此場景發(fā)送至渲染引擎1825。地圖渲染引擎1825使用地圖片中的信息來繪制 用于顯示的場景。
[0189] 2.不同樽式的狀杰圖
[0190] 圖19概念性地例示了狀態(tài)圖1900,其描述一些實施例的集成地圖、搜索、和導(dǎo)航 應(yīng)用(例如前面章節(jié)中所述的應(yīng)用)的不同狀態(tài)及這些狀態(tài)之間的轉(zhuǎn)換。本領(lǐng)域的普通技 術(shù)人員將認識到,一些實施例的應(yīng)用程序?qū)⒕哂信c所有不同類型的輸入事件相關(guān)的許多不 同狀態(tài),并且狀態(tài)圖1900具體地聚焦在這些事件的子集上。狀態(tài)圖1900描述并且涉及用 于改變應(yīng)用程序的狀態(tài)的各種手勢交互(例如,多點觸摸手勢)。本領(lǐng)域的普通技術(shù)人員將 認識到,各種其它交互諸如光標控制器手勢和按鈕點擊、鍵盤輸入、觸摸板/觸控板輸入等 也可用于類似選擇操作。
[0191] 當用戶初始地打開地圖繪制應(yīng)用程序時,應(yīng)用程序處于狀態(tài)1905、即地圖瀏覽狀 態(tài)。在這種狀態(tài)1905下,應(yīng)用程序?qū)⒁呀?jīng)生成并且顯示地圖視圖。為生成并且顯示這個地 圖視圖,一些實施例的應(yīng)用程序辨識用于區(qū)域的所要求的地圖片集、請求地圖片(例如,從 地圖繪制服務(wù)服務(wù)器)、從虛擬攝像機的特定位置、取向和視點生成地圖片的視圖,并且向 設(shè)備顯示器提供地圖視圖。當處于狀態(tài)1905時,地圖視圖是靜態(tài)的。在應(yīng)用程序處于狀態(tài) 1905的情況下,用戶可執(zhí)行修改地圖視圖、搜索實體(例如,感興趣地點、地址等)、檢索要 導(dǎo)航的路線等的許多操作。
[0192] 在一些實施例中,集成應(yīng)用程序顯示在具有集成觸敏顯示器的設(shè)備上。地圖上的 各種手勢交互可使得應(yīng)用程序?qū)Φ貓D視圖執(zhí)行不同修改(例如,平移、旋轉(zhuǎn)、縮放、修改地 圖透視圖等)。當集成應(yīng)用程序接收地圖顯示上的手勢交互(而非覆蓋在地圖顯示上的各 種浮置或非浮置控件上的觸摸輸入)時,應(yīng)用程序轉(zhuǎn)變至狀態(tài)1910以執(zhí)行手勢輸入識別。
[0193] 手勢輸入識別狀態(tài)1910在不同類型的手勢輸入之間進行區(qū)分,并且將這些類型 的輸入翻譯成不同地圖視圖修改操作。在一些實施例中,地圖繪制應(yīng)用程序接收如由具有 集成觸敏顯示器的設(shè)備的操作系統(tǒng)翻譯的手勢輸入。操作系統(tǒng)將觸摸輸入翻譯成手勢類型 和位置(例如,在坐標(x,y)處的"輕擊"、具有在兩個不同位置處的獨立觸摸輸入的"縮緊" 操作等等)。在狀態(tài)1910下,一些實施例的集成地圖繪制應(yīng)用程序?qū)⑦@些翻譯成不同地圖 視圖修改操作。
[0194] 當應(yīng)用程序接收第一類型的手勢輸入(例如,以旋轉(zhuǎn)運動在地圖視圖上一起移動 的兩個獨立觸摸輸入)時,應(yīng)用程序轉(zhuǎn)變到狀態(tài)1915以使地圖旋轉(zhuǎn)。為使地圖視圖旋轉(zhuǎn), 一些實施例修改虛擬攝像機的位置和/或取向,該位置和/或取向確定地圖中被渲染以創(chuàng) 建地圖視圖的部分。例如,當處于3D模式時,地圖繪制應(yīng)用程序使虛擬攝像機圍繞特定位 置(例如,觸摸輸入的中心、顯示器的中心、辨識用戶的位置的位置指示器等)旋轉(zhuǎn)。當?shù)?一類型的手勢輸入繼續(xù)時,地圖繪制應(yīng)用程序保持處于狀態(tài)1915以繼續(xù)使地圖旋轉(zhuǎn)。
[0195] 當用戶釋放第一類型的手勢輸入時,一些實施例的應(yīng)用程序轉(zhuǎn)變至狀態(tài)1930以 執(zhí)行慣性計算。在一些實施例中,在用戶釋放某些類型的觸摸輸入之后,應(yīng)用程序繼續(xù)執(zhí)行 相關(guān)聯(lián)的地圖視圖修改,達到特定的時間量和/或距離。在這種情況下,在用戶釋放旋轉(zhuǎn)輸 入之后,應(yīng)用程序轉(zhuǎn)變至慣性計算狀態(tài)1930來計算另外的旋轉(zhuǎn)量以及執(zhí)行此旋轉(zhuǎn)應(yīng)經(jīng)歷 的時間。在一些實施例中,應(yīng)用程序根據(jù)地圖旋轉(zhuǎn)時所處的(角)速度使旋轉(zhuǎn)減慢,好像對 地圖施加了"摩擦"力一樣。因此,一些實施例的慣性計算是基于第一類型的手勢輸入的速 度。應(yīng)用程序從狀態(tài)1930轉(zhuǎn)變回應(yīng)用程序先前所處的地圖修改狀態(tài)。即以下情況:應(yīng)用程 序從狀態(tài)1915 (旋轉(zhuǎn)狀態(tài))轉(zhuǎn)變至慣性計算狀態(tài)1930,它隨后在執(zhí)行慣性計算之后轉(zhuǎn)變回 狀態(tài)1915。在地圖的旋轉(zhuǎn)完成之后,應(yīng)用程序轉(zhuǎn)變回狀態(tài)1905。
[0196] 當應(yīng)用程序接收第二類型的手勢輸入(例如,在地圖視圖上移動的單個觸摸輸 入)時,應(yīng)用程序轉(zhuǎn)變至狀態(tài)1920以使地圖平移。為使地圖視圖平移,一些實施例修改虛 擬攝像機的位置,該位置確定地圖中被渲染以創(chuàng)建地圖視圖的部分。這使得地圖看起來像 在源自第二類型手勢輸入的方向的方向上滑動。在一些實施例中,當?shù)貓D視圖處于3D透視 模式時,平移過程涉及使觸摸輸入的位置與平面地圖上的一個位置相關(guān)聯(lián),以便避免地圖 視圖中突然的不希望的跳躍。當?shù)诙愋偷氖謩葺斎肜^續(xù)時,地圖繪制應(yīng)用程序保持處于 狀態(tài)1920以繼續(xù)使地圖平移。
[0197] 當用戶釋放第二類型的手勢輸入時,一些實施例的應(yīng)用程序轉(zhuǎn)變至狀態(tài)1930以 執(zhí)行慣性計算。在一些實施例中,在用戶釋放某些類型的觸摸輸入之后,應(yīng)用程序繼續(xù)執(zhí)行 相關(guān)聯(lián)的地圖視圖修改,達到特定的時間量和/或距離。在這種情況下,在用戶釋放平移輸 入之后,應(yīng)用程序轉(zhuǎn)變至慣性計算狀態(tài)1930來計算另外的使地圖視圖移動(即,使虛擬攝 像機移動)的量以及執(zhí)行此移動應(yīng)經(jīng)歷的時間。在一些實施例中,應(yīng)用程序根據(jù)地圖平移 時所處的速度來減慢平移移動,好像對地圖施加了"摩擦"力一樣。因此,一些實施例的慣 性計算是基于第二類型的手勢輸入的速度。應(yīng)用程序從狀態(tài)1930轉(zhuǎn)變回應(yīng)用程序先前所 處的地圖修改狀態(tài)。即以下情況:應(yīng)用程序從狀態(tài)1920 (平移狀態(tài))轉(zhuǎn)變至慣性計算狀態(tài) 1930,它隨后在執(zhí)行慣性計算之后轉(zhuǎn)變回狀態(tài)1920。在地圖的平移完成后,應(yīng)用程序轉(zhuǎn)變回 狀態(tài)1905。
[0198] 當應(yīng)用程序接收第三類型的手勢輸入(例如,移動成更靠近在一起或更遠離的兩 個獨立觸摸輸入)時,應(yīng)用程序轉(zhuǎn)變至狀態(tài)1925以放大或縮小地圖。為改變地圖視圖的 縮放水平,一些實施例修改虛擬攝像機的位置(即,高度),該位置確定地圖中被渲染以創(chuàng) 建地圖視圖的部分。這使得地圖視圖包括地圖的更多內(nèi)容(如果縮小的話)或更少內(nèi)容 (如果放大的話)。在一些實施例中,當用戶進行放大或縮小時,應(yīng)用程序檢索不同的地圖 片(針對不同縮放水平)以生成和渲染新的地圖視圖。當?shù)谌愋偷氖謩葺斎肜^續(xù)時,地 圖繪制應(yīng)用程序保持處于狀態(tài)1925以繼續(xù)使地圖放大或縮小。
[0199] 當用戶釋放第二類型的手勢輸入時,一些實施例的應(yīng)用程序轉(zhuǎn)變至狀態(tài)1930以 執(zhí)行慣性計算。在一些實施例中,在用戶釋放某些類型的觸摸輸入之后,應(yīng)用程序繼續(xù)執(zhí)行 相關(guān)聯(lián)的地圖視圖修改,達到特定的時間量和/或距離(即,使虛擬攝像機向更高處或更低 處移動)。在這種情況下,在用戶釋放縮放輸入之后,應(yīng)用程序轉(zhuǎn)變至慣性計算狀態(tài)1930 來計算另外的縮放地圖視圖(即,使虛擬攝像機移動)的量以及執(zhí)行此移動應(yīng)經(jīng)歷的時間。 在一些實施例中,應(yīng)用程序根據(jù)地圖放大或縮小所處的速度(即,虛擬攝像機改變高度所 處的速度)來減慢縮放移動,好像對攝像機施加了"摩擦"力一樣。因此,一些實施例的慣 性計算是基于第三類型的手勢輸入的速度。應(yīng)用程序從狀態(tài)1930轉(zhuǎn)變回應(yīng)用程序先前所 處的地圖修改狀態(tài)。即以下情況:應(yīng)用程序從狀態(tài)1925 (縮放狀態(tài))轉(zhuǎn)變至慣性計算狀態(tài) 1930,它隨后在執(zhí)行慣性計算之后轉(zhuǎn)變回狀態(tài)1925。在地圖的縮放完成之后,應(yīng)用程序轉(zhuǎn)變 回狀態(tài)1905。
[0200] 為了簡潔起見,狀態(tài)圖1900例示地圖平移過程、縮放過程和旋轉(zhuǎn)過程使用相同慣 性計算過程(狀態(tài)1930)。然而,在一些實施例中,這些不同地圖修改過程中的每個實際上 使用不同的慣性計算,以便辨識每個地圖修改過程的特定類型移動的減慢和停止。此外,一 些實施例在接收輸入時而非在用戶移除手勢輸入時計算并且修改慣性變量。
[0201] 當應(yīng)用程序接收第四類型的手勢輸入(例如,一致地將觸敏顯示器向上或向下移 動的兩個獨立觸摸輸入)時,應(yīng)用程序轉(zhuǎn)變至狀態(tài)1935以修改地圖的透視圖。為改變地圖 的透視圖,一些實施例使虛擬攝像機在地圖上方沿弧移動,從而修改虛擬攝像機的位置和 取向兩者(因為攝像機保持其視場的中心位于地圖上的特定位置處)。在一些實施例中,不 同縮放水平使用虛擬攝像機沿著移動的不同弧。這些弧中的每個都具有頂部點,虛擬攝像 機在該點處筆直向下指向,從而給出地圖的2D透視圖。此外,每個弧都具有底部點,S卩,弧 上的虛擬攝像機可移動到的最低點。因此,在一些實施例中,第一類型的手勢輸入可使得應(yīng) 用程序在2D地圖視圖和3D透視地圖視圖之間改變。當?shù)谒念愋偷氖謩葺斎肜^續(xù)時,地圖 繪制應(yīng)用程序保持處于狀態(tài)1935以繼續(xù)修改地圖的透視圖。
[0202] 當用戶釋放第四類型的手勢輸入時,一些實施例的應(yīng)用程序轉(zhuǎn)變至狀態(tài)1940以 執(zhí)行慣性計算。在一些實施例中,在用戶釋放某些類型的觸摸輸入之后,應(yīng)用程序繼續(xù)執(zhí)行 相關(guān)聯(lián)的地圖視圖修改,達到特定的時間量和/或距離(即,使虛擬攝像機向更高處或更低 處移動)。在這種情況下,在用戶釋放透視視角改變輸入之后,應(yīng)用程序轉(zhuǎn)變至慣性計算狀 態(tài)1940來計算另外的修改地圖視圖的透視視角(S卩,使虛擬攝像機沿其弧移動)的量以及 執(zhí)行此移動應(yīng)經(jīng)歷的時間。在一些實施例中,應(yīng)用程序根據(jù)地圖改變視點所處的速度(即, 虛擬攝像機沿其弧移動所處的速度)來減慢移動,好像對攝像機施加了"摩擦"力一樣。因 此,一些實施例的慣性計算是基于執(zhí)行第四類型的手勢輸入的速度。
[0203] 此外,就視點改變操作而言,一些實施例轉(zhuǎn)變至回彈計算狀態(tài)1945。如上所述,視 點改變操作具有一些實施例中所允許的最大和最小視點偏移,這可取決于當前地圖視圖的 縮放水平。因此,除了慣性計算之外,應(yīng)用程序在狀態(tài)1945處執(zhí)行回彈計算?;貜椨嬎闶?用慣性計算來確定是否將到達沿虛擬攝像機弧的最大點,并且如果到達,確定虛擬攝像機 在這個點處的速度。一些實施例允許虛擬攝像機稍微移動越過最大點以擊中"回彈"點,在 "回彈"點處,應(yīng)用程序使得虛擬攝像機在其弧上轉(zhuǎn)向,從而使虛擬攝像機往回朝向最大點 移動。一些實施例僅在虛擬攝像機弧的一端(例如,弧的底部)上包括這種彈回功能,而其 它實施例在弧的兩端上包括該功能。應(yīng)用程序從回彈計算狀態(tài)1945轉(zhuǎn)變回慣性計算狀態(tài) 1940,隨后返回視點改變狀態(tài)1935以顯示地圖視圖移動。此外,當用戶執(zhí)行第四類型的觸 摸輸入達足夠長的時間并且視點達到其最大點時,應(yīng)用程序直接從狀態(tài)1935轉(zhuǎn)變至狀態(tài) 1945以計算回彈信息,并且隨后轉(zhuǎn)變回狀態(tài)1935。在完成對地圖的透視視角的修改之后, 應(yīng)用程序轉(zhuǎn)變回狀態(tài)1905。
[0204] 上述內(nèi)容涉及地圖展示上的各種多點觸摸手勢,集成地圖繪制、搜索和導(dǎo)航應(yīng)用 程序?qū)⑦@些觸摸手勢翻譯成對地圖展示所進行的不同修改。各種其它觸摸輸入也能使得應(yīng) 用程序改變狀態(tài)并且執(zhí)行各種功能。例如,一些實施例將3D可選項目上覆于地圖視圖上 (例如,作為浮置控件),并且選擇(例如,通過輕擊輸入)3D項目使得應(yīng)用程序轉(zhuǎn)變至1935 以修改地圖視圖的視點。當?shù)貓D視圖以3D透視圖開始時,應(yīng)用程序?qū)⑼敢晥D修改成2D視 圖;當?shù)貓D視圖以2D視圖開始時,應(yīng)用程序?qū)⑼敢晥D修改成3D視圖。在修改之后,應(yīng)用程 序返回至狀態(tài)1905。
[0205] 當用戶在狀態(tài)1905下查看地圖時,應(yīng)用程序呈現(xiàn)各種標簽作為地圖視圖的一部 分。這些標簽中的一些指示感興趣地點或其它位置。當用戶選擇某些標簽(例如,用于某 些企業(yè)、公園等),應(yīng)用程序轉(zhuǎn)變至狀態(tài)1950以顯示用于所選擇位置的橫幅(例如,信息顯 示橫幅),隨后返回地圖瀏覽狀態(tài)(其中橫幅顯示在地圖上)。在一些實施例中,這個橫幅 包括:(1)快速路線導(dǎo)航UI控件(例如,按鈕),該UI控件使得應(yīng)用程序檢索從設(shè)備的當 前位置到所選擇位置的路線(例如,駕駛路線)而不離開地圖視圖;以及(2)信息n控件 (例如,按鈕),該n控件使得應(yīng)用程序提供關(guān)于位置的另外的信息。
[0206] 當用戶選擇n控件按鈕時,應(yīng)用程序從狀態(tài)1905轉(zhuǎn)變至狀態(tài)1955以顯示用于所 選擇位置的演示區(qū)域。在一些實施例中,這個演示區(qū)域顯示所選擇位置的媒體展示(例如, 3D視頻展示、所選擇位置的俯瞰視圖、針對該位置捕獲的一系列圖像等)以及所選擇位置 的各種信息(聯(lián)系信息、評論等)。當用戶執(zhí)行各種操作以對演示區(qū)域進行導(dǎo)航并且查看演 示區(qū)域內(nèi)的信息時,應(yīng)用程序停留在狀態(tài)1955下。當用戶選擇n控件以轉(zhuǎn)回地圖視圖時, 應(yīng)用程序轉(zhuǎn)變至狀態(tài)1905。
[0207] 用戶還可從地圖瀏覽視圖容易地訪問應(yīng)用程序的搜索功能。當選擇特定n控件 (例如,搜索條)時,應(yīng)用程序轉(zhuǎn)變至搜索輸入建議狀態(tài)I960。在搜索輸入狀態(tài)下,一些實 施例顯示觸摸屏鍵盤,用戶可通過該觸摸屏鍵盤輸入搜索項。搜索項可為企業(yè)名稱、地址、 一種類型的位置(例如,咖啡店)等。在用戶輸入字符時,應(yīng)用程序保持處于狀態(tài)I960并 且基于最近搜索、已輸入的字母等提供建議。一些實施例可使用基于前綴的建議(例如,以 已輸入的字符開始的建議)以及其它建議(例如,做出在已輸入字串的開頭添加字符、調(diào)換 字符等拼寫校正)。在一些實施例中,除了位置之外,選擇還可包括最近輸入的路線。如果 用戶在此階段選擇取消UI控件,應(yīng)用程序轉(zhuǎn)回狀態(tài)1905而不執(zhí)行搜索。
[0208] 當用戶選擇搜索項(建議項或完全由用戶輸入的項)時,應(yīng)用程序轉(zhuǎn)變至狀態(tài) 1965以在地圖視圖上顯示搜索結(jié)果,隨后轉(zhuǎn)變至狀態(tài)1905,其中顯示出搜索結(jié)果。一些實 施例將搜索結(jié)果作為可選項目(例如,圖針)顯示在地圖上;對項目中的一個的選擇使得轉(zhuǎn) 變至狀態(tài)1950以顯示用于所選擇項目的橫幅。此外,一些實施例的應(yīng)用程序自動地選擇搜 索結(jié)果中的一個(例如,"最佳"結(jié)果)并且將此橫幅顯示為狀態(tài)1965的一部分。
[0209] 由于應(yīng)用程序是緊密集成地圖繪制、搜索、路線規(guī)劃和導(dǎo)航應(yīng)用程序,用戶可容易 地從地圖瀏覽狀態(tài)訪問路線規(guī)劃功能。當選擇特定n控件(例如,路線輸入按鈕)時,應(yīng) 用程序轉(zhuǎn)變至路線輸入狀態(tài)1970。在路線輸入狀態(tài)下,一些實施例顯示觸摸屏鍵盤,用戶可 通過該觸摸屏鍵盤將位置(例如,地址、地名、地點類型等)輸入至"到"字段和"從"字段兩 者中以便請求路線。在用戶輸入字符時,應(yīng)用程序保持處于狀態(tài)1970并且基于最近路線、 最近搜索、類似于針對搜索輸入所描述的自動填寫等提供建議。如果用戶在此階段選擇取 消n控件,應(yīng)用程序轉(zhuǎn)回狀態(tài)1905而不檢索路線。
[0210] 當用戶選擇路線(例如,通過輸入"到"位置和"從"位置)時,應(yīng)用程序轉(zhuǎn)變至路 線顯示狀態(tài)1975。在此狀態(tài)下,應(yīng)用程序在地圖視圖上顯示從第一所選擇位置到第二所選 擇位置的一條或多條路線(例如,通過將路線線條上覆于地圖視圖上)。一些實施例自動 地選擇路線中的第一路線。用戶可選擇任何其它路線(例如,通過輕擊未選擇的路線),其 中應(yīng)用程序保持處于狀態(tài)1975(但是修改路線線條的顯示以便指示對其它路線的選擇)。 此外,當處于狀態(tài)1975時,一些實施例的應(yīng)用程序顯示與路線規(guī)劃和導(dǎo)航相關(guān)的不同n控 件,包括引導(dǎo)列表控件、導(dǎo)航啟動控件等。
[0211] 另外,在顯示路線的地圖上的各種手勢交互可使得應(yīng)用程序?qū)Φ貓D視圖執(zhí)行不同 修改(例如,平移、旋轉(zhuǎn)、縮放、修改地圖視點等)。當集成應(yīng)用程序在處于路線顯示狀態(tài) 1975時接收地圖顯示上的手勢交互時,應(yīng)用程序轉(zhuǎn)變至狀態(tài)1910以執(zhí)行手勢輸入識別,其 中所有手勢地圖修改操作(例如,對狀態(tài)1915-1945的推論)可用。即,應(yīng)用程序?qū)⑹謩葺?入翻譯成類似于以上針對狀態(tài)1915-1945所述那些操作的平移、旋轉(zhuǎn)、縮放和/或視點改變 操作,針對虛擬攝像機移動具有類似慣性和回彈特征。然而,操作1915-1945返回地圖瀏覽 狀態(tài)1905,從路線顯示狀態(tài)1975訪問的推論操作返回路線顯示狀態(tài)1975。
[0212] 在一些實施例中,路線顯示狀態(tài)1975也可從其它狀態(tài)訪問。例如,如果用戶在處 于狀態(tài)1905時選擇橫幅上的快速路線UI控件,應(yīng)用程序檢索從設(shè)備的當前位置到與橫幅 相關(guān)聯(lián)的位置的一條或多條路線。此外,一些實施例在狀態(tài)I960下顯示搜索建議中的先前 所請求的路線。當用戶選擇這些建議路線中的一條時,應(yīng)用程序直接從狀態(tài)I960轉(zhuǎn)變至狀 態(tài)1975以在地圖上顯示一條或多條路線。
[0213] 應(yīng)用程序可根據(jù)用戶所選擇的不同控件從路線顯示狀態(tài)1975轉(zhuǎn)變成各種不同模 式。當用戶選擇清除路線的UI控件時,應(yīng)用程序轉(zhuǎn)變回狀態(tài)1905以顯示無任何路線的地 圖。此外,集成應(yīng)用程序可從路線顯示狀態(tài)1975進入一個或多個導(dǎo)航模態(tài)。
[0214] 當在狀態(tài)1975下顯示的所選擇路線以設(shè)備的當前位置為起點并且用戶選擇導(dǎo)航 啟動控件時,應(yīng)用程序轉(zhuǎn)變至導(dǎo)航狀態(tài)1980。在一些實施例中,應(yīng)用程序顯示從地圖視圖到 用于導(dǎo)航的更沉浸式3D視圖的電影式轉(zhuǎn)變。在一些實施例的導(dǎo)航狀態(tài)1980內(nèi),虛擬攝像 機遵循用戶沿所選擇路線的位置,以便呈現(xiàn)路線的將到來的部分。當路線完成(設(shè)備到達 目標位置)或用戶選擇結(jié)束導(dǎo)航的控件時,應(yīng)用程序轉(zhuǎn)變至狀態(tài)1905以呈現(xiàn)地圖瀏覽視圖 1905。
[0215] 在一些實施例中,當處于導(dǎo)航模式1980時,在顯示路線的地圖上的各種手勢交互 可使得應(yīng)用程序?qū)Φ貓D視圖執(zhí)行不同修改(例如,平移、旋轉(zhuǎn)、縮放、修改地圖視點等)。在 一些實施例中,僅所述地圖修改操作中的一些在導(dǎo)航模式下可用。例如,一些實施例允許用 戶進行放大或縮小,但不允許對地圖進行任何其它修改。因此,當用戶提供手勢輸入時,手 勢輸入識別狀態(tài)1910過濾掉不與縮放操作相關(guān)聯(lián)的類型的手勢輸入(并且應(yīng)用程序隨后 返回狀態(tài)1980)。當接收到與縮放操作相關(guān)聯(lián)的類型的手勢輸入時,手勢輸入識別狀態(tài)識別 這個輸入,并且應(yīng)用程序轉(zhuǎn)變至用于改變地圖的縮放水平(在一些實施例中,通過慣性計 算)的類似于狀態(tài)1925的狀態(tài)。
[0216] 其它實施例可允許不同地圖修改操作。例如,在一些實施例中,在處于導(dǎo)航模式 時,所有手勢地圖修改操作(例如,對狀態(tài)1915-1945的推論)都是可用的。一些實施例允 許手勢地圖修改操作的子集,諸如縮放和有限平移操作。一些實施例的平移操作在接收到 與平移相關(guān)聯(lián)的類型的手勢輸入時使虛擬攝像機向一側(cè)移動(在處于導(dǎo)航模式時),隨后 使虛擬攝像機返回指向路線。操作1915-1945返回地圖瀏覽狀態(tài)1905,而從導(dǎo)航狀態(tài)1980 訪問的推論操作返回導(dǎo)航狀態(tài)1980。
[0217] 當在狀態(tài)1975下顯示的所選擇路線以設(shè)備的當前位置之外的位置為起點(或路 線是步行路線)并且用戶選擇導(dǎo)航啟動控件時,應(yīng)用程序轉(zhuǎn)變至狀態(tài)1985下的步進模式或 路線檢查模式。在一些實施例中,應(yīng)用程序一次顯示沿路線執(zhí)行的一個操縱(例如像導(dǎo)航 標志)。在處于路線檢查模式時,通過針對操縱提供手勢輸入(例如,橫掃手勢),用戶能夠 查看不同操縱。操縱上覆于地圖上,并且路線的至少一部分顯示在地圖中。
[0218] 當處于路線顯示模式時,地圖上的各種手勢交互可使得應(yīng)用程序?qū)Φ貓D視圖執(zhí)行 不同修改(例如,平移、旋轉(zhuǎn)、縮放、修改地圖視點等)。當集成應(yīng)用程序在處于步進模式 1985時接收地圖顯示上的手勢交互時,應(yīng)用程序轉(zhuǎn)變至狀態(tài)1910以執(zhí)行手勢輸入識別,其 中所有手勢地圖修改操作(例如,對狀態(tài)1915-1945的推論)可用。即,應(yīng)用程序?qū)⑹謩葺?入翻譯成類似于以上針對狀態(tài)1915-1945所述那些操作的平移、旋轉(zhuǎn)、縮放和/或視點改變 操作,針對虛擬攝像機移動具有類似慣性和回彈特征。操作1915-1945返回地圖瀏覽狀態(tài) 1905,而從步進模式1985訪問的推論操作返回步進模式1985。
[0219] 此外,在一些實施例中,手勢輸入識別識別在所顯示操縱上進行的至少一種類型 的手勢輸入,以便在操縱之間進行切換。當接收到所顯示操縱上(而非在地圖視圖上)的特 定類型的手勢輸入(例如,橫掃手勢)時,應(yīng)用程序轉(zhuǎn)變至用于改變所顯示操縱的狀態(tài)(未 示出),然后返回狀態(tài)1985。
[0220] 當集成應(yīng)用程序在處于步進狀態(tài)1985時接收所顯示地圖上的手勢交互時,應(yīng)用 程序轉(zhuǎn)變至狀態(tài)1910以執(zhí)行手勢輸入識別,其中所有手勢地圖修改操作(例如,對狀態(tài) 1915-1945的推論)可用。當修改操作完成時,應(yīng)用程序返回狀態(tài)1985。當用戶選擇結(jié)束 逐步操縱的控件時,應(yīng)用程序轉(zhuǎn)變至狀態(tài)1905以呈現(xiàn)地圖瀏覽視圖。
[0221] 此外,在一些實施例中,應(yīng)用程序可從步進模式1985轉(zhuǎn)變至自動步進狀態(tài)1990。 當用戶在應(yīng)用程序處于狀態(tài)1985時選擇位置跟蹤控件時,應(yīng)用程序轉(zhuǎn)變至自動步進模式 1990,這是一種不同導(dǎo)航模態(tài)。當處于一些實施例的自動步進模式時,集成地圖繪制、搜索 和導(dǎo)航應(yīng)用程序顯示設(shè)備的位置最靠近的(例如,如由執(zhí)行操縱的路口測量)操縱。當設(shè)備 移動(例如,沿路線)至更靠近不同操縱的位置時,自動步進模式自動地顯示該不同操縱。 當用戶取消選擇位置跟蹤控件時,應(yīng)用程序轉(zhuǎn)變回步進模式1985。當用戶在處于自動步進 狀態(tài)1990時選擇結(jié)束導(dǎo)航的控件時,應(yīng)用程序轉(zhuǎn)變至狀態(tài)1905以呈現(xiàn)地圖瀏覽視圖。
[0222] 當處于步進模式1985時,地圖上的各種手勢交互可使得應(yīng)用程序?qū)Φ貓D視圖執(zhí) 行不同修改(例如,平移、旋轉(zhuǎn)、縮放、修改地圖視點等)。當集成應(yīng)用程序在處于自動步進 模式1990時接收地圖顯示上的手勢交互時,應(yīng)用程序轉(zhuǎn)變至狀態(tài)1910以執(zhí)行手勢輸入識 另IJ,其中所有手勢地圖修改操作(例如,對狀態(tài)1915-1945的推論)可用。即,應(yīng)用程序?qū)?手勢輸入翻譯成類似于以上針對狀態(tài)1915-1945所述那些操作的平移、旋轉(zhuǎn)、縮放和/或視 點改變操作,針對虛擬攝像機移動具有類似慣性和回彈特征。操作1915-1945返回地圖瀏 覽狀態(tài)1905,而從自動步進模式1990訪問的推論操作返回自動步進模式1990。此外,一些 實施例在用戶使地圖平移特定距離時自動關(guān)閉位置跟蹤控件,在這種情況下,應(yīng)用程序返 回步進模式狀態(tài)1985而非自動步進狀態(tài)1990。
[0223] II.導(dǎo)航標志的顯示
[0224] 以上章節(jié)介紹一些實施例的逐向?qū)Ш教卣鳌R粋€此類特征是由地圖繪制應(yīng)用程序 所提供的導(dǎo)航標志,導(dǎo)航標志描述用戶要執(zhí)行的不同操縱。這些標志可指示轉(zhuǎn)彎、繼續(xù)筆直 行進要經(jīng)過的距離、駛出高速公路的時間或用戶要執(zhí)行的其它操縱。一些實施例提供用于 標志的各種動畫,包括:以3D模式將標志示出為在用戶位置指示器上方經(jīng)過;修改標志的 外觀以指示將到來的操縱;以及在兩個操縱將會快速連續(xù)地被執(zhí)行時使用第二標志。
[0225] A.不同背景環(huán)塏中的逼直外貌和不同格式
[0226] 在一些實施例中,導(dǎo)航標志在不同情景中可具有不同外觀。以下將更進一步詳細 地描述這些差異中的一些。具體地,要執(zhí)行的操縱的圖形指示器(例如,以下將進一步描述 的方向指示器)以及描述這些操縱的指令文本可適于配合正在顯示的導(dǎo)航標志的情景。例 如,不同尺寸的標志可具有簡單或復(fù)雜的操縱描述,并且指令文本可適于標志的尺寸并且 可基于標志內(nèi)顯示的其它信息。
[0227] 一些實施例以給予導(dǎo)航標志以逼真道路標志的外觀這種方式來顯示標志。一些實 施例將導(dǎo)航標志顯示為豐富的紋理化圖像(例如,使用陰影、著色等),這與只是在地圖顯 示上顯示平面圖像形成對比。此外,一些實施例對導(dǎo)航標志使用著色,從而匹配應(yīng)用程序正 導(dǎo)航通過的區(qū)域中的道路標志的顏色。在一些實施例中,應(yīng)用程序還使用逼真公路路盾來 標記道路。例如,對于編號的州和聯(lián)邦公路,應(yīng)用程序?qū)趯?dǎo)航標志內(nèi)(例如,遠離標志 的側(cè)邊)使用與道路相關(guān)聯(lián)的公路路盾,用公路路盾替換導(dǎo)航指令中的道路名稱,或以其 它方式在圖形顯示中包括公路路盾。這些道路標志的生成和使用在提交于2012年9月30 日的名稱為"Context Aware Voice Guidance"的美國專利申請13/632, 121中進行了描述。 美國專利申請13/632, 121以引用方式并入本文。
[0228] 圖20例示使用此類公路路盾的若干⑶I場景。第一此類場景2005例示處于逐向 導(dǎo)航模式、示出沿US-IOlNorth繼續(xù)直行20英里的地圖繪制應(yīng)用程序。在該示例中,用于 US-101的道路標志顯示為替代實際文本"US-101"內(nèi)嵌在文本指令"沿US-IOlNorth直走" 內(nèi)。當?shù)缆肪哂袠酥静⑶以摌酥咀鳛閳D像可用于地圖繪制應(yīng)用程序時,一些實施例用道路 標志來替換道路的文本名稱。
[0229] 第二實例2010例示顯示在導(dǎo)航標志的右側(cè)上而非內(nèi)嵌在文本指令中的公路路 盾。這個場景例示由一些實施例針對與實例2005中相同的指令所使用的另選顯示。在這 種情況下,公路路盾顯示為具有與導(dǎo)航標志的左側(cè)上的圖形指示器箭頭相同的尺寸。此外, 由于信息以道路標志形式呈現(xiàn),應(yīng)用程序移除文本中的"沿lOlNorth"部分,否則該部分將 呈現(xiàn)出來。
[0230] 第三實例2015例示以下情況:導(dǎo)航標志被著色以匹配公路路盾中所示的道路類 型。在這個場景中,指令告知用戶沿CA-INorth直走。"CA-1"被替換成用于"CA-1"的公 路路盾標志。雖然一些實施例使用綠色(用于加利福尼亞州公路的標志的顏色)來為此 標志著色,但是其它實施例使用沿著實際公路找到的道路路盾標志的顏色來為導(dǎo)航標志著 色。其它實施例使用綠色來匹配設(shè)備所在區(qū)域中的高速公路上找到的道路指令標志的顏色 (例如,加利福尼亞是綠色)。
[0231] 第四場景2020例示導(dǎo)航標志內(nèi)的到Interstate-5上的匯入操縱。與第一實例 2005非常像,第四場景2020例示道路路盾標志作為內(nèi)嵌文本。此外,在道路路盾內(nèi)使用著 色以便匹配實際洲際公路標志的外觀,其中頂部部分著紅色并且底部部分著藍色。如所提 及的,一些實施例替代地使用這些顏色的組合來為整個導(dǎo)航標志著色。
[0232] 雖然圖20并未例示方向指示器2090的不同外觀,但是一些實施例的地圖繪制應(yīng) 用程序使用不同外觀,以便使方向指示器適于配合正在顯示的導(dǎo)航標志的情景。
[0233] L不同情景中的不同方向指示器
[0234] 對于當前所顯示的導(dǎo)航指令標志,在全屏逐向?qū)Ш角榫爸?,一些實施例的地圖繪 制應(yīng)用程序?qū)⒉倏v概括為兩個元素:粗略地表示車輛通過路口的路徑的突出風(fēng)格化箭頭; 以及對應(yīng)于路口的其它元素的一組去強調(diào)的直線和曲線。例如,T字路口處的右轉(zhuǎn)是由與 較小較暗區(qū)段以直角接合的大箭頭表示,較小較暗區(qū)段平行于大箭頭的區(qū)段之一延伸。較 小區(qū)段也將被推至一側(cè),使得車輛通過路口所采取的路徑占顯示的大部分。對操縱的這種 表示(包括具有路口情景的箭頭)提供關(guān)于操縱的相當完整的信息,同時保持抽象且易理 解。
[0235] 對操縱的另選表示可省略整個路口情景,并且簡化指示操縱的主要箭頭。當用戶 查看超出當前操縱的操縱(要進行的下一操縱)時,更詳細的圖形表示可提供比所要求更 多的信息并且更難通過快速掃視來讀取。例如,即使存在用于顯示當前操縱之后的第二指 令的路口情景,但是為了清楚起見,一些實施例僅顯示簡化箭頭。該自適應(yīng)方法也有利于空 間受約束的UI元素。例如,當正在進行多個任務(wù)或查看指令的列表時,一些實施例的地圖 繪制應(yīng)用程序繪制更簡單的操縱抽象形式,以便在更小區(qū)域中產(chǎn)生更容易識別的事務(wù)。
[0236] 圖21例示其中地圖繪制應(yīng)用程序顯示不同類型的圖形指示器箭頭以視覺地向用 戶呈現(xiàn)操縱的若干不同場景。第一場景2105例示列表視圖中示出的路線指引。列表視圖 顯示從起點位置到達終點位置的一系列逐向指令。在一些實施例中,用戶可查看逐向指令 而無需實際上進入導(dǎo)航模式或甚至遵循路線。在這種情況下,一些實施例顯示每個轉(zhuǎn)彎的 簡單型式的圖形指示器。這樣做是出于節(jié)約空間的目的以及以下事實:當用戶實際上不是 正在接近操縱時,交叉路口情景并非特別有幫助。
[0237] 第二場景2110例示當?shù)貓D繪制應(yīng)用程序在其上操作的用戶設(shè)備被鎖定時的逐向 導(dǎo)航。如以下詳細描述,應(yīng)用程序能夠顯示逐向?qū)Ш街噶睿词乖谠O(shè)備被鎖定時也是如此, 以便繼續(xù)向用戶提供指令。在這種場景中,如圖所示,在一些實施例中,簡化箭頭也被顯示。 這在鎖定屏幕內(nèi)提供轉(zhuǎn)彎的簡單圖形指示(在這種情況下,右轉(zhuǎn)),而不提供用戶可能難以 在鎖定屏幕中辨認出的情景數(shù)據(jù)。
[0238] 第三場景2115還例示在地圖繪制應(yīng)用程序在應(yīng)用程序在其上操作的設(shè)備上并未 打開(或當前未顯示)時的逐向?qū)Ш?。如以上詳細描述,在地圖繪制應(yīng)用程序未被顯示時, 應(yīng)用程序在通知橫幅空間內(nèi)顯示逐向?qū)Ш街噶?。與處于鎖屏模式很像,地圖繪制應(yīng)用程序 使用所指示操縱(在這種情況下,左轉(zhuǎn))的簡單圖形指示器。由于空間約束以及以上針對 鎖屏模式所描述的原因,使用簡單圖形指示器。
[0239] 先前三種場景例示其中使用簡單圖形指示器的情況。本領(lǐng)域的普通技術(shù)人員將認 識到,在一些實施例中,更復(fù)雜風(fēng)格化路口加上操縱圖形指示器可用于以上情況。以下三種 場景例示其中使用這些更復(fù)雜的指示器的情況。
[0240] 第四場景2120例示路線概覽指引,其中用戶可查看從起點位置到終點位置的整 條路線。用戶可橫掃不同指令(例如,使用橫掃手勢)以查看操縱之間的路線路段。這里, 使用復(fù)雜路口指示,從而示出交叉路口情景(T字交叉路口)和所做出的通過交叉路口的操 縱,其中在交叉路口情景上方強調(diào)操縱箭頭。
[0241] 第五場景2125例示標準逐向?qū)Ш剑矗炔惶幱阪i屏模式,也不具有不同應(yīng)用程 序打開等)的情景中的導(dǎo)航指令。在這種情況下,使用更復(fù)雜的箭頭圖形指示器。在例示 的實例中,道路路口比先前實例稍微復(fù)雜,其中第四支路是從接近方向向上再向右調(diào)整角 度。第六場景2130還例示逐向?qū)Ш狡陂g的導(dǎo)航指令。在這種情況下,正在執(zhí)行的操縱是U 形轉(zhuǎn)彎。如在場景2125中用路口支路表示U形轉(zhuǎn)彎將會導(dǎo)致箭頭向上再向下指向同一支 路(底部支路)。因此,應(yīng)用程序替代顯示所存儲的U形轉(zhuǎn)彎指示器箭頭。
[0242] 圖22例示用于同一轉(zhuǎn)彎的若干場景以及不同箭頭可用于同一轉(zhuǎn)彎的方式。第一 場景2205在逐向?qū)Ш街噶钪欣居肄D(zhuǎn)到第一大街。如同在圖21中,使用復(fù)雜圖形指示器。 第二場景2210例示逐向?qū)Ш狡陂g的情況,其中右轉(zhuǎn)到第一大街是快速連續(xù)進行的兩個操 縱中的第二操縱。在這種情況下,第二指令在第一指令之后很快到來,所以應(yīng)用程序提供對 將到來的兩個操縱的指示。第二操縱在顯示上被分配較少空間,并且因此使用簡化箭頭。第 三場景2215例示路線指引列表中的簡化箭頭指示器的使用。此外,如就路線指引列表中的 第二操縱所示,一些實施例在以下情況下用公路標志(路盾)替換簡化方向指示器:操縱在 這種路盾/標志可用的道路上結(jié)束。第四場景2220和第五場景2225例示處于鎖屏模式下 和在地圖繪制應(yīng)用程序未顯示在設(shè)備上時的用于右轉(zhuǎn)的簡化箭頭指示器。
[0243] 2.不同情景中的不同導(dǎo)航指今
[0244] -些實施例的地圖繪制應(yīng)用程序在各種情況下顯示文本路線指令,其中一些情況 比其它情況更加受空間約束,并且在其中一些情況下,其它引導(dǎo)元素提供關(guān)于操縱的可替 代文本指令的信息。應(yīng)用程序不是選擇單個指令串并且隨后如約束所決定那樣縮小字體或 截短,而是使用極其復(fù)雜的方法根據(jù)關(guān)于操縱本身的許多細節(jié)來合成最佳適于每個情景的 字串。
[0245] 對于給定情景,應(yīng)用程序通過考慮因素諸如可用空間、由除文本外的手段(例如, 圖形指示器、道路標志等)傳達的信息的量、每個指令變體的局部長度以及其它因素來選 擇指令。通過合成并且評估本地位于客戶端設(shè)備上的若干替代形式(而非只是從地圖繪制 服務(wù)接收指令本文),地圖繪制應(yīng)用程序可在每個場景下選取最佳指令串。此外,這種方法 允許應(yīng)用程序在不同尺寸的設(shè)備上使用不同指令文本(例如,與較小智能電話相比,在平 板電腦上使用更多文本)。類似方法也可用于需要配合在特定的時間量內(nèi)的說出指令,并且 當使用嗓音指令時,一些實施例的應(yīng)用程序?qū)p少所顯示指令的長度。
[0246] 圖23例示根據(jù)一些實施例的合成路口處的特定操縱的不同指令的實例。圖24和 圖25隨后例示其中使用操縱的這些不同指令的不同場景。如圖所示,地圖繪制應(yīng)用程序使 用所接收的路線指令和路口數(shù)據(jù)來辨識操縱指令的具體方面。表2305概念性地例示可針 對路口生成各種字串的方式。具體地,操縱指令包括"At (在)"字段、"Turn (轉(zhuǎn)彎)"字段、 "Onto (到達)"字段、"Towards (朝向)"字段和"For (行進)"字段。針對每個路口,應(yīng)用 程序初始填充這些字串字段,以便合成來自字段的指令。
[0247] 在一些實施例中,"At"字段基于包括交通燈和停車標志信息等的地圖信息。針對 圖23中所示的實例,第一路口出現(xiàn)"在道路的終點處",而第二路口出現(xiàn)"在下一個燈"處。 "Turn"字段描述要做出的操縱;此字段的實例包括"右轉(zhuǎn)"(在第一路口處執(zhí)行的操縱)、 "離開高速公路"、"靠左"、"略微左轉(zhuǎn)"、"U形轉(zhuǎn)彎"或其它操縱。包括操縱描述的路線指引 可映射至"Turn"字段的不同的可能的字串。
[0248] "Onto"字段指示操縱離開路口所到達的途徑(S卩,街道、高速公路等)。在圖23 中的第一路口的情況下,操縱離開路口"到達"第一大街。"Towards"字段指示出口支路所 指向的標記(從地圖數(shù)據(jù)或路口數(shù)據(jù)獲得)。在一些實施例中,地圖繪制應(yīng)用程序分析后續(xù) 路口的出口支路,并且使用此道路的名稱作為" towards "字段。在示例中,第二路口左轉(zhuǎn)到 達B大街,因此,第一路口的"Towards"字段指示操縱"朝向B大街。其它實施例使用與目 前路口的出口街道相交的下一道路、主要道路(例如,高速公路)或其它可容易識別的描述 符(例如,城市等)。"For"字段指示路線將遵循"Onto"字段中的道路(即,路口離開所到 達的道路)所沿著的距離。因此,在示例性指令中,下一路口將在0. 1英里處,因此"For" 字段是"行進0.1英里"。
[0249] 接著,在生成用于一組指令的每個組成字串之后,一些實施例的地圖繪制應(yīng)用程 序生成不同水平的指令。表2300例示用于第一路口的一組合成指令。具體地,表2300例 示用于特定路口的具有變化長度的五組指令。然而,本領(lǐng)域的普通技術(shù)人員將認識到,不同 實施例可基于一組字串字段包括較少、另外、或不同的合成字串。
[0250] 第一指令集使用所有五個字段。這是最長的指令集,讀作"在道路的終點處,右轉(zhuǎn) 到達第一大街,朝向B大街,行進0. 1英里"。因為它是最長的指令集,應(yīng)用程序為該指令集 分配等級1。第二指令集移除"For"字段,僅使用"At"字段、"Turn"字段、"Onto"字段和 "Towards"字段。第三指令集移除"At"字段。這些字段增加內(nèi)容,并且因此在另外的空間 可用時具有這些字段的話更好。然而,它們很少與操縱本身成一整體,并且因此是在縮短指 令文本時要移除的第一字段。接著,對于第四指令集,應(yīng)用程序移除"Towards"字段,因為 "Turn"字段和"Onto"字段被認為是更重要的。最后,第五指令集僅包含"Turn"字段,只是 說明"右轉(zhuǎn)"。
[0251] 同樣,當不同長度指令(這些指令仍有意義)可用時,一些實施例將包括另外的指 令集。例如,在"For"字段短于"At"字段的情況下,一些實施例將包括移除"At"字段但保 留"For"字段的指令集。這使應(yīng)用程序能夠在第二指令集(其中移除"For"字段)對于所 分配的空間而言正好略長的情況下具有另一選項。此外,一些實施例可包括另外、更少或不 同的字段。例如,一些實施例可包括"In"字段,該字段給出與將到來的路口的距離(即,"在 0.5英里處......")。
[0252] 圖24和圖25例示多種不同情況下的若干不同場景,在這些場景中,地圖繪制應(yīng)用 程序針對表2305中的第一路口的特定操縱顯示自適應(yīng)指令的不同實例。在這種情況下, 完整指令是"在〇. 5英里處,在道路的終點處,右轉(zhuǎn)到達第一大街,朝向B大街,行進0. 1英 里"。然而,因為實例并不包括"In"字段,最高等級的指令比這稍短。為了確定針對特定顯 示使用哪個指令集,一些實施例的地圖繪制應(yīng)用程序確定指令集的最大長度,隨后選擇配 合在所分配空間中的最高等級的集。
[0253] 第一場景2405例示在逐向?qū)Ш狡陂g顯示的特定操縱的指令。在這種情況下,應(yīng)用 程序為指令分配文本行。距離(0.5英里)已經(jīng)以大字體顯示在導(dǎo)航標志的頂部處,但這并 不算作文本行中的一行。在三行可用的情況下,最高等級的指令集可用于導(dǎo)航標志。
[0254] 第二場景2410例示處于鎖屏模式下時的特定操縱的逐向?qū)Ш街噶?。在這種模式 下,在一些實施例中,僅僅分配兩行大文本,所以配合的最高等級的指令使用僅僅"Turn"字 段和"Onto"字段。這簡化成轉(zhuǎn)彎的方向和用戶轉(zhuǎn)彎到達的街道。第三場景2415例示在 地圖繪制應(yīng)用程序在設(shè)備上未打開時的用于操縱的導(dǎo)航指令,在這種情況下,指令示出為 警示橫幅。在這種情況下,應(yīng)用程序僅分配一行向給指令,所以使用最低等級的指令("右 轉(zhuǎn),,)。
[0255] 第四場景2420例示用于路線指引的列表視圖中的信息的顯示。如上所述,此視圖 列出用于沿路線的每個操縱的后續(xù)指令。在一些實施例中,列表視圖中的用于每個指引的 橫幅具有可變高度,并且因此一直使用完整指令集。因此,最高等級的指令集"在道路的終 點處,右轉(zhuǎn)到達第一大街,朝向B大街"用于列表中的第一操縱。如圖所示,與下面兩個操縱 相比,此操縱占用額外文本行。
[0256] 第五場景2425例不3D模式下的逐向?qū)Ш健Ec第一場景2405相比,在處于3D模 式時,一些實施例為指令集在導(dǎo)航標志中分配較少空間,以便可查看到更多3D顯示。因此, 應(yīng)用程序使用第三等級的指令集,因為這是使用給定文本尺寸配合在兩行中的最大指令。
[0257] 圖25例示其中地圖繪制應(yīng)用程序使用合成的指令集的另外場景。第六場景2505 例示用戶可逐步查看(例如,通過橫掃手勢)的路線概覽指令的顯示。在一些實施例中,應(yīng) 用程序為逐步查看指令分配與逐步導(dǎo)航相同的空間量,并且因此應(yīng)用程序同樣使用包括所 有字段的最高等級的指令集。
[0258] 第七場景2510與第一場景2405相同,但明確地指示說出導(dǎo)航已關(guān)閉。這里提供 第七場景2510以與第八場景2515形成對比,在第八場景2515中,在逐向?qū)Ш狡陂g啟用了 嗓音指令。針對嗓音導(dǎo)航,應(yīng)用程序確定允許用于說出指令的最大時間量,隨后確定可在這 個所分配的時間內(nèi)說出的最高等級的指令集。在這種情況下,時間允許選擇整個最高等級 的指令集。此外,當激活嗓音導(dǎo)航時,應(yīng)用程序減小所顯示導(dǎo)航標志的尺寸。因此,應(yīng)用程 序在顯示內(nèi)顯示第三等級的指令集。
[0259] 最后,一些實施例的地圖繪制應(yīng)用程序可在具有不同尺寸顯示屏的不同類型的設(shè) 備上操作。例如,應(yīng)用程序可在智能電話和較大平板電腦兩者上操作。當在較大設(shè)備上操 作時,一些實施例允許更多空間用于導(dǎo)航標志。第九場景2520例示較大設(shè)備(例如,平板 電腦)上的逐向3D導(dǎo)航。與第五場景2425中不像,導(dǎo)航標志為要使用的最高等級的指令 集提供足夠空間。
[0260] 以上描述描述一些實施例,這些實施例針對操縱生成若干不同指令集、為指令集 分等級、并且隨后自適應(yīng)地確定這些指令集中的哪個最佳地配合在特定空間中。在一些實 施例中,應(yīng)用程序辨識可供用于指令顯示的字符的最大數(shù)量。應(yīng)用程序隨后以最高等級的 指令集開始,并且確定指令集是否配合在所辨識數(shù)量的字符中。當指令集配合時,應(yīng)用程序 選擇并且顯示指令集。當指令集并不配合時,應(yīng)用程序移動到下一等級的指令集并且執(zhí)行 相同測試。如果指令集都不配合,那么應(yīng)用程序使用最接近配合的一個指令集。一些實施 例隨后利用省略號來截短指令集,以便指示指令集并非完全配合在空間內(nèi)。這可導(dǎo)致從字 串中移除元素。
[0261] 除了文本之外,一些實施例在指令集內(nèi)使用文本替代物。具體地,對于由路盾標志 表示的道路(例如,州際高速公路、國道),應(yīng)用程序使用道路的路盾表示而非道路名稱(例 如,使用其內(nèi)具有"1-5"的藍色和紅色路盾,而非"黃金州高速公路"或"州際公路5")。在 評估不同指令集時,一些實施例將這些標志視為固定數(shù)量的字符。
[0262] 以上描述描述地圖繪制應(yīng)用程序的一些實施例,其中關(guān)于使哪些元素的決定主要 基于嘗試使用最大長度的指令集來執(zhí)行。一些其它實施例將是否以不同視覺方式向用戶呈 現(xiàn)指令集的某些元件考慮在內(nèi),并且可能潛在地移除這些元素。
[0263] 例如,當顯示清楚表明轉(zhuǎn)彎是略微右轉(zhuǎn)的詳細指令箭頭時,一些實施例縮短指令 以移除"略微"或甚至移除整個對轉(zhuǎn)彎的標引,替代地使用沿"CA-17S,朝向Santa Cruz"的 線路的指令。類似地,如果顯示大的道路路盾標志,那么可省略指令的"CA-17S"部分。
[0264] B.標志的動杰和動畫展示
[0265] 圖20的上述情況例示導(dǎo)航標志的靜態(tài)顯示(即,未示出任何對標志做出的改變)。 一些實施例提供這些導(dǎo)航標志的動畫或其它動態(tài)顯示。這些顯示包括在用戶做出操縱并且 標志被移除時經(jīng)過地圖顯示中的用戶表示(導(dǎo)航定位器)上方的標志的外觀。此外,在操 縱逼近時可對標志應(yīng)用精妙動畫,以便使得用戶注意將到來的操縱。最后,當兩個操縱快速 連續(xù)發(fā)生時,應(yīng)用程序?qū)⒌诙倏v的導(dǎo)航標志顯示為排列在第一標志之后。
[0266] L導(dǎo)航標志的動畫移除和展示
[0267] 圖26以四個階段2605-2620例示用于移除導(dǎo)航標志并且引入下一標志的一些實 施例的動畫。在一些實施例中,所移除標志的動畫模擬道路標志在公路上方經(jīng)過的動畫。雖 然該圖例示在3D模式的情景內(nèi)的動畫,但是一些實施例還包括處于2D模式的動畫。其它 實施例具體地提供用于3D模式的動畫。
[0268] 第一階段2605例示導(dǎo)航標志2625,導(dǎo)航標志2625指示用戶在100英尺處執(zhí)行匯 入主街的操縱。第二階段2610例示在用戶執(zhí)行操縱時移除導(dǎo)航標志2625的動畫。當用戶 在物理上匯入主街時,導(dǎo)航標志2625放大并且開始從視場中消失,如同高速公路上方的道 路標志那樣。在一些實施例中,地圖繪制應(yīng)用程序還對標志應(yīng)用視點傾斜,以進一步模仿在 上方經(jīng)過的標志的外觀。
[0269] 在第三階段2615,后續(xù)導(dǎo)航標志2630開始從水平面或很靠近水平面的逼近位置 顯現(xiàn)出來。直到水平面,一些實施例實際上并非始終以3D模式渲染出地圖,并且從3D渲染 結(jié)束時的距離處開始以動畫方式顯示將到來的導(dǎo)航標志。這個動畫意圖類似于關(guān)于高速公 路上的道路標志的方法,但是通常是以更快的速度進行(以便快速地使導(dǎo)航標志達到實際 尺寸,并且避免冗長動畫的干擾)。第四階段2620例示所得的顯示,其中后續(xù)導(dǎo)航標志2630 以正常位置顯示在屏幕的頂部處。
[0270] 除了圖26中所示的動畫之外,在一些情況下,一些實施例還包括更復(fù)雜的動畫。 舉例來說,當導(dǎo)航標志在用戶做出轉(zhuǎn)彎操縱時離開顯示時,一些實施例使導(dǎo)航標志旋轉(zhuǎn),以 便模仿用戶在標志下方轉(zhuǎn)彎的景象。
[0271] 2.偶爾強調(diào)
[0272] 在一些情況下,地圖繪制應(yīng)用程序可在由導(dǎo)航標志所描述的操縱將被執(zhí)行很久之 前就顯示導(dǎo)航標志。例如,如果用戶進入高速公路,并且下一操縱涉及15英里處的高速公 路出口,應(yīng)用程序可顯示以下導(dǎo)航標志,該導(dǎo)航標志在用戶需要開始準備實際離開高速公 路很久之前就指示將到來的高速公路出口。在警示用戶正在接近要執(zhí)行操縱的路口時,不 同實施例使用不同技術(shù)。一些實施例包括音頻警示,其中用戶設(shè)備提供嗓音導(dǎo)航以指示正 在接近路口。
[0273] 結(jié)合音頻警示或無論何時關(guān)閉音頻警示,一些實施例通過標志的顯示來提供操縱 即將到來的視覺指示。例如,在一些實施例中,應(yīng)用程序修改標志的顏色(例如,從綠色到 白色或從綠色到黃色)以及圖形指示器箭頭的顏色(例如,從白色到黑色)。其它實施例在 導(dǎo)航標志上顯示不太突出的閃光,該閃光旨在捕捉用戶的注意力而不會過度突出。
[0274] 圖27以四個階段2705-2720例示這種閃光動畫。這些階段將顯示的背景例示為 灰色,以便當閃光在標志上移動(以白色示出)時與閃光形成對比。第一階段2705例示當 前指示1000英尺處的右轉(zhuǎn)操縱的導(dǎo)航標志2725。
[0275] 在第二階段2710,現(xiàn)在距離右轉(zhuǎn)僅500英尺。應(yīng)用程序已經(jīng)判斷這是向用戶警示 將到來的操縱的適當距離,并且因此已經(jīng)開始在導(dǎo)航標志2725上顯示閃光。第三階段2715 和第四階段2720例示此動畫的繼續(xù)部分。在一些實施例中,動畫類似于光在標志上從左向 右移動。其它實施例顯示從右到左的類似動畫,或其它此類動畫(例如,光從標志的中心福 射出等)。
[0276] -些實施例基于各種因素來改變動畫開始時距操縱的距離,這些因素諸如設(shè)備移 動的速度(基于位置跟蹤信息)和用戶當前行進的道路的速度限制。例如,一些實施例在 交叉路口之前具有應(yīng)顯示動畫的設(shè)定時間,并且使用這種速度信息來計算適當距離。一些 實施例還基于所做出的操縱的類型來改變距離(例如,與用于右轉(zhuǎn)離開單行道路相比留有 更多時間用于離開高速公路)。
[0277] 3.第二標志
[0278] 當路線要求快速連續(xù)做出兩個不同操縱時,一些實施例將用于第二操縱的導(dǎo)航標 志顯示為疊堆在用于第一操縱的導(dǎo)航標志下方。這就第二操縱的將發(fā)生性警示用戶。當將 連續(xù)地執(zhí)行若干操縱時,一些實施例將多于兩個導(dǎo)航標志疊堆在彼此之上。
[0279] 圖28以四個階段2805-2820例示用于快速連續(xù)的操縱的兩個標志的顯示。在第 一階段2805,第一導(dǎo)航標志2825指示在1000英尺的距離處將到來的操縱是左轉(zhuǎn)到東大 街。由于這是實際尺寸的逐向?qū)Ш綐酥?,?yīng)用程序為此操縱顯示第一類型的圖形指示器箭 頭(即,復(fù)雜箭頭)。如通過與駕駛員(將主要是著眼于道路)可進行相比更仔細的查看在 地圖上可見,為了遵循給定路線,將要求在左轉(zhuǎn)到東大街之后不久右轉(zhuǎn)到南大街。為了使用 戶對此更加清楚,應(yīng)用程序在第一導(dǎo)航標志2825下方顯示第二導(dǎo)航標志2830。因為提供更 少空間,第二標志包括第二類型的圖形指示器箭頭(即,更簡單的箭頭)。此外,在第二標志 2830中,更少信息被提供給用戶。
[0280] 第二階段2810例示用戶現(xiàn)在已行進了 900英尺,使得距離左轉(zhuǎn)操縱僅100英尺。 除了在導(dǎo)航標志2825中對距離的更新(以及3D地圖的移動)之外,顯示尚未改變。第三 階段2815例示緊接在已經(jīng)執(zhí)行左轉(zhuǎn)操縱進入東大街之后的顯示。如圖所示,第二導(dǎo)航標志 2830現(xiàn)為實際尺寸的導(dǎo)航標志,具有復(fù)雜的圖形指示器箭頭和另外的文本信息(50英尺的 距離和右轉(zhuǎn)的文本指令)。一些實施例以動畫方式顯示從較小標志到實際尺寸標志的轉(zhuǎn)變, 而其它實施例只是用一個標志來替換另一個。
[0281] 第四階段2820例示用戶已經(jīng)做出第二操縱(右轉(zhuǎn)到南大街)之后的顯示。應(yīng)用 程序現(xiàn)在顯示用于下一操縱,即左轉(zhuǎn)到西大街的導(dǎo)航標志2835。由于距離此操縱2. 8英里, 應(yīng)用程序并不是將標志2835疊堆在標志2830下方。由于導(dǎo)航處于3D模式,一些實施例就 顯示以上參考圖26所述的動畫。
[0282] 在上述示例中,應(yīng)用程序疊堆相隔50英尺發(fā)生的操縱的標志,但不疊堆相隔若干 操縱發(fā)生的操縱的標志。將兩個操縱視為連續(xù)情況的閾值距離可取決于多種因素。一些實 施例存儲不可變的設(shè)定距離。其它實施例著眼于操縱中涉及的道路的類型(例如,基于描 述后端地圖數(shù)據(jù)中的道路的功能道路類變量)或速度限制,采用在操縱之后對于用戶而言 合適的速度,并且基于此數(shù)據(jù)(即,基于操縱之間的閾值時間,諸如30秒)設(shè)定閾值距離。
[0283] III.不處于導(dǎo)航應(yīng)用稈序時的導(dǎo)航指今
[0284] A.當設(shè)各解除鎖定并目.導(dǎo)航if在后臺橾作時的指今
[0285] 一些實施例允許導(dǎo)航應(yīng)用程序在其它應(yīng)用程序在前臺運行的同時在后臺運行。這 些實施例在前臺提供不突出的導(dǎo)航指令,即使在主導(dǎo)航應(yīng)用程序正在后臺運行并且另一個 應(yīng)用程序或應(yīng)用程序啟動器正在前臺運行時也是如此。在后臺運行的應(yīng)用程序的示例包括 嗓音激活個人助理、郵件、瀏覽器、電話、日歷、或設(shè)備上可用的任何其它應(yīng)用程序。
[0286] 一些實施例的導(dǎo)航應(yīng)用程序在屏幕上提供導(dǎo)航條(有時稱作"橫幅"或"導(dǎo)航橫 幅")以及常規(guī)的狀態(tài)條。一些實施例在沒有提供導(dǎo)航指令時提供導(dǎo)航狀態(tài)條,并且在給出 導(dǎo)航指令時提供導(dǎo)航指令條。圖29例示本發(fā)明的一些實施例中的當導(dǎo)航正在后臺操作時 的用戶設(shè)備顯示2900。用戶設(shè)備顯示2900以四個階段2901-2904示出。
[0287] 在階段2901中,顯示2900示出導(dǎo)航應(yīng)用程序2905、狀態(tài)條2980和按鈕2915。狀 態(tài)條2980示出不同信息,諸如電池水平、時間、接收條等。在一些實施例中,狀態(tài)條顯示指 示器諸如箭頭,該指示器指示導(dǎo)航應(yīng)用程序或地圖應(yīng)用程序正在運行。在這個階段2901 中,導(dǎo)航應(yīng)用程序2905正在前臺運行,直到設(shè)備接收對按鈕2915的選擇(例如,點擊)從 而從導(dǎo)航應(yīng)用程序切換至應(yīng)用程序啟動視圖,應(yīng)用程序啟動視圖本身可表征為應(yīng)用程序啟 動應(yīng)用程序。在一些實施例中,替代或除了按鈕,存在將導(dǎo)航應(yīng)用程序切換至另一個應(yīng)用程 序(例如,應(yīng)用程序啟動視圖或其它應(yīng)用程序)的其它控件。階段2901還示出:道路名稱 顯示在道路標志上而不是在橫幅中。如上所述,一些實施例的地圖繪制應(yīng)用程序可在道路 上和/或在橫幅中顯示道路名稱,無論地圖繪制應(yīng)用程序操作時所處的模式如何。
[0288] 在階段2902中,應(yīng)用程序啟動器2975在前臺顯示。前臺應(yīng)用程序啟動器2975具 有圖標2925,圖標2925在導(dǎo)航應(yīng)用程序在后臺運行時具有它們的正常功能(例如,啟動其 它應(yīng)用程序)。在階段2902中,后臺導(dǎo)航狀態(tài)條2910被示出在狀態(tài)條2980下方。一些實 施例以與導(dǎo)航未在后臺運行時(如階段2901中所示)的狀態(tài)條顏色(例如,灰色)不同的 顏色(例如,綠色)在導(dǎo)航在后臺運行時(如階段2902中所示)顯示狀態(tài)條2980和/或 導(dǎo)航狀態(tài)條2910。在其它實施例中,狀態(tài)條2980在導(dǎo)航應(yīng)用程序正在后臺運行、導(dǎo)航應(yīng)用 程序關(guān)閉、或?qū)Ш綉?yīng)用程序正在前臺運行時具有相同顏色。在一些實施例中,導(dǎo)航狀態(tài)條的 厚度與導(dǎo)航應(yīng)用程序當前未在導(dǎo)航指令條中顯示指引時的狀態(tài)條的厚度相同或近似地相 同(例如,厚度的75%至125% )。
[0289] 在一些實施例中,導(dǎo)航狀態(tài)條2910既是導(dǎo)航應(yīng)用程序正在后臺運行的指示器又 是用于使導(dǎo)航應(yīng)用程序進入前臺的控件。在一些實施例中,導(dǎo)航狀態(tài)條2910并不限于僅僅 隨著應(yīng)用程序啟動屏幕2975 -起顯示,而是顯示在正在前臺運行的任何應(yīng)用程序的頂部 處、位于狀態(tài)條2980下方。
[0290] 在階段2903中,通過觸摸屏幕上的導(dǎo)航狀態(tài)條2910來選擇導(dǎo)航狀態(tài)條2910。一 些實施例還允許由其它基于觸摸或基于運動的輸入設(shè)備以及非基于觸摸或基于運動的輸 入設(shè)備對導(dǎo)航條進行選擇。在一些實施例中,用于選擇的一些設(shè)備包括鍵盤、鼠標、操縱桿、 觸摸板等(例如,選擇可以是來自鼠標的點擊)。對導(dǎo)航狀態(tài)條2910的選擇(如階段2903 中所示)使得導(dǎo)航應(yīng)用程序2905在階段2904中返回前臺。除了利用導(dǎo)航狀態(tài)條2910返 回導(dǎo)航應(yīng)用程序(即,使得導(dǎo)航應(yīng)用程序進入前臺)之外,在一些實施例中,導(dǎo)航條具有其 它功能。例如,導(dǎo)航狀態(tài)條2910在一些實施例中用于在導(dǎo)航應(yīng)用程序本身仍在后臺時提供 導(dǎo)航指令(例如,逐向指引)。在其它實施例中,導(dǎo)航狀態(tài)條在各種時間由提供指令的導(dǎo)航 指令條替換。
[0291] 圖30概念性地例示用于在導(dǎo)航應(yīng)用程序正在后臺運行時提供指引的一些實施例 的過程3000。圖30將會相對于首先簡要描述的圖31來描述。圖31例示一些實施例的用 戶界面,其中當導(dǎo)航應(yīng)用程序正在后臺運行并且另一個應(yīng)用程序正在前臺運行時給出導(dǎo)航 指令。該圖示出六個階段3101-3106。第一階段包括狀態(tài)條3180、導(dǎo)航狀態(tài)條3110和前臺 應(yīng)用程序3115。剩余階段31023106示出在設(shè)備向前移動并且隨后通過導(dǎo)航點(本文有時 稱為操縱,一些導(dǎo)航點表示道路中的路口)時對導(dǎo)航狀態(tài)條3110的改變(即,導(dǎo)航狀態(tài)條 3110由導(dǎo)航指令條3120-3150的替換)。
[0292] 如圖30中所示,過程3000在前臺顯示(在3005)導(dǎo)航應(yīng)用程序。該過程隨后確 定(在3010)是否已經(jīng)激活控件(例如,圖29的按鈕2915)。如果沒有激活,該過程保持 在前臺顯示導(dǎo)航應(yīng)用程序直到控件被激活(或在一些實施例中,直到一些其它控件被激活 或設(shè)備進入睡眠模式)。當控件被激活時,該過程在前臺顯示(在3015)應(yīng)用程序啟動模 式,并且顯示(也在3015)導(dǎo)航狀態(tài)條3110以指示導(dǎo)航正在后臺運行。這在圖31中的階 段3101中示出。
[0293] 本領(lǐng)域的普通技術(shù)人員將會理解,在一些實施例中,導(dǎo)航條(導(dǎo)航指令條和/或?qū)?航狀態(tài)條)顯現(xiàn)在一些或所有前臺應(yīng)用程序而非僅僅應(yīng)用程序啟動應(yīng)用程序的頂部處。在 一些實施例中,一個或多個控件的激活使得啟動應(yīng)用程序之外的應(yīng)用程序移動至前臺。此 夕卜,在一些實施例中,在一個前臺應(yīng)用程序和另一個之間進行切換之后,而非僅僅在從導(dǎo)航 應(yīng)用程序直接切換至特定前臺應(yīng)用程序時,導(dǎo)航條繼續(xù)顯現(xiàn)在前臺應(yīng)用程序的上方。正顯 示在另一個應(yīng)用程序上方的導(dǎo)航條的示例在下述圖32中示出。
[0294] 過程3000隨后確定(在3020)用戶設(shè)備是否在導(dǎo)航點(例如,在路點轉(zhuǎn)彎處)附 近。當應(yīng)用程序確定(在3020)設(shè)備并不在導(dǎo)航點附近時,顯示保持如圖31的階段3101 中所示。
[0295] 階段3101示出設(shè)備在導(dǎo)航應(yīng)用程序作為后臺應(yīng)用程序活動并且前臺應(yīng)用程序 3115是應(yīng)用程序啟動屏幕時的狀態(tài)。尚未關(guān)閉導(dǎo)航應(yīng)用程序,但替代地,已經(jīng)使導(dǎo)航應(yīng)用程 序在后臺開啟。導(dǎo)航應(yīng)用程序正在后臺開啟的階段3101中的可見指示是導(dǎo)航狀態(tài)條3110。 另外,一些實施例在導(dǎo)航正在后臺運行時以與狀態(tài)條3180的通常顏色不同的顏色來顯示 狀態(tài)條3180。在一些實施例中,狀態(tài)條3180和導(dǎo)航狀態(tài)條3110以不同色調(diào)的綠色示出。 在一些實施例中,狀態(tài)條和導(dǎo)航條之一或二者的顏色或色調(diào)隨時間而改變,以便注意以下 事實:導(dǎo)航應(yīng)用程序正在后臺執(zhí)行。
[0296] 在這個階段3101,設(shè)備(和攜帶設(shè)備的人或車輛)遠離下一個導(dǎo)航點。一些實施 例的應(yīng)用程序(包括圖31中例示的應(yīng)用程序)并不在應(yīng)用程序正在后臺運行的整個時間 跨度上顯示轉(zhuǎn)彎信息。在一些此類實施例中,當設(shè)備并不在導(dǎo)航點附近時(例如,當沒有轉(zhuǎn) 彎迫近時),設(shè)備在導(dǎo)航狀態(tài)條3110中顯示"觸摸查看導(dǎo)航"或"觸摸返回導(dǎo)航"、或指示選 擇導(dǎo)航條將使導(dǎo)航應(yīng)用程序進入前臺的一些其它消息。在其它實施例中,無論設(shè)備是否在 導(dǎo)航點附近,導(dǎo)航指令都被顯示。
[0297] 重新參見圖30,當過程3000確定(在3020)設(shè)備正在接近下一個導(dǎo)航點時,該過 程將導(dǎo)航狀態(tài)條3110改變(在3025)成顯示新導(dǎo)航指令的導(dǎo)航指令條3120。這在圖31的 階段3102中示出。在階段3102中,設(shè)備正在接近導(dǎo)航點(500英尺處的左轉(zhuǎn))。在這個階 段3102中,導(dǎo)航指令條3120顯示導(dǎo)航指令,導(dǎo)航指令包括指示左轉(zhuǎn)的箭頭以及距左轉(zhuǎn)的距 離(500英尺)。過程3000隨后顯示(在3030)倒計數(shù)(以英尺計)直到過程3000確定 (在3035)已通過導(dǎo)航點。
[0298] 在一些實施例中,階段3101和3102中的導(dǎo)航條被視為是偶然占據(jù)屏幕上的類似 地方的獨立實體。在此類實施例中,階段3101的導(dǎo)航條可表征為"導(dǎo)航狀態(tài)條",而在階段 3102中具有導(dǎo)航指令的導(dǎo)航條可表征為"導(dǎo)航指令條"或"導(dǎo)航方向條"。在一些實施例中, 導(dǎo)航指令條3120比導(dǎo)航狀態(tài)條3110厚(例如,兩倍厚度或更多倍厚度)并且蓋住狀態(tài)條。 在其它實施例中,當導(dǎo)航條顯示導(dǎo)航方向時,導(dǎo)航條被視為是擴展(例如,擴展到其先前厚 度的兩倍或更多倍)以蓋住或替換狀態(tài)條的單個實體。
[0299] 在階段3103和3104中,隨著設(shè)備移動得更靠近導(dǎo)航點,在導(dǎo)航指令條3130(100 英尺)和3140(0英尺)中的導(dǎo)航指令中倒計數(shù)距導(dǎo)航點的距離。在階段3104中,指令已 開始切換到下一指令。
[0300] 在階段3104中,實際轉(zhuǎn)彎已經(jīng)發(fā)生。導(dǎo)航指令條3150(在階段3105中示出)中 的導(dǎo)航指令正在以用于下一個導(dǎo)航點的指令替換導(dǎo)航指令條3140中的先前導(dǎo)航點指令。 在包括例示的實施例的一些實施例中,導(dǎo)航指令以模擬具有多個面的翻動標志的形式來切 換。因此,在指令3140開始翻動時,指令3140示出指令"0英尺左轉(zhuǎn)"。在一些實施例中, 標志上翻;在一些實施例中,標志下翻。在其它實施例中,設(shè)備使用其它轉(zhuǎn)變方法來移除導(dǎo) 航指令條3140中的舊導(dǎo)航指令,并且以導(dǎo)航指令條3150中的新導(dǎo)航指令來替換舊導(dǎo)航指 令(在階段3105中)。例如,一些實施例在舊指令向上、向下或向一旁滑動時模擬新指令在 相同方向上的滑動。其它實施例模擬使新指令在舊指令之上滑動。其它實施例只是使得舊 指令消失來由新指令替換。
[0301] 當?shù)竭_導(dǎo)航點時,過程3000確定(在3040)是否已經(jīng)到達最終目標。如果已經(jīng)到 達最終目標,導(dǎo)航結(jié)束(這在下述圖33中例示)。如果尚未到達最終目標,那么存在新導(dǎo)航 點要顯示(在3045)。這在圖31的階段3105中示出。
[0302] 階段3105緊接在已經(jīng)完成左轉(zhuǎn)之后發(fā)生。導(dǎo)航指令條3150中的導(dǎo)航指令已經(jīng)完 全替換導(dǎo)航指令條3140中的導(dǎo)航指令。導(dǎo)航指令條3150中的新導(dǎo)航指令指示距下一個導(dǎo) 航點的有效距離。如上所述,一些設(shè)備的應(yīng)用程序被編程主要在設(shè)備位于導(dǎo)航點附近時而 非任何時間顯示導(dǎo)航指令。因此,在導(dǎo)航指令條3150中顯示下一導(dǎo)航指令持續(xù)預(yù)設(shè)時段 之后(或在一些實施例中,在行進預(yù)設(shè)距離之后),在一些實施例中,應(yīng)用程序在階段3106 中返回示出導(dǎo)航狀態(tài)條3110(并且過程3000返回操作3015)。然而,當確定(在圖30的 3050)新導(dǎo)航點在附近時,過程3000立即開始倒計數(shù)(在3030)距下一個導(dǎo)航點的距離。 不同實施例的不同應(yīng)用程序使用各種不同距離來確定是否示出導(dǎo)航狀態(tài)條3110或?qū)Ш街?令(例如,導(dǎo)航指令條3120中的指令)。在一些實施例中,應(yīng)用程序在1英里、或半英里、或 四分之一英里、或1000英尺、或750英尺、或500英尺、或250英尺、或一些其它距離處切換 指令。
[0303] 圖32例示顯示在應(yīng)用程序的頂部處的導(dǎo)航條。該圖表明,導(dǎo)航條顯示在除應(yīng)用程 序啟動應(yīng)用程序之外的應(yīng)用程序中。該圖以階段3201-3203示出。在階段3201中,導(dǎo)航應(yīng) 用程序處于前臺,并且用戶已經(jīng)輸入命令(例如,雙按按鈕3210)以調(diào)出當前在后臺運行的 應(yīng)用程序的列表。在階段3202中,設(shè)備正在顯示一組圖標3220,這組圖標3220表示當前 處于后臺運行的應(yīng)用程序。在一些實施例中,這組圖標3220向上推動在前臺的應(yīng)用程序的 UI,如圖所示。在其它實施例中,在前臺的應(yīng)用程序的n被這組圖標3220覆蓋,而非是被 向上推動。
[0304] 第二階段3202還示出:用戶選擇圖標3225,圖標3225命令由圖標3225所表示的 應(yīng)用程序(例如,web瀏覽器)移至前臺并且導(dǎo)航應(yīng)用程序移至后臺。本領(lǐng)域的普通技術(shù) 人員將會理解,這僅僅是一些實施例將導(dǎo)航應(yīng)用程序切換至后臺并且將另一個應(yīng)用程序切 換至前臺的許多方式之一。例如,用戶可切換至應(yīng)用程序啟動視圖并且啟動應(yīng)用程序,該應(yīng) 用程序隨后將替換應(yīng)用程序啟動視圖作為前臺應(yīng)用程序。
[0305] 在階段3203中示出設(shè)備切換到前臺的web瀏覽器3230。導(dǎo)航指令條3235在屏幕 的頂部處,導(dǎo)航指令條3235指示導(dǎo)航應(yīng)用程序正在后臺運行并且指引用戶在50英尺處右 轉(zhuǎn)。在一些實施例中,當導(dǎo)航應(yīng)用程序當前并未提供指引時,狀態(tài)條和導(dǎo)航狀態(tài)條(例如, 如圖29中所示)將會顯現(xiàn)。
[0306] 在遵循由設(shè)備示出的導(dǎo)航指令之后,用戶將會到達他的預(yù)期目標。圖33例示一些 實施例中的設(shè)備3300的用戶界面,其中在導(dǎo)航應(yīng)用程序正在另一個應(yīng)用程序的后臺運行 時,設(shè)備到達其目標。該圖示出三個階段3301-3303。第一階段3301示出導(dǎo)航指令條3310 和前臺應(yīng)用程序3340。如圖所示,導(dǎo)航指令條3310中的指令指示"直走50英尺"。
[0307] 階段3302例示接近目標時的用戶設(shè)備3300。如這個階段中所示,導(dǎo)航指令條3310 指示"目標位于左側(cè)"。階段3303例示到達目標后的用戶設(shè)備3300。如圖所示,階段3301 和3302的導(dǎo)航指令條3310從屏幕移除,以便指示完成導(dǎo)航指令并且狀態(tài)條3380返回屏 幕。在一些實施例中,導(dǎo)航應(yīng)用程序保持在后臺打開,但在這個階段3303未視覺地顯示出 來。在其它實施例中,導(dǎo)航應(yīng)用程序在這個階段3303自行關(guān)閉。在其它實施例中,設(shè)備在 到達目標之后繼續(xù)顯示導(dǎo)航條。此外,一些實施例的應(yīng)用程序辨識一個位置作為車輛導(dǎo)航 的終點,并且指示其余路程必須步行完成,這是導(dǎo)航應(yīng)用程序所指引的(例如,在導(dǎo)航指令 條中)。
[0308] 階段3303還示出圖標3390尚未移動。然而,在其它實施例中,當導(dǎo)航指令條從屏 幕移除時,圖標3390可上移以占據(jù)在一些實施例中用于由導(dǎo)航指令條3310在先前階段占 據(jù)的空間的至少一部分。
[0309] 如上所述,在一些實施例中,導(dǎo)航狀態(tài)條和導(dǎo)航指令條被視為不同組件。上述圖示 出導(dǎo)航狀態(tài)條位于狀態(tài)條的下方。然而,在一些實施例中,當導(dǎo)航應(yīng)用程序正在后臺運行 時,狀態(tài)條本身被替換為導(dǎo)航橫幅。在一些實施例中,這個導(dǎo)航橫幅是常規(guī)狀態(tài)條高度的兩 倍。一些實施例的導(dǎo)航橫幅顯示一些或所有與其所替換的狀態(tài)條相同的信息。在一些實施 例中,導(dǎo)航橫幅在設(shè)備未在導(dǎo)航點附近時顯示該信息,并且在設(shè)備正位于導(dǎo)航點附近時并 不顯示該信息。當設(shè)備正位于導(dǎo)航點附近時,一些或所有狀態(tài)信息被移除,使得可更清楚地 看到與將到來的導(dǎo)航點相關(guān)的指引。
[0310] 執(zhí)行一些實施例的導(dǎo)航應(yīng)用程序的設(shè)備包括電話設(shè)備。在一些實施例中,當電話 呼叫正由設(shè)備處理并且導(dǎo)航應(yīng)用程序正在后臺運行時,關(guān)于電話呼叫的數(shù)據(jù)(例如,呼叫 時間)以電話呼叫狀態(tài)條替換導(dǎo)航狀態(tài)條或指令條。
[0311] 圖34例示呼叫狀態(tài)條和導(dǎo)航指令條之間的交互。該圖以三個階段3401-3403示 出。在階段3401中,呼叫正在繼續(xù),同時設(shè)備正在顯示應(yīng)用程序啟動視圖。呼叫是由狀態(tài) 條3410下方的呼叫狀態(tài)條3415指示。在一些實施例中,呼叫狀態(tài)條指示呼叫正在進行,包 含呼叫的持續(xù)時間的指示器,并且允許用戶選擇呼叫狀態(tài)條以返回通常用于處理呼叫的屏 幕視圖。在一些實施例中,初始狀態(tài)條3410(示出電池壽命等)轉(zhuǎn)變成指示呼叫正在進行 的顏色(例如,紅色或綠色)。在一些實施例中,電話呼叫狀態(tài)條3415的顏色與初始狀態(tài)條 在呼叫期間所顯示的顏色類似(例如,都是紅色調(diào)或都是綠色調(diào))。
[0312] 在一些實施例中,導(dǎo)航指令條3420在一些情況下重現(xiàn)并且替換電話數(shù)據(jù)。在階 段3402中,設(shè)備位于導(dǎo)航點附近。因此,導(dǎo)航指令條3420替換呼叫狀態(tài)條3415和狀態(tài)條 3410。在通過導(dǎo)航點之后,重新顯示呼叫狀態(tài)條3415和狀態(tài)條3410,如階段3403中所示。 在圖34的例示實施例中,一通過導(dǎo)航點,就重新顯示呼叫狀態(tài)條。然而,在一些實施例中, 直到在導(dǎo)航指令條3420中顯示下一導(dǎo)航指令之后,才重新顯示電話呼叫狀態(tài)條。
[0313] 階段3302和3303示出圖標3390尚未移動。然而,在其它實施例中,圖標可上移 或下移以占據(jù)不同空間,這取決于呼叫狀態(tài)條3415和導(dǎo)航指令條3420的存在。
[0314] B.設(shè)各鎖定時的指今
[0315] L 布局
[0316] 在一些實施例中,具有多個功能的設(shè)備(例如,運行多個應(yīng)用程序的移動電話)可 從各種應(yīng)用程序被置于鎖定模式。在一些實施例中,存在將設(shè)備置于鎖定模式的多種方式。 一些實施例的鎖定模式是以下模式:其中大多數(shù)的控件被禁用并且具有有限功能,直到設(shè) 備解除鎖定。在一些實施例中,這有益于防止用戶意外地過早結(jié)束導(dǎo)航模式。在一些實施 例中,解鎖設(shè)備要求屏幕的特定部分上的特定手勢命令。
[0317] 一些設(shè)備具有關(guān)閉屏幕和/或?qū)⒃O(shè)備置于鎖定模式的按鈕。一些設(shè)備具有在用戶 命令之間已經(jīng)經(jīng)過一定時間之后關(guān)閉屏幕和/或?qū)⒃O(shè)備置于鎖定模式的超時功能。無論應(yīng) 用程序進入鎖定模式的方式如何,大多數(shù)此類設(shè)備離開鎖定模式時在前臺運行的應(yīng)用程序 與在進入鎖定模式時在前臺運行的應(yīng)用程序相同。然而,在一些實施例的設(shè)備中,無論設(shè)備 鎖定時是哪個應(yīng)用程序(或應(yīng)用程序啟動器)正在前臺運行,如果導(dǎo)航應(yīng)用程序正在后臺 運行,那么應(yīng)用程序從鎖定模式直接返回到導(dǎo)航應(yīng)用程序。
[0318] 圖35例示進入鎖定模式時導(dǎo)航應(yīng)用程序在后臺運行并且離開鎖定模式時導(dǎo)航應(yīng) 用程序在前臺運行的一些實施例的設(shè)備3500。該圖以四個階段3501-3504示出設(shè)備3500。 在階段3501中,應(yīng)用程序啟動器3520在前臺,并且導(dǎo)航應(yīng)用程序正在后臺運行。正在后 臺運行的導(dǎo)航應(yīng)用程序由屏幕的頂部處的導(dǎo)航條3510指示,導(dǎo)航條3510正好位于狀態(tài)條 3515下方并且位于前臺應(yīng)用程序啟動器3520上方。如圖所示,在階段3501中,用戶推動控 件3590以鎖定屏幕。
[0319] 在階段3502中,設(shè)備處于鎖定模式(如由屏幕上的解鎖滑塊3530所指示)。在這 個階段中,地圖3540示出在鎖定屏幕上并且逐向指引示出在信息條3550上。
[0320] 在階段3503中,用戶已經(jīng)開始向右滑動解鎖滑塊3530以便解鎖設(shè)備。在這個階段 中,地圖3540顯示在屏幕上并且逐向?qū)Ш椒较蚴境鲈谛畔l3550上。在一些實施例(未 示出)中,當滑塊始終向右移動時,用戶就被要求輸入密碼以便解鎖屏幕。在用戶成功輸入 密碼之后,屏幕解除鎖定。在一些實施例中,在鎖定模式下,在一些情況下并不示出指引和 /或地圖。例如,用于回答來電的界面可在呼叫進入設(shè)備時顯示,并且用于處理呼叫的界面 可在呼叫正在進行時顯示。這種界面可覆寫指引在信息條中的顯示、地圖的顯示、或兩者。 類似地,在一些實施例中,其它顯示視圖可替換信息條、地圖、或兩者,即使導(dǎo)航應(yīng)用程序仍 在設(shè)備上運行也是如此。
[0321] 然而,在屏幕解除鎖定之后,導(dǎo)航地圖3540留在前臺(而非顯示屏幕鎖定之前在 前臺運行的應(yīng)用程序3520)。如階段3504中所示,導(dǎo)航應(yīng)用程序在前臺以全屏顯現(xiàn)。在這 個階段中,屏幕解除鎖定,并且導(dǎo)航指令3560和地圖3540顯示在屏幕上。在一些實施例 中,導(dǎo)航應(yīng)用程序包括與鎖定屏幕視圖中的地圖3540在相同位置中的地圖3540。因此,在 一些實施例中,甚至對于在從鎖定模式返回時通常使用鎖定屏幕視圖和其它視圖之間的轉(zhuǎn) 變(例如,新屏幕視圖從屏幕的中心劃變或擴展開)的設(shè)備,在從階段3503到階段3504的 轉(zhuǎn)變中的設(shè)備將地圖留在適當位置并且切換屏幕中的其它元素。即,在從階段3503到階段 3504的轉(zhuǎn)變期間,在導(dǎo)航條3510和解鎖滑塊3530消失并且替代地導(dǎo)航指令3560顯現(xiàn)時, 恒定地顯示地圖。如階段3504所示,設(shè)備已從鎖定模式直接返回導(dǎo)航應(yīng)用程序,即使在設(shè) 備鎖定之前在階段3501中導(dǎo)航應(yīng)用程序正在后臺而非在前臺運行。
[0322] 圖36例示進入鎖定模式時導(dǎo)航應(yīng)用程序在前臺運行并且離開鎖定模式時導(dǎo)航應(yīng) 用程序在前臺運行的一些實施例的設(shè)備3600。該圖以四個階段3601-3604示出設(shè)備。在 階段3601中,導(dǎo)航應(yīng)用程序正在前臺運行,并且地圖3640和導(dǎo)航指令3660顯示在屏幕上。 如圖所示,用戶推動控件3690以鎖定屏幕。
[0323] 在階段3602中,設(shè)備被置于鎖定模式(如由屏幕上的解鎖滑塊3630所指示)。在 這個階段中,地圖3640示出在鎖定屏幕上并且逐向指引示出在信息條3650上。
[0324] 在階段3603中,用戶已經(jīng)開始向右滑動解鎖滑塊3630以便解鎖設(shè)備。在這個階 段中,地圖3640顯示在屏幕上并且逐向?qū)Ш椒较蚴境鲈谛畔l3650上。當滑塊始終向右 移動時,用戶被提示(未示出)輸入密碼以便解鎖屏幕。在用戶成功輸入密碼之后,屏幕解 除鎖定。如以上相對于圖35所述,在一些實施例中,在鎖定模式下,在一些情況下并不示出 指引和/或地圖。例如,用于回答來電的界面在呼叫進入設(shè)備時顯示,并且用于處理呼叫的 界面在呼叫正在進行時顯示。這種界面覆寫指引在信息條中的顯示、地圖的顯示、或兩者。 類似地,在一些實施例中,其它顯示視圖可替換信息條、地圖、或兩者,即使導(dǎo)航應(yīng)用程序仍 在設(shè)備上運行也是如此。
[0325] 如階段3604中所示,導(dǎo)航應(yīng)用程序在前臺顯現(xiàn)。在這個階段中,屏幕解除鎖定,并 且地圖3640和導(dǎo)航指令3660顯示在屏幕上。在一些實施例中,導(dǎo)航應(yīng)用程序包括與在鎖 定屏幕視圖中處于相同位置中的相同地圖3640。因此,在一些實施例中,甚至對于在從鎖定 模式返回時將會具有轉(zhuǎn)變屏幕(例如,新屏幕視圖從中心劃變或擴展開)的設(shè)備,在從階段 3603到階段3604的轉(zhuǎn)變中的設(shè)備將地圖留在適當位置,并且在一些實施例中,切換屏幕中 的其它元素。S卩,在從階段3603到階段3604的轉(zhuǎn)變期間,在信息條3650和解鎖滑塊3630 消失并且導(dǎo)航指令3660顯現(xiàn)在顯示上時,恒定地顯示地圖。如階段3604所示,設(shè)備已從鎖 定模式返回導(dǎo)航應(yīng)用程序。
[0326] 在先前兩圖中,用戶推動控件以進入鎖定模式。在一些實施例中,用戶推動這種控 件以關(guān)閉顯示。稍后,當通過再次按下相同控件或通過按下另一個控件來重新打開顯示時, 設(shè)備隨后在顯示再次打開時示出鎖定模式。類似地,在一些實施例中,設(shè)備具有超時功能, 超時功能使顯示在設(shè)備未接收命令的情況下已經(jīng)經(jīng)過某一特定的時間量之后關(guān)閉。在一些 實施例中,當顯示在這種鎖定之后打開時,設(shè)備處于鎖定模式。
[0327] 除了(或在一些實施例中替代)在其它應(yīng)用程序在前臺時在導(dǎo)航條上給出導(dǎo)航指 令,一些實施例的導(dǎo)航應(yīng)用程序還在設(shè)備處于鎖定模式時提供導(dǎo)航指令。圖37例示本發(fā)明 的一些實施例中的在鎖定設(shè)備上給出指引的導(dǎo)航應(yīng)用程序。該圖以四個階段3701-3704示 出。在階段3701中,設(shè)備屏幕正在顯示狀態(tài)條3780、導(dǎo)航條3710、地圖3712、位置指示器 3714和解鎖滑塊3716。本領(lǐng)域的普通技術(shù)人員將會理解,其它配置和控件在一些實施例的 范圍內(nèi)是可能的。
[0328] 在階段3701中,設(shè)備靠近下一導(dǎo)航點,因此,導(dǎo)航條3710顯示在500英尺處右轉(zhuǎn) 的指令。在一些實施例(包括例示的實施例)中,導(dǎo)航條3710是半透的,從而允許透過導(dǎo) 航條3710看到地圖3712的特征。位置指示器3714相對于地圖3712的特征指示設(shè)備的位 置。地圖本身包括設(shè)備所在的道路(Curb路)以及導(dǎo)航應(yīng)用程序指引用戶朝向的道路(T 路)。還顯示:暗色線條3718,示出所指引的設(shè)備行程;以及較淡的線條3719,示出設(shè)備沿 導(dǎo)航應(yīng)用程序所選擇的路線的先前位置。解鎖滑塊3716在激活時解鎖設(shè)備。然而,在此圖 中并未使用解鎖滑塊3716。
[0329] 當設(shè)備到達距導(dǎo)航點250英尺的點時,導(dǎo)航條改變指令,如在階段3702中的導(dǎo)航 條3720中所顯示。位置指示器3714處于相同位置,但是地圖3712已經(jīng)相對于位置指示器 3714下移。地圖相對于位置指示器3714的新位置是導(dǎo)航應(yīng)用程序示出設(shè)備已經(jīng)移動得更 靠近導(dǎo)航點的另一種方式。
[0330] 類似地,在階段3703中,導(dǎo)航條3730指示距導(dǎo)航點僅100英尺,并且位置指示器 3714更靠近地圖上的轉(zhuǎn)彎。最終,在階段3704中,設(shè)備已經(jīng)繞過拐角,并且導(dǎo)航條3740正 在顯示下一導(dǎo)航指令。雖然并未在此圖中示出導(dǎo)航指令之間的轉(zhuǎn)變,但在一些實施例中,轉(zhuǎn) 變類似于所描述的后臺模式下的轉(zhuǎn)變(其中一個指令看似上翻,好像在標志的一側(cè)那樣, 并且由看上去在標志的另一側(cè)的另一個指令替換)。在其它實施例中,使用其它轉(zhuǎn)變方法來 移除舊導(dǎo)航指令3730并且用新導(dǎo)航指令3740來替換舊導(dǎo)航指令3730(在階段3704中)。 例如,一些實施例在舊指令向上或向一旁滑動時模擬新指令在相同方向上的滑動。其它實 施例模擬使新指令在舊指令之上滑動。其它實施例只是使得舊指令消失并且替換成新指 令。
[0331] 新指令不是已經(jīng)做出的轉(zhuǎn)彎的唯一指示。地圖3712已經(jīng)旋轉(zhuǎn),使得設(shè)備所行進的 方向(沿T路)在地圖3712上被示出為向上。地圖3712上的較淡的線條3719現(xiàn)在包括 設(shè)備剛剛已轉(zhuǎn)過的拐角。
[0332] 雖然位置指示器3714在圖37中被示出為始終具有相同尺寸,但在一些實施例中, 在鎖定模式和常規(guī)導(dǎo)航模式之一或二者下,根據(jù)縮放水平,位置指示器具有不同尺寸。例 如,在一些實施例中,地圖放大越多,位置指示器就變得越大。類似地,位置指示器3714始 終被示出為具有箭頭。然而,在一些實施例中,在一些情況下并不示出箭頭。例如,在一些 實施例中,當設(shè)備在建筑物(或以其它方式偏離所有道路)中而非在道路上時,并不示出箭 頭。位置指示器3714在圖37中被示出為不透明的,然而在一些實施例中,位置指示器是半 透的、半透明的、或透明的,以便示出在其"下面"的道路。
[0333] 當在鎖定模式下操作時,一些實施例的導(dǎo)航應(yīng)用程序提供指引,直到設(shè)備到達其 目標。圖38例示當設(shè)備到達其目標時的一些實施例的鎖定模式視圖。該圖以四個階段 3801-3804示出。在階段3801中,地圖3840示出在當前位置指示器3814后方的較淡的線 條3819。在位置指示器3814前方,較暗的線條3818在指示目標的圓圈3812處結(jié)束。根據(jù) 導(dǎo)航條3810,目標位于前方50英尺處。
[0334] 在階段3802中,一旦設(shè)備到達其目標,導(dǎo)航條3820就示出目標位于右側(cè),較暗的 線條3818不會再示出在地圖3840上。在一些實施例中,設(shè)備隨后顯示設(shè)備已"到達"的消 息,如階段3803中所示。隨后在階段3804中,當導(dǎo)航應(yīng)用程序并不提供導(dǎo)航指令時,導(dǎo)航 應(yīng)用程序?qū)㈡i定屏幕釋放成其任何默認配置的情況。在例示的實施例中,默認配置包括時 間和日期指示器3830。
[0335] 此圖以2D地圖例示鎖定模式視圖。然而,一些實施例的地圖繪制應(yīng)用程序可在以 3D形式示出地圖時在鎖定模式下操作。
[0336] 2.通知管理
[0337] 在一些實施例中,設(shè)備向它們的用戶通知將到來的消息和其它值得注意的事件。 甚至在此類設(shè)備處于鎖定模式時,一些此類設(shè)備仍可顯示通知。然而,使通知留在屏幕上持 續(xù)延長的時間段可能從也顯示在屏幕上的導(dǎo)航指令分心。因此,一些實施例在屏幕上簡要 地顯示通知,并且隨后使得通知可訪問但不可見。在一些實施例中,存在指示存在通知項目 等待閱讀的可見但不突出的標志。圖39例示一些實施例的鎖定視圖通知系統(tǒng)。該系統(tǒng)以 四個階段3901-3904示出。
[0338] 在階段3901中,導(dǎo)航條3910正在屏幕的頂部處的狀態(tài)條3980下方顯示導(dǎo)航指 令。通知消息3912在地圖3940之上顯示在屏幕上,用于指示已經(jīng)接收文本消息。未在例 示的實施例中顯示實際文本消息,但是顯示實際文本消息的實施例在本發(fā)明的范圍內(nèi)。一 些實施例在通知消息3912中顯示文本消息發(fā)送者的名字(如果已知的話)或文本消息所 來自的電話號碼。
[0339] 一些實施例的應(yīng)用程序在通知消失而使完整地圖3940再次可見之前顯示通知持 續(xù)預(yù)設(shè)長度的時間。一些應(yīng)用程序顯示通知持續(xù)少于5秒,一些持續(xù)5秒,并且一些持續(xù)超 過5秒。一旦通知消失,抽屜控件3922在階段3902中在導(dǎo)航條3910中顯現(xiàn)。一些實施例 的應(yīng)用程序、包括所例示的應(yīng)用程序允許抽屜控件3922擴展(例如,通過在抽屜控件上向 下拖動的觸摸手勢),以便打開所接收的通知項目的列表。其它實施例的應(yīng)用程序允許輕擊 抽屜控件以打開列表,或雙擊抽屜控件以打開列表。類似地,其它應(yīng)用程序允許通過其它手 段(例如,選擇,諸如對相關(guān)聯(lián)的光標控制設(shè)備的點擊)來選擇抽屜控件。
[0340] 在例示的實施例中,抽屜3934在階段3903中被視為是打開的。在這個階段3903 中,抽屜(在這種情況下,包括僅僅一個文本消息3932和一個未接呼叫3933)以列表形式 示出,該列表從導(dǎo)航條3910的底部向解鎖滑塊3915的頂部覆蓋地圖。然而,在一些實施例 中,抽屜是半透的、半透明的、或透明的,從而允許透過列表看到地圖。在一些實施例中,抽 屜僅僅部分地覆蓋地圖3940 (例如,覆蓋地圖的一半,或僅覆蓋地圖的示出抽屜中的所有 文本消息和其它通知項目所需要的那部分)。在一些實施例中,如果通常將會發(fā)送給抽屜的 新消息或通知在抽屜打開時到達,消息將立刻被添加至抽屜(在各種實施例中,在顯示或 不顯示彈出通知的情況下)。
[0341] 在一些實施例中,當消息列表太長以致無法配合在屏幕上時,如果必要的話,列表 可向上和向下滾動。在一些實施例中,當用戶結(jié)束查看消息列表時,用戶可通過激活控件來 關(guān)上抽屜(例如,硬件或屏幕上控件,諸如關(guān)閉顯示的控件)。在一些實施例中,抽屜將會保 持打開直到用戶關(guān)閉顯示,并且隨后再次重新打開。在一些實施例中,控件還可包括通過手 勢命令諸如在列表上或在屏幕上的其它位置上的輕擊、雙擊或滑動手勢(例如,抽屜的一 部分或全部作為控件情況下的向上滑動手勢)激活的任何數(shù)量的控件。在一些實施例中, 控件還可包括鼠標或其它光標控制設(shè)備的按鈕或其它組件等。
[0342] 另外,除了或替代使得控件關(guān)上抽屜,一些實施例顯示打開的抽屜,在打開的抽屜 消失而使得完整地圖3940再次可見之前持續(xù)變化長度的時間,如階段3904中所示。階段 3904包括抽屜控件3922。然而,在一些實施例中,在抽屜3934關(guān)上之后,抽屜控件3922直 到新消息到達才被示出。
[0343] 假設(shè)導(dǎo)航仍是活動的,在關(guān)上抽屜之后,如果另一文本消息或通知到達,階段 3901-3904以新消息重復(fù)。在一些實施例中,階段3904只有在用戶關(guān)上抽屜時發(fā)生。在一 些實施例中,如果抽屜保持打開,那么顯示在階段3903中保持。此外,抽屜打開階段3903 可不是緊隨階段3901和3902。在一些實施例中,如果用戶并未打開抽屜,那么在新消息通 知顯現(xiàn)時顯示抽屜控件3922的情況下,階段3901-3902在多個消息中的每個消息進入并且 抽屜保持關(guān)上時重復(fù)。
[0344] 在一些情況下,用戶可決定在打開抽屜3934之前解鎖設(shè)備。在一些實施例中,設(shè) 備在具有通知情況下退出鎖定模式的正常行為是在屏幕上列出通知。然而,在一些實施例 中,當導(dǎo)航應(yīng)用程序正在運行時,打開進入導(dǎo)航應(yīng)用程序比顯示通知消息優(yōu)先。因此,那些 實施例的設(shè)備解鎖并且打開進入導(dǎo)航應(yīng)用程序,而非打開進入通知消息的列表。在一些此 類實施例中,用戶可選擇在打開導(dǎo)航應(yīng)用程序之后打開通知消息的列表。圖40例示本發(fā)明 的一些實施例中的在解鎖設(shè)備之后查看通知消息。該圖以六個階段4001-4006示出。
[0345] 在階段4001中,導(dǎo)航條4010正在屏幕的頂部處的狀態(tài)條4080下方顯示導(dǎo)航指 令。通知消息4012在地圖4040之上顯示在屏幕上,用于指示已經(jīng)接收文本消息。未在例示 的實施例中顯示實際文本消息,但是顯示實際文本消息的實施例在本發(fā)明的范圍內(nèi)。一些 實施例在通知消息4012中顯示發(fā)送者的名字、發(fā)送者的電話號碼、或兩者。不同實施例的 應(yīng)用程序顯示通知,在通知消失而使得完整地圖4040再次可見之前持續(xù)變化長度的時間。 一些應(yīng)用程序顯示通知持續(xù)少于5秒,一些持續(xù)5秒,并且一些持續(xù)超過5秒。
[0346] 一旦通知消失,抽屜控件4022在階段4002中在導(dǎo)航條4010中顯現(xiàn)。階段4001 與圖39的階段3901相同。然而,在階段4002中,用戶不是打開抽屜4022,而是利用解鎖滑 塊4016解鎖設(shè)備。用戶已經(jīng)利用正在后臺運行的導(dǎo)航應(yīng)用程序解鎖設(shè)備,因此在階段4003 中,導(dǎo)航應(yīng)用程序在前臺顯現(xiàn)。如圖所示,導(dǎo)航應(yīng)用程序要比顯示通知消息優(yōu)先。
[0347] 在一些實施例中,導(dǎo)航應(yīng)用程序并不示出抽屜控件。然而,通過向下拖動屏幕的上 死點(如階段4004中所示),用戶可使抽屜4044下來(如階段4005中所示)。在一些實 施例中,當手指向下拖動抽屜4044時,抽屜控件4022在正在拖動的手指下方顯現(xiàn)。在其它 實施例中,當導(dǎo)航應(yīng)用程序在前臺時,必須采用多次拖動。例如,在一些實施例中,屏幕的頂 部處的一個拖動手勢用于暴露抽屜控件4022,并且抽屜控件4022上的獨立拖動手勢用于 打開抽屜。階段4005示出抽屜4044完全延伸并且覆蓋整個屏幕。文本消息4052在屏幕 的頂部處顯現(xiàn)。
[0348] 在一些實施例中,抽屜保持打開,直到用戶關(guān)上抽屜(此時,導(dǎo)航應(yīng)用程序再次顯 現(xiàn))或鎖定設(shè)備。在一些實施例中,抽屜可通過向上拉動抽屜控件4022來關(guān)上。在其它實 施例中,抽屜無法通過向上拉動抽屜控件4022來關(guān)上,但可通過一些其它控件(例如,按鈕 或手勢命令)來關(guān)上。例如,在一些實施例中,可例如通過激活控件4090來鎖定設(shè)備,這也 關(guān)上抽屜。一些實施例還在預(yù)先確定的時間量之后自動關(guān)上抽屜。在一些實施例中,在打 開抽屜之后,處于鎖定模式或解鎖模式下,一旦抽屜被關(guān)上,抽屜就清空并且不再可從鎖定 模式視圖訪問,如階段4006中所示,其中抽屜控件4022不再呈現(xiàn)。即,將僅在接收新通知 時再次顯示抽屜控件4022。然而,在其它實施例中,抽屜控件4022不被移除,僅在采用關(guān)上 抽屜的某些方法時被移除,或在解鎖模式下打開抽屜的情況下而不是在鎖定模式下打開抽 屜的情況下被移除。
[0349] 在一些實施例中,抽屜在獨立區(qū)域中顯示不同類型的消息。例如,一些實施例在不 同于"未接呼叫"消息的獨立區(qū)域中顯示文本消息。在一些實施例中,當抽屜在解鎖模式下 被打開時,抽屜在獨立區(qū)域中顯示不同類型的消息,但是鎖定模式下的抽屜不在獨立區(qū)域 中顯示不同類型的消息。在其它實施例中,當抽屜在解鎖模式下被打開時,抽屜在獨立區(qū)域 中顯示不同類型的消息,并且鎖定模式下的抽屜也在獨立區(qū)域中顯示不同類型的消息。在 其它實施例中,鎖定模式下的抽屜針對不同消息類型使用獨立區(qū)域,并且解鎖模式下的抽 屜并不如此。在其它實施例中,抽屜也不區(qū)分消息類型。
[0350] 3.動杰打開
[0351] 功率節(jié)省是應(yīng)用程序的一些實施例的特征。在一些實施例中,在鎖定模式下操作 的導(dǎo)航應(yīng)用程序僅在設(shè)備接近導(dǎo)航點或接收通知時打開屏幕。圖41例示本發(fā)明的一些實 施例中的用于在接近導(dǎo)航點時打開設(shè)備屏幕的過程4100。圖41將會相對于首先簡要描述 的圖42來描述。圖42例示本發(fā)明的一些實施例中的在導(dǎo)航應(yīng)用程序在后臺運行時未向設(shè) 備給出命令時設(shè)備所經(jīng)歷的多個階段。圖42以從4201至4206的六個階段來例示。將在 描述圖41期間在適當?shù)胤矫枋龈鱾€階段。
[0352] 圖41的過程4100在屏幕關(guān)閉之前通過利用在后臺運行的導(dǎo)航應(yīng)用程序來顯示 (在4105)應(yīng)用程序開始。圖42的階段4201例示設(shè)備的鎖定前狀態(tài)。這個階段4201包括 前臺應(yīng)用程序4212 (應(yīng)用程序啟動視圖),其中導(dǎo)航條4210在屏幕的頂部處的狀態(tài)條4280 下方指示導(dǎo)航應(yīng)用程序正在后臺運行。
[0353] 在一些實施例中,當設(shè)備在預(yù)先指定的時間量(例如,5分鐘、15分鐘等)內(nèi)未接 收到命令時,設(shè)備關(guān)閉屏幕并且進入鎖定模式。該過程確定(在4110)任何控件是否已經(jīng) 在針對鎖定設(shè)備并且關(guān)閉屏幕而預(yù)先指定的時間量內(nèi)被激活。如果任何控件(不是立即關(guān) 閉顯示和/或鎖定設(shè)備的控件)已經(jīng)被激活,那么設(shè)備重置其要關(guān)閉顯示并且進入鎖定模 式的倒計數(shù)。
[0354] 當該過程確定已經(jīng)經(jīng)過足夠時間時,該過程關(guān)閉屏幕(在4115)。在一些實施例 中,替代或除了超時屏幕去激活,存在用戶可選擇以將設(shè)備置于鎖定模式的控件(例如,按 鈕)。在一些實施例中,超時屏幕去激活在一些應(yīng)用程序正在運行時而不是在其它應(yīng)用程序 正在運行時發(fā)生。例如,在一些實施例中,當導(dǎo)航應(yīng)用程序正在前臺運行時,設(shè)備不會在預(yù) 設(shè)時間之后關(guān)閉屏幕。此外,在一些實施例中,當導(dǎo)航應(yīng)用程序正在后臺運行時,設(shè)備也不 超時。
[0355] 操作4115在圖42的階段4202中例示。階段4202示出屏幕是黑色,因為屏幕已 經(jīng)通過超時、控件或以某種其它方式關(guān)閉。當屏幕關(guān)閉并且設(shè)備朝向下一導(dǎo)航點行進時,過 程4100重復(fù)確定(在4120)設(shè)備是否在下一導(dǎo)航點附近。如果設(shè)備不在下一導(dǎo)航點附近, 設(shè)備將會繼續(xù)檢查設(shè)備是否在導(dǎo)航點附近。"附近"在不同實施例的應(yīng)用程序中意指不同距 離。
[0356] 在不同實施例中,當設(shè)備距導(dǎo)航點1000英尺、或500英尺、或250英尺、或任何其 它特定距離時,設(shè)備確定它在導(dǎo)航點附近。一旦過程4100確定(在4120)設(shè)備在導(dǎo)航點附 近,該過程就打開(在4125)環(huán)境光線傳感器。在一些實施例中,環(huán)境光線傳感器是設(shè)備的 攝像機的一部分。在其它實施例中,環(huán)境光線傳感器不是設(shè)備的攝像機的一部分。在一些 實施例中,環(huán)境光線傳感器始終打開。在一些實施例中,環(huán)境光線傳感器是無需供電以運作 的無源元件。環(huán)境光線傳感器確定設(shè)備周圍存在多少光線。如果存在大量光線,那么屏幕 將必須以高亮度水平打開,以便在現(xiàn)有光線可見。然而,如果存在低量環(huán)境光線,那么屏幕 能以較暗水平打開并且仍亮到足以在較弱環(huán)境光線下可見。
[0357] 一旦確定光線水平,過程4100就根據(jù)環(huán)境光線傳感器所檢測的環(huán)境光線水平來 以一定亮度水平打開(在4130)屏幕。屏幕隨后顯示(在4135)到下一導(dǎo)航點的倒計數(shù)。 這在圖42的階段4203中例示。該圖示出導(dǎo)航條4230,導(dǎo)航條4230具有指示右轉(zhuǎn)的箭頭 和在1000英尺處右轉(zhuǎn)的指令。該過程隨后確定(在4140)是否已通過導(dǎo)航點。如果尚未 通過導(dǎo)航點,那么過程4100返回操作4135。該過程隨后繼續(xù)顯示到下一導(dǎo)航點的倒計數(shù)。 倒計數(shù)的一部分在圖42中的階段4204中示出。在階段4204中,導(dǎo)航條4240指示距右轉(zhuǎn) 還有200英尺。一旦設(shè)備通過導(dǎo)航點(在這種情況下,進行右轉(zhuǎn)),過程4100就確定(在 4145)設(shè)備是否位于其目標處。如果設(shè)備位于其目標處,那么導(dǎo)航過程結(jié)束。如果設(shè)備不 在其目標處,那么該過程顯示(在4150)下一導(dǎo)航指令。這在圖42中的階段4205中示出。 在這個階段中,導(dǎo)航條4250顯示直走2. 8英里。
[0358] 如果過程4100確定(在4155)下一導(dǎo)航點在附近,那么該過程返回操作4135并 且對下一導(dǎo)航點進行倒計數(shù)。然而,這不是圖42中的情況。如果該過程確定(在4155)設(shè) 備并不在下一導(dǎo)航點附近,那么過程4100關(guān)閉屏幕(在4115)。這在階段4206中示出,階 段4206示出黑屏。本領(lǐng)域的普通技術(shù)人員將會理解,在一些實施例中,圖42的階段4202 和4206中的詞語"功率節(jié)省模式"意指概念性地例示顯示已關(guān)閉并且這些詞語在功率節(jié)省 模式期間并不物理地顯示在屏幕上。
[0359] 上述附圖示出設(shè)備在其位于預(yù)先確定的導(dǎo)航點附近時打開顯示,并且在其并不位 于預(yù)設(shè)導(dǎo)航點附近時關(guān)閉顯示。然而,在一些實施例中,如果用戶偏離規(guī)定路線(例如,用 戶錯誤轉(zhuǎn)彎),設(shè)備也打開顯示。在一些此類實施例中,設(shè)備顯示"重新規(guī)劃路線"消息,直 到設(shè)備已計算出新路線。在一些實施例中,設(shè)備隨后顯示下一導(dǎo)航指令,并且隨后關(guān)閉顯 示,除非下一導(dǎo)航點在閾值距離內(nèi)。
[0360] 以與一些實施例的導(dǎo)航應(yīng)用程序在設(shè)備接近導(dǎo)航點時在鎖定模式下打開屏幕的 方式類似的方式,一些實施例的設(shè)備在導(dǎo)航應(yīng)用程序正在運行時接收到通知時打開屏幕。 圖43概念性地例示用于在接收到通知消息時打開屏幕的一些實施例的過程4300。過程 4300將會參考先前所述圖39來描述。過程4300以關(guān)閉屏幕(在4305)開始。可出于相對 于圖41討論的任何原因關(guān)閉屏幕。該過程隨后等待(在4310)直到它接收到通知。當過程 4300接收通知時,該過程打開(在4315)環(huán)境光線傳感器(如以上在圖41的操作4125中 所述)。該過程隨后根據(jù)環(huán)境光線傳感器所檢測的環(huán)境光線水平以一定亮度水平打開(在 4320)屏幕。該過程隨后顯示(在4325)通知。這在圖39中的階段3901中示出為彈出消 息3912。該過程隨后將通知放在(在4330)如相對于圖39的階段3902所述的抽屜中。
[0361] 該過程隨后確定(在4335)是否已經(jīng)在期限之前打開抽屜(例如,通過用戶滑動 抽屜控件3922)。如果在期限內(nèi)尚未打開抽屜,那么該過程再次關(guān)閉屏幕(在4305)。如果 已經(jīng)在期限之前打開抽屜,那么消息被顯示(在4340),例如,如圖39中所示(如階段3903, 其中顯示消息3932)。該過程隨后確定(在4345)是否已經(jīng)關(guān)上抽屜。如果已經(jīng)關(guān)上抽屜, 那么該過程返回操作4305并且在超時時段之后關(guān)閉屏幕。即,在一些實施例的應(yīng)用程序 中,在關(guān)閉屏幕之前,應(yīng)用程序在抽屜關(guān)閉之后等待一定時間量。
[0362] 在一些實施例中,如果過程4300確定(在4345)抽屜保持打開,那么該過程確 定(在4350)是否已經(jīng)達到超時時段。如果尚未達到超時時段,那么該過程繼續(xù)顯示(在 4340)消息。如果期限在由用戶關(guān)上抽屜之前耗盡,那么該過程關(guān)閉屏幕(在4305)。在一 些實施例中,如果用戶正在向設(shè)備發(fā)送命令(例如,滾動通過消息),那么到期限的倒計數(shù) 將不會開始,直到設(shè)備停止接收來自用戶的命令。
[0363] 本領(lǐng)域的普通技術(shù)人員將會理解,盡管單獨描述圖43的過程4300和圖41的過程 4100的流程圖,但是在一些實施例中,它們同時進行并且在這些過程中的任一過程要求屏 幕打開時屏幕將會打開。在一些情況下,當導(dǎo)航點變成在附近時,屏幕將會出于通知原因而 已經(jīng)打開。在這些情況中,屏幕不是如過程4100所指示那樣打開(在4130),而是將只是保 持打開,即使過程4300要求屏幕關(guān)閉(在4305)也是如此。類似地,在一些實施例中,過程 4100和4300將會繼續(xù),直到設(shè)備解鎖、或到達目標(如圖41中的過程4100的操作4145中 所示)。
[0364] 如上所述,處于鎖定模式下的設(shè)備具有數(shù)量有限的活動控件。然而,在一些實施例 中,當鎖定模式可操作時,鎖定屏幕上的地圖可通過在用戶希望移動地圖的方向上的手勢 命令來更大或更小程度地向一側(cè)、向上和向下移動。在一些實施例中,當釋放設(shè)備時,地圖 返回到其默認位置。
[0365] IV.電子系統(tǒng)
[0366] 上文所述的特征和應(yīng)用程序中的許多可被實現(xiàn)為被指定為在計算機可讀存儲介 質(zhì)(還稱為計算機可讀介質(zhì))上記錄的指令集的軟件過程。在這些指令由一個或多個計算 或處理單元(例如,一個或多個處理器、處理器的內(nèi)核或者其它處理單元)執(zhí)行時,這些指 令使得一個或多個處理單元能夠執(zhí)行指令中所指示的動作。計算機可讀介質(zhì)的實例包括但 不限于CD-ROM、閃存驅(qū)動器、隨機存取存儲器(RAM)芯片、硬盤驅(qū)動器、可擦可編程只讀存 儲器(EPROM)、電可擦可編程只讀存儲器(EEPROM)等。計算機可讀介質(zhì)不包括無線地傳送 或通過有線連接的載波和電信號。
[0367] 在本說明書中,術(shù)語"軟件"意在包括駐留在只讀存儲器中的固件或者存儲在磁性 存儲裝置中的應(yīng)用程序,所述固件或應(yīng)用程序可被讀取到存儲器中以用于由處理器進行處 理。另外,在一些實施例中,可在保留不同的軟件發(fā)明的同時,將多個軟件發(fā)明實現(xiàn)為更大 程序的子部分。在一些實施例中,還可將多個軟件發(fā)明實現(xiàn)為單獨程序。最后,共同實施這 里所述的軟件發(fā)明的單獨程序的任何組合均在本發(fā)明的范圍之內(nèi)。在一些實施例中,當被 安裝以在一個或多個電子系統(tǒng)上運行時,軟件程序定義執(zhí)行和施行軟件程序的操作的一個 或多個特定機器具體實施。
[0368] A.移動設(shè)備
[0369] 一些實施例的地圖繪制和導(dǎo)航應(yīng)用程序在移動設(shè)備諸如智能電話(例如, iPhones?)和平板電腦(例如,iPads?)上操作。圖44是此類移動計算設(shè)備的架構(gòu)4400 的實例。移動計算設(shè)備的示例包括智能電話、平板電腦、膝上型電腦等。如圖所示,移動計 算設(shè)備4400包括一個或多個處理單元4405、存儲器接口 4410以及外圍設(shè)備接口 4415。
[0370] 外圍設(shè)備接口 4415耦接至各種傳感器和子系統(tǒng),包括攝像機子系統(tǒng)4420、無線通 信子系統(tǒng)4425、音頻子系統(tǒng)4430、輸入/輸出子系統(tǒng)4435等。外圍設(shè)備接口 4415允許處 理單元4405和各種外圍設(shè)備之間的通信。例如,取向傳感器4445(例如,陀螺儀)和加速 度傳感器4450(例如,加速度計)耦接至外圍設(shè)備接口 4415,以便有利于取向和加速功能。
[0371] 攝像機子系統(tǒng)4420耦接至一個或多個光學(xué)傳感器4440(例如,電荷耦合設(shè)備 (CCD)光學(xué)傳感器、互補金屬氧化物半導(dǎo)體(CMOS)光學(xué)傳感器等)。與光學(xué)傳感器4440耦 接的攝像機子系統(tǒng)4420有利于攝像機功能,諸如圖像和/或視頻數(shù)據(jù)捕獲。無線通信子系 統(tǒng)4425用于有利于通信功能。在一些實施例中,無線通信子系統(tǒng)4425包括射頻接收器和 發(fā)射器,以及光學(xué)接收器和發(fā)射器(圖44中未示出)。一些實施例的這些接收器和發(fā)射器 被實現(xiàn)為在一個或多個通信網(wǎng)絡(luò)之上操作,通信網(wǎng)絡(luò)諸如GSM網(wǎng)絡(luò)、Wi-Fi網(wǎng)絡(luò)、藍牙網(wǎng)絡(luò) 等。音頻子系統(tǒng)4430耦接至揚聲器以輸出音頻(例如,輸出嗓音導(dǎo)航指令)。另外,音頻子 系統(tǒng)4430耦接至麥克風(fēng)以有利于支持嗓音的功能,諸如嗓音識別(例如,用于搜索)、數(shù)字 記錄等。
[0372] 輸入/輸出子系統(tǒng)4435涉及輸入/輸出外圍設(shè)備(諸如顯示器、觸摸屏等)和處 理單元4405的數(shù)據(jù)總線之間通過外圍設(shè)備接口 4415的傳輸。輸入/輸出子系統(tǒng)4435包 括觸摸屏控制器4455和其它輸入控制器4460以有利于輸入/輸出外圍設(shè)備和處理單兀 4405的數(shù)據(jù)總線之間的傳輸。如圖所示,觸摸屏控制器4455耦接至觸摸屏4465。觸摸屏 控制器4455使用任何多點觸感技術(shù)來檢測觸摸屏4465上的接觸和移動。其它輸入控制器 4460耦接至其它輸入/控制設(shè)備,諸如一個或多個按鈕。一些實施例包括近觸感屏和對應(yīng) 控制器,該控制器代替觸摸交互或除了觸摸交互之外可檢測近觸摸交互。
[0373] 存儲器接口 4410耦接至存儲器4470。在一些實施例中,存儲器4470包括易失性 存儲器(例如,高速隨機存取存儲器)、非易失性存儲器(例如,閃存存儲器)、易失性存儲 器和非易失性存儲器的組合,和/或任何其它類型的存儲器。如圖44所示,存儲器4470存 儲操作系統(tǒng)(OS) 4472。OS 4472包括用于處理基礎(chǔ)系統(tǒng)服務(wù)和用于執(zhí)行硬件相關(guān)任務(wù)的指 令。
[0374] 存儲器4470還包括:有利于與一個或多個另外設(shè)備進行通信的通信指令4474 ;有 利于圖形用戶界面處理的圖形用戶界面指令4476 ;有利于圖像相關(guān)的處理和功能的圖像 處理指令4478 ;有利于輸入相關(guān)(例如,觸摸輸入)的過程和功能的輸入處理指令4480 ;有 利于音頻相關(guān)的過程和功能的音頻處理指令4482 ;以及有利于攝像機相關(guān)的過程和功能 的攝像機指令4484。上述指令僅是示例性的,并且在一些實施例中,存儲器4470包括另外 和/或其它指令。例如,用于智能電話的存儲器可包括促進電話相關(guān)的過程和功能的電話 指令。另外,存儲器可包括用于地圖繪制和導(dǎo)航應(yīng)用程序以及其它應(yīng)用程序的指令。以上 所識別的指令無需實現(xiàn)為獨立的軟件程序或模塊??稍谟布?或軟件中,包括在一個或 多個信號處理和/或?qū)S眉呻娐分?,實現(xiàn)移動計算設(shè)備的各種功能。
[0375] 雖然圖44中所示的組件顯示為單獨的組件,但本領(lǐng)域的普通技術(shù)人員將認識到, 可將兩個或更多個組件集成到一個或多個集成電路中。另外,兩個或更多個組件可由一條 或多條通信總線或信號線來耦接在一起。另外,雖然已將許多功能描述為由一個組件執(zhí)行, 但本領(lǐng)域的普通技術(shù)人員將認識到,可將相對于圖44描述的功能拆分到兩個或更多個集 成電路中。
[0376] B.計算機系統(tǒng)
[0377] 圖45概念性地例示實現(xiàn)本發(fā)明的一些實施例所利用的電子系統(tǒng)4500的另一個實 例。電子系統(tǒng)4500可為計算機(例如,臺式計算機、個人計算機、平板電腦等)、電話、PDA 或任何其它種類的電子或計算設(shè)備。此類電子系統(tǒng)包括各種類型的計算機可讀介質(zhì)以及用 于各種其他類型的計算機可讀介質(zhì)的接口。電子系統(tǒng)4500包括總線4505、處理單元4510、 圖形處理單元(GPU) 4515、系統(tǒng)存儲器4520、網(wǎng)絡(luò)4525、只讀存儲器4530、永久性存儲設(shè)備 4535、輸入設(shè)備4540以及輸出設(shè)備4545。
[0378] 總線4505總體表示可通信地連接電子系統(tǒng)4500的許多內(nèi)部設(shè)備的所有系統(tǒng)、夕卜 圍設(shè)備以及芯片組總線。例如,總線4505可通信地將處理單元4510與只讀存儲器4530、 GPU 4515、系統(tǒng)存儲器4520以及永久性存儲設(shè)備4535連接。
[0379] 處理單元4510從這些各種存儲器單元檢索要執(zhí)行的指令和要處理的數(shù)據(jù),以便 執(zhí)行本發(fā)明的過程。在不同實施例中,一個或多個處理單元可以為單個處理器或者多核處 理器。一些指令被傳送至GPU 4515并且由GPU 4515執(zhí)行。GPU 4515可卸載各種計算指 令,或補充由處理單元4510提供的圖像處理。在一些實施例中,可使用CoreImage的內(nèi)核 著色語言來提供此類功能。
[0380] 只讀存儲器(ROM) 4530存儲處理單元4510和電子系統(tǒng)的其它模塊所需的靜態(tài)數(shù) 據(jù)和指令。另一方面,永久性存儲設(shè)備4535是讀寫存儲器設(shè)備。此設(shè)備是即使在電子系統(tǒng) 4500關(guān)閉時也存儲指令和數(shù)據(jù)的非易失性存儲器單元。本發(fā)明的一些實施例將海量存儲設(shè) 備(諸如磁盤或光盤及其對應(yīng)的硬盤驅(qū)動器、集成閃存存儲器)用作永久性存儲設(shè)備4535。
[0381] 其他實施例將可移動的存儲設(shè)備(諸如軟盤、閃存存儲器設(shè)備等,及其對應(yīng)的驅(qū) 動器)用作永久性存儲設(shè)備。與永久性存儲設(shè)備4535 -樣,系統(tǒng)存儲器4520是讀寫存儲 器設(shè)備。但是,與存儲設(shè)備4535不同的是,系統(tǒng)存儲器4520是易失性讀寫存儲器,諸如隨 機存取存儲器。系統(tǒng)存儲器4520存儲處理器在運行時所需的指令和數(shù)據(jù)中的一些。在一 些實施例中,本發(fā)明的過程存儲在系統(tǒng)存儲器4520、永久性存儲設(shè)備4535和/或只讀存儲 器4530中。例如,各種存儲器單元包括用于根據(jù)一些實施例處理多媒體片段的指令。處理 單元4510從這些各種存儲器單元檢索要執(zhí)行的指令和要處理的數(shù)據(jù),以便執(zhí)行一些實施 例的過程。
[0382] 總線4505還連接至輸入設(shè)備4540和輸出設(shè)備4545。輸入設(shè)備4540使得用戶能 夠?qū)⑿畔鬟_至電子系統(tǒng)并且選擇至電子系統(tǒng)的命令。輸入設(shè)備4540包括字母數(shù)字鍵盤 和指示設(shè)備(還稱作"光標控制設(shè)備")、攝像機(例如,網(wǎng)絡(luò)攝像機)、麥克風(fēng)或用于接收嗓 音命令的類似設(shè)備等。輸出設(shè)備4545顯示由電子系統(tǒng)生成的圖像或者其它輸出數(shù)據(jù)。輸 出設(shè)備4545包括打印機和顯示設(shè)備諸如陰極射線管(CRT)或液晶顯示器(LCD),以及揚聲 器或類似的音頻輸出設(shè)備。一些實施例包括充當輸入設(shè)備和輸出設(shè)備兩者的設(shè)備,諸如觸 摸屏。
[0383] 最后,如圖45中所示,總線4505還通過網(wǎng)絡(luò)適配器(未示出)將電子系統(tǒng)4500耦 接至網(wǎng)絡(luò)4525。這樣,計算機可以是計算機的網(wǎng)絡(luò)(諸如局域網(wǎng)("LAN")、廣域網(wǎng)("WAN") 或內(nèi)聯(lián)網(wǎng))的一部分,或者可以是網(wǎng)絡(luò)的網(wǎng)絡(luò)(諸如互聯(lián)網(wǎng))的一部分。電子系統(tǒng)4500的 任何或所有組件均可與本發(fā)明結(jié)合使用。
[0384] 一些實施例包括將計算機程序指令存儲在機器可讀或計算機可讀介質(zhì)(或者 稱為計算機可讀存儲介質(zhì)、機器可讀介質(zhì)或機器可讀存儲介質(zhì))中的電子組件,諸如微 處理器、存儲裝置以及存儲器。此類計算機可讀介質(zhì)的一些實例包括RAM、ROM、只讀光盤 (CD-ROM)、可刻錄光盤(CD-R)、可重寫光盤(CD-RW)、只讀數(shù)字通用光盤(例如,DVD-ROM、 雙層DVD-ROM)、各種可刻錄/可重寫DVD(例如,DVD-RAM、DVD-RW、DVD+RW等)、閃存存儲 器(例如,SD卡,mini-SD卡、micro-SD卡等)、磁性和/或固態(tài)硬盤驅(qū)動器、只讀和可刻錄 Blu-Ray?盤、超密度光盤、任何其他光學(xué)或磁性介質(zhì)以及軟盤。計算機可讀介質(zhì)可存儲計 算機程序,該計算機程序可由至少一個處理單元來執(zhí)行并且包括用于執(zhí)行各種操作的指令 集。計算機程序或者計算機代碼的實例包括機器代碼,諸如由編譯器所產(chǎn)生的機器代碼,以 及包括可由計算機、電子部件或微處理器使用解譯器來執(zhí)行的更高級別代碼的文件。
[0385] 雖然上述討論主要涉及執(zhí)行軟件的微處理器或多核處理器,但一些實施例由一個 或多個集成電路來執(zhí)行,該一個或多個集成電路諸如專用集成電路(ASIC)或現(xiàn)場可編程 門陣列(FPGA)。在一些實施例中,此類集成電路執(zhí)行存儲在電路自身上的指令。此外,一些 實施例執(zhí)行存儲在可編程邏輯設(shè)備(PLD)、ROM或RAM設(shè)備中的軟件。
[0386] 如本說明書以及本專利申請的任何權(quán)利要求所用,術(shù)語"計算機"、"服務(wù)器"、"處 理器"及"存儲器"均是指電子或其它技術(shù)設(shè)備。這些術(shù)語不包括人或者人的群組。出于本 說明書的目的,術(shù)語顯示或正在顯示意指在電子設(shè)備上顯示。如本說明書以及本專利申請 的任何權(quán)利要求所用,術(shù)語"計算機可讀介質(zhì)"以及"機器可讀介質(zhì)"完全限于以可由計算 機讀取的形式存儲信息的有形的物理對象。這些術(shù)語不包括任何無線信號、有線下載信號 以及任何其他短暫信號。
[0387] V.地圖服備環(huán)塏
[0388] 各種實施例可在地圖服務(wù)操作環(huán)境內(nèi)操作。圖46例示根據(jù)一些實施例的地圖服 務(wù)操作環(huán)境。地圖服務(wù)4630(也被稱作地圖繪制服務(wù))可為通過各種通信方法和協(xié)議與地 圖服務(wù)4630通信的一個或多個客戶端設(shè)備4602a-4602c提供地圖服務(wù)。在一些實施例中, 地圖服務(wù)4630提供地圖信息以及其它地圖相關(guān)數(shù)據(jù),諸如二維地圖圖像數(shù)據(jù)(例如,利用 衛(wèi)星圖像的道路的懸空視圖)、三維地圖圖像數(shù)據(jù)(例如,具有三維特征諸如建筑的橫貫地 圖)、路線和指引計算(例如,輪渡路線計算或步行的兩點之間的指引)、實時導(dǎo)航數(shù)據(jù)(例 如,二維或三維逐向視覺導(dǎo)航數(shù)據(jù))、位置數(shù)據(jù)(例如,客戶端設(shè)備當前所在的位置)以及 其它幾何形狀數(shù)據(jù)(例如,無線網(wǎng)絡(luò)覆蓋、天氣、交通信息、或附近感興趣點)。在各種實施 例中,地圖服務(wù)數(shù)據(jù)可包括用于不同國家和地區(qū)的本地化標簽。本地化標簽可用于在客戶 端設(shè)備上以不同語言呈現(xiàn)地圖標簽(例如,街道名稱、城市名稱、感興趣點)??蛻舳嗽O(shè)備 4602a-4602c可通過獲得地圖服務(wù)數(shù)據(jù)來利用這些地圖服務(wù)。客戶端設(shè)備4602a-4602c可 實施處理地圖服務(wù)數(shù)據(jù)的各種技術(shù)??蛻舳嗽O(shè)備4602a-4602c隨后可向各種實體提供地圖 服務(wù),實體包括但不限于:用戶、內(nèi)部軟件或硬件模塊、和/或客戶端設(shè)備4602a-4602c外部 的其它系統(tǒng)或設(shè)備。
[0389] 在一些實施例中,地圖服務(wù)由分布式計算系統(tǒng)中的一個或多個節(jié)點來實現(xiàn)。每個 節(jié)點可被分配地圖服務(wù)的一個或多個服務(wù)或組件。一些節(jié)點可被分配地圖服務(wù)的相同地圖 服務(wù)或組件。在一些實施例中,負載平衡節(jié)點將訪問或請求分布至地圖服務(wù)內(nèi)的其它節(jié)點。 在一些實施例中,地圖服務(wù)被實現(xiàn)為單個系統(tǒng),諸如單服務(wù)器。服務(wù)器內(nèi)的不同模塊或硬件 設(shè)備可實現(xiàn)地圖服務(wù)所提供的各種服務(wù)中的中的一個或多個。
[0390] 在一些實施例中,地圖服務(wù)通過生成呈各種格式的地圖服務(wù)數(shù)據(jù)來提供地圖服 務(wù)。在一些實施例中,地圖服務(wù)數(shù)據(jù)的一種格式是地圖圖像數(shù)據(jù)。地圖圖像數(shù)據(jù)向客戶端 設(shè)備提供圖像數(shù)據(jù),使得客戶端設(shè)備可處理圖像數(shù)據(jù)(例如,將圖像數(shù)據(jù)渲染和/或顯示為 二維或三維地圖)。地圖圖像數(shù)據(jù),無論二維形式還是三維形式,都可指定一個或多個地圖 片。地圖片可為較大地圖圖像的一部分。將地圖的地圖片組合在一起產(chǎn)生初始地圖。可根 據(jù)地圖圖像數(shù)據(jù)、路線規(guī)劃或?qū)Ш綌?shù)據(jù)或任何其它地圖服務(wù)數(shù)據(jù)生成片。在一些實施例中, 地圖片是基于柵格的地圖片,其中片的尺寸范圍是從比常用的256像素乘256像素片更大 和更小的任何尺寸。基于柵格的地圖片可以任何數(shù)量標準數(shù)字圖像表示來編碼,包括但不 限于位圖(.bmp)、圖形交換格式(.gif)、聯(lián)合圖像專家組(.jpg、, jpeg等)、便攜網(wǎng)絡(luò)圖形 (.png)或標記圖像文件格式(.tiff)。在一些實施例中,地圖片是使用向量圖形來編碼的 基于向量的地圖片,向量圖形包括但不限于可縮放向量圖形(.svg)或繪圖文件(.drw)。一 些實施例還包括具有向量和柵格數(shù)據(jù)的組合的片。與地圖片有關(guān)的元數(shù)據(jù)或其它信息也可 包括在地圖塊內(nèi)或與地圖片一起,從而向客戶端設(shè)備提供另外的地圖服務(wù)數(shù)據(jù)。在各種實 施例中,利用各種標準和/或協(xié)議對地圖片進行編碼以便傳輸,標準和/或協(xié)議中的一些在 以下示例中描述。
[0391] 在各種實施例中,可根據(jù)縮放水平從具有不同分辨率的圖像數(shù)據(jù)構(gòu)造地圖片。例 如,對于低縮放水平(例如,世界或全球視圖),地圖或圖像數(shù)據(jù)的分辨率不需要如處于高 縮放水平(例如,城市或街道水平)的分辨率那樣高。例如,當處于全球視圖時,可能無需 渲染街道級別偽像,因為這些對象在許多情況下將會小到可忽略不計。
[0392] 在一些實施例中,地圖服務(wù)在編碼地圖片以便傳輸之前執(zhí)行分析片的各種技術(shù)。 這種分析可優(yōu)化客戶端設(shè)備和地圖服務(wù)兩者的地圖服務(wù)性能。在一些實施例中,根據(jù)基于 向量的圖形技術(shù)來分析地圖片的復(fù)雜性,并且利用復(fù)雜層和非復(fù)雜層來構(gòu)造地圖片。還可 針對可渲染為圖像紋理的公共圖像數(shù)據(jù)或圖案分析地圖片,并且通過依賴于圖像掩模來構(gòu) 造地圖片。在一些實施例中,地圖片中的基于柵格的圖像數(shù)據(jù)包含某些掩模值,這些掩模值 與一個或多個紋理相關(guān)聯(lián)。一些實施例還分析地圖片的指定特征,指定特征可與包含樣式 標識符的某些地圖樣式相關(guān)聯(lián)。
[0393] 在一些實施例中,其它地圖服務(wù)依賴于各種數(shù)據(jù)格式與地圖片分開地生成地圖服 務(wù)數(shù)據(jù)。例如,提供位置數(shù)據(jù)的地圖服務(wù)可利用符合位置服務(wù)協(xié)議的數(shù)據(jù)格式,諸如但不限 于:無線電資源位置服務(wù)協(xié)議(RRLP)、用于碼分多址接入(CDM)的TIA 801、無線電資源控 制(RRC)定位協(xié)議、或LTE定位協(xié)議(LPP)。實施例還可從客戶端設(shè)備接收或請求辨識設(shè)備 能力或?qū)傩裕ɡ?,硬件?guī)格或操作系統(tǒng)版本)或者通信能力(例如,如由無線信號強度或 有線或無線網(wǎng)絡(luò)類型確定的設(shè)備通信帶寬)的數(shù)據(jù)。
[0394] 地圖服務(wù)可從內(nèi)部或外部源獲得地圖服務(wù)數(shù)據(jù)。例如,地圖圖像數(shù)據(jù)中使用的衛(wèi) 星圖像可從外部服務(wù)、或內(nèi)部系統(tǒng)、存儲設(shè)備、或節(jié)點獲得。其它示例可包括但不限于=GPS 輔助服務(wù)器、無線網(wǎng)絡(luò)覆蓋數(shù)據(jù)庫、企業(yè)或個人目錄、天氣數(shù)據(jù)、政府信息(例如,建設(shè)更新 或道路名稱改變)或交通報告。地圖服務(wù)的一些實施例可更新地圖服務(wù)數(shù)據(jù)(例如,無線 網(wǎng)絡(luò)覆蓋),以便分析來自客戶端設(shè)備的未來請求。
[0395] 地圖服務(wù)的各種實施例可響應(yīng)于客戶端設(shè)備對地圖服務(wù)的請求。這些請求可針對 特定地圖、或地圖的一部分。一些實施例將對地圖的請求格式化為對某些地圖片的請求。在 一些實施例中,請求還向地圖服務(wù)提供用于路線計算的起點位置(或當前位置)和目標位 置??蛻舳嗽O(shè)備還可請求地圖服務(wù)呈現(xiàn)信息,諸如地圖紋理或樣式表。在至少一些實施例 中,請求還是實現(xiàn)逐向?qū)Ш降囊幌盗姓埱笾?。對其它幾何形狀?shù)據(jù)的請求可包括但不限 于:對當前位置、無線網(wǎng)絡(luò)覆蓋、天氣、交通信息或附近感興趣點的請求。
[0396] 在一些實施例中,地圖服務(wù)分析客戶端設(shè)備對優(yōu)化設(shè)備或地圖服務(wù)操作的請求。 例如,地圖服務(wù)可識別客戶端設(shè)備的位置處于通信較差(例如,無線信號較弱)的區(qū)域,并 且發(fā)送更多地圖服務(wù)數(shù)據(jù)以在通信有損失情況下供應(yīng)客戶端設(shè)備、或發(fā)送利用不同客戶端 硬件(例如,取向傳感器)或軟件(例如,利用無線位置服務(wù)或Wi-Fi定位而非基于GPS的 服務(wù))的指令。在另一示例中,地圖服務(wù)可分析客戶端設(shè)備對基于向量的地圖圖像數(shù)據(jù)的 請求,并且確定基于柵格的地圖數(shù)據(jù)根據(jù)圖像的復(fù)雜性更好地優(yōu)化地圖圖像數(shù)據(jù)。其它地 圖服務(wù)的實施例可對客戶端設(shè)備請求執(zhí)行類似分析,并且因此,以上示例并不旨在進行限 制。
[0397] 客戶端設(shè)備(例如,客戶端設(shè)備4602a_4602c)的各種實施例實現(xiàn)在不同便攜式 多功能設(shè)備類型上。客戶端設(shè)備4602a-4602c通過各種通信方法和協(xié)議來利用地圖服務(wù) 4630。在一些實施例中,客戶端設(shè)備4602a-4602c從地圖服務(wù)4630獲得地圖服務(wù)數(shù)據(jù)。客 戶端設(shè)備4602a-4602c請求或接收地圖服務(wù)數(shù)據(jù)??蛻舳嗽O(shè)備4602a-4602c隨后處理地圖 服務(wù)數(shù)據(jù)(例如,渲染和/或顯示數(shù)據(jù)),并且向設(shè)備上的另一軟件或硬件模塊或向外部設(shè) 備或系統(tǒng)發(fā)送數(shù)據(jù)。
[0398] 根據(jù)一些實施例,客戶端設(shè)備實現(xiàn)渲染和/或顯示地圖的技術(shù)??梢愿鞣N格式諸 如上述地圖片來請求或接收這些地圖。客戶端設(shè)備可以二維或三維視圖渲染地圖??蛻舳?設(shè)備的一些實施例顯示所渲染的地圖,并且允許用戶、系統(tǒng)或提供輸入的設(shè)備操縱地圖中 的虛擬攝像機,從而根據(jù)虛擬攝像機的位置、取向和視場來改變地圖顯示。各種形式和輸入 設(shè)備被實現(xiàn)用來操縱虛擬攝像機。在一些實施例中,通過某些單個或組合手勢(例如,觸摸 和保持、或橫掃)進行的觸摸輸入操縱虛擬攝像機。其它實施例允許對設(shè)備的物理位置進 行的操縱以便操縱虛擬攝像機。例如,客戶端設(shè)備可從其當前位置向上傾斜以操縱虛擬攝 像機向上旋轉(zhuǎn)。在另一示例中,客戶端設(shè)備可從其當前位置向前傾斜以向前移動虛擬攝像 機??蓪崿F(xiàn)客戶端設(shè)備的其它輸入設(shè)備,包括但不限于聽覺輸入(例如,輸出詞語)、物理鍵 盤、鼠標和/或操縱桿。
[0399] 一些實施例對虛擬攝像機操縱提供各種可視反饋,諸如在從二維地圖視圖轉(zhuǎn)變成 三維地圖視圖時顯示可能的虛擬攝像機操縱的動畫。一些實施例還允許進行輸入以選擇地 圖特征或?qū)ο螅ɡ?,建筑物)并且加亮對象,從而產(chǎn)生維持虛擬攝像機對三維空間的感知 的模糊效果。
[0400] 在一些實施例中,客戶端設(shè)備實施導(dǎo)航系統(tǒng)(例如,逐向?qū)Ш剑?dǎo)航系統(tǒng)提供可 向用戶顯示的指引或路線信息??蛻舳嗽O(shè)備的一些實施例從地圖服務(wù)請求指引或路線計 算??蛻舳嗽O(shè)備可從地圖服務(wù)接收地圖圖像數(shù)據(jù)和路線數(shù)據(jù)。在一些實施例中,客戶端設(shè) 備實現(xiàn)逐向?qū)Ш较到y(tǒng),逐向?qū)Ш较到y(tǒng)基于從地圖服務(wù)和/或其它位置系統(tǒng)諸如全球定位衛(wèi) 星(GPS)接收的位置信息和路線信息來提供實時路線和指引信息??蛻舳嗽O(shè)備可顯示反應(yīng) 客戶端設(shè)備的當前位置的地圖圖像數(shù)據(jù)并且實時更新地圖圖像數(shù)據(jù)。導(dǎo)航系統(tǒng)可提供聽覺 或視覺指引以遵循某條路線。
[0401] 根據(jù)一些實施例,虛擬攝像機被實現(xiàn)以操縱導(dǎo)航地圖數(shù)據(jù)。在一些實施例中,客戶 端設(shè)備允許設(shè)備調(diào)整虛擬攝像機顯示取向以朝向路線目標偏置。一些實施例還允許虛擬攝 像機通過模擬虛擬攝像機的慣性運動來導(dǎo)航轉(zhuǎn)彎。
[0402] 客戶端設(shè)備實現(xiàn)利用來自地圖服務(wù)的地圖服務(wù)數(shù)據(jù)的各種技術(shù)。一些實施例實現(xiàn) 優(yōu)化二維和三維地圖圖像數(shù)據(jù)的渲染的一些技術(shù)。在一些實施例中,客戶端設(shè)備本地存儲 渲染信息。例如,客戶端存儲樣式表,該樣式表提供用于包含樣式標識符的圖像數(shù)據(jù)的渲染 指引。在另一示例中,可存儲公共圖像紋理以減少從地圖服務(wù)傳輸?shù)牡貓D圖像數(shù)據(jù)的量。不 同實施例中的客戶端設(shè)備實現(xiàn)渲染二維和三維地圖圖像數(shù)據(jù)的各種建模技術(shù),建模技術(shù)的 示例包括但不限于:從二維建筑物占有面積數(shù)據(jù)生成三維建筑物;對二維和三維地圖對象 建模以確定客戶端設(shè)備通信環(huán)境;生成用于確定從某個虛擬攝像機位置是否可看到地圖標 簽的模型;以及生成用于在地圖圖像數(shù)據(jù)之間平滑轉(zhuǎn)變的模型。在一些實施例中,客戶端設(shè) 備還以某些技術(shù)來對地圖服務(wù)數(shù)據(jù)定序或區(qū)分優(yōu)先次序。例如,客戶端設(shè)備檢測虛擬攝像 機的運動或速度,如果運動或速度超過某些閾值,則加載并渲染出某些區(qū)域的詳細程度較 低的地圖數(shù)據(jù)。其它示例包括:將基于向量的曲線渲染為一系列點,針對與地圖服務(wù)具有較 差通信的區(qū)域預(yù)先加載地圖圖像數(shù)據(jù),基于顯示縮放水平來調(diào)節(jié)紋理,或根據(jù)復(fù)雜性來渲 染地圖圖像數(shù)據(jù)。
[0403] 在一些實施例中,客戶端設(shè)備利用與地圖片分開的各種數(shù)據(jù)格式進行通信。例如, 一些客戶端設(shè)備實現(xiàn)輔助全球定位衛(wèi)星(A-GPS)并且與利用符合位置服務(wù)協(xié)議的數(shù)據(jù)格 式的位置服務(wù)通信,位置服務(wù)協(xié)議諸如但不限于:無線電資源位置服務(wù)協(xié)議(RRLP)、用于 碼分多址接入(CDMA)的TIA801、無線電資源控制(RRC)定位協(xié)議、或LTE定位協(xié)議(LPP)。 客戶端設(shè)備還可直接接收GPS信號。實施例還可在具有或不具有來自地圖服務(wù)的征求情況 下發(fā)送數(shù)據(jù),從而辨識設(shè)備的能力或?qū)傩裕ɡ?,硬件?guī)格或操作系統(tǒng)版本)或者通信能力 (例如,如由無線信號強度或有線或無線網(wǎng)絡(luò)類型確定的設(shè)備通信帶寬)。
[0404] 圖46例示地圖服務(wù)4630和客戶端設(shè)備4602a_4602c的操作環(huán)境4600的一種可 能的實施例。在一些實施例中,設(shè)備4602a、4602b和4602c通過一個或多個有線或無線 網(wǎng)絡(luò)4610進行通信。例如,無線網(wǎng)絡(luò)4610諸如蜂窩網(wǎng)絡(luò)可通過使用網(wǎng)關(guān)4614與廣域網(wǎng) (WAN)4620諸如互聯(lián)網(wǎng)通信。在一些實施例中,網(wǎng)關(guān)4614提供面向分組移動數(shù)據(jù)服務(wù)諸如 通用分組無線電服務(wù)(GPRS)、或其它移動數(shù)據(jù)服務(wù),這些服務(wù)允許無線網(wǎng)絡(luò)向其它網(wǎng)絡(luò)諸 如廣域網(wǎng)4620傳輸數(shù)據(jù)。同樣,接入設(shè)備4612(例如,IEEE 802. Ilg無線接入設(shè)備)提供 對WAN 4620的通信接入。設(shè)備4602a和4602b可為能夠與地圖服務(wù)通信的任何便攜式電 子或計算設(shè)備。設(shè)備4602c可為能夠與地圖服務(wù)通信的任何非便攜式電子或計算設(shè)備。
[0405] 在一些實施例中,嗓音和數(shù)據(jù)通信均通過無線網(wǎng)絡(luò)4610和接入設(shè)備4612來建立。 例如,設(shè)備4602a可通過無線網(wǎng)絡(luò)4610、網(wǎng)關(guān)4614和WAN 4620來撥打和接收電話呼叫(例 如,使用互聯(lián)網(wǎng)協(xié)議語音技術(shù)(VoIP)協(xié)議)、發(fā)送和接收電子郵件消息(例如,使用簡單郵 件傳輸協(xié)議(SMTP)、或郵局協(xié)議3 (POP3)),并且檢索電子文檔和/或數(shù)據(jù)流,諸如網(wǎng)頁、照 片和視頻(例如,使用傳輸控制協(xié)議/互聯(lián)網(wǎng)協(xié)議(TCP/IP)或用戶數(shù)據(jù)報協(xié)議(UDP))。同 樣,在一些具體實施中,設(shè)備4602b和4602c可通過接入設(shè)備4612和WAN 4620來撥打和接 收電話呼叫、發(fā)送和接收電子郵件消息并且檢索電子文檔。在各種實施例中,任何例示的客 戶端設(shè)備可使用持久性連接與地圖服務(wù)4630和/或其它服務(wù)4650通信,持久性連接是根 據(jù)一個或多個安全協(xié)議諸如安全套接層(SSL)協(xié)議或傳輸層安全(TLS)協(xié)議來建立的。
[0406] 設(shè)備4602a和4602b還可通過其它方式來建立通信。例如,無線設(shè)備4602a可通過 無線網(wǎng)絡(luò)4610與其它無線設(shè)備(例如,其它設(shè)備4602b、手機等)通信。同樣,設(shè)備4602a 和4602b可使用一個或多個通信子系統(tǒng)諸如來自華盛頓州柯克蘭市Bluetooth Special Interest Group公司的Bluetooth?通信,來建立對等通信4640(例如,個人區(qū)域網(wǎng))。設(shè) 備4602c還可與設(shè)備4602a和4602b建立對等通信(未示出)。也可實現(xiàn)其他通信協(xié)議和 拓撲結(jié)構(gòu)。設(shè)備4602a和4602b還可從GPS衛(wèi)星4660接收全球定位衛(wèi)星(GPS)信號。
[0407] 設(shè)備4602a、4602b和4602c可通過一個或多個有線和/或無線網(wǎng)絡(luò)4612或4610 與地圖服務(wù)4630通信。例如,地圖服務(wù)4630可將地圖服務(wù)數(shù)據(jù)提供給渲染設(shè)備4602a、 4602b和4602c。地圖服務(wù)4630還可與其它服務(wù)4650通信以獲得實現(xiàn)地圖服務(wù)的數(shù)據(jù)。地 圖服務(wù)4630和其它設(shè)備4650還可從GPS衛(wèi)星4660接收GPS信號。
[0408] 在各種實施例中,地圖服務(wù)4630和/或其它服務(wù)4650被配置為處理來自任何客 戶端設(shè)備的搜索請求。搜索請求可包括但不限于:對企業(yè)、地址、住宅位置、感興趣點、或它 們的一些組合的查詢。地圖服務(wù)4630和/或其它服務(wù)4650可被配置為返回與多種參數(shù)相 關(guān)的結(jié)果,參數(shù)包括但不限于:輸入到地址欄或其它文本輸入字段中的位置(包括縮寫和/ 或其它速記符號)、當前地圖視圖(例如,用戶可能在位于一個位置時在多功能設(shè)備上查看 另一位置)、用戶的當前位置(例如,在當前地圖視圖并不包括搜索結(jié)果的情況下)以及當 前路線(如果存在的話)。在各種實施例中,這些參數(shù)可基于不同的優(yōu)先級權(quán)重影響搜索 結(jié)果的組成(和/或搜索結(jié)果的定序)。在各種實施例中,所返回的搜索結(jié)果可為基于特 定準則來選擇的結(jié)果的子集,特定準則包括但不限于搜索結(jié)果(例如,特定感興趣點)已經(jīng) 被請求的次數(shù)、對與搜索結(jié)果相關(guān)聯(lián)的質(zhì)量的衡量(例如,最高用戶或編輯評論評級)、和/ 或搜索結(jié)果的評論量(例如,搜索結(jié)果被評論或評級的次數(shù))。
[0409] 在各種實施例中,地圖服務(wù)4630和/或其它服務(wù)4650被配置為提供自動完成搜 索結(jié)果,自動完成搜索結(jié)果被顯示在客戶端設(shè)備上,諸如在地圖繪制應(yīng)用程序內(nèi)。例如,當 用戶在多功能設(shè)備上輸入一個或多個搜索關(guān)鍵詞時,自動完成搜索結(jié)果可填充屏幕的一部 分。在一些情況下,這個特征可節(jié)省用戶時間,因為期望搜索結(jié)果可在用戶輸入完整搜索查 詢之前顯示出來。在各種實施例中,自動完成搜索結(jié)果可為客戶端在客戶端設(shè)備上找到的 搜索結(jié)果(例如,書簽或聯(lián)系人)、地圖服務(wù)4630和/或其它服務(wù)4650在其它地方(例如, 從互聯(lián)網(wǎng))找到的搜索結(jié)果和/或它們的一些組合。與命令的情況一樣,用戶可通過嗓音 或通過鍵入來輸入任何搜索查詢。多功能設(shè)備可被配置為在任何本文所述地圖顯示內(nèi)圖形 地顯示搜索結(jié)果。例如,圖針或其它圖形指示器可將搜索結(jié)果的位置指定為感興趣點。在 各種實施例中,響應(yīng)于用戶對這些感興趣點之一的選擇(例如,觸摸選擇,諸如輕擊),多功 能設(shè)備被配置為顯示關(guān)于所選擇的感興趣點的另外的信息,包括但不限于評級、評論或評 論片段、操作小時數(shù)、商店狀態(tài)(例如,對于企業(yè)開放,永久關(guān)閉等)和/或感興趣點的店面 的圖像。在各種實施例中,任何這種信息都可顯示在響應(yīng)于用戶對感興趣點的選擇而顯示 的圖形信息卡片上。
[0410] 在各種實施例中,地圖服務(wù)4630和/或其它服務(wù)4650提供一個或多個反饋機制 以從客戶端設(shè)備4602a-4602c接收反饋。例如,客戶端設(shè)備可向地圖服務(wù)4630和/或其它 服務(wù)4650提供關(guān)于搜索結(jié)果的反饋(例如,指定評級、評論、暫時或永久企業(yè)歇業(yè)、錯誤等 的反饋);這種反饋可用于更新關(guān)于感興趣點的信息,以便在未來提供更準確或更新的搜 索結(jié)果。在一些實施例中,地圖服務(wù)4630和/或其它服務(wù)4650可向客戶端設(shè)備提供測試 信息(例如,A/B測試),以便確定哪個搜索結(jié)果是最佳的。例如,客戶端設(shè)備可以隨機間隔 接收兩個搜索結(jié)果并向用戶呈現(xiàn)它們,并且允許用戶指示最佳結(jié)果??蛻舳嗽O(shè)備可向地圖 服務(wù)4630和/或其它服務(wù)4650報告測試結(jié)果,以便基于所選擇的測試技術(shù)來改進未來搜 索結(jié)果,所選擇的測試技術(shù)諸如其中將基線控制樣本與多個單變量測試樣本進行比較以便 改進結(jié)果的A/B測試技術(shù)。
[0411] 雖然已參考許多特定細節(jié)描述了本發(fā)明,但本領(lǐng)域的普通技術(shù)人員將認識到,可 在不脫離本發(fā)明的實質(zhì)的情況下以其他特定形式來體現(xiàn)本發(fā)明。例如,許多圖示出了各種 觸摸手勢(例如,輕按、雙擊、橫掃手勢、按下并保持手勢等)。然而,所示出的操作中的許多 操作可經(jīng)由不同觸摸手勢(例如,橫掃而非輕按等)或由非觸摸輸入(例如,使用光標控制 器、鍵盤、觸摸板/觸控板、近觸感屏等)來執(zhí)行。另外,多個附圖概念性地例示多個過程。 這些過程的特定操作可不以所示出和描述的確切順序被執(zhí)行??刹辉诓僮鞯囊粋€連續(xù)系列 中執(zhí)行該特定操作,并且可在不同實施例中執(zhí)行不同的特定操作。此外,該過程可使用若干 子過程來實施,或者作為更大宏過程而實施。
[0412] 雖然已參考許多特定細節(jié)描述了本發(fā)明,但本領(lǐng)域的普通技術(shù)人員將認識到,可 在不脫離本發(fā)明的實質(zhì)的情況下以其他特定形式來體現(xiàn)本發(fā)明。另外,多個附圖概念性地 例示多個過程。這些過程的特定操作可不以所示出和描述的確切順序被執(zhí)行??刹辉诓僮?的一個連續(xù)系列中執(zhí)行該特定操作,并且可在不同實施例中執(zhí)行不同的特定操作。此外,該 過程可使用若干子過程來實施,或者作為更大宏過程而實施。因此,本領(lǐng)域的普通技術(shù)人員 將理解,本發(fā)明不受前述示例性細節(jié)限制,而是將由所附的權(quán)利要求所限定。
【權(quán)利要求】
1. 一種用于為包括顯示器的設(shè)備提供導(dǎo)航方向的方法,所述方法包括: 當所述設(shè)備顯示器關(guān)閉而處于鎖定模式時,確定所述設(shè)備正接近導(dǎo)航點; 自動打開電子顯不器; 顯示導(dǎo)航方向而不使所述設(shè)備退出所述鎖定模式;以及 當所述設(shè)備在所述鎖定模式下通過所述導(dǎo)航點時,關(guān)閉所述電子顯示器。
2. 根據(jù)權(quán)利要求1所述的方法,其中當所述設(shè)備處于所述鎖定模式時,對安裝在所述 電子設(shè)備上的多個應(yīng)用程序的訪問被阻止,直至接收到用于解鎖顯示屏的輸入。
3. 根據(jù)權(quán)利要求1所述的方法,其中確定所述設(shè)備正接近導(dǎo)航點包括確定所述設(shè)備比 距所述導(dǎo)航點的預(yù)定閾值距離更靠近所述導(dǎo)航點。
4. 根據(jù)權(quán)利要求1所述的方法,其中通過所述導(dǎo)航點包括以預(yù)定閾值距離通過所述導(dǎo) 航點。
5. 根據(jù)權(quán)利要求1所述的方法,其中所述導(dǎo)航指令由在所述設(shè)備上執(zhí)行的導(dǎo)航應(yīng)用程 序提供,所述方法還包括: 接收解鎖控件;以及 使所述設(shè)備解鎖進入所述導(dǎo)航應(yīng)用程序,而不論在所述設(shè)備鎖定之前不同應(yīng)用程序在 所述設(shè)備的前臺打開。
6. 根據(jù)權(quán)利要求1所述的方法,還包括: 當所述顯示器關(guān)閉而處于所述鎖定模式時,接收文本消息; 即使當所述設(shè)備不在導(dǎo)航位置附近時,也自動打開所述顯示器;以及 顯示消息訪問控件。
7. 根據(jù)權(quán)利要求6所述的方法,還包括: 接收對所述消息訪問控件的選擇而不使所述設(shè)備解鎖;以及 顯示所述消息。
8. -種在設(shè)備的鎖定模式下提供導(dǎo)航指令的方法,所述方法包括: 當所述設(shè)備的顯示屏關(guān)閉而處于所述鎖定模式時,確定所述設(shè)備在導(dǎo)航點附近; 辨識所述設(shè)備周圍環(huán)境光線水平;以及 使所述顯示屏在基于所辨識的環(huán)境光線水平而確定的亮度水平下自動打開。
9. 根據(jù)權(quán)利要求8所述的方法,其中當所述設(shè)備處于所述鎖定模式時,對安裝在所述 電子設(shè)備上的多個應(yīng)用程序的訪問被阻止,直至接收到用于解鎖所述顯示屏的輸入。
10. 根據(jù)權(quán)利要求8所述的方法,還包括:隨著所述設(shè)備接近于所述導(dǎo)航點而不使所述 設(shè)備解鎖,在將所述顯示屏打開后,顯示一組減小距離。
11. 根據(jù)權(quán)利要求10所述的方法,還包括: 在通過所述導(dǎo)航點后,顯示下一導(dǎo)航指令;以及 關(guān)閉所述顯示器。
12. 根據(jù)權(quán)利要求8所述的方法,其中使所述顯示屏在基于所辨識的環(huán)境光線水平而 確定的亮度水平下打開包括在基于第一環(huán)境光線水平的第一亮度水平下和基于第二環(huán)境 光線水平的第二亮度水平下打開所述顯示器,其中當所述第一環(huán)境光線水平高于所述第二 環(huán)境光線水平時,所述第一亮度水平被設(shè)定為比所述第二亮度水平高的水平。
13. 根據(jù)權(quán)利要求8所述的方法,其中辨識所述環(huán)境光線包括到達所述導(dǎo)航點之前,激 活環(huán)境光線水平傳感器。
14. 根據(jù)權(quán)利要求13所述的方法,其中所述設(shè)備包括攝像機,其中所述環(huán)境光線水平 傳感器是所述設(shè)備攝像機的一部分。
15. -種在設(shè)備處于鎖定模式下顯示所接收的消息的方法,所述方法包括: 當所述設(shè)備顯示器關(guān)閉而處于所述鎖定模式時接收消息; 自動打開所述設(shè)備的顯示器; 顯示消息訪問控件; 接收對所述消息訪問控件的選擇;以及 顯示所述消息。
16. 根據(jù)權(quán)利要求15所述的方法,其中當所述設(shè)備處于所述鎖定模式時,對安裝在所 述電子設(shè)備上的多個應(yīng)用程序的訪問被阻止,直至接收到用于解鎖所述顯示屏的輸入。
17. 根據(jù)權(quán)利要求15所述的方法,其中接收對所述消息訪問控件的所述選擇而不使所 述設(shè)備解鎖。
18. 根據(jù)權(quán)利要求15所述的方法,還包括在打開所述設(shè)備的顯示器后,顯示消息通知。
19. 根據(jù)權(quán)利要求15所述的方法,其中所述消息通知是第一消息通知并且所述消息是 第一消息,所述方法還包括: 在接收對所述消息訪問控件的選擇之前,顯示第二消息通知;以及 在接收到對所述消息訪問控件的選擇后,顯示所述第一消息和所述第二消息這兩者。
20. 根據(jù)權(quán)利要求15所述的方法,還包括在顯示所述消息后,接收對停止顯示所述消 息的命令,并且移除所述消息訪問控件。
21. -種存儲程序的計算機可讀介質(zhì),所述程序在由至少一個處理單元執(zhí)行時為包括 顯示器的設(shè)備提供導(dǎo)航方向,所述程序包括用于以下操作的指令集: 當所述設(shè)備顯示器關(guān)閉而處于鎖定模式時,確定所述設(shè)備正接近導(dǎo)航點; 自動打開所述電子顯示器; 顯示導(dǎo)航方向而不使所述設(shè)備退出所述鎖定模式;以及 當所述設(shè)備在所述鎖定模式下通過所述導(dǎo)航點時,關(guān)閉所述電子顯示器。
22. 根據(jù)權(quán)利要求21所述的計算機可讀介質(zhì),其中當所述設(shè)備處于所述鎖定模式時, 對安裝在所述電子設(shè)備上的多個應(yīng)用程序的訪問被阻止,直至接收到用于解鎖所述顯示屏 的輸入。
23. 根據(jù)權(quán)利要求21所述的計算機可讀介質(zhì),其中用于確定所述設(shè)備正接近導(dǎo)航點的 指令集包括用于以下操作的指令集:確定所述設(shè)備比距所述導(dǎo)航點的預(yù)定閾值距離更靠近 所述導(dǎo)航點。
24. 根據(jù)權(quán)利要求21所述的計算機可讀介質(zhì),其中通過所述導(dǎo)航點包括以預(yù)定閾值距 離通過所述導(dǎo)航點。
25. 根據(jù)權(quán)利要求21所述的計算機可讀介質(zhì),其中所述程序是導(dǎo)航應(yīng)用程序,所述程 序還包括: 接收解鎖控件;以及 使所述設(shè)備解鎖進入所述導(dǎo)航應(yīng)用程序,而不論在所述設(shè)備鎖定之前不同應(yīng)用程序在 所述設(shè)備的前臺打開。
26. 根據(jù)權(quán)利要求21所述的計算機可讀介質(zhì),所述程序還包括用于以下操作的指令 集: 當所述顯示器關(guān)閉而處于所述鎖定模式時,接收文本消息; 即使當所述設(shè)備不在導(dǎo)航位置附近時,也自動打開所述顯示器;以及 顯示消息訪問控件。
27. 根據(jù)權(quán)利要求26所述的計算機可讀介質(zhì),所述程序還包括用于以下操作的指令 集: 接收對所述消息訪問控件的選擇而不使所述設(shè)備解鎖;以及顯示所述消息。
28. -種存儲程序的計算機可讀介質(zhì),所述程序在由至少一個處理單元執(zhí)行時在設(shè)備 的鎖定模式下提供導(dǎo)航指令,所述程序包括用于以下操作的指令集: 當所述設(shè)備的顯示屏關(guān)閉而處于所述鎖定模式時,確定所述設(shè)備在導(dǎo)航點附近; 辨識所述設(shè)備周圍環(huán)境光線水平;以及 使所述顯示屏在基于所辨識的環(huán)境光線水平而確定的亮度水平下自動打開。
29. 根據(jù)權(quán)利要求28所述的計算機可讀介質(zhì),其中當所述設(shè)備處于所述鎖定模式時, 對安裝在所述電子設(shè)備上的多個應(yīng)用程序的訪問被阻止,直至接收到用于解鎖所述顯示屏 的輸入。
30. 根據(jù)權(quán)利要求28所述的計算機可讀介質(zhì),所述程序還包括用于以下操作的指令 集:隨著所述設(shè)備接近于所述導(dǎo)航點而不使所述設(shè)備解鎖,在將所述顯示屏打開后,顯示一 組減小距離。
31. 根據(jù)權(quán)利要求30所述的計算機可讀介質(zhì),所述程序還包括用于以下操作的指令 集: 在通過所述導(dǎo)航點后,顯示下一導(dǎo)航指令;以及 關(guān)閉所述顯示器。
32. 根據(jù)權(quán)利要求28所述的計算機可讀介質(zhì),其中使所述顯示屏在基于所辨識的環(huán)境 光線水平而確定的亮度水平下打開包括在基于第一環(huán)境光線水平的第一亮度水平下和基 于第二環(huán)境光線水平的第二亮度水平下打開所述顯示器,其中當所述第一環(huán)境光線水平高 于所述第二環(huán)境光線水平時,所述第一亮度水平被設(shè)定為比所述第二亮度水平高的水平。
33. 根據(jù)權(quán)利要求28所述的計算機可讀介質(zhì),其中用于辨識所述環(huán)境光線的指令集包 括用于以下操作的指令集:在到達所述導(dǎo)航點之前,激活環(huán)境光線水平傳感器。
34. 根據(jù)權(quán)利要求33所述的計算機可讀介質(zhì),其中所述設(shè)備包括攝像機,其中所述環(huán) 境光線水平傳感器是所述設(shè)備攝像機的一部分。
35. -種存儲程序的計算機可讀介質(zhì),所述程序在由至少一個處理單元執(zhí)行時在設(shè)備 處于鎖定模式時顯示消息,所述程序包括用于以下操作的指令集: 當所述設(shè)備顯示器關(guān)閉而處于所述鎖定模式時,接收消息; 自動打開所述設(shè)備的顯示器; 顯示消息訪問控件; 接收對所述消息訪問控件的選擇;以及 顯示所述消息。
36. 根據(jù)權(quán)利要求35所述的計算機可讀介質(zhì),其中當所述設(shè)備處于所述鎖定模式時, 對安裝在所述電子設(shè)備上的多個應(yīng)用程序的訪問被阻止,直至接收到用于解鎖所述顯示屏 的輸入。
37. 根據(jù)權(quán)利要求35所述的計算機可讀介質(zhì),其中接收對所述消息訪問控件的所述選 擇而不使所述設(shè)備解鎖。
38. 根據(jù)權(quán)利要求35所述的計算機可讀介質(zhì),所述程序還包括用于以下操作的指令 集:在打開所述設(shè)備的顯示器后,顯示消息通知。
39. 根據(jù)權(quán)利要求35所述的計算機可讀介質(zhì),其中所述消息通知是第一消息通知并且 所述消息是第一消息,所述程序還包括用于以下操作的指令集: 在接收對所述消息訪問控件的選擇之前,顯示第二消息通知;以及 在接收到對所述消息訪問控件的選擇后,顯示所述第一消息和所述第二消息這兩者。
40. 根據(jù)權(quán)利要求35所述的計算機可讀介質(zhì),所述程序還包括用于以下操作的指令 集:在顯示所述消息后,接收對停止顯示所述消息的命令,并且移除所述消息訪問控件。
【文檔編號】G06F3/0484GK104335152SQ201380028722
【公開日】2015年2月4日 申請日期:2013年5月29日 優(yōu)先權(quán)日:2012年6月5日
【發(fā)明者】M·范奧斯, E·沃爾卡諾, B·A·摩爾, A·B·卡托, S·K·皮拉潘 申請人:蘋果公司