基于内缩算法的二维平面中的闭合或非闭合曲线布孔方法技术

技术编号:32273304 阅读:48 留言:0更新日期:2022-02-12 19:38
一种基于内缩算法的二维平面中的闭合或非闭合曲线布孔方法,首先判断二维平面中的轮廓线是一段闭合曲线还是非闭合曲线,如果是非闭合曲线,在沿曲线布孔的时候需要首端和末端保留一定距离的自由空间,自由空间由设计人员给出,并在剩余曲线上沿线等间距布孔,在沿着与曲线一定间距的内缩曲线上布孔时也同样要保留一定距离的自由空间;如果是闭合曲线,在沿曲线布孔时要考虑到所有曲线上的布孔,在沿着与曲线一定间距的内缩曲线上布孔时,不同类型线交汇处采用取交点、补直线、舍弃三种方式来处理,处理之后的曲线依然是封闭曲线,然后沿着内缩曲线等距离布孔。本发明专利技术可以快速、精确布孔,根据设计人员给出的参数,设计出符合工程作业施工图纸。工程作业施工图纸。工程作业施工图纸。

【技术实现步骤摘要】
基于内缩算法的二维平面中的闭合或非闭合曲线布孔方法


[0001]本专利技术涉及计算机辅助设计(CAD)软件,具体是一种基于内缩算法的二维平面中的闭合或非闭合曲线布孔方法。

技术介绍

[0002]随着国家基础工程稳步建设,在铁路、公路、水利、矿山巷道等隧道工程的掘进施工中需要使用隧道钻爆法进行掘进,凿岩台车是隧道钻爆法施工中较为常用的施工机械之一。凿岩台车的施工图纸精度关乎到钻进质量和进度,而配套设计出隧道施工图纸的计算机辅助设计(CAD)软件在国内还是空白,没有良好的解决方案。CAD设计软件最为核心的掌子面布孔方法,牵扯到极其复杂的几何学、结构空间学和计算数学,如果处理不好沿线布孔方法,就得不到理想的布孔位置,造成设计误差。正因为如此,布孔方法显得尤为重要。
[0003]在设计掌子面的炮孔时,逐个设计孔的参数比较复杂,有二维平面坐标系中的坐标、探出角度、方向角等,每一个参数都牵扯到大量计算,并且不利于设计人员设计出完美的孔排布位置,特别是在规则的轮廓线上设计孔时,如何设计出规则排列的孔迫切需要解决。

技术实现思路

