发明内容
本发明的目的是提供一种构建空气桥图形的方法、系统、存储介质及电子设备,以解决现有技术中手动绘制空气桥图形效率低、容易出错的问题,能够自动构建空气桥图形,极大提高空气桥图形的绘制效率和绘制精度。
为解决上述技术问题,本发明提供一种构建空气桥图形的方法,包括:
确定量子比特版图中待构建空气桥图形的目标图层;
获取所述目标图层上每一走线的端点,其中,所述目标图层上的走线由线段构成;
在所述目标图层的每一走线上确定待构建空气桥图形的布图线段,其中,所述布图线段的端点不是所述目标图层上任一走线的端点;
在每一所述布图线段上放置空气桥图形。
优选的,所述在所述目标图层的每一走线上确定待构建空气桥图形的布图线段的步骤包括:
检测所述目标图层的每一走线的端点数量;
在当前走线的端点数量为两个时,以所述当前走线的两个端点为圆心分别构建半径为第一预设距离值的第一圆形,将所述当前走线与所述第一圆形不重叠的部分确定为布图线段。
优选的,所述在所述目标图层的每一走线上确定待构建空气桥图形的布图线段的步骤还包括:
在当前走线的端点数量为两个以上时,以所述当前走线的第一个端点和最后一个端点为圆心分别构建半径为第一预设距离值的第一圆形,以及以所述当前走线的其他端点为圆心分别构建半径为第二预设距离值的第二圆形,将所述当前走线与所述第一圆形和所述第二圆形不重叠的部分确定为布图线段。
优选的,所述在每一所述布图线段上放置空气桥图形的步骤为:在每一所述布图线段上以预设步长值作为最小间距依次放置空气桥图形,以使得以每一所述空气桥图形的中心点为圆心、半径为预设间距值的范围内不存在其他空气桥图形的中心点,其中,所述预设步长值不小于所述预设间距值。
优选的,所述在每一所述布图线段上以预设步长值作为最小间距依次放置空气桥图形的步骤包括:
将所述布图线段的一个端点作为当前检测点;
检测以所述当前检测点为圆心、半径为预设间距值的范围内是否存在其他空气桥图形的中心点;
在不存在其他空气桥图形的中心点时,在所述当前检测点放置空气桥图形,并将距离所述当前检测点预设步长值的点确定为当前检测点;
重复所述检测以所述当前检测点为圆心、半径为预设间距值的范围内是否存在其他空气桥图形的中心点的步骤,直至所述当前检测点不位于所述布图线段。
优选的,所述重复所述检测以所述当前检测点为圆心、半径为预设间距值的范围内是否存在其他空气桥图形的中心点的步骤之前,还包括:
在存在其他空气桥图形的中心点时,将距离所述当前检测点预设微调值的点确定为当前检测点,其中,所述预设微调值小于所述预设步长值。
优选的,所述空气桥图形的中心点为所述当前检测点。
优选的,所述在每一所述布图线段上以预设步长值作为最小间距依次放置空气桥图形的步骤之前,所述方法还包括:
确定量子比特版图中需要空气桥图形避让的避让图层;
获取所述避让图层上每一走线的端点,其中,所述避让图层上的走线由线段构成;
基于预设避让值计算所述避让图层的散点步长值;
在所述避让图层上每一走线的相邻两个端点之间按照所述散点步长值等间距选取点,将每一走线上的端点和选取的点作为散点;
所述检测以所述当前检测点为圆心、半径为预设间距值的范围内是否存在其他空气桥图形的中心点的步骤还包括:
检测以所述当前检测点为圆心、半径为预设避让值的范围内是否存在所述避让图层的散点;
所述在不存在其他空气桥图形的中心点时,在所述当前检测点放置空气桥图形,并将距离所述当前检测点预设间距值的点确定为当前检测点的步骤为:
在不存在其他空气桥图形的中心点并且不存在所述避让图层的散点时,在所述当前检测点放置空气桥图形,并将距离所述当前检测点预设步长值的点确定为当前检测点;
所述在存在其他空气桥图形的中心点时,将距离所述当前检测点预设微调值的点确定为当前检测点的步骤为:
在存在其他空气桥图形的中心点或者存在所述避让图层的散点时,将距离所述当前检测点预设微调值的点确定为当前检测点。
优选的,所述基于预设避让值计算所述避让图层的散点步长值的步骤包括:
将所述预设避让值作为等边三角形的高计算所述等边三角形的边长;
将所述等边三角形的边长作为散点步长值。
优选的,所述在所述避让图层上每一走线的相邻两个端点之间按照所述散点步长值等间距选取点,将每一走线上的端点和选取的点作为散点的步骤还包括:
检测所述避让图层上每一走线的首尾端点是否重合;
在当前走线的首尾端点重合时,按照预设方向在所述当前走线封闭区域内填充辅助线,其中,相邻两条辅助线的间距为所述预设避让值;
在每一所述辅助线的两个端点之间按照所述散点步长值等间距选取点,将每一所述辅助线上的端点和选取的点作为散点。
为解决上述技术问题,本发明还提供一种构建空气桥图形的系统,包括:
图层确定模块,用于确定量子比特版图中待构建空气桥图形的目标图层;
端点获取模块,用于获取所述目标图层上每一走线的端点,其中,所述目标图层上的走线由线段构成;
线段确定模块,用于在所述目标图层的每一走线上确定待构建空气桥图形的布图线段,其中,所述布图线段的端点不是所述目标图层上任一走线的端点;
布图构建模块,用于在每一所述布图线段上放置空气桥图形。
优选的,所述线段确定模块包括:
端点检测单元,用于检测所述目标图层的每一走线的端点数量;
线段确定单元,用于在所述端点检测单元检测到当前走线的端点数量为两个时,以所述当前走线的两个端点为圆心分别构建半径为第一预设距离值的第一圆形,将所述当前走线与所述第一圆形不重叠的部分确定为布图线段。
优选的,所述线段确定单元还用于在所述端点检测单元检测到当前走线的端点数量为两个以上时,以所述当前走线的第一个端点和最后一个端点为圆心分别构建半径为第一预设距离值的第一圆形,以及以所述当前走线的其他端点为圆心分别构建半径为第二预设距离值的第二圆形,将所述当前走线与所述第一圆形和所述第二圆形不重叠的部分确定为布图线段。
优选的,所述布图构建模块具体用于在每一所述布图线段上以预设步长值作为最小间距依次放置空气桥图形,以使得以每一所述空气桥图形的中心点为圆心、半径为预设间距值的范围内不存在其他空气桥图形的中心点,其中,所述预设步长值不小于所述预设间距值。
优选的,所述布图构建模块包括:
起点确定单元,用于将所述布图线段的一个端点作为当前检测点;
邻近检测单元,用于检测以所述当前检测点为圆心、半径为预设间距值的范围内是否存在其他空气桥图形的中心点;
图形放置单元,用于在所述邻近检测单元检测到不存在其他空气桥图形的中心点时,在所述当前检测点放置空气桥图形,并将距离所述当前检测点预设步长值的点确定为当前检测点;
循环执行单元,用于重复执行所述邻近检测单元,直至所述当前检测点不位于所述布图线段。
优选的,所述图形放置单元还用于在所述邻近检测单元检测到存在其他空气桥图形的中心点时,将距离所述当前检测点预设微调值的点确定为当前检测点,其中,所述预设微调值小于所述预设步长值。
优选的,所述空气桥图形的中心点为所述当前检测点。
优选的,所述系统还包括步长计算模块和散点选取模块;
所述图层确定模块还用于确定量子比特版图中需要空气桥图形避让的避让图层;
所述端点获取模块还用于获取所述避让图层上每一走线的端点,其中,所述避让图层上的走线由线段构成;
所述步长计算模块用于基于预设避让值计算所述避让图层的散点步长值;
所述散点选取模块用于在所述避让图层上每一走线的相邻两个端点之间按照所述散点步长值等间距选取点,将每一走线上的端点和选取的点作为散点;
所述邻近检测单元具体用于检测以所述当前检测点为圆心、半径为预设间距值的范围内是否存在其他空气桥图形的中心点,并且检测以所述当前检测点为圆心、半径为预设避让值的范围内是否存在所述避让图层的散点;
图形放置单元具体用于在所述邻近检测单元检测到不存在其他空气桥图形的中心点并且不存在所述避让图层的散点时,在所述当前检测点放置空气桥图形,并将距离所述当前检测点预设间距值的点确定为当前检测点,以及在所述邻近检测单元检测到存在其他空气桥图形的中心点或者存在所述避让图层的散点时,将距离所述当前检测点预设微调值的点确定为当前检测点。
优选的,所述步长计算模块包括:
边长计算单元,用于将所述预设避让值作为等边三角形的高计算所述等边三角形的边长;
步长确定单元,用于将所述等边三角形的边长作为散点步长值。
优选的,所述系统还包括封闭检测模块和封闭填充模块;
所述封闭检测模块用于检测所述避让图层上每一走线的首尾端点是否重合;
所述封闭填充模块用于在所述封闭检测模块检测到当前走线的首尾端点重合时,按照预设方向在所述当前走线封闭区域内填充辅助线,其中,相邻两条辅助线的间距为所述预设避让值;
所述散点选取模块还用于在每一所述辅助线的两个端点之间按照所述散点步长值等间距选取点,将每一所述辅助线上的端点和选取的点作为散点。
为解决上述技术问题,本发明还提供一种存储介质,所述存储介质中存储有计算机程序,所述计算机程序被设置为运行时执行前述任一项所述的构建空气桥图形的方法。
为解决上述技术问题,本发明还提供一种电子设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行前述任一项所述的构建空气桥图形的方法。
区别于现有技术的情况,本发明提供的构建空气桥图形的方法通过确定待构建空气桥图形的目标图层,获取目标图层上每一走线的端点,在目标图层的每一走线上确定待构建空气桥图形的布图线段,最后在每一布图线段上放置空气桥图形,由于布图线段不包含目标图层上任一走线的端点,所以空气桥图形会避开走线的端点,从而本发明能够自动构建空气桥图形,极大提高空气桥图形的绘制效率和绘制精度,可以大大降低设计人员的劳动强度和时间成本。
本发明提供的构建空气桥图形的系统、存储介质及电子设备,与构建空气桥图形的方法属于同一发明构思,因此具有相同的有益效果,在此不再赘述。
具体实施方式
下面将结合示意图对本发明的具体实施方式进行更详细的描述。根据下列描述和权利要求书,本发明的优点和特征将更清楚。需说明的是,附图均采用非常简化的形式且均使用非精准的比例,仅用以方便、明晰地辅助说明本发明实施例的目的。
在本发明的描述中,需要理解的是,术语“中心”、“上”、“下”、“左”、“右”等指示的方位或者位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本发明的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
请参考图1,本发明第一实施例提供了一种构建空气桥图形的方法,该方法包括以下步骤:
S1:确定量子比特版图中待构建空气桥图形的目标图层。
其中,目标图层可以根据用户的操作或者预设标识来确定。例如用户对图层进行选中操作,将用户选中的图层确定为目标图层,或者用户对图层赋予预设标识,将具有预设标识的图层确定为目标图层,预设标识可以是预设的图层颜色、图层名称中预设的符号等。
S2:获取目标图层上每一走线的端点,其中,目标图层上的走线由线段构成。
其中,目标图层上的走线可以是一条线段,也可以是多条线段依次连接而成的折线。由于一条线段必然存在两个端点,可以获取每一走线的端点。
S3:在目标图层的每一走线上确定待构建空气桥图形的布图线段,其中,布图线段不包含目标图层上任一走线的端点。
其中,由于布图线段不包含目标图层上任一走线的端点,那么布图线段为目标图层的走线上除走线的端点之外的部分,例如布图线段为走线上相邻两个端点之间的部分线段。
S4:在每一布图线段上放置空气桥图形。
其中,由于布图线段不包含目标图层上任一走线的端点,而空气桥图形在布图线段上放置,所以空气桥图形可以避开目标图层上所有走线的端点。
通过上述方式,本实施例的构建空气桥图形的方法可以在目标图层的每一走线上自动构建出空气桥图形,每一空气桥图形避开了走线的端点,对于设计人员而言,只需要手动设置目标图层,即可自动完成空气桥图形的放置,从而本实施例能够自动构建空气桥图形,极大提高空气桥图形的绘制效率和绘制精度,可以大大降低设计人员的劳动强度和时间成本。
进一步的,在本实施例中,步骤S4具体为:在每一布图线段上以预设步长值作为最小间距依次放置空气桥图形,以使得以每一空气桥图形的中心点为圆心、半径为预设间距值的范围内不存在其他空气桥图形的中心点。
其中,预设步长值不小于预设间距值。预设步长值表示相邻两个空气桥图形之间的最小距离,预设间距值表示任意两个空气桥图形之间的最小距离,预设步长值和预设间距值的大小可以根据实际需求设置。每一布图线段上相邻两个空气桥图形之间的最小间距为预设步长值,所以每个空气桥图形的放置位置需要以当前放置的空气桥图形的中心点为圆心、半径为预设间距值的范围内不存在其他空气桥图形的中心点为依据,最终所有布图线段上放置空气桥图形后,需要满足以每一空气桥图形的中心点为圆心、半径为预设间距值的范围内不存在其他空气桥图形的中心点。
在一些量子比特版图设计中,要求同一走线上的相邻两个空气桥图形之间的间距需要满足规定的最小间距,同时任意两个空气桥图形之间需要满足一定的距离规则,通过设置预设步长值可以满足同一走线上的相邻两个空气桥图形之间的最小间距需求,通过设置预设间距值可以满足任意两个空气桥图形之间的距离规则,对于设计人员而言,只需要手动设置目标图层、预设步长值和预设间距值,即可自动完成空气桥图形的放置,从而本实施例能够自动构建空气桥图形。
请参考图2,本发明第二实施例提供了一种构建空气桥图形的方法,本实施例的方法包括第一实施例的全部技术特征,并且在第一实施例的基础上,在目标图层的每一走线上确定待构建空气桥图形的布图线段的步骤,即步骤S3包括:
S31:检测目标图层的每一走线的端点数量。
其中,由于目标图层的每一走线可能为一条线段,也可能为包括含两条及以上线段的折线,因此每一走线的端点数量最少为两个。
S32:在当前走线的端点数量为两个时,以当前走线的两个端点为圆心分别构建半径为第一预设距离值的第一圆形,将当前走线与第一圆形不重叠的部分确定为布图线段。
其中,当前走线的端点数量为两个,表示当前走线为一条线段。第一预设距离值表示空气桥图形与走线的起点或终点的最小距离,其大小可以根据实际需求设置。在当前走线的两个端点构建第一圆形后,当前走线与第一圆形之间的关系存在两种情形。
假设第一预设距离值为d1,第一种情形是当前走线的长度为第一预设距离值d1的两倍以上,那么当前走线与第一圆形存在不重叠的部分,即图3中(a)所示,两个第一圆形C1与当前走线的两个交点O之间的部分,将该部分确定为布图线段。
第二种情形是当前走线的长度为第一预设距离值d1的两倍及以下,那么当前走线与第一圆形不存在不重叠的部分,即图3中(b)所示,两个第一圆形C1与当前走线的两个交点O之间的部分仍然处于两个第一圆形C1的覆盖范围内,此时无需确定布图线段。
进一步的,步骤S3还包括:
S33:在当前走线的端点数量为两个以上时,以当前走线的第一个端点和最后一个端点为圆心分别构建半径为第一预设距离值的第一圆形,以及以当前走线的其他端点为圆心分别构建半径为第二预设距离值的第二圆形,将当前走线与第一圆形和第二圆形不重叠的部分确定为布图线段。
其中,当前走线的端点数量为两个以上,表示当前走线为折线。第二预设距离值表示空气桥图形与折线的折点的最小距离,其大小可以根据实际需求设置。如图4所示,假设当前线段具有四个端点,那么中间的两个端点为折点,那么当前走线包括三条线段,依次记为线段a、线段b和线段c,假设第一预设距离值d1大于第二预设距离值d2。在当前走线的首尾端点构建第一圆形、在当前走线的折点构建第二圆形后,线段b与第二圆形之间的关系存在三种情形。
第一种情形是线段b的长度为第二预设距离值d2的两倍以上,而且第一个第一圆形与线段b不存在交点,或者交点在第二圆形覆盖范围内,那么线段b与第二圆形存在不重叠的部分,即图4中(a)所示,两个第二圆形C2与线段b的两个交点之间的部分,将该部分确定为布图线段。
第二种情形是线段b的长度为第二预设距离值的两倍以上,而且第一个第一圆形与线段b存在交点,且交点在第二圆形覆盖范围外,那么线段b与第二圆形存在不重叠的部分,但是该不重叠的部分又有一部分与第一个第一圆形重叠,即图4中(b)所示,因此将第一个第一圆形C1和第二个第二圆形C2与线段b的两个交点O之间的部分确定为布图线段。
第三种情形是线段b的长度为第一预设距离值的两倍及以下,那么线段b与第二圆形不存在不重叠的部分,此时即图4中(c)所示,两个第二圆形C2与线段b的两个交点O之间的部分仍然处于两个第二圆形C2的覆盖范围内,无需确定布图线段。
通过上述方式,本实施例的构建空气桥图形的方法可以在目标图层的每一走线上自动确定布图线段,在布图线段上构建出空气桥图形,由于布图线段的端点不是目标图层上任一走线的端点,因此每一空气桥图形避开了走线的端点,每一空气桥图形在满足以每一空气桥图形的中心点为圆心、半径为预设间距值的范围内不存在其他空气桥图形的中心点的条件下与其相邻空气桥图形之间的间距最小,对于设计人员而言,只需要手动设置目标图层、预设步长值、预设间距值、第一预设距离值和第二预设距离值,即可自动完成空气桥图形的放置,从而本实施例能够自动构建空气桥图形,极大提高空气桥图形的绘制效率和绘制精度,可以大大降低设计人员的劳动强度和时间成本。
请参考图5,本发明第三实施例提供了一种构建空气桥图形的方法,本实施例的方法包括第一实施例或第二实施例的全部技术特征,并且在第一实施例或第二实施例的基础上,在每一所述布图线段上以预设步长值作为最小间距依次放置空气桥图形的步骤,即步骤S4包括:
S41:将布图线段的一个端点作为当前检测点。
其中,第一个作为当前检测点的端点可以是布图线段的起点,布图线段的起点可以根据用户操作确定,或者将布图线段距离其所在走线的起点距离最近的点作为起点,而目标图层的走线的起点可以根据端点绘制顺序来确定,一种常见的走线绘制方式是,用户在绘制版图的画板上预设位置点击一次鼠标确定第一个端点,再到其他位置点击一次鼠标确定第二个端点,第一个端点与第二个端点之间自动生成线段,那么第一个端点作为走线的起点。
S42:检测以当前检测点为圆心、半径为预设间距值的范围内是否存在其他空气桥图形的中心点。
其中,其他空气桥图形的中心点不仅包括同一条布图线段上的空气桥图形的中心点,还包括其他布图线段上的空气桥图形的中心点。
S43:在不存在其他空气桥图形的中心点时,在当前检测点放置空气桥图形,并将距离当前检测点预设步长值的点确定为当前检测点。
其中,由于以当前检测点为圆心、半径为预设间距值的范围内不存在其他空气桥图形的中心点,那么在当前检测点放置空气桥图形与其他空气桥图形满足一定的距离规则。在当前检测点放置空气桥图形后,对当前检测点进行更新,当前检测点变为距离更新前当前检测点预设步长值的点。举例而言,假设布图线段的两个端点分别为A点和B点,A点作为当前检测点,在A点放置空气桥图形后,朝着B点方向将距离A点预设步长值的C点确定为当前检测点。
在本实施例中,空气桥图形的中心点为当前检测点。也就是说,空气桥图形的中心点在布图线段上,由于空气桥的俯视形状为矩形,因此空气桥图形的中心点为矩形的中心点。
S44:检测当前检测点是否位于布图线段。
其中,本实施例可以采用向量比较的方式来检测当前检测点是否位于布图线段。举例而言,布图线段上的当前检测点为C点,获取当前检测点到布图线段第二个端点B的向量C→B以及布图线段第一个端点A到第二个端点B的向量A→B,比较向量C→B与向量A→B的方向,如果两个向量的方向一致,表面当前检测点位于布图线段上,如果两个向量的方向不一致,表明当前检测点已经超出了布图线段。
如果当前检测点位于布图线段上,则执行步骤S42,如果当前检测点不位于布图线段,则结束布图线段的空气桥图形放置。
进一步的,在本实施例中,步骤S44之前,还包括:
S45:在存在其他空气桥图形的中心点时,将距离当前检测点预设微调值的点确定为当前检测点。
其中,预设微调值小于预设步长值。在一个实际应用中,预设微调值为预设间距值的十分之一。
在本实施例中,当前检测点的位置会根据其他空气桥图形的中心点变化,最终布图线段上相邻两个空气桥图形的中心点之间的间距为预设步长值+n*预设微调值,n表示步骤S42的重复执行次数,由此可见,布图线段上相邻两个空气桥图形的中心点之间的最小间距为预设步长值。
通过上述方式,本实施例的构建空气桥图形的方法可以在目标图层上构建出空气桥图形,每一空气桥图形避开了走线的端点,同一走线上相邻两个空气桥图形之间的最小间距为预设步长值,每一空气桥图形在满足以每一空气桥图形的中心点为圆心、半径为预设间距值的范围内不存在其他空气桥图形的中心点的条件下与其相邻空气桥图形之间的间距最小,对于设计人员而言,只需要手动设置目标图层、预设步长值、预设间距值和预设微调值,即可自动完成空气桥图形的放置,从而本实施例能够自动构建空气桥图形,极大提高空气桥图形的绘制效率和绘制精度,可以大大降低设计人员的劳动强度和时间成本。
请参考图6,本发明第四实施例提供了一种构建空气桥图形的方法,本实施例的方法包括第三实施例的全部技术特征,并且在第三实施例的基础上,在每一布图线段上以预设步长值作为最小间距依次放置空气桥图形的步骤之前,本实施例的方法还包括:
S5:确定量子比特版图中需要空气桥图形避让的避让图层。
S6:获取避让图层上每一走线的端点,其中,避让图层上的走线由线段构成。
S7:基于预设避让值计算避让图层的散点步长值。
S8:在避让图层上每一走线的相邻两个端点之间按照散点步长值等间距选取点,将每一走线上的端点和选取的点作为散点。其中,如图7所示,避让图层上一条走线包括A1、B1、C1三个端点,线段A1B1之间选取了两个点S,线段B1C1之间也选取了两个点S,那么最终散点包括A1、B1、C1三个端点以及四个选取的点S。
检测以当前检测点为圆心、半径为预设步长值的范围内是否存在其他空气桥图形的中心点的步骤,即步骤S42还包括:
检测以当前检测点为圆心、半径为预设避让值的范围内是否存在避让图层的散点。
在不存在其他空气桥图形的中心点时,在当前检测点放置空气桥图形,并将距离当前检测点预设间距值的点确定为当前检测点的步骤,即步骤S43具体为:
在不存在其他空气桥图形的中心点并且不存在避让图层的散点时,在当前检测点放置空气桥图形,并将距离当前检测点预设步长值的点确定为当前检测点。
在存在其他空气桥图形的中心点时,将距离当前检测点预设微调值的点确定为当前检测点的步骤,即步骤S45具体为:
在存在其他空气桥图形的中心点或者存在避让图层的散点时,将距离当前检测点预设微调值的点确定为当前检测点。
在本实施例中,在当前检测点不仅要检测是否存在其他空气桥图形的中心点,同时还要检测是否存在避让图层的散点,只要有一个存在,就需要调整当前检测点的位置,如果都不存在,就可以在当前检测点放置空气桥图形。从而目标图层上的空气桥图形可以避让目标图层上走线的端点,也可以满足任意两个空气桥图形之间的距离规则,还可以满足目标图层上的空气桥图形避开避让图层上的散点。
在本实施例中,参考图8,基于预设避让值计算避让图层的散点步长值的步骤,即步骤S7包括:
S71:将预设避让值作为等边三角形的高计算等边三角形的边长。
S72:将等边三角形的边长作为散点步长值。
其中,如图9所示,构建一个高为预设避让值d3的等边三角形,根据几何原理计算等边三角形的边长,可以计算得到等边三角形的边长为L=d3/sin(π/3),等边三角形的边长就等于散点步长值。
参考图10,在避让图层上每一走线的相邻两个端点之间按照散点步长值等间距选取点,将每一走线上的端点和选取的点作为散点的步骤,即步骤S8还包括:
S8A:检测避让图层上每一走线的首尾端点是否重合。
其中,量子比特版图有可能包括图形化的元器件,即元器件图形为多边形,而多边形是由多条线段首尾相连组成,即走线的首尾端点重合。所以需要检测走线的首尾端点是否重合,如果不重合,表示走线不是封闭的,如果重合,则构成多边形。
S8B:在当前走线的首尾端点重合时,按照预设方向在当前走线封闭区域内填充辅助线,其中,相邻两条辅助线的间距为预设避让值。
其中,预设方向可以是画板坐标系的任意方向。在进行版图绘制时,需要参考坐标系,而通常画板的水平方向为X轴,画板的垂直方向为Y轴。本实施例从多边形的纵坐标最小的端点开始按照Y轴正方向在当前走线封闭区域内填充辅助线。如图11所示,一个多边形内填充的辅助线的间距为预设避让值d3,图中点虚线表示辅助线。
S8C:在每一辅助线的两个端点之间按照散点步长值等间距选取点,将每一辅助线上的端点和选取的点作为散点。
如图12所示,是构建空气桥图形后的量子比特版图的部分示意图。从图中可以看出,采用本发明实施例的方法构建空气桥图形后,同一条走线101上放置的空气桥图形102两两之间间隔一定距离,相邻两条走线101上放置的空气桥图形102之间也间隔一定距离,有的走线101与避让图层上的走线103(有的走线103首尾端点重合,构成了多边形)重合或过于接近,所以,这些走线101上只能放置很少的空气桥图形102或者没有放置空气桥图形102。
参考图13,本发明第五实施例提供了一种构建空气桥图形的系统。该系统包括:
图层确定模块1用于确定量子比特版图中待构建空气桥图形的目标图层。其中,目标图层可以根据用户的操作或者预设标识来确定。例如用户对图层进行选中操作,将用户选中的图层确定为目标图层,或者用户对图层赋予预设标识,将具有预设标识的图层确定为目标图层,预设标识可以是预设的图层颜色、图层名称中预设的符号等。
端点获取模块2用于获取目标图层上每一走线的端点,其中,目标图层上的走线由线段构成。其中,目标图层上的走线可以是一条线段,也可以是多条线段依次连接而成的折线。由于一条线段必然存在两个端点,可以获取每一走线的端点。
线段确定模块3用于在目标图层的每一走线上确定待构建空气桥图形的布图线段,其中,布图线段不包含目标图层上任一走线的端点。其中,由于布图线段不包含目标图层上任一走线的端点,那么布图线段为目标图层的走线上除走线的端点之外的部分,例如布图线段为走线上相邻两个端点之间的部分线段。
布图构建模块4用于在每一布图线段上放置空气桥图形。其中,由于布图线段不包含目标图层上任一走线的端点,而空气桥图形在布图线段上放置,所以空气桥图形可以避开目标图层上所有走线的端点。
进一步的,在本实施例中,布图构建模块4具体用于在每一布图线段上以预设步长值作为最小间距依次放置空气桥图形,以使得以每一空气桥图形的中心点为圆心、半径为预设间距值的范围内不存在其他空气桥图形的中心点。其中,预设步长值不小于预设间距值。预设步长值表示相邻两个空气桥图形之间的最小距离,预设间距值表示任意两个空气桥图形之间的最小距离,预设步长值和预设间距值的大小可以根据实际需求设置。每一布图线段上相邻两个空气桥图形之间的最小间距为预设步长值,所以每个空气桥图形的放置位置需要以当前放置的空气桥图形的中心点为圆心、半径为预设间距值的范围内不存在其他空气桥图形的中心点为依据,最终所有布图线段上放置空气桥图形后,需要满足以每一空气桥图形的中心点为圆心、半径为预设间距值的范围内不存在其他空气桥图形的中心点。
在一些量子比特版图设计中,要求同一走线上的相邻两个空气桥图形之间的间距需要满足规定的最小间距,同时任意两个空气桥图形之间需要满足一定的距离规则,通过设置预设步长值可以满足同一走线上的相邻两个空气桥图形之间的最小间距需求,通过设置预设间距值可以满足任意两个空气桥图形之间的距离规则,对于设计人员而言,只需要手动设置目标图层、预设步长值和预设间距值,即可自动完成空气桥图形的放置,从而本实施例能够自动构建空气桥图形。
参考图14,本发明第六实施例提供了一种构建空气桥图形的系统,本实施例的系统包括第五实施例的全部技术特征,并且在第五实施例的基础上,本实施例的线段确定模块3包括:
端点检测单元31用于检测目标图层的每一走线的端点数量。其中,由于目标图层的每一走线可能为一条线段,也可能为包括含两条及以上线段的折线,因此每一走线的端点数量最少为两个。
线段确定单元32用于在端点检测单元31检测到当前走线的端点数量为两个时,以当前走线的两个端点为圆心分别构建半径为第一预设距离值的第一圆形,将当前走线与第一圆形不重叠的部分确定为布图线段。其中,当前走线的端点数量为两个,表示当前走线为一条线段。第一预设距离值表示空气桥图形与走线的起点或终点的最小距离,其大小可以根据实际需求设置。
进一步的,线段确定单元32还用于在端点检测单元检测到当前走线的端点数量为两个以上时,以当前走线的第一个端点和最后一个端点为圆心分别构建半径为第一预设距离值的第一圆形,以及以当前走线的其他端点为圆心分别构建半径为第二预设距离值的第二圆形,将当前走线与第一圆形和第二圆形不重叠的部分确定为布图线段。其中,当前走线的端点数量为两个以上,表示当前走线为折线。第二预设距离值表示空气桥图形与折线的折点的最小距离,其大小可以根据实际需求设置。
在本实施例中,布图构建模块4包括:
起点确定单元41用于将布图线段的一个端点作为当前检测点。其中,第一个作为当前检测点的端点可以是布图线段的起点,布图线段的起点可以根据用户操作确定,或者将布图线段距离其所在走线的起点距离最近的点作为起点,而目标图层的走线的起点可以根据端点绘制顺序来确定,一种常见的走线绘制方式是,用户在绘制版图的画板上预设位置点击一次鼠标确定第一个端点,再到其他位置点击一次鼠标确定第二个端点,第一个端点与第二个端点之间自动生成线段,那么第一个端点作为走线的起点
邻近检测单元42用于检测以当前检测点为圆心、半径为预设间距值的范围内是否存在其他空气桥图形的中心点。其中,其他空气桥图形的中心点不仅包括同一条布图线段上的空气桥图形的中心点,还包括其他布图线段上的空气桥图形的中心点。
图形放置单元43用于在邻近检测单元42检测到不存在其他空气桥图形的中心点时,在当前检测点放置空气桥图形,并将距离当前检测点预设步长值的点确定为当前检测点。其中,由于以当前检测点为圆心、半径为预设间距值的范围内不存在其他空气桥图形的中心点,那么在当前检测点放置空气桥图形与其他空气桥图形满足一定的距离规则。在当前检测点放置空气桥图形后,对当前检测点进行更新,当前检测点变为距离更新前当前检测点预设步长值的点。
在本实施例中,空气桥图形的中心点为当前检测点。也就是说,空气桥图形的中心点在布图线段上,由于空气桥的俯视形状为矩形,因此空气桥图形的中心点为矩形的中心点。
循环执行单元44用于重复执行邻近检测单元43,直至当前检测点不位于布图线段。其中,本实施例可以采用向量比较的方式来检测当前检测点是否位于布图线段。举例而言,布图线段上的当前检测点为C点,获取当前检测点到布图线段第二个端点B的向量C→B以及布图线段第一个端点A到第二个端点B的向量A→B,比较向量C→B与向量A→B的方向,如果两个向量的方向一致,表面当前检测点位于布图线段上,如果两个向量的方向不一致,表明当前检测点已经超出了布图线段。
进一步的,在本实施例中,图形放置单元43还用于在邻近检测单元42检测到存在其他空气桥图形的中心点时,将距离当前检测点预设微调值的点确定为当前检测点,其中,预设微调值小于预设步长值。在一个实际应用中,预设微调值为预设间距值的十分之一。
在本实施例中,当前检测点的位置会根据其他空气桥图形的中心点变化,最终布图线段上相邻两个空气桥图形的中心点之间的间距为预设步长值+n*预设微调值,n表示邻近检测单元42的重复执行次数,由此可见,布图线段上相邻两个空气桥图形的中心点之间的最小间距为预设步长值。
进一步的,在本实施例中,系统还包括步长计算模块5和散点选取模块6。
图层确定模块1还用于确定量子比特版图中需要空气桥图形避让的避让图层。
端点获取模块2还用于获取避让图层上每一走线的端点,其中,避让图层上的走线由线段构成。
步长计算模块5用于基于预设避让值计算避让图层的散点步长值。
散点选取模块6用于在避让图层上每一走线的相邻两个端点之间按照散点步长值等间距选取点,将每一走线上的端点和选取的点作为散点。
邻近检测单元42具体用于检测以当前检测点为圆心、半径为预设间距值的范围内是否存在其他空气桥图形的中心点,并且检测以当前检测点为圆心、半径为预设避让值的范围内是否存在避让图层的散点。
图形放置单元43具体用于在邻近检测单元42检测到不存在其他空气桥图形的中心点并且不存在避让图层的散点时,在当前检测点放置空气桥图形,并将距离当前检测点预设间距值的点确定为当前检测点,以及在邻近检测单元42检测到存在其他空气桥图形的中心点或者存在避让图层的散点时,将距离当前检测点预设微调值的点确定为当前检测点。
在本实施例中,邻近检测单元42在当前检测点不仅要检测是否存在其他空气桥图形的中心点,同时还要检测是否存在避让图层的散点,只要有一个存在,就需要调整当前检测点的位置,如果都不存在,就可以在当前检测点放置空气桥图形。从而目标图层上的空气桥图形可以避让目标图层上走线的端点,也可以满足任意两个空气桥图形之间的距离规则,还可以使得目标图层上的空气桥图形避开避让图层上的散点。
进一步的,步长计算模块5包括:
边长计算单元51用于将预设避让值作为等边三角形的高计算所述等边三角形的边长。
步长确定单元52用于将等边三角形的边长作为散点步长值。
进一步的,系统还包括封闭检测模块7和封闭填充模块8。
封闭检测模块7用于检测避让图层上每一走线的首尾端点是否重合。其中,量子比特版图有可能包括图形化的元器件,即元器件图形为多边形,而多边形是由多条线段首尾相连组成,即走线的首尾端点重合。所以需要检测走线的首尾端点是否重合,如果不重合,表示走线不是封闭的,如果重合,则构成多边形。
封闭填充模块8用于在封闭检测模块7检测到当前走线的首尾端点重合时,按照预设方向在当前走线封闭区域内填充辅助线,其中,相邻两条辅助线的间距为预设避让值。其中,预设方向可以是画板坐标系的任意方向。在进行版图绘制时,需要参考坐标系,而通常画板的水平方向为X轴,画板的垂直方向为Y轴。本实施例从多边形的纵坐标最小的端点开始按照Y轴正方向在当前走线封闭区域内填充辅助线。如图13所示,避让图层上的一条走线构成多边形,多边形的封闭区域内填充辅助线后,辅助线之间的间距为预设避让值d4。
散点选取模块6还用于在每一辅助线的两个端点之间按照散点步长值等间距选取点,将每一辅助线上的端点和选取的点作为散点。
本发明还提供一种存储介质,存储介质中存储有计算机程序,计算机程序被设置为运行时执行第一实施例、第二实施例、第三实施例或第四实施例的构建空气桥图形的方法。
具体的,在本实施例中,上述存储介质可以包括但不限于:U盘、只读存储器(Read-Only Memory,简称为ROM)、随机存取存储器(Random Access Memory,简称为RAM)、移动硬盘、磁碟或者光盘等各种可以存储计算机程序的介质。
本发明还提供一种电子设备,包括存储器和处理器,存储器中存储有计算机程序,处理器被设置为运行计算机程序以执行第一实施例、第二实施例、第三实施例或第四实施例的构建空气桥图形的方法。
具体的,存储器和处理器可以通过数据总线连接。此外,上述电子设备还可以包括传输设备以及输入输出设备,其中,该传输设备和上述处理器连接,该输入输出设备和上述处理器连接
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”或“具体示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例中以合适的方式结合。此外,本领域的技术人员可以将本说明书中描述的不同实施例或示例进行接合和组合。
上述仅为本发明的优选实施例而已,并不对本发明起到任何限制作用。任何所属技术领域的技术人员,在不脱离本发明的技术方案的范围内,对本发明揭露的技术方案和技术内容做任何形式的等同替换或修改等变动,均属未脱离本发明的技术方案的内容,仍属于本发明的保护范围之内。