APP下载

基于AutoCAD二次开发技术的城市轨道交通刚性接触网辅助绘图软件设计

2019-01-03黄齐来慈明洋

铁路计算机应用 2018年12期
关键词:平面布置接触网刚性

黄齐来,慈明洋

(北京城建设计发展集团股份有限公司,北京 100044)

随着城市轨道交通高速发展,以刚性接触网为牵引网制式的项目日益增多,设计任务显著加重。刚性接触网沿线架设,若依靠AutoCAD手工绘图,工作效率低且易出错。自动化辅助绘图软件可提升绘图效率和准确性,解决工期紧任务重的难题。

目前,CAD二次开发已有较为广泛的应用,在电气化铁路柔性接触网设计中已有成熟的辅助绘图软件[1-2]。赵海军等人应用AutoLISP开发了针对刚性接触网的平面布置软件,能够自动计算和绘制锚段[3]。田升平对地铁刚性接触网平面设计软件进行优化,采用ObjectARX进行开发[4]。而随着项目经验的积累,设计人员在总结了设计要点并储备大量的标准锚段数据后,提出刚性接触网辅助绘图软件以标准锚段数据库为基础,实现参数化和标准化地自动绘图,简化软件算法,降低软件开发难度。本文基于AutoCAD二次开发技术,采用ObjectARX开发环境,设计一款刚性接触网辅助绘图软件。根据用户选择的标准锚段,软件即可通过数据库接口调取坐标并进行自动化绘图,从开发难度和绘图流程方面进行优化,提高了刚性接触网的设计效率和准确性。

1 刚性接触网标准锚段数据库的建立

随着工程设计经验积累,接触网专业已储备大量原始数据,具有成熟的标准锚段设计资料。通过归纳刚性接触网各种长度和形式的标准锚段,将常用标准锚段悬挂点布置坐标分别预存储,整理成可直接调用的数据源文件,即可建立标准化的锚段数据库,为辅助绘图软件的开发提供基础条件和输入参数。

1.1 标准锚段形式分析

刚性接触网平面布置图由多个连续的标准锚段组合而成,锚段间通过锚段关节进行连接。刚性接触网采用Π型汇流排垂直悬挂,标准锚段长度根据汇流排制造长度进行设计。为方便运输和安装,汇流排单位制造长度为每根12 m,锚段两端分别设一根7.5 m的汇流排终端头[5]。标准锚段长度S可表示为S=12 n+2×7.5(n为汇流排根数)。锚段长度一般不大于250 m,按此规律标准锚段长度依次设计为243 m、231 m、219 m等规格。

同时,为保证受电弓磨耗均匀,刚性接触网在一个锚段范围内呈类“之”字形布置,在锚段中部设置中心锚结。采用全波模式的标准锚段设置,原理如图1所示[6]。由图1可知,同一长度的标准锚段可能为图1中锚段Ⅰ或锚段Ⅱ两种形式。此外,锚段间的连接形式按功能又可分为绝缘锚段关节和非绝缘锚段关节,两种关节对应的平行汇流排中心线间距分别为200 mm和300 mm。因此同一长度的标准锚段在数据库内应预设4种不同形式作为输入参数,分别如图2 中A、B、C、D所示。数据库中每种标准锚段按此4种形式预存悬挂点平面布置的坐标,具体布置应满足刚性接触网对跨距、拉出值的要求,工程项目中已有充分的研究和应用,不再赘述。

图1 标准锚段示意图

1.2 数据库类型

为保证出图的自动化、标准化和可重用性,刚性接触网辅助绘图软件支持读写外部数据库,对数据库内容进行调用。AutoCAD二次开发可采用3种方式建立用于参数化设计的标准数据库:用程序或内部数组方式管理、以数据文件方式管理和数据库形式。鉴于刚性接触网标准锚段数量不多,为方便实现,采用以数据文件方式管理数据。

1.3 数据库接口形式

由于现有的标准锚段资料以Excel表格为主,且Excel应用广泛,易于管理,用户可以自由方便地扩充数据源,通过COM类库外部操作实例对象可脱离Excel运行,开发成本较低,因此,本文采用Excel作为数据库[7],采用Excel COM组件实现数据读取,同时,预留与综合数字化办公系统软件集成的接口。

图2 标准锚段的4种类型

2 软件开发平台选择

AutoCAD二次开发是根据设计者用途进行的客户化定制开发技术。基于AutoCAD的二次开发工具主要有3种:VisualLisp、VBA和ObjectARX。其中,VisualLisp与VBA较简单,开发速度较快。但控制深度相比ObjectARX稍显不足。ObjectARX是在ADS基础上发展起来的一种C++语言编程环境,具有完全面向对象的AutoCAD接口,可以直接创建对象,修改属性和AutoCAD的数据库。同时ObjectARX可以与AutoCAD共享同样的内存空间。ObjectARX开发平台主要包括AcRx、AcEd、AcDb、AcGi及AcGe 5个类库,并且能够利用MFC类库建立Windows的软件操作界面。其功能强大,支持自定义实体,可以很好地运用各种面向对象技术进行底层开发[8]。

本文基于Visual Studio 2008平台,结合Object-ARX 2010开发工具,可运行在AutoCAD 2010-2011版本的图形平台。

3 软件设计

3.1 开发目标

刚性接触网辅助绘图软件开发目标按照预绘制内容和预实现功能划分,作为软件的设计依据。

3.1.1 预绘制的内容

(1)刚性接触网平面布置图中悬挂点、汇流排、架空地线等;

(2)锚段关节和中心锚节;

