本技術(shù)涉及數(shù)據(jù)處理,特別是涉及一種基于混合現(xiàn)實(shí)的建筑信息模型動(dòng)態(tài)交互方法、系統(tǒng)、終端及計(jì)算機(jī)可讀存儲介質(zhì)。
背景技術(shù):
1、“人、大、物、云”等新一代ict(information?and?communications?technology,即信息與通信技術(shù))信息技術(shù)的快速發(fā)展為新型智慧城市的建設(shè)提供了關(guān)鍵技術(shù)支撐,面向城市精細(xì)化治理的實(shí)際需求,運(yùn)用混合現(xiàn)實(shí)技術(shù)實(shí)現(xiàn)在建工程建設(shè)項(xiàng)目的交互式進(jìn)度管理,有助于提高工程進(jìn)度管理效率。
2、現(xiàn)有技術(shù)中,通常一套完整物理bim(building?information?modeling,即建筑信息模型)系統(tǒng)通常部件數(shù)高達(dá)30-50萬,在如此龐大的數(shù)據(jù)量下,直接加載數(shù)據(jù)會對mr(mixed?reality,即混合現(xiàn)實(shí))設(shè)備的內(nèi)存和顯存施加很大壓力,且mr軟硬件設(shè)備在面向大體量、超精細(xì)建筑信息模型的交互可視化需求時(shí)存在性能瓶頸,通過mr設(shè)備直接加載bim數(shù)據(jù)并實(shí)現(xiàn)流暢加載和渲染仍存在困難,無法實(shí)現(xiàn)實(shí)時(shí)、連續(xù)、流暢的復(fù)雜bim模型可視化,限制了相關(guān)技術(shù)的實(shí)際應(yīng)用。
技術(shù)實(shí)現(xiàn)思路
1、有鑒于此,本技術(shù)提供了一種基于混合現(xiàn)實(shí)的建筑信息模型動(dòng)態(tài)交互方法、系統(tǒng)、終端及計(jì)算機(jī)可讀存儲介質(zhì),以解決現(xiàn)有技術(shù)中通過mr設(shè)備直接加載bim數(shù)據(jù)無法實(shí)現(xiàn)流暢加載和渲染困難的問題。
2、本技術(shù)提出一種基于混合現(xiàn)實(shí)的建筑信息模型動(dòng)態(tài)交互方法,所述基于混合現(xiàn)實(shí)的建筑信息模型動(dòng)態(tài)交互方法包括:
3、獲取目標(biāo)建筑信息模型的幾何信息和屬性信息,將所述幾何信息和所述屬性信息存儲于自定義數(shù)據(jù)結(jié)構(gòu)中,根據(jù)所述自定義數(shù)據(jù)結(jié)構(gòu)構(gòu)建圖形語言傳輸格式模型;
4、對所述圖形語言傳輸格式模型的所述幾何信息進(jìn)行簡化,得到中間圖形語言傳輸格式模型,根據(jù)所述中間圖形語言傳輸格式模型構(gòu)建三個(gè)層級的多細(xì)節(jié)層次模型;
5、使用空間索引分別對三個(gè)層級的所述多細(xì)節(jié)層次模型進(jìn)行分割,得到多個(gè)多細(xì)節(jié)層次切片;
6、獲取混合現(xiàn)實(shí)的視錐體和視錐位置,根據(jù)所述視錐體和所述視錐位置確定每個(gè)所述多細(xì)節(jié)層次切片中每個(gè)瓦片的加載;
7、根據(jù)每個(gè)所述多細(xì)節(jié)層次切片的空間坐標(biāo)系,確定每個(gè)所述瓦片在世界坐標(biāo)系下的空間變換矩陣,得到每個(gè)所述瓦片在世界坐標(biāo)系下的位置。
8、可選地,所述獲取目標(biāo)建筑信息模型的幾何信息和屬性信息,將所述幾何信息和所述屬性信息存儲于自定義數(shù)據(jù)結(jié)構(gòu)中,根據(jù)所述自定義數(shù)據(jù)結(jié)構(gòu)構(gòu)建圖形語言傳輸格式模型,具體包括:
9、獲取目標(biāo)建筑信息模型的數(shù)據(jù)信息,從所述數(shù)據(jù)信息中提取所述目標(biāo)建筑信息模型中每個(gè)構(gòu)件和每個(gè)所述構(gòu)件的幾何信息和屬性信息;其中,所述幾何信息包括點(diǎn)數(shù)據(jù)、片元索引數(shù)據(jù)和法線數(shù)據(jù);
10、使用每個(gè)所述構(gòu)件的身份標(biāo)識信息構(gòu)建所述幾何信息和所述屬性信息的映射關(guān)系;
11、將所述幾何信息、所述屬性信息和所述映射關(guān)系存儲于自定義數(shù)據(jù)結(jié)構(gòu)中,根據(jù)所述自定義數(shù)據(jù)結(jié)構(gòu)構(gòu)建圖形語言傳輸格式模型。
12、可選地,所述將所述幾何信息、所述屬性信息和所述映射關(guān)系存儲于自定義數(shù)據(jù)結(jié)構(gòu)中,根據(jù)所述自定義數(shù)據(jù)結(jié)構(gòu)構(gòu)建圖形語言傳輸格式模型,具體包括:
13、預(yù)設(shè)自定義數(shù)據(jù)結(jié)構(gòu),將所述幾何信息、所述屬性信息和所述映射關(guān)系存儲于所述自定義數(shù)據(jù)結(jié)構(gòu)中;
14、讀取所述自定義數(shù)據(jù)結(jié)構(gòu),并擴(kuò)展實(shí)際應(yīng)用中每個(gè)所述構(gòu)件的第一屬性,根據(jù)所述自定義數(shù)據(jù)結(jié)構(gòu)和所述第一屬性構(gòu)建圖形語言傳輸格式模型。
15、可選地,所述對所述圖形語言傳輸格式模型的所述幾何信息進(jìn)行簡化,得到中間圖形語言傳輸格式模型,根據(jù)所述中間圖形語言傳輸格式模型構(gòu)建三個(gè)層級的多細(xì)節(jié)層次模型,具體包括:
16、分別對所述圖形語言傳輸格式模型的復(fù)雜部件和簡單部件的冗余幾何三角形進(jìn)行優(yōu)化,得到中間圖形語言傳輸格式模型;
17、預(yù)設(shè)所述中間圖形語言傳輸格式模型與所述多細(xì)節(jié)層次模型的關(guān)系,根據(jù)所述中間圖形語言傳輸格式模型和所述關(guān)系構(gòu)建三個(gè)層級的多細(xì)節(jié)層次模型。
18、可選地,所述使用空間索引分別對三個(gè)層級的所述多細(xì)節(jié)層次模型進(jìn)行分割,得到多個(gè)多細(xì)節(jié)層次切片,具體包括:
19、對不同層級的所述多細(xì)節(jié)層次模型,建立統(tǒng)一的八叉樹索引;
20、根據(jù)所述八叉樹索引分別對所述多細(xì)節(jié)層次模型進(jìn)行分割,得到不同層級的多細(xì)節(jié)層次切片,并調(diào)用不同層級的所述多細(xì)節(jié)層次切片進(jìn)行實(shí)例化渲染。
21、可選地,所述獲取混合現(xiàn)實(shí)的視錐體和視錐位置,根據(jù)所述視錐體和所述視錐位置確定每個(gè)所述多細(xì)節(jié)層次切片中每個(gè)瓦片的加載,具體包括:
22、獲取混合現(xiàn)實(shí)的視錐體和視錐位置,根據(jù)所述視錐體和所述多細(xì)節(jié)層次切片的邊界框相交判斷每個(gè)所述瓦片是否加載,并創(chuàng)建所述瓦片之間的相交集合和每個(gè)所述瓦片的緩沖集合。
23、可選地,所述獲取混合現(xiàn)實(shí)的視錐體和視錐位置,根據(jù)所述視錐體和所述多細(xì)節(jié)層次切片的邊界框相交判斷每個(gè)所述瓦片是否加載,并創(chuàng)建所述瓦片之間的相交集合和每個(gè)所述瓦片的緩沖集合,具體包括:
24、獲取混合現(xiàn)實(shí)的視錐體和視錐位置,獲取所述視錐體和所述多細(xì)節(jié)層次切片的邊界框相交判斷的先后順序,根據(jù)所述先后順序從索引列表中查找到對應(yīng)的索引塊,將所述索引塊傳遞到請求隊(duì)列,創(chuàng)建請求集合;
25、接收來自所述請求隊(duì)列的消息,判斷是否重復(fù)后啟用協(xié)程對請求內(nèi)容進(jìn)行加載,創(chuàng)建下載集合;
26、接收到下載塊內(nèi)容后讀取視錐相交結(jié)果,獲取相交索引加載當(dāng)前存在于視錐內(nèi)的塊對象,得到加載集合;
27、根據(jù)所述請求集合、所述下載集合和所述加載集合對所述相交集合進(jìn)行操作,采用循環(huán)反饋更新的方式,確定每個(gè)所述多細(xì)節(jié)層次切片中每個(gè)瓦片的加載;
28、創(chuàng)建緩沖集合,記錄每個(gè)邊緣相交的所述多細(xì)節(jié)層次切片相鄰的所述多細(xì)節(jié)層次切片,在加載相交的所述多細(xì)節(jié)層次切片的同時(shí)加載緩沖集合的所述多細(xì)節(jié)層次切片。
29、本技術(shù)還提出一種基于混合現(xiàn)實(shí)的建筑信息模型動(dòng)態(tài)交互系統(tǒng),所述基于混合現(xiàn)實(shí)的建筑信息模型動(dòng)態(tài)交互系統(tǒng)包括:
30、圖形語言傳輸格式模型重構(gòu)模塊,用于獲取目標(biāo)建筑信息模型的幾何信息和屬性信息,將所述幾何信息和所述屬性信息存儲于自定義數(shù)據(jù)結(jié)構(gòu)中,根據(jù)所述自定義數(shù)據(jù)結(jié)構(gòu)構(gòu)建圖形語言傳輸格式模型;
31、多細(xì)節(jié)層次模型分層模塊,用于對所述圖形語言傳輸格式模型的所述幾何信息進(jìn)行簡化,得到中間圖形語言傳輸格式模型,根據(jù)所述中間圖形語言傳輸格式模型構(gòu)建三個(gè)層級的多細(xì)節(jié)層次模型;
32、多細(xì)節(jié)層次模型分割模塊,用于使用空間索引分別對三個(gè)層級的所述多細(xì)節(jié)層次模型進(jìn)行分割,得到多個(gè)多細(xì)節(jié)層次切片;
33、動(dòng)態(tài)加載模塊,用于獲取混合現(xiàn)實(shí)的視錐體和視錐位置,根據(jù)所述視錐體和所述視錐位置確定每個(gè)所述多細(xì)節(jié)層次切片中每個(gè)瓦片的加載;
34、虛擬映射模塊,用于根據(jù)每個(gè)所述多細(xì)節(jié)層次切片的空間坐標(biāo)系,確定每個(gè)所述瓦片在世界坐標(biāo)系下的空間變換矩陣,得到每個(gè)所述瓦片在世界坐標(biāo)系下的位置。
35、本技術(shù)還提出一種終端,所述終端包括:存儲器、處理器及存儲在所述存儲器上并可在所述處理器上運(yùn)行的基于混合現(xiàn)實(shí)的建筑信息模型動(dòng)態(tài)交互程序,所述基于混合現(xiàn)實(shí)的建筑信息模型動(dòng)態(tài)交互程序被所述處理器執(zhí)行時(shí)實(shí)現(xiàn)如所述的基于混合現(xiàn)實(shí)的建筑信息模型動(dòng)態(tài)交互方法的步驟。
36、本技術(shù)還提出一種計(jì)算機(jī)可讀存儲介質(zhì),所述計(jì)算機(jī)可讀存儲介質(zhì)存儲有基于混合現(xiàn)實(shí)的建筑信息模型動(dòng)態(tài)交互程序,所述基于混合現(xiàn)實(shí)的建筑信息模型動(dòng)態(tài)交互程序被處理器執(zhí)行時(shí)實(shí)現(xiàn)如所述的基于混合現(xiàn)實(shí)的建筑信息模型動(dòng)態(tài)交互方法的步驟。
37、本技術(shù)的有益效果是:區(qū)別于現(xiàn)有技術(shù),本技術(shù)通過獲取目標(biāo)建筑信息模型的幾何信息和屬性信息,將幾何信息和屬性信息存儲于自定義數(shù)據(jù)結(jié)構(gòu)中,根據(jù)自定義數(shù)據(jù)結(jié)構(gòu)構(gòu)建圖形語言傳輸格式模型,可以避免在渲染階段會造成繪制調(diào)用過多的問題,減小cpu(central?processing?unit,即中央處理器)繪制調(diào)度的壓力,減少畫面卡頓情況的出現(xiàn);其次,本技術(shù)通過對圖形語言傳輸格式模型的幾何信息進(jìn)行簡化,得到中間圖形語言傳輸格式模型,根據(jù)中間圖形語言傳輸格式模型構(gòu)建三個(gè)層級的多細(xì)節(jié)層次模型,使用空間索引分別對三個(gè)層級的多細(xì)節(jié)層次模型進(jìn)行分割,得到多個(gè)多細(xì)節(jié)層次切片,實(shí)現(xiàn)實(shí)時(shí)渲染;此外,本技術(shù)通過獲取混合現(xiàn)實(shí)的視錐體和視錐位置,根據(jù)視錐體和視錐位置確定每個(gè)多細(xì)節(jié)層次切片中每個(gè)瓦片的加載,混合現(xiàn)實(shí)設(shè)備流暢加載建筑信息模型數(shù)據(jù),實(shí)現(xiàn)平滑過度;另外,本技術(shù)通過根據(jù)每個(gè)多細(xì)節(jié)層次切片的空間坐標(biāo)系,確定每個(gè)瓦片在世界坐標(biāo)系下的空間變換矩陣,得到每個(gè)瓦片在世界坐標(biāo)系下的位置,實(shí)現(xiàn)空間模型坐標(biāo)和物理世界坐標(biāo)的統(tǒng)一虛實(shí)映射,實(shí)現(xiàn)模型疊加,使得混合現(xiàn)實(shí)設(shè)備流暢渲染建筑信息模型數(shù)據(jù)。
38、應(yīng)當(dāng)理解的是,以上的一般描述和后文的細(xì)節(jié)描述僅是示例性和解釋性的,而非限制本技術(shù)。