專利名稱:手勢對象的生成、編輯方法和音頻數(shù)據(jù)的操作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及計算機(jī)操作及其數(shù)據(jù)處理領(lǐng)域,特別涉及手勢對象的生成、編輯方法和音頻數(shù)據(jù)的操作方法。
背景技術(shù):
用戶可定制的操作、處理或執(zhí)行過程一直是計算機(jī)科學(xué)技術(shù)發(fā)展的方向之一,目前主要的方式有第一種,應(yīng)用程序考慮到用戶需要重復(fù)執(zhí)行某些操作過程,為用戶提供了配置該類操作過程的界面,并按照用戶選擇的操作命令及操作順序生成新的“操作命令”;該操作命令對應(yīng)一個操作過程,用戶可以在應(yīng)用程序中反復(fù)調(diào)用;第二種,應(yīng)用程序為用戶提供了宏命令,將操作過程的多個操作命令定義或錄制為宏命令并保存起來,如果用戶需要再次對某個應(yīng)用程序中的對象執(zhí)行相同的操作的時候,調(diào)用該宏命令,即可完成預(yù)設(shè)的操作達(dá)到預(yù)期結(jié)果;其中,上述宏命令即應(yīng)用程序可以提供的各個單獨命令的順序集合;例如,微軟提供的Word應(yīng)用程序向用戶提供了宏命令錄制工具,用戶錄制宏命令比較常見的目的為自動設(shè)置文檔的字體、段落、背景顏色等屬性, 以及自動設(shè)置文檔的打印、加密屬性;第三種,應(yīng)用程序為用戶提供了比較簡單的編程接口,可以比第一種方式更自由和靈活地定義操作過程,通過編程接口,用戶基本上可以控制該應(yīng)用程序提供的所有功能, 設(shè)置包括一些底層的沒有在應(yīng)用程序界面上反映的功能;例如,微軟提供的Excel應(yīng)用程序向用戶提供了 VBA編程接口,用戶可以通過VBA編程界面編輯自己需要的操作過程;又例如,Epic公司提供的游戲引擎Unreal —直向游戲設(shè)計師提供自定義操作過程的編程接口, 游戲設(shè)計師通過Unreal的腳本語言設(shè)計各個場景中的模型對象的位置、大小及動作;第四種,應(yīng)用程序為用戶提供了比較復(fù)雜的編程接口或者二次開發(fā)接口,用戶完全可以自由的調(diào)用底層的應(yīng)用程序及操作系統(tǒng)提供的命令,不僅可以定制自動操作過程, 還可以擴(kuò)展原應(yīng)用程序無法實現(xiàn)的功能,是自定義操作過程最本質(zhì)的方式,因為此時用戶就是在原有應(yīng)用程序的基礎(chǔ)上開發(fā)新的應(yīng)用程序;例如,歐特克公司提供的三維動畫開發(fā)系統(tǒng)Maya向用戶提供了完備的二次開發(fā)接口。上述幾種用戶自定義操作過程的方式,各有利弊;其中第一種和第二種方式用戶選擇或者錄制的操作過程受限于應(yīng)用程序提供的命令,命令之外的操作,應(yīng)用程序不予理會;第三種方式和第四種方式對用戶的要求比較高,普通用戶一般不會通過編程來實現(xiàn)自定義操作過程的目的。介于上述第一、二種和第三、四種方式之間,現(xiàn)有技術(shù)中,沒有提供一種方法,讓用戶不用編寫程序,就可以達(dá)到自定義操作過程的目的,同時又使自定義的操作過程不局限在某個應(yīng)用程序提供的操作命令本身
發(fā)明內(nèi)容
本發(fā)明要解決的問題是提供一種手勢對象的生成、編輯方法和音頻數(shù)據(jù)的操作方法,提高用戶自定義操作過程的自由度,節(jié)約生成和使用自定義操作過程的時間。為解決上述問題,本發(fā)明提供了一種基于手勢對象操作音頻數(shù)據(jù)的方法,包括獲取待操作的音頻數(shù)據(jù);關(guān)聯(lián)所述音頻數(shù)據(jù)與手勢對象;所述手勢對象中配置有動作數(shù)據(jù)和內(nèi)容數(shù)據(jù);顯示所述手勢對象的動作數(shù)據(jù);接收來自終端設(shè)備針對動作數(shù)據(jù)的操作指令, 改變所述音頻數(shù)據(jù)的屬性。可選的,所述關(guān)聯(lián)所述音頻數(shù)據(jù)與手勢對象包括基于所述內(nèi)容數(shù)據(jù)指定的數(shù)據(jù)類型,判斷其是否與所述音頻數(shù)據(jù)的數(shù)據(jù)類型匹配??蛇x的,所述所述內(nèi)容數(shù)據(jù)為帶IN/OUT標(biāo)簽的聲音類型;所述改變所述音頻數(shù)據(jù)的屬性包括接收來自終端設(shè)備針對IN/OUT標(biāo)簽位置的調(diào)節(jié)操作,選取所述音頻數(shù)據(jù)的范圍,改變所述范圍內(nèi)音頻數(shù)據(jù)的屬性??蛇x的,所述動作數(shù)據(jù)為時間調(diào)節(jié)器;所述改變所述音頻數(shù)據(jù)的屬性包括接收來自終端設(shè)備針對時間調(diào)節(jié)器的調(diào)節(jié)操作,改變所述音頻數(shù)據(jù)的時間長度屬性??蛇x的,所述內(nèi)容數(shù)據(jù)為帶IN/OUT標(biāo)簽的聲音類型;所述改變所述音頻數(shù)據(jù)的屬性包括接收來自終端設(shè)備針對IN/OUT標(biāo)簽位置的調(diào)節(jié)操作,選取所述音頻數(shù)據(jù)的范圍; 接收來自終端設(shè)備針對時間調(diào)節(jié)器的調(diào)節(jié)操作,改變所述范圍內(nèi)的音頻數(shù)據(jù)的時間長度屬性??蛇x的,所述所述內(nèi)容數(shù)據(jù)為帶多個標(biāo)簽的聲音類型;所述改變所述音頻數(shù)據(jù)的屬性包括接收來自終端設(shè)備針對多個標(biāo)簽的選擇操作,依據(jù)所述選擇操作的結(jié)果選取所述音頻數(shù)據(jù)的范圍,改變所述范圍內(nèi)音頻數(shù)據(jù)的屬性。進(jìn)一步,本發(fā)明還提供一種編輯音頻的手勢對象的生成方法,包括基于來自終端設(shè)備的動作數(shù)據(jù)獲取指令,獲取動作數(shù)據(jù);基于來自終端設(shè)備的內(nèi)容數(shù)據(jù)獲取指令,獲取內(nèi)容數(shù)據(jù),所述內(nèi)容數(shù)據(jù)為聲音類型;基于來自終端設(shè)備的生成指令,新建手勢對象,將所述動作數(shù)據(jù)和內(nèi)容數(shù)據(jù)配置到所述手勢對象中??蛇x的,所述動作數(shù)據(jù)獲取指令,內(nèi)容數(shù)據(jù)獲取指令和生成指令在一個請求中。可選的,所述將所述動作數(shù)據(jù)和內(nèi)容數(shù)據(jù)配置到所述手勢對象中包括建立所述動作數(shù)據(jù)和內(nèi)容數(shù)據(jù)之間的關(guān)聯(lián)關(guān)系??蛇x的,所述動作數(shù)據(jù)獲取指令的形式為動作筆畫,所述內(nèi)容數(shù)據(jù)獲取指令的形式為上下文筆畫,所述生成指令的形式為手勢對象筆畫;所述動作筆畫、上下文筆畫和手勢對象筆畫組成邏輯線??蛇x的,所述動作數(shù)據(jù)為時間調(diào)節(jié)器,所述時間調(diào)節(jié)器用于調(diào)節(jié)待操作聲音文件的時間長度。可選的,所述內(nèi)容數(shù)據(jù)為帶IN/OUT標(biāo)簽的聲音類型。進(jìn)一步,本發(fā)明還提供一種手勢對象的編輯方法,包括獲取手勢對象;所述手勢對象中配置有動作數(shù)據(jù)和內(nèi)容數(shù)據(jù);獲取圖形對象;所述圖形對象包括聲音類型數(shù)據(jù);接收來自終端設(shè)備的編輯指令,如果所述圖形對象與所述手勢對象關(guān)聯(lián),利用所述圖形對象編輯所述手勢對象中的動作數(shù)據(jù)或內(nèi)容數(shù)據(jù)。可選的,所述聲音類型數(shù)據(jù)包括波形圖和時間軸;所述圖形對象還包括標(biāo)簽數(shù)據(jù)。可選的,所述圖形對象與所述手勢對象關(guān)聯(lián)包括所述手勢對象與所述圖形對象
5相交??蛇x的,所述編輯指令的形式為邏輯線;所述邏輯線一端與所述圖形對象相交,另一端與所述手勢對象相交,表示關(guān)聯(lián)所述圖形對象和手勢對象。與現(xiàn)有技術(shù)相比,本發(fā)明的優(yōu)點在于(1)突破了已有技術(shù)的慣性思維,不再把自定義操作過程僅僅作為某個應(yīng)用程序中一系列操作命令的集合,而是具備了如下功能的手勢對象;使用手勢對象,用戶可以簡便的定義和使用自定義操作過程,提高了用戶的使用體驗,節(jié)省了用戶時間;( 手勢對象生成過程中,為用戶提供數(shù)據(jù)類型的選擇,即手勢對象 (自定義操作過程)的內(nèi)容數(shù)據(jù),用戶可以通過定義手勢對象的內(nèi)容數(shù)據(jù)實現(xiàn)對待操作對象類型的選擇;(3)手勢對象生成過程中,為用戶提供操作功能的選擇,即用戶不需要定義確切的操作命令流程,而是定義某種調(diào)節(jié)裝置,利用該調(diào)節(jié)裝置的調(diào)結(jié)構(gòu)能操作待操作對象,是一種新型自定義操作過程;(4)為用戶提供了修改手勢對象的方法,用戶通過圖形對象修改手勢對象的內(nèi)容數(shù)據(jù),實現(xiàn)了選擇部分待操作對象的功能。
圖1是本發(fā)明一個實施例中提供的手勢對象的生成方法流程圖;圖2是本發(fā)明一個實施例中手勢對象的生成過程示意圖;圖3是本發(fā)明一個實施例中手勢對象的使用過程示意圖;圖4是本發(fā)明一個實施例中查詢手勢對象內(nèi)容的示意圖;圖5是本發(fā)明一個實施例中用鼠標(biāo)操作完成改變手勢對象狀態(tài)示意圖;圖6是本發(fā)明一個實施例中用預(yù)定義操作命令改變手勢對象狀態(tài)示意圖;圖7是本發(fā)明一個實施例中音頻數(shù)據(jù)示意圖;圖8是本發(fā)明一個實施例中BSP對象示意圖;圖9是本發(fā)明一個實施例中使用BSP對象編輯手勢對象的方法流程圖;圖10是本發(fā)明一個實施例中使用BSP對象修改手勢對象的過程示意圖;圖11是本發(fā)明一個實施例中使用邏輯線關(guān)聯(lián)BSP對象與手勢對象并編輯手勢對象的方法流程圖;圖12是本發(fā)明一個實施例中使用邏輯線作關(guān)聯(lián)縮小的BSP對象與手勢對象的內(nèi)容數(shù)據(jù)并編輯手勢對象的方法流程圖;圖13是本發(fā)明一個實施例中縮小BSP文件的提示信息示意圖;圖14是本發(fā)明一個實施例中使用拖動操作關(guān)聯(lián)縮小BSP對象與手勢對象的內(nèi)容數(shù)據(jù)并編輯手勢對象的方法流程圖;圖15是本發(fā)明一個實施例中BSP文件示意圖,其中包含手勢對象和多個標(biāo)簽;圖16是本發(fā)明一個實施例中BSP文件示意圖,其中包含手勢對象,不包含標(biāo)簽;圖17是本發(fā)明一個實施例中使用拖動操作關(guān)聯(lián)縮小BSP對象與手勢對象并編輯手勢對象的方法流程圖;圖18是本發(fā)明一個實施例中給對象賦值的示意圖;圖19是本發(fā)明一個實施例中使用賦值后的圖形對象編輯手勢對象的過程示意圖;圖20是本發(fā)明一個實施例中使用被賦值對象修改手勢對象的方法流程圖21是本發(fā)明一個實施例中文本對象示意圖;圖22是本發(fā)明一個實施例中階梯對象操作結(jié)果示意圖;圖23是本發(fā)明一個實施例中調(diào)整后文本對象與調(diào)整前文本對象的對應(yīng)關(guān)系示意圖;圖M是本發(fā)明一個實施例中撤銷棧數(shù)據(jù)項示意圖;圖25是本發(fā)明一個實施例中生成撤銷棧對象示意圖;圖沈是本發(fā)明一個實施例中一個手勢對象的生成過程示意圖,其中利用撤銷棧對象改變手勢對象的內(nèi)容數(shù)據(jù);圖27是本發(fā)明一個實施例中一個手勢對象的生成過程示意圖,該手勢對象用于改變應(yīng)用程序提供的應(yīng)用環(huán)境設(shè)置。
具體實施例方式為使本發(fā)明的上述目的、特征和優(yōu)點能夠更為明顯易懂,下面結(jié)合附圖和實施例對本發(fā)明的具體實施方式
做詳細(xì)的說明?,F(xiàn)有的用戶自定義操作過程的可以歸納為兩個階段,第一階段選擇所需的操作命令,第二階段生成操作過程。然后選擇所需操作的對象執(zhí)行該操作過程。本發(fā)明中,為了提高自定義操作過程的自由度,擴(kuò)展了上述的兩個階段過程,使用戶不僅可以選擇需要操作的命令,也可以選擇自定義操作應(yīng)用的對象類型。即本發(fā)明中用戶自定義操作過程為三個階段;第一階段,用戶選擇所需的操作命令,生成操作數(shù)據(jù);第二階段,用戶選擇操作對象類型,生成內(nèi)容數(shù)據(jù),顯示的控制需要應(yīng)用的操作對象;最后在第三階段,生成自定義操作過程。參考圖1,為本發(fā)明一個實施例中提供的手勢對象(自定義操作過程)的生成方法,包括步驟S101,基于來自終端設(shè)備的動作數(shù)據(jù)獲取指令,獲取動作數(shù)據(jù);S102,基于來自終端設(shè)備的內(nèi)容數(shù)據(jù)獲取指令,獲取內(nèi)容數(shù)據(jù);S103,基于來自終端設(shè)備的生成指令,生成手勢對象。其中,手勢對象即自定義操作過程;手勢對象的動作數(shù)據(jù)為上述的操作數(shù)據(jù)。所生成的手勢對象中包含了內(nèi)容數(shù)據(jù)和動作數(shù)據(jù),并且建立了所述動作數(shù)據(jù)和內(nèi)容數(shù)據(jù)之間的關(guān)聯(lián)關(guān)系,即在使用該手勢對象的過程中,需要判斷待操作對象的數(shù)據(jù)類型是否滿足內(nèi)容數(shù)據(jù)的要求,然后才對待操作對象執(zhí)行手勢對象的動作數(shù)據(jù)。用戶選擇動作數(shù)據(jù)和內(nèi)容數(shù)據(jù)的方式可以有多種,可以為菜單選項,用戶通過菜單進(jìn)行選擇,用戶也可以直接通過語音輸入,手勢操作,觸摸屏操作,鍵盤輸入以及鼠標(biāo)操作等各種輸入方式定義、選擇動作數(shù)據(jù)和內(nèi)容數(shù)據(jù)。動作數(shù)據(jù)可以為現(xiàn)有應(yīng)用程序可提供的命令的某個集合,也可以為用戶錄制、定義的操作過程。動作數(shù)據(jù)包括操作過程。內(nèi)容數(shù)據(jù)為用戶希望自定義操作過程所應(yīng)用的目標(biāo),即與上述的現(xiàn)有方式相比, 允許用戶設(shè)置該自定義操作過程以后應(yīng)用的對象的類型。內(nèi)容數(shù)據(jù)包括操作對象類型,提高了自定義操作過程的自由度。本發(fā)明一個實施例中提供了以時間調(diào)節(jié)桿定義動作數(shù)據(jù),以文字?jǐn)?shù)據(jù)定義內(nèi)容數(shù)據(jù)的方式生成手勢對象的方法。為了方便用戶選定手勢對象的內(nèi)容數(shù)據(jù)和動作數(shù)據(jù),生成手勢對象的過程通過繪制邏輯線完成。邏輯線包括不連續(xù)的三段自由繪制的曲線,分別是動作筆畫(action stroke)、上下文筆畫(context stroke)和手勢對象筆畫(gesture object stroke);最后一條曲線即手勢對象筆畫的末端繪制有結(jié)束符。本實施例中,動作數(shù)據(jù)獲取指令的形式為動作筆畫,所述內(nèi)容數(shù)據(jù)獲取指令的形式為上下文筆畫,所述生成指令的形式為手勢對象筆畫。用戶繪制結(jié)束符時,啟動手勢對象生成過程,本實施例中動作數(shù)據(jù)獲取指令,內(nèi)容數(shù)據(jù)獲取指令和生成指令在一個請求中。具體的如圖2所示,第一步,通過動作筆畫201選擇時間調(diào)節(jié)桿206作為動作數(shù)據(jù);第二步,通過上下文筆畫202選擇文字?jǐn)?shù)據(jù)205作為內(nèi)容數(shù)據(jù);第三部,通過手勢對象筆畫203生成手勢對象204。動作筆畫201 (action stroke)為用戶任意繪制的一段曲線,該曲線是滿足預(yù)定義的某種特征的曲線,本實施例中,所述特征為打結(jié)的曲線段;該曲線穿過時間調(diào)節(jié)桿206表示用戶選中時間調(diào)節(jié)桿206作為動作數(shù)據(jù);上下文筆劃202 (context stroke)為用戶任意繪制的一段曲線,穿過文字?jǐn)?shù)據(jù)205表示用戶選中該文字?jǐn)?shù)據(jù)205作為內(nèi)容數(shù)據(jù)。手勢對象筆畫203包含一白色可激活箭頭,該箭頭表示結(jié)束符,手勢對象筆畫繪制完成后,即得到手勢對象204。在其他實施例中,該結(jié)束符也可以是以其他方式表現(xiàn),手勢對象筆畫繪制完成后,也可以通過對話框等交互方式,讓用戶選擇是否需要生成手勢對象204。文字?jǐn)?shù)據(jù)205為“SoimdFile”,表示手勢對象的內(nèi)容數(shù)據(jù)為聲音文件類型,該文字?jǐn)?shù)據(jù)205可以為字符數(shù)據(jù),也可以是位圖或矢量圖形數(shù)據(jù),都可以攜帶相關(guān)的數(shù)據(jù)類型信息。如果是圖片數(shù)據(jù),其攜帶的數(shù)據(jù)類型通過現(xiàn)有的識別技術(shù)可以完成識別工作,得到其攜帶的數(shù)據(jù)類型。動作數(shù)據(jù)使用時間調(diào)節(jié)桿206進(jìn)行定義,利用的是時間調(diào)節(jié)桿206的調(diào)節(jié)功能,而不是具體的調(diào)節(jié)操作,可以進(jìn)一步提高自定義操作過程的自由度。上述通過包括動作筆畫201、上下文筆畫202和手勢對象筆畫203的邏輯線生成手勢對象的過程中,應(yīng)用程序通過識別動作筆畫的曲線特征,區(qū)分動作筆畫和上下文筆畫,另夕卜,手勢對象筆畫包含結(jié)束符。在其他實施例中,也可以通過判斷各個筆畫選取的數(shù)據(jù)的類型或繪制筆畫的順序來判斷一個筆畫是動作筆畫還是上下文筆畫,例如先繪制的為動作筆畫等等。在其他實施例中,也可以通過語音輸入、鍵盤輸入等方式生成手勢對象;例如,語音輸入指定內(nèi)容數(shù)據(jù)、動作數(shù)據(jù)和最后的生成步驟。手勢對象204的表現(xiàn)形式為具有四個像素寬度的線段。手勢對象包含動作數(shù)據(jù)、 內(nèi)容數(shù)據(jù)。其使用方式為S201,調(diào)用待操作對象和手勢對象;S202,將手勢對象與待操作對象進(jìn)行關(guān)聯(lián);S203,判斷帶操作對象的類型是否滿足手勢對象的內(nèi)容數(shù)據(jù);S204,執(zhí)行手勢對象中的動作數(shù)據(jù)。用戶通過上述關(guān)聯(lián)得到的操作功能、操作數(shù)據(jù)對待操作對象進(jìn)行操作。其中,將手勢對象與待操作對象進(jìn)行關(guān)聯(lián)的方式有多種,用戶可以通過應(yīng)用程序提供的界面進(jìn)行選擇或直接輸入關(guān)聯(lián)關(guān)系定義。在一個實施例中,手勢對象的使用過程如圖3所示,用戶調(diào)用帶操作對象302,一個音頻文件“Lead vocal.wav”,其格式為WAV,是聲音文件類型的一種。用戶調(diào)用手勢對象 (一個線段)并繪制手勢對象301穿過待操作對象302,表示將自定義的操作過程應(yīng)用到待操作對象302上。因為待操作對象302的數(shù)據(jù)類型滿足手勢對象301中的內(nèi)容數(shù)據(jù),所以類型匹配, 可以應(yīng)用手勢對象的動作數(shù)據(jù)。又由于動作數(shù)據(jù)使用時間調(diào)節(jié)桿206進(jìn)行定義,利用的是時間調(diào)節(jié)桿206的調(diào)節(jié)功能,而不是具體的操作命令,所以手勢對象301中的動作數(shù)據(jù),即時間調(diào)節(jié)桿303將顯示出來。之后,用戶可以通過調(diào)節(jié)調(diào)節(jié)鈕304調(diào)節(jié)待操作對象302即音頻文件“Lead vocal, wav"的時間長度屬性。如時間調(diào)節(jié)桿303所示,上移調(diào)節(jié)鈕304將增加音頻文件 "Lead vocal, wav"的總的時間長度屬性,下移調(diào)節(jié)鈕304將減少音頻文件“Lead vocal, wav"的總的時間長度屬性,時間單位為秒;即時間調(diào)節(jié)桿在調(diào)節(jié)時間增量。在其他實施例中,時間調(diào)節(jié)桿調(diào)節(jié)的單位也可以是與待操作聲音文件相同的單位;時間調(diào)節(jié)桿調(diào)節(jié)的內(nèi)容也可以是總的時間長度本身。上述的關(guān)聯(lián)過程使用的是繪制手勢對象,直接穿過或與待操作對象相交,這種方式使用簡單,操作過程和操作結(jié)果直觀,適合各種用戶使用。當(dāng)系統(tǒng)中存在了大量的手勢對象后,為了讓用戶可以直觀的了解手勢對象的內(nèi)容或者生成過程,需要提供一種獲取手勢對象信息的方法。該方法可以是通過界面查詢,通過語音輸入詢問等。本發(fā)明的一個實施例中,用戶通過繪制預(yù)定義的操作命令,調(diào)用一個手勢對象的生成過程(手勢對象的內(nèi)容)。如圖4所示,用戶繪制的操作命令402為字母“i”,字母“i” 被自動識別為調(diào)用與其相交的手勢對象401的生成過程,即展示手勢對象401中的動作數(shù)據(jù)和內(nèi)容數(shù)據(jù)的定義。調(diào)用的結(jié)果為顯示手勢對象的生成過程403,包括手勢對象的動作數(shù)據(jù)和內(nèi)容數(shù)據(jù)的定義過程。如果所述手勢對象401在生成過程中,當(dāng)最后一步S103完成后,整個窗口內(nèi)容都被保存為圖片數(shù)據(jù),手勢對象的生成過程403將顯示為圖片數(shù)據(jù)(位圖或者矢量圖形);。 如果手勢對象在生成過程中,每一步的信息都被保存下來,例如撤銷棧中保存的每一步操作數(shù)據(jù)都被保存從而得到生成過程,手勢對象的生成過程403將顯示為包含所有相關(guān)信息的環(huán)境數(shù)據(jù)(環(huán)境對象),其中包括動作筆畫201、上下文筆畫202和手勢對象筆畫203,還包括文字?jǐn)?shù)據(jù)205、時間調(diào)節(jié)桿206和手勢對象204。對于一個已經(jīng)生成的手勢對象,修改其內(nèi)容以重復(fù)利用,或完善內(nèi)容數(shù)據(jù)或者動作數(shù)據(jù)以強(qiáng)化其功能都是用戶需要的。在本發(fā)明提供的一個實施例中,為了編輯手勢對象,首先改變手勢對象的狀態(tài)為可編輯狀態(tài)。改變手勢對象的狀態(tài)的方式可以有多種,包括語音操作、手勢操作等。本實施例中利用鼠標(biāo)操作完成,參考圖5,鼠標(biāo)指針502選中手勢對象501,用戶按下右鍵,彈出菜單503,通過選擇菜單503的菜單項“編輯”,手勢對象501進(jìn)入可編輯狀態(tài)。在本發(fā)明提供的另一個實施例中,為了編輯手勢對象,用戶繪制了預(yù)先定義的操作命令“M”。參考圖6,用戶通過手勢操作512繪制了操作命令513,操作命令513在系統(tǒng)中被自動識別為修改手勢對象狀態(tài)的命令,手勢對象511進(jìn)入可編輯狀態(tài)。在其他實施例中,編輯手勢對象的方式也可以通過鍵盤輸入或通過語音操作完成。在本發(fā)明的其他實施例中,修改手勢對象之前,也可以不改變手勢對象的狀態(tài),直接通過編輯或修改操作完成狀態(tài)轉(zhuǎn)換。編輯一個手勢對象包括編輯該手勢對象的內(nèi)容數(shù)據(jù)或/和動作數(shù)據(jù),其中內(nèi)容數(shù)據(jù)指該手勢對象作為自定義操作過程所能操作的數(shù)據(jù),或者數(shù)據(jù)類型;動作數(shù)據(jù)指該手勢對象包含的操作命令集,或者動作數(shù)據(jù)所包含的對象的操作功能。編輯一個手勢對象的過程為S301,調(diào)用待編輯的手勢對象;S302,調(diào)用編輯數(shù)據(jù)源;S303,關(guān)聯(lián)待編輯的手勢對象的內(nèi)容數(shù)據(jù)和動作數(shù)據(jù)與所述編輯數(shù)據(jù)源。編輯一個手勢對象的上述步驟可以通過預(yù)定義的操作命令完成,即修改、替換手勢對象中的內(nèi)容數(shù)據(jù)和動作數(shù)據(jù)。如果應(yīng)用程序保存了一個手勢對象生成過程的環(huán)境數(shù)據(jù) (環(huán)境對象),其中,編輯一個手勢對象還可以直接對生成過程中包含的動作數(shù)據(jù)和內(nèi)容數(shù)據(jù)進(jìn)行操作。為了進(jìn)一步提高自定義操作的自由度,編輯一個手勢對象也可以使用圖片數(shù)據(jù)完成。在本發(fā)明提供的一個實施例中,所述圖形數(shù)據(jù)為一段音頻數(shù)據(jù)(聲音類型數(shù)據(jù)), 如圖7所示,音頻數(shù)據(jù)800包括時間軸801,時間線802,波形803。如圖8所示,在上述音頻數(shù)據(jù)800之上,繪制了兩條線段,線段904和線段905。其中線段904對應(yīng)標(biāo)簽906 “IN”,線段905對應(yīng)標(biāo)簽907 “OUT”。所述的標(biāo)簽906、907可以通過鍵盤輸入,也可以通過繪制預(yù)先定義的命令符號。其中線段和標(biāo)簽的對應(yīng)關(guān)系也可以通過多種方式完成,包括第一種方式,通過兩個線段的繪制順序設(shè)置對應(yīng)關(guān)系,自動確定第一條繪制的線段對應(yīng)標(biāo)簽“IN",第二條繪制的線段對應(yīng)標(biāo)簽“OUT” ;第二種方式,通過繪制命令符號輸入的標(biāo)簽,可以采用鄰近關(guān)系判斷,如果與該標(biāo)簽相鄰的線段在該標(biāo)簽一定范圍內(nèi)(例如,20個像素的范圍),則兩者為對應(yīng)關(guān)系;第三種方式,通過位置判斷并設(shè)置對應(yīng)關(guān)系,兩條線段中,最左邊的線段對應(yīng)標(biāo)簽 “IN”,最右邊的線段對應(yīng)標(biāo)簽“OUT” ;第四種方式,通過預(yù)設(shè)的規(guī)則設(shè)置對應(yīng)關(guān)系。預(yù)設(shè)的規(guī)則可以是斜率,例如斜率小的線段對應(yīng)標(biāo)簽“IN”,斜率大的線段對應(yīng)標(biāo)簽 “OUT”。上述列舉的對應(yīng)關(guān)系只是舉例說明,本領(lǐng)域的技術(shù)人員不應(yīng)該局限在上述四種方式中,任何對應(yīng)的方法只要可以達(dá)到關(guān)聯(lián)線段和標(biāo)簽的目的即可,例如語音輸入關(guān)聯(lián)關(guān)系也是可行的。上述的音頻數(shù)據(jù)800、線段數(shù)據(jù)904、905、標(biāo)簽數(shù)據(jù)906、907作為一個整體,組成了新的數(shù)據(jù)類型,本發(fā)明中,將這種包含上述數(shù)據(jù)的數(shù)據(jù)類型命名為BSP (Black Space Picture)數(shù)據(jù)類型。BSP數(shù)據(jù)類型是對當(dāng)前選擇的對象數(shù)據(jù)的一種圖形化表達(dá)。實際上BSP 包含兩個部分,第一個部分就是選擇的對象的圖形化表達(dá);第二部分就是選擇的對象的實際數(shù)據(jù)和依賴的應(yīng)用程序環(huán)境數(shù)據(jù)。對于一個BSP對象,其表現(xiàn)形式為圖片。在本發(fā)明中,所述的編輯一個手勢對象可以使用圖片(圖形)數(shù)據(jù)完成即用該BSP 對象編輯一個手勢對象。如圖9所示,使用BSP對象編輯手勢對象的方法包括如下步驟S401,獲取手勢對象;S402,獲取圖形對象,即調(diào)用BSP對象;S403,接收來自終端設(shè)備的編輯指令,如果所述圖形對象與所述手勢對象關(guān)聯(lián),利用所述圖形對象編輯所述手勢對象中的動作數(shù)據(jù)或內(nèi)容數(shù)據(jù)。進(jìn)一步的,S401進(jìn)行中,同時顯示手勢對象的生成過程,包括動作數(shù)據(jù)和內(nèi)容數(shù)據(jù);S403關(guān)聯(lián)BSP對象與手勢對象,可以是關(guān)聯(lián)BSP對象與手勢對象的動作數(shù)據(jù)或者內(nèi)容數(shù)據(jù)。進(jìn)一步的,S403關(guān)聯(lián)BSP對象與手勢對象的方式有多種,包括繪制邏輯線關(guān)聯(lián)、直接拖動BSP對象與手勢對象相交、語音輸入關(guān)聯(lián)等。編輯指令的形式可以為用戶輸入的命令行,也可以為語音輸入的預(yù)定義命令。編輯指令的形式還可以為邏輯線,邏輯線可以同時完成所述圖形對象和手勢對象的關(guān)聯(lián)操作。圖10為本發(fā)明提供的一個實施例中使用BSP對象修改手勢對象的過程,其中使用邏輯線關(guān)聯(lián)BSP對象與手勢對象。其中BSP對象1003包括上述音頻數(shù)據(jù)800、線段數(shù)據(jù) 904、905、標(biāo)簽數(shù)據(jù)906、907。手勢對象生成過程1002的生成過程包括上述動作筆畫201、 上下文筆畫202、手勢對象筆畫203、字?jǐn)?shù)據(jù)205、時間調(diào)節(jié)桿206和手勢對象204。修改的過程為,繪制一條邏輯線1001穿過BSP對象1003,指向并穿過手勢對象生成過程1002的上下文筆畫202,表示利用BSP對象1003的內(nèi)容改變手勢對象生成過程1002 的內(nèi)容數(shù)據(jù)。在本實施例中,所述的邏輯線1001包括一白色可激活箭頭,表示結(jié)束符;在其他實施例中,結(jié)束符也可以以其他方式繪制,或不繪制結(jié)束符。在本實施例中,還包括斷所述的BSP對象1003是否包含可以修改手勢對象內(nèi)容數(shù)據(jù)的數(shù)據(jù)源的步驟。由于BSP對象1003包括標(biāo)簽“ IN”和標(biāo)簽“OUT”對應(yīng)的兩條線段,手勢對象生成過程1002的內(nèi)容數(shù)據(jù)被BSP對象修改,當(dāng)BSP喚醒以后(被調(diào)用),它包含的數(shù)據(jù)就可以被用戶操作,這里通過包含白色可激活箭頭的邏輯線賦予給姿態(tài)對象的內(nèi)容數(shù)據(jù),也就是說, 內(nèi)容數(shù)據(jù)將是BSP中的帶IN/OUT標(biāo)簽的音頻數(shù)據(jù)類型(聲音類型)。用戶按照前述的方法使用手勢對象生成過程1002生成的手勢對象,當(dāng)該手勢對象與一音頻文件相交時,將不僅顯示時間調(diào)節(jié)桿將,還將顯示該音頻文件的音頻數(shù)據(jù),其中包括波形圖;波形圖上顯示標(biāo)簽“IN”和標(biāo)簽“OUT”及其對應(yīng)的兩條線段,用戶通過移動標(biāo)簽“IN”和標(biāo)簽“OUT”對應(yīng)的兩條線段可以設(shè)置需要時間調(diào)節(jié)桿調(diào)節(jié)的音頻數(shù)據(jù)部分,即選擇操作對象的一部分進(jìn)行自定義操作。該方法允許用戶只調(diào)節(jié)一部分音頻數(shù)據(jù),而不是整個音頻數(shù)據(jù)的時間長度屬性, 細(xì)化了操作粒度,進(jìn)一步提高了自定義操作過程的自由度。手勢對象的內(nèi)容數(shù)據(jù)不僅包括數(shù)據(jù)類型,還包括待操作對象的內(nèi)容選取功能。具體的,本實施例中利用邏輯線關(guān)聯(lián)BSP對象與手勢對象修改手勢對象內(nèi)容的方法包括步驟S501,調(diào)用手勢對象,顯示其內(nèi)容數(shù)據(jù)和動作數(shù)據(jù)(顯示其生成過程);S502,調(diào)用 BSP 對象;S503,根據(jù)用戶的輸入繪制邏輯線;S504,判斷邏輯線是否與BSP對象相交;S505,判斷邏輯線是否與手勢對象的上下文筆畫相交;S506,調(diào)用BSP對象內(nèi)容;S507,判斷所述BSP對象中是否包含手勢對象;如果包含,可以用該手勢對象的內(nèi)容數(shù)據(jù)作為數(shù)據(jù)源修改與邏輯線相交的手勢對象生成過程;S508,如果所述BSP不包含手勢對象,判斷所述BSP對象中是否包含其他類型對象;S509,分析BSP對象中的手勢對象或其他類型對象,判斷是否含有相應(yīng)的數(shù)據(jù)源, 可以用于修改與邏輯線相交的手勢對象生成過程的內(nèi)容數(shù)據(jù);S510,修改與邏輯線相交的手勢對象生成過程的內(nèi)容數(shù)據(jù)。上述步驟的判斷規(guī)則及流程參考圖11所示。又由于BSP對象的表現(xiàn)形式為圖片,進(jìn)一步的,為了方便用戶操作,在本發(fā)明提供的另一個實施例中,用戶可以使用縮小的BSP文件完成上述的使用BSP對象編輯手勢對象的過程,請參考圖12。其中邏輯線1101穿過BSP對象1102,指向并穿過手勢對象生成過程 1103的上下文筆畫。縮小的BSP文件可以是任意大小,完全取決于用戶的使用環(huán)境和用戶的使用習(xí)慣。無論BSP對象縮小和放大多少,也可用于對手勢對象的屬性進(jìn)行修改。對于縮小的BSP文件(BSP對象),例如,縮小到10x10像素級別,用戶無法直觀的了解BSP文件的詳細(xì)內(nèi)容。在本發(fā)明的一個實施例中,提供了 BSP文件內(nèi)容信息提示功能。 如圖13所示,用戶使用觸摸屏完成操作,用戶點擊一個縮小了的BSP文件1201,一段提示信息1203顯示出來,告知用戶該BSP文件的內(nèi)容為“BSP文件內(nèi)容音頻數(shù)據(jù),標(biāo)簽IN,標(biāo)簽 OUT,標(biāo)簽IN對應(yīng)的線段數(shù)據(jù),標(biāo)簽OUT對應(yīng)的線段數(shù)據(jù)”,并且該BSP文件可以用于“可用于修改手勢對象”。進(jìn)一步的,為了方便用戶操作,對于縮小的BSP文件,用戶可以直接拖動BSP文件與所需修改的手勢對象的內(nèi)容數(shù)據(jù)或動作數(shù)據(jù)相交,達(dá)到上述實施例中的目的。如圖14所示,在本發(fā)明的一個實施例中,用戶通過鼠標(biāo)操作、鍵盤輸入坐標(biāo)操作、語音控制操作、觸摸屏操作等方式移動一個BSP文件1301與手勢對象生成過程的內(nèi)容數(shù)據(jù)相交。其觸發(fā)的修改手勢對象生成過程流程與圖11的S506-S510相同,不再重復(fù)。進(jìn)一步的,BSP對象中可以包含手勢對象。圖15為本發(fā)明的一個實施例的示意圖, 其中的BSP對象不僅包含音頻數(shù)據(jù)(音頻數(shù)據(jù)包含波形圖、時間軸和時間線)、線段數(shù)據(jù)、標(biāo)簽數(shù)據(jù)及線段數(shù)據(jù)和標(biāo)簽數(shù)據(jù)的對應(yīng)關(guān)系,還包括手勢對象1401、1402。其中,BSP對象包括多個線段數(shù)據(jù),線段數(shù)據(jù)1411、線段數(shù)據(jù)1412、線段數(shù)據(jù)1413、 線段數(shù)據(jù)1414、線段數(shù)據(jù)1415、線段數(shù)據(jù)1416,分別于音頻數(shù)據(jù)中的波形圖相交于不同的時間點并對應(yīng)標(biāo)簽“1”、“2”、“3”、“4”、“5”、“6”。手勢對象1401與其中的標(biāo)簽“2”對應(yīng)的線段數(shù)據(jù)相交,手勢對象1402還與其中的標(biāo)簽“6”對應(yīng)的線段數(shù)據(jù)相交。
該BSP對象也可用于修改手勢對象生成過程,與前述實施例中的相同,不再重述。手勢對象生成過程的內(nèi)容數(shù)據(jù)被修改后,生成新的手勢對象。用戶按照前述的方法使用該新的手勢對象與一音頻文件相交,將顯示時間調(diào)節(jié)桿將和該音頻文件的波形圖, 圖上將顯示6個標(biāo)簽及其對應(yīng)的線段,用戶選取音頻文件操作部分的方式為用戶通過手勢對象選取兩個標(biāo)簽,設(shè)置需要時間調(diào)節(jié)桿調(diào)節(jié)的音頻數(shù)據(jù)部分,即兩個標(biāo)簽對應(yīng)的線段限定的波形范圍。如圖16所示,在本發(fā)明的另一個實施例中,BSP對象包括兩個手勢對象(手勢對象1501和手勢對象1502)以及由手勢對象1501和1502直接設(shè)置的時間范圍。該BSP對象也可用于修改手勢對象生成過程,與前述實施例中的相同,不再重述。手勢對象生成過程的內(nèi)容數(shù)據(jù)被修改后,,生成新的手勢對象。用戶按照前述的方法,使用該新的手勢對象與一音頻文件相交,顯示時間調(diào)節(jié)桿將和該音頻文件的波形圖,圖上將不再顯示標(biāo)簽及其對應(yīng)的線段,用戶選取音頻文件操作部分的方式為由用戶直接用手勢對象(即圖16中的兩條垂直線段)在波形圖上繪制、設(shè)置需要時間調(diào)節(jié)桿調(diào)節(jié)的音頻數(shù)據(jù)部分,即兩條垂直線段限定的波形范圍。上述手勢對象生成過程得到的手勢對象的內(nèi)容數(shù)據(jù)不僅僅包括相應(yīng)數(shù)據(jù)內(nèi)容的選取功能,還包括了一種新的選取方式。進(jìn)一步的,為了簡化用戶操作過程,本發(fā)明的一個實施例中還提供了一種利用BSP 文件修改手勢對象的生成過程的方法,即通過直接拖動BSP文件與手勢對象相交,或直接繪制邏輯線與手勢對象和BSP文件相交,而不需顯示手勢對象的生成過程。參考圖17,其中手勢對象生成過程1711在應(yīng)用中并不顯示,這里顯示出來只是為了表示與前述實施例的不同;邏輯線1712與BSP文件1713相交,邏輯線1712與手勢對象 1714相交并指向手勢對象1714。由于本實施例中,BSP文件包含的數(shù)據(jù)只能用于修改手勢對象生成過程的內(nèi)容數(shù)據(jù),所以其修改過程與上述實施例中的相同。在其他實施例中,可以通過與用戶交互的方式確定BSP文件針對的修改對象(手勢對象的內(nèi)容數(shù)據(jù),還是動作數(shù)據(jù)),或者應(yīng)用程序按照預(yù)定的規(guī)則自動判斷與手勢對象相交的BSP文件所要修改的對象。需要注意的是,本發(fā)明中所述的手勢對象的內(nèi)容數(shù)據(jù)、動作數(shù)據(jù)是指手勢對象作為一個結(jié)果所包含的內(nèi)容數(shù)據(jù)、動作數(shù)據(jù);手勢對象生成過程的內(nèi)容數(shù)據(jù)、動作數(shù)據(jù)指手勢對象生成過程作為一個整體過程所包含的內(nèi)容數(shù)據(jù)、動作數(shù)據(jù);這兩種說法的角度不同,但是所指代的內(nèi)容是相同的。本發(fā)明還提供一種對象賦值的方法,一個BSP對象(又稱為BSP文件、BSP數(shù)據(jù)) 可以賦值給一個其他類型的對象。對象賦值方法包括如下步驟S601,根據(jù)用戶的輸入,調(diào)用源對象;S602,根據(jù)用戶的輸入,調(diào)用目標(biāo)對象;S603,根據(jù)用戶的輸入,關(guān)聯(lián)源對象和目標(biāo)對象;S604,將源對象的數(shù)據(jù)內(nèi)容復(fù)制到目標(biāo)對象中,目標(biāo)對象成為被賦值對象。在本發(fā)明的一個實施例中,所述的關(guān)聯(lián)源對象和目標(biāo)對象使用邏輯線完成,如圖 18所示。圖形對象1701是一個五角星,邏輯線1703與源對象1704相交,邏輯線1703與目標(biāo)對象1701相交,并指向1701。所述的邏輯線1703包括結(jié)束符——箭頭,用于啟動S603中的關(guān)聯(lián)操作和S604中的賦值操作過程。其中,關(guān)聯(lián)操作過程包括如下步驟S6031,判斷該邏輯線的兩端是否與兩個對象相交;S6032,根據(jù)邏輯線的箭頭的指向,判斷源數(shù)據(jù)和目標(biāo)數(shù)據(jù);本實例中,箭頭指向的為目標(biāo)數(shù)據(jù);S6033,判斷目標(biāo)數(shù)據(jù)是否可以接受源數(shù)據(jù)的數(shù)據(jù)內(nèi)容。本實施例中,圖形對象1701為圖形數(shù)據(jù),BSP文件為源對象1704,由于BSP文件變現(xiàn)形式為圖形數(shù)據(jù),所以二者的數(shù)據(jù)類型相同,可以滿足該步驟的判斷條件。S604中的賦值操作過程比較直接,將BSP文件中的所有數(shù)據(jù)賦值給圖形對象1701,圖形對象1701中包含一 BSP對象。在其他實施例中,即使數(shù)據(jù)類型不同,只要目標(biāo)對象可以以某種方式包含源對象的數(shù)據(jù),就可以完成對象賦值的過程。賦值后的圖形對象1701也就包括了可以修改手勢對象的數(shù)據(jù),用戶可以直接使用圖形數(shù)據(jù)1701完成上述的修改手勢對象的內(nèi)容數(shù)據(jù)和動作數(shù)據(jù)的過程。通過對象的賦值操作,用戶可以重新定義BSP文件,即給BSP文件一個形象的圖標(biāo)或圖示符號,方便用戶記憶和使用。使用賦值后的圖形對象1701編輯手勢對象的過程參考圖19,其中圖形對象1601 是圖形對象1701賦值后的結(jié)果,是被賦值對象,移動圖形對象1601與手勢對象204相交, 將修改手勢對象的內(nèi)容數(shù)據(jù)或者動作數(shù)據(jù)。本實施例中,用戶通過繪制邏輯線1602并標(biāo)注文字?jǐn)?shù)據(jù)“Context”標(biāo)明該圖形對象1601只用來修改手勢對象204的內(nèi)容數(shù)據(jù)。具體的,本實施例中,使用被賦值對象修改手勢對象的方法如圖20所示,包括如下步驟S701,調(diào)用手勢對象;S702,調(diào)用被賦值對象;S703,判斷被賦值對象是否與手勢對象相交;如果相交觸發(fā)下面的過程;S704,判斷被賦值對象是否包含BSP對象;S705,如果不包含,判斷被賦值對象是否包含其他對象;S706,分析被賦值對象內(nèi)容,即其包含的BSP對象或其他對象的內(nèi)容;到此步驟, 修改的數(shù)據(jù)源就得到了,一般可以得到一個源對象列表;S707,判斷是否存在邏輯線指出修改的目的(即修改所針對的是手勢對象的內(nèi)容數(shù)據(jù)還是動作數(shù)據(jù));S708,獲取用戶需要被賦值對象修改的目的,通過對話框或者其他方式,讓用戶選擇修改的目的;或者由應(yīng)用軟件自動判斷;或者由應(yīng)用軟件默認(rèn)選擇;S709,利用被賦值對象的內(nèi)容修改手勢對象的內(nèi)容數(shù)據(jù)或者動作數(shù)據(jù)。上述的利用BSP對象(又稱為BSP對象、BSP文件)或包含BSP對象的被賦值對象修改/編輯手勢對象的方法也可以應(yīng)用在手勢對象的生成過程中,即成為手勢對象的內(nèi)容數(shù)據(jù)和動作數(shù)據(jù)的定義方法。通過BSP對象修改、定義手勢對象的內(nèi)容,用戶不僅可以選擇自定義操作過程針對的操作對象的種類,而且還通過BSP對象的數(shù)據(jù),定義了多種選擇操作對象中一部分內(nèi)容的方法。例如選擇音頻文件的后半部分,調(diào)節(jié)動作內(nèi)容的時間調(diào)節(jié)桿改變該后半部分音頻文件的時間長度屬性。
14
上面的實施例中,主要針對的是如何修改手勢對象的內(nèi)容數(shù)據(jù),下面將繼續(xù)論述本發(fā)明實施例中修改手勢對象動作數(shù)據(jù)的方法。動作數(shù)據(jù)可以通過多種方式定義,宏命令,錄制操作過程,編寫代碼,都可以定義動作數(shù)據(jù)。本發(fā)明提供了一種簡單的方式,上述的一個實施例中,用戶通過繪制動作筆畫選擇時間調(diào)節(jié)桿,即定義了該手勢對象的動作數(shù)據(jù)——時間調(diào)節(jié)桿的調(diào)節(jié)功能。為了進(jìn)一步提高自定義操作的自由度,本發(fā)明還提供另一種生成操作數(shù)據(jù)的方法S801,通過撤銷棧(Undo Stack)來完成操作過程的自動保存;S802,通過選擇撤銷棧數(shù)據(jù)來完成操作數(shù)據(jù)的定義。進(jìn)一步的,利用上述操作數(shù)據(jù)修改手勢對象的方法為將其關(guān)聯(lián)到手勢對象的動作數(shù)據(jù),修改或替換手勢對象的動作數(shù)據(jù)。在現(xiàn)有技術(shù)中,用戶的最近一些操作過程都是可以保存在撤銷棧中的,只是撤銷棧的長度各有不同。在本發(fā)明的一個實施例中,應(yīng)用程序提供一種長度不限的撤銷棧,該撤銷棧保存在磁盤或其他非易失性存儲介質(zhì)上。用戶的所有操作過程都可以保存下來。該實施例中, 每一個對象對應(yīng)一個撤銷棧,每一個撤銷棧包含多個撤銷項,每一個撤銷項對應(yīng)保存一個或多個操作指令,操作指令中保存操作對象的當(dāng)前的狀態(tài)——該操作指令執(zhí)行前的狀態(tài)。圖21為本發(fā)明的一個實施例,其中顯示了一個文本對象1801,屬于文本類型數(shù)據(jù),該文本對象1801包括文字?jǐn)?shù)據(jù)以及一個階梯對象(Stair Object),階梯對象負(fù)責(zé)根據(jù)層次關(guān)系格式化該文本對象包含的文字?jǐn)?shù)據(jù),即調(diào)整文字?jǐn)?shù)據(jù)中的各種類型標(biāo)題的間距。 所述的階梯對象的定義和實現(xiàn)方式請參考美國專利第72討觀7號,專利名稱為“Method for formatting text by hand drawn inputs”。通過改變階梯對象,用戶可以修改文本對象 1801的各行文字間距。改變階梯對象的方法和實現(xiàn)方式請參考美國專利第7M0284號,專利名禾爾為“Method for formatting text by hand drawn inputs,,。參考圖22,其中顯示了原階梯對象1811及操作后的階梯對象1812的對應(yīng)位置關(guān)系。操作過程為向下調(diào)整階梯對象所包含的子對象的位置,其中子對象1831沿水平線1821 向下調(diào)整第一距離,子對象1832沿水平線1822向下調(diào)整第二距離,子對象1833沿水平線 1823向下調(diào)整第三距離,子對象1834沿水平線1擬4向下調(diào)整第四距離。如圖23所示,為調(diào)整后文本對象與調(diào)整前文本對象的對應(yīng)關(guān)系,其中調(diào)整前的文本對象為文本對象1851,調(diào)整后的文本對象為文本對象1852 ;圖23還顯示了第一距離 1856,第二距離1853,第三距離1邪4和第四距離1855。在撤銷棧中,自動保存了上述四步驟操作對應(yīng)的四個撤銷項,參考圖M為撤銷棧數(shù)據(jù)項的圖形化顯示,分別為撤銷項1861,撤銷項1862,撤銷項1863和撤銷項1864。各個撤銷項中都保存了操作命令,即下移某子對象某距離,例如下移子對象1831 二十個像素。利用上述的撤銷棧數(shù)據(jù)(撤銷項),可以生成一個撤銷棧對象,包括上述四個撤銷項的內(nèi)容。利用撤銷棧生成撤銷棧對象的方法可以有多種,例如,通過界面讓用戶選擇需要的撤銷棧中的撤銷項及其順序。為了方便用戶操作,參考圖25,本發(fā)明的另一個實施例中,用戶可以通過繪制邏輯線生成一個撤銷棧對象。邏輯線1906依次穿過撤銷項1901,撤銷項1902,撤銷項1903,撤
15銷項1904。邏輯線1906包括結(jié)束符——箭頭,用來啟動生成撤銷棧對象1905。其中,撤銷棧對象1905包含上述對階梯對象的四次操作。根據(jù)實際需要,用戶也可以不按順序選擇上述撤銷項,或者不選擇所有的撤銷項,生成撤銷棧對象。上述撤銷棧對象的表現(xiàn)形式可以為位圖或矢量圖形。根據(jù)上述的步驟(3)將上述操作數(shù)據(jù)關(guān)聯(lián)到手勢對象的動作數(shù)據(jù),完成定義動作數(shù)據(jù)。撤銷棧對象可以用來編輯手勢對象的動作數(shù)據(jù)。如圖沈所示,為一個手勢對象的生成過程,其中包括上下文筆畫2101,動作筆畫 2102,手勢對象筆畫2103,生成的手勢對象2104。與上下文筆畫相交的數(shù)據(jù)是上述的文本對象,表示該生成的手勢對象2104(自定義操作過程)的能夠作用的對象的類型,即用戶應(yīng)當(dāng)使用該手勢對象2104操作文本對象。與動作筆畫相交的數(shù)據(jù)為階梯對象,表示該生成的手勢對象2104的包含的自定義操作為階梯對象對應(yīng)的功能——可以調(diào)整文本對象的各行文字間距。按照上述的動作數(shù)據(jù)、內(nèi)容數(shù)據(jù)生成的手勢對象,在使用的過程中,如果與一對象相交,首先判斷該對象是是否為文本類型數(shù)據(jù);如果是,再判斷該文本對象是否包含階梯對象,或者是階梯對象能夠操作的各類標(biāo)題;如果含有,顯示階梯對象,用戶通過操作階梯對象,修改文本對象的各種類型標(biāo)題的間距。為了改變該手勢對象2104的動作數(shù)據(jù),移動撤銷棧對象2105與動作筆畫2102相交。相交后,手勢對象2104的動作數(shù)據(jù)改變?yōu)槌蜂N棧對象2105所包含的內(nèi)容。之后新生成的手勢對象2104所完成的自定義操作為按照撤銷棧對象2105所包含的操作,調(diào)整文本對象的各行文字間距。例如在一個實施例中,用戶選定一個文本對象,繪制手勢對象2104與該文本對象相交,則該文本對象所包含的階梯對象將被自動按照撤銷棧對象2105中包含的操作改變,改變的結(jié)果參考圖22所示。在其他實施例中,在使用手勢對象的過程中,與手勢對象2105相交的文本對象可能含有與手勢對象2105內(nèi)容數(shù)據(jù)類型相同的文本對象,但文本對象包含的階梯對象不同。 這時,所進(jìn)行的自動化操作就有多種可能,其后續(xù)的處理方式包括第一種方式不進(jìn)行任何操作,既然自動化操作的結(jié)果無法預(yù)料,則不進(jìn)行任何操作,同時向用戶反饋文本對象所包含的階梯對象不同的信息;第二種方式只修改階梯對象中相同的子對象,忽略不同的子對象;第三種方式提供交互界面,讓用戶決定接下來的動作;第四種方式按照預(yù)定義的規(guī)則進(jìn)行操作。其中的第四種處理方式最具有可擴(kuò)展性,也最具有實用性,手勢對象的使用將更加自由,用戶如果發(fā)現(xiàn)操作結(jié)果不符合預(yù)期要求,可修改預(yù)定義規(guī)則。上述的處理方式也可以擴(kuò)展到其他手勢對象,即當(dāng)手勢對象的數(shù)據(jù)內(nèi)容與待操作對象相同,但是數(shù)據(jù)內(nèi)容中包含的其他對象又不完全一致的時候,可以參考上述處理方式進(jìn)行后續(xù)處理。進(jìn)一步的,上述的手勢對象不僅可以針對預(yù)定類型的對象進(jìn)行操作,還可以針對整個應(yīng)用程序提供的應(yīng)用環(huán)境進(jìn)行操作,即通過手勢對象改變應(yīng)用程序的狀態(tài)、設(shè)置等進(jìn)行操作。如圖27所示,為本發(fā)明一個實施例中一個手勢對象的生成過程,其中的邏輯線包括動作筆畫2201,上下文筆畫2202和手勢對象筆畫2203。動作筆畫2201為一個自相交曲線段,本實施例中,應(yīng)用程序識別自相交曲線段為動作筆畫。上下文筆畫2202不與任何內(nèi)容數(shù)據(jù)相交。用于生成手勢對象的手勢對象筆畫2203為不包括結(jié)束符的曲線段。生成的手勢對象2204為虛線段。上下文筆畫2202不與任何內(nèi)容數(shù)據(jù)相交,表示該手勢對象2204的操作內(nèi)容為應(yīng)用程序環(huán)境中任何空白區(qū)域。動作筆畫2201不與任何動作數(shù)據(jù)相交,而是在動作筆畫之后用戶通過手勢或觸摸屏或鼠標(biāo)操作輸入了標(biāo)識符2205,該標(biāo)識符2205為一個預(yù)定義的操作命令“all”,表示編輯應(yīng)用程序提供的應(yīng)用環(huán)境(應(yīng)用程序全局參數(shù)),替換為當(dāng)前應(yīng)用環(huán)境,當(dāng)前應(yīng)用環(huán)境所包含的所有信息作為一個環(huán)境對象保存在手勢對象2204中。用戶在使用手勢對象2204時,在應(yīng)用程序提供的環(huán)境中任意空白區(qū)域繪制手勢對象2204,則系統(tǒng)將把目前的應(yīng)用程序環(huán)境的設(shè)置參數(shù)調(diào)整為手勢對象2204中包含的環(huán)境對象中的數(shù)據(jù)。進(jìn)一步的,上述的手勢對象還可以對整個軟硬件平臺進(jìn)行操作、即通過手勢對象改變應(yīng)用程序所在的操作系統(tǒng)、硬件設(shè)備的狀態(tài)、設(shè)置等進(jìn)行操作。實現(xiàn)方式如上所述,不
再重復(fù)。綜上所述,本發(fā)明提供的自定義操作過程突破了已有技術(shù)的慣性思維,不再把自定義操作過程僅僅作為某個應(yīng)用程序中一系列操作命令的集合,而是具備了如下功能的手勢對象第一,手勢對象生成過程中,為用戶提供數(shù)據(jù)類型的選擇,即手勢對象(自定義操作過程)的內(nèi)容數(shù)據(jù),用戶可以通過定義手勢對象的內(nèi)容數(shù)據(jù)實現(xiàn)對待操作對象類型的選擇;第二,手勢對象生成過程中,為用戶提供操作功能的選擇,即用戶不需要定義確切的操作命令流程,而是定義某種調(diào)節(jié)裝置,利用該調(diào)節(jié)裝置的調(diào)結(jié)構(gòu)能操作待操作對象,是一種新型自定義操作過程,用戶使用該手勢對象時,得到的是一種操作模式,用戶繼續(xù)在此操作模式下完成全部的操作;第三,為用戶提供了修改手勢對象的方法,用戶通過BSP對象修改手勢對象的內(nèi)容數(shù)據(jù),實現(xiàn)了選擇部分待操作對象的功能;第四,為用戶提供了修改手勢對象的方法,用戶通過撤銷棧對象修改手勢對象的動作數(shù)據(jù),實現(xiàn)了對現(xiàn)有操作的重用;并且自定義操作過程不需要編程、錄制,只需要利用撤銷棧的自動保存功能,用戶對撤銷棧中的撤銷項進(jìn)行選擇即可生成撤銷棧對象,免除了用戶重復(fù)操作的過程,節(jié)省了時間、提高了工作效率;第五,進(jìn)一步擴(kuò)大了自定義操作過程的操作對象的范圍,為用戶提供了應(yīng)用程序環(huán)境設(shè)置的方法;第六,進(jìn)一步擴(kuò)大了自定義操作過程的操作對象的范圍,為用戶提供了應(yīng)用程序運(yùn)行環(huán)境即操作系統(tǒng)和硬件設(shè)備設(shè)置的方法。上述手勢對象的生成和使用過程簡單、方便,使用戶不用編寫程序,就可以達(dá)到自定義操作過程的目的;同時又能滿足自定義操作過程的自由度要求,使自定義的操作過程不局限在某個應(yīng)用程序所提供的操作命令本身。本發(fā)明雖然已以較佳實施例公開如上,但其并不是用來限定本發(fā)明,任何本領(lǐng)域技術(shù)人員在不脫離本發(fā)明的精神和范圍內(nèi),都可以利用上述揭示的方法和技術(shù)內(nèi)容對本發(fā)明技術(shù)方案做出可能的變動和修改,因此,凡是未脫離本發(fā)明技術(shù)方案的內(nèi)容,依據(jù)本發(fā)明的技術(shù)實質(zhì)對以上實施例所作的任何簡單修改、等同變化及修飾,均屬于本發(fā)明技術(shù)方案的保護(hù)范圍。
權(quán)利要求
1.一種基于手勢對象操作音頻數(shù)據(jù)的方法,其特征在于,包括獲取待操作的音頻數(shù)據(jù);關(guān)聯(lián)所述音頻數(shù)據(jù)與手勢對象;所述手勢對象中配置有動作數(shù)據(jù)和內(nèi)容數(shù)據(jù);顯示所述手勢對象的動作數(shù)據(jù);接收來自終端設(shè)備針對動作數(shù)據(jù)的操作指令,改變所述音頻數(shù)據(jù)的屬性。
2.如權(quán)利要求1所述基于手勢對象操作音頻數(shù)據(jù)的方法,其特征在于,所述關(guān)聯(lián)所述音頻數(shù)據(jù)與手勢對象包括基于所述內(nèi)容數(shù)據(jù)指定的數(shù)據(jù)類型,判斷其是否與所述音頻數(shù)據(jù)的數(shù)據(jù)類型匹配。
3.如權(quán)利要求1所述基于手勢對象操作音頻數(shù)據(jù)的方法,其特征在于,所述所述內(nèi)容數(shù)據(jù)為帶IN/OUT標(biāo)簽的聲音類型;所述改變所述音頻數(shù)據(jù)的屬性包括接收來自終端設(shè)備針對IN/OUT標(biāo)簽位置的調(diào)節(jié)操作,選取所述音頻數(shù)據(jù)的范圍,改變所述范圍內(nèi)音頻數(shù)據(jù)的屬性。
4.如權(quán)利要求1所述基于手勢對象操作音頻數(shù)據(jù)的方法,其特征在于,所述動作數(shù)據(jù)為時間調(diào)節(jié)器;所述改變所述音頻數(shù)據(jù)的屬性包括接收來自終端設(shè)備針對時間調(diào)節(jié)器的調(diào)節(jié)操作, 改變所述音頻數(shù)據(jù)的時間長度屬性。
5.如權(quán)利要求4所述基于手勢對象操作音頻數(shù)據(jù)的方法,其特征在于,所述內(nèi)容數(shù)據(jù)為帶IN/OUT標(biāo)簽的聲音類型;所述改變所述音頻數(shù)據(jù)的屬性包括接收來自終端設(shè)備針對IN/OUT標(biāo)簽位置的調(diào)節(jié)操作,選取所述音頻數(shù)據(jù)的范圍;接收來自終端設(shè)備針對時間調(diào)節(jié)器的調(diào)節(jié)操作,改變所述范圍內(nèi)的音頻數(shù)據(jù)的時間長度屬性。
6.如權(quán)利要求1所述基于手勢對象操作音頻數(shù)據(jù)的方法,其特征在于,所述所述內(nèi)容數(shù)據(jù)為帶多個標(biāo)簽的聲音類型;所述改變所述音頻數(shù)據(jù)的屬性包括接收來自終端設(shè)備針對多個標(biāo)簽的選擇操作,依據(jù)所述選擇操作的結(jié)果選取所述音頻數(shù)據(jù)的范圍,改變所述范圍內(nèi)音頻數(shù)據(jù)的屬性。
7.一種編輯音頻的手勢對象的生成方法,其特征在于,包括基于來自終端設(shè)備的動作數(shù)據(jù)獲取指令,獲取動作數(shù)據(jù);基于來自終端設(shè)備的內(nèi)容數(shù)據(jù)獲取指令,獲取內(nèi)容數(shù)據(jù),所述內(nèi)容數(shù)據(jù)為聲音類型;基于來自終端設(shè)備的生成指令,新建手勢對象,將所述動作數(shù)據(jù)和內(nèi)容數(shù)據(jù)配置到所述手勢對象中。
8.如權(quán)利要求7所述編輯音頻的手勢對象的生成方法,其特征在于,所述動作數(shù)據(jù)獲取指令,內(nèi)容數(shù)據(jù)獲取指令和生成指令在一個請求中。
9.如權(quán)利要求7所述編輯音頻的手勢對象的生成方法,其特征在于,所述將所述動作數(shù)據(jù)和內(nèi)容數(shù)據(jù)配置到所述手勢對象中包括建立所述動作數(shù)據(jù)和內(nèi)容數(shù)據(jù)之間的關(guān)聯(lián)關(guān)系。
10.如權(quán)利要求7所述編輯音頻的手勢對象的生成方法,其特征在于,所述動作數(shù)據(jù)獲取指令的形式為動作筆畫,所述內(nèi)容數(shù)據(jù)獲取指令的形式為上下文筆畫,所述生成指令的形式為手勢對象筆畫;所述動作筆畫、上下文筆畫和手勢對象筆畫組成邏輯線。
11.如權(quán)利要求7所述編輯音頻的手勢對象的生成方法,其特征在于,所述動作數(shù)據(jù)為時間調(diào)節(jié)器,所述時間調(diào)節(jié)器用于調(diào)節(jié)待操作聲音文件的時間長度。
12.如權(quán)利要求7所述編輯音頻的手勢對象的生成方法,其特征在于,所述內(nèi)容數(shù)據(jù)為帶IN/OUT標(biāo)簽的聲音類型。
13.一種手勢對象的編輯方法,其特征在于,包括獲取手勢對象;所述手勢對象中配置有動作數(shù)據(jù)和內(nèi)容數(shù)據(jù);獲取圖形對象;所述圖形對象包括聲音類型數(shù)據(jù);接收來自終端設(shè)備的編輯指令,如果所述圖形對象與所述手勢對象關(guān)聯(lián),利用所述圖形對象編輯所述手勢對象中的動作數(shù)據(jù)或內(nèi)容數(shù)據(jù)。
14.如權(quán)利要求13所述手勢對象的編輯方法,其特征在于,所述聲音類型數(shù)據(jù)包括波形圖和時間軸;所述圖形對象還包括標(biāo)簽數(shù)據(jù)。
15.如權(quán)利要求13所述手勢對象的編輯方法,其特征在于,所述圖形對象與所述手勢對象關(guān)聯(lián)包括所述手勢對象與所述圖形對象相交。
16.如權(quán)利要求13所述手勢對象的編輯方法,其特征在于,所述編輯指令的形式為邏輯線;所述邏輯線一端與所述圖形對象相交,另一端與所述手勢對象相交,表示關(guān)聯(lián)所述圖形對象和手勢對象。
全文摘要
本發(fā)明公開一種基于手勢對象操作音頻數(shù)據(jù)的方法,包括步驟獲取待操作的音頻數(shù)據(jù);關(guān)聯(lián)所述音頻數(shù)據(jù)與手勢對象;所述手勢對象中配置有動作數(shù)據(jù)和內(nèi)容數(shù)據(jù);顯示所述手勢對象的動作數(shù)據(jù);接收來自終端設(shè)備針對動作數(shù)據(jù)的操作指令,改變所述音頻數(shù)據(jù)的屬性。本發(fā)明還提供一種編輯音頻的手勢對象的生成方法,包括步驟基于來自終端設(shè)備的動作數(shù)據(jù)獲取指令,獲取動作數(shù)據(jù);基于來自終端設(shè)備的內(nèi)容數(shù)據(jù)獲取指令,獲取內(nèi)容數(shù)據(jù),所述內(nèi)容數(shù)據(jù)為聲音類型;基于來自終端設(shè)備的生成指令,新建手勢對象,將所述動作數(shù)據(jù)和內(nèi)容數(shù)據(jù)配置到所述手勢對象中。用戶不用編寫程序,就可以達(dá)到自定義操作過程的目的;同時又能滿足自定義操作過程的自由度要求。
文檔編號G06F3/048GK102467327SQ201010546390
公開日2012年5月23日 申請日期2010年11月10日 優(yōu)先權(quán)日2010年11月10日
發(fā)明者丹尼·耶格 申請人:上海無戒空間信息技術(shù)有限公司