一种基于Revit平台的管道焊缝自动标注方法与流程

文档序号:20192926发布日期:2020-03-27 19:50阅读:2103来源:国知局
一种基于Revit平台的管道焊缝自动标注方法与流程

本发明属于石油管道施工技术领域,特别涉及一种基于revit平台的能在石油输油管道施工过程中进行管道焊缝自动标注的方法。



背景技术:

输油管道几乎全是压力管道,为了降低安全隐患,输油管道焊缝在焊接完成二十四小时内必须要抽样探伤,以保证施工质量。施工中,传统做法是在cad中先完成轴测图的绘制,在有焊缝的位置放置一个小圆圈,然后以黑色填充,最后在焊缝附近按顺序标注序号。操作机械繁琐,费时费力。

revit软件在民用建筑领域有良好的用户基础,在石油化工领域应用较少,并没有针对管道焊缝位置标注进行专门的研发,成为石油化工领域的发展的缺憾。



技术实现要素:

为了克服上述现有技术的缺点,针对输油管道二维图纸施工中存在的问题和revit软件开发自身的局限性,本发明的目的在于提供一种基于revit平台的管道焊缝自动标注方法。基于revit平台,实现了石油管道焊缝位置的自动标注;并可对输油管道施工过程的实际需求进行二次开发。

为了实现上述目的,本发明采用的技术方案是:

一种基于revit平台的管道焊缝自动标注方法,包括:

步骤一:建立管道的bim模型,以revit为图形支撑软件,创建平台;

步骤二:在所述平台下,对管道焊缝问题分类,并进行管道焊缝标注分析,过滤出当前三维视图中的所有管道,遍历所有管道,获取起始端管道、管道连接器以及所有管道的参数信息,计算出管道长度,求出焊缝个数,并对管道连接器进行排序,从起始连接器开始进行标注即贴标签,并计算管道长度是否大于单个钢管的长度n,大于n时自动在n的位置进行标注。

所述步骤一中,选择vs作为开发工具。

所述步骤二中,对管道焊缝问题分类为如下几种:第一种,管道和管道连接;第二种,管道和管道构件连接;其中,管道与管道、管道与管道构件相连接的部位称为管道连接器,管道连接器的宿主包括管道和管道构件;所述管道焊缝标注分析中,将所有管道收集到一个集合中,提取所有管道连接器,然后将管道连接器放进迭代器中进行迭代排序。

所述步骤二中,三维视图将视图平面设为xz平面,视图平面的法向量设为y轴,标注平面的y轴偏移量随着焊缝位置的y轴偏移量而定,当识别出管道焊缝位置后,将标签引线放置于和焊缝相同的xz平面内,标签显示平面为当前视图平面,标签相对于焊缝所在管道平面y轴偏移为零,令标注引线与z轴夹角45°。

设焊缝的空间坐标为p(pointx,pointz),标签基准点坐标为q(x,z),则向量与z轴夹角为α,标签引线长度q点坐标为所述步骤二中,基于visualstudio2013集成开发环境,并借助c#编程语言和revitapi对revit进行二次开发,实现算法。

本发明通过在revit搭建管道焊缝自动标注插件控制面板,可实现程序化控制。

与现有技术相比,本发明基于revit平台实现了管道焊缝的自动标注,并通过使用revit提供的api对所需功能进行插件的二次开发,创建管道焊缝自动标注插件,从而辅助工程技术人员进行工程量的统计和焊缝探伤的位置标记。相比较传统cad模式下的管道焊缝标注,revit平台下管道焊缝自动标注的优点:

(1)一键标注,快速,节省大量精力,减轻工程技术人员的工作量。

(2)标注准确,不存在遗漏现象。

(3)不仅能标注序号,还能拾取管道直径和材质信息。

(4)revit平台下的标注的管道,尺寸都是精确的,因此,更加有利于施工人员施工,也能帮助探伤技术人员快速找到需要探伤的焊缝位置。

附图说明

图1为本发明流程图。

图2为本发明技术路线图。

图3为本发明插件加载图。其中(a)为点击控制面板中的附加模块按钮,选择add-inmanager(manualmod)的界面图;(b)为将编译生成的.dll文件路径加载进来,选中插件名称,点击run插件开始启动的界面图。

图4为本发明管道焊缝标注算法流程图。

图5为本发明实施例中管道焊缝用cad标注的效果。

图6为本发明实施例中管道焊缝用revit管道焊缝自动标注的效果。

具体实施方式

下面结合附图和实施例详细说明本发明的实施方式。

参考图1和图2,本发明一种基于revit平台的管道焊缝自动标注方法,包括:

步骤1:确定软硬件配置,建立bim模型,确定开发工具,创建平台;

步骤1.1硬件推荐配置:

1)处理器:intel(r)xeon(r)cpue3-1230v2@3.3.ghz;2)内存:8.00gb;3)显卡:amdradeonhd5700series(两块;)4)硬盘:1tb5)其他配置:键盘、鼠标。

步骤1.2软件推荐配置:

1)操作系统:microsoftwindows1064-bitultimate;2)图形支撑软件:中文版autodeskrevit2015;3)开发工具:visualstudio2013,revit2015sdk;4)开发语言:c#;5).net框架:.netframework4.5(或更高版本)。

步骤1.3选择vs作为开发工具,进行调试准备。

步骤2:分析管道焊缝标注的特征和要求,提出管道焊缝自动标注算法。

步骤2.1对revit管道焊缝问题分类

管道存在焊缝的情况一共有如下几种:第一种,管道和管道连接;第二种,管道和管道构件(三通、四通、大小头、管帽等)连接;第三种,管道和阀门连接;第四种,管道构件和管道构件连接;第五种,管道构件和阀门连接。实际工程中一共存在以上5中情况需要焊接管道。

但revit中,要求管道构件与管道构件之间、管道构件与阀门之间必须由短接连接,否则不能构成系统。因此,所有的问题都简化成了管道与管道连接、管道与管道构件连接、管道与阀门连接的问题。既然所有的连接都有管道参与,那么可以将所有管道搜集到一个集合中,遍历所有管道连接器,然后再在合适的位置添加标签即可。

步骤2.2管道焊缝标注分析

管道焊缝自动标注插件的设计分为两部分,一部分是管道焊缝的拾取和排序,另一部分是标注。在revit中,管道与管道、管道与管道构件相连接的部位称为连接器,工程上叫焊缝。连接器的宿主包括管道和管道构件(阀门、弯头、三通、四通、管帽等)。通过宿主可以遍历其所有连接器,通过连接器也可以识别出宿主的类型,进而遍历该宿主的其他连接器。相互连接的连接器和同一宿主的所有连接器都存在物理上的连接或者逻辑上的连接,因此,通过其内部的关联性可以遍历出视图中所有连接器,也即是遍历出所有焊缝。因此,为了方便管道焊缝的提取,可以将所有管道收集到一个集合中,提取所有管道连接器,然后将管道连接器放进迭代器中进行迭代排序。但是,输油管道的无缝钢管长度一般为8至12米不等,如果管道处于管廊中,管廊长度短则几十米,长则几百米,一根管道不可能从起始端连至末端,肯定是很多根管道焊接而成。因此,将管道收集到集合中后,还要判断管道长度是否大于8米,如果大于8米则自动添加一道焊缝。

在二维视图中,管道标注的视图平面是xy面,视图平面的法向量是z轴,z轴偏移为零。而在三维视图中,可将视图平面设为xz平面,视图平面的法向量设为y轴,标注平面的y轴偏移量随着焊缝位置的y轴偏移量而定。

当识别出管道焊缝位置后,可将标签引线放置于和焊缝相同的xz平面内,标签显示平面为当前视图平面。标签相对于焊缝所在管道平面y轴偏移为零。因此,可暂且不考虑y轴,将问题简化为xz轴二维平面的问题。设焊缝的空间坐标为p(pointx,pointz),标签基准点坐标为q(x,z),则向量与z轴夹角为α,设标签引线长度为l,则可得:

q点坐标为

步骤2.3管道焊缝自动标注算法流程,具体步骤如表1所示:

表1管道焊缝自动标注

本发明可基于visualstudio2013集成开发环境,并借助c#编程语言和revitapi对revit软件进行二次开发,开发流程如图3所示。

在此基础上,可进行管道焊缝自动标注程序编写,在revit搭建管道焊缝自动标注插件控制面板。具体步骤如下:

步骤3.1编写程序,对应表1的7个步骤,有以下7个部分:

(1)过滤出当前三维视图中的所有管道;实现代码见程序代码1:

(2)遍历所有管道,并获取管径、材质、压力等参数,实现代码见程序代码2;

(3)为管径、材质、压力等参数创建标签,实现代码见程序代码3;

(4)移除参数相同的管道,实现代码见程序代码4;

(5)获取管道连接器,并遍历所有连接器,实现代码见程序代码5;

(6)从起始连接器开始进行标注(贴标签),实现代码见程序代码6;

(7)计算管道长度是否大于8米,大于8米时自动在8米的位置进行标注。程序整体流程如图4所示。

步骤3.2结合c#语言特点和revitapi,利用revit2014软件进行测试。对焊缝自动标注完成效果结果对比分析;步骤3.3管道焊缝自动标注结果分析。

步骤3.3管道焊缝自动标注插件控制面板搭建

通过调用iexternalapplication接口中的函数onstartup()和onshutdown(),实现在ribbon界面的选项卡中增加一个面板,面板中可以放置各种命令按钮。

点击控制面板中的附加模块按钮,选择add-inmanager(manualmod),如图3(a)所示,将编译生成的.dll文件路径加载进来,选中插件名称,点击run插件开始启动,如图3(b)所示。插件启动后,首先选取需要标注管道的起始端,起始端选定后,会弹出一个界面,需要确定直管段的长度以及起始焊缝的标注序,直管段的长度以及起始焊缝的标注序号确定完毕即可进行焊缝的自动标注。

步骤3.4结果对比

结合对某项目的进行测试,焊缝自动标注完成效果如图5所示:

步骤3.5管道焊缝自动标注结果分析

传统cad二维模式下的管道焊缝标注方法是先在轴测图上找到焊缝位置,然后在该位置出放置一个圆圈,以黑色进行填充,最后将焊缝序号放置其附近即可。基于revit的管道焊缝自动标注插件则不用像cad模式一样繁琐,只需加载插件,运行插件即可,节省大量重复工作。将多介质过滤器的部分管道分别用cad和revit管道焊缝自动标注插件进行标注对比,如图5和图6所示,图5和图6中的文本内容均为工程制图标准中的标注。

从标注效果图来看,管道焊缝标注插件基本实现了工程需求。管道焊缝自动标注插件开发的最初目的就是辅助探伤技术人员快速寻找管道焊缝位置,帮助工程技术人员统计工程量。虽然图中的管道焊缝并未能按顺序标注,但探伤技术人员根据序号依然能找到相应焊缝,功能总体上不影响使用。

程序代码1

程序代码2

程序代码3

程序代码4

程序代码5

程序代码6

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1