本發(fā)明涉及應用程序控制領域,尤其涉及一種觸控應用的運行控制方法、裝置及電子設備。
背景技術:
目前,越來越多的智能顯示終端采用觸摸屏,用戶通過觸摸屏的觸控操作,例如點擊觸摸屏上的控件,實現(xiàn)對智能顯示終端中觸控應用的控制,以此來進行正常的人機交互。
然而,發(fā)明人在實現(xiàn)本發(fā)明實施例的過程中發(fā)現(xiàn):在諸如VR(Virtual Reality,虛擬顯示)、AR(Augmented Reality,增強現(xiàn)實)等頭戴顯示器的應用環(huán)境下,對一些原生的觸控應用來說,用戶因無法點擊觸摸屏,而不能完成對觸控應用的控制。
技術實現(xiàn)要素:
本發(fā)明目的旨在提供一種觸控應用的運行控制方法、裝置及電子設備,方便用戶在頭戴顯示器的應用環(huán)境下對觸控應用的有效控制。
第一方面,本發(fā)明實施例提供一種觸控應用的運行控制方法,所述方法包括:
檢測用戶的外接設備輸入事件;
根據檢測到的外接設備輸入事件,確定所述外接設備輸入事件模擬的用戶觸控事件;
根據所述外接設備輸入事件模擬的用戶觸控事件,控制所述觸控應用執(zhí)行所述外接設備輸入事件模擬的用戶觸控事件對應的功能。
其中,所述外接設備包括搖桿和物理按鍵;
所述外接設備輸入事件包括搖桿擺動事件和搖桿擺動停止后的物理按鍵點擊事件;
所述外接設備輸入事件模擬的用戶觸控事件包括用戶界面點擊事件;
所述根據檢測到的外接設備輸入事件,確定所述外接設備輸入事件模擬的用戶觸控事件包括:
根據所述搖桿擺動事件,確定所述搖桿的擺動位置坐標;
根據所述搖桿的擺動位置坐標,確定所述搖桿的擺動位置對應的屏幕位置坐標;
根據搖桿擺動停止后的物理按鍵點擊事件,確定所述外接設備輸入事件模擬的用戶觸控事件為用戶點擊所述搖桿停止擺動后的擺動位置對應屏幕位置的用戶界面點擊事件。
其中,所述根據所述搖桿的擺動位置坐標,確定所述搖桿的擺動位置對應的屏幕位置坐標包括:
根據如下公式,確定所述搖桿的擺動位置對應的屏幕位置坐標:
xs=(1+xt/cos(45))·width/2
ys=(1+yt/sin(45))·height/2
其中,(xt,yt)是所述搖桿的擺動位置坐標,width和height分別是屏幕的寬度和長度,(xs,ys)是屏幕位置坐標。
其中,所述根據檢測到的外接設備輸入事件,確定所述外接設備輸入事件模擬的用戶觸控事件包括:
根據檢測到的外接設備輸入事件、以及預先確定的外接設備輸入事件與用戶觸控事件的對應關系,確定所述外接設備輸入事件模擬的用戶觸控事件。
其中,所述外接設備包括物理按鍵;
所述外接設備輸入事件包括物理按鍵點擊事件;
所述用戶觸控事件包括滑動軌跡輸入事件;
所述物理按鍵點擊事件與所述滑動軌跡輸入事件一一對應。
其中,所述方法還包括:
提供模擬事件配置界面,提示用戶配置物理按鍵點擊事件與滑動軌跡輸入事件的對應關系;
檢測用戶通過所述配置界面、針對預定的滑動軌跡輸入的物理按鍵點擊事件;
根據所述用戶輸入的物理按鍵點擊事件,獲取并記錄所述物理按鍵點擊事件與滑動軌跡輸入事件的對應關系,所述對應關系包括:
所述滑動軌跡的起點坐標、所述滑動軌跡的終點坐標、所述物理按鍵點擊事件中的按鍵標識和按鍵點擊順序;
所述根據檢測到的外接設備輸入事件、以及預先確定的外接設備輸入事件與用戶觸控事件的對應關系,確定所述外接設備輸入事件模擬的用戶觸控事件包括:
根據所述檢測到的物理按鍵點擊事件中的按鍵標識和按鍵點擊順序、以及預先記錄的所述對應關系,確定所述物理按鍵點擊事件模擬的滑動軌跡輸入事件。
其中,在確定滑動軌跡輸入事件后,所述方法還包括:
根據所述對應關系中的起點坐標和終點坐標,確定所述滑動軌跡輸入事件對應的滑動軌跡,在屏幕上以漸出的方式顯示所述滑動軌跡。
其中,所述在屏幕上以漸出的方式顯示所述滑動軌跡包括:
根據所述滑動軌跡的起點坐標顯示所述滑動軌跡的起始像素點;
根據如下公式確定所述滑動軌跡的中間點坐標,并根據所述中間點坐標,顯示所述滑動軌跡的中間像素點:
xm=xa+(xb-xa)m/n
ym=y(tǒng)a+(yb-ya)m/n
其中,(xa,ya)為所述滑動軌跡的起點坐標,(xb,yb)為所述滑動軌跡的終點坐標,(xm,ym)為所述滑動軌跡的第m個點的坐標,m的取值范圍是[0,n],n為所述滑動軌跡上像素點的數量,;
根據所述滑動軌跡的終點坐標,顯示所述滑動軌跡的終止像素點。
第二方面,本發(fā)明實施例提供一種觸控應用的運行控制裝置,所述裝置包括:
第一檢測模塊,用于檢測用戶的外接設備輸入事件;
觸控事件確定模塊,用于根據檢測到的外接設備輸入事件,確定所述外接設備輸入事件模擬的用戶觸控事件;
控制模塊,用于根據所述外接設備輸入事件模擬的用戶觸控事件,控制所述觸控應用執(zhí)行所述外接設備輸入事件模擬的用戶觸控事件對應的功能。
其中所述外接設備包括搖桿和物理按鍵;
所述外接設備輸入事件包括搖桿擺動事件和搖桿擺動停止后的物理按鍵點擊事件;
所述外接設備輸入事件模擬的用戶觸控事件包括用戶界面點擊事件;
所述觸控事件確定模塊包括:
擺動位置坐標確定單元,用于根據所述搖桿擺動事件,確定所述搖桿的擺動位置坐標;
屏幕位置坐標確定單元,用于根據所述搖桿的擺動位置坐標,確定所述搖桿的擺動位置對應的屏幕位置坐標;
用戶界面點擊事件確定單元,用于根據搖桿擺動停止后的物理按鍵點擊事件,確定所述外接設備輸入事件模擬的用戶觸控事件為用戶點擊所述搖桿停止擺動后的擺動位置對應屏幕位置的用戶界面點擊事件。
其中,所述屏幕位置坐標確定單元用于根據如下公式,確定所述搖桿的擺動位置對應的屏幕位置坐標:
xs=(1+xt/cos(45))·width/2
ys=(1+yt/sin(45))·height/2
其中,(xt,yt)是所述搖桿的擺動位置坐標,width和height分別是屏幕的寬度和長度,(xs,ys)是屏幕位置坐標。
其中,所述觸控事件確定模塊用于根據檢測到的外接設備輸入事件、以及預先確定的外接設備輸入事件與用戶觸控事件的對應關系,確定所述外接設備輸入事件模擬的用戶觸控事件。
其中,所述外接設備包括物理按鍵;
所述外接設備輸入事件包括物理按鍵點擊事件;
所述用戶觸控事件包括滑動軌跡輸入事件;
所述物理按鍵點擊事件與所述滑動軌跡輸入事件一一對應。
其中,所述裝置還包括:
對應關系提示模塊,用于提供模擬事件配置界面,提示用戶配置物理按鍵點擊事件與滑動軌跡輸入事件的對應關系;
第二檢測模塊,用于檢測用戶通過所述配置界面、針對預定的滑動軌跡輸入的物理按鍵點擊事件;
對應關系獲取模塊,用于根據所述用戶輸入的物理按鍵點擊事件,獲取并記錄所述物理按鍵點擊事件與滑動軌跡輸入事件的對應關系,其中,所述對應關系包括:所述滑動軌跡的起點坐標、所述滑動軌跡的終點坐標、所述物理按鍵點擊事件中的按鍵標識和按鍵點擊順序;
所述觸控事件確定模塊用于根據所述檢測到的物理按鍵點擊事件中的按鍵標識和按鍵點擊順序、以及預先記錄的所述對應關系,確定所述物理按鍵點擊事件模擬的滑動軌跡輸入事件。
其中,所述裝置還包括:漸出顯示模塊,用于在確定滑動軌跡輸入事件后,根據所述對應關系中的起點坐標和終點坐標,確定所述滑動軌跡輸入事件對應的滑動軌跡,在屏幕上以漸出的方式顯示所述滑動軌跡。
其中,所述漸出顯示模塊包括:
起始像素點顯示單元,用于根據所述滑動軌跡的起點坐標顯示所述滑動軌跡的起始像素點;
中間像素點顯示單元,用于根據如下公式確定所述滑動軌跡的中間點坐標,并根據所述中間點坐標,顯示所述滑動軌跡的中間像素點:
xm=xa+(xb-xa)m/n
ym=y(tǒng)a+(yb-ya)m/n
其中,(xa,ya)為所述滑動軌跡的起點坐標,(xb,yb)為所述滑動軌跡的終點坐標,(xm,ym)為所述滑動軌跡的第m個點的坐標,m的取值范圍是[0,n],n為所述滑動軌跡上像素點的數量,;
終止像素點顯示單元,用于根據所述滑動軌跡的終點坐標,顯示所述滑動軌跡的終止像素點。
第三方面,本發(fā)明實施例還提供了一種電子設備,包括:
至少一個處理器;以及,
與所述至少一個處理器通信連接的存儲器;其中,
所述存儲器存儲有可被所述至少一個處理器執(zhí)行的指令,所述指令被所述至少一個處理器執(zhí)行,以使所述至少一個處理器能夠執(zhí)行如上所述的方法。
第四方面,本發(fā)明實施例還提供了一種非易失性計算機可讀存儲介質,所述計算機可讀存儲介質存儲有計算機可執(zhí)行指令,所述計算機可執(zhí)行指令用于使計算機執(zhí)行如上所述的方法。
第五方面,本發(fā)明實施例還提供了一種計算機程序產品,所述計算機程序產品包括存儲在非易失性計算機可讀存儲介質上的計算機程序,所述計算機程序包括程序指令,當所述程序指令被計算機執(zhí)行時,使所述計算機執(zhí)行如上所述的方法。
本發(fā)明實施例提供的一種觸控應用的運行控制方法、裝置及電子設備,通過檢測用戶的外接設備輸入事件,根據外接設備輸入事件確定外接設備輸入事件模擬的用戶觸控事件,進而根據用戶觸控事件控制觸控應用執(zhí)行用戶觸控事件對應的功能,方便用戶在頭戴顯示器的應用環(huán)境下對觸控應用的有效控制。
附圖說明
一個或多個實施例通過與之對應的附圖中的圖片進行示例性說明,這些示例性說明并不構成對實施例的限定,附圖中具有相同參考數字標號的元件表示為類似的元件,除非有特別申明,附圖中的圖不構成比例限制。
圖1是本發(fā)明實施例提供的一種觸控應用的運行控制方法的流程圖;
圖2是屏幕位置坐標與搖桿的運動范圍的一示例圖
圖3是外接設備的一示例圖;
圖4是以漸出方式顯示的滑動軌跡的示例圖;
圖5是本發(fā)明實施例提供的一種觸控應用的運行控制裝置的功能框圖;
圖6是圖5中所示觸控事件確定模塊的功能框圖;
圖7是本發(fā)明又一實施例提供的一種觸控應用的運行控制裝置的功能框圖;
圖8是圖7中所示漸出顯示模塊的功能框圖;
圖9是本發(fā)明實施例提供的執(zhí)行觸控應用的運行控制方法的電子設備的硬件結構示意圖。
具體實施方式
為了使本發(fā)明的目的、技術方案及優(yōu)點更加清楚明白,以下結合附圖及實施例,對本發(fā)明進行進一步詳細說明。應當理解,此處所描述的具體實施例僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
此外,下面所描述的本發(fā)明各個實施方式中所涉及到的技術特征只要彼此之間未構成沖突就可以相互組合。
下面結合具體附圖對本發(fā)明實施例作具體闡述。
本發(fā)明實施例中,觸控應用是指設計者為觸摸屏終端設計的、需要以觸控方式進行操控的應用。在VR等頭戴顯示器的應用環(huán)境下,用戶因無法點擊觸摸屏,而不能完成對觸控應用的控制。
據此,本發(fā)明提供一種觸控應用的運行控制方法和裝置,利用外接輸入來模擬觸控輸入,即將外接輸入與觸控輸入對應起來,使得在VR等頭戴顯示器的應用場景下,同樣可以使用觸控應用,例如,玩觸控游戲等。
圖1是本發(fā)明實施例提供的一種觸控應用的運行控制方法,該方法包括:步驟11、步驟12和步驟13。其中,
步驟11、檢測用戶的外接設備輸入事件。
在本發(fā)明實施例中,外接設備包括但不限于手柄、飛行搖桿、游戲方向盤等,外接設備可以配置有搖桿、物理按鍵、觸控板中的任意一種或多種。外接設備輸入事件可以包括搖桿擺動事件、物理按鍵點擊事件、觸控板觸摸事件中的任意一種或多種。
步驟12、根據檢測到的外接設備輸入事件,確定外接設備輸入事件模擬的用戶觸控事件。
舉例來說,在本發(fā)明實施例中,用戶觸控事件包括用戶界面點擊事件和/或滑動軌跡輸入事件。用戶界面點擊事件可以是用戶界面單次點擊事件,也可以是用戶界面雙擊事件,還可以是用戶界面多次點擊事件。
可使外接設備輸入事件與用戶觸控事件具有預設的對應關系,該預設的對應關系可以根據實際應用的需要進行設定和調整。
步驟13、根據外接設備輸入事件模擬的用戶觸控事件,控制觸控應用執(zhí)行外接設備輸入事件模擬的用戶觸控事件對應的功能。
在本發(fā)明實施例中,觸控應用類型不限,任何觸控應用均可,例如可以是射擊、競技、棋牌等類型的游戲應用,也可以是生活服務、教育等類型的應用。
根據用戶觸控事件可以控制觸控應用來執(zhí)行用戶觸控事件對應的功能,用戶觸控事件對應的功能可以是發(fā)射子彈、加速、漂移等功能,需要根據觸控應用進行對應設置。
需要強調的是,用戶觸控事件與觸控應用之間的控制關系,即用戶如何通過觸控來操控該觸控應用,是觸控應用所固有的,即預先規(guī)定好,亦即開發(fā)觸控應用時定義好的。在觸控應用正常的應用環(huán)境下,用戶執(zhí)行一種觸控行為,觸控應用相應執(zhí)行相關功能。例如,用戶點擊屏幕,該事件對應的功能是返回上級菜單,則發(fā)生該觸控事件,觸控應用即返回上級菜單。在本發(fā)明的一種實施方式中,利用點擊外接設備的向上方向鍵,模擬用戶點擊屏幕,即用點擊向上方向鍵這個外接設備輸入事件,模擬用戶點擊屏幕這個用戶觸控事件,在檢測到用戶點擊向上方向鍵,按照用戶點擊屏幕這個事件,返回上級菜單。
本發(fā)明實施例提供的一種觸控應用的運行控制方法,通過檢測用戶的外接設備輸入事件,根據外接設備輸入事件確定外接設備輸入事件模擬的用戶觸控事件,進而根據用戶觸控事件控制觸控應用執(zhí)行用戶觸控事件對應的功能,方便用戶在頭戴顯示器的應用環(huán)境下對觸控應用的有效控制,用戶可以在VR和AR等應用環(huán)境下也能使用觸控應用。
在一可選實施例中,外接設備包括搖桿和物理按鍵,外接設備輸入事件包括搖桿擺動事件和搖桿擺動停止后的物理按鍵點擊事件,外接設備輸入事件模擬的用戶觸控事件包括用戶界面點擊事件,則步驟12具體包括:步驟一、步驟二和步驟三。其中,
步驟一、根據搖桿擺動事件,確定搖桿的擺動位置坐標。
在本實施例中,在用戶操作搖桿擺動時產生搖桿擺動事件,并根據搖桿擺動事件確定搖桿的擺動位置坐標,即搖桿的位置坐標,在擺動過程中,搖桿的位置坐標不斷變化。
如圖2所示,根據搖桿擺動的特點,可以將搖桿的運動范圍規(guī)范在坐標原點為(0,0)、半徑為1的圓形坐標區(qū)域201。
步驟二、根據搖桿的擺動位置坐標,確定搖桿的擺動位置對應的屏幕位置坐標。
在本發(fā)明實施例中,搖桿的擺動位置坐標與屏幕位置坐標是一種映射對應關系,例如,可以根據如下公式確定搖桿的擺動位置對應的屏幕位置坐標:
xs=(1+xt/cos(45))·width/2
ys=(1+yt/sin(45))·height/2
其中,(xt,yt)是搖桿的擺動位置坐標,width和height分別是屏幕的寬度和長度,(xs,ys)是屏幕位置坐標。外接設備可以適用于對頭戴顯示器的屏幕上觸控應用的運行控制。
為了實現(xiàn)搖桿的擺動位置坐標能夠對應到屏幕上的每一個屏幕位置坐標,使得搖桿的擺動位置坐標利用率最大化,首先,將擺動位置坐標界定在半徑為1的圓形坐標區(qū)域,然后,將屏幕位置坐標界定的坐標區(qū)域對應到內接于所述圓形坐標區(qū)域201的正方形坐標區(qū)域202內。
步驟三、根據搖桿擺動停止后的物理按鍵點擊事件,確定外接設備輸入事件模擬的用戶觸控事件為用戶點擊搖桿停止擺動后的擺動位置對應屏幕位置的用戶界面點擊事件。
在本發(fā)明實施例中,搖桿擺動停止后,用戶點擊物理按鍵生成物理按鍵點擊事件,進而根據物理按鍵點擊事件將用戶觸控事件確定為用戶界面點擊事件,其中,用戶點擊擺動位置對應的屏幕位置生成用戶界面點擊事件。
在本實施例中,用戶通過外接設備的搖桿尋找需要點擊的屏幕位置,通過外接設備的物理按鍵進行確認,則搖動搖桿和點擊按鍵這兩個事件對應常規(guī)觸控中的點擊該屏幕位置的點擊事件,用戶通過搖動搖桿和點擊按鍵,完成觸控點擊相應的功能。
在另一可選實施例中,步驟12具體包括:根據檢測到的外接設備輸入事件以及預先確定的外接設備輸入事件與用戶觸控事件的對應關系,確定外接設備輸入事件模擬的用戶觸控事件。
在本發(fā)明實施例中,可以預先確定外接設備輸入事件與用戶觸控事件之間的對應關系,進而根據外接設備輸入事件以及該對應關系,確定外接設備輸入事件模擬的用戶觸控事件。其中,外接設備輸入事件和用戶觸控事件可以是一一對應的,即一種輸入事件唯一對應一種觸控事件。
進一步地,如圖3所示,外接設備包括物理按鍵,外接設備輸入事件包括物理按鍵點擊事件,用戶觸控事件包括滑動軌跡輸入事件,物理按鍵點擊事件與滑動軌跡輸入事件一一對應,舉例說明如下:
外接設備手柄上設置有物理按鍵,其包括編號為A、B、C的三個物理按鍵,按照不同順序依次按下上述三個物理按鍵分別對應不同的滑動軌跡輸入事件,例如,按照順序依次按下編號為A、C、B的三個物理按鍵對應的滑動軌跡輸入事件為直線,又如,按照順序依次按下編號為B、A、C的三個物理按鍵對應的滑動軌跡輸入事件為弧形曲線。
用戶可以預先設置物理按鍵點擊與輸入滑動軌跡的對應關系,即進一步地,一種觸控應用的運行控制方法還包括:
第一步驟、提供模擬事件配置界面,提示用戶配置物理按鍵點擊事件與滑動軌跡輸入事件的對應關系。
在該步驟中,提供的模擬事件配置界面顯示于屏幕上,用于提示用戶配置物理按鍵點擊事件與滑動軌跡輸入事件的對應關系。
第二步驟、檢測用戶通過配置界面并且針對預定的滑動軌跡輸入的物理按鍵點擊事件。
第三步驟、根據用戶輸入的物理按鍵點擊事件,獲取并記錄物理按鍵點擊事件與滑動軌跡輸入事件的對應關系。其中,對應關系包括:滑動軌跡的起點坐標、滑動軌跡的終點坐標、物理按鍵點擊事件中的按鍵標識和按鍵點擊順序。當然,如果滑動軌跡較復雜,不能通過起點和終點表征,可以進一步記錄若干特征點,例如觀點,交叉點等等坐標,只需所記錄的內容可以表證該滑動軌跡即可。
其中,步驟12具體包括:根據檢測到的物理按鍵點擊事件中的按鍵標識和按鍵點擊順序以及預先記錄的對應關系,確定物理按鍵點擊事件模擬的滑動軌跡輸入事件。
假設操控觸控應用需要三種直線滑動軌跡1,2,3,1為水平線,2為垂直線,3為斜線,則可預先提供一個配置界面,用戶可通過該配置界面輸入與1.2.3對應的按鍵點擊事件,比如,點擊ABC,對應軌跡1,點擊BCA,對應軌跡2,點擊CAB,對應軌跡3,則,后續(xù)在用戶輸入ABC時,相當于用戶觸控輸入了軌跡1,即執(zhí)行軌跡1對應的功能,例如,翻頁功能。
進一步的,在步驟12后,還可根據對應關系中的起點坐標和終點坐標,確定滑動軌跡輸入事件對應的滑動軌跡并顯示出來。
可選的,在確定滑動軌跡輸入事件后,所述方法還包括第四步驟,即,在屏幕上以漸出的方式顯示滑動軌跡。以漸出的方式顯示出來,使用戶軌跡感覺像在終端上滑動出來。
如圖4所示,在該步驟中,漸出的方式是指滑動軌跡401在從起點坐標402到終點坐標403的過程中逐漸顯現(xiàn)出來。
上述第四步驟具體包括:
根據滑動軌跡的起點坐標顯示滑動軌跡的起始像素點;
根據如下公式確定滑動軌跡的中間點坐標,并根據中間點坐標,顯示滑動軌跡的中間像素點:
xm=xa+(xb-xa)m/n
ym=y(tǒng)a+(yb-ya)m/n
其中,(xa,ya)為滑動軌跡的起點坐標,(xb,yb)為滑動軌跡的終點坐標,(xm,ym)為滑動軌跡的第m個點的坐標,m的取值范圍是[0,n],n為滑動軌跡上像素點的數量,;
根據滑動軌跡的終點坐標,顯示滑動軌跡的終止像素點。
在本發(fā)明實施例中,可以將滑動軌跡的起點坐標所在的像素點確定為滑動軌跡的起始像素點,將滑動軌跡的終點坐標所在的像素點確定為滑動軌跡的終止像素點。
圖5是本發(fā)明實施例提供的一種觸控應用的運行控制裝置50,該裝置50包括:第一檢測模塊51、觸控事件確定模塊52和控制模塊53。其中,
第一檢測模塊51用于檢測用戶的外接設備輸入事件。
在本發(fā)明實施例中,外接設備包括但不限于手柄、飛行搖桿、游戲方向盤等,外接設備可以配置有搖桿、物理按鍵、觸控板中的任意一種或多種。外接設備輸入事件可以包括搖桿擺動事件、物理按鍵點擊事件、觸控板觸摸事件中的任意一種或多種。
觸控事件確定模塊52用于根據檢測到的外接設備輸入事件,確定外接設備輸入事件模擬的用戶觸控事件。
在本發(fā)明實施例中,用戶觸控事件包括用戶界面點擊事件和/或滑動軌跡輸入事件。用戶界面點擊事件可以是用戶界面單次點擊事件,也可以是用戶界面雙擊事件。外接設備輸入事件與用戶觸控事件具有預設的對應關系,該預設的對應關系可以根據實際應用的需要進行設定和調整。
控制模塊53用于根據外接設備輸入事件模擬的用戶觸控事件,控制觸控應用執(zhí)行外接設備輸入事件模擬的用戶觸控事件對應的功能。
在本發(fā)明實施例中,觸控應用可以是射擊、競技、棋牌等類型的游戲應用,也可以是生活服務、教育等類型的應用。根據用戶觸控事件可以控制觸控應用來執(zhí)行用戶觸控事件對應的功能,用戶觸控事件對應的功能可以是發(fā)射子彈、加速、漂移等功能,需要根據觸控應用進行對應設置。
本發(fā)明實施例提供的一種觸控應用的運行控制裝置,通過第一檢測模塊檢測用戶的外接設備輸入事件,觸控事件確定模塊根據外接設備輸入事件確定外接設備輸入事件模擬的用戶觸控事件,進而控制模塊根據用戶觸控事件控制觸控應用執(zhí)行用戶觸控事件對應的功能,方便用戶在頭戴顯示器的應用環(huán)境下對觸控應用的有效控制。
在一可選實施例中,外接設備包括搖桿和物理按鍵,外接設備輸入事件包括搖桿擺動事件和搖桿擺動停止后的物理按鍵點擊事件,外接設備輸入事件模擬的用戶觸控事件包括用戶界面點擊事件,則如圖6所示,觸控事件確定模塊52包括:擺動位置坐標確定單元521、屏幕位置坐標確定單元522和用戶界面點擊事件確定單元523。其中,
擺動位置坐標確定單元521用于根據所述搖桿擺動事件,確定所述搖桿的擺動位置坐標。
在本發(fā)明實施例中,在用戶操作搖桿擺動時產生搖桿擺動事件,并根據搖桿擺動事件生成相對于外接設備的擺動位置坐標。根據搖桿擺動的特點,可以將搖桿的運動范圍規(guī)范在坐標原點為(0,0)、半徑為1的圓形坐標區(qū)域。
屏幕位置坐標確定單元522用于根據所述搖桿的擺動位置坐標,確定所述搖桿的擺動位置對應的屏幕位置坐標。
在本發(fā)明實施例中,屏幕位置坐標確定單元522具體用于根據如下公式確定搖桿的擺動位置對應的屏幕位置坐標:
xs=(1+xt/cos(45))·width/2
ys=(1+yt/sin(45))·height/2
其中,(xt,yt)是搖桿的擺動位置坐標,width和height分別是屏幕的寬度和長度,(xs,ys)是屏幕位置坐標。外接設備可以適用于對頭戴顯示器的屏幕上觸控應用的運行控制。
為了實現(xiàn)搖桿的擺動位置坐標能夠對應到屏幕上的每一個屏幕位置坐標,使得搖桿的擺動位置坐標利用率最大化,首先,將擺動位置坐標界定在半徑為1的圓形坐標區(qū)域,然后,將屏幕位置坐標界定的坐標區(qū)域對應到內接于所述圓形坐標區(qū)域的正方形坐標區(qū)域。
用戶界面點擊事件確定單元523用于根據搖桿擺動停止后的物理按鍵點擊事件,確定所述外接設備輸入事件模擬的用戶觸控事件為用戶點擊所述搖桿停止擺動后的擺動位置對應屏幕位置的用戶界面點擊事件。
在本發(fā)明實施例中,搖桿擺動停止后,用戶點擊物理按鍵生成物理按鍵點擊事件,進而根據物理按鍵點擊事件將用戶觸控事件確定為用戶界面點擊事件,其中,用戶點擊擺動位置對應的屏幕位置生成用戶界面點擊事件。
在另一可選實施例中,觸控事件確定模塊52用于根據檢測到的外接設備輸入事件、以及預先確定的外接設備輸入事件與用戶觸控事件的對應關系,確定外接設備輸入事件模擬的用戶觸控事件。
在本發(fā)明實施例中,可以預先確定外接設備輸入事件與用戶觸控事件之間的對應關系,進而根據外接設備輸入事件以及該對應關系,確定外接設備輸入事件模擬的用戶觸控事件。
進一步地,外接設備包括物理按鍵,外接設備輸入事件包括物理按鍵點擊事件,用戶觸控事件包括滑動軌跡輸入事件,物理按鍵點擊事件與滑動軌跡輸入事件一一對應,舉例說明如下:
物理按鍵包括編號為A、B、C的三個物理按鍵,按照不同順序依次按下上述三個物理按鍵分別對應不同的滑動軌跡輸入事件,例如,按照順序依次按下編號為A、C、B的三個物理按鍵對應的滑動軌跡輸入事件為直線,又如,按照順序依次按下編號為B、A、C的三個物理按鍵對應的滑動軌跡輸入事件為弧形曲線。
圖7是本發(fā)明實施例提供的一種觸控應用的運行控制裝置70,該裝置70包括:第一檢測模塊71、觸控事件確定模塊72、控制模塊73、對應關系提示模塊74、第二檢測模塊75、對應關系獲取模塊76和漸出顯示模塊77。其中,
第一檢測模塊71用于檢測用戶的外接設備輸入事件。
觸控事件確定模塊72用于根據檢測到的物理按鍵點擊事件中的按鍵標識和按鍵點擊順序、以及預先記錄的對應關系,確定物理按鍵點擊事件模擬的滑動軌跡輸入事件。
控制模塊73用于根據外接設備輸入事件模擬的用戶觸控事件,控制觸控應用執(zhí)行外接設備輸入事件模擬的用戶觸控事件對應的功能。
對應關系提示模塊74用于提供模擬事件配置界面,提示用戶配置物理按鍵點擊事件與滑動軌跡輸入事件的對應關系。
第二檢測模塊75用于檢測用戶通過配置界面、針對預定的滑動軌跡輸入的物理按鍵點擊事件。
對應關系獲取模塊76用于根據用戶輸入的物理按鍵點擊事件,獲取并記錄物理按鍵點擊事件與滑動軌跡輸入事件的對應關系,其中,對應關系包括:滑動軌跡的起點坐標、滑動軌跡的終點坐標、物理按鍵點擊事件中的按鍵標識和按鍵點擊順序。
漸出顯示模塊77用于在確定滑動軌跡輸入事件后,根據對應關系中的起點坐標和終點坐標,確定滑動軌跡輸入事件對應的滑動軌跡,在屏幕上以漸出的方式顯示滑動軌跡。
在本發(fā)明實施例中,漸出的方式是指滑動軌跡在從起點坐標到終點坐標的過程中逐漸顯現(xiàn)出來。
如圖8所示,漸出顯示模塊77包括:起始像素點顯示單元771、中間像素點顯示單元772和終止像素點顯示單元773。其中,
起始像素點顯示單元771用于根據滑動軌跡的起點坐標顯示滑動軌跡的起始像素點;
中間像素點顯示單元772用于根據如下公式確定滑動軌跡的中間點坐標,并根據中間點坐標,顯示滑動軌跡的中間像素點:
xm=xa+(xb-xa)m/n
ym=y(tǒng)a+(yb-ya)m/n
其中,(xa,ya)為滑動軌跡的起點坐標,(xb,yb)為滑動軌跡的終點坐標,(xm,ym)為滑動軌跡的第m個點的坐標,m的取值范圍是[0,n],n為滑動軌跡上像素點的數量,;
終止像素點顯示單元773用于根據滑動軌跡的終點坐標,顯示滑動軌跡的終止像素點。
在本發(fā)明實施例中,可以將滑動軌跡的起點坐標所在的像素點確定為滑動軌跡的起始像素點,將滑動軌跡的終點坐標所在的像素點確定為滑動軌跡的終止像素點。
圖9是本發(fā)明實施例提供的一種執(zhí)行觸控應用的運行控制方法的電子設備90的硬件結構示意圖。如圖9所示,該電子設備90包括:
一個或多個處理器91以及存儲器92,圖9中以一個處理器91為例。
處理器91和存儲器92可以通過總線或者其他方式連接,圖9中以通過總線連接為例。
存儲器92作為一種非易失性計算機可讀存儲介質,可用于存儲非易失性軟件程序、非易失性計算機可執(zhí)行程序以及模塊,如本發(fā)明實施例中的觸控應用的運行控制方法對應的程序指令/模塊(例如,附圖5所示的第一檢測模塊51、觸控事件確定模塊52和控制模塊53,附圖6所示的擺動位置坐標確定單元521、屏幕位置坐標確定單元522和用戶界面點擊事件確定單元523,附圖7所示的第一檢測模塊71、觸控事件確定模塊72、控制模塊73、對應關系提示模塊74、第二檢測模塊75、對應關系獲取模塊76和漸出顯示模塊77,附圖8所示的起始像素點顯示單元771、中間像素點顯示單元772和終止像素點顯示單元773)。處理器91通過運行存儲在存儲器92中的非易失性軟件程序、指令以及模塊,從而執(zhí)行電子設備的各種功能應用以及數據處理,即實現(xiàn)上述方法實施例觸控應用的運行控制方法。
存儲器92可以包括存儲程序區(qū)和存儲數據區(qū),其中,存儲程序區(qū)可存儲操作系統(tǒng)、至少一個功能所需要的應用程序;存儲數據區(qū)可存儲根據觸控應用的運行控制裝置的使用所創(chuàng)建的數據等。此外,存儲器92可以包括高速隨機存取存儲器,還可以包括非易失性存儲器,例如至少一個磁盤存儲器件、閃存器件、或其他非易失性固態(tài)存儲器件。在一些實施例中,存儲器92可選包括相對于處理器91遠程設置的存儲器,這些遠程存儲器可以通過網絡連接至電子設備。上述網絡的實例包括但不限于互聯(lián)網、企業(yè)內部網、局域網、移動通信網及其組合。
所述一個或者多個模塊存儲在所述存儲器92中,當被所述一個或者多個處理器91執(zhí)行時,執(zhí)行上述任意方法實施例中的觸控應用的運行控制方法,例如,執(zhí)行以上描述的圖1中的方法步驟11至步驟13,附圖5所示的第一檢測模塊51、觸控事件確定模塊52和控制模塊53,附圖6所示的擺動位置坐標確定單元521、屏幕位置坐標確定單元522和用戶界面點擊事件確定單元523,附圖7所示的第一檢測模塊71、觸控事件確定模塊72、控制模塊73、對應關系提示模塊74、第二檢測模塊75、對應關系獲取模塊76和漸出顯示模塊77,附圖8所示的起始像素點顯示單元771、中間像素點顯示單元772和終止像素點顯示單元773的功能。
上述產品可執(zhí)行本發(fā)明實施例所提供的方法,具備執(zhí)行方法相應的功能模塊和有益效果。未在本實施例中詳盡描述的技術細節(jié),可參見本發(fā)明實施例所提供的方法。
本發(fā)明實施例的電子設備以多種形式存在,包括但不限于:
(1)移動通信設備:這類設備的特點是具備移動通信功能,并且以提供話音、數據通信為主要目標。這類終端包括:智能手機(例如iPhone)、多媒體手機、功能性手機,以及低端手機等。
(2)超移動個人計算機設備:這類設備屬于個人計算機的范疇,有計算和處理功能,一般也具備移動上網特性。這類終端包括:PDA、MID和UMPC設備等,例如iPad。
(3)便攜式娛樂設備:這類設備可以顯示和播放多媒體內容。該類設備包括:音頻、視頻播放器(例如iPod),掌上游戲機,電子書,以及智能玩具和便攜式車載導航設備。
(4)其他具有數據交互功能的電子裝置。
本發(fā)明實施例提供了一種非易失性計算機可讀存儲介質,所述計算機可讀存儲介質存儲有計算機可執(zhí)行指令,該計算機可執(zhí)行指令被一個或多個處理器執(zhí)行,例如圖9中的一個處理器91,可使得上述一個或多個處理器可執(zhí)行上述任意方法實施例中的觸控應用的運行控制方法,例如,執(zhí)行以上描述的圖1中的方法步驟11至步驟13,附圖5所示的第一檢測模塊51、觸控事件確定模塊52和控制模塊53,附圖6所示的擺動位置坐標確定單元521、屏幕位置坐標確定單元522和用戶界面點擊事件確定單元523,附圖7所示的第一檢測模塊71、觸控事件確定模塊72、控制模塊73、對應關系提示模塊74、第二檢測模塊75、對應關系獲取模塊76和漸出顯示模塊77,附圖8所示的起始像素點顯示單元771、中間像素點顯示單元772和終止像素點顯示單元773的功能。
以上所描述的裝置實施例僅僅是示意性的,其中所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個地方,或者也可以分布到多個網絡單元上。可以根據實際的需要選擇其中的部分或者全部模塊來實現(xiàn)本實施例方案的目的。
通過以上的實施方式的描述,本領域普通技術人員可以清楚地了解到各實施方式可借助軟件加通用硬件平臺的方式來實現(xiàn),當然也可以通過硬件。本領域普通技術人員可以理解實現(xiàn)上述實施例方法中的全部或部分流程是可以通過計算機程序來指令相關的硬件來完成,所述的程序可存儲于一計算機可讀取存儲介質中,該程序在執(zhí)行時,可包括如上述各方法的實施例的流程。其中,所述的存儲介質可為磁碟、光盤、只讀存儲記憶體(Read-Only Memory,ROM)或隨機存儲記憶體(Random Access Memory,RAM)等。
最后應說明的是:以上實施例僅用以說明本申請的技術方案,而非對其限制;在本申請的思路下,以上實施例或者不同實施例中的技術特征之間也可以進行組合,步驟可以以任意順序實現(xiàn),并存在如上所述的本申請的不同方面的許多其它變化,為了簡明,它們沒有在細節(jié)中提供;盡管參照前述實施例對本申請進行了詳細的說明,本領域的普通技術人員應當理解:其依然可以對前述各實施例所記載的技術方案進行修改,或者對其中部分技術特征進行等同替換;而這些修改或者替換,并不使相應技術方案的本質脫離本申請各實施例技術方案的范圍。