基于Grasshopper的设计模板库生成方法及系统技术方案

技术编号:34994831 阅读:40 留言:0更新日期:2022-09-21 14:42
本发明专利技术提供了一种基于Grasshopper的设计模板库生成方法及系统,包括打开典型设计图纸;利用选取命令框选需要制作模板的系统要素组合;开发复制图形和文字块的处理模块程序;将读取的原始图元转化为线段;获取图形处理得到的全部线段的端点;获得选中图形的左下角边界点;在画布上自动生成重画图形的电池块;复制图形模块中读取选中文字标注的属性;自动连接文本相同的Panel;开发配对电池块,自动关联配对的TX和RX的Panel;自动组合所有自动生成的电池块。本发明专利技术可以让计算机以一键生成的方式自动编制图纸更新的模板,而且在模板中可以直观地显示图纸上的图形和标注信息,模板中的数据与图纸上的设计元素之间一一对应。数据与图纸上的设计元素之间一一对应。数据与图纸上的设计元素之间一一对应。

【技术实现步骤摘要】
基于Grasshopper的设计模板库生成方法及系统


[0001]本专利技术涉及变电站二次系统原理图设计的
,具体地,涉及基于Grasshopper的设计模板库生成方法及系统,尤其涉及基于Grasshopper的快速设计模板库生成。

技术介绍

[0002]变电站二次系统原理图设计一般采用流行的CAD软件进行绘图和标注。目前,由于国家电网企业都在二次设计过程中推行典型设计模板,同时参考了ABB等国际公司的工程配置做法,在设备选型方面推行“九统一”制度,在功能配置、定值格式、报告输出、接口标准、组屏方式、回路设计、面板显示、装置菜单和信息规范九个方面保持统一。在此背景下,不同电压等级的变电站一般采用典型施工图设计作为新设计项目的参考设计。
[0003]在设计新的变电站二次系统时,设计人员根据新站的个性化要求和选择设备厂家的不同,在典型参考设计的基础上加以修改,形成新站的设计方案。在上述基于参考设计的修改过程中,由于二次设计的数据间具有丰富的关联,特别是同一个数据可能分散在不同的图纸上,或者同一张图纸上的数据之间也有强数据关联,如发送数据的端子TX和接受数据的端子RX之间。但是在实际工作中由于任务重,时间紧,和设计过程经常被施工现场联络打断等原因,经常在修改设计时出现遗漏或不一致甚至错误。这些问题如果不能被及时发现,将会对后续的施工和运维造成严重的不利影响。
[0004]解决上述问题的一个主要技术手段是制作参考设计的修改模板,曾有企业尝试用数据库关联或者Excel表格的形式建立数据模板,在Excel数据模板中通过脚本程序和公式建立了不同数据之间的关联,同时在Excel数据项与图纸上的CAD元素之间建立了对应关系,并且开发了CAD插件。用户只需要在Excel模板表格中修改该数据,然后利用CAD插件实现图纸的自动修改。
[0005]上述软件虽然解决了数据之间,数据与图纸之间的关联修改问题,但是Excel模板的编写仍旧依靠人工解决。建立模板的过程非常繁琐、复杂、容易出错;而且需要人工分析数据之间的关联,在Excel表格中手工编写公式或者规则的脚本,这样做不仅编写效率低,而且调试也需要花费大量的时间。再者,使用上述的模板更新图纸的过程中,由于Excel模板中的数据与图纸上的图形和标注信息之间的对应经常不够直观方便,缺乏可视化的界面或提示,也影响了设计人员的工作效率。
[0006]因此,需要提出一种新的技术方案。

技术实现思路

