999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于Dynamo 的族構件精準放置建模方法研究

2023-09-12 06:54:30王茹珍王慶國
土木建筑工程信息技術 2023年3期
關鍵詞:方法

王茹珍 王慶國

(武漢科技大學 汽車與交通工程學院,武漢430081)

引言

路橋BIM 是構建智慧交通的基礎[1],高效率、智能化的路橋BIM 建模對于長周期、大任務量的生產設計與施工運營管理具有重要意義[2]。因此,探索一種路橋BIM 高效建模方法成為路橋工程領域數字化建設的研究熱點[3]。

目前,根據標高與軸網進行定位放置常規族構件的傳統路橋BIM 建模方式(下文簡稱傳統手工建模方法M1)效率低,不具有構建與批量處理形體扭曲度高的復雜族功能,且在緩和曲線段建模過程中存在以直代曲的誤差[4,5]。雖然部分學者利用Dynamo 編程技術對手工建模方式進行了改進,將族的放置點里程號進行了標識與分類識別(下文簡稱奇偶列分類建模方法M2),實現了族構件批量旋轉放置建模,但其未考慮路拱坡度,族構件放置精度較低[6,7]。

針對以上問題,本文提出了由數據驅動的新型BIM 智能建模方法(下文簡稱智能建模方法M3),基于Dynamo 平臺進行常規功能節點、DesignScript 代碼塊與自定義PythonScript 節點端口匹配,實現“族”精確放置程序設計。首先,通過DesignScript 代碼塊與常規功能節點結合進行數據讀取,利用PythonScript 節點調用Revit.API 第三方庫,將公用函數封裝成函數節點進行參照點坐標系修正。然后通過PythonScript 節點遍歷中心線里程列表,依次調整族的放置參照點,從而使族構件實現批量精確定位放置。

1 基于Dynamo 高精度定位的自適應族放置程序設計

本文基于自適應嵌套族的放置程序設計主要分為三個階段:

(1)基于常規功能節點與代碼塊串接的路橋中心線數據源處理程序設計;

(2)基于常規功能節點與代碼塊串接的自適應嵌套族數據源處理程序設計;

(3)基于自定義Python Script 節點的嵌套族參照點坐標系修正程序設計。

1.1 路橋中心線數據源處理程序設計

路橋中心線數據源的創建及數據讀取和處理程序是開展自動化離散放置族構件的BIM 設計工作基礎[8,9]。

以Dynamo 為設計平臺,利用File.Path 節點獲取橋梁中心線樁號的數據源文件存儲路徑,并將文件路徑作為參數傳入Files.FromPath 節點,該節點通過文件路徑獲取并傳出文件對象。利用Data.ImportExcel 節點獲取文件對象逐樁坐標表中的坐標信息和對應樁號的高程信息,將其傳入List.Deconstruct 節點,同時生成含每列數據字段名的第一項列表和含有設計數據的其余項列表兩部分。

含有設計數據的列表通過List.Transpose 節點實現列表行列互換(設計數據轉置為按列分類的數據列表),空值占位保證列表轉化前后始終為矩形形態,避免后續節點讀取數據失敗而報錯。由Code Block 節點根據占位符參數讀取相應數據列表,由Point.By Coordinates節點讀取x、y、z 參數相對應的笛卡爾坐標數據列表,并通過笛卡爾坐標系形成點規范表數據,按照樁號生成一系列路線中線點數據。

利用PolyCurve.Bypoints 節點將含有點數據列表的道路中線點擬合為多段線,再利用Curve.PointsAtEqualChordLength 節點等間距分割,并通過List.NormalizeDepth 節點實現起始與終點坐標整合,將其傳入NurbsCurve.ByPoints 節點進行折線點間插值,最終在Revit 界面生成具有均勻局部坐標系的相對光滑橋梁中心線。

基于Dynamo 編程節點的中心線樁號數據處理程序如圖1 所示。

圖1 道路數據處理程序圖

1.2 自適應嵌套族參數處理程序設計

在確定族構件沿路橋中心線放置的里程數據源后,還需分析路橋上部結構、下部結構和附屬結構的族類型建造方式,確定其與路橋中心線正向沿線方向的旋轉角度和距離參數,進行族類型參數數據源的讀取與處理程序設計。

