1痰哨、三維背景
三維平臺由福建儲罐項目設(shè)計,簡單介紹一下福建儲罐的實現(xiàn)方式丐巫。
首先我們要實現(xiàn)的功能谈况,大致為以下幾個
1、模型的時間節(jié)點展示功能递胧。
2鸦做、模型根據(jù)設(shè)備設(shè)施樹顯示和隱藏的功能。
3谓着、選擇模型進(jìn)行數(shù)據(jù)掛接泼诱,可以查看到模型對應(yīng)的數(shù)據(jù)。.
4赊锚、其他飛度自帶功能
簡單介紹一下三維的特性
1治筒、模型結(jié)構(gòu)分為:數(shù)據(jù)集-模型組-部件
數(shù)據(jù)集 : oracle中體現(xiàn)為一條主表數(shù)據(jù),某些模型組的合集
模型組 : oracle中體現(xiàn)為一條子表數(shù)據(jù)舷蒲,某些部件的合集
部件 : 三維場景可以操作的基本單元
2耸袜、模型加載依賴ocx插件,模型主體程序牲平,緩存數(shù)據(jù)本地化堤框,只能在ie9以上瀏覽器中展示三維模型(加載OCX插件的頁面需要設(shè)置IE10的兼容性,否則獲取的三維對象無法綁定任何監(jiān)聽事件),對機(jī)器的硬件配置有一定的要求蜈抓。由于ocx插件的存在启绰,出現(xiàn)了很多基于此插件帶來的腳本代碼的適配問題,這都是后話了沟使。
(1)js腳本的問題
(2)css樣式問題
3委可、模型數(shù)據(jù)量極大,查詢遍歷效率較慢腊嗡。
4着倾、模型所攜帶的信息很少,信息以二進(jìn)制的方式存儲在數(shù)據(jù)庫中燕少,我們無法解析卡者。
福建模型的實現(xiàn)方式。
1客们、建立中間表虎眨,中間表中維護(hù)時間節(jié)點和對應(yīng)模型的inst_id唯一id的映射關(guān)系,在最后的時間節(jié)點上镶摘,維護(hù)模型id對應(yīng)的頁面以及所需要的table信息,table中唯一對應(yīng)字段信息岳守。
2凄敢、前端定時請求后臺,獲取每個時間節(jié)點對應(yīng)的顯示和隱藏模型數(shù)據(jù)湿痢,動態(tài)操作設(shè)備模型的顯示和隱藏
3涝缝、模型查看同理。
2譬重、我們面臨的問題
1拒逮、福建模型單一數(shù)據(jù)集的管理方式是否適合多項目,如何將三維管理和多項目管理相結(jié)合臀规。
2滩援、如何解放開發(fā)人員在其中不斷的維護(hù)中間表的工作量。避免業(yè)務(wù)(現(xiàn)場實施)塔嬉,三維玩徊,開發(fā)這種三方的對接模式在每次模型更新的頻繁出現(xiàn)。
3谨究、如何實現(xiàn)三維的靈活管理恩袱,允許三維人員或者現(xiàn)場實施人員能夠定位模型關(guān)系的錯誤位置并加以修改。
4胶哲、從哪里下手開始改造畔塔,又從哪里下手開始維護(hù)?
3、實現(xiàn)思路
1澈吨、建立一個業(yè)務(wù)數(shù)據(jù)集合把敢,統(tǒng)一管理系統(tǒng)業(yè)務(wù)和三維的映射關(guān)系。通過這種映射關(guān)系統(tǒng)一管理所有項目的三維和業(yè)務(wù)表單棚辽。
2技竟、在模型命名過程中,在模型組命名同時屈藐,定義模型出現(xiàn)的時間節(jié)點榔组。
3、維護(hù)業(yè)務(wù)數(shù)據(jù)集的同時維護(hù)業(yè)務(wù)數(shù)據(jù)集和業(yè)務(wù)表單联逻,表數(shù)據(jù)之間的關(guān)聯(lián)關(guān)系搓扯,(僅在開發(fā)中維護(hù)一次)。
4包归、多項目管理中锨推,不同業(yè)務(wù)系統(tǒng)維護(hù)自己的獨立三維模型文件和數(shù)據(jù)庫,不同項目之間互不影響公壤。
5换可、避免頻繁的模型遍歷,設(shè)定定時任務(wù)厦幅,維護(hù)三維所用的數(shù)據(jù)表沾鳄。