專利名稱:計算機實施用戶接口的制作方法
技術(shù)領(lǐng)域:
在此的實施例涉及用戶交互設(shè)備領(lǐng)域。本文獻教導(dǎo)用于通過與書寫表面的動態(tài)生成接口區(qū)域交互來調(diào)用計算機功能的方法和系統(tǒng)背景技術(shù)在過去二十年內(nèi),個人計算設(shè)備的使用已經(jīng)非常普及,例如臺式計算機系統(tǒng)、便攜式計算機系統(tǒng)、手持計算機系統(tǒng)和輸入板計算機系統(tǒng)。這些個人計算設(shè)備給用戶提供多種多樣的交互應(yīng)用、商業(yè)應(yīng)用、通信性能和娛樂能力。
當(dāng)前的個人計算設(shè)備通過用戶接口提供到這些交互應(yīng)用的訪問。典型的計算設(shè)備具有在屏幕上的圖形接口,使用諸如監(jiān)視器或顯示屏等顯示設(shè)備向用戶顯示信息,和使用諸如鼠標、鍵盤、操縱桿或輸入筆等輸入設(shè)備接收用戶的信息。
即便如此,與計算系統(tǒng)相比,使用筆和紙張在人文社會中更為普遍。雖然當(dāng)前計算設(shè)備的圖形用戶接口提供與多種計算應(yīng)用的有效交互,但是屏幕上的圖像用戶接口通常難以模仿普通使用的鋼筆或鉛筆和紙張。例如,臺式和便攜式計算機系統(tǒng)通常沒有類似于筆的接口。而且,輸入到計算機的內(nèi)容在電子顯示器上顯示,而不象在紙張或物理表面上書寫的信息一樣是有形和易于修改的。
最后,使用筆類接口在紙張表面上繪制的圖像和書寫的文章具有便利性、持久性和有形性,但是一旦使用筆類接口書寫,就不允許輕易地重復(fù)使用在紙張表面上的標記。換句話說,一些筆類計算機系統(tǒng)提供在紙張上某些用戶書寫項目的識別,并且,一旦識別出,該筆類計算機系統(tǒng)可以采取一些即時動作。然而,如果用戶希望再次執(zhí)行同一計算機功能,則需要在紙張上再次書寫該該項目。具體地,這些筆類計算機用戶接口并不允許用戶與在紙張上的書寫項目直接交互(例如通過筆輕敲選擇—非常類似于鼠標點擊)以自動地調(diào)用所期望的計算機功能。
發(fā)明內(nèi)容
因此,所描述的是一種用于交互設(shè)備的用戶接口,其中通過用戶與動態(tài)生成的與書寫表面相關(guān)的接口區(qū)域的交互來調(diào)用計算機功能。計算機系統(tǒng)識別在書寫表面上書寫的標記或者識別用戶與現(xiàn)有書寫標記的交互。在標記附近,計算機系統(tǒng)自動生成與該標記相關(guān)的一個或多個接口區(qū)域。相對于書寫表面的空間坐標在計算機存儲器內(nèi)定義接口區(qū)域,該接口區(qū)域是用戶不可見的。用戶與這些區(qū)域之一的交互調(diào)用與交互區(qū)域相關(guān)而且與標記相關(guān)的指定計算機功能??梢杂擅總€接口區(qū)域調(diào)用不同的計算機功能。根據(jù)相關(guān)標記的位置(和大小),計算機系統(tǒng)動態(tài)地定位并可以動態(tài)地調(diào)整接口區(qū)域的大小。多個標記生成多個區(qū)域,不同的區(qū)域與相應(yīng)的標記相關(guān)。在一種實施例中,在書寫單詞之前和/或之后建立這些區(qū)域。例如,還可以在書寫單詞上部和/或下部建立這些區(qū)域。在另一種實施例中,計算機系統(tǒng)是基于交互筆的計算機系統(tǒng)。
在一個具體例子中,可以使用基于交互筆的計算機系統(tǒng)識別在表面上的書寫單詞。在一種應(yīng)用中,基于筆的計算機系統(tǒng)提供從一種語言向另一種語言的單詞轉(zhuǎn)換。在書寫單詞之后(或者如果單詞存在并被選擇),則計算機系統(tǒng)自動地在存儲器內(nèi)生成空間上在該單詞之前的表面上的第一接口區(qū)域和空間上在該單詞之后的表面上的第二接口區(qū)域。與第一區(qū)域的用戶交互調(diào)用與第一區(qū)域和該單詞相關(guān)的第一計算機功能(例如由計算機以聲音方式提供該單詞的轉(zhuǎn)換)。與第二區(qū)域的用戶交互調(diào)用與第二區(qū)域和該單詞相關(guān)的第二計算機功能(例如以聲音方式逐字母地拼寫出該單詞的轉(zhuǎn)換形式)。顯然地,接口區(qū)域可以位于與該書寫單詞相鄰的任一位置內(nèi),在此描述的具體位置僅是示例性的。在一種實施例中,調(diào)整區(qū)域大小,以便它們的高度類似于書寫單詞的高度,它們的寬度可以是固定的或者是與該書寫單詞的大小或形狀相關(guān)的。
本發(fā)明的實施例還包括用于解決在不同標記的交互區(qū)域之間的干擾的處理。這些處理可以包括共享模型、超時模型、彈出模型和/或警告模型。本發(fā)明的實施例還包括用于根據(jù)需要自動地計算交互區(qū)域以便通過不始終在存儲器內(nèi)持久存儲每個交互區(qū)域而節(jié)省計算機資源的有效處理。
更具體地,本發(fā)明的實施例涉及一種形成與用戶的接口的計算機實施方法,該方法包括識別已經(jīng)由書寫設(shè)備在表面上形成的標記;識別該標記在表面上的位置和識別該標記的大??;自動地計算第一接口區(qū)域的位置和大小,其中第一接口區(qū)域與該標記相鄰;相關(guān)第一計算機功能與第一接口區(qū)域;和響應(yīng)于第一接口區(qū)域的用戶選擇,對與該標記相關(guān)的數(shù)據(jù)執(zhí)行第一計算機功能。實施例包括上述和其它步驟,包括自動地計算該表面的第二接口區(qū)域的位置和大小,其中第二接口區(qū)域與該標記相鄰且與第一接口區(qū)域不重疊;相關(guān)第二計算機功能與第二接口區(qū)域;和響應(yīng)于第二接口區(qū)域的用戶選擇,對數(shù)據(jù)執(zhí)行第二計算機功能。實施例包括上述步驟,和其中第一接口區(qū)域在空間上位于標記左側(cè),和其中第二接口區(qū)域在空間上位于標記右側(cè)。
實施例還包括一種形成與用戶的接口的計算機實施方法,該方法包括識別用戶已經(jīng)選擇書寫標記,其中該書寫標記位于書寫表面上;從存儲器訪問與書寫標記相關(guān)的接口區(qū)域;自動地計算第一接口區(qū)域的位置和大小,其中第一接口區(qū)域與書寫標記相鄰;相關(guān)第一計算機功能與第一接口區(qū)域;和響應(yīng)于第一接口區(qū)域的用戶選擇,對與該書寫標記相關(guān)的數(shù)據(jù)執(zhí)行第一計算機功能。實施例還包括上述和其它步驟,包括自動地計算該表面的第二接口區(qū)域的位置和大小,其中第二接口區(qū)域與該標記相鄰且與第一接口區(qū)域不重疊;相關(guān)第二計算機功能與第二接口區(qū)域;和響應(yīng)于第二接口區(qū)域的用戶選擇,對數(shù)據(jù)執(zhí)行第二計算機功能。實施例還包括上述步驟,和其中第一接口區(qū)域在空間上位于該書寫標記的左側(cè)和其中第二接口區(qū)域位于該書寫標記的右側(cè)。
實施例還涉及根據(jù)上文編程的交互設(shè)備。
圖1是筆計算機系統(tǒng)的用戶接口圖。
圖2是在其上可以實施本發(fā)明的各種實施例的電子交互設(shè)備的方框圖。
圖3是在其上可以實施本發(fā)明的各種實施例的另一種電子交互設(shè)備的方框圖。
圖4圖示提供有根據(jù)本發(fā)明一種實施例的標記模式的示例紙張。
圖5圖示在根據(jù)本發(fā)明一種實施例的示例紙張上的標記模式的放大圖。
圖6A圖示在其上書寫有標記的書寫表面,包括用于根據(jù)本發(fā)明一種實施例的筆計算機設(shè)備的用于自動地生成活動區(qū)域的用戶接口。
圖6B圖示在其上書寫有示例標記的書寫表面,包括用于根據(jù)本發(fā)明一種實施例的基于筆的計算機設(shè)備的用戶接口。
圖7A圖示根據(jù)本發(fā)明實施例的在其上書寫有兩個示例標記的書寫表面,每個標記分別與活動區(qū)域相關(guān),其中活動區(qū)域根據(jù)它們相應(yīng)的標記確定高度和寬度。
圖7B圖示根據(jù)本發(fā)明實施例的在其上書寫有兩個示例標記的書寫表面,每個標記分別與活動區(qū)域相關(guān),其中活動區(qū)域根據(jù)它們的相應(yīng)標記確定高度并固定寬度。
圖8圖示在空間上相互影響的兩個不同標記的活動區(qū)域。
圖9圖示在其上書寫有標記和根據(jù)本發(fā)明實施例自動地生成的四個示例活動區(qū)域的書寫表面。
圖10A是根據(jù)本發(fā)明實施例的計算機實施處理的流程圖,用于響應(yīng)于用戶書寫標記,自動地生成與該書寫相關(guān)的接口區(qū)域。
圖10B是根據(jù)本發(fā)明實施例的計算機實施處理的流程圖,用于響應(yīng)于用戶選擇現(xiàn)有書寫,自動地生成與該書寫相關(guān)的接口區(qū)域。
圖11是根據(jù)本發(fā)明實施例的計算機實施處理的流程圖,用于解決在接口區(qū)域之間的空間干擾。
圖12是根據(jù)本發(fā)明實施例的計算機實施處理的流程圖,用于在確定最靠近用戶動作的邊界之后計算邊界“on-the-flow(流動中)”的接口區(qū)域。
具體實施例方式
將詳細描述根據(jù)本發(fā)明的各種實施例,其例子在附圖中圖示。雖然將結(jié)合各種實施例描述本發(fā)明,但是將理解這些實施例將不是為了限制本發(fā)明。相反,本發(fā)明將涵蓋如根據(jù)權(quán)利要求書解釋的本發(fā)明保護范圍內(nèi)可以包括的替代、修改和等同物。此外,在下面對根據(jù)本發(fā)明的各種實施例的詳細描述中,將闡述各種具體細節(jié)以提供對本發(fā)明的全面理解。然而,對于本領(lǐng)域的普通技術(shù)人員來說,顯然可以在沒有這些具體細節(jié)的情況下實施本發(fā)明。在其它的例子中,將不詳細描述公知的方法、程序、組件和電路,從而使本發(fā)明的特征更為清楚。
符號和術(shù)語在下文中,將以程序、步驟、邏輯框、處理和可以在計算機存儲器上執(zhí)行的對數(shù)據(jù)比特的操作的其它符號表示來介紹詳細描述的一部分。例如,處理500、550、600和700。這些描述和表示是由數(shù)據(jù)處理領(lǐng)域的技術(shù)人員用于最有效地將它們的工作實質(zhì)傳送給本領(lǐng)域的其它技術(shù)人員。在此和普遍地,將程序、計算機執(zhí)行步驟、邏輯塊和處理等表示為實現(xiàn)期望結(jié)果的相互一致的步驟或指令序列。這些步驟是需要物理量的物理處理的步驟。通常,盡管不是必需的,這些量值采取在計算機系統(tǒng)內(nèi)能夠存儲、傳輸、組合、比較以及處理的電信號或磁信號的形式。已經(jīng)證明將這些信號視為比特、數(shù)值、單元、符號、字符、術(shù)語、編號等有時是很方便的,主要因為這是通常的用法。
然而,應(yīng)當(dāng)理解所有這些和類似的項目將與適當(dāng)?shù)奈锢砹肯嚓P(guān),并且僅僅是應(yīng)用于這些量值的便利標簽。除非詳細描述和根據(jù)下述討論顯而易見地,將理解在本發(fā)明中,討論使用諸如“識別”或“初始化”或“傳輸”或“內(nèi)嵌”或“耦合”或“訪問”或“識別”或“接收”或“輸出”或“生成”或“確定”或“相關(guān)”或“存儲”等術(shù)語來指計算機系統(tǒng)或類似的電子計算設(shè)備的動作和處理,將表示為計算機系統(tǒng)寄存器和存儲器內(nèi)的物理(電)量值的數(shù)據(jù)處理和轉(zhuǎn)換成類似地表示為在計算機系統(tǒng)存儲器或寄存器或其它這樣的信息存儲、傳輸或顯示設(shè)備內(nèi)的物理量的其它數(shù)據(jù)。
示例的繪制用戶接口圖1圖示構(gòu)成基于筆的計算機系統(tǒng)的用戶接口的例如在可書寫表面上的示例用戶書寫標記。在該例子中,已經(jīng)指示計算機系統(tǒng)執(zhí)行語言轉(zhuǎn)換應(yīng)用程序,例如從一種語言(英語)轉(zhuǎn)換成另一種語言(西班牙語)。在這個例子中,可以通過用戶繪制專用標記2來調(diào)用這個應(yīng)用,所述專用標記2是帶有圓圈的“T”。還可以使用緊鄰這個標記2的可選擇檢查標記來選擇該應(yīng)用的參數(shù);響應(yīng)于用戶使用筆計算機的筆尖在標記2上的用戶輕敲,可以滾動這些參數(shù)(例如通過順序音頻再現(xiàn))。在已經(jīng)通知期望參數(shù)之后,用戶可以繪制檢查標記以進行選擇。
響應(yīng)于用戶書寫一個單詞,例如“cat(貓)”4,應(yīng)用程序自動地通知西班牙翻譯“gato”。對于書寫單詞“dog(狗)”,同樣如此,例如計算機通知“perro”。在該應(yīng)用中,如果用戶希望重復(fù)該轉(zhuǎn)換,則需要在紙面上書寫用戶書寫接口項目10。當(dāng)用戶使用筆尖選擇這個項目10時,計算機將通知最新選擇的單詞,例如cat 4或dog 6的轉(zhuǎn)換。如果用戶希望獲得以字母拼寫的轉(zhuǎn)換單詞,則書寫項目8的選擇將執(zhí)行此功能。再次,將拼寫出最新選擇的單詞。
不幸的是,對于頻繁執(zhí)行的或核心的功能而言,用戶選擇單詞可能變得很乏味,隨后轉(zhuǎn)到該紙張的其它部分和選擇獨立的繪制功能項目,例如項目8或10以應(yīng)用于該單詞。在這種情況下,用戶可以發(fā)現(xiàn)他/她自己經(jīng)常在紙面上敲擊以執(zhí)行轉(zhuǎn)換和/或拼寫功能。而且,如果用戶僅希望轉(zhuǎn)換一個或兩個單詞,則用于執(zhí)行圖1的例子的用戶接口開銷可能看起來非常大。例如,用戶需要繪制項目2以調(diào)用轉(zhuǎn)換應(yīng)用,隨后書寫轉(zhuǎn)換項目10,然后可選擇地書寫拼寫項目8,隨后繪制將要轉(zhuǎn)換的單詞,例如cat 4和在項目8或10上敲擊。提供實現(xiàn)相同的功能但是需要更少的用戶繪制項目的用戶接口將是有利的。最后,具有在計算機系統(tǒng)內(nèi)持續(xù)性的在紙張上繪制的每個項目將耗費計算機資源。提供并不需要將專門繪制的項目8和10的用戶接口以便它們并不需要耗費計算機系統(tǒng)存儲器,將是有利的。
如在下文中進一步描述的,本發(fā)明的實施例提供一種有利的用戶接口,用于繪制避免上述缺點的項目。
用于本發(fā)明的實施例的示例設(shè)備平臺圖2是可以在其上實施本發(fā)明各種實施例的電子交互設(shè)備100的方框圖。通常,可以將設(shè)備100稱作筆狀、基于筆的或者筆類計算機系統(tǒng)或光設(shè)備,或者更具體地,稱作光讀取器、光筆或數(shù)字筆或筆計算機。
在圖2的實施例中,設(shè)備100包括在外殼62內(nèi)部的處理器32。在一種實施例中,外殼62具有筆或其它書寫用具或書寫工具的普通形式和形狀。處理器32可操作地處理用于實現(xiàn)設(shè)備100的功能的信息和指令,如下文所述。此外,處理器32可操作地處理用于實現(xiàn)與耦合到設(shè)備100的任一存儲器或功能夾頭(例如28)相關(guān)的功能的信息和指令。
在一種實施例中,設(shè)備100可以包括音頻輸出設(shè)備36、顯示設(shè)備40,或者音頻設(shè)備和顯示設(shè)備都可以耦合到處理器32。在其它實施例中,音頻輸出設(shè)備和/或顯示設(shè)備是可選擇的或者是與設(shè)備100物理分離的,但是通過有線和/或無線連接與設(shè)備100通信。對于無線通信而言,設(shè)備100可以包括發(fā)射機或收發(fā)信機33。音頻輸出設(shè)備36可以包括揚聲器或音頻插孔(例如用于耳機或頭戴式受話器)。顯示設(shè)備40可以是液晶顯示器(LCD)或一些其它的合適類型的顯示器。
在圖2的實施例中,設(shè)備100可以包括耦合到處理器32的輸入按鈕38,用于啟動和控制設(shè)備100。例如,輸入按鈕38允許用戶向設(shè)備100輸入信息和命令或者將設(shè)備100打開或關(guān)閉。設(shè)備100還可以包括諸如電池的電源34,但是并不限制于此。
設(shè)備100還可以包括耦合到處理器32的光源或光發(fā)射機44和光傳感器或光檢測器42。光發(fā)射機44例如可以是發(fā)光二極管(LED),光檢測器42例如可以是電荷耦合設(shè)備(CCD)或互補型金屬氧化物半導(dǎo)體(CMOS)成像器陣列。光發(fā)射機44照明表面70或其一部分??梢栽诠鈾z測器42上接收和記錄從表面70反射的光。
在一種實施例中,在表面70上打印標記模式以結(jié)合設(shè)備100使用。表面70可以是在其上可以打印(或形成或存放)標記模式的任一合適的表面,例如紙張或其它類型的表面。可以固定光發(fā)射機44和光檢測器42的設(shè)備100的底部39相對于表面70放置或者放置在表面70附近。因為設(shè)備100相對于表面70移動,所以可以由光發(fā)射機44和光檢測器42讀取、記錄和識別標記模式。如在下文中更詳細地討論的,在一種實施例中,使用在表面70上的標記以確定設(shè)備100相對于表面70的位置(例如參見圖3和圖4)。在另一種實施例中,可以使用在表面70上的標記編碼信息;可以由設(shè)備100分析(處理)表面70的捕獲圖像以解碼標記和恢復(fù)編碼信息。
圖2的設(shè)備100還可以包括耦合到處理器32的存儲器單元48。在一種實施例中,存儲器單元48是實施為存儲夾頭或存儲卡的可拆除存儲單元。在另一種實施例中,存儲器單元48可以包括用于存儲用于處理器32的信息和指令的易失性存儲器和/或非易失性存儲器。例如,存儲器單元48可以包括但是并不限制于用于存儲處理器32的信息和指令的隨機訪問存儲器(RAM)和/或只讀存儲器(ROM)。
在圖2的實施例中,設(shè)備100可以包括作為光檢測器42和光發(fā)射機44位于設(shè)備100的同一端(例如39)上的書寫單元52。書寫單元52例如可以是筆、鉛筆、標記器、指示筆、等等,并可以是可收縮或者不可收縮的。在某些應(yīng)用中,不需要書寫單元52。在其它應(yīng)用中,用戶可以使用書寫單元52在表面70上做標記,所述表面70包括諸如字母、數(shù)字、符號和圖案等字符??梢杂稍O(shè)備100根據(jù)它們在表面70上的位置掃描(例如成像)和解釋這些用戶生成的標記。可以使用在表面70上打印的標記模式確定用戶生成標記的位置(例如在下文中參考圖4和圖5的討論)。在一種實施例中,可以由設(shè)備100使用識別手寫字符的光學(xué)字符識別(OCR)技術(shù)來解釋用戶生成的標記。
表面70可以是紙張,盡管也可以使用由紙張之外的材料組成的表面。表面70可以是平板式顯示屏(例如LCD)或電子紙(例如使用電子墨水的可重新配置的紙張)。而且,表面70可以是平面的,也可以不是。例如,可以將表面70實施為球表面。此外,表面70可以小于或大于常規(guī)的紙張(例如8.5×11英寸)。通常,表面70可以是在其上可以打印或沉淀標記(例如字母、數(shù)字、符號、字符、等等)的任一種表面??蛇x擇地,表面可以是這樣一種類型的表面,其中表面的特性響應(yīng)于設(shè)備100在表面上的動作而改變,以便標記變得可見。
圖2還圖示可以與根據(jù)本發(fā)明各種實施例的設(shè)備100組合使用的示例性夾頭28。具體而言,通過將夾頭28耦合(或連接)到設(shè)備100,通過支持將一個或多個應(yīng)用程序的復(fù)本從其存儲器30到可以與表面70的特定部分結(jié)合使用的設(shè)備100的存儲器48的下載,夾頭28可以擴展設(shè)備100的功能。因此,設(shè)備100能夠使用它從夾頭28接收的一個或多個應(yīng)用程序。
具體而言,根據(jù)本發(fā)明的一種實施例,夾頭28可以包括存儲器30、功能邏輯、接口35以及可選外圍設(shè)備41,全部都可以位于夾頭外殼31內(nèi)部。在一種實施例中,夾頭外殼31可以具有筆帽或者用于書寫工具或用具(例如設(shè)備100)的帽子的形式。例如,在一種實施例中,可以設(shè)計夾頭外殼31以安全可靠地裝配在設(shè)備100的外殼62的頂部37和底部39。因此,夾頭28的外殼31可以如此造型,以便可以以類似于將筆帽安全可靠地裝配到筆上時的方式,將其安全可靠地裝配到設(shè)備100上。具體而言,可以設(shè)計夾頭28的外殼31以安全可靠地安裝到設(shè)備100的外殼62的頂部37上。此外,也可以設(shè)計夾頭28的外殼31以安全可靠地將其安裝到設(shè)備100的外殼62的底部39上,從而支持將夾頭28用作設(shè)備100的帽子(或蓋子),用于覆蓋和/或保護書寫單元52、光檢測器42和/或光發(fā)射機44。顯然地,當(dāng)安全可靠地安裝到設(shè)備100的底部39上時,可以被動地存儲夾頭28。
在圖2中,設(shè)備100可以包括用于支持將夾頭(例如28)耦合到設(shè)備100的接口37。顯而易見地,當(dāng)將夾頭28的外殼31安全可靠地安裝到設(shè)備100的外殼62的頂部37上時,夾頭28的接口35可以電耦合到設(shè)備100的接口37。當(dāng)以這種方式耦合時,夾頭28可以耦合到設(shè)備100的處理器32、電源34和存儲器單元48。因此,在一種實施例中,設(shè)備100的處理器32可以自動地從夾頭28的存儲器30將任一駐留應(yīng)用程序的復(fù)本下載到將在其上存儲的設(shè)備100的存儲器48。將理解可以將由存儲器30存儲的上述信息的全部(或部分)的復(fù)本下載到將在其上存儲的設(shè)備100的存儲器48內(nèi)。在一種實施例中,在已經(jīng)將一個或多個應(yīng)用程序以及任何其它信息從夾頭28的存儲器下載到設(shè)備100的存儲器48時,可以從設(shè)備100拆除(或解除耦合)夾頭28。應(yīng)當(dāng)指出即使將夾頭28從設(shè)備100解除耦合,設(shè)備100依然可以使用從夾頭28下載的一個或多個應(yīng)用程序以及任何其它信息。
夾頭28還可以選擇地包括一個或多個外圍設(shè)備(例如41),它可以與由夾頭28存儲的一個或多個應(yīng)用程序相關(guān)。例如,可以將可選外圍設(shè)備41實施為,但是并不限制于振動組合件、發(fā)光二極管(LED)、升級顯示器、升級揚聲器、等等。外圍設(shè)備41可以通過夾頭28的接口35耦合到設(shè)備100。應(yīng)當(dāng)理解可以通過多種方式實現(xiàn)夾頭28的存儲器30。例如,存儲器30可以使用下述方式實施但是并不限制與此閃存、可編程只讀存儲器(PROM)、可擦寫可編程只讀存儲器(EPROM)、電可擦除可編程只讀存儲器(EEPROM)和/或在從電源斷開連接很長時間之后可以存儲數(shù)據(jù)的任何其它的非易失性存儲器。
圖3是在其上可以實施本發(fā)明的各種實施例的另一種電子交互設(shè)備200的方框圖。設(shè)備200包括先前所述的處理器32、電源34、音頻輸出設(shè)備36、輸入按鈕38、存儲器單元48、光檢測器42、光發(fā)射機44、書寫單元52和接口37。然而,在圖2的實施例中,將光檢測器42、光發(fā)射機44和書寫單元52實施為在外殼62內(nèi)的光設(shè)備201,將處理器32、電源34、音頻輸出設(shè)備36、輸入按鈕38、接口37和存儲器單元48實施為包括外殼74的平臺202。在當(dāng)前的實施例中,通過電纜102將光設(shè)備201耦合到平臺202;然而,也可以使用無線連接。組合上述單元之外的其它單元,在光設(shè)備201和平臺200之間分配圖3所示的單元。
此外,圖3還圖示可以包括先前所述的存儲器30、接口35和可選外圍設(shè)備41的夾頭28。而且,夾頭28還可以包括外殼31’,其形狀支持將夾頭28安裝可靠地耦合到平臺202的外殼74的側(cè)面204。應(yīng)當(dāng)指出外殼31’具有不同于圖1的外殼31的形狀。在一種實施例中,如果將接口37實施為部分光設(shè)備201,則可以修改夾頭28的外殼31’,以便它可以支持將夾頭28安全可靠地耦合到光設(shè)備201。
圖4圖示根據(jù)本發(fā)明一種實施例的提供有標記模式的紙張15。在圖4的實施例中,紙張15提供有包括標記模式18的光可讀位置編碼17形式的編碼模式。為了清楚起見,極大地放大了圖4中的標記18。實際上,標記18可能是人類視覺系統(tǒng)無法輕易識別出的,可以表現(xiàn)為紙張15上的灰度等級。在一種實施例中,將標記18實施為點;然而,本發(fā)明并不如此限制。標記18建立用于表面70的空間網(wǎng)格。一旦筆向下點擊,交互設(shè)備(100或200)可以識別出在筆尖位置附近的標記18的唯一模式。該唯一模式還識別在筆尖所在表面70上的位置。
圖5圖示根據(jù)本發(fā)明一種實施例的圖3的位置編碼17的放大部分19??梢远ㄎ恢T如設(shè)備100或200(圖2和圖3)等光設(shè)備以記錄位置編碼17的區(qū)域的圖像。在一種實施例中,光設(shè)備將標記18適配到形式為帶有在光柵點22上交叉的光柵線21的光柵的參考系統(tǒng)。每個標記18與光柵點22相關(guān)聯(lián)。例如,標記23與光柵點24相關(guān)聯(lián)。對于在圖像/光柵內(nèi)的標記而言,確定標記和與該標記相關(guān)的光柵點的位移。使用這些位移,比較在圖像/光柵內(nèi)的模式與在參考系統(tǒng)內(nèi)的模式。在參考系統(tǒng)內(nèi)的每個模式與在表面70上的特定位置相關(guān)聯(lián)。因而,通過匹配在圖像/光柵內(nèi)的模式與在參考系統(tǒng)內(nèi)的模式,可以確定模式在表面70上的位置,和因而光設(shè)備相對于表面70的位置。通過下述專利和專利申請?zhí)峁┢渌畔?,為了全部目的在此全文引用所述專利和專利申請作為參考美國專利US 6,502,756;于2002年6月26日提交的美國專利申請No.10/179,966;WO 01/95559;WO 01/71473;WO 01/75723;WO 01/26032;WO 01/75780;WO 01/01670;WO 01/75773;WO 01/71475;WO 01/73983和WO 01/16691。還參考于2003年3月18日提交的專利申請No.60/456,053和于2004年3月17日提交的專利申請No.10/803,803,兩份專利申請為了全部目的在此全文引用作為參考。
再次參考圖2,用字母A、B、C和D表示在表面70上的四個位置或區(qū)域(應(yīng)當(dāng)指出并不在表面70上打印這些字符,但是在此用于表示在表面70上的位置)。在表面70上可能存在許多這樣的區(qū)域。與表面70上的每個區(qū)域相關(guān)聯(lián)的是標記的唯一模式。在表面70上的區(qū)域可以重疊,因為即使一些標記被共享在重疊區(qū)域之間,但是在區(qū)域內(nèi)標記的模式對于該區(qū)域而言依然是唯一的。
在圖2的例子中,使用設(shè)備100(具體而言,使用書寫單元52),用戶可以建立一個字符,它例如包括在表面70的位置A上的圈內(nèi)字母“M”(通常,用戶可以在表面70的任一位置上建立字符)。用戶可以響應(yīng)于來自設(shè)備100的提示(例如聲音提示)建立這樣一個字符。當(dāng)用戶建立字符時,設(shè)備100記錄在建立字符的位置上唯一地存在的標記模式。設(shè)備100使標記模式與剛建立的字符相關(guān)聯(lián)。當(dāng)將設(shè)備100隨后定位在帶圈“M”上時,設(shè)備100識別與之相關(guān)聯(lián)的標記模式,并識別與帶圈“M”相關(guān)聯(lián)的位置。實際上,設(shè)備100使用在字符所處位置上的標記模式識別該字符,而不是通過識別該字符本身。
在一種實施例中,字符與特定命令相關(guān)聯(lián)。在剛剛描述的例子中,用戶可以建立(例如書寫)標識特定命令的字符,并可以通過在所書寫的字符上簡單地定位設(shè)備100來重復(fù)地調(diào)用該命令。換句話說,用戶并不必需在每次調(diào)用命令時重復(fù)書寫用于該命令的字符;相反地,用戶可以一次書寫用于命令的字符,并通過使用,例如使用筆尖選擇,同一書寫字符,重復(fù)地調(diào)用該命令。
圖5圖示根據(jù)本發(fā)明一種實施例的可用于存儲編碼信息的在表面19上(例如在紙張上)的點區(qū)域。為了讀取此信息,將基于筆的計算機100放置在該區(qū)域的任一部分之下,盡管圖5的例子圖示紙張,但是也可以在如上所述的各種類型的材料組成的其它類型和形狀的表面上實施根據(jù)本發(fā)明的實施例。
區(qū)域包括諸如點的標記模式。在該實施例中,解碼模式以獲得在更大映射區(qū)域內(nèi)的唯一位置。該位置可以是(x,y)坐標對。該區(qū)域的表面可以包括其它信息。例如,該表面可以包含結(jié)合點模式在其上打印的基于文本或基于圖像的信息。作為具體的例子,該表面可以是可包含一個或多個圖片以及可以結(jié)合由夾頭28存儲的一個或多個應(yīng)用程序使用的上文所述的標記模式的頁面??梢酝ㄟ^多種不同的方式使用在該區(qū)域內(nèi)的標記模式編碼的信息。例如,可以使用解碼的位置信息來識別與該位置相關(guān)聯(lián)的應(yīng)用程序。
根據(jù)本發(fā)明的繪制用戶接口圖6A圖示根據(jù)本發(fā)明實施例的示例性書寫用戶接口。如上所述的交互設(shè)備可以用于建立圖6A所示的標記。例如,為了調(diào)用應(yīng)用程序,用戶可以繪制帶有可選擇的相鄰檢查標記315的標記310(圓圈“T”)。在一種實施例中,這調(diào)用轉(zhuǎn)換或轉(zhuǎn)換器應(yīng)用程序。在另一種實施例中,該應(yīng)用程序可以是字典應(yīng)用程序,或者接收用戶繪制輸入的任何其它應(yīng)用程序。根據(jù)本發(fā)明的實施例,隨后,允許用戶使用書寫設(shè)備繪制或書寫標記或單詞,例如cat 330。響應(yīng)于此,交互計算機生成圍繞書寫單詞330的空間邊界335,例如在這個例子中的矩形。通過計算該書寫單詞的空間區(qū)域的最大坐標(x,y)到最小坐標(x,y)定義的矩形,可以執(zhí)行上述操作。結(jié)果是長度L(x的最大值減去x的最小值)和高度h(y的最大值減去y的最小值)的邊界335。邊界335也稱作“單詞區(qū)域”、“單詞接口區(qū)域”或“空間邊界”。
根據(jù)本發(fā)明的實施例,交互計算機隨后在存儲器內(nèi)自動地生成與邊界335相鄰(因此與書寫單詞330相鄰)的可視接口區(qū)域320a和320b。每個接口區(qū)域320a和320b的寬度是w和高度是h。在該例子中,將每個接口區(qū)域的高度定義為與邊界335相同的高度。在一種實施例中,寬度可以是固定寬度,或者它可以取決于邊界335的寬度和/或高度。應(yīng)當(dāng)理解同一書寫單詞的接口區(qū)域在空間上相互不重疊,也不與它們相關(guān)的邊界重疊。
將理解已經(jīng)將每個接口區(qū)域分配給特定的計算機功能。例如,在一種實施例中,當(dāng)由用戶選擇時,接口區(qū)域320a使相關(guān)單詞330被轉(zhuǎn)換。在該例子中,轉(zhuǎn)換意味著cat的轉(zhuǎn)換的聲音通知,例如西班牙語的“gato”(英語到西班牙語的轉(zhuǎn)換)。在一種實施例中,接口區(qū)域的用戶選擇意味著在該區(qū)域內(nèi)用戶敲擊交互設(shè)備的尖端。選擇還可以意味著該區(qū)域內(nèi)用戶雙擊和/或書寫符號或其它標記。此外,當(dāng)用戶選擇區(qū)域320b時,這使得將拼寫出相關(guān)單詞330,例如聲音通知的“g”、“a”、“t”和“o”。因此,轉(zhuǎn)換功能與接口區(qū)域320a相關(guān)聯(lián),拼寫功能與接口區(qū)域320b相關(guān)聯(lián)。此外,兩個計算機功能自動地操作這兩個接口區(qū)域的相關(guān)單詞330。還理解不同單詞的類似定位的接口區(qū)域通常與同一計算機功能相關(guān)聯(lián),但是操作它們的相關(guān)單詞。
邊界或單詞接口區(qū)域335也是活動區(qū)域。換句話說,如果書寫單詞330具有多個轉(zhuǎn)換,則用戶可以通過在接口區(qū)域335內(nèi)敲擊而逐一地旋轉(zhuǎn)通過轉(zhuǎn)換列表來選擇合適的轉(zhuǎn)換。在該實施例中,每次敲擊產(chǎn)生以循環(huán)方式的下一個轉(zhuǎn)換的通知。在這種情況下,接口區(qū)域320a和320b將操作由用戶選擇的最后一次轉(zhuǎn)換。
將理解任一功能可以與接口區(qū)域相關(guān)聯(lián),任一應(yīng)用程序可以使用此功能。例如,并非轉(zhuǎn)換應(yīng)用程序,也可以使用字典應(yīng)用程序。在這種情況下,活動區(qū)域可以調(diào)用定義相關(guān)單詞的計算機功能,或者提供用于該相關(guān)單詞的反義單詞、同義單詞或同源單詞、等等,可以通過任一方式將這些功能分配給接口區(qū)域320a和320b。
將理解不僅在用戶書寫相關(guān)單詞330時生成接口區(qū)域320a和320b,而且也可以在每次用戶選擇該單詞330,例如通過在邊界335內(nèi)敲擊時自動地生成接口區(qū)域320a和320b。
使用自動生成的接口區(qū)域320a和320b的一個優(yōu)點在于用戶并不需要分別地繪制轉(zhuǎn)換和/或拼寫標記(如圖1所示)。而且,一旦已經(jīng)繪制目標單詞330,則用戶僅在該單詞之前或之后敲擊以調(diào)用預(yù)期功能。
圖6B圖示書寫單詞330可以是特殊型號的,例如字母可以是不規(guī)則大小的。在這種情況下,最后一個字母t大于該書寫單詞的其余字母。在這種情況下,單詞活動區(qū)域或空間邊界335在高度上延伸以覆蓋最后一個字母t。而且,應(yīng)當(dāng)指出還使接口區(qū)域320a和320b的高度h匹配邊界335的高度h。再次,接口區(qū)域320a和320b的寬度w可以是固定寬度的(例如英寸等),或者可以取決于邊界335的高度h或?qū)挾萀。
如圖7A所示,為用戶書寫的每個書寫單詞定義新的接口區(qū)域。圖7A圖示兩個書寫單詞,cat 330和dog 350。為書寫單詞330圖示圖6A的同一接口區(qū)域320a和320b。然而,一旦用戶書寫單詞dog 350,則交互計算機自動地定義單詞邊界355,還自動地在它們的相關(guān)單詞350的每一側(cè)上生成接口區(qū)域340a和340b。如上面討論的,每個接口區(qū)域的高度h2與邊界355的高度相同。而且,每個接口區(qū)域的寬度w2可以是固定的,或者它可以取決于相關(guān)邊界355的高度h2或?qū)挾?2。
將理解通常在同一應(yīng)用程序內(nèi),不同標記的同一空間位置的接口區(qū)域具有相同的計算機功能。換句話說,接口區(qū)域320a和340a都具有相同的計算機功能,但是操作它們相應(yīng)的標記330和350。更具體地,根據(jù)一種實施例,在同一應(yīng)用程序內(nèi),將同一計算機功能分配給如參考圖6A討論的接口區(qū)域340a和340b。換句話說,假設(shè)轉(zhuǎn)換器應(yīng)用程序是操作的,則將轉(zhuǎn)換功能分配給接口區(qū)域340a,和將拼寫功能分配給接口區(qū)域340b。在此,不同在于每個相應(yīng)的計算機功能將可以操作相關(guān)的單詞dog 350,當(dāng)由用戶選擇接口區(qū)域340a時,則計算機通知dog的西班牙語轉(zhuǎn)換即“perro”。而且,如果由用戶選擇接口區(qū)域340b,則拼寫dog的轉(zhuǎn)換,例如“p”、“e”、“e”、“r”和“o”。
將理解在圖7A中,接口區(qū)域的寬度取決于它們的相關(guān)單詞的大小。換句話說,書寫單詞dog 350的大小小于書寫單詞cat 330的大小。因此,接口區(qū)域340a和340b的寬度w2小于接口區(qū)域320a和320b的寬度w1。根據(jù)本發(fā)明的實施例,接口區(qū)域的寬度可以取決于相關(guān)單詞的寬度和/或高度或者其功能。而且,設(shè)置接口區(qū)域的高度以匹配它們的相關(guān)單詞的高度。
圖7B圖示類似于圖7A的例子,除了接口區(qū)域的寬度是固定的,并且不取決于相關(guān)單詞的大小。在此,接口區(qū)域320a的寬度與接口340a的寬度相同,盡管書寫單詞cat大于書寫單詞dog 350。然而,設(shè)置接口區(qū)域的高度以匹配它們的相關(guān)單詞的高度,如用h1和h2表示的。固定寬度可以是任何適當(dāng)大小的,在一種實施例中,寬度是大約0.25到1.0英寸,但是也可以是用戶可輕易選擇的帶有標準的書寫工具筆尖大小的任何尺寸。
本發(fā)明的實施例可以永久地在計算機存儲器內(nèi)存儲單詞邊界335和355,但是可以或不可以在存儲器內(nèi)永久地存儲接口區(qū)域(320a、320b、340a、340b)以節(jié)省計算機資源,例如存儲器和處理能力。換句話說,一旦已知和存儲單詞邊界,當(dāng)需要時可以快速地計算接口區(qū)域,因此,并不需要將其永久地存儲在存儲器內(nèi),同時它們的目標應(yīng)用程序是活動的。在一種實施例中,僅為所使用的最后一個單詞存儲(例如在存儲器內(nèi)保存)相關(guān)單詞的活動區(qū)域,和當(dāng)用戶與該單詞交互時,快速地計算與并非所使用的最后一個單詞的另一個單詞相關(guān)的接口區(qū)域。以這種方式,在任何時候,僅一些接口區(qū)域需要是活動的。
圖8圖示不同書寫單詞的接口區(qū)域相互重疊的情況。這是應(yīng)當(dāng)避免的情況,因為當(dāng)用戶在重疊區(qū)域內(nèi)選擇時可能出現(xiàn)在預(yù)期計算機功能相關(guān)的不確定性。如果允許出現(xiàn)這些類型的重疊,則可能出現(xiàn)不期望的結(jié)果。本發(fā)明的實施例提供多種解決方案以避免接口重疊。首先,當(dāng)檢測到將第二書寫單詞(例如dog 350)書寫得過于靠近現(xiàn)有的書寫單詞(例如cat 330)時,一種實施例向用戶通知第二單詞過于靠近,例如,“請將你的單詞書寫得遠離現(xiàn)有單詞”或者“請將新單詞書寫得距右側(cè)更遠”,等等。在這種情況下,絕不會實際地生成重疊的接口區(qū)域340a,因為指示用戶再一次書寫dog 350以避免重疊。這是“警示”實施例。
在另一種實施例中,交互計算機允許用戶完成書寫第二單詞dog 350,僅僅在寬度上(或如在一些例子中可能存在的情況,在高度上)調(diào)整(例如收縮)接口區(qū)域320b和340a,以便它們不再重疊,例如它們共享在邊界335和355之間的空間。這是“共享”實施例。
在另一種實施例中,交互計算機允許接口區(qū)域重疊,因為僅最后一個書寫和/或選擇的單詞的接口區(qū)域在任一時間上是活動的。這稱作“彈出”接口區(qū)域。例如,一旦用戶書寫dog 350,則生成和激活接口區(qū)域340a和340b。然而,隨后禁止現(xiàn)有的接口區(qū)域320a和320b。因此,在活動的接口區(qū)域之中,在區(qū)域320b和340a之間沒有重疊,因為接口區(qū)域320b當(dāng)前在該點上不是活動的。因此,在區(qū)域340a的任一點內(nèi)的選擇將不會導(dǎo)致不期望的計算機功能,因為將執(zhí)行與區(qū)域340a相關(guān)聯(lián)的功能。而且,如果用戶接著在邊界335內(nèi)選擇,則接口區(qū)域320a和340a將變得活動(例如“彈出”到表面)和接口區(qū)域340a和340b將變得不活動,再次,不存在重疊情況。
在另一種實施例中,如果出現(xiàn)重疊情況,則最后繪制(最新的)接口區(qū)域控制和其它的接口區(qū)域變得不活動。這是“Z-排序”實施例,其中當(dāng)相互重疊時具有最大Z值的接口區(qū)域(類似于計算機圖形處理)保持活動。在圖8的情況下,接口區(qū)域340a將控制,接口區(qū)域320b將是不活動的,因為在cat 330之后書寫dog 350。
在另一種實施例中,接收區(qū)域在時間周期之后“超時”。因此,假設(shè)書寫cat 330,則接口區(qū)域320a和320b生成和保持活動。定義超時周期。如果在超時周期內(nèi)未出現(xiàn)與接口區(qū)域320a和320b或者與邊界355的交互,則接口區(qū)域320a和320b變得不活動。如果在由于超時導(dǎo)致區(qū)域320b變得不活動之后生成區(qū)域340a,則不存在重疊情況。
圖9圖示還可以為在書寫單詞之上和之下的區(qū)域定義接口區(qū)域。在這個例子中,在書寫單詞“white”410之上和之下定義接口區(qū)域430a和430b。在這種情況下,接口區(qū)域430a和430b的寬度與為書寫單詞410定義的邊界415的寬度相同。接口區(qū)域430a和430b的高度可以是固定大小的,或者可以取決于相關(guān)書寫單詞410的高度和/或?qū)挾取H缟衔乃懻摰?,還可以為左側(cè)和右側(cè)定義接口區(qū)域,例如接口區(qū)域420a和420b。
在這個具體的例子中,相對于書寫單詞410自動地定義四個接口區(qū)域。在這種情況下,應(yīng)用程序可以是具有以任意順序分別分配給接口區(qū)域430a、430b和420a、420b的諸如1)定義;2)反義詞;3)同義詞;和4)同源詞等計算機功能的字典應(yīng)用程序。
將理解盡管已經(jīng)給出了放置接口區(qū)域的具體例子,但是本發(fā)明的實施例非常適合于臨近書寫單詞和因而是與該單詞相關(guān)可見的接口區(qū)域的任何空間放置。左側(cè)、右側(cè)、上側(cè)和下側(cè)的接口區(qū)域的放置僅是示例性的。而且,接口區(qū)域的大小還可以在本發(fā)明的范圍內(nèi)改變。接口區(qū)域可以是固定寬度、可變寬度或者兩者的組合。而且,已經(jīng)將矩形區(qū)域描述為接口區(qū)域的形狀。然而,這些僅是示例性的,也可以采用其它公知的幾何形狀,例如圓形、三角形、不規(guī)則形狀、等等。而且,已經(jīng)使用書寫單詞作為用于觸發(fā)生成接口區(qū)域的例子。然而,可以使用任意書寫項目觸發(fā)接口區(qū)域生成,例如數(shù)字、字母、等式、圖形、名稱、圖表、等等。最后,在此已經(jīng)描述了諸如轉(zhuǎn)換器和字典等示例性的應(yīng)用程序。這些僅是示例性的。在本發(fā)明的范圍內(nèi),可以使用任一應(yīng)用程序提供采用書寫項目的含義(解釋)作為輸入的計算機功能。
圖10A圖示用于生成在此所述的用戶接口區(qū)域的計算機實施處理500。可以在參考圖2和圖3描述的交互設(shè)備上實施處理500。在一種實施例中,可以將處理500實施為在交互設(shè)備的存儲器單元內(nèi)存儲和在其處理器上執(zhí)行的計算機編碼。處理500的重點在于響應(yīng)于用戶撰寫書寫單詞而生成接口區(qū)域。
在步驟510,計算機檢測用戶在諸如紙張等書寫表面上書寫諸如單詞等標記。隨后,計算該單詞的空間邊界(或“單詞邊界”),例如包含該單詞的矩形。隨后,在步驟515將該書寫單詞的空間邊界記錄在存儲器內(nèi)。在步驟520,與空間邊界相鄰地自動地生成接口區(qū)域(活動區(qū)域)。接口區(qū)域定位在空間邊界附近,因此,接口區(qū)域的位置取決于空間邊界的位置。而且,在一種實施例中,接口區(qū)域的高度匹配空間邊界的高度,因而,接口區(qū)域的大小取決于空間邊界的大小,因此,還取決于書寫單詞的大小。每個接口區(qū)域具有與之相關(guān)的取決于當(dāng)前操作應(yīng)用程序的特定計算機功能。
在步驟525,檢查用戶是否與接口區(qū)域之一交互(例如敲擊或雙擊或在接口區(qū)域之一內(nèi)書寫)。如果沒有,則進入步驟530,但是如果有,則在步驟535,針對與選定接口區(qū)域相關(guān)的書寫單詞,執(zhí)行與選定接口區(qū)域相關(guān)的計算機功能。隨后,在步驟530針對書寫單詞的空間邊界檢查用戶交互。如果是,則針對相關(guān)的書寫單詞執(zhí)行與空間邊界相關(guān)的計算機功能。隨后,該處理在525重復(fù),直到書寫另一個書寫單詞,此時響應(yīng)于正在書寫的新單詞進入步驟510。
圖10B圖示用于生成在此所述的用戶接口區(qū)域的計算機實施處理550??梢栽趨⒖紙D2和圖3描述的交互設(shè)備上實施處理550。在一種實施例中,可以將處理550實施為在交互設(shè)備的存儲器單元內(nèi)存儲和在其處理器上執(zhí)行的計算機代碼。處理550的重點在于響應(yīng)于用戶選擇現(xiàn)有的書寫單詞而生成接口區(qū)域。在這種情況下,假設(shè)已經(jīng)生成一個或多個書寫單詞(例如通過圖10A的處理500的功能)。隨后,在存儲器內(nèi)存儲與這些書寫單詞相關(guān)的空間邊界。在此與圖10B相關(guān)的假設(shè)是書寫單詞的接口區(qū)域可以不全部持久地存儲在存儲器內(nèi)。然而,一旦選定書寫單詞,則快速地計算其相應(yīng)的接口區(qū)域。
在步驟560,檢查用戶是否已經(jīng)選擇現(xiàn)有和存儲的空間邊界(例如用戶敲擊或雙擊或在空間邊界內(nèi)書寫東西)。如果是,則在步驟520,自動地生成用于選定空間邊界的接口區(qū)域。步驟520-540類似于圖10A,其中可以使用該接口區(qū)域調(diào)用特定的計算機功能。
圖11圖示由本發(fā)明的實施例用于檢測和解決在書寫表面上空間重疊的接口區(qū)域的本發(fā)明的實施例使用的普通程序600??梢栽趨⒖紙D2和圖3描述的交互設(shè)備上實施處理600。在一種實施例中,處理600可以實施為在交互設(shè)備的存儲器單元內(nèi)存儲和在其處理器上執(zhí)行的計算機代碼。在步驟610,交互設(shè)備檢測到用戶書寫第一標記,和根據(jù)該第一標記的大小和位置自動地生成與該第一標記相關(guān)的接口區(qū)域。在步驟615,接口設(shè)備檢測到用戶在書寫表面上書寫第二標記,并記錄該第二標記的位置和大小。
在步驟620,交互設(shè)備計算與該第二標記相關(guān)的交互區(qū)域的位置和大小。隨后,該設(shè)備檢測這些交互區(qū)域是否與任何其它的交互區(qū)域重疊,例如第一標記的交互區(qū)域。在一種實施例中,通過比較交互區(qū)域的空間坐標檢測重疊。一旦坐標匹配,則檢測到重疊。如果未檢測到重疊,則在步驟630,交互設(shè)備生成和激活與該第二標記相關(guān)的接口區(qū)域。
然而,在步驟625,進入重疊解決處理以解決在重疊接口區(qū)域之間的空間不確定性。如上所述,可以執(zhí)行若干解決處理之一。在一種實施例中,在步驟625,交互設(shè)備可以向用戶警示第二標記過于靠近第一標記。這是警示模型。在該實施例中,不進入步驟630,因為并未建立第二標記的接口區(qū)域。隨后,鼓勵用戶在并不重疊現(xiàn)有書寫的位置內(nèi)繪制第二標記。在第二實施例中,可以使用共享模型。在這種情況下,在步驟625,交互設(shè)備確定在第一和第二標記之間是否存在足夠的空間以共享在重疊交互區(qū)域之間的空間。如果是,則縮小重疊區(qū)域的寬度(或者高度,如果可能的話),直到避免了重疊。隨后,步驟630建立用于第二標記的新的接口區(qū)域,如果不存在允許共享的足夠空間,則不進入步驟630。
在第三實施例即超時模型中,在步驟625,交互設(shè)備首先檢查與第一交互區(qū)域相關(guān)聯(lián)的標記是否已經(jīng)超時。換句話說,如果尚未使用第一標記執(zhí)行用戶交互,或者任一個其相關(guān)聯(lián)的接口區(qū)域已經(jīng)經(jīng)過規(guī)定的超時周期,則假設(shè)這些目標不再活動。如果第一標記已經(jīng)超時,則進入步驟630以生成第二接口區(qū)域。如果第一標記依然活動,則可以嘗試共享。如果不存在允許共享的足夠空間,則不進入步驟630。
在第四實施例中,使用彈出模型。在該模型中,允許重疊接口區(qū)域,只要區(qū)域之一當(dāng)前是不活動的。因此,在步驟625,確定與第一標記相關(guān)聯(lián)的接口區(qū)域是否是活動的。如果不是,則進入步驟630。如果這些接口區(qū)域是活動的,則可以嘗試共享。如果不存在允許共享的足夠空間,則不進入步驟630。
圖12圖示可以由本發(fā)明的實施例用于節(jié)省保存接口區(qū)域的計算機資源的程序700。通常,根據(jù)該實施例,接口區(qū)域并不永久地存儲在存儲器內(nèi),而是在需要時計算和使用。可以在參考圖2和圖3描述的交互設(shè)備上實施處理700。在一種實施例中,可以將處理700實施為在交互設(shè)備的存儲器內(nèi)存儲和在其處理器上執(zhí)行的計算機代碼。
在步驟710,交互設(shè)備檢測到用戶例如通過在書寫表面上筆敲擊、雙擊或書寫而與書寫表面的坐標(x,y)的用戶交互。在步驟715,該交互設(shè)備隨后掃描其存儲器存儲的空間邊界(對應(yīng)于書寫標記)以確定最靠近(x,y)位置的空間邊界。隨后,在步驟720,該交互設(shè)備計算與步驟715確定的空間邊界相關(guān)聯(lián)的接口區(qū)域。在步驟725,該交互設(shè)備隨后確定(x,y)坐標是否落入在步驟720計算的任一接口區(qū)域內(nèi)。如果是,則進入步驟730,它在與在步驟715確定的空間邊界相關(guān)的標記上執(zhí)行與(x,y)坐標的接口區(qū)域相關(guān)聯(lián)的計算機功能。
如果(x,y)坐標并未落入接口區(qū)域,則從步驟725進入步驟735。在步驟735,接口設(shè)備檢查(x,y)坐標是否落入在步驟715確定的空間邊界內(nèi)。如果是,則在步驟740執(zhí)行與該空間邊界相關(guān)聯(lián)的計算機功能。隨后,重復(fù)該處理。
處理700的優(yōu)點在于不需要在存儲器內(nèi)持久地存儲接口區(qū)域,而是在需要時計算。持久地存儲與每個標記相關(guān)聯(lián)的空間邊界。將理解可以將該區(qū)域交互處理700實施為根據(jù)一種實施例的圖10A和圖10B的步驟525。
總之,本文獻公開了一種設(shè)備用戶接口,其中通過與書寫表面的動態(tài)生成接口區(qū)域的用戶交互調(diào)用計算機功能。計算機系統(tǒng)識別在書寫表面上的書寫的標記或者現(xiàn)有書寫標記的用戶選擇。在標記附近,計算機系統(tǒng)自動地生成與該標記相關(guān)的一個或多個接口區(qū)域。與這些區(qū)域之一的用戶交互自動地調(diào)用與該交互區(qū)域相關(guān)的計算機功能。通過每個區(qū)域可以調(diào)用不同的功能。計算機系統(tǒng)動態(tài)地定位并可以根據(jù)標記的位置(和大小)動態(tài)地調(diào)整接口區(qū)域的大小。多個標記生成多個區(qū)域,具有與相應(yīng)標記相關(guān)聯(lián)的不同區(qū)域。在一種實施例中,在書寫單詞之前和/或之后建立區(qū)域。例如,還可以在書寫單詞之上和/或之下建立區(qū)域。在另一種實施例中,計算機系統(tǒng)是基于筆的交互計算機系統(tǒng)。
為了說明和描述的目的,上文已經(jīng)介紹了根據(jù)本發(fā)明的各種具體實施例的描述。它們將不是窮舉的,或者將本發(fā)明限制為所公開的具體形式,顯而易見地,在上述教導(dǎo)之下可以進行多種修改和變化。本發(fā)明可以根據(jù)權(quán)利要求書及其等同物來解釋。
權(quán)利要求
1.一種形成與用戶的接口的計算機實施方法,所述方法包括識別已經(jīng)由書寫設(shè)備在表面上形成的標記;識別所述標記在所述表面上的位置和識別所述標記的大小;自動地計算第一接口區(qū)域的位置和大小,其中所述第一接口區(qū)域與所述標記相鄰;相關(guān)第一計算機功能與所述第一接口區(qū)域;和響應(yīng)于所述第一接口區(qū)域的用戶選擇,對與所述標記相關(guān)的數(shù)據(jù)執(zhí)行所述第一計算機功能。
2.如權(quán)利要求1所述的方法,還包括自動地計算所述表面的第二接口區(qū)域的位置和大小,其中所述第二接口區(qū)域與所述標記相鄰,且與所述第一接口區(qū)域不重疊;相關(guān)第二計算機功能與所述第二接口區(qū)域;和響應(yīng)于所述第二接口區(qū)域的用戶選擇,對所述數(shù)據(jù)執(zhí)行所述第二計算機功能。
3.如權(quán)利要求2所述的方法,其中所述第一接口區(qū)域在空間上位于所述標記左側(cè),和其中所述第二接口區(qū)域在空間上位于所述標記右側(cè)。
4.如權(quán)利要求2所述的方法,其中所述第一接口區(qū)域在空間上位于所述標記上側(cè),和其中所述第二接口區(qū)域在空間上位于所述標記下側(cè)。
5.如權(quán)利要求1所述的方法,其中通過用戶使用所述書寫設(shè)備的尖端接觸位于所述第一接口區(qū)域內(nèi)的所述表面的區(qū)域來執(zhí)行所述用戶選擇。
6.如權(quán)利要求1所述的方法,其中第一接口區(qū)域的所述位置和所述大小取決于所述標記的所述位置和所述大小。
7.如權(quán)利要求6所述的方法,其中所述第一接口區(qū)域的高度取決于所述標記的高度。
8.如權(quán)利要求7所述的方法,其中所述第一接口區(qū)域的寬度取決于所述標記的所述高度。
9.如權(quán)利要求7所述的方法,其中所述第一接口區(qū)域的寬度是固定的。
10.如權(quán)利要求1所述的方法,其中所述標記是單詞和其中所述第一接口區(qū)域是不可見的。
11.一種形成與用戶的接口的計算機實施方法,所述方法包括識別出用戶已經(jīng)選擇書寫標記,其中所述書寫標記位于書寫表面上;從存儲器訪問與所述書寫標記相關(guān)的接口區(qū)域;自動地計算第一接口區(qū)域的位置和大小,其中所述第一接口區(qū)域與所述書寫標記相鄰;相關(guān)第一計算機功能與所述第一接口區(qū)域;和響應(yīng)于所述第一接口區(qū)域的用戶選擇,對與所述書寫標記相關(guān)的數(shù)據(jù)執(zhí)行所述第一計算機功能。
12.如權(quán)利要求11所述的方法,還包括自動地計算所述表面的第二接口區(qū)域的位置和大小,其中所述第二接口區(qū)域與所述標記相鄰,且與所述第一接口區(qū)域不重疊;相關(guān)第二計算機功能與所述第二接口區(qū)域;和響應(yīng)于所述第二接口區(qū)域的用戶選擇,對所述數(shù)據(jù)執(zhí)行所述第二計算機功能。
13.如權(quán)利要求12所述的方法,其中所述第一接口區(qū)域在空間上位于所述書寫標記的左側(cè)和其中所述第二接口區(qū)域在空間上位于所述書寫標記的右側(cè)。
14.如權(quán)利要求12所述的方法,其中所述第一接口區(qū)域在空間上位于所述標記上側(cè),和其中所述第二接口區(qū)域在空間上位于所述標記下側(cè)。
15.如權(quán)利要求11所述的方法,其中通過用戶使用所述書寫設(shè)備的尖端接觸位于所述第一接口區(qū)域內(nèi)的所述表面的區(qū)域來執(zhí)行所述用戶選擇。
16.如權(quán)利要求11所述的方法,其中第一接口區(qū)域的所述位置和所述大小取決于所述書寫標記的所述接口區(qū)域的位置和大小。
17.如權(quán)利要求16所述的方法,其中所述第一接口區(qū)域的高度取決于所述書寫標記的所述接口區(qū)域的高度。
18.如權(quán)利要求17所述的方法,其中所述第一接口區(qū)域的寬度取決于所述書寫標記的所述接口區(qū)域的所述高度。
19.如權(quán)利要求17所述的方法,其中所述第一接口區(qū)域的寬度是固定的。
20.如權(quán)利要求11所述的方法,其中所述書寫標記是單詞和其中所述第一接口區(qū)域是不可見的。
21.一種形成與用戶的接口的計算機實施方法,所述方法包括識別已經(jīng)由書寫設(shè)備在表面上形成的第一標記;識別所述第一標記在所述表面上的位置和識別所述第一標記的大?。蛔詣拥赜嬎惴謩e與所述第一標記相鄰但是相互不重疊的第一組接口區(qū)域的相應(yīng)位置和大小,和其中根據(jù)所述第一標記的所述大小確定所述第一組接口區(qū)域的每個接口區(qū)域的大?。幌嚓P(guān)相應(yīng)的計算機功能與所述第一組接口區(qū)域的每個接口區(qū)域;和響應(yīng)于所述第一組接口區(qū)域的第一接口區(qū)域的用戶選擇,對與所述第一標記相關(guān)的數(shù)據(jù)執(zhí)行第一計算機功能,其中所述第一計算機功能與所述第一組接口區(qū)域的所述第一接口區(qū)域相關(guān)。
22.如權(quán)利要求21所述的方法,還包括識別已經(jīng)由所述書寫設(shè)備在所述表面上形成的第二標記;識別所述第二標記在所述表面上的位置和識別所述第二標記的大??;自動地計算分別與所述第二標記相鄰但是相互不重疊的第二組接口區(qū)域的相應(yīng)位置和大小,和其中根據(jù)所述第二標記的所述大小確定所述第二組接口區(qū)域的每個接口區(qū)域的大?。幌嚓P(guān)相應(yīng)的計算機功能與所述第二組接口區(qū)域的每個接口區(qū)域;和響應(yīng)于所述第二組接口區(qū)域的第一接口區(qū)域的用戶選擇,對與所述第二標記相關(guān)的數(shù)據(jù)執(zhí)行所述第一計算機功能,其中所述第一計算機功能與所述第二組接口區(qū)域的所述第一接口區(qū)域相關(guān)。
23.如權(quán)利要求22所述的方法,其中所述第一組接口區(qū)域的計算機功能與所述第二組接口區(qū)域的計算機功能相同。
24.如權(quán)利要求21所述的方法,還包括響應(yīng)于所述第一組接口區(qū)域的第二接口區(qū)域的用戶選擇,對與所述第一標記相關(guān)的數(shù)據(jù)執(zhí)行第二計算機功能,其中所述第二計算機功能與所述第一組接口區(qū)域的所述第二接口區(qū)域相關(guān)。
25.如權(quán)利要求21所述的方法,其中所述第一組接口區(qū)域包括所述第一接口區(qū)域和第二接口區(qū)域,和其中所述第一接口區(qū)域在空間上位于所述第一標記左側(cè),和其中所述第二接口區(qū)域在空間上位于所述第一標記右側(cè)。
26.如權(quán)利要求21所述的方法,其中所述第一組接口區(qū)域包括所述第一接口區(qū)域和第二接口區(qū)域,和其中所述第一接口區(qū)域在空間上位于所述第一標記上側(cè),和其中所述第二接口區(qū)域在空間上位于所述第一標記下側(cè)。
27.如權(quán)利要求21所述的方法,其中通過用戶使用所述書寫設(shè)備接觸位于所述第一接口區(qū)域內(nèi)的所述表面的區(qū)域來執(zhí)行所述用戶選擇。
28.如權(quán)利要求21所述的方法,其中所述第一組接口區(qū)域的每個接口區(qū)域的高度取決于所述第一標記的高度。
29.如權(quán)利要求21所述的方法,其中所述第一標記是單詞和其中所述第一組接口區(qū)域的每個接口區(qū)域是不可見的。
30.一種電子設(shè)備,包括書寫工具;耦合到總線的處理器;耦合到所述總線的存儲器;和光檢測器,耦合到所述總線和配置在所述書寫工具附近,其中所述存儲器包括指令,當(dāng)執(zhí)行時使所述處理器實現(xiàn)形成與用戶的接口的方法,所述方法包括識別已經(jīng)由書寫設(shè)備在表面上形成的標記;識別所述標記在所述表面上的位置和識別所述標記的大??;自動地計算第一接口區(qū)域的位置和大小,其中所述第一接口區(qū)域與所述標記相鄰;相關(guān)第一計算機功能與所述第一接口區(qū)域;和響應(yīng)于所述第一接口區(qū)域的用戶選擇,對與所述標記相關(guān)的數(shù)據(jù)執(zhí)行所述第一計算機功能。
31.如權(quán)利要求30所述的電子設(shè)備,其中所述方法還包括自動地計算所述表面的第二接口區(qū)域的位置和大小,其中所述第二接口區(qū)域與所述標記相鄰,且與所述第一接口區(qū)域不重疊;相關(guān)第二計算機功能與所述第二接口區(qū)域;和響應(yīng)于所述第二接口區(qū)域的用戶選擇,對所述數(shù)據(jù)執(zhí)行所述第二計算機功能。
32.如權(quán)利要求31所述的電子設(shè)備,其中所述第一接口區(qū)域在空間上位于所述標記左側(cè),和其中所述第二接口區(qū)域在空間上位于所述標記右側(cè)。
33.如權(quán)利要求31所述的電子設(shè)備,其中所述第一接口區(qū)域在空間上位于所述標記上側(cè),和其中所述第二接口區(qū)域在空間上位于所述標記下側(cè)。
34.如權(quán)利要求30所述的電子設(shè)備,其中通過用戶使用所述書寫設(shè)備的尖端接觸位于所述第一接口區(qū)域內(nèi)的所述表面的區(qū)域來執(zhí)行所述用戶選擇。
35.如權(quán)利要求30所述的電子設(shè)備,其中第一接口區(qū)域的所述位置和所述大小取決于所述標記的所述位置和所述大小。
36.如權(quán)利要求35所述的電子設(shè)備,其中所述第一接口區(qū)域的高度取決于所述標記的高度。
37.如權(quán)利要求36所述的電子設(shè)備,其中所述第一接口區(qū)域的寬度取決于所述標記的所述高度。
38.如權(quán)利要求30所述的電子設(shè)備,其中所述標記是單詞和其中所述第一接口區(qū)域是不可見的。
全文摘要
本文獻公開了一種用于形成與用戶的接口的計算機實施的方法和設(shè)備。識別由書寫設(shè)備在表面上形成的標記。識別該標記的位置和大小。計算與該標記相鄰的第一接口區(qū)域,和相關(guān)計算機功能與該第一接口區(qū)域。
文檔編號G06F3/033GK1862470SQ20061005744
公開日2006年11月15日 申請日期2006年3月15日 優(yōu)先權(quán)日2005年11月1日
發(fā)明者詹姆斯·馬格拉夫, 特蕾西·L·埃奇庫姆, 特雷莎·卡梅倫, 尼科爾·弗呂貝爾, 史蒂夫·巴爾迪齊科沃斯奇 申請人:跳蛙企業(yè)股份有限公司