• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      利用Dynamo 進行Midas Civil 與Revit 空間幾何數(shù)據(jù)交互方法初探

      2021-04-23 02:06:38張紅勇
      甘肅科技 2021年4期
      關鍵詞:命令語句建模

      張紅勇

      (中鐵七局集團第三工程有限公司,陜西 西安 710000)

      BIM 技術集成了構筑物幾何和非幾何信息,能夠完整的表達出設計的結果[1]。常用的BIM 核心建模軟件Revit 具有強大的模型處理功能,具備信息集成的能力。但模型在建立過程中,極少集成結構分析設計信息,且不具備結構分析功能,為BIM 模型實際應用打了不少折扣,因此對力學模型與實體模型的交互研究具有必要性。

      針對這一問題,董卯等[2]研究了利用C# 語言實現(xiàn)Revit 模型信息提取程序的二次開發(fā),實現(xiàn)了模型由Revit 到Midas Civil 的轉(zhuǎn)換。李澤宇等[3]利用Civil3D 二次開發(fā)功能創(chuàng)建軌道模型并導入Revit中,蘭南等[4]在橋梁結構設計中將BIM 技術和有限元仿真分析有機結合,通過Revit 的二次開發(fā)工具,建立了混凝土結構和預應力筋BIM 模型與有限元模型的直接映射關系。

      文章利用Revit 軟件的二次開發(fā)功能,利用Dynamo進行Midas Civil 與Revit 之間的空間幾何數(shù)據(jù)的交互,以達到“一模多用”,盡可能降低建模時間,提高建模效率的目的,通過一個貝雷架棧橋的建模說明實現(xiàn)數(shù)據(jù)交互具體途徑。

      1 交互研究模式

      數(shù)據(jù)信息在力學模型與實體模型傳遞過程中,可以歸納為以下兩種模式。

      1.1 直接交互

      直接交互可分兩種,一種是建模軟件具備一定的計算模塊,可實現(xiàn)簡單的計算功能。如Catia 的Generative Structural Analysis 模塊。這樣的軟件相對較少,且計算功能和計算場景有限。另外一種是分析計算軟件通過API 或建模軟件內(nèi)部接口,直接調(diào)用建模數(shù)據(jù),如Autodesk Robot Structural Analysis。這種情況下大多數(shù)是同一公司的產(chǎn)品。

      1.2 間接交互

      通過插件功能,生成中間格式模型(如sat、dwg、dxf 等),在專業(yè)計算軟件中調(diào)用生成模型數(shù)據(jù)。目前,大部分的軟件對接方式都采用間接交互的方式。采用間接交互,在生成中間格式模型時,容易造成信息丟失或錯誤,在研究交互時,應該測試不同條件類型數(shù)據(jù),以保證數(shù)據(jù)的準確性。

      在以上兩種交互方式中,還可以根據(jù)交互時是否可對軟件進行同步操作,又可分為雙向交互和單向交互。

      雙向交互能夠保持原有軟件數(shù)據(jù)格式,又能起連接軟件,實現(xiàn)實時數(shù)據(jù)互通的橋梁的作用,具備高效、專業(yè)的特點,是理想的交互方式。但由于各軟件廠商對軟件接口二次開發(fā)的開放程度不同,可查找的資源較少,實現(xiàn)起來較為困難。

      2 Midas Civil 與Revit 數(shù)據(jù)交互

      2.1 Midas Civil 數(shù)據(jù)交互

      Midas Civil 數(shù)據(jù)交互的方法主要有以下幾種:UI 界面輸入、表格輸入、dwf 文件導入、MCT 輸入。幾種交互方式對比見表1。

      表1 Midas Civil 輸入交互方式對比

      通過以上對比,選擇MCT 文件進行交互,是目前階段下進行數(shù)據(jù)交互最有效的方式。

      2.2 Revit 數(shù)據(jù)交互

      Revit 數(shù)據(jù)交互可以通過API、dynamo、excel、txt等進行交互操作。幾種對比方式見表2。

      表2 Revit 數(shù)據(jù)交互方式

      通過以上對比,選擇采用dynamo 進行數(shù)據(jù)交互,以簡單,通過dynamo 可視化設計,還可以將方法融入API 中,實現(xiàn)API 編程建立UI 進行高效交互。

      2.3 MCT

      MCT[5](Midas Civil Text)是在Midas Civil中,通過格式命令的方法輸入模型數(shù)據(jù)的界面,它可以通過任何文本編輯工具進行打開。利用MCT 命令,操作人員可以利用文本的形式快速地輸入模型數(shù)據(jù),并可以根據(jù)相關數(shù)據(jù)和已有的模型數(shù)據(jù)整合在一起,形成新的模型數(shù)據(jù),在建立模型時,也可以單獨輸入某個模型數(shù)據(jù)命令,例如節(jié)點坐標、單元、材料屬性、截面數(shù)據(jù)等。

      2.3.1 MCT 文件格式

      通過文本編輯工具打開MCT 文件如圖1 所示。

      圖1 MCT 文件

      通過MCT 幫助文件,可以看出,圖中符號有“分號(;)、等號(=)、星號(*)”等,其中,分號代表注釋語句,分號后面的字符不執(zhí)行,只是為了便于設計人員閱讀。星號代表命令行,星號后緊跟英文命令單詞,代表以下段落執(zhí)行該條語句,直到下一個星號出現(xiàn)前,結束該命令。每行代表一個語句行,執(zhí)行一條命令或數(shù)據(jù)。具體分析如下:

      (1)第1-4 行語句均以分號開始,為注釋語句,描述了此文件為MCT 文件以及文件建立的時間。

      (2)第6-9 行語句為星號開頭,代表中間執(zhí)行了第6 行星后的“VERSION”命令,代表版本,版本號為:8.3.2。

      (3)第6-9 行語句中,第6 行為“*UNIT;Unit System”,定義了系統(tǒng)所用的單位。其中分號前為命令,分號后為注釋。第7 行為“;FORCE,LENGTH,HEAT,TEMPER”,以分號開頭,為注釋行,表示接下的輸入數(shù)據(jù)分別為:“力、長度、重量、溫度”。第8 行為“KN,MM,KJ,C”,無任何符號開頭,為數(shù)據(jù)行,按第7行的格式,并執(zhí)行了第6 行的命令,定義了系統(tǒng)單位。

      后續(xù)格式類推,此處不舉例說明。

      2.3.2 MCT 文件命令

      MCT 文件命令,可以根據(jù)MCT 幫助文件查找。此處列舉空間有關的兩個命令,進行研究,其他相關命令可參照幫助文件。

      在“圖1MCT 文件”中的第21 行,有“*NODE”命令,此命令為建立節(jié)點命令,其數(shù)據(jù)格式為第22行“;iNO,X,Y,Z”注釋內(nèi)容。分別代表:iNO:節(jié)點編號;X:全局坐標系X 方向坐標;Y:全局坐標系Y 方向坐標;Z:全局坐標系Z 方向坐標。從第23 行起,就開始進行數(shù)據(jù)行,其中第23 行“1,0,0,0”代表第1 個節(jié)點,對應的X、Y、Z 坐標均為0,表示坐標原點。第24 行“2,3000,0,0”,代表2 號節(jié)點,X 值為3000,單位為第8 行的數(shù)據(jù)“MM(mm)”,以此類推。

      進入本文件單元命令數(shù)據(jù)段落,數(shù)據(jù)如圖2 所示:

      圖2 單元命令數(shù)據(jù)

      其中:第678 行“*ELEMENT”代表單元命令,下面有5 行注釋,分別代表了5 類單元類形輸入格式,分別為框加單元、壓/拉單元、面單元、體單元和框架參照點。從第684 行開始,為數(shù)據(jù),其中第684行表示:iEL(單元編號)為第1 個單元,TYPE(單元種類)為BEAM(梁單元),iMAT(材料編號)為1 號,iPRO(截面編號)為1 號,iN1(第一個節(jié)點編號)為1號節(jié)點,iN2(第二個節(jié)點編號)為3 號節(jié)點,ANGLE(Beta 角為0 度),以此類推。

      2.4 MCT 與Revit 空間數(shù)據(jù)交互實現(xiàn)

      2.4.1 交互總體思路

      通過Midas Civil 生成MCT 文件,并采用dynamo 中的python 腳本讀取,分別讀取mct 文件中節(jié)點,單位字段,并存儲在內(nèi)存中,利用dynamo 中的點命令,讀取內(nèi)存中的數(shù)據(jù),生成dynamo 的三維點坐標,再利用線命令,讀取內(nèi)存中的單元數(shù)據(jù),生成空間線單元,并輸出到Revit 中,實現(xiàn)空間數(shù)據(jù)轉(zhuǎn)換。通過以上思路,生成以下技術路線,如圖3 所示。

      圖3 技術路線

      2.4.2 交互主要代碼

      定義獲取數(shù)據(jù)、拆分子列表和輸出三個函數(shù),分別用于讀取經(jīng)轉(zhuǎn)換后的txt 文件、按列表取單個數(shù)據(jù)和輸出用于生成節(jié)點和單元的數(shù)據(jù),如圖4,圖5 所示。

      圖4 獲取數(shù)據(jù)函數(shù)

      圖5 拆分子列表與輸出函數(shù)

      利用python 自定義節(jié)點在dynamo 中生成的三維空間數(shù)據(jù)如圖6 所示。

      圖6 三維空間數(shù)據(jù)圖

      3 總結和應用展望

      在數(shù)據(jù)交互中,采用dynamo 讀取結構空間模型信息,為Midas 力學模型與空間模型的數(shù)據(jù)轉(zhuǎn)換提供了思路,并利用在dynamo 中編寫的python 腳本程序?qū)崿F(xiàn)了簡單的空間數(shù)據(jù)交互,一定程度上解決了BIM 軟件與有限元分析軟件間存在信息孤島的問題,為以后類似案例提供了可借鑒的模型數(shù)據(jù)互用解決方法,具有拋磚引玉的價值。

      猜你喜歡
      命令語句建模
      只聽主人的命令
      聯(lián)想等效,拓展建?!浴皫щ娦∏蛟诘刃鲋凶鰣A周運動”為例
      重點:語句銜接
      基于PSS/E的風電場建模與動態(tài)分析
      電子制作(2018年17期)2018-09-28 01:56:44
      不對稱半橋變換器的建模與仿真
      移防命令下達后
      精彩語句
      這是人民的命令
      如何搞定語句銜接題
      語文知識(2014年4期)2014-02-28 21:59:52
      三元組輻射場的建模與仿真
      金山区| 固始县| 建湖县| 霍林郭勒市| 苏尼特左旗| 邯郸市| 凤山县| 鄂州市| 大姚县| 内丘县| 普安县| 洪泽县| 汉沽区| 高密市| 水城县| 宜兰市| 昌乐县| 时尚| 林口县| 进贤县| 兴仁县| 龙井市| 高淳县| 峨眉山市| 临安市| 宿州市| 临沭县| 新巴尔虎左旗| 缙云县| 金门县| 博白县| 瑞金市| 霍山县| 韶山市| 清水河县| 曲沃县| 竹北市| 景宁| 台江县| 苍山县| 延安市|