[0004]针对以上存在的问题,本专利技术的目的是提供一种基于内缩算法的二维平面中的闭合或非闭合曲线布孔方法,该方法可以快速、精确布孔,根据设计人员给出的参数,设计出符合工程作业施工图纸。
[0005]本专利技术按以下技术方案实现:一种基于内缩算法的二维平面中的闭合或非闭合曲线布孔方法,该方法包括以下步骤:步骤一、判断需要布孔的曲线是闭合还是非闭合,如果非闭合进行步骤二,如果闭合进行步骤三;步骤二、按照非闭合曲线布孔规则沿线布孔;步骤三、按照闭合曲线布孔规则沿线布孔。
[0006]优选的是,该方法具体包括以下步骤:步骤一、将需要布孔的曲线分为规则的劣弧和直线组成,每一段劣弧或者直线均有起始点坐标和终点坐标,从第一段线开始判断其终点是否与其下一段线的起始点重合,如果重合则判定为闭合,然后依次判断下一段线直到所有的圆弧和直线判断完毕,都闭合则判定为闭合曲线,否则为非闭合曲线。
[0007]步骤二、首先设置非闭合曲线的起点和末点的自由空间值、与线的距离、布孔间距,之后计算新的所需要布孔的曲线。如果与线的距离设置为0,则在原本的曲线上沿线布孔,如果大于0,则在按照一定内缩规则的内缩非闭合曲线上布孔。布孔的方向角垂直于曲线的切线方向,布孔时的距离为沿着线的等距离。
[0008]步骤三、首先设置闭合曲线的与线的距离、布孔间距。如果与线的距离设置为0,则在原本的曲线上沿线布孔,如果大于0,则在按照一定内缩规则的内缩闭合曲线上布孔。布孔的方向角垂直于曲线的切线方向,布孔时的距离为沿着线的等距离。
[0009]优选的是,步骤二、三中所述内缩规则方法具体为:步骤a:判断组成闭合曲线的每一段线是圆弧还是直线,弧线内缩为一段新弧线直线,直线内缩为一段新直线。
[0010]步骤b:判断内缩后的每一小段曲线与下一段曲线交汇处的情况,如果两段内缩线相交,求取交点坐标,将两段超出交点的部分线去掉,剩余部分组成新的内缩曲线;如果两段内缩线相离,求取第一段线的末点坐标二段线的起点坐标,用一段直线连接,形成新的闭合曲线;如果内缩线整体均处于交点之外,则将这段内缩线舍去,按照上一条和下一条线的交汇来处理。
[0011]优选的是,所述步骤a具体为:首先判断组成闭合曲线的每一段线是圆弧还是直线,如果是圆弧,根据圆弧的起点和末点还有半径求取圆心坐标,内缩圆弧则以原圆弧往圆心方向内缩得到,两段圆弧的圆心相同;如果是直线,内缩直线则以原直线沿着起点指向末点顺时针旋转π/2弧度平移得到。
[0012]优选的是,步骤二、三中所述布孔的方向角垂直于曲线的切线方法具体为:首先在等距离沿线布孔时,判断布孔所在的曲线是圆弧还是直线,如果曲线是圆弧则孔的方向角垂直于经过孔坐标的圆弧的切线,并且是切线逆时针旋转π/2弧度;如果是曲线直线则孔的方向角垂直于直线,并且是直线起点指向末点方向逆时针旋转π/2弧度。
[0013]本专利技术有益效果:1.本专利技术提供的曲线布孔方法可以针对多种复杂曲线,无论是单一类型曲线,还是由直线和弧线组成的组合曲线,不需要修改方法的计算公式的情况下,布出所需要的内缩孔。
[0014]2.本专利技术根据设计的布孔间距智能化计算最优布孔间距,并实时将最优布孔间距显示给设计人员。
[0015]3.采用曲线端坐标判断机制,判断曲线是否闭合,并采用相应的布孔算法。
附图说明
[0016]附图作为本专利技术的一部分,用来提供对本专利技术的进一步的理解,本专利技术的示意性实施例及其说明用于解释本专利技术,但不构成对本专利技术的不当限定。显然,下面描述中的附图仅仅是一些实施例,对于本领域普通技术人员来说,在不付出创造性劳动的前提下,还可以根据这些附图获得其他附图。
[0017]在附图中:图1为本专利技术的基于内缩算法的二维平面中的闭合或非闭合曲线布孔方法的原理图。
[0018]需要说明的是,这些附图和文字描述并不旨在以任何方式限制本专利技术的构思范围,而是通过参考特定实施例为本领域技术人员说明本专利技术的概念。
具体实施方式
[0019]为使本专利技术实施例的目的、技术方案和优点更加清楚,下面将结合本专利技术实施例中的附图,对实施例中的技术方案进行清楚、完整地描述,以下实施例用于说明本专利技术,但不用来限制本专利技术的范围。
[0020]在本专利技术的描述中,需要说明的是,术语
ꢀ“
上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本专利技术和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本专利技术的限制。
[0021]在本专利技术的描述中,需要说明的是,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本专利技术中的具体含义。
[0022]如图1所示,一种基于内缩算法的二维平面中的闭合或非闭合曲线布孔方法,用户设计的隧道轮廓线平面图形作为输入数据,工程领域中的隧道轮廓线在二维平面中表示为一段曲线,需要钻进的炮孔表示为圆孔,孔的方向角垂直于曲线的切线,而沿线布孔是设计施工图纸所必须的功能。首先对曲线进行拆分成最小单位的直线和圆弧,并标记直线的首尾端坐标、圆弧的首尾端坐标和半径。如果输入曲线的第一段直线或圆弧和最后一段直线或圆弧存在交点,则认为该曲线为闭合曲线,否则为非闭合曲线。
[0023]如果用户输入的缩进距离为0,意味着需要在输入的曲线上沿线布孔,如果缩进距离不为0,意味着需要先求取输入曲线的内缩曲线,然后在内缩曲线上沿线布孔。
[0024]曲线具体的内缩规则为直线内缩为倾斜角相同的直线(倾斜角范围为[
‑本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.基于内缩算法的二维平面中的闭合或非闭合曲线布孔方法,其特征在于,该方法包括以下步骤:步骤一、判断需要布孔的曲线是闭合还是非闭合;如果非闭合进行步骤二,如果闭合进行步骤三;步骤二、按照非闭合曲线布孔规则沿线布孔;步骤三、按照闭合曲线布孔规则沿线布孔。2.根据权利要求1所述的一种基于内缩算法的二维平面中的闭合或非闭合曲线布孔方法,其特征在于,步骤一具体为:将需要布孔的曲线分为规则的劣弧和直线组成,每一段劣弧或者直线均有起始点坐标和终点坐标,从第一段线开始判断其终点是否与其下一段线的起始点重合,如果重合则判定为闭合,然后依次判断下一段线直到所有的圆弧和直线判断完毕,都闭合则判定为闭合曲线,否则为非闭合曲线。3.根据权利要求1所述的一种基于内缩算法的二维平面中的闭合或非闭合曲线布孔方法,其特征在于,步骤二具体为:首先设置非闭合曲线的起点和末点的自由空间值、与线的距离、布孔间距,之后计算新的所需要布孔的曲线;如果与线的距离设置为0,则在原本的曲线上沿线布孔,如果大于0,则在按照一定内缩规则的内缩非闭合曲线上布孔;布孔的方向角垂直于曲线的切线方向,布孔时的距离为沿着线的等距离;步骤三具体为:首先设置闭合曲线的与线的距离、布孔间距;如果与线的距离设置为0,则在原本的曲线上沿线布孔,如果大于0,则在按照一定内缩规则的内缩闭合曲线上布孔;布孔的方向角垂直于曲线的切线方向,布孔时的距离为沿着线的等距离。4.根据权利要求3所述的一种基于内缩算法的二维平面中的闭合或非闭合曲线布孔方法,其特征在于,内缩规则的过程为...

【专利技术属性】
技术研发人员:李绍鑫周磊郭辉张启亮
申请(专利权)人:江苏徐工信息技术股份有限公司
类型:发明
国别省市:

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

1