模型對比是從構件級來比較模型不同版本之間的差異。模型對比功能可以對比兩個不同版本模型之間的差異,這些差異包含構件關係的差異、構件資訊的差異以及模型中構件的增加與刪除等改動。構件資訊的差異是指匹配構件的屬性資訊、基本資訊、幾何資訊的差異;構件關係的差異是指構件父子節點關係的變化,管道系統中連線關係的變化;構件的增刪情況是指非匹配構件的新增/刪除、管道系統的增加與刪除以及系統中構件的新增與刪除。
模型對比可以在建築全生命週期中起到很大的作用,它可以應用於建築設計、施工和運維階段的bim模型版本更替中。
在建築的設計階段,設計師往往會因為需求的改變,對bim模型做出修改,導致不同版本的模型出現。模型對比功能可以快速準確地得出不同版本模型之間修改的內容,並將對比結果直接與相應構件進行繫結,避免人工檢查的不準確性,節省了人工檢查所花費的人力物力。
在建築的施工階段,施工方可以通過模型對比功能得到模型的具體修改內容,並根據修改內容對施工方案進行調整與優化,從而避免後續返工帶來的人力、財力損失。
在建築的運維階段,模型對比功能可以得出bim模型在設計、施工階段中不同需求下的差異,生成的比對結果可以為運維人員提供決策支援。
與此同時,在建築施工的全生命週期中,各專業間的協同作業是不可避免的。在團隊共同完成多維度任務時,版本管理就顯得尤為重要,而模型對比功能是版本管理的核心功能之一。通過模型對比,可以清楚地展示出各個版本之間的變化,從而控制版本迭代。
根據資料介面,發起模型對比的請求。
//發起模型對比請求
fetch(`
$/models/compare?model=58052122&model2=24158336&name=
$&enforce=true&devcode=$`
)
根據資料介面獲取模型對比的結果。
// 獲取模型對比結果介面
const
fetchmodelcomparedresults=(
)=>
/models/
$/compare/results?devcode=$`
).then
(result => result.
json()
).catch
(e => console.
log(e));
}
獲取到模型對比結果以後,顯示結果並繫結對應的操作事件。
// 獲取模型對比資料,拿到資料後建立左側展示面板
fetchmodelcomparedresults()
.then
(data =>);
});/**
* 載入修改後的模型,載入完後
* 飛躍到設定好的模型視角
* 將新增加的構件置色綠色,將修改的模型置色黃色
* 刪除沒有geometry的構件列表
*/viewer3d2.
addview
(modelkey2, devcode)
;// 監聽模型載入完成
.viewer3d2.
getviewerimpl()
.modelmanager
.addeventlistener
(bimwinner
.bos3d
.events
.on_load_complete
,function
(event));
modelcomparedresult.attributes.
foreach
(item =>);
});}
else})
;
如何將兩個hex檔案合併
question 由於分散載入檔案設定的原因,工程生成的 hex檔案被分成兩部分,一般情況下使用 flash magic answer 本文只介紹如何將 hex檔案合併的問題 以附件的兩個 hex檔案為例,該程式執行在 easyarm2131 開發板上,通過串列埠向外傳送資料。rom exec1 檔...
如何將兩個有序鍊錶合併成乙個鍊錶
具體思想就是新建乙個鍊錶,然後比較兩個鍊錶中的元素值,把較小的那個鏈到新鍊錶中,由於兩個輸入鍊錶的長度可能不同,所以最終會有乙個鍊錶先完成插入所有元素,則直接將另乙個未完成的鍊錶直接鏈入新鍊錶的末尾。1 遞迴演算法 也容易理解,但是它的弊端也很明顯時間空間開銷都很大,效率低 2 非遞迴演算法 1 兩...
如何將Excel中兩個單元格或兩列中的資料合併
如果資料分別在兩個單元格中,而您希望將它們合併到乙個單元格內,就可以使用乙個帶 操作符的公式。例如,a 列是姓氏列表,b 列是名字列表,那麼可以在儲存格 c1 中輸入以下公式 a1 b1 如果 a1 中是 李 而 b1 中是 小明 則 c1 將顯示 李小明 若要在姓和名中間新增乙個空格,可以使用以下...