买专利,只认龙图腾
首页 专利交易 科技果 科技人才 科技服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

【发明授权】一种三维管道模型转换为MapGIS模型的系统和方法_上海核工程研究设计院股份有限公司_202011009688.1 

申请/专利权人:上海核工程研究设计院股份有限公司

申请日:2020-09-23

公开(公告)日:2024-04-09

公开(公告)号:CN112182871B

主分类号:G06F30/20

分类号:G06F30/20;G06F30/18;G06F16/29;G06F40/151;G06T17/00;G06F113/14

优先权:

专利状态码:有效-授权

法律状态:2024.04.09#授权;2023.04.07#著录事项变更;2021.01.22#实质审查的生效;2021.01.05#公开

摘要:本发明公开了一种三维管道模型转换为MapGIS模型的系统和方法,包括外部数据读取模块、S3D模型数据下载模块、点线结构计算模块、点线结构去重模块、点线表生成模块、Excel文件生成模块;本方案通过实现从S3D三维管道布置模型生成xls格式的中间文件并导入MapGIS的方法实现了S3D三维管道模型向MapGIS管网模型的自动转换,省去了设计人员二次建模的环节,提高了S3D三维模型的数据利用率并减少了设计人员的工作量。整个过程全自动完成,操作简便,生产效率高。

主权项:1.一种三维管道模型转换为MapGIS模型的方法,其特征在于,其方法步骤如下:S1,通过外部数据读取模块获取模型转换需要的外部数据,包括S3D项目配置信息、数据库类型、需要转换的系统号信息;S2,从S3D数据库中下载相关管道模型数据存储在S3D模型数据下载模块内存中;S3,将所述S3D模型数据下载模块下载的管道模型数据通过拓扑关系算法获取所有元件的拓扑连接关系,并存储成为对应的点线数据结构;S4,通过点线结构去重模块中找出重复的端点去除、合并三通点并且处理变径点,获得新的点线数据结构;S5,将去重后的所述点线数据结构的集合转化为MapGIS可接受的点线表形式;S6,将所述点线表转换为XLS文件格式;所述S3的步骤如下:S3.1,根据用户输入的系统号获取对应的所有管线对象pipeLine集合;S3.2,根据所述pipeLine集合获取对应的所有piperun对象集合,创建整体点结构和线结构对象;S3.3,循环读取所述piperun对象集合中的所有管段piperun,如果循环没有结束,进入S3.4;如果循环结束,进入S3.21;S3.4,根据所述piperun对象集合找到对应的pipeFeature集合;S3.5,判断所述pipeFeature集合中每个feature的类型,并记录对应的起点、终点、中心点以及类型,存入自定义集合pipingFeatureList;S3.6,从所述自定义集合pipingFeatureList中找出起始点,起始点条件为类型为“端点”以及“变径点”,同时其中一个端点不和其他任何pipingFeatureList中的对象相连而另一个端点和非“端点”以及“变径点”的对象相连,并且在所述pipingFeatureList中不存在分支,如果找到,进入S3.7;否则代表当前piperun存在问题,记录到日志中,回到S3.3进行下一个管段piperun的分析;S3.7,设定当前对象为起始对象,当前对象与其他对象连接的坐标为currentLocation,存入当前piperun的点结构和线结构,并将当前对象作为abovePipingFeature并从所述自定义集合pipingFeatureList中移除;S3.8,循环处理所述自定义集合pipingFeatureList中的对象,如果没处理完进入下一步,如果处理完进入S3.19;S3.9,如果所述自定义集合pipingFeatureList中的端点类型的对象正好是两个,直接从所述自定义集合pipingFeatureList中去除;S3.10,如果所述自定义集合pipingFeatureList为空,返回S3.3,否则进入下一步;S3.11,按照焊接连接情况查找后续连接对象,条件是端点坐标与所述currentLocation一致,如果找到记录此对象到当前piperun的点结构和线结构,并将此对象替换为abovePipingFeature,所述currentLocation替换为另一个端点坐标,回到S3.8,否则进入下一步;S3.12,按照abovePipingFeature是三通的一个分支处理,在所述自定义集合pipingFeatureList中查看是否有和abovePipingFeature进行支管相连的三通,如果存在,则将三通对象作为nextPipingFeature并存入tPointStructList,将nextPipingFeature当做abovePipingFeature,存入当前piperun的点结构和线结构,返回S3.8,否则进入下一步;S3.13,判断tPointStructList中的三通对象是否有起点或者终点与所述currentLocation一致的对象或者tPointStructList中是否有abovePipingFeature对应的三通,如果有且对象不是piperunLineStructList中最后两个,则要在当前piperun的线结构补充该对象的信息,形成闭合通路;S3.14,如果所述自定义集合pipingFeatureList中只剩下一个端点一个变径点,则把这两个分别存入当前piperun的点结构和线结构,回到S3.8,如果剩下两个都是端点,去除这两个对象,回到S3.8,其他情况进入下一步;S3.15,考虑非焊接连接,从abovePipingFeature找出对应的part,然后找到part对应的连接part,根据连接part在查找对应的feature,然后将所述currentLocation改为对应feature的端点坐标,回到S3.8,如果找不到,进入下一步;S3.16,代表上述分支已经结束,现在考虑是否能够从已有的三通集合出发,查找和已有三通对象起点或者终点一致的feature对象,如果存在,将三通对象的与其他对象连接的端点坐标作为所述currentLocation坐标,将三通对象作为abovePipingFeature,回到S3.8,否则进入下一步;S3.17,查找三通对象里是否有分支对象在所述自定义集合pipingFeatureList中,如果有把所述currentLocation改为分支对象与三通对象中心坐标更近的点,将三通对象作为abovePipingFeature,回到S3.8,否则进入下一步;S3.18,查找所述自定义集合pipingFeatureList中是否存在新的起点,起点判定条件和S3.6一致,如果没有,当前管段piperun有问题,写日志报错返回S3.3,否则设定新的起点与currentLocation,返回S3.8;S3.19,查看piperun的最后一个feature是否存在对应的三通feature,如果存在,要将其存入当前管段piperun的线结构,形成闭环;S3.20,去除管段piperun最终形成的点结构中坐标重合的点,保留三通点去除端点,去除的同时要把线结构中对应的对象一并去除,然后把管段piperun的点结构和线结构存储到整体的点结构和线结构中,返回S3.3;S3.21,结束所有piperun分析,形成最终的点结构和线结构。

全文数据:

权利要求:

百度查询: 上海核工程研究设计院股份有限公司 一种三维管道模型转换为MapGIS模型的系统和方法

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。