一种基于遗传算法的CAD图纸构件自动标注方法技术

技术编号:33306543 阅读:12 留言:0更新日期:2022-05-06 12:16
本发明专利技术公开了一种基于遗传算法的CAD图纸构件自动标注方法,该方法包括如下步骤:S1、确定图纸空间的遗传编码;S2、交换两个基因点位上的基因内容;S3、随机选择一个基因位置上的数据(网格坐标位置);S4、计算适应度函数;本发明专利技术提出的遗传算法能够有效解决CAD图纸构件标注中的引线交叉、文本重叠、排布不齐等问题,从而提高CAD图纸的可阅读性和美观性。而提高CAD图纸的可阅读性和美观性。而提高CAD图纸的可阅读性和美观性。

【技术实现步骤摘要】
一种基于遗传算法的CAD图纸构件自动标注方法


[0001]本专利技术涉及建筑设计施工相关领域,具体是一种基于遗传算法的CAD图纸构件自动标注方法。

技术介绍

[0002]CAD施工图,是表示通过AutoCAD软件将工程项目总体布局,建筑物的外部形状、内部布置、结构构造、内外装修、材料作法以及设备、施工等制作的图样;在建筑电气施工图中,平面图通常是将建筑物的地理位置和主体结构进行宏观描述,将墙体、门窗、梁柱等淡化,而电气线路突出重点描述,其他管线,如水暖、煤气等线路则不出现在电气施工图上。
[0003]对CAD图纸进行构件信息标注是CAD制图过程中重要的操作;通过对CAD图纸构件对象的多个位置进行标注,提升CAD图纸的可阅读性和可解译性;在CAD制图中往往需要设计师通过CAD各种不同的命令来绘制设计图纸,常用的CAD制图设计过程中,需要设计师按相应的规范,或是行业标准、制图标准、企业技术标准设置图层、标注样式、文字样式、线型、颜色、单位等出图的样式;结合设计师自己想法、设计、通过参数进行点、直线、圆、曲线等命令来绘制图纸;这样的话,使得设计师制图的过程很繁琐,工作量大,绘制图纸的时间很长,且制图是人为控制,绘图过程中容易出错。
[0004]目前有很多图纸生成软件,但在复杂CAD图纸中,标注信息可能有很多,各种标注可能会存在引线相互交叉、文本重叠遮挡、排布不整齐等问题,造成图纸无法阅读;因此,如何合理安排标注的位置成为CAD图纸生成过程中的一个急需解决的问题。

技术实现思路

[0005]因此,为了解决上述不足,本专利技术在此提供一种基于遗传算法的CAD图纸构件自动标注方法。
[0006]本专利技术是这样实现的,构造一种基于遗传算法的CAD图纸构件自动标注方法,该方法包括如下步骤:
[0007]S1、确定图纸空间的遗传编码;
[0008]S2、交换两个基因点位上的基因内容;
[0009]S3、随机选择一个基因位置上的数据(网格坐标位置);
[0010]S4、计算适应度函数。
[0011]优选的,S1中定位网格大小是M*N,第i行,第j列的格子编码为整数i*M+j,作为标注位置的编码值,一个面向K个标注的标注排布用每个标注的位置编码值作为一个染色体。
[0012]优选的,将i,j作为一个基因,不用指定图纸空间大小来完成编码,完整的编码写成[a,b,c,d,e,f]的形式。
[0013]优选的,S4首先明确倾向性目标:
[0014]S41标注不能出现重叠,若出现,适应度F=0,导致该个体死亡;
[0015]S42标注线不能出现交叉,若出现,适应度F=0;
[0016]S43标注线的平均长度要小;
[0017]S44标注内容尽量对齐。
[0018]优选的,S44中经过编码后的个体,对所有基因的横坐标取DISTINCT操作得到唯一值的数量得到n,对于纵坐标做类似操作得到m,min{m,n}作为对齐度的评估指标。
[0019]优选的,定义适应度函数为:
[0020][0021]优选的,为了提高计算效率可以直接取负号,不用做指数计算。
[0022]本专利技术具有如下优点:本专利技术通过改进在此提供一种基于遗传算法的CAD图纸构件自动标注方法,与同类型设备相比,具有如下改进:
[0023]优点:本专利技术所述一种基于遗传算法的CAD图纸构件自动标注方法,遗传算法能够有效解决CAD图纸构件标注中的引线交叉、文本重叠、排布不齐等问题,从而提高CAD图纸的可阅读性和美观性。
附图说明
[0024]图1是本专利技术的流程图;
[0025]图2是本专利技术的测试实例图;
[0026]图3是本专利技术的另一测试实例图;。
具体实施方式
[0027]下面将结合附图1