利用Files.fromPath 節點調取族類型設計數據,Data.ImportExcel 節點讀取外部Excel 文件中處理完成的設計數據[10]。通過List.Deconstruct 節點生成含每列數據字段名的第一項列表和含有設計數據的其余項列表兩部分。將含數據字段名的列表傳入List.TakeItems節點,使Code Block 節點值為負一,讀取倒數第一列編碼數據字段名,隨后將編碼數據字段名通過String from Object 節點轉化為字符串格式,作為參數名稱傳入Element.SetParameterByName 節點的ParameterName接口,從含有設計數據的其余項列表中讀取編碼數據,作為參數值傳入Element.SetParameterByName 節點的Value 接口。

利用Code Block 節點讀取經轉置的設計數據其余項列表中起始樁號、里程號、族類型名稱和族類型旋轉角度,并設計里程號減去起始樁號的值為python 節點預放置的族實例距離起點的距離參數。

基于Dynamo 編程節點的族類型數據源處理程序如圖2 所示。

圖2 族類型數據處理程序圖

1.3 自適應嵌套族局部坐標系旋轉修正程序設計

根據族類型沿線放置里程及其與中心線正向沿線的旋轉角度和距離參數進行排布放置的族構件精度較低[11,12]。本文在Dynamo 平臺中進行python script 節點的自定義,批量計算每一里程樁號的局部坐標,使自適應族根據參照點局部坐標進行精確定位并放置。

旋轉定位放置方法流程如圖3所示,設計步驟如下:

圖3 旋轉定位放置方法流程圖

(1)通過相鄰旋轉軸正方向一點(非原點)與原點坐標值之差判定族類型旋轉方向,差值為正,則為順時針方向,差值為負,則為逆時針方向;

(2)利用放置點處的平面坐標方位角、縱向傾角及其在對應局部坐標系與世界坐標系軸向量上投影的夾角,進行曲線方向方位角計算;

(3)通過族類型的ID 標識,將族實例繞世界坐標系對應軸進行自適應參照點旋轉。

通過以上步驟,能夠使自適應參數族在線性空間上通過捕捉自適應點坐標系實現自由旋轉,從而根據道路中心線完成自動化布置任務。鑒于程序具有繼承性、可移植性與穩定性等特性,對此算法進行封裝處理。封裝該節點時將輸入接口設定為緩和曲線、族類型名稱列表、族類型旋轉角度列表、繞X 軸旋轉布爾值和繞Y 軸旋轉布爾值等參數,然后添加調整族參數,即輸出接口設置為構件,并通過Element.SetParameterByName 將類型編碼參數自動批量化添加至族類型屬性信息。封裝后的節點程序設計對比傳統根據奇偶列分類標識放置族構件的Dynamo 程序解決了代碼塊冗余、族構件定位放置精度低等問題,傳統奇偶列分類建模方法M2 的程序設計如圖4 所示,本文所提智能建模方法M3 的旋轉定位放置程序設計如圖5 所示。

圖4 基于奇偶列分類放置族的程序設計圖

圖5 旋轉定位放置方法程序設計圖

2 實驗驗證與分析

為驗證所提智能建模方法M3 的建模放置精度與程序運行時間效率提升效果,本文以某橋附屬結構BIM中路燈及護欄的參數化自適應嵌套族構建與放置為例,運用傳統手工建模方法M1、奇偶列分類建模方法M2和智能建模方法M3 進行對比實驗。程序運行硬件環境:CPU 為AMD R7-5800H;主頻:3.20GHz;內存:16GB;運行軟件:Revit2020_Dynamo2.5.0。

2.1 參數化自適應嵌套族的構建

本文在傳統“公制常規模型”基礎上,借助“自適應公制常規模型”模板創建橋梁附屬結構路燈、護欄的嵌套族。即新建自適應公制常規模型樣板項目,設置自適應參照點。基于連接空間中參考點放置線的設計方法,通過調整自適應參照點工作平面,對放置位置進行合理改變。鑒于實例坐標系自適應點的坐標不貼合體量環境的坐標系和貼合放置點處的坐標系,而是保持自適點自身的XYZ 軸方向不變,因此將常規族路燈、常規族護欄載入自適應常規族項目中,設定參照點1 為坐標系原點,使其自適應并定向為實例坐標系(xyz),添加材質,設定放置點為自適應點從而形成路燈、護欄嵌套族,分別如圖6 ~圖7 所示。由于自適應嵌套族的建模核心是參數的設計和綁定,參數設定的主要目的是通過調控相應參數,高效驅動族類型其位置、數量、空間尺寸等屬性信息的改變,使模型有唯一對應解的過程[13,14]。因此本文采用連接空間中自適應參考點,將放置線參照對齊鎖定,進行詳圖族中相關參數與構件參數關聯交互,自適應路燈、護欄嵌套族參數關聯圖分別如圖8 ~圖9 所示。

