三維模型繪制系統及其繪制方法
【技術領域】
[0001]本發明屬于繪圖領域,尤其涉及一種三維模型繪制系統及其繪制方法。
【背景技術】
[0002]繪制三維圖形通常只有借助計算機中的三維繪圖軟件來完成。
[0003]近年來,隨著三維繪圖技術的蓬勃發展,各種三維繪圖工具如3DsMax,AutoCAD等也不斷推陳出新,功能越來越強大。但是,我們發現,無論功能多么強大的工具,用戶始終只是使用鼠標配合鍵盤的方式來進行三維模型的繪制,缺乏更為直觀的繪制方式,而且十分復雜,對于空間感不強的人來說,繪制三維立體圖無疑是最令人頭疼的。
【發明內容】
[0004]基于此,針對上述技術問題,提供一種三維模型繪制系統及其繪制方法。
[0005]為解決上述技術問題,本發明采用如下技術方案:
[0006]一種三維模型繪制系統,其特征在于,包括傳感手套、磁力跟蹤裝置、光學透視顯示器頭盔以及數據處理裝置,所述傳感手套的五個手指部均設有彎曲度傳感器,所述磁力跟蹤裝置包括磁力傳感器以及磁力發射源,所述磁力傳感器設于所述傳感手套上,所述彎曲度傳感器、磁力傳感器、磁力發射源以及光學透視顯示器頭盔均與所述數據處理裝置連接。
[0007]所述光學透視顯示器頭盔顯示三維虛擬空間,所述數據處理裝置采集來自彎曲度傳感器的用戶手勢數據以及來自磁力傳感器的用戶手部空間位置數據,根據所述用戶手勢數據識別出相應的繪制指令,并在所述三維虛擬空間中根據所述用戶手部空間位置數據完成上述繪制指令。
[0008]所述數據處理裝置為計算機。
[0009]所述數據處理裝置內具有:
[0010]數據采集模塊,用于采集來自彎曲度傳感器的用戶手勢數據以及來自磁力傳感器的用戶手部空間位置數據;
[0011]數據處理模塊,用于根據所述用戶手勢數據識別出相應的繪制指令;
[0012]顯示模塊,用于在所述光學透視顯示器頭盔中顯示三維虛擬空間,且在該三維虛擬空間中根據所述用戶手部空間位置數據完成上述繪制指令。
[0013]所述繪制指令包括分別對應一種手勢的繪制開始指令、繪制結束指令。
[0014]本方案還涉及一種三維模型繪制方法,其特征在于,包括以下步驟:
[0015]通過所述光學透視顯示器頭盔顯示三維虛擬空間;
[0016]通過磁力傳感器實時采集用戶的手部空間位置數據,通過彎曲度傳感器實時采集用戶的手勢數據;
[0017]在所述三維虛擬空間中實時可視化顯示用戶的當前手部空間位置;
[0018]繪制多條直線,構成三維模型:每條直線的繪制均根據當前手勢數據,識別相應的繪制指令,將對應繪制開始指令的當前手部空間位置數據以及對應繪制結束指令的當前手部空間位置數據作為直線的兩端點數據,根據該兩端點數據在所述三維虛擬空間中顯示直線.
[0019]端點吸附處理:根據手部空間位置數據,若用戶當前手部空間位置在一已存在直線端點的預設范圍內,則將當前手部空間位置重合至上述已存在直線端點的位置。
[0020]所述在所述三維虛擬空間中實時可視化顯示用戶的當前手部空間位置步驟為通過一綠色的立方體來顯示用戶的當前手部空間位置,若當前手部空間位置重合至已存在直線端點的位置,則所述立方體變成紅色。
[0021]所述用戶當前手部空間位置坐標為B (X,y, z),所述已存在直線端點的位置坐標為P(x’,y’,z’),所述預設范圍為以P為中心且邊長為η的立方體,當滿足χ’ -1〈χ〈χ’ +1、y’ _l〈y〈y,+1 以及 z’ _l〈z〈z’ +1 時,B 和 P 重合,即 B=B (x’,y’,z’),其中 I3。
[0022]所述預設范圍為以P為中心且邊長為2的立方體。
[0023]本發明結構簡單、操作方便,用戶使用靈活的雙手就可直接在三維虛擬空間中繪制出自己想要創作的模型,相較現有方法更高效、更方便,突破了只能在二維平面上創作三維模型的限制,使得使用者可以更為直觀地在空間中繪制圖形。
【附圖說明】
[0024]下面結合附圖和【具體實施方式】本發明進行詳細說明:
[0025]圖1為本發明的結構示意圖;
[0026]圖2為本發明的傳感手套的結構示意圖。
【具體實施方式】
[0027]如圖1以及圖2所示,一種三維模型繪制系統,包括傳感手套110、磁力跟蹤裝置120、光學透視顯示器頭盔130以及數據處理裝置140。
[0028]傳感手套110的五個手指部均設有彎曲度傳感器111,手指彎曲時,傳感器電阻將變小,通過五根手指上不同傳感器的彎曲度讀數及其組合,我們就可以識別出用戶當前的手勢。
[0029]磁力跟蹤裝置120包括磁力傳感器121以及磁力發射源122,磁力傳感器121設于傳感手套110上,傳感手套110在移動時,會使磁力傳感器121與磁力發射源122的距離發生變化,從而產生磁力強度的變化,根據該變化可以比較精確地定位繪圖所用的手在空間中的坐標,從而在繪圖的過程中能比較準確地記錄圖形的位置信息。
[0030]彎曲度傳感器111、磁力傳感器121、磁力發射源122以及光學透視顯示器頭盔130均與數據處理裝置140連接。
[0031]光學透視顯示器頭盔130顯示三維虛擬空間,數據處理裝置140采集來自彎曲度傳感器111的用戶手勢數據以及來自磁力傳感器122的用戶手部空間位置數據,根據用戶手勢數據識別出相應的繪制指令,并在三維虛擬空間中根據用戶手部空間位置數據完成上述繪制指令,用戶使用靈活的雙手就可直接在三維虛擬空間中繪制出自己想要創作的模型,并可將此模型顯示在計算機中。
[0032]具體地,數據處理裝置140可以為計算機,其內具有:
[0033]數據采集模塊141,用于采集來自彎曲度傳感器111的用戶手勢數據以及來自磁力傳感器122的用戶手部空間位置數據;
[0034]數據處理模塊142,用于根據用戶手勢數據識別出相應的繪制指令。
[0035]顯示模塊143,用于在光學透視顯示器頭盔130中顯示三維虛擬空間,且在該三維虛擬空間中根據用戶手部空間位置數據完成上述繪制指令。
[0036]顯示模塊143使用OpenGL技術顯示三維虛擬空間,且在該三維虛擬空間中根據用戶手部空間位置數據完成上述繪制指令。
[0037]其中,繪制指令包括分別對應一種手勢的繪制開始指令、繪制結束指令,當然,還可以設置其他的繪制指令,如編輯指令、同步移動指令以及修改指令等,只需分別對應一種手勢以便能唯一識別即可。
[0038]如圖1以及圖2所示,本發明還涉及一種三維模型繪制方法,包括以下步驟:
[0039]一、用戶戴上光學透視顯示器頭盔130后,通過光學透視顯示器頭盔130顯示三維虛擬空間。
[0040]二、通過磁力傳感器121實時采集用戶的手部空間位置數據,通過彎曲度傳感器111實時采集用戶的手勢數據。
[0041]三、“畫筆”筆尖輔助提示:在三維虛擬空間中實時可視化顯示用戶的當前手部空間位置,當前手部空間位置即為“畫筆”筆尖的位置。
[0042]一個好的三維繪圖工具,在用戶繪圖的過程中必然會給出相應的輔助提示信息,以幫助用戶更好地繪制圖形,在本發明中,通過可視化的立體圖形來表示當前手部空間位置,從而明確當前“畫筆”筆尖的位置,會給繪圖過程帶來了便利。
[0043]具體地,可通過一綠色的立方體來顯示用戶的當前手部空間位置。
[0044]當用戶開啟繪圖功能后,我們會將用戶當前手部位置,也就是畫筆筆尖所在位置用一個綠色小立方體顯示出來,這樣用戶就知道自己將在什么位置進行繪圖。
[0045]四、繪制多條直線,構成三維模型:每條直線的繪制均根據當前手勢數據,識別相應的繪制指令,將對應繪制開始指令的當前手部空間位置數據以及對應繪制結束指令的當前手部空間位置數據作為直線的兩端點數據,根據該兩端點數據在所述三維虛擬空間中顯示直線,多條直線可構成三維模型。
[0046]通過觀察常用三維繪圖工具,我們發現,任何復雜的三維物體模型都可以分解成為相對簡單的基本圖元,如點、直線段、面等,我們要進行三維繪圖,首先就要確定構成三維物體的基本圖元。在多種圖元中,我們發現直線段所能代表的三維圖形最為豐富,且表述相對簡單,因此,我們選用直線段作為構成三維模型的基本圖元,由若干條直線段來組成相對更為復雜的模型,如立方體、三棱錐等。