3对本专利技术进行详细说明,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。
[0028]本专利技术的一种基于遗传算法的CAD图纸构件自动标注方法,方法包括如下步骤:
[0029]1、确定图纸空间的遗传编码:
[0030]首先考虑一个简单的场景,即每个标注的大小相同,且等于图纸空间网格的大小;假设图纸空间大小有限,且网格大小是M*N,第i行,第j列的格子编码为整数i*M+j,作为标注位置的编码值,一个面向K个标注的标注排布用每个标注的位置编码值作为一个染色体;考虑一个3*3的图纸空间中如下所示的标签排布:
[0031]ꢀꢀꢀꢀꢀꢀꢀꢀꢀ
[0032]可以被编码为:
[0033]ꢀꢀꢀꢀꢀꢀ
[0034]可将i,j作为一个基因,就不用指定图纸空间大小来完成编码:
[0035]ꢀꢀꢀ
,0,2,3
[0036]完整的编码可以写成[0,0,3,2,2,3]的形式;
[0037]2、交换两个基因点位上的基因内容;
[0038]3、随机选择一个基因位置上的数据(网格坐标位置);
[0039]4、计算适应度函数,首先明确倾向性目标:
[0040]标注不能出现重叠,若出现,适应度F=0,导致该个体死亡;
[0041]标注线不能出现交叉,若出现,适应度F=0;
[0042]标注线的平均长度要小;
[0043]标注内容尽量对齐,对于经过编码后的个体,对所有基因的横坐标取DISTINCT操作得到唯一值的数量得到n,对于纵坐标做类似操作得到m,min{m,n}作为对齐度的评估指标。
[0044]定义适应度函数为:
[0045][0046]为了提高计算效率可以直接取负号,不用做指数计算;为了兼顾适应度的物理意义用指数计算将其转化成非负数。
[0047]适应度计算:
[0048]有线交叉或者文本重叠,fitness=0;
[0049]距离越远,fitness越小;
[0050]角度偏向45度整数倍;
[0051]标签点如果有对齐的话,fitness会越大;
[0052]分区排布:
[0053]为了解决整体点数量上升造成的维度上升导致遗传算法不收敛问题,先对点输入进行K

Means聚类,将sub

group分别进行标签布局,然后flatten;
[0054]参数设置:
[0055]种群数量:100;
[0056]个体交叉率:0.8;
[0057]个体变异率:0.1。
[0058]本专利技术通过改进提供一种基于遗传算法的CAD图纸构件自动标注方法,遗传算法能够有效解决CAD图纸构件标注中的引线交叉、文本重叠、排布不齐等问题,从而提高CAD图纸的可阅读性和美观性。
[0059]以上显示和描述了本专利技术本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于遗传算法的CAD图纸构件自动标注方法,其特征在于:该方法包括如下步骤:S1、确定图纸空间的遗传编码;S2、交换两个基因点位上的基因内容;S3、随机选择一个基因位置上的数据(网格坐标位置);S4、计算适应度函数。2.根据权利要求1所述一种基于遗传算法的CAD图纸构件自动标注方法,其特征在于:S1中定位网格大小是M*N,第i行,第j列的格子编码为整数i*M+j,作为标注位置的编码值,一个面向K个标注的标注排布用每个标注的位置编码值作为一个染色体。3.根据权利要求2所述一种基于遗传算法的CAD图纸构件自动标注方法,其特征在于:将i,j作为一个基因,不用指定图纸空间大小来完成编码,完整的编码写成[a,b,c,d,e,f]的形式。4.根据权利要求1所述一种基于遗传算法...

【专利技术属性】
技术研发人员:李光李一帆彭靖田黄延
申请(专利权)人:上海品览数据科技有限公司
类型:发明
国别省市:

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

1