[0007]针对现有技术中的缺陷,本专利技术的目的是提供一种基于Grasshopper的设计模板库生成方法及系统。
[0008]根据本专利技术提供的一种基于Grasshopper的设计模板库生成方法,所述方法包括如下步骤:
[0009]步骤S1:在Rhinoceros软件中打开典型设计图纸;
[0010]步骤S2:在CAD中利用选取命令框选需要制作模板的系统要素组合;
[0011]步骤S3:在Grasshopper插件中开发复制Rhinoceros软件中图形和文字块的处理模块程序;
[0012]步骤S4:将读取的所有原始图元转化为线段;
[0013]步骤S5:获取步骤S4图形处理得到的全部线段的端点;
[0014]步骤S6:获得选中图形的左下角边界点;
[0015]步骤S7:在Grasshopper插件画布上自动生成重画图形的电池块;
[0016]步骤S8:在Grasshopper插件复制图形模块中读取Rhinoceros软件中选中文字标注的属性,包括Rhinoceros软件文字标注对象的GUID、文字标注矩形包络盒的左下顶点的坐标和右上顶点的坐标和文字内容;
[0017]步骤S9:在Grasshopper插件中自动连接文本相同的Panel;
[0018]步骤S10:开发“TX

RX”配对电池,使其被Grasshopper插件调用,在Grasshopper插件中自动关联配对的TX和RX的Panel;
[0019]步骤S11:在Grasshopper插件中自动组合所有自动生成的电池块称为一个Grasshopper插件模块的组,一个自动生成的组中包含上述中自动生成的重画图形的电池块、在Grasshopper插件中自动生成的Panel、以及“TX

RX”模块。
[0020]优选地,所述步骤S2中系统要素组合为对应设备或者装置以及装置之间的连接;在Rhinoceros软件中被框选的光纤配线架图形和文字标注,光纤配线架包含光缆;
[0021]所述步骤S3中的处理模块程序在Grasshopper插件中称为电池块;所述处理模块没有输入和输出端子,有相应的菜单,在模块上点击右键呈现;读取Rhinoceros软件中选中图形和文字标注的数据;二次设计基本图元包括直线段、折线、多边形、圆弧、曲线,以及图块,在Grasshopper插件中读取全部选中的图形后,形成原始图元的GUID的列表。
[0022]优选地,所述步骤S4将图块转化为图形,如果现有图元本身是直线段,不需要处理;如果是折线或者多边形,需要炸开成为多条直线段;如果是弧线或者曲线,则需要等分成多个分段,然后根据每个曲线分段的两个端点形成直线段;
[0023]所述步骤S5将所有的端点按照格式“GUID=X1,Y1,X2,Y2,X3,Y3
……”
存储为树结构字符串,树的每一枝对应一个线段化之前的原始图形,在每一枝中记录转化后首尾衔接的线段的坐标。
[0024]优选地,所述步骤S6计算全部端点X坐标和Y坐标的最小值,获得选中图形的左下角边界点,在后续Grasshopper插件中重画时,需要将左下角边界点偏移到Grasshopper插件画布的原点或者用户在Grasshopper插件画布上的指定点;
[0025]所述步骤S7利用C#语言编写程序,在Grasshopper插件画布用户指定点生成一个没有输入和输出的电池块,如果用户没有给指定点,则默认在Grasshopper插件画布的原点处,生成的电池块中带有在Grasshopper插件画布上画图的程序,根据前述所有线段的端点数据,按照用户选择点或者原点进行平移、放缩变换后,在Grasshopper插件画布上绘制Rhinoceros软件中的图形。
[0026]优选地,所述步骤S8中的右上顶点的坐标为在Rhinoceros软件中的世界坐标,文字内容为字符串;在Grasshopper插件中针对每个Rhinoceros软件文字标注对象自动在
Grasshopper插件画布上生成一个Panel对象;
[0027]所述步骤S10复制Rhinoceros软件中图形和文字块内提供了相应的功能,在步骤S8自动生成的Panel电池块中自动寻找配对的发送TX和接受RX端子;
[0028]所述步骤S11中的所有电池块的相对位置固定,在Grasshopper插件画布上一个组中的电池块以及电池块间的连线同时移动。
本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于Grasshopper的设计模板库生成方法,其特征在于,所述方法包括如下步骤:步骤S1:在Rhinoceros软件中打开典型设计图纸;步骤S2:在CAD中利用选取命令框选需要制作模板的系统要素组合;步骤S3:在Grasshopper插件中开发复制Rhinoceros软件中图形和文字块的处理模块程序;步骤S4:将读取的所有原始图元转化为线段;步骤S5:获取步骤S4图形处理得到的全部线段的端点;步骤S6:获得选中图形的左下角边界点;步骤S7:在Grasshopper插件画布上自动生成重画图形的电池块;步骤S8:在Grasshopper插件复制图形模块中读取Rhinoceros软件中选中文字标注的属性,包括Rhinoceros软件文字标注对象的GUID、文字标注矩形包络盒的左下顶点的坐标和右上顶点的坐标和文字内容;步骤S9:在Grasshopper插件中自动连接文本相同的Panel;步骤S10:开发“TX