圖6 路燈嵌套族

圖7 護欄嵌套族

圖8 路燈參數關聯圖

圖9 護欄參數關聯圖

2.2 由數據驅動的中心線生成

在初始數據讀取與處理模塊,本文設計的可視化節點程序采用控制點(路燈/護欄放置對應的中心線點)生成要素線,橋梁中心線確定橋梁走向的建模思路。首先對族的幾何、位置等信息的邏輯關系及算法結構進行分析,創建了含有嵌套族的族名稱、起始樁號、里程號、及偏轉角度等關鍵信息的Excel 表格,自適應嵌套族路燈和護欄的部分族數據源創建分別如表1~表2 所示。其次通過某橋梁工程項目建筑平面施工圖中的道路中心線樁號里程信息和高程信息,提取出控制點的x、z坐標值,然后通過對嵌套族的關聯參數進行分析。由于本項目中嵌套族路燈放置點高程參數h1 為0.8m,放置點距中心線水平距離參數l 為9m,即自適應族放置點沿y 方向偏移x 軸規范距離9m,因此不需要讀取參數L,即橋梁中心線南北方向偏移值默認取0,控制點y 坐標值為0;嵌套族護欄放置點高程參數h1 為0m,放置點距中心線水平距離參數l 為0m,即自適應族放置點沿y 方向偏移x 軸規范距離0m,因此需要讀取參數L,即橋梁中心線南北方向偏移值默認取8.25m,控制點y 坐標值為0。創建橋梁中心線坐標表如表3 所示。

表1 路燈族數據表

表2 護欄族數據表

表3 橋梁中心線坐標表

通過橋梁中心線和自適應路燈、護欄嵌套族參數處理程序讀取起始里程樁號、相鄰族類型需放置的里程樁號、族類型名稱及相對于道路中心線里程號增大方向的旋轉角度,生成放置中心線效果分別如圖10(a)~(b)所示。

圖10 自適應嵌套族模型

2.3 基于旋轉放置方法放置族類型

由于橋梁中心線與參數化自適應嵌套族路燈及護欄數據處理結果實現了X、Y 定位值準確,因此高精度定位調整僅需嵌套族繞Z 軸進行旋轉放置。在自適應嵌套族參數處理程序設計中將繞X 軸旋轉布爾值和繞Y 軸旋轉布爾值調整為False;調用批量創建空間模型的Revit.API,運行程序使自適應族中的自適應點按照旋轉放置算法邏輯與Dynamo 程序調整的Z 坐標一一映射,完成Dynamo 工作空間與Revit 指定圖層的模型輸出。因此由智能建模方法M3 驅動的路燈嵌套族和護欄嵌套族在Revit 工作空間中的局部自動化放置效果分別如圖11(a)~(b)所示,所測試族構件均精確放置到定位點。

圖11 基于M3 方法的放置圖

2.4 實驗分析與結論

傳統手工建模M1 方法輸出至Revit 內的部分路燈族和護欄族效果分別如圖12(a)~(b)所示,由于傳統手工建模不可避免會出現視覺偏差,從而導致三維建模精確度不足,因此由自適應嵌套族旋轉放置程序設計的M3 方法,在一定程度上能夠避免人工放置誤差,提高建模精度。

圖12 基于M1 方法的族放置圖

為對比本文所提智能建模方法M2 與奇偶列分類建模方法M3 的程序設計時間,取10 次Dynamo 中Tune UP 節點所測的不同規模族構件放置程序運行所耗時間平均值作為主要評價指標,程序運行所耗平均時間的具體數值如表4 所示。可見相對于利用傳統Dynamo程序實現奇偶列分類放置族構件的M2 方法,智能建模方法M3 的建模程序平均運行時間減少約60%;就不同BIM 建模方式的階段性建模效率對比,智能建模方法M3 相對于人工建模方法M1 和利用傳統Dynamo程序實現奇偶列分類放置族構件的M2 方法,其數據源構建與程序設計的高效性也使其在建模工作總進程中具備一定優勢,如圖13 所示。

