本發(fā)明涉及信號顯示技術領域,特別是涉及重疊窗口中顯示內(nèi)容的處理方法和系統(tǒng)。
背景技術:
各類智能顯示設備,尤其是大屏顯示設備,在生活或者工作中的應用頻率越來越高。很多情況下,智能顯示設備的顯示界面在同一時間需要通過多個顯示窗口進行相應內(nèi)容的顯示,多個顯示窗口可能重疊在一起,即顯示界面的某個顯示窗口可能被其他一個或者幾個顯示窗口所覆蓋。
智能顯示設備的控制器在控制上述重疊的顯示窗口顯示相應內(nèi)容的過程中,需要分別對各個顯示窗口對應的數(shù)據(jù)內(nèi)容進行繪制和渲染等處理,其數(shù)據(jù)處理量極大,影響控制器的處理速度,容易導致控制器對相應顯示內(nèi)容的處理效率低。
技術實現(xiàn)要素:
基于此,有必要針對傳統(tǒng)方案控制相互重疊的多個窗口進行數(shù)據(jù)顯示的過程中,容易導致控制器對相應顯示內(nèi)容的處理效率低的技術問題,提供一種重疊窗口中顯示內(nèi)容的處理方法和系統(tǒng)。
一種重疊窗口中顯示內(nèi)容的處理方法,包括如下步驟:
分別獲取各個顯示窗口在顯示界面對應的窗口坐標;
在所述窗口坐標出現(xiàn)重疊時,分別獲取各個顯示窗口對應的可見區(qū)域和非可見區(qū)域;
在對各個顯示窗口的顯示內(nèi)容進行繪制時,分別繪制各個顯示窗口可見區(qū)域部分的顯示內(nèi)容;
將繪制后的顯示內(nèi)容分別發(fā)送至相應的顯示區(qū)域。
一種重疊窗口中顯示內(nèi)容的處理系統(tǒng),包括:
第一獲取模塊,用于分別獲取各個顯示窗口在顯示界面對應的窗口坐標;
第二獲取模塊,用于在所述窗口坐標出現(xiàn)重疊時,分別獲取各個顯示窗口對應的可見區(qū)域和非可見區(qū)域;
繪制模塊,用于在對各個顯示窗口的顯示內(nèi)容進行繪制時,分別繪制各個顯示窗口可見區(qū)域部分的顯示內(nèi)容;
顯示模塊,用于將繪制后的顯示內(nèi)容分別發(fā)送至相應的顯示區(qū)域。
上述重疊窗口中顯示內(nèi)容的處理方法和系統(tǒng),可以在所述窗口坐標出現(xiàn)重疊時,分別獲取各個顯示窗口對應的可見區(qū)域和非可見區(qū)域,以便在對各個顯示窗口的顯示內(nèi)容進行繪制時,分別繪制各個顯示窗口可見區(qū)域部分的顯示內(nèi)容,再將繪制后的顯示內(nèi)容分別發(fā)送至相應的顯示區(qū)域,進行其顯示等工作;上述對重疊窗口中顯示內(nèi)容的處理過程中,僅需繪制可見區(qū)域對應的顯示內(nèi)容,無需對被覆蓋部分(非可見區(qū)域)對應的顯示內(nèi)容進行繪制等處理,有效降低了相應智能顯示設備控制器的工作量,從而可以提高控制器處理相應顯示內(nèi)容的效率,有助于提高相應顯示內(nèi)容的渲染和顯示的效果。
附圖說明
圖1為一個實施例的重疊窗口中顯示內(nèi)容的處理方法流程圖;
圖2為一個實施例的顯示窗口重疊示意圖;
圖3為一個實施例的重疊窗口中顯示內(nèi)容的處理系統(tǒng)結構示意圖。
具體實施方式
下面結合附圖對本發(fā)明的重疊窗口中顯示內(nèi)容的處理方法和系統(tǒng)的具體實施方式作詳細描述。
參考圖1,圖1所示為一個實施例的重疊窗口中顯示內(nèi)容的處理方法流程圖,包括如下步驟:
S10,分別獲取各個顯示窗口在顯示界面對應的窗口坐標;
上述窗口坐標可以包括相應顯示窗口左邊界至右邊界的水平坐標段,以及上述顯示窗口上邊界至下邊界的豎直坐標段。上述水平坐標段和豎直坐標段構成的坐標范圍為各個顯示窗口在顯示界面的窗口坐標對應的坐標范圍。
在一個實施例中,上述分別獲取各個顯示窗口在顯示界面對應的窗口坐標的步驟之后,還可以包括:
分別讀取各個窗口坐標對應的坐標范圍,獲取存在交集的各個坐標范圍,并分別確定各個存在交集的坐標范圍對應的窗口坐標;
將所確定的窗口坐標判定為重疊的窗口坐標。
本實施例中,窗口坐標對應的坐標范圍的交集即為重疊區(qū)域對應的范圍,存在交集的坐標范圍對應的窗口坐標即為重疊的窗口坐標。
S20,在所述窗口坐標出現(xiàn)重疊時,分別獲取各個顯示窗口對應的可見區(qū)域和非可見區(qū)域;
上述窗口坐標出現(xiàn)重疊的情形可以參考圖2所示,圖2中,顯示窗口61、顯示窗口62和顯示窗口63的窗口坐標均存在重疊的部分,其中,顯示窗口61和顯示窗口62之間的重疊區(qū)域為坐標(A1,B1)至坐標(A2,B2)對應的區(qū)域,即上述重疊區(qū)域的水平坐標段為A1至A2,重疊區(qū)域的豎直坐標段為B1至B2。
在一個實施例中,所述分別獲取各個顯示窗口對應的可見區(qū)域和不可見區(qū)域的過程可以包括:
分別獲取各個顯示窗口的重疊區(qū)域和非重疊區(qū)域;
將顯示窗口的非重疊區(qū)域確定為該顯示窗口的可見區(qū)域;
檢測所述重疊區(qū)域中,各個顯示窗口的窗口層次,根據(jù)所述窗口層次確定所述重疊區(qū)域的首層窗口和非首層窗口;
將首層窗口的重疊區(qū)域確定為相應顯示窗口的可見區(qū)域,將非首層窗口的重疊區(qū)域確定為相應顯示窗口的非可見區(qū)域。
本實施例所確定的可見區(qū)域和不可見區(qū)域具有較高的準確性。
作為一個實施例,上述分別獲取各個顯示窗口的重疊區(qū)域和非重疊區(qū)域的步驟可以包括:
分別讀取各個窗口坐標對應的坐標范圍,檢測各個坐標范圍之間的交集;
將所述交集對應的區(qū)域確定為重疊區(qū)域,將非交集對應的區(qū)域確定為非重疊區(qū)域。
上述坐標范圍之間的交集可以為兩個坐標范圍之間的交集,也可以為兩個以上坐標范圍之間的交集。
S30,在對各個顯示窗口的顯示內(nèi)容進行繪制時,分別繪制各個顯示窗口可見區(qū)域部分的顯示內(nèi)容;
上述步驟分別繪制各個顯示窗口可見區(qū)域部分的顯示內(nèi)容,有效減少了繪制的工作量,且保證了可見區(qū)域部分的顯示內(nèi)容的繪制工作質量,進而保證了顯示窗口可見區(qū)域的顯示質量,從而確保了相應的用戶體驗。
在一個實施例中,上述分別繪制各個顯示窗口可見區(qū)域部分的顯示內(nèi)容的過程可以包括:
獲取各個顯示窗口可見區(qū)域的可見坐標范圍;
獲取所述可見坐標范圍對應的顯示內(nèi)容進行繪制。
本實施例可以保證所繪制的顯示內(nèi)容的準確性。
S40,將繪制后的顯示內(nèi)容分別發(fā)送至相應的顯示區(qū)域。
上述步驟將繪制后的顯示內(nèi)容分別發(fā)送至相應的顯示區(qū)域,使顯示窗口接收上述繪制后的顯示內(nèi)容實現(xiàn)相應顯示內(nèi)容的顯示,其中各個顯示窗口可見區(qū)域部分所對應的顯示內(nèi)容是經(jīng)過繪制或者渲染的,具有較好的顯示效果,使用戶所可以流暢的觀看到各個顯示窗口可見區(qū)域所顯示的內(nèi)容,保證了用戶所觀看的顯示內(nèi)容的顯示質量。
本發(fā)明提供的重疊窗口中顯示內(nèi)容的處理方法,可以在所述窗口坐標出現(xiàn)重疊時,分別獲取各個顯示窗口對應的可見區(qū)域和非可見區(qū)域,以便在對各個顯示窗口的顯示內(nèi)容進行繪制時,分別繪制各個顯示窗口可見區(qū)域部分的顯示內(nèi)容,再將繪制后的顯示內(nèi)容分別發(fā)送至相應的顯示區(qū)域,進行其顯示等工作;上述對重疊窗口中顯示內(nèi)容的處理過程中,僅需繪制可見區(qū)域對應的顯示內(nèi)容,無需對被覆蓋部分(非可見區(qū)域)對應的顯示內(nèi)容進行繪制等處理,有效降低了相應智能顯示設備控制器的工作量,從而可以提高控制器處理相應顯示內(nèi)容的效率,有助于提高相應顯示內(nèi)容的渲染和顯示的效果。
在一個實施例中,上述分別繪制各個顯示窗口可見區(qū)域部分的顯示內(nèi)容的過程可以包括:
檢測相互重疊的顯示窗口的個數(shù);
若所述顯示窗口的個數(shù)大于設定個數(shù),則設置各個相互重疊的顯示窗口的優(yōu)先級;
根據(jù)所述優(yōu)先級繪制各個顯示窗口可見區(qū)域對應的顯示內(nèi)容。
本實施例可以根據(jù)所述優(yōu)先級依次繪制各個顯示窗口可見區(qū)域對應的顯示內(nèi)容,即先繪制優(yōu)先級高的顯示窗口對應的顯示內(nèi)容;也可以根據(jù)優(yōu)先級對各個顯示窗口進行分批處理,一次繪制一批顯示窗口對應的顯示內(nèi)容,以兼顧繪制工作的質量和效率。
上述設定個數(shù)可以根據(jù)智能顯示設備的控制器的性能進行設置,如設置為4、5或者6等值。若所述顯示窗口的個數(shù)小于或者等于設定個數(shù),控制器同時對智能顯示設備顯示界面當前各個顯示窗口可見區(qū)域部分對應的顯示內(nèi)容進行繪制,在其處理能力內(nèi),不會影響控制器的各項處理能力;若顯示窗口的個數(shù)大于設定個數(shù),控制器同時對各個顯示窗口可見區(qū)域部分對應的顯示內(nèi)容進行繪制,其處理的工作量超限,可能會影響控制器的各項處理能力,因而需要設置各個相互重疊的顯示窗口的優(yōu)先級,根據(jù)上述優(yōu)先級對各個顯示窗口可見區(qū)域對應的顯示內(nèi)容進行分批繪制,以保證控制器的各項處理能力不受影響,從而保證控制器的工作質量。
作為一個實施例,上述設置各個相互重疊的顯示窗口的優(yōu)先級的過程可以包括:
分別獲取各個顯示窗口可見區(qū)域對應的可見面積;
根據(jù)所述可見面積從大至小對相應的顯示窗口進行排序;
根據(jù)顯示窗口的排列順序設置所述顯示窗口的優(yōu)先級;其中,任意相鄰的兩個顯示窗口中,前一個顯示窗口優(yōu)先級高于后一個顯示窗口。
本實施例將可見面積大的顯示窗口的優(yōu)先級設置為高優(yōu)先級,使繪制過程中,先繪制可見面積大的顯示窗口對應的顯示內(nèi)容,以保證后續(xù)繪制工作的流暢性。
作為一個實施例,上述根據(jù)所述可見面積從大至小對相應的顯示窗口進行排序的過程包括:
獲取各個顯示窗口可見面積的大小,檢測可見面積大小相等的顯示窗口;
獲取可見面積大小相等的顯示窗口對應的窗口層次;
按照所述可見面積從大至小對顯示窗口進行排序,若顯示窗口的可見面積大小相等,則將窗口層次小的顯示窗口排列在前。
本實施例按照可見面積大小,以及相應顯示窗口的窗口層次對各個顯示窗口進行排序,依據(jù)排序結果進行優(yōu)先級的設置,進而進行繪制順序的確定,有利于提高繪制后相應顯示內(nèi)容的顯示效果。
在一個實施例中,上述根據(jù)所述優(yōu)先級繪制各個顯示窗口可見區(qū)域對應的顯示內(nèi)容的過程可以包括:
A、在第一幀繪制過程中,將優(yōu)先級高的設定個數(shù)個顯示窗口可見區(qū)域對應的顯示內(nèi)容進行繪制;
B、在下一幀繪制過程中,將其他顯示窗口中優(yōu)先級高的設定個數(shù)個顯示窗口可見區(qū)域對應的顯示內(nèi)容進行繪制;
C、重復執(zhí)行步驟B,直至繪制完所有顯示窗口可見區(qū)域對應的顯示內(nèi)容。
本實施例對顯示窗口對應的顯示內(nèi)容進行分批繪制,先繪制優(yōu)先級相對高的一批(設定個數(shù))顯示窗口分別對應的顯示內(nèi)容,接著繪制下一批顯示窗口分別對應的顯示內(nèi)容,直至將各個顯示窗口對應的顯示內(nèi)容繪制完,既可以保證繪制質量,又可以保證相應的繪制效率。
在上述重疊窗口中顯示內(nèi)容的處理方法的實際使用過程中,可以首先設置顯示窗口區(qū)域大小屬性、層次窗口列表屬性以及剩下可見區(qū)域大小屬性,每當拼接墻添加一個窗口時,可以對遍歷拼接墻等智能顯示設備的所有窗口,判斷新增的窗口區(qū)域與拼接墻上窗口的可見區(qū)域是交有交集,若交集剛把新增的窗口信息插入到層次窗口列表并修改可見區(qū)域的大??;上述過程的算法可以參考如下代碼:
當窗口置頂(點擊/移動被遮掩的窗口),遍歷置頂窗口(首層窗口)的層次窗口列表,并把置頂窗口插入到置頂窗口層次列表每個窗口的層次列表并修改其可見區(qū)域。最后把置頂窗口的層次窗口列表清空,并設置置頂窗口的可見區(qū)域等于自身窗口區(qū)域大??;上述過程的算法可以參考如下代碼:
參考圖3所示,圖3為一個實施例的重疊窗口中顯示內(nèi)容的處理系統(tǒng)結果示意圖,包括:
第一獲取模塊10,用于分別獲取各個顯示窗口在顯示界面對應的窗口坐標;
第二獲取模塊20,用于在所述窗口坐標出現(xiàn)重疊時,分別獲取各個顯示窗口對應的可見區(qū)域和非可見區(qū)域;
繪制模塊30,用于在對各個顯示窗口的顯示內(nèi)容進行繪制時,分別繪制各個顯示窗口可見區(qū)域部分的顯示內(nèi)容;
顯示模塊40,用于將繪制后的顯示內(nèi)容分別發(fā)送至相應的顯示區(qū)域。
本發(fā)明提供的重疊窗口中顯示內(nèi)容的處理系統(tǒng)與本發(fā)明提供的重疊窗口中顯示內(nèi)容的處理方法一一對應,在所述重疊窗口中顯示內(nèi)容的處理方法的實施例闡述的技術特征及其有益效果均適用于重疊窗口中顯示內(nèi)容的處理系統(tǒng)的實施例中,特此聲明。
以上所述實施例的各技術特征可以進行任意的組合,為使描述簡潔,未對上述實施例中的各個技術特征所有可能的組合都進行描述,然而,只要這些技術特征的組合不存在矛盾,都應當認為是本說明書記載的范圍。
以上所述實施例僅表達了本發(fā)明的幾種實施方式,其描述較為具體和詳細,但并不能因此而理解為對發(fā)明專利范圍的限制。應當指出的是,對于本領域的普通技術人員來說,在不脫離本發(fā)明構思的前提下,還可以做出若干變形和改進,這些都屬于本發(fā)明的保護范圍。因此,本發(fā)明專利的保護范圍應以所附權利要求為準。