本發(fā)明涉及計算機控制領(lǐng)域,具體涉及一種虛擬現(xiàn)實系統(tǒng)的數(shù)據(jù)庫動態(tài)加載管理方法及裝置。
背景技術(shù):對于電廠仿真系統(tǒng)中越來越多地開始使用虛擬現(xiàn)實系統(tǒng),虛擬現(xiàn)實系統(tǒng)的所有數(shù)據(jù)存儲在數(shù)據(jù)庫里,使用前先將數(shù)據(jù)庫中所有的數(shù)據(jù)全部加載在內(nèi)存中待用,當觸發(fā)啟動某模式后,隨著這個模式調(diào)用,將所調(diào)用的數(shù)據(jù)顯示在屏幕上。比如,操作人員啟動某電廠仿真系統(tǒng)選擇進行三維實景漫游的模式,電廠仿真系統(tǒng)會將全部的數(shù)據(jù)加載到內(nèi)存之后方可以開始三維實景漫游,但是僅僅一個中型電廠仿真系統(tǒng)中所涉及的零部件就多達數(shù)十萬個,其中所涉及的參數(shù)更是多達上百萬個,將這樣龐大的數(shù)據(jù)加載到內(nèi)存待用所消耗的時間大概需要30分鐘,可見加載時間過長極大地降低電廠仿真系統(tǒng)的使用效率。另外,對于電廠仿真系統(tǒng)來說,往往仿真構(gòu)圖的精度要求極高,電廠仿真系統(tǒng)中不僅要有設(shè)備外形結(jié)構(gòu),同時還有設(shè)備內(nèi)部的精細結(jié)構(gòu),同時,對于大型設(shè)備來說,其內(nèi)部還會有較多小型結(jié)構(gòu),每種小型結(jié)構(gòu)還會有很多零件構(gòu)成,無論是零件、小型結(jié)構(gòu)、還是大型設(shè)備,構(gòu)圖的精度要求都是很高的。如果不分需求,每次啟動必然全部加載這些數(shù)據(jù),會占用大量的運算資源和時間。另一方面在三維實景漫游中只看得到所有三維實景的外圍輪廓,而內(nèi)部結(jié)構(gòu)的運行是看不到的,但是按現(xiàn)有方式的話,對這些三維實景漫游用不到的內(nèi)部結(jié)構(gòu)的數(shù)據(jù)也進行了加載,顯然,這是對于運算資源和內(nèi)存占用的浪費。因此當前需要解決的問題是需要一種用于電廠仿真的虛擬現(xiàn)實系統(tǒng)的數(shù)據(jù)庫動態(tài)加載管理方案。
技術(shù)實現(xiàn)要素:本發(fā)明所要解決的技術(shù)問題是提供一種虛擬現(xiàn)實系統(tǒng)的數(shù)據(jù)庫動態(tài)加載管理方法及裝置,解決了加載時間過長極大地降低電廠仿真系統(tǒng)的使用效率、占用大量的運算資源和時間以及對于運算資源和內(nèi)存占用的浪費的問題。為了解決上述問題,本發(fā)明提供了一種虛擬現(xiàn)實系統(tǒng)的數(shù)據(jù)庫動態(tài)加載管理方法,包括:構(gòu)建數(shù)據(jù)庫,針對所述虛擬現(xiàn)實系統(tǒng)中各種場景和/或功能,分別將每個場景和/或功能所涉及到的數(shù)據(jù)結(jié)構(gòu)與相應(yīng)場景和/或功能進行存儲,其中所述數(shù)據(jù)結(jié)構(gòu),包括每個場景和/或功能所涉及到的數(shù)據(jù)資源的地址及數(shù)據(jù)資源之間的聯(lián)系;將每個場景和/或功能所涉及的數(shù)據(jù)操作與每個場景和/或功能對應(yīng)存儲的數(shù)據(jù)結(jié)構(gòu)封裝為每個場景和/或功能的數(shù)據(jù)模型,并設(shè)置對應(yīng)的訪問入口供調(diào)用;接收所述訪問入口被觸發(fā)時所發(fā)出的調(diào)用指令從而識別所調(diào)用的場景和/或功能,僅在內(nèi)存中加載所述場景和/或功能對應(yīng)的數(shù)據(jù)模型,執(zhí)行所述數(shù)據(jù)模型中涉及的數(shù)據(jù)操作,依據(jù)所述數(shù)據(jù)操作調(diào)用已在內(nèi)存中加載的數(shù)據(jù)模型中相關(guān)的數(shù)據(jù)結(jié)構(gòu)并顯示其中的數(shù)據(jù)資源。進一步地,當所述場景包括三維實景漫游時,分別將每個場景所涉及到的數(shù)據(jù)結(jié)構(gòu)與相應(yīng)場景對應(yīng)進行存儲,包括:將三維實景漫游時需要顯示在界面上的所有部件的外形結(jié)構(gòu)的數(shù)據(jù)資源的地址作為相應(yīng)數(shù)據(jù)結(jié)構(gòu)中的數(shù)據(jù)資源對應(yīng)進行存儲,所述相應(yīng)數(shù)據(jù)結(jié)構(gòu)中的數(shù)據(jù)資源的地址不包括不需要顯示在界面上的每個部件的內(nèi)部結(jié)構(gòu)的數(shù)據(jù)資源的地址。進一步地,當所述場景和/或功能包括一部件的內(nèi)部結(jié)構(gòu)展示和/或安裝運行展示時,分別將每個場景和/或功能所涉及到的數(shù)據(jù)結(jié)構(gòu)與相應(yīng)場景和/或功能進行存儲,包括:將內(nèi)部結(jié)構(gòu)展示和/或安裝運行展示時需要顯示在界面上的所述部件的數(shù)據(jù)資源的地址作為相應(yīng)數(shù)據(jù)結(jié)構(gòu)中的數(shù)據(jù)資源對應(yīng)進行存儲,所述相應(yīng)數(shù)據(jù)結(jié)構(gòu)中的數(shù)據(jù)資源的地址不包括不需要顯示在界面上的其他部件的數(shù)據(jù)資源的地址。進一步地,每個場景和/或功能所涉及到的數(shù)據(jù)資源之間的聯(lián)系,包括以下一個或多個的組合:每個場景和/或功能所涉及到的數(shù)據(jù)資源之間的調(diào)用關(guān)系和組配關(guān)系;每個場景和/或功能所涉及的數(shù)據(jù)操作,包括每個場景和/或功能所涉及的演示運行程序。為了解決上述問題,本發(fā)明還提供了一種虛擬現(xiàn)實系統(tǒng)的數(shù)據(jù)庫動態(tài)加載管理裝置,包括:數(shù)據(jù)庫,用于針對所述虛擬現(xiàn)實系統(tǒng)中各種場景和/或功能,分別將每個場景和/或功能所涉及到的數(shù)據(jù)結(jié)構(gòu)與相應(yīng)場景和/或功能對應(yīng)進行存儲,其中所述數(shù)據(jù)結(jié)構(gòu),包括每個場景和/或功能所涉及到的數(shù)據(jù)資源的地址及數(shù)據(jù)資源之間的聯(lián)系;數(shù)據(jù)封裝模塊,用于將每個場景和/或功能所涉及的數(shù)據(jù)操作與每個場景和/或功能對應(yīng)存儲的數(shù)據(jù)結(jié)構(gòu)封裝為每個場景和/或功能的數(shù)據(jù)模型,并設(shè)置對應(yīng)的訪問入口供調(diào)用;運行加載模塊,用于接收所述訪問入口被觸發(fā)時所發(fā)出的調(diào)用指令從而識別所調(diào)用的場景,通過已經(jīng)封裝在所述數(shù)據(jù)結(jié)構(gòu)中數(shù)據(jù)資源的地址僅加載所述場景和/或功能對應(yīng)的數(shù)據(jù)模型到內(nèi)存中;運行顯示模塊,用于執(zhí)行所述數(shù)據(jù)模型中涉及的數(shù)據(jù)操作,依據(jù)所述數(shù)據(jù)操作調(diào)用已在內(nèi)存中加載的數(shù)據(jù)模型中相關(guān)的數(shù)據(jù)結(jié)構(gòu)并顯示其中的數(shù)據(jù)資源。進一步地,所述數(shù)據(jù)庫,當所述場景包括三維實景漫游時,用于將三維實景漫游時需要顯示在界面上的所有部件的外形結(jié)構(gòu)的數(shù)據(jù)資源的地址作為相應(yīng)數(shù)據(jù)結(jié)構(gòu)中的數(shù)據(jù)資源對應(yīng)進行存儲,所述相應(yīng)數(shù)據(jù)結(jié)構(gòu)中的數(shù)據(jù)資源的地址不包括不需要顯示在界面上的每個部件的內(nèi)部結(jié)構(gòu)的數(shù)據(jù)資源的地址。進一步地,所述數(shù)據(jù)庫,當所述場景和/或功能包括一部件的內(nèi)部結(jié)構(gòu)展示和/或安裝運行展示時,進一步用于將內(nèi)部結(jié)構(gòu)展示和/或安裝運行展示時需要顯示在界面上的所述部件的數(shù)據(jù)資源作為相應(yīng)數(shù)據(jù)結(jié)構(gòu)中的數(shù)據(jù)資源的地址對應(yīng)進行存儲,所述相應(yīng)數(shù)據(jù)結(jié)構(gòu)中的數(shù)據(jù)資源的地址不包括不需要顯示在界面上的其他部件的數(shù)據(jù)資源的地址。進一步地,每個場景和/或功能所涉及到的數(shù)據(jù)資源之間的聯(lián)系,包括以下一個或多個的組合:每個場景和/或功能所涉及到的數(shù)據(jù)資源之間的調(diào)用關(guān)系和組配關(guān)系;每個場景和/或功能所涉及的數(shù)據(jù)操作,包括每個場景和/或功能所涉及的演示運行程序。與現(xiàn)有技術(shù)相比,應(yīng)用本發(fā)明,極大地縮短了加載時間,并顯著提高了電廠仿真系統(tǒng)的使用效率,同時節(jié)省了被浪費的運算資源和內(nèi)存。附...