五、坐标计算程序设计时应注意的问题
1、测量坐标系的建立
通过对测设曲线的观察与分析,不难发现:一条完整的曲线,被曲线的QZ点分成ZH∽Qz与QZ∽HZ对称的两段曲线,为了能直接应用缓和曲线、圆曲线上点坐标计算的数学公式来计算这两段曲线上点的测量坐标值,这就要求必须分别建立测量平面直角坐标系,坐标系原点分别为ZH点及HZ点,并分别取ZH点、HZ点到JD点为x轴正向,这样分别建立ZH-x,y独立测量坐标系与HZ-x’,y’独立测量坐标系。
2、测量坐标值的计算
在计算曲线上任意一点测量坐标时,一定要注意如何将数学上平面直角坐标系中的坐标值向测量坐标转化的问题,具体注意以下问题:
⑴ 弄清两种坐标系的区别。
在建立曲线上任意一点的坐标公式时,使用的坐标系是数学上平面直角坐标系,而在计算曲线上任意一点的测量坐标时,使用的坐标系是测量直角坐标系,二者不能混淆。
⑵ 弄清测量坐标符号与曲线转向的关系
在弄清两种坐标系的区别与关系的基础上,不难知道:
曲线上点的测量坐标X、X′的符号与数学公式计算值是一致的;曲线上点的测量坐标Y、Y′的符号与数学公式计算值是否一致,须由曲线转向确定,即: 曲线右转向:测量坐标Y、Y′的符号与数学公式计算值一致; 曲线左转向:测量坐标Y、Y′的符号与数学公式计算值相反。
⑶ ZH∽Qz与QZ∽HZ两段曲线上对称点的测量坐标关系 由上述⑴、⑵可知:
在ZH-x,y坐标系与HZ-x’,y’坐标系中, ZH∽Qz与QZ∽HZ两段曲线上对称点的测量坐标的关系是:x=x’ 、y= - y’。
2、 测量坐标系的转换
为了能够使用全站仪仅在一个测站就能测完全部的曲线,这就要求将曲线上所有点的坐标值都转换为同一个坐标系中的坐标值。
笔者是将HZ-x’,y’坐标系中的坐标值转换为HZ-x,y 坐标系中的坐标值。如图(6)所示:不难推导出坐标转换的通用公式为:
式中:正、负号根据曲线转向确定:
曲线右转向:取正号; 曲线左转向:取负号。
六、程序流程的设计
七、开发工具的选择与程序案例
笔者在《基于Execl VBA下的测量程序开发技术的探索与实践》一文中,讨论了关于测量程序开发开发工具的选择问题,并对基于Execl VBA下的测量程序开发的关键技术进行了初步探索,在本文中将不再讨论这些问题。测量程序的开发实践表明,基于Excel VBA开发测量计算程序,在数据存储、数据处理、数据输出及界面设计等方面,都表现出了其它开发语言无法比拟的优越性。 本文程序具体界面设计及运行后效果图如下图所示:
在本程序设计了模拟放样的功能。单击模拟放样命令按钮,程序将调用autoCAD展绘曲线上放样点的点位,从展绘的点位图便可直观地了解曲线的形态,本例模拟放样图如下图所示:
八、结束语
按本文介绍的方法设计的计算程序,界面简洁、灵活直观,能快速地计算缓和曲线的相关参数及曲线上点的测量坐标值,方便缓和曲线的测设工作,给广大工程技术人员提供了一种较快捷的缓和曲线测设手段,具有较大的应用推广价值。