表4 M2 與M3 程序運行時間數據表

圖13 各階段建模消耗時長對比圖

3 結束語

針對大型復雜項目,利用自適應嵌套族的精準定位放置程序進行BIM 建模,可根據路橋中心線坐標表將構件自動放置,建模效率提高數倍以上。

本文采用以世界坐標系為基準旋轉放置參照點局部坐標系的精準定位算法,借助于Python 語言在Dynamo 平臺上完成了自適應常規模型嵌套族在Revit三維空間內的自動化批量精準放置,實現了以下三個方面的要求:

(1)建模技術路線方面,統一梳理了對于具有參數化,族類型的復雜工程建模過程中的數據處理邏輯;

(2)BIM 模型精度方面,通過數據驅動實現族構件自動化批量放置,保證了模型精度,解決了復雜線性工程的建模難點;

(3)建模效率方面,利用Python Script 自制節點,實現模型的參數快速更新,有效減少人機交互,提高同類型模型修改重建的效率。

猜你喜歡
方法
中醫特有的急救方法
中老年保健(2021年9期)2021-08-24 03:52:04
高中數學教學改革的方法
河北畫報(2021年2期)2021-05-25 02:07:46
化學反應多變幻 “虛擬”方法幫大忙
變快的方法
兒童繪本(2020年5期)2020-04-07 17:46:30
學習方法
用對方法才能瘦
Coco薇(2016年2期)2016-03-22 02:42:52
最有效的簡單方法
山東青年(2016年1期)2016-02-28 14:25:23
四大方法 教你不再“坐以待病”!
Coco薇(2015年1期)2015-08-13 02:47:34
賺錢方法
捕魚
主站蜘蛛池模板: 国产成人亚洲综合a∨婷婷| 伊人成人在线视频| 欧美视频免费一区二区三区| 国产AV毛片| 色有码无码视频| 国产香蕉97碰碰视频VA碰碰看| 露脸真实国语乱在线观看| 人妻少妇乱子伦精品无码专区毛片| 免费毛片全部不收费的| 精品人妻系列无码专区久久| 亚洲欧美在线看片AI| 国产无码精品在线播放| 久久久成年黄色视频| 老司机久久99久久精品播放| 日本久久久久久免费网络| 国产黄在线免费观看| 亚洲熟女中文字幕男人总站| 伦精品一区二区三区视频| 亚洲男女在线| 国产精品真实对白精彩久久| 在线看片中文字幕| 激情午夜婷婷| 久久久波多野结衣av一区二区| 国产美女在线免费观看| 国产精品lululu在线观看| 国产大片黄在线观看| 亚洲日韩图片专区第1页| 91成人免费观看| 三上悠亚一区二区| 亚洲视频a| 国产喷水视频| 亚洲第一av网站| 嫩草在线视频| 亚洲欧美激情另类| 国产在线精品网址你懂的| 全色黄大色大片免费久久老太| a毛片在线| 国产又大又粗又猛又爽的视频| 波多野结衣一区二区三区四区视频| 国内老司机精品视频在线播出| 特级精品毛片免费观看| 99精品这里只有精品高清视频| 色综合五月婷婷| 91精品最新国内在线播放| 尤物成AV人片在线观看| 四虎影视8848永久精品| 欧美中文字幕一区| 99精品伊人久久久大香线蕉| 人妻少妇久久久久久97人妻| 国产精品尤物铁牛tv | 中文字幕亚洲电影| 日韩在线影院| 9啪在线视频| 在线a网站| 亚洲第一极品精品无码| 色网在线视频| 成年人国产视频| 免费国产好深啊好涨好硬视频| 国产成人精品无码一区二 | 欧美成人午夜影院| 久久亚洲欧美综合| 日韩成人在线视频| 日本在线免费网站| 伊人91在线| 日韩a级片视频| 国产国模一区二区三区四区| 制服丝袜国产精品| 日韩东京热无码人妻| 亚洲精品无码AV电影在线播放| 成年人免费国产视频| 国产老女人精品免费视频| 首页亚洲国产丝袜长腿综合| 91青青视频| 91久久偷偷做嫩草影院免费看 | 日本成人一区| 国产成人精品视频一区二区电影| 九九热精品视频在线| 成人免费视频一区二区三区| 国产成人三级| 国产精品亚欧美一区二区三区 | 亚洲第一综合天堂另类专| 亚洲开心婷婷中文字幕|