System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术属于建筑信息建模,具体涉及的是一种revit-pkpm软件中梁构件的双向数据传输方法。
技术介绍
1、建筑信息建模(building information modeling,bim)技术已经成为国内外重点推广和使用的技术,在建筑设计、施工以及维护运营阶段均起到了重要作用。其中,revit是bim建筑模型信息化软件中使用最广泛的软件,在结构的三维实体模型构建、结构构件的优化等方面提供了新的辅助设计思路。但是单独使用revit软件无法满足建筑结构正向设计需要,即无法进行构件各种工况下力学性能的分析,无法进行结构整体分析和构件配筋计算,无法保证工程设计的科学性、合理性和安全性。
2、除此之外,目前国外的力学分析软件与我国的设计规范不匹配,无法满足我国的结构设计要求,因此需要与国产结构设计软件进行对接。pkpm是我国国产的结构设计软件,该软件可以对建筑结构在不同荷载条件下的行为进行建模和分析,并可以提供详细的设计建议。但pkpm软件与revit软件之间数据格式不一致,因此无法直接进行数据对接和信息交互,现有技术中通常使用手动输入模型数据等方法,但这些方法效率低下,而且无法保证数据的准确性和可靠性。
技术实现思路
1、本专利技术的主要目的在于克服现有技术中的不足,解决revit建模软件直接与pkpm结构设计软件无法直接进行数据对接和信息交互的技术问题,本专利技术提供一种revit-pkpm软件中梁构件的双向数据传输方法。
2、本专利技术通过以下技术方案予以
3、revit-pkpm软件中梁构件的双向数据传输方法,使用bim主流软件revit软件,借助其开放的应用程序接口(api)进行二次开发,创建与pkpm软件之间的数据传输接口的插件,包括以下步骤:
4、s1、提取revit软件中模型数据信息:首先,通过lookupparameter()函数和get_parameter()函数提取模型数据信息;其次,定义xmldocument并将声明信息加入至xmldocument中;再次,创建根节点、子节点,将所需存储信息存储至子节点及其属性中;最后,将xmldocument保存,通过数据传输接口导出建筑模型中的梁构件信息并存储至xml文件;
5、s2、使用pkpm软件开放的应用程序接口(api)进行二次开发,将步骤s1输出的xml文件中梁构件的基本参数信息写入pkpm软件建模算法中,反建梁构件模型;
6、s3、通过windows form窗体功能将步骤s2中pkpm软件结构设计软件导出的“.mdb”格式配筋信息转换为xml格式;
7、s4、以revit软件二次开发技术创建梁构件参数化三维钢筋模型,通过获取xml格式钢筋数据链接参数,将xml格式配筋信息导入至revit软件为梁构件进行配筋。
8、进一步地,在所述步骤s1中,所述模型数据信息包括梁构件的name、id、标高以及模型线,模型数据信息在revitlookup中显示。
9、进一步地,所述步骤s2包括以下步骤:
10、s2-1、添加pkpm软件“apiframeworkref.dll”引用;
11、s2-2、打开步骤s1中输出的xmldocument,创建xml阅读器xmlreader,根据选择根节点及其子节点,确定节点值及其属性信息,即梁构件的name、id、标高以及模型线等数据;
12、s2-3、提取pkpm软件建立梁构件结构模型需要的数据;
13、s2-4、根据pkpm开放的应用程序接口(api)创建梁构件信息,其中采用sectionkind()函数规定梁截面形状,采用sectionshape()函数规定梁截面,采用node代表建模平面节点位置,net代表建模平面网格位置,反建梁构件模型。
14、进一步地,所述步骤s3包括以下步骤:
15、s3-1、根据指定的“mdb.”文件获取其中的表格数据,根据从“mdb.”文件中读取的“table”,获取所有table的名称,进而获取所有数据表的名称并将其填充到treeview1中,从给定的“mdb.”文件中获取指定名称数据表的内容并将其返回到datatable数据表中;
16、s3-2、将datatable数据表与datagridview控件绑定,在窗体中看到mdb数据表具体内容;
17、s3-3、新建xmldocument或excel文件,将datagridview控件中的数据表输出。
18、进一步地,在所述步骤s4中,所述三维钢筋模型包括下部通长筋、支座筋、架力筋、箍筋以及构造钢筋。
19、进一步地,所述步骤s4中创建三维钢筋模型包括以下方法:
20、1).创建箍筋的方法:
21、定义creategj(doc,zhishu,beaminfo,jmspace,fmspace,view3d,gjtype,rshapegj)方法创建梁构件箍筋,并分别通过gjtype、jmspace、fmspace参数设置配筋信息中的箍筋钢筋类型、加密间距、非加密间距以及箍筋肢数,根据构件长度、钢筋保护层厚度、钢筋直径以及钢筋间距确定箍筋的空间位置;
22、2).创建下部通长筋的方法:
23、定义createdj(doc,beaminfo,xnum,view3d,djtype,djtype2,rshape01,gjtype,wgtype)方法创建梁构件下部通长筋,并分别通过djtype、wgtype、xnum、rshape01参数设置配筋信息中的下部通长筋钢筋类型、弯钩类型、数量以及形状,根据构件宽度、钢筋保护层厚度、钢筋直径以及钢筋数量确定下部通长筋的空间位置;
24、3).创建架立筋的方法:
25、定义createjlj(doc,beaminfo,snum,view3d,mjtype,rshape01,gjtype)方法创建梁构件架力筋,并分别通过mjtype、snum、rshape01参数设置配筋信息中的架立筋类型、数量以及形状;
26、4).创建支座筋的方法:
27、定义createzzj(doc,beaminfo,snum,view3d,mjtype,rshape01,gjtype,wgtype)方法创建梁构件支座筋,并分别通过mjtype、wgtype、snum、rshape01参数设置配筋信息中的支座筋类型、弯钩类型、数量以及形状;
28、5).创建腰筋的方法:
29、定义createzb(doc,beaminfo,num2,view3d,njtype,rshape01,gjtype)方法创建梁构件腰筋,并分别通过njtype、num2、rshape01参数来设置配筋信息中的腰筋类型、数量以及形状;
30、6).创建拉筋的方法:
31、定义createlj(doc,b本文档来自技高网...
【技术保护点】
1.Revit-PKPM软件中梁构件的双向数据传输方法,其特征在于,包括以下步骤:
2.根据权利要求1所述的Revit-PKPM软件中梁构件的双向数据传输方法,其特征在于:在所述步骤S1中,所述模型数据信息包括梁构件的Name、Id、标高以及模型线,模型数据信息在RevitLookUp中显示。
3.根据权利要求1所述的Revit-PKPM软件中梁构件的双向数据传输方法,其特征在于:所述步骤S2包括以下步骤:
4.根据权利要求1所述的Revit-PKPM软件中梁构件的双向数据传输方法,其特征在于:所述步骤S3包括以下步骤:
5.根据权利要求1所述的Revit-PKPM软件中梁构件的双向数据传输方法,其特征在于:在所述步骤S4中,所述三维钢筋模型包括下部通长筋、支座筋、架力筋、箍筋以及构造钢筋。
6.根据权利要求5所述的Revit-PKPM软件中梁构件的双向数据传输方法,其特征在于:所述步骤S4中创建三维钢筋模型包括以下方法:
【技术特征摘要】
1.revit-pkpm软件中梁构件的双向数据传输方法,其特征在于,包括以下步骤:
2.根据权利要求1所述的revit-pkpm软件中梁构件的双向数据传输方法,其特征在于:在所述步骤s1中,所述模型数据信息包括梁构件的name、id、标高以及模型线,模型数据信息在revitlookup中显示。
3.根据权利要求1所述的revit-pkpm软件中梁构件的双向数据传输方法,其特征在于:所述步骤s2包括以下步骤:
...
【专利技术属性】
技术研发人员:薛建英,王承书,李笑笑,史越,吴新生,刘洋,武晋锋,
申请(专利权)人:中北大学,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。