(整理)曲线任意里程中边桩坐标正反算(CASIOfx-4800P计算器)程序. 下载本文

内容发布更新时间 : 2024/12/26 12:39:33星期一 下面是文章的全部内容请认真阅读。

精品文档

曲线任意里程中边桩坐标正反算(CASIO fx-4800P计算器)程序 一、程序功能

本程序由一个主程序(TYQXJS)和两个子程——正算子程序(SUB1)、反算子程序(

SUB2)序构成,可以根据曲线段——直线、圆曲线、缓和曲线(完整或非完整型)的线

元要素(起点坐标、起点里程、起点切线方位角、线元长度、起点曲率半径、止点曲

率半径)及里程边距或坐标,对该曲线段范围内任意里程中边桩坐标进行正反算。另

外也可以将本程序中核心算法部分的两个子程序移植到其它相关的程序中,用于对曲

线任意里程中边桩坐标进行正反算。本程序也可以在CASIO fx-4500P计算器及 CASIO fx-4850P计算器上运行。

特别申明:(1). 适用于弧长小于2倍半径的各种线元坐标正反算,精度优 于1mm;

(2). 在引用该核心计算部分时,请注明来源。

精品文档

精品文档

二、源程序

1.主程序(TYQXJS) \=> XY\:\=> SZ\:N:U\:V\:O\:G\:H\:P\:R\:Q:C=1÷P:D=(P-R)÷(2HPR):E=180÷π:N=1=>Goto 1:≠>Goto 2Δ←┘ Lbl 1:{SZ}:SZ:W=Abs(S-O):Prog \:X\ Y\ F\90◢ Goto 1←┘

Lbl 2:{XY}:XY:I=X:J=Y:Prog \:S\ Z\ Goto 2

2. 正算子程序(SUB1)

A=0.1739274226:B=0.3260725774:K=0.0694318442:L=0.3300094782:F=1-L: M=1-K:X=U+W(Acos(G+QEKW(C+KWD))+Bcos(G+QELW(C+LWD))+Bcos(G+QEFW (C+FWD))+Acos(G+QEMW(C+MWD))):Y=V+W(Asin(G+QEKW(C+KWD))+Bsin(G+ QELW(C+LWD))+Bsin(G+QEFW(C+FWD))+Asin(G+QEMW(C+MWD))):F=G+QEW(C+ WD)+90:X=X+ZcosF:Y=Y+ZsinF 3. 反算子程序(SUB2)

T=G-90:W=Abs((Y-V)cosT-(X-U)sinT):Z=0:Lbl 0:Prog \:L=T+QEW(C+ WD):Z=(J-Y)cosL-(I-X)sinL:AbsZ<1E-6=>Goto1:≠>W=W+Z:Goto 0Δ←┘ Lbl 1:Z=0:Prog \:Z=(J-Y)÷sinF

三、使用说明 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 => XY 2. XY = > SZ

N ? 选择计算方式,输入1表示进行由里程、边距计算坐标 ;输入2表示由坐标反算 里程和边距。

精品文档