湯雄 袁崇皓
摘要:近年來,中醫(yī)進一步普及,經(jīng)絡(luò)學(xué)說也越來越獲得應(yīng)用與關(guān)注。二三維一體化的人體經(jīng)絡(luò)查詢系統(tǒng)擬為針灸按摩臨床醫(yī)療以及針灸教學(xué)服務(wù),采用文獻綜合法進行研究,利用MapGIS強大的數(shù)據(jù)管理能力和靈活的開發(fā)方式,以MapGIS 10為開發(fā)平臺,通過掃描得到人體經(jīng)絡(luò)柵格數(shù)據(jù),并在ArcGIS里面進行手工數(shù)字化得到經(jīng)絡(luò)、穴位矢量數(shù)據(jù)和疾病表格等數(shù)據(jù),以及在3ds MAX 2010里面手工建立人體經(jīng)絡(luò)穴位模型。將所有二維和三維數(shù)據(jù)等信息存儲在GDB Catalog里面,利用MapGIS插件式開發(fā)且結(jié)合visual studio2010的C#語言自主開發(fā)MapGIS插件以實現(xiàn)系統(tǒng)二三維聯(lián)動、經(jīng)絡(luò)循行等功能,將為人體經(jīng)絡(luò)信息化研究提供一種全新的方向與思路,同時有望為針灸按摩的學(xué)習(xí)提供一個便捷高效的學(xué)習(xí)平臺。
關(guān)鍵詞:經(jīng)絡(luò)腧穴;插件式開發(fā);MapGIS;二三維一體化;人體經(jīng)絡(luò)信息化
中圖分類號:TP311 ? ? ?文獻標(biāo)識碼:A
文章編號:1009-3044(2022)05-0073-03
經(jīng)絡(luò)學(xué)說在中醫(yī)中占據(jù)極其重要的地位。傳統(tǒng)中醫(yī)認為,經(jīng)絡(luò)是就像人體內(nèi)氣血的“流通道路”,而“穴位”就像通道的十字路口,縱橫穿梭在經(jīng)絡(luò)中,與經(jīng)絡(luò)共同組成人體的“氣血交通網(wǎng)”[1]。而近年來,隨著中醫(yī)學(xué)的進一步普及,越來越多的人開始去了解、學(xué)習(xí)中醫(yī)學(xué),而作為中醫(yī)最不可或缺的經(jīng)絡(luò)穴,也逐漸揭開了神秘的面紗,國內(nèi)的醫(yī)學(xué)、教育學(xué)、計算機學(xué)等行業(yè)也開始了對“經(jīng)絡(luò)學(xué)”的探索,甚至于國外也開始了對“經(jīng)絡(luò)學(xué)”的深刻研究[2]。
本系統(tǒng)以MapGIS 10作為開發(fā)平臺,設(shè)計實現(xiàn)本系統(tǒng),采用C/S架構(gòu),并利用MapGIS插件式開發(fā)且結(jié)合Visual Studio2010的C#語言自主開發(fā)MapGIS插件以實現(xiàn)系統(tǒng)功能,為人體經(jīng)絡(luò)信息化研究提供一種方向與思路,同時有望為針灸按摩以及教學(xué)中的初學(xué)者提供一個便捷高效的學(xué)習(xí)平臺,其空間查詢、屬性查詢、二三維聯(lián)動、三維經(jīng)絡(luò)動態(tài)循行等功能可以幫助用戶進行有效的理解與記憶,是人體經(jīng)絡(luò)信息化發(fā)展的一個新方向。
1 MapGIS插件式開發(fā)技術(shù)應(yīng)用研究
MapGIS插件式開發(fā)因為其靈活多變,開發(fā)方式多樣的特點,被大眾所接受。廖婧[3]利用MapGIS K9組件式開發(fā)技術(shù),通過直接拖拽其已有的控件和組件搭建一個簡潔、交互性強的GIS平臺,從時間和空間上全面實現(xiàn)對滑坡災(zāi)害的預(yù)測,有力協(xié)助防災(zāi)減災(zāi)工作的開展與實施;吳德華[4]運用MapGIS 10良好的數(shù)據(jù)管理以及空間分析能力,采用“框架式”與“插件式”結(jié)合的方法,實現(xiàn)對二維地圖數(shù)據(jù)和三維景觀數(shù)據(jù)的統(tǒng)一管理,實現(xiàn)城市信息的資源共享以及可持續(xù)發(fā)展;湯雄[5]基于MapGIS 10的T-C-V結(jié)構(gòu),將GIS技術(shù)引入盲道的信息化建設(shè)中,科學(xué)管理城市盲道。周宇陽[6]采用 C#語言進行 MapGIS 10 Objects 桌面端上的二次開發(fā),輔助加強湖南省測繪坐標(biāo)轉(zhuǎn)換 HNCOOR 軟件的大地坐標(biāo)轉(zhuǎn)換功能,提高了矢量文件和坐標(biāo)系統(tǒng)轉(zhuǎn)換精度,減少了人工操作引起的誤差;徐曉慶[7]采用中地數(shù)碼的 MapGIS 10產(chǎn)品進行二次開發(fā),能夠滿足不訪問互聯(lián)網(wǎng)以及分布式用戶對于GIS的一致性、實時性、統(tǒng)一性的數(shù)據(jù)環(huán)境的需求,能夠保證氣象部門在制圖時有關(guān)資料的保密而不外泄,滿足有關(guān)保密性的需求。
2 人體經(jīng)絡(luò)數(shù)據(jù)采集與處理
2.1 二維數(shù)據(jù)
影像數(shù)據(jù)經(jīng)比對國家標(biāo)準(zhǔn)經(jīng)穴部位掛圖、網(wǎng)站信息和相關(guān)經(jīng)絡(luò)穴位典籍,擇優(yōu)進行使用。系統(tǒng)圖形數(shù)據(jù)經(jīng)人體相對坐標(biāo)系校正,保證量取的每一個尺寸符合醫(yī)學(xué)標(biāo)準(zhǔn)人體。人體相對坐標(biāo)系根據(jù)2000年國民體質(zhì)監(jiān)測公報中公布的中國成年男性標(biāo)準(zhǔn)身高(169.7cm),按照國家標(biāo)準(zhǔn)人體模型長寬比(22:82)換算得到,最終確定坐標(biāo)系中一個標(biāo)準(zhǔn)人長寬比為(0.455:1.697),對購買的國家標(biāo)準(zhǔn)經(jīng)穴部位掛圖進行掃描得到人體經(jīng)絡(luò)柵格數(shù)據(jù),設(shè)置人體相對坐標(biāo)系為“Xian_1980_3_Degree_GK_CM_102E”,并按標(biāo)準(zhǔn)個人長寬比校正配準(zhǔn)。然后依次新建“穴位信息”點圖層、“經(jīng)絡(luò)信息”線圖層,依照數(shù)據(jù)字典設(shè)置其有關(guān)字段信息,并對照柵格數(shù)據(jù)依次進行地圖矢量化后,對照按經(jīng)絡(luò)穴位典籍文字輸入屬性,數(shù)字化后得到總經(jīng)絡(luò)矢量線數(shù)據(jù)、矢量穴位矢量點數(shù)據(jù)、疾病表格數(shù)據(jù)。如圖1所示:
2.2 三維數(shù)據(jù)
三維數(shù)據(jù)是指人體經(jīng)絡(luò)穴位模型,以掃描得到人體經(jīng)絡(luò)柵格數(shù)據(jù)為標(biāo)準(zhǔn)建立模型。首先將正面、側(cè)面以及背面分別單獨裁剪出來,導(dǎo)入到3Ds MAX中。接下來從胸部開始,拉一個“平面”,格數(shù)為3X3,在各視圖中對應(yīng)好背景的位置,將其轉(zhuǎn)換為“可編輯多邊形”,在右視圖和前視圖中調(diào)整各點的位置,并將這一邊的胸部沿X軸進行鏡像,生成另一半,然后在堆棧區(qū)選擇“邊”進入邊的子物體,選擇下方三條邊,按住“SHIFT”鍵向下拉,這樣我們可以看到拉出了三個面,再往下拉一下。在堆棧區(qū)選擇“頂點”,調(diào)整各點的位置后,進入“邊”選擇下面三條邊,繼續(xù)向下拉三次,直到腹底,進入“頂點”,調(diào)整各點的位置,這樣就可以得出一個胸部和腹部的大體輪廓。然后從后視圖,也就是人體的背面選中上邊的3條線,向上3次拉伸出斜方肌,三角肌和肩胛肌群,調(diào)整各點,回到前視圖中選擇上面的4條邊向上拉伸出鎖骨,胸鎖乳突肌,和斜方肌,回到后視圖中,把斜方肌向上拉出,也就是后脖子,選中三條線,拉伸,與前視圖中的點合并。這樣,一個大體的身軀輪廓就出來了[8]。
采用同樣的方法,建立頭部、面部以及手部的模型后進行光滑處理得到人體模型。然后依照掃描得到人體經(jīng)絡(luò)柵格數(shù)據(jù)為標(biāo)準(zhǔn),將人體穴位假設(shè)為球體,建立穴位模型。模型全部建完后,成組,導(dǎo)出為obj格式,如圖2所示。
3 二三維一體化的人體經(jīng)絡(luò)查詢系統(tǒng)設(shè)計
3.1 結(jié)構(gòu)設(shè)計
本系統(tǒng)運用面向服務(wù)的系統(tǒng)工程思想進行需求分析、建模和系統(tǒng)設(shè)計,使用“面向服務(wù)的GIS架構(gòu)技術(shù)”指導(dǎo)系統(tǒng)開發(fā)。系統(tǒng)總體構(gòu)架包括各個數(shù)據(jù)管理模塊軟件的總體設(shè)計與集成等內(nèi)容。系統(tǒng)框架如圖3所示,系統(tǒng)通過訪問最底層的 “人體經(jīng)絡(luò)數(shù)據(jù)庫”實現(xiàn)對“穴位信息”“經(jīng)絡(luò)信息”“經(jīng)絡(luò)循行信息”的操作,并且在本系統(tǒng)中顯示用戶需要的數(shù)據(jù),提供了交互式操作的界面。位于本系統(tǒng)和人體經(jīng)絡(luò)數(shù)據(jù)庫中間的業(yè)務(wù)邏輯層包括MapGIS 10插件庫中的MapGIS.GDBManager.Plugin、MapGIS.DataConvert.Plugin、MapGIS.MapEditor.P-lugin、MapGIS.TDEEditor.Plugin等插件以及自行編譯生成的桌面插件:TDE_Data-Trans_Plugin、TDE_SceneRefMap_Plugin和TDE_AnimationModel_Plugin,在數(shù)據(jù)交換時,該層將繼承自表示層的操作命令傳遞給數(shù)據(jù)層,起到承上啟下的作用。
3.2 功能模塊設(shè)計
本系統(tǒng)設(shè)計了地圖基本操作、數(shù)據(jù)查詢、二三維聯(lián)動、三維動態(tài)經(jīng)絡(luò)循行四個主體功能。地圖基本操作主要是方便用戶對人體經(jīng)絡(luò)穴位的整體掌握。地圖基本操作主要包括地圖文檔的導(dǎo)入、導(dǎo)出、新建以及刪除,地圖的縮放、平移、更新和復(fù)位以及圖層的增加、刪除、導(dǎo)入導(dǎo)出等;數(shù)據(jù)查詢包括屬性查詢和空間查詢,在以往GIS查詢操作功能的基礎(chǔ)上,新增了將結(jié)果直接生成為一個新圖層的功能,圖層的存放位置可默認存放在本地數(shù)據(jù)庫,也可由用戶進行自定義,存儲用戶的查詢記錄以便下次使用;二三維聯(lián)動功能包括導(dǎo)入三維模型以及實現(xiàn)二維地圖文檔與三維人體經(jīng)絡(luò)穴位模型同步運動;三維動態(tài)經(jīng)絡(luò)循行可以將循經(jīng)感傳現(xiàn)象動態(tài)的直觀地顯示在計算機上。系統(tǒng)的功能模塊圖如圖4所示。
4 系統(tǒng)實現(xiàn)
系統(tǒng)界面主要分為主界面和各功能界面,各界面整體布局實現(xiàn)系統(tǒng),但各界面又獨自完成各自的功能,互不影響。系統(tǒng)主界面分為四部分,從上到下依次是:菜單欄、工具欄、圖層樹、地圖顯示窗口、數(shù)據(jù)庫樹和狀態(tài)欄,如圖5所示,供用戶進行基本的地圖操作和顯示地圖文件。
以三維動態(tài)經(jīng)絡(luò)循行模塊為例。雙擊菜單欄的下拉命令,彈出動畫軌跡對話框,經(jīng)絡(luò)循行將以動畫形式進行演示。G3DpathOperate.cs三維路徑操作類對象監(jiān)聽到鼠標(biāo)雙擊事件,通過GetCamera接口獲取當(dāng)前場景的相機,在該監(jiān)聽事件后通過回調(diào)函數(shù)設(shè)置路徑節(jié)點等信息,然后將交互拾取到的點進行窗口坐標(biāo)轉(zhuǎn)邏輯坐標(biāo),并基于轉(zhuǎn)換后的坐標(biāo)點搭建路徑漫游的節(jié)點,并通過G3DpathOperate的SetPathInfo接口、SetInsertInfo接口設(shè)定路徑信息和差值信息,利用DrawPathInfo接口將路徑繪制出來。最后播放經(jīng)絡(luò)循行的動畫,通過G3DAnimFLY.cs的CreateAnimFLY接口創(chuàng)建動畫,最后調(diào)用Begin()方法開始經(jīng)絡(luò)循行。在插件命令Command類的OnCreate()方法中限定該功能激活的限制條件是場景必須處于激活狀態(tài),并在OnClick()方法中設(shè)置軌跡動畫窗體顯示方式是??看翱凇J紫瘸跏蓟疓3DpathOperate.cs三維路徑操作類對象,監(jiān)聽鼠標(biāo)雙擊事件,并先通過GetCamera接口獲取當(dāng)前場景的相機,以此為基礎(chǔ),初始化G3DpathOperate.cs對象,在該監(jiān)聽事件后通過回調(diào)函數(shù)設(shè)置路徑節(jié)點等信息,然后將交互拾取到的點進行窗口坐標(biāo)轉(zhuǎn)邏輯坐標(biāo),并基于轉(zhuǎn)換后的坐標(biāo)點搭建路徑漫游的節(jié)點,并通過G3DpathOperate的SetPathInfo接口、SetInsertInfo接口設(shè)定路徑信息和差值信息,利用DrawPathInfo接口將路徑繪制出來。最后播放經(jīng)絡(luò)循行的動畫,通過G3DAnimFLY.cs的CreateAnimFLY接口創(chuàng)建動畫,最后調(diào)用Begin()方法開始經(jīng)絡(luò)循行,End()方法暫停經(jīng)絡(luò)循行,如圖6和圖7所示。
5 結(jié)束語
本系統(tǒng)帶的實現(xiàn)遵循軟件工程的軟件生命周期設(shè)計方法,使用文獻綜合法進行研究,使用MapGIS插件式開發(fā)與C#.Net + MapGIS K10 Plugin開發(fā)桌面插件相結(jié)合的方法實現(xiàn)本系統(tǒng)。在二維基本功能的基礎(chǔ)上,開發(fā)設(shè)計出三維經(jīng)絡(luò)循行演示與虛擬仿真體驗,在人體經(jīng)絡(luò)GIS信息系統(tǒng)方面,是一種新的實現(xiàn)方式,能為后來研究者提供一定的借鑒。
參考文獻:
[1] 王樅,蔡銘潔,涂序彥.經(jīng)絡(luò)系統(tǒng)與信息網(wǎng)絡(luò)研究[J].中國醫(yī)學(xué)影像技術(shù),2003,19(S1):160-162.
[2] 吳德華.面向針灸臨床治療與教學(xué)的人體經(jīng)絡(luò)空間決策支持系統(tǒng)研究[J].中國針灸,2016,36(1):95-98.
[3] 廖婧,潘以恒,吳麗清,等.基于MapGIS組件式開發(fā)的河南省滑坡監(jiān)測預(yù)警系統(tǒng)設(shè)計與實現(xiàn)[J].安全與環(huán)境工程,2016,23(5):126-132.
[4] 吳德華,謝家豪,羅成,等.基于MapGIS 10的二三維城市規(guī)劃地理信息平臺設(shè)計[J].湖南城市學(xué)院學(xué)報(自然科學(xué)版),2015,24(1):51-53.
[5] 湯雄,吳德華,黃龍,等.基于縱生式開發(fā)模式的城市盲道管理信息系統(tǒng)設(shè)計與實現(xiàn)[J].電腦知識與技術(shù),2019,15(7):23-24.
[6] 周宇陽.基于MapGIS 10編程輔助HNCOOR軟件轉(zhuǎn)換矢量文件坐標(biāo)系[J].國土資源導(dǎo)刊,2017,14(4):77-80.
[7] 徐曉慶,姜娜娜,王凡,等.基于MapGIS二次開發(fā)的氣象專題圖繪制[J].電腦編程技巧與維護,2015(19):73-75.
[8] max人體建模教程[EB/OL].[2021-05-22].http://wenku.baidu.com/view/84790f84bceb19e8b8f6bab4.
【通聯(lián)編輯:謝媛媛】
收稿日期:2021-11-08
作者簡介:湯雄(1997—),女,湖南益陽人,助理工程師,學(xué)士,研究方向為空間數(shù)據(jù)庫與空間決策支持;袁崇皓(1998—),男,廣東廣州人,學(xué)士,主要研究方向為地理信息工程。