(3)锚段、悬挂点的自动编号;

(4)尺寸标注。

3.1.2 预实现的功能

(1)根据选取的标准锚段参数自动绘制连续多个锚段;

(2)自动生成对应编号和标注,且标注字体大小和方向满足施工图要求;

(3)自动统计悬挂点、锚段的数量,并生成统计表格。

3.2 软件架构设计

刚性接触网辅助绘图软件采用分布式架构,按功能划分为交互界面、数据库读写、模型空间图形的提取和添加等4个主要模块,软件具体架构图如图3所示。软件架构中未涉及较多的锚段和悬挂点的计算功能,而采用直接读取标准锚段数据库,避免由辅助绘图软件进行大量复杂运算,简化了软件算法,提高了软件绘图的速度和灵活性,降低开发难度。

图3 软件架构

根据所搭建的软件框架,建立主要的自定义功能类,包括:界面类(CArxDialog),读取类(CExlRD)、获取类(Cpick),绘图类(Cdrawing),转换类(Ctrans)等。其中,界面类负责人机交互功能,解析用户输入参数,显示必要的结论和提示信息;读取类负责调取数据库内容;获取类和绘图类分别负责图纸信息的提取和图形写入等功能。自定义类之间通过消息传递相互作用,而操作细节封装在相应的类中[9],自定义类间的消息传递关系如图4所示。

图4 自定义类间关系

3.3 软件工作流程

软件工作流程如图5所示。

用户在AutoCAD界面下通过自定义指令启动辅助绘图软件,根据提示在图纸上选中预绘制的线路和起点,并选取合适的标准锚段长度。辅助绘图软件则依次执行如下流程:

图5 软件工作流程

(1)解析交互界面中选定锚段参数;

(2)通过数据库接口组件调取相应的标准锚段中各悬挂点的跨距值和拉出值;

(3)按指定跨距值和拉出值依次沿线路方向定位,将悬挂点图形的实体对象添加到当前模型空间(MODEL_SPACE)块表记录中的指定位置;

(4)提取悬挂点处线路的斜率,插入标注并自动按斜率调整方向;

(5)多段线连接悬挂点,绘制汇流排和架空地线;

(6)记录悬挂点数据,自动生成统计表格。

ObjectARX中已封装了大量的经典函数,可完成对数据库、实体对象的操作和属性设置,常用的API如表1所示[10]。此外,本文还针对软件工作流程自定义封装了多个绘图过程中常用的API,如定位类API GetPointAtDistInGeCurve()、GetPointoutLengthInGeCurve( )以及绘图类API Drawcircles( )、AddBlockRf( )、DrawPolyline( )等,以完成对实体(AcDbEntity)的拾取、绘制等操作,丰富了本软件绘图调用的灵活性和软件功能的可扩展性。主要的自定义API及其作用如表2所示。

表1 ObjectARX封装的典型API表

表2 主要应用的函数表

3.4 界面设计

ObjectARX二次开发的界面可利用MFC类库实现。刚性接触网设计中需要输入的设计参数包括:锚段选型,起始锚段编号,绘图线路方向,架空地线形式等。软件主要采用MFC中的输入框和下拉式菜单两种控件形式设计,界面简洁直观,软件设计的界面如图6所示。

4 软件应用实例

对软件测试分别进行黑盒测试与白盒测试,对软件绘图功能、各模块工作流程及数据库读写进程进行测试,同时在郑州市城郊铁路工程的实际绘图中进行应用。通过测试,软件工作流程合理,能够完成所需的辅助绘图功能。用户只需按照界面提示依次选取线路及合适的标准锚段,并输入起始锚段编号、架空地线形式等设计参数,辅助绘图软件便可自动生成刚性接触网平面布置图,并完成锚段关节处理、图层划分、标注和编号等工作,且将对应的工程数量表保存至指定根目录下。利用辅助绘图软件绘制的刚性接触网平面布置图的悬挂点、锚段关节、自动生成的统计表格及标准锚段平面布置图分别如图7a~7e所示。根据实际应用中反馈的问题,经过进一步优化和修改,软件已达到了较高的自动化水平。

图6 人机交互界面

5 结束语

本文以刚性接触网平面布置图绘制为需求,基于AutoCAD二次开发技术设计一款刚性接触网辅助绘图软件。根据刚性接触网平面布置原则建立标准锚段数据库,软件通过调用标准锚段数据库内的悬挂点坐标,实现标准化的自动绘图。

软件以Visual Studio 2008为开发平台,应用C++语言及ObjectARX开发工具编写程序。软件直接通过数据库接口读取的方式实现参数化的自动绘图,避免复杂运算,简化算法,降低软件开发难度。

图7 绘制效果图

通过软件测试及在郑州市城郊铁路工程中的实际应用,软件能够满足施工图设计要求,较大提升设计效率和准确性。

目前,本软件尚无法应用于柔性接触网,后续应积累并建立柔性接触网基础数据库,以支持其平面布置绘制。同时编写软件说明,为与综合数字化办公系统软件集成提供接口。

猜你喜欢

平面布置接触网刚性
BIM技术在电气化铁路接触网中的应用研究
自我革命需要“刚性推进”
为开通打下基础!这条国际铁路完成接触网平推验收
中老铁路两国同步架设电气化接触网第一线
加权p-Laplace型方程的刚性
基于接触网下部材料厂型螺栓的改进研究
基于仿真技术的信号平面布置验证
锻锤的打击效率和打击刚性
110kV户外GIS变电站总平面布置优化
洋山四期工程港区水域平面布置优化