RX”配对电池,使其被Grasshopper插件调用,在Grasshopper插件中自动关联配对的TX和RX的Panel;步骤S11:在Grasshopper插件中自动组合所有自动生成的电池块称为一个Grasshopper插件模块的组,一个自动生成的组中包含上述中自动生成的重画图形的电池块、在Grasshopper插件中自动生成的Panel、以及“TX

RX”模块。2.根据权利要求1所述的基于Grasshopper的设计模板库生成方法,其特征在于,所述步骤S2中系统要素组合为对应设备或者装置以及装置之间的连接;在Rhinoceros软件中被框选的光纤配线架图形和文字标注,光纤配线架包含光缆;所述步骤S3中的处理模块程序在Grasshopper插件中称为电池块;所述处理模块没有输入和输出端子,有相应的菜单,在模块上点击右键呈现;读取Rhinoceros软件中选中图形和文字标注的数据;二次设计基本图元包括直线段、折线、多边形、圆弧、曲线,以及图块,在Grasshopper插件中读取全部选中的图形后,形成原始图元的GUID的列表。3.根据权利要求1所述的基于Grasshopper的设计模板库生成方法,其特征在于,所述步骤S4将图块转化为图形,如果现有图元本身是直线段,不需要处理;如果是折线或者多边形,需要炸开成为多条直线段;如果是弧线或者曲线,则需要等分成多个分段,然后根据每个曲线分段的两个端点形成直线段;所述步骤S5将所有的端点按照格式“GUID=X1,Y1,X2,Y2,X3,Y3
……”
存储为树结构字符串,树的每一枝对应一个线段化之前的原始图形,在每一枝中记录转化后首尾衔接的线段的坐标。4.根据权利要求1所述的基于Grasshopper的设计模板库生成方法,其特征在于,所述步骤S6计算全部端点X坐标和Y坐标的最小值,获得选中图形的左下角边界点,在后续Grasshopper插件中重画时,需要将左下角边界点偏移到Grasshopper插件画布的原点或者用户在Grasshopper插件画布上的指定点;所述步骤S7利用C#语言编写程序,在Grasshopper插件画布用户指定点生成一个没有输入和输出的电池块,如果用户没有给指定点,则默认在Grasshopper插件画布的原点处,
生成的电池块中带有在Grasshopper插件画布上画图的程序,根据前述所有线段的端点数据,按照用户选择点或者原点进行平移、放缩变换后,在Grasshopper插件画布上绘制Rhinoceros软件中的图形。5.根据权利要求1所述的基于Grasshopper的设计模板库生成方法,其特征在于,所述步骤S8中的右上顶点的坐标为在Rhinoceros软件中的世界坐标,文字内容为字符串;在Grasshopper插件中针对每个Rhinoceros软件文字标注对象自动在Grasshopper插件画布上生成一个Panel对象;所述步骤S10复制Rhinoceros软件中图形和文字块内提供了相应的功能,在步骤S8自动生成的Panel电池块中自动寻找配对的发送TX和接受RX端子;所述步骤S11中的所有电池块的相对位置固定,在Grasshopper插件画布上一个组中的电池块以及电池块间的连线同时移动。6.一种...

【专利技术属性】
技术研发人员:诸言涵张波陈颖孙文敏宋元斌曹金浩王婷婷杨嘉睿吴冰陈赛慧杨轶涵夏溪惠黄江倩
申请(专利权)人:上海交通大学
类型:发明
国别省市:

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

1