專(zhuān)利名稱:即時(shí)通訊工具中應(yīng)用3d切換面板的方法及系統(tǒng)的制作方法
即時(shí)通訊工具中應(yīng)用3D切換面板的方法及系統(tǒng)
技術(shù)領(lǐng)域:
本發(fā)明涉及計(jì)算機(jī)技術(shù),尤其涉及一種即時(shí)通訊工具中應(yīng)用3D切換面板的方法及系統(tǒng)。
背景技術(shù):
網(wǎng)絡(luò)即時(shí)通訊工具發(fā)展到今天,已經(jīng)被大多數(shù)的網(wǎng)民所接受,成為了用戶必不可少的軟件工具,不僅在平時(shí)的休閑娛樂(lè)中且在用戶的工作中也得到了廣泛的使用,因此用戶對(duì)即時(shí)通訊工具的易用性、穩(wěn)定性等方面提出了較高的要求。傳統(tǒng)的即時(shí)通訊工具呈現(xiàn)給用戶的界面窗口是個(gè)二維的圖像,通過(guò)點(diǎn)擊界面上的相應(yīng)按鈕展示不同的面板來(lái)實(shí)現(xiàn)面板的切換,例如點(diǎn)擊“聯(lián)系人”按鈕,則展示“聯(lián)系人”面板的內(nèi)容,點(diǎn)擊“最近聯(lián)系人”按鈕, 則展示“最近聯(lián)系人”面板的內(nèi)容,因此傳統(tǒng)的即時(shí)通訊工具無(wú)法應(yīng)用3D切換面板。而在其他應(yīng)用3D的場(chǎng)景中,例如3D游戲中的旋轉(zhuǎn),則是對(duì)窗口里面所呈現(xiàn)的某一個(gè)元素旋轉(zhuǎn),這種旋轉(zhuǎn)僅僅是對(duì)旋轉(zhuǎn)對(duì)象進(jìn)行旋轉(zhuǎn),而不是針對(duì)窗口本身。
發(fā)明內(nèi)容基于此,有必要提供一種能對(duì)即時(shí)通訊工具的窗口進(jìn)行旋轉(zhuǎn)的即時(shí)通訊工具中應(yīng)用3D切換面板的方法。一種即時(shí)通訊工具中應(yīng)用3D切換面板的方法,包括以下步驟創(chuàng)建窗口,根據(jù)所述窗口創(chuàng)建平面模型;接收觸發(fā)旋轉(zhuǎn)的指令;旋轉(zhuǎn)所述平面模型帶動(dòng)即時(shí)通訊工具的界面窗口進(jìn)行旋轉(zhuǎn)。優(yōu)選的,所述創(chuàng)建的窗口四邊預(yù)留預(yù)設(shè)個(gè)像素,使得去除預(yù)留像素后的剩余窗口大小與即時(shí)通訊工具的界面窗口大小一致。優(yōu)選的,所述創(chuàng)建平面模型的步驟具體是創(chuàng)建與所述創(chuàng)建的窗口大小一致并覆蓋所述窗口的Viewport3D,設(shè)置Viewport3D的透明度為0,在Viewport3D中創(chuàng)建平面模型。優(yōu)選的,所述旋轉(zhuǎn)平面模型帶動(dòng)即時(shí)通訊工具的界面窗口進(jìn)行旋轉(zhuǎn)的步驟具體是計(jì)算使所述平面模型在Viewp0rt3D中成像后高度與所述即時(shí)通訊工具的界面窗口高度一致的縮放比例;根據(jù)所述縮放比例縮放平面模型;對(duì)即時(shí)通訊工具呈現(xiàn)給用戶的界面截圖,并將截圖貼在縮放后的平面模型的正面上;對(duì)即時(shí)通訊工具的界面窗口旋轉(zhuǎn)后需要呈現(xiàn)的界面截圖,并將截圖貼在縮放后的平面模型的背面上;設(shè)置Viewp0rt3D的透明度為 1 ;利用繞指定軸進(jìn)行指定角度的三維旋轉(zhuǎn)方法對(duì)縮放后的平面模型進(jìn)行旋轉(zhuǎn)。進(jìn)一步優(yōu)選的,對(duì)縮放后的平面模型進(jìn)行旋轉(zhuǎn)的步驟具體是使用 AxisAngleRotation3D方法對(duì)縮放后的平面模型進(jìn)行180度旋轉(zhuǎn);所述方法還包括對(duì)縮放后的平面模型進(jìn)行旋轉(zhuǎn)之后設(shè)置Viewp0rt3D的透明度為0,顯示所述縮放后的平面模型的背面成像后的目標(biāo)窗口。此外,還有必要提供一種能對(duì)即時(shí)通訊工具的窗口進(jìn)行旋轉(zhuǎn)的即時(shí)通訊工具中應(yīng)用3D切換面板的系統(tǒng)。一種即時(shí)通訊工具中應(yīng)用3D切換面板的系統(tǒng),包括窗口創(chuàng)建模塊,用于創(chuàng)建窗口 ;模型創(chuàng)建模塊,用于根據(jù)所述窗口創(chuàng)建平面模型;觸發(fā)器,接收觸發(fā)旋轉(zhuǎn)的指令;旋轉(zhuǎn)模塊,當(dāng)所述觸發(fā)器接收到觸發(fā)旋轉(zhuǎn)的指令時(shí),旋轉(zhuǎn)所述平面模型帶動(dòng)即時(shí)通訊工具的界面窗口進(jìn)行旋轉(zhuǎn)。優(yōu)選的,所述窗口創(chuàng)建模塊創(chuàng)建的窗口四邊預(yù)留預(yù)設(shè)個(gè)像素,使得去除預(yù)留像素后的剩余窗口大小與即時(shí)通訊工具的界面窗口大小一致。優(yōu)選的,所述模型創(chuàng)建模塊用于創(chuàng)建與所述創(chuàng)建的窗口大小一致并覆蓋所述窗口的Viewport3D,在Viewport3D中創(chuàng)建平面模型;所述系統(tǒng)還包括設(shè)置Viewp0rt3D透明度的透明度設(shè)置模塊,所述透明度設(shè)置模塊在所述模型創(chuàng)建模塊創(chuàng)建VieWport3D后設(shè)置VieWport3D的透明度為0。優(yōu)選的,還包括模型縮放模塊,用于計(jì)算使所述平面模型在Viewp0rt3D中成像后高度與所述即時(shí)通訊工具的界面窗口高度一致的縮放比例,根據(jù)所述縮放比例縮放平面模型;所述旋轉(zhuǎn)模塊包括貼圖模塊,用于對(duì)即時(shí)通訊工具呈現(xiàn)給用戶的界面截圖,并將截圖貼在縮放后的平面模型的正面上,以及對(duì)即時(shí)通訊工具的界面窗口旋轉(zhuǎn)后需要呈現(xiàn)的界面截圖,并將截圖貼在縮放后的平面模型的背面上;所述透明度設(shè)置模塊在所述貼圖模塊將截圖貼在縮放后的平面模型的正面和背面后設(shè)置VieWport3D的透明度為1 ;所述旋轉(zhuǎn)模塊利用繞指定軸進(jìn)行指定角度的三維旋轉(zhuǎn)方法對(duì)縮放后的平面模型進(jìn)行旋轉(zhuǎn)。進(jìn)一步優(yōu)選的,所述旋轉(zhuǎn)模塊還用于使用AxisAngleRotatioM方法對(duì)縮放后的平面模型進(jìn)行180度旋轉(zhuǎn);所述透明度設(shè)置模塊還用于在旋轉(zhuǎn)模塊對(duì)縮放后的平面模型進(jìn)行旋轉(zhuǎn)后設(shè)置 Viewport3D的透明度為0。上述即時(shí)通訊工具中應(yīng)用3D切換面板的方法及系統(tǒng),在接收到觸發(fā)旋轉(zhuǎn)的指令后,利用創(chuàng)建的窗口及平面模型對(duì)即時(shí)通訊的界面窗口進(jìn)行旋轉(zhuǎn),從而實(shí)現(xiàn)應(yīng)用3D切換即時(shí)通訊工具中的面板,滿足了用戶的個(gè)性化需求,提高了即時(shí)通訊工具的易用性。
圖1為一個(gè)實(shí)施例中即時(shí)通訊工具中應(yīng)用3D切換面板的方法流程圖;圖2為一個(gè)實(shí)施例中創(chuàng)建窗口的示意圖;圖3為一個(gè)實(shí)施例中創(chuàng)建平面模型的示意圖;圖4為一個(gè)實(shí)施例中平面模型成像的原理圖;圖5為一個(gè)實(shí)施例中對(duì)即時(shí)通訊工具的界面窗口進(jìn)行旋轉(zhuǎn)的方法流程圖;圖6為一個(gè)實(shí)施例中即時(shí)通訊工具中應(yīng)用3D切換面板的效果圖;圖7為一個(gè)實(shí)施例中即時(shí)通訊工具中應(yīng)用3D切換面板的系統(tǒng)結(jié)構(gòu)示意圖;圖8為另一個(gè)實(shí)施例中即時(shí)通訊工具中應(yīng)用3D切換面板的系統(tǒng)結(jié)構(gòu)示意圖。
具體實(shí)施方式如圖1所示,一種即時(shí)通訊工具中應(yīng)用3D切換面板的方法,包括以下步驟步驟S10,創(chuàng)建窗口,根據(jù)窗口創(chuàng)建平面模型。如圖2所示,窗口 A為創(chuàng)建的窗口, 其四邊預(yù)留了預(yù)設(shè)個(gè)像素(例如20像素),使得去除預(yù)留像素后的剩余窗口大小與即時(shí)通訊工具的界面窗口大小一致。如圖2中的窗口 B為可視窗口,其與即時(shí)通訊工具的界面窗口大小一致,顯示可呈現(xiàn)的內(nèi)容,從用戶的視覺(jué)上看,窗口 B中的內(nèi)容就是即時(shí)通訊工具的界面窗口,窗口 B旋轉(zhuǎn)后顯示為窗口 C。在一個(gè)實(shí)施方式中,創(chuàng)建與窗口 A大小一致并覆蓋窗口 A的VieWport3D,并設(shè)置 Viewport3D 的透明度為 0,在 Viewport3D 中創(chuàng)建平面模型。Viewport3D 是 WPF(Windows Presentation Foundation,微軟新一代圖形系統(tǒng),運(yùn)行在.NETFramework3. 0架構(gòu)下,為用戶界面、2D/3D圖形、文檔和媒體提供了統(tǒng)一的描述和操作方法)提供的可以顯示3D建模的組件。在三維坐標(biāo)系中的X軸與Y軸的平面上,創(chuàng)建一個(gè)矩形,該矩形的中心與坐標(biāo)系原點(diǎn)重合,所創(chuàng)建的矩形即為平面模型。如圖3所示,平面模型由P1、P2、P3和P4四個(gè)點(diǎn)直線連接構(gòu)成。圖4示出了平面模型成像的原理,平面模型成像后在成像區(qū)顯示的為目標(biāo)窗口, 即可視窗口。由于平面模型直接成像后的高度與目標(biāo)窗口的高度不一樣,因此需要對(duì)平面模型進(jìn)行縮放,以使得平面模型成像后高度與即時(shí)通訊工具的界面窗口高度一致。平面模型的縮放比例的計(jì)算原理如下設(shè)定目標(biāo)窗口(即可視區(qū)域)的高度為height_target,可視區(qū)域的寬度為 width_target,平面模型的高度為height_object,寬度為width_object,攝像機(jī)與平面模型的垂直距離為zPositior^Camera,攝像機(jī)到成像區(qū)(即目標(biāo)窗口)的垂直距離為 Position,攝像機(jī)的水平視角為FieldOfView,單位為度,計(jì)算時(shí)需轉(zhuǎn)化為弧度。定義平面模型在X軸上的縮放比例為ScaleXmulriple,在Y軸上的縮放比例為ScaleYmulriple。因此有(width_object*ScaleXmulriple) / zPosition_Camera = tg(Field0fVieW*PI/180/2),根據(jù)上式得到平面模型在X軸上的縮放比例的計(jì)算公式為ScaleXmulriple = (zPosition_Camera*tg(Field0fView/2))/width_object,又有Position = width—object/tg(Field0fView*PI/180/2)tanY = height—target/PositiontanY = (height_object^ScaleYmulriple)/zPostion_CameraScaleYmulriple = ((height_target*zPostion_Camera) /Position) /height_ object,根據(jù)上式得到平面模型在Y軸上的縮放比例的計(jì)算公式為ScaleYmulriple = ((height_target*zPostion_Camera*tg(Field0fView*PI/18 0/2))/Width_ObjeCt)/height_ObjeCt,因此,獲取到平面模型的高度和寬度、攝像機(jī)的水平視角及攝像機(jī)與平面模型的垂直距離后,根據(jù)目標(biāo)窗口的高度,即可計(jì)算得到平面模型的縮放比例。由于實(shí)際創(chuàng)建的窗口(如圖2中的窗口 A)相對(duì)于即時(shí)通訊工具的界面窗口 (如窗口 B)預(yù)留了預(yù)設(shè)個(gè)像素,當(dāng)即時(shí)通訊工具的界面窗口呈現(xiàn)給用戶的平面如窗口 B時(shí),CN 102279732 A
說(shuō)明書(shū)
4/5頁(yè)
根據(jù)縮放比例縮放后的平面模型應(yīng)與窗口 A除去預(yù)留像素后剩余部分大小一致。步驟S20,接收觸發(fā)旋轉(zhuǎn)的指令。可以設(shè)置多種方式觸發(fā)旋轉(zhuǎn),例如,在即時(shí)通訊工具的面板上設(shè)置按鍵,通過(guò)點(diǎn)擊按鍵觸發(fā)旋轉(zhuǎn)即時(shí)通訊工具的界面窗口 ;又例如,設(shè)置使用鼠標(biāo)點(diǎn)擊即時(shí)通訊工具的界面窗口中的區(qū)域,通過(guò)按住鼠標(biāo)的左鍵或右鍵后的移動(dòng)操作來(lái)觸發(fā)旋轉(zhuǎn)即時(shí)通訊工具的界面窗口。步驟S30,旋轉(zhuǎn)所述平面模型帶動(dòng)即時(shí)通訊工具的界面窗口進(jìn)行旋轉(zhuǎn)。該實(shí)施例中,已創(chuàng)建好與窗口大小一致的VieWport3D,該VieWport3D覆蓋了整個(gè)窗口,并設(shè)置 Viewport3D的透明度為0,因此窗口對(duì)于用戶來(lái)說(shuō)是可視的,在VieWport3D中創(chuàng)建平面模型。在一個(gè)實(shí)施例中,如圖5所示,步驟S30的具體過(guò)程如下步驟S301中,計(jì)算使平面模型在VieWport3D中成像后高度與即時(shí)通訊工具的界面窗口高度一致的縮放比例。在創(chuàng)建了平面模型后,根據(jù)平面模型的高度和寬度按照上述公式即可計(jì)算得到平面模型在X軸及Y軸上的縮放比例。步驟S302,根據(jù)縮放比例縮放平面模型??s放后的平面模型成像后與目標(biāo)窗口 (即時(shí)通訊工具的界面窗口)大小一致。步驟S303,對(duì)即時(shí)通訊工具呈現(xiàn)給用戶的界面截圖,并將截圖貼在縮放后的平面模型的正面上。該實(shí)施例中,采用GeometryModeUD方法(提供為模型設(shè)置貼圖的方法) 將截圖貼在縮放后的平面模型的正面上。步驟S304,對(duì)即時(shí)通訊工具的界面窗口旋轉(zhuǎn)后需要呈現(xiàn)的界面截圖,并將截圖貼在縮放后的平面模型的背面上。也采用GeometryModeUD方法將截圖貼在縮放后的平面模型的背面上。步驟S305,設(shè)置Viewport3D的透明度為1。由于Viewport3D的透明度為1, Viewp0rt3D覆蓋住了窗口,因此即時(shí)通訊工具呈現(xiàn)給用戶的界面被隱藏。步驟S306,利用繞指定軸進(jìn)行指定角度的三維旋轉(zhuǎn)方法對(duì)縮放后的平面模型進(jìn)行旋轉(zhuǎn)。該實(shí)施例中,利用AxisAngleRotatior^D方法(作用于模型的一種方法,使得模型按照指定角度旋轉(zhuǎn))對(duì)縮放后的平面模型進(jìn)行旋轉(zhuǎn),旋轉(zhuǎn)180度后,設(shè)置Viewp0rt3D的透明度為0,即Viewp0rt3D被隱藏,顯示縮放后的平面模型背面成像后的目標(biāo)窗口,即將即時(shí)通訊工具旋轉(zhuǎn)后需要顯示的界面呈現(xiàn)給用戶。如圖6所示,在狀態(tài)1,即時(shí)通訊工具呈現(xiàn)給用戶的界面為“聯(lián)系人”面板。觸發(fā)旋轉(zhuǎn)后,即時(shí)通訊工具的界面窗口進(jìn)行旋轉(zhuǎn),經(jīng)過(guò)狀態(tài)2 6,最后呈現(xiàn)給用戶的界面為“基本設(shè)置”面板,從而實(shí)現(xiàn)了應(yīng)用3D切換即時(shí)通訊工具中的面板,滿足了用戶的個(gè)性化需求,提高了即時(shí)通訊工具的易用性。如圖7所示,一種即時(shí)通訊工具中應(yīng)用3D切換面板的系統(tǒng),包括窗口創(chuàng)建模塊10、 模型創(chuàng)建模塊20、觸發(fā)器30和旋轉(zhuǎn)模塊40,其中窗口創(chuàng)建模塊10用于創(chuàng)建窗口 ;模型創(chuàng)建模塊20用于創(chuàng)建平面模型;觸發(fā)器30用于接收觸發(fā)旋轉(zhuǎn)的指令;旋轉(zhuǎn)模塊40用于當(dāng)觸發(fā)器30接收到觸發(fā)旋轉(zhuǎn)的指令時(shí),利用窗口及平面模型對(duì)即時(shí)通訊工具的界面窗口進(jìn)行旋轉(zhuǎn)。在一個(gè)實(shí)施方式中,窗口創(chuàng)建模塊10創(chuàng)建的窗口四邊預(yù)留預(yù)設(shè)個(gè)像素,使得去除預(yù)留像素后的剩余窗口大小與即時(shí)通訊工具的界面窗口大小一致。模型創(chuàng)建模塊20創(chuàng)建與窗口創(chuàng)建模塊10創(chuàng)建的窗口大小一致并覆蓋該窗口的Viewport3D,在Viewport3D中創(chuàng)
7建平面模型。如圖3和圖4所示,在三維坐標(biāo)系中的X軸與Y軸的平面上創(chuàng)建平面模型,平面模型在Viewp0rt3D中成像后的目標(biāo)窗口即為可視窗口,為使平面模型成像后的目標(biāo)窗口與即時(shí)通訊工具的界面窗口大小一致,需按照一定比例對(duì)平面模型進(jìn)行縮放,根據(jù)上述公式即可計(jì)算得到平面模型的縮放比例。在一個(gè)實(shí)施例中,如圖8所示,該系統(tǒng)除了包括上述窗口創(chuàng)建模塊10、模型創(chuàng)建模塊20、觸發(fā)器30和旋轉(zhuǎn)模塊40外,還包括透明度設(shè)置模塊50和模型縮放模塊60,其中透明度設(shè)置模塊50在模型創(chuàng)建模塊20創(chuàng)建VieWport3D后設(shè)置VieWport3D的透明度為0,此時(shí)Viewp0rt3D被隱藏;模型縮放模塊60用于計(jì)算使所述平面模型在Viewp0rt3D中成像后高度與所述即時(shí)通訊工具的界面窗口高度一致的縮放比例,根據(jù)所述縮放比例縮放平面模型。該實(shí)施例中,旋轉(zhuǎn)模塊40包括貼圖模塊401,用于對(duì)即時(shí)通訊工具呈現(xiàn)給用戶的界面截圖,并將截圖貼在縮放后的平面模型的正面上,以及對(duì)即時(shí)通訊工具的界面窗口旋轉(zhuǎn)后需要呈現(xiàn)的界面截圖,并將截圖貼在縮放后的平面模型的背面上。透明度設(shè)置模塊50 在貼圖模塊401將截圖貼在縮放后的平面模型的正面和背面后設(shè)置Viewp0rt3D的透明度為1,此時(shí)窗口被Viewp0rt3D覆蓋。旋轉(zhuǎn)模塊40用于利用繞指定軸進(jìn)行指定角度的三維旋轉(zhuǎn)方法對(duì)縮放后的平面模型進(jìn)行旋轉(zhuǎn),具體的,是利用AxisAngleRotatior^D方法(作用于模型的一種方法,使得模型按照指定角度旋轉(zhuǎn))對(duì)縮放后的平面模型進(jìn)行旋轉(zhuǎn),旋轉(zhuǎn)180度后,設(shè)置VieWport3D的透明度為0,即VieWport3D被隱藏,顯示縮放后的平面模型背面成像后的目標(biāo)窗口,即將即時(shí)通訊工具旋轉(zhuǎn)后需要顯示的界面呈現(xiàn)給用戶。以上所述實(shí)施例僅表達(dá)了本發(fā)明的幾種實(shí)施方式,其描述較為具體和詳細(xì),但并不能因此而理解為對(duì)本發(fā)明專(zhuān)利范圍的限制。應(yīng)當(dāng)指出的是,對(duì)于本領(lǐng)域的普通技術(shù)人員來(lái)說(shuō),在不脫離本發(fā)明構(gòu)思的前提下,還可以做出若干變形和改進(jìn),這些都屬于本發(fā)明的保護(hù)范圍。因此,本發(fā)明專(zhuān)利的保護(hù)范圍應(yīng)以所附權(quán)利要求為準(zhǔn)。
權(quán)利要求
1.一種即時(shí)通訊工具中應(yīng)用3D切換面板的方法,包括以下步驟創(chuàng)建窗口,根據(jù)所述窗口創(chuàng)建平面模型;接收觸發(fā)旋轉(zhuǎn)的指令;旋轉(zhuǎn)所述平面模型帶動(dòng)即時(shí)通訊工具的界面窗口進(jìn)行旋轉(zhuǎn)。
2.根據(jù)權(quán)利要求1所述的即時(shí)通訊工具中應(yīng)用3D切換面板的方法,其特征在于,所述創(chuàng)建的窗口四邊預(yù)留預(yù)設(shè)個(gè)像素,使得去除預(yù)留像素后的剩余窗口大小與即時(shí)通訊工具的界面窗口大小一致。
3.根據(jù)權(quán)利要求1或2所述的即時(shí)通訊工具中應(yīng)用3D切換面板的方法,其特征在于,所述創(chuàng)建平面模型的步驟具體是創(chuàng)建與所述創(chuàng)建的窗口大小一致并覆蓋所述窗口的 Viewport3D,設(shè)置Viewport3D的透明度為0,在Viewport3D中創(chuàng)建平面模型。
4.根據(jù)權(quán)利要求3所述的即時(shí)通訊工具中應(yīng)用3D切換面板的方法,其特征在于,所述旋轉(zhuǎn)平面模型帶動(dòng)即時(shí)通訊工具的界面窗口進(jìn)行旋轉(zhuǎn)的步驟具體是計(jì)算使所述平面模型在Viewp0rt3D中成像后高度與所述即時(shí)通訊工具的界面窗口高度一致的縮放比例;根據(jù)所述縮放比例縮放平面模型;對(duì)即時(shí)通訊工具呈現(xiàn)給用戶的界面截圖,并將截圖貼在縮放后的平面模型的正面上;對(duì)即時(shí)通訊工具的界面窗口旋轉(zhuǎn)后需要呈現(xiàn)的界面截圖,并將截圖貼在縮放后的平面模型的背面上;設(shè)置VieWport3D的透明度為1 ;利用繞指定軸進(jìn)行指定角度的三維旋轉(zhuǎn)方法對(duì)縮放后的平面模型進(jìn)行旋轉(zhuǎn)。
5.根據(jù)權(quán)利要求4所述的即時(shí)通訊工具中應(yīng)用3D切換面板的方法,其特征在于,對(duì)縮放后的平面模型進(jìn)行旋轉(zhuǎn)的步驟具體是使用AxisAngleRotatior^D方法對(duì)縮放后的平面模型進(jìn)行180度旋轉(zhuǎn);所述方法還包括對(duì)縮放后的平面模型進(jìn)行旋轉(zhuǎn)之后設(shè)置VieWp0rt3D 的透明度為0,顯示所述縮放后的平面模型的背面成像后的目標(biāo)窗口。
6.一種即時(shí)通訊工具中應(yīng)用3D切換面板的系統(tǒng),其特征在于,包括窗口創(chuàng)建模塊,用于創(chuàng)建窗口 ;模型創(chuàng)建模塊,用于根據(jù)所述窗口創(chuàng)建平面模型;觸發(fā)器,接收觸發(fā)旋轉(zhuǎn)的指令;旋轉(zhuǎn)模塊,當(dāng)所述觸發(fā)器接收到觸發(fā)旋轉(zhuǎn)的指令時(shí),旋轉(zhuǎn)所述平面模型帶動(dòng)即時(shí)通訊工具的界面窗口進(jìn)行旋轉(zhuǎn)。
7.根據(jù)權(quán)利要求6所述的即時(shí)通訊工具中應(yīng)用3D切換面板的系統(tǒng),其特征在于,所述窗口創(chuàng)建模塊創(chuàng)建的窗口四邊預(yù)留預(yù)設(shè)個(gè)像素,使得去除預(yù)留像素后的剩余窗口大小與即時(shí)通訊工具的界面窗口大小一致。
8.根據(jù)權(quán)利要求6或7所述的即時(shí)通訊工具中應(yīng)用3D切換面板的系統(tǒng),其特征在于, 所述模型創(chuàng)建模塊用于創(chuàng)建與所述創(chuàng)建的窗口大小一致并覆蓋所述窗口的Viewp0rt3D,在 Viewport3D中創(chuàng)建平面模型;所述系統(tǒng)還包括設(shè)置Viewp0rt3D透明度的透明度設(shè)置模塊,所述透明度設(shè)置模塊在所述模型創(chuàng)建模塊創(chuàng)建VieWport3D后設(shè)置VieWport3D的透明度為0。
9.根據(jù)權(quán)利要求8所述的即時(shí)通訊工具中應(yīng)用3D切換面板的系統(tǒng),其特征在于,還包括模型縮放模塊,用于計(jì)算使所述平面模型在Viewp0rt3D中成像后高度與所述即時(shí)通訊工具的界面窗口高度一致的縮放比例,根據(jù)所述縮放比例縮放平面模型;所述旋轉(zhuǎn)模塊包括貼圖模塊,用于對(duì)即時(shí)通訊工具呈現(xiàn)給用戶的界面截圖,并將截圖貼在縮放后的平面模型的正面上,以及對(duì)即時(shí)通訊工具的界面窗口旋轉(zhuǎn)后需要呈現(xiàn)的界面截圖,并將截圖貼在縮放后的平面模型的背面上;所述透明度設(shè)置模塊在所述貼圖模塊將截圖貼在縮放后的平面模型的正面和背面后設(shè)置VieWport3D的透明度為1 ;所述旋轉(zhuǎn)模塊利用繞指定軸進(jìn)行指定角度的三維旋轉(zhuǎn)方法對(duì)縮放后的平面模型進(jìn)行旋轉(zhuǎn)。
10.根據(jù)權(quán)利要求9所述的即時(shí)通訊工具中應(yīng)用3D切換面板的方法,其特征在于,所述旋轉(zhuǎn)模塊還用于使用AxisAngleRotatioM方法對(duì)縮放后的平面模型進(jìn)行180度旋轉(zhuǎn);所述透明度設(shè)置模塊還用于在旋轉(zhuǎn)模塊對(duì)縮放后的平面模型進(jìn)行旋轉(zhuǎn)后設(shè)置 Viewport3D的透明度為0。
全文摘要
本發(fā)明提供了一種即時(shí)通訊工具中應(yīng)用3D切換面板的方法及系統(tǒng),所述方法包括以下步驟創(chuàng)建窗口,根據(jù)所述窗口創(chuàng)建平面模型;接收觸發(fā)旋轉(zhuǎn)的指令;旋轉(zhuǎn)所述平面模型帶動(dòng)即時(shí)通訊工具的界面窗口進(jìn)行旋轉(zhuǎn)。采用本發(fā)明提供的方法及系統(tǒng),能應(yīng)用3D切換即時(shí)通訊工具中的面板,滿足了用戶的個(gè)性化需求,提高了即時(shí)通訊工具的易用性。
文檔編號(hào)G06F3/048GK102279732SQ201010196369
公開(kāi)日2011年12月14日 申請(qǐng)日期2010年6月9日 優(yōu)先權(quán)日2010年6月9日
發(fā)明者謝偉文, 高舜東 申請(qǐng)人:騰訊科技(深圳)有限公司