思路總覽
先看看預(yù)期成果:
1厌漂、創(chuàng)建網(wǎng)架桿件和球體
外形:使用自適應(yīng)構(gòu)件創(chuàng)建桿件,和球體烧栋。自適應(yīng)構(gòu)件的端頭的:套管写妥、螺桿、錐頭采用基于面的專用族审姓,嵌套使用珍特。
數(shù)據(jù):各個(gè)嵌套族相關(guān)結(jié)構(gòu)計(jì)算參數(shù)實(shí)例化,最后暴露在一個(gè)命名為XXX桿件的族內(nèi)容魔吐,參數(shù)化控制內(nèi)容:桿徑扎筒,端頭長度……等
2莱找、獲取異形桿件定位數(shù)據(jù)
源數(shù)據(jù):在Rhino中獲取,開發(fā)接口Rhinocomman嗜桌。
存儲(chǔ):SQL奥溺,采用表格存儲(chǔ),表格設(shè)計(jì):節(jié)點(diǎn)表骨宠,桿件信息表浮定,桿件結(jié)構(gòu)信息采用圖層和命名管理。
數(shù)據(jù)聯(lián)動(dòng)方式:實(shí)體的構(gòu)件點(diǎn)(球節(jié)點(diǎn))层亿,線(桿件)采用UUID唯一標(biāo)示桦卒,數(shù)據(jù)關(guān)聯(lián)采用兩點(diǎn)成直線的幾何拓?fù)潢P(guān)系標(biāo)記桿端點(diǎn)號(hào)。
3棕所、生成桿件信息
軟件:Revit2016
開發(fā)工具:VS2015
(做著做著 發(fā)現(xiàn)這個(gè)程序內(nèi)容很長我就把它分開做吧闸盔,做成一個(gè)系列文章)
異形網(wǎng)架的BIM展示程序
文章1:自適應(yīng)球節(jié)點(diǎn)族的制作
文章2:自適應(yīng)桿件的制作
文章3:數(shù)據(jù)庫的搭建
文章4:Rhino數(shù)據(jù)的獲取
文章5:Revit開發(fā)實(shí)現(xiàn)
建立參數(shù)化的桿件和球體
自適應(yīng)桿件
套管
………………待完善
錐形頭
………………待完善
螺桿
………………待完善
自適應(yīng)球
………………待完善
獲取異形網(wǎng)架的定位數(shù)據(jù)
數(shù)據(jù)源
數(shù)據(jù)源的獲取:
Rhinocomman 程序:
存儲(chǔ)內(nèi)容與方式
SQL 存儲(chǔ)
存儲(chǔ)采用 點(diǎn)(球節(jié)點(diǎn))琳省,線(桿件存儲(chǔ))
點(diǎn)(Nodedetail):ID(默認(rèn)行)迎吵;number(點(diǎn)編號(hào));Label(點(diǎn)標(biāo)簽);PointID(Rhino Point UUID) X ;Y ;Z ;updateData(點(diǎn)錄入時(shí)間)
線(Beamdetail):ID(默認(rèn)行);number(梁編號(hào));Label(梁標(biāo)簽);Secationname(截面名稱)………………
拓?fù)潢P(guān)系:以點(diǎn)的 number 為連接针贬,獲取線的起始點(diǎn)之后击费,找到點(diǎn)的編號(hào)存儲(chǔ)在Beamdetail內(nèi),形成簡單的拓?fù)潢P(guān)系桦他。
創(chuàng)建轉(zhuǎn)換程序
UI截面設(shè)計(jì):
梁數(shù)據(jù)存儲(chǔ) 桿件的信息蔫巩,節(jié)點(diǎn)數(shù)據(jù)存儲(chǔ)節(jié)點(diǎn)信息,預(yù)計(jì)會(huì)增加快压,截面調(diào)整 tabpage圆仔。通過生成按鈕一鍵生成網(wǎng)架。
參數(shù)的讀取
開發(fā)工具:VS2015蔫劣,插件DevExpress 15.2 Datagrid 控件坪郭,(如UI所示已經(jīng)獲取到數(shù)據(jù)庫數(shù)據(jù))。