卡西欧5800p任意曲线坐标正反算程序

如题所述

SUB0 数据库子程序Goto1↙ 同时保存多个曲线时的指针Lbl 1:IF S<***(线元终点里程):Then***→G(线元起点方位角):***→O(线元起点里程):***→U(线元起点X):***→V(线元起点Y):***→P(线元起点曲率半径):***→R(线元终点曲率半径): ***→H(线元起点至终点长度):0或1、-1→Q:Return:IfEnd↙Lbl 1:IF S<***(线元终点里程):Then***→G(线元起点方位角):***→O(线元起点里程):***→U(线元起点X):***→V(线元起点Y):***→P(线元起点曲率半径):***→R(线元终点曲率半径): ***→H(线元起点至终点长度):0或1、-1→Q:Return:IfEnd……………..为了便于解读,每增加一个线元增加一行语句,每增加一条曲线增加一个Lbl,每增加一个工程增加一个文件。三、使用说明1、规定(1) 以道路中线的前进方向(即里程增大的方向)区分左右;当线元往左偏时,Q=-1;当线元往右偏时,Q=1;当线元为直线时,Q=0。(2) 当所求点位于中线时,Z=0;当位于中线左铡时,Z取负值;当位于中线中线右侧时,Z取正值。(3) 当线元为直线时,其起点、止点的曲率半径为无穷大,以10的45次代替。(4) 当线元为圆曲线时,无论其起点、止点与什么线元相接,其曲率半径均等于圆弧的半径。(5) 当线元为完整缓和曲线时,起点与直线相接时,曲率半径为无穷大,以10的45次代替;与圆曲线相接时,曲率半径等于圆曲线的半径。止点与直线相接时,曲率半径为无穷大,以10的45次代替;与圆曲线相接时,曲率半径等于圆曲线的半径。(6) 当线元为非完整缓和曲线时,起点与直线相接时,曲率半径等于设计规定的值;与圆曲线相接时,曲率半径等于圆曲线的半径。止点与直线相接时,曲率半径等于设计规定的值;与圆曲线相接时,曲率半径等于圆曲线的半径。 2、输入与显示说明输入部分:1. SZ => XY2. XY = > SZN ? 选择计算方式,输入1表示进行由里程、边距计算坐标 ;输入2表示由坐标反算里程和边距。S ?正算时所求点的里程,反算时为所求点的近似里程,反算时输入的近似里程不能夸线元,若夸线元的话,需进行第二次反算,并以第一次的结果做为近似里程,否则反算的里程及边距不对, Z ?正算时所求点距中线的边距(左侧取负,值右侧取正值,在中线上取零)X ?反算时所求点的X坐标Y ?反算时所求点的Y坐标显示部分:XS=××× 正算时,计算得出的所求点的X坐标YS=××× 正算时,计算得出的所求点的Y坐标FS=××× 正算时,所求点对应的中线点的切线方位角S=××× 反算时,计算得出的所求点的里程Z=××× 反算时,计算得出的所求点的边距 程序阅读地址:http://www.docin.com/p-42212521.html
温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-07-07
直接从网上下载再整合一下就好了,我的是4800,就是这么做的,VB程序的组合
相似回答