利用AutoLISP语言绘制带缓和曲线的铁路曲线平面图

[摘要]通过AutoLISP 编程方法的剖析,探讨了基于Visual LISP(VLISP)编程软件环境下,利用AutoLISP语言编程绘制带缓和曲线的铁路曲线平面图的过程,为直接在AutoCAD图形环境下实现复杂铁路线路平面制图提供了一种技术方法。

[关键词]线路平面;缓和曲线;AutoCAD;AutoLISP

[作者简介]罗程耀,中铁四院集团南宁勘察设计院有限公司助理工程师,研究方向:铁道工程,广西南宁,530003

[中图分类号] TP311[文献标识码] A[文章编号] 1007-7723(2010)01-0052-0003

在铁路工务部门的日常铁路设计、施工、维护工作中,经常需要绘制铁路线路平面图,而铁路线路平面图绘制的难点在于绘制带缓和曲线的铁路曲线。由于缓和曲线的坐标位置是通过高次方程计算得来,具有非线性的特点,因此很难在图纸上绘制出准确的位置。无论是使用手工制图或在计算机上通过AutoCAD制图,技术人员通常是通过近似位置的方法绘制,这种方法不光需要花费大量的时间用于曲线要素、曲线起讫里程的计算,而且线位坐标也不准确。AutoCAD不但具有完善的绘图功能、良好的用户界面,而且允许用户进行二次开发。基于AutoCAD自带的Visual LISP(VLISP)编程软件环境下,利用AutoLISP语言进行二次开发,可以实现带缓和曲线的铁路曲线平面图自动绘制。

一、AutoLISP语言简介[1]

AutoCAD是一种极其灵活的应用程序,提供了多种开发工具,用户可以根据自己的需求对其进行开发和定制。其中AutoLISP是一种解释型过程语言,适合于辅助工程中的非结构化设计(其中包括为解决设计问题而不断尝试不同方案等)。

Visual LISP(VLISP)是为加速AutoLISP程序开发而设计的软件工具。VLISP的集成开发环境提供了许多功能,可使编写、修改代码以及测试和调试程序变得更容易。另外,VLISP还提供了一个工具,可以用来发布AutoLISP编写的独立应用程序。

二、AutoLISP程序开发思路

根据带缓和曲线的铁路曲线特点,本着为使用者创造一个良好的人机交互环境,本程序在每一个步骤都设计了文字提示,用户只需按照AutoCAD文本框中的提示输入已知参数,就能完成整个绘制过程。整个计算过程采用模块化设计思想,以消息触发方式编程,将程序分成3个子程序模块,使整个程序结构合理且易于维护。

三、曲线基本方程式[2]

(一)缓和曲线常数计算

R——曲线半径;

lo——缓和曲线长;

?琢——曲线偏角;

?茁o——缓和曲线的切线角,即HY(或YH)点的切线与ZH(或HZ)点切线的交角;

?啄o——缓和曲线的总偏角;

m——切垂距,即ZH(或HZ)都圆心O向切线所做垂线垂足的距离;

p——圆曲线内移量,为垂线长与圆曲线半径R之差。

?茁=•

?啄=?茁=•

m=-

p=-≈

(二)曲线要素计算

T——切线长;

L——曲线长;

Eo——外矢距;

q——切曲差。

T=m+(R+p)tan•

L=2l+=l+

E=(R+p)sec•-R

q=2T-L

(三)坐标计算

以ZH(或HZ)为坐标原点,切线为x轴,垂直切线方向为y轴:

缓和曲线部分x=l- 、y= ;

缓和曲线部分x=R•sin?琢+m、y=R(1-cos?琢) +p;

式中?琢=•+?茁

四、程序框图及说明

本程序框图如图1所示,它除了主程序外,还附有3个子程序模块;

子程序(Ⅰ):坐标转换计算模块;

子程序(Ⅱ):缓和曲线坐标计算模块;

子程序(Ⅲ):曲线坐标计算模块;

五、绘图实例

新建南宁电厂铁路专用线专JD2曲线,曲线两端直线边已确定,曲线半径450m,缓和曲线长60m,在AutoCAD中绘制成果如图2所示。

六、结语

该程序利用了模块化设计思想,整个程序结构合理且易于维护,具有方便人机对话功能,易学易用,可用于各种铁路工程中的平面图曲线绘制工作,实现带缓和曲线的铁路曲线自动绘制和曲线要素的自动计算,大大提高了绘图质量和效率,减轻了工程人员的劳动强度。

[参考文献]

[1]李子铮,李超,张跃.AutoLISP实例教程[M].北京:机械工业出版社,2003.

[2]王兆祥.铁道工程测量[M].北京:中国铁道出版社,1998.