導(dǎo)航系統(tǒng)手勢指令輸入方法及裝置的制造方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及數(shù)據(jù)處理技術(shù)領(lǐng)域,特別是涉及一種導(dǎo)航系統(tǒng)手勢指令輸入方法及裝置。
【背景技術(shù)】
[0002]隨著車載導(dǎo)航技術(shù)的不斷發(fā)展,車載導(dǎo)航系統(tǒng)已經(jīng)廣泛應(yīng)用在人們?nèi)粘5能囕v導(dǎo)航中。在車載導(dǎo)航系統(tǒng)的使用中,常規(guī)操作是用戶通過觸摸屏中的按鍵和文本輸入框設(shè)置出發(fā)地、目的地、必經(jīng)地、回避地,車載導(dǎo)航系統(tǒng)根據(jù)這些設(shè)置,規(guī)劃合適的路徑供用戶參考。
[0003]但是在車輛駕駛環(huán)境下,上述這種設(shè)置方法較為繁瑣,因此,目前的導(dǎo)航系統(tǒng)已經(jīng)可以通過直接在觸摸屏上繪制手勢命令來實現(xiàn)多種程序操作,如設(shè)置常用目的地、顯示特定信息,調(diào)整音量,屏幕亮度等功能。但是,現(xiàn)有技術(shù)中,由于手勢輸入的隨意性和屏幕感應(yīng)的不穩(wěn)定和不精確性,用戶輸入的手勢常常會發(fā)生變形,與系統(tǒng)存儲的手勢命令不能完美的匹配,易導(dǎo)致出現(xiàn)手勢命令輸入與導(dǎo)航系統(tǒng)內(nèi)存儲的手勢命令出現(xiàn)過多不相符或者誤匹配的情況。例如用戶需要實現(xiàn)增大音量的操作,但是由于操作失誤而輸入了增大了屏幕亮度,從而出現(xiàn)了并非用戶需要的結(jié)果,給用戶造成不便。
[0004]因此,在現(xiàn)有的導(dǎo)航系統(tǒng)手勢指令輸入方法中,由于車輛駕駛環(huán)境和屏幕感應(yīng)的不穩(wěn)定和不精確性,會導(dǎo)致指令輸入不準(zhǔn)確。
【發(fā)明內(nèi)容】
[0005]有鑒于此,在現(xiàn)有的導(dǎo)航系統(tǒng)手勢指令輸入方法中,由于車輛駕駛環(huán)境和屏幕感應(yīng)的不穩(wěn)定和不精確性,會導(dǎo)致指令輸入不準(zhǔn)確的缺陷,提供一種導(dǎo)航系統(tǒng)手勢指令輸入方法,技術(shù)方案如下:
[0006]包括以下步驟:
[0007]在九宮格手勢指令模式下,感應(yīng)用戶的手勢指令,接收并存儲所述手勢指令對應(yīng)的觸點軌跡序列;
[0008]判斷九宮格的觸點狀態(tài)未發(fā)生改變的時間,或,用戶斷絕與觸摸屏之間接觸的時間是否超過設(shè)定時間,如果是,則完成所述手勢指令的輸入,然后繼續(xù)判斷:
[0009]所述手勢指令對應(yīng)的觸點軌跡序列與預(yù)先存儲的觸點軌跡序列指令是否相符,如果是,則根據(jù)所述手勢指令對應(yīng)的觸點軌跡序列執(zhí)行相應(yīng)的導(dǎo)航操作程序。
[0010]優(yōu)選的,在上述的方法中,所述感應(yīng)用戶的手勢指令,包括:
[0011]檢測手勢指令是否落在九宮格輸入框的范圍內(nèi),如果是,則判斷所述手勢指令落在九宮格的觸點范圍。
[0012]優(yōu)選的,在上述的方法中,所述判斷所述手勢指令落在九宮格的觸點范圍,包括:
[0013]當(dāng)觸點的感應(yīng)區(qū)為圓形時,計算用戶手指在觸摸屏上的接觸點坐標(biāo)與所有九宮格觸點之間距離的最小值,如果該最小距離小于設(shè)定的距離范圍,則用戶輸入的手勢指令落在具有最小距離的九宮格觸點上;
[0014]當(dāng)觸點的感應(yīng)區(qū)為方形時,計算用戶手指在觸摸屏上的接觸點坐標(biāo)介于最大和最小坐標(biāo)值之間的第一觸點感應(yīng)區(qū),所述手勢指令落第一感應(yīng)區(qū)內(nèi)的九宮格觸點上。
[0015]優(yōu)選的,在上述的方法中,所述接收并存儲所述手勢指令對應(yīng)的觸點軌跡序列,包括:
[0016]當(dāng)所述觸點軌跡序列元素數(shù)為0,則確定接收到的觸點為第一觸點,將所述第一觸點的觸點ID添加至所述觸點軌跡序列中,繪制并存儲所述第一觸點;
[0017]當(dāng)所述觸點軌跡序列的元素數(shù)至少為I時,則判斷所述接收到的觸點與所述軌跡點序列中最末尾的觸點之間是否存在觸點軌跡跨越,如果不存在觸點軌跡跨越,則確定接收到的觸點為當(dāng)前觸點;如果存在觸點軌跡跨越,則將跨越的觸點和所述接收到的觸點依次作為當(dāng)前觸點,判斷當(dāng)前觸點的ID與所述軌跡點序列中最末尾的觸點ID是否相等;如果當(dāng)前觸點的ID與所述軌跡點序列中最末尾的觸點ID相等,則不做任何操作;如果當(dāng)前觸點的ID與所述軌跡點序列中最末尾的觸點ID不相等,則將當(dāng)前觸點添加在所述軌跡點序列的末尾,并繪制所述當(dāng)前觸點,以及繪制當(dāng)前觸點和所述軌跡點序列中前一觸點之間的軌跡線;
[0018]當(dāng)所述觸點軌跡序列的元素數(shù)至少為2時,還需判斷當(dāng)前觸點的ID與所述軌跡點序列中末尾倒數(shù)第二個觸點ID是否相等,如果當(dāng)前觸點的ID與所述軌跡點序列中末尾倒數(shù)第二個的觸點ID相等,則清除所述軌跡點序列中末尾的兩個觸點,并清除與所述軌跡點序列中末尾的兩個觸點之間的軌跡線;如果當(dāng)前觸點的ID與所述軌跡點序列中最末尾和末尾倒數(shù)第二個的觸點ID都不相等,則將當(dāng)前觸點添加在所述軌跡點序列的末尾,并繪制所述當(dāng)前觸點,以及繪制當(dāng)前觸點和所述軌跡點序列中前一觸點之間的軌跡線。
[0019]優(yōu)選的,在上述的方法中,所述手勢指令對應(yīng)的觸點軌跡序列與預(yù)先存儲的觸點軌跡序列指令是否相符,如果否,則包括:
[0020]判斷導(dǎo)航系統(tǒng)是否處于設(shè)置環(huán)境,如果是,則根據(jù)當(dāng)前的觸點軌跡序列與程序操作進(jìn)行相關(guān)聯(lián);
[0021]其中,所述設(shè)置環(huán)境指,從導(dǎo)航系統(tǒng)的設(shè)置操作中啟動九宮格手勢操作模式。
[0022]優(yōu)選的,在上述的方法中,所述判斷所述手勢指令對應(yīng)的觸點軌跡序列與預(yù)先存儲的觸點軌跡序列指令是否相符,包括:
[0023]當(dāng)同樣次序的所述觸點軌跡序列中的觸點ID與預(yù)先存儲的觸點軌跡序列指令中的觸點ID全部一致時,則判斷所述手勢指令對應(yīng)的觸點軌跡序列與預(yù)先存儲的觸點軌跡序列指令相符;
[0024]或者,
[0025]分別讀取所述手勢指令對應(yīng)的觸點軌跡序列中相鄰兩個觸點ID,按照ID由小到大的關(guān)系構(gòu)建軌跡線的ID,并構(gòu)建所有軌跡線的第一 ID集合,當(dāng)所述第一 ID集合與預(yù)先構(gòu)建的已有序列中的第二軌跡線ID集合,當(dāng)所述第一 ID集合與所述第二軌跡線ID集合完全一致時,則判斷所述手勢指令對應(yīng)的觸點軌跡序列與預(yù)先存儲的觸點軌跡序列指令相符。
[0026]本發(fā)明實施例還公開一種導(dǎo)航系統(tǒng)手勢指令輸入裝置,包括:
[0027]感應(yīng)單元,用于在九宮格手勢指令模式下,感應(yīng)用戶的手勢指令,接收并存儲所述手勢指令對應(yīng)的觸點軌跡序列;
[0028]第一判斷單元,用于判斷九宮格的觸點狀態(tài)未發(fā)生改變的時間,或,用戶斷絕與觸摸屏之間接觸的時間是否超過設(shè)定時間,如果是,則完成所述手勢指令的輸入,然后啟動第二判斷單元;
[0029]所述第二判斷單元,用于判斷所述手勢指令對應(yīng)的觸點軌跡序列與預(yù)先存儲的觸點軌跡序列指令是否相符,如果是,則根據(jù)所述手勢指令對應(yīng)的觸點軌跡序列執(zhí)行相應(yīng)的導(dǎo)航操作程序。
[0030]優(yōu)選的,在上述的裝置中,所述感應(yīng)單元,包括檢測模塊以及第一判斷模塊:
[0031]所述檢測模塊,用于檢測手勢指令是否落在九宮格輸入框的范圍內(nèi),如果是,則啟動所述第一判斷模塊,所述第一判斷模塊用于判斷所述手勢指令落在九宮格的觸點范圍。
[0032]優(yōu)選的,在上述的裝置中,所述第一判斷模塊,包括第一判斷子模塊,第二判斷子模塊:
[0033]所述第一判斷子模塊,用于判斷當(dāng)觸點的感應(yīng)區(qū)為圓形時,計算用戶+手指在觸摸屏上的接觸點坐標(biāo)與所有九宮格觸點之間距離的最小值,如果該最小距離小于設(shè)定的距離范圍,則用戶輸入的手勢指令落在具有最小距離的九宮格觸點上;
[0034]所述第二判斷子模塊,用于判斷當(dāng)觸點的感應(yīng)區(qū)為方形時,計算用戶手指在觸摸屏上的接觸點坐標(biāo)介于最大和最小坐標(biāo)值之間的第一觸點感應(yīng)區(qū),所述手勢指令落第一感應(yīng)區(qū)內(nèi)的九宮格觸點上。
[0035]優(yōu)選的,在上述的裝置中,所述感應(yīng)單元,包括:
[0036]第一感應(yīng)模塊,第二感應(yīng)模塊、以及第三感應(yīng)模塊;
[0037]所述第一感應(yīng)模塊用于,當(dāng)所述觸點軌跡序列元素數(shù)為O時,則確定接收到的觸點為第一觸點,將所述第一觸點的觸點ID添加至所述觸點軌跡序列中,繪制并存儲所述第一觸點。
[0038]所述第二感應(yīng)模塊用于,當(dāng)所述觸點軌跡序列的元素數(shù)至少為I時,則判斷所述接收到的觸點與所述軌跡點序列中最末尾的觸點之間是否存在觸點軌跡跨越,如果不存在觸點軌跡跨越,則確定接收到的觸點為當(dāng)前觸點;如果存在觸點軌跡跨越,則將跨越的觸點和所述接收到的觸點依次作為當(dāng)前觸點,判斷當(dāng)前觸點的ID與所述軌跡點序列中最末尾的觸點ID是否相等;如果當(dāng)