一种S3D风管模型空间拓扑关系解析及拓扑网络模型建立方法技术

技术编号:34528103 阅读:17 留言:0更新日期:2022-08-13 21:19
本发明专利技术公开了一种S3D风管模型空间拓扑关系解析及拓扑网络模型建立方法,涉及空间拓扑技术领域。本发明专利技术提供的S3D风管模型空间拓扑关系解析及拓扑网络模型建立方法,提供了一种根据风管设计模型自动分析内部元件的空间拓扑连接关系的方法,免去了分析人员通过观察设计模型进行元件空间拓扑连接关系解析的工作,大幅提升了工作效率和质量。大幅提升了工作效率和质量。大幅提升了工作效率和质量。

【技术实现步骤摘要】
一种S3D风管模型空间拓扑关系解析及拓扑网络模型建立方法


[0001]本专利技术涉及空间拓扑
,具体为一种S3D风管模型空间拓扑关系解析及拓扑网络模型建立方法。

技术介绍

[0002]S3D是一款广泛运用的三维设计软件;S3D软件作为一个集成化的、多专业参与的三维工厂建模软件,能够快速帮助各专业设计人员进行三维建模以及设计检查,大大提高了工作效率和设计质量;在化工及能源行业,S3D软件得到了广泛的应用并且已经有了无数成功的案例;
[0003]暖通专业的设计人员在完成设计模型建模后,需要通过力学分析计算来对设计完成的风管模型进行力学角度上的安全性分析从而保证整个设计模型的合理性,在此过程中需要搭建对应的分析计算模型来进行对应工作的开展;分析计算模型需要和实际的设计模型保持匹配从而保证计算结果能够真实反应到设计模型中,因此创建过程中需要大量参考设计模型的原始设计参数以及空间拓扑结构;
[0004]S3D软件并没有提供成熟可用的风管专业的拓扑关系分析程序,因此为了完成力学分析计算模型的创建,设计人员必须手动根据设计模型进行整个风管设计模型的拓扑关系网络的创建工作,耗费相关人员大量工作时间的同时极易造成人因误差的引入从而影响分析结果的准确性。

技术实现思路

[0005]本专利技术的目的在于提供一种S3D风管模型空间拓扑关系解析及拓扑网络模型建立方法,以解决上述
技术介绍
中提出的建立拓扑关系网络,耗费时间,同时容易造成误差。
[0006]为实现上述目的,本专利技术提供如下技术方案:<br/>[0007]一种S3D风管模型拓扑网络模型建立方法,包括以下步骤:
[0008]S1,获取项目中所有风管,存入自定义风管集合HVACRuns,完成后进入S2;
[0009]S2,创建风管集合existRuns存储已经遍历完成的风管对象,完成后进入S3;
[0010]S3,创建风管集合对象errorRuns存储设计存在错误的风管对象,完成后进入S4;
[0011]S4,创建风管集合对象extraRuns存储当前风管连接的其他风管,完成后进入S5;
[0012]S5,创建自定义对象UDPItem用于存储风管元件的拓扑关系结构,该结构包括当前元件或者feature对象、当前对象的坐标信息和连接单元集合,创建UDPItem对象集合ProjectUDPItemList存储整个项目中所有风管对象的拓扑关系结构,用于构成完整的拓扑关系网络,完成后进入S6;
[0013]S6,循环遍历所有风管,如果遍历完成,进入S18,如果遍历不完成,进入S7;
[0014]S7,查看当前风管是否已完成计算,完成计算返回S6,计算不完成进入S8;
[0015]S8,查看当前风管是否存在问题,存在问题返回S6,不存在问题进入S9;
[0016]S9,创建存储当前风管构成的拓普网络结构信息的集合UDPItemList,进入S10;
[0017]S10,对当前风管进行内部拓扑网络解析;如果顺利完成将结果存入UDPItemList,并获取和当前风管共同构成拓普网络的其他风管集合extraRuns,同时更新existRuns集合,进入S11;如果中间报错退出,更新errorRuns集合后直接进入S14;
[0018]S11,循环遍历extraRuns集合,如果遍历完成,进入S15,如果遍历完不成,进入S12;
[0019]S12,查看当前extraRuns是否已经在前面循环中完成过计算,如果是返回S11,如果不是进入S13;
[0020]S13,查看当前extraRuns是否已被判定存在问题,如果是返回S11,如果不是进入S10;
[0021]S14,将当前的整个拓扑网络中的所有风管进行错误处理,完成后返回S6;
[0022]S15,清空extraRuns,将UDPItemList中所有对象放入ProjectUDPItemList中,清空UDPItemList,返回S6;
[0023]S16,ProjectUDPItemList即代表获取的整个项目的风管的拓扑关系网络模型,结束。
[0024]优选的,所述S5中,连接单元集合分为主干连接单元以及分支连接单元两类,每类连接单元都包括连接对象本身以及连接点的坐标信息。
[0025]优选的,所述S14中将当前的整个拓扑网络中的所有风管进行错误处理,包括以下步骤:
[0026]S14.1,将existRuns中所有对象放入errorRuns中,进入S14.2;
[0027]S14.2,将extraRuns中所有对象放入errorRuns中,进入S14.3;
[0028]S14.3,清空existRuns集合,进入S14.4;
[0029]S14.4,清空extraRuns集合,进入S14.5;
[0030]S14.5,清空UDPList集合,进入S14.6;
[0031]S14.6,结束。
[0032]优选的,如果顺利完成将结果存入UDPItemList,并获取和当前风管共同构成拓普网络的其他风管集合extraRuns,同时更新existRuns集合,进入S11;如果中间报错退出,更新errorRuns集合后直接进入S15。
[0033]优选的,拓扑网络解析,包括如下步骤:
[0034]S10.1,获取当前风管内所有的元件对象集合partCol,进入S10.2;
[0035]S10.2,循环遍历partCol集合,遍历完成,进入S10.49,遍历没有完成进入S10.3;
[0036]S10.3,判断当前元件currentPart是否为DuctStockPart类型,如果是进入S10.4,如果不是进入S10.26;
[0037]S10.4,找到当前元件所有的连接元件集合cpartCol,循环遍历cpartCol,遍历完成进入S10.8,遍历没有完成进入S10.5;
[0038]S10.5,查看连接元件所属的风管是否在errorRuns里,如果在,将当前风管放入errorRuns集合,直接进入S10.51;如果不在进入S10.6;
[0039]S10.6,查看连接元件所属的风管是否在existRuns里,如果不在,将此风管放入extraRuns里,进入S10.7;
[0040]S10.7,如果连接元件为DuctStockPart类型,考虑到此类型结构复杂,需要将该元件细化为在连接点处的feature对象并将其和连接点坐标一并存入当前对象的连接元件集合connectpartCol,否则直接将连接元件连同连接点坐标一起存入connectpartCol中,返回S10.4;
[0041]S10.8,考虑到此类型结构复杂,找到当前元件下包含的所有feature对象features,接下来要以feature为单位构建拓扑连接网络,进入S10.9;
[0042]S10.9,循环遍历f本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种S3D风管模型拓扑网络模型建立方法,其特征在于,包括以下步骤:获取项目中所有风管,存入自定义风管集合HVACRuns;创建风管集合existRuns存储风管对象;创建自定义对象UDPItem用于存储风管元件的拓扑关系结构,创建UDPItem对象集合ProjectUDPItemList存储整个项目中所有风管对象的拓扑关系结构用于构成完整的拓扑关系网络;循环遍历所有风管,查看当前风管;创建存储当前风管构成的网络结构信息的集合UDPItemList;对当前风管进行内部拓扑网络解析,如果顺利完成将结果存入UDPItemList,并获取和当前风管共同构成网络的其他风管集合extraRuns,同时更新existRuns集合;如果中间报错退出,更新errorRuns集合;循环遍历extraRuns集合,查看当前extraRuns;将当前的整个拓扑网络中的所有风管进行错误处理;清空extraRuns,将UDP ItemList中所有对象放入ProjectUDPItemList中,清空UDPItemList;ProjectUDPItemList代表获取的整个项目的风管的拓扑关系网络模型。2.根据权利要求1所述的一种S3D风管模型拓扑网络模型建立方法,其特征在于,该拓扑关系结构包括当前元件或者feature对象、当前对象的坐标信息以及连接单元集合。3.根据权利要求1所述的一种S3D风管模型拓扑网络模型建立方法,其特征在于,连接单元集合分为主干连接单元以及分支连接单元两类,每类连接单元都包括连接对象本身以及连接点的坐标信息。4.根据权利要求1所述的一种S3D风管模型拓扑网络模型建立方法,其特征在于,进行拓扑网络解析,获取其他风管集合extraRuns,更新existRuns集合包含以下步骤:获取当前风管内所有的连接元件对象集合partCol;循环遍历partCol集合,当前元件为currentPart,判断当前元件currentPart是否为DuctStockPart类型;选择将该元件细化为在连接点处的feature对象,将该元件细化为在连接点处的feature对象,将其和连接点坐标一并存入当前对象的连接元件集合connectPartCol查看连接元件所属的风管是否在errorRuns里,将当前风管放入errorRuns集合;找到当前元件下包含的所有feature对象features;循环遍历features对象,判断当前feature是否为一个分支点类型;构建一个新的UDPItem节点,将feature的坐标和其本身对象放入UDPItem中;根据offline关系找到分支点feature对应的分支连接集合offlineFeatures;循环遍历offlineFeatures,找到当前offlineFeature对应的元件,判断元件是否为DuctStockPart;当前分支feature的UDPItem节点构建完成,将feature的坐标和其本身对象放入UDPItem中;如果找到的feature数量大于一个,查看其中是否存在分支点feature;在connectPartCol中查找和当前feature的起点坐标一致的连接元件;在features集
合中查看是否有起点坐标或终点坐标和当前feature的终点坐标一致的feature;并查看其中是否存在分支点feature;查看当前feature是否存在表面附着元件,通过offline关系获取对应的offlienFeatures;找到当前offlineFeature对应的风管元件,循环遍历offlineFeatures;当前对象为风管部件ductComponent,构建UDPItem节点存储以当前元件为单位的拓扑逻辑关系,将当前元件及其自身坐标放入UDPItem中;获取当前元件的所有参考端点集合referencePorts和所有连接点信息集合connectionCol,循环遍历referencePorts集合和connectio...

【专利技术属性】
技术研发人员:沈杰
申请(专利权)人:上海核工程研究设计院有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1