文档库 最新最全的文档下载
当前位置:文档库 › 曲线正反算程序(公司编)

曲线正反算程序(公司编)

曲线正反算程序

QXZFS

W″1(ZS) OR 2(FS)= ″

W=1Prog″QXZS″:Go to 1: Prog″QXFS″:

LbI 1

QXZS

Prog″ZF″

LbI 3

{C}:C″LI CHEN=″

L=C-K

L<0Go to 4:

L>M Go to 4:

Prog″HYH″:B=Z+B

D=P+XcosZ-YsinZ

E=Q+XsinZ+YcosZ

B<0B=B+360:

B″QIE XIAN FWJ″

{I}:I ″DZ(-):DY(+)=″

I<0B=B-90:

F″X″

H″Y″

Go to 3

LbI 4

″LICHEN CHAO XIAN″QXFS

Prog″ZF″

LbI 0:{FH}

F″XP=″:H″YP=″

C=-PcosZ-QsinZ+FcosZ+HsinZ Prog″HH″: LbI 1

C=C+IcosO

C<0Go to 4:

C>M Go to 4:

Prog″HH″

Abs(IcosO)>0.001

C″LI CHEN″

J>0I”D(Y)”

I″D(Z) ″

Go to 0: LbI 4

″SHU JU CHAO XIAN″

ZF

A″RZ(-):RY(+)=″

S″LS1=″:G″LS2=″:M″L=″

K″L(ZH)= ″:P″X(ZH)= ″:Q″Y(ZH)= ″

Z″FWJ=″:R=AbsA

HYH

L≤S Prog″H″

B=90L2÷(RSπ): Go to 2: L≤M-G Prog″Y″

B=(180L-90S) ÷(Rπ): Go to 2: J=L:L=M-G

Prog″Y″:T=X:V=Y

U=(180M-90G-90S) ÷(Rπ)+180

O=S:S=G:L=G

Prog″H″:D=X:N=-Y:L=J:L+M-L

Prog″H″:B=X:J=-Y

X=T-DcosU+NsinU+BcosU-JsinU

Y=V-NcosU-DsinU+BsinU+JcosU

S=O:B=U-180-90L2÷(RGπ)

L=M-L: Go to 2: LbI 2

A<0Y=-Y:B=-B:

HH

L=C: Prog″HYH″

I=-PcosZ-QsinZ+FcosZ+HsinZ-X

J=PsinZ-QcosZ-FsinZ+HcosZ-Y

POL(I,J):O=J-B

H

X=L-L^5÷(40R2S2)

Y=L^3÷(6RS)-L^7÷(336R^3S^3)

Y

O=90(2L-S) ÷(Rπ)

X=RsinO+S÷2-S^3÷(240R2)

Y=R(1-cosO)+S2÷(24R)

公路竖曲线高程计算程序

fx-4800P计算器 公路竖曲线高程计算程序 (程序名:GAO CHENG-HP) Lb1 0︰{CDAB}︰C“K1=”︰D“H1=”︰A“PV-K0=”︰B “PV-H0=”↙ Lb1 1 ︰{REF }︰R“R=”︰E“K2=”︰F“H2=”↙Lb1 2︰U =(B-D)÷(A-C)︰V =(F-B)÷(E-A)︰U >V =>N = 0︰T = R ( U-V ) ÷2︰≠>N = 1︰T = R ( V-U ) ÷2 ︰⊿G = A -T ︰Q = A +T ︰W = T 2÷(2 R)↙ Lb1 3︰{K}︰K “I.T.E.ZY-K.YZ-K=0,1”︰ K =0 =>Goto 4 ︰⊿U “I 1”= U ▲V “I 2”= V ▲T = T ▲W “E”= W ▲G “ZY-K”= G ▲Q “YZ-K”= Q▲↙ Lb1 4︰{M}︰M“PK=”︰M ≤A =>Goto 5︰⊿Goto 6 ↙Lb1 5︰M ≤G =>H = B-U ( A-M ) ︰Goto 7 ︰≠>Prog “H1 ”︰N = 1 =>H = B+X-Y ︰Goto 7︰≠>N = 0 =>H = B-X -Y ︰Goto 7↙ Lb1 6︰M ≥Q =>H = B+V ( M-A ) ︰Goto 7 ︰≠>Prog “H2 ”︰N = 1 =>H = B+X+Y ︰Goto 7︰≠>N = 0 =>H = B-X +Y ↙ Lb1 7︰H “HP”= H ▲{L}︰L“BZ-T=0,L”︰L = 0 =>Goto 8 ︰⊿{S}︰S “IL=”︰H “HL”= H +S L ▲↙

CASIO5800ZXZFS直线正反算坐标计算程序

[原创] CASIO fx-5800P ZXZFS 直线正反算坐标计算程序 原理:采用正余弦定理求待求点垂距进行确定里程和偏距。 公式:tan-1((yb-ya)/(xb-xa)) 、√(xB-xA)2+(yB-yA)2、sinα×D、Q÷tan(α) 说明:该程序适用于计算器 CASIO fx-5800P,针对直线正反算设计,正算可算直线中边桩坐标及其斜交、反算可推算直线距线路中心的里程偏距。 1、DK(QD)? 输入起点里程 2、X(QD)? 输入起点坐标X 3、Y(QD)? 输入起点坐标Y 4、FWJ? 输入计算方位角 5、J? 输入1为正算、输入2为反算 6、JSDK? 输入计算里程 主程序名:ZXZFS Deg:Fix 4↙ "DK(QD)"?A:"X(QD)"?B:"Y(QD)"?C:"FWJ"?F↙ "1=>XY.2=>DK":"J"?W↙ If W=1:Then Goto 1:Else If W=2:Then Goto 2:IfEnd↙ Lb1 1↙ "JSDK"?E:"PJ"?G:"PA"?H↙ "X=":B+(E-A) ×cos(F)+G×cos(F+H)→X◢ "Y=":C+(E-A) ×sin(F)+G×sin(F+H)→Y◢ "ZJD(X)"?S:"ZJD(Y)"?T↙ "PJ=":Pol(X-S,Y-T):I→M◢ "FWJ=":If J<0:Then J+360→N:Else J→N:N▲DMS◢ Goto 1↙ Lb1 2↙ "X="?K:"Y="?L↙ Pol(K-B,L-C):I→D:If J<0:Then J+360→P:Else J→P:IfEnd↙ If F

工程测量坐标正反算通用程序(终极篇)

第五篇坐标正反算通用程序(终极篇) 1. 坐标正算主程序(命名为ZBZS) 第1行:Lbl 0:”K=”?K:”BIAN=”? Z:”α=”?B 第2行:Prog “A” 第3行:”X=”:N+Zcos(F+B)◢ 第4行:”Y=”:E+Zsin(F+B)◢ 第5行:”F=”:F?DMS◢ 第6行:Goto 0 K——计算点的里程 BIAN——计算点到中桩的距离(左负右正) α——取前右夹角为正 2. 坐标反算桩号和偏距主程序(命名为ZBFS) 第1行:”X1=”? C:”Y1=”?D: ”K1=”?K 第2行:Lbl 0:Prog “A” 第3行:Pol(C-N,D-E):Icos(F-J)→S:K+S→K 第4行:Abs(S)>0.0001=>Goto 0 第5行:”K1=”:K◢ 第6行:”BIAN=”:Isin(J-F)→Z◢ X1——取样点的X坐标 Y1——取样点的Y坐标 K1——输入时为计算起始点(在线路内即可),输出时为反算点的桩号 Z——偏距(左负右正) 注:在9860或9960中需将第3行替换为Pol(C-N,D-E): List Ans[1]→I :List Ans[2]→J:Icos(J-F)→S:K+S→K,正反算主程序所有输入赋值多加一赋值符号(→),其他所有除数据库外的程序均保持不变 3. 计算坐标子程序(命名为XYF) 为了简洁,本程序由数据库直接调用,上述中的正反算主程序不直接调用此程序 第1行:K-A→S:(Q-P)÷L→I 第2行:N+∫(cos(F+X(2P+XI)×90÷π),0,S)→N 第3行:E+∫(sin(F+X(2P+XI)×90÷π),0,S)→E 第4行:F+S(2P+S I)×90÷π→F 第5行:F<0=>F+360→F: F>360=>F-360→F 4. 数据库(命名为A) 第1行:K≤175.191=>Stop(超出后显示Done) 第2行:175.191→A:428513.730→N:557954.037→E:92°26′40″→F:0→P:1/240→Q:70.417→L: K≤A+L =>GoTo 1(第一缓和曲线) 第3行:245.607→A: 428507.298→N:558024.092→E: 100°50′59.4″→F: 1/240→P:1/240→Q: 72.915→L: K≤A+L =>Goto 1(圆曲线)

FX-4850计算器曲线计算程序2011.721

ZHY程序FX5800 辛普森计算器公路测量常用程序修改版一、程序功能 LbI 0:"X="?A: "Y="?B:"Z="?C:"1/(R1)"?D:"1/(R2)"?E:"QT="?F: "QT="?G: "V"?V:"W"?W LbI 1:"L"?L:"O"?O:"H"?H:IF L>G:Then Goto 1:IFEnd (E-D)/(G-F)→P:L-F→Q:P*Q→I C+(I+2*D)*Q*(90/∏)→J C+(I/4 +2*D)*Q*(45/(2*∏))→M C+(3/4*I+2*D)*Q*(135/(2*∏))→N C+(I÷2+2*D)*Q*(45÷∏) →K "X=":A+Q÷12*(COS(C)+4*(COS(M)+C0S(N))+2*COS (K)+COS(J))+O*COS(J+H)→X◢ "Y=":B+Q÷12*(SIN(C)+4*(SIN(M)+SIS(N))+2*SIN (K)+SIN(J))+O*SIN(J+H)→Y◢ X-V→I:Y-W→J PoL(I,J) ”J=”:J▲DMS▲ If J <0:Then “J=”:J+360°→J:J▲DMS ▲ if End Goto1

F5800计算器曲线计算JD程序(ZH~HZ)坐标计算放样公式 主程序: 30→Dim Z: "XJD="?B: "YJD="?D: "KJD="?M: "A="?A: "ZJ="? Q: "R="?R: "LS1="?C: "LS2="?T: "F="?F:prog "A":Lb1 0: "XO="?G: "YO="?H: "LC="?L: "JJ="?Z: "PJ="?S:If L≤M-Z[11]+C:Then M- Z[11]COS(F) →N:D- Z[11]Sin(F) →E:Prog "ZHHY":Prog "FWJ": Goto 0:Else If L≤M-Z[11]+ Z[13]-T: Then M- Z[11] →K:B- Z[11] COS(F) →N:D- Z[11]Sin(F) →E: Prog "HYYH":Prog "FWJ": Goto 0: Else If L≤M-Z[11]+ Z[13]:Then M- Z[11]+ Z[13] →K:F+AQ+180→V:B-Z[12] COS(V) →N:D- Z[12] Sin(V) →E: Prog "YHHZ":Prog "FWJ": Goto 0: Else "End" ▲ If End: If End: If End 说明:以上主程序需要四个副程序,缺少任何一个副程序不能运行! "XJD="?: "YJD="?: "KJD="?为曲线交点坐标及桩号 "A="?为曲线左转取-1;右转取1 "ZJ="?为曲线转角值;"R="?为曲线半径 "LS1="?: "LS2="?为前后段缓和曲线长度 "F="?曲线起始方位角; " X0="?、" Y0="?:全站仪测站点坐标 " LC="?为曲线ZH-HZ段内所求任意点桩号; "JJ="?为切线顺时针夹角;"PJ="?为左右侧所求点距设计线距离;

工程测量竖曲线程序及公式

竖曲线程序要素 已知要素 ? 1. 变坡点里程桩号 2. 变坡点高程3. 竖曲线半径4. 变坡点前坡度(上坡为正,下坡 为负) 5. 变坡点后坡度(上坡为正,下坡为负)6.待求点里程 计算公式 ●凹凸型:当前坡度-后坡度为正,则为凸型,反之为凹型 ●转坡角(曲折角):前坡度–后坡度 ●竖曲线长:半径* 转坡角 ●切线长:竖曲线长/ 2 ●外矢距:切线长的平方/ 2倍半径 ●待求点到变坡点距离:待求点桩号–变坡点桩号(取绝对值) ●曲线起终点桩号: 起点:变坡点的桩号–切线长终点:变坡点的桩号+ 切线长 ●任意点切线标高:变坡点的标高±测点与变坡点里程距离*该里程对应坡度 ●任意点设计标高: 1. 凸型:该桩号在切线上的设计标高–修正值 2. 凹型:该桩号在切线上的设计标高+ 修正值 程序条件 ◆条件:如果待求点≦变坡点,则待求点–起点=间距,反之待求点>变坡点,则终点–待 求点=间距 ●曲线点间距:待求点–起点或终点–待求点 If K ≦Z:Then K - A→X:Else K > Z =>B - K→X : IfEnd ●竖曲线上点的高程修正值:曲线点间距的平方/ 2倍半径 ◆条件:凸型竖曲线(J>0) 如果待求点≦变坡点,则任意点设计标高=变坡点高程-(变坡点-待求点)* 前坡度(取绝对值)-修正值,反之待求点>变坡点,则变坡点任意点设计标高=变坡点高程-(待求点-变坡点)* 后坡度(取绝对值)-修正值 If K≦Z:Then H-Abs(U*I)-Y→G:Else K>Z=>H-Abs(U*L)-Y→G:IfEnd ◆条件:凹型竖曲线(J<0) 如果待求点≦变坡点,则任意点设计标高=变坡点高程+(待求点-变坡点)* 前坡度(取绝对值)+修正值,反之待求点>变坡点,则变坡点任意点设计标高=变坡点高程+(变坡点-待求点)* 后坡度(取绝对值)+修正值 If K≦Z:Then H+Abs(U*I)+Y→G:Else K>Z=>H+Abs(U*L)+Y→G:IfEnd

线元法线路坐标正反算程序

经苦心钻研,奋战多日,终于编写出了代码短,速度快,精度高,功能全的线路坐标正反算程序,欢迎试用并提出宝贵意见。 功能简介及特点: 1、选用高斯-勒让德公式作计算内核,保证精度,模块化设计,便于扩充功能。 2、线元数据可自动从数据库调用,也可手工输入。 3、可管理多条线路,如里程不在线路或线元范围,将警告里程偏大、偏小。 4、边桩计算设计为导线式递推方式,可用于由一个中桩推出结构物所有角点坐标。 5、反算实现了智能化操作,只需输入线路号(或手工输线元资料)、坐标,不需近似里程,即可自动从起点向后开始试算出里程、位置,如对算出里程、位置表示怀疑,还可以让计算器从终点起再向前试算下一个可能的位置(匝道、回头曲线同一坐标可能会有一个以上结果)。第三次及以后试算才要求输入近似里程。 6、程序代码规范简洁,便于阅读、理解。 完整程序清单: ZFS %正反算主程序 B=.1739274226:C=.5-B: Lbl 1:U"0 ZS 1 FS"=0=>Prog "ZS": ≠>U=1=>Prog"FS":≠>Goto 1

ZS %正算子程序 {K}:Prog"ZZ":I=0:{I}:I"L"≠0=>"Prog"WY":≠>Prog"ZB" FS %反算子程序 {KVW}:V"XC"W"YC":Lbl 2:Prog "ZZ":I=V-S:J=W-T:Pol(I,J: J=J-F:K=K+Rec(I,J:AbsI<1m=>Prog"WZ":≠>Goto 2Δ M=0:{M}:M"0 NEXT"=0=>U=U+1:Goto 2:≠>U=1 ZZ %高斯法中桩子程序(4节点) Prog"XL":M=K-L:O=(P-R)÷2PQR: D=.0694318442:E=.3300094782:F=1:G=1-E:H=1-D: I=5:Lbl 1:C[I]=A+MrC[I](1÷P+OMC[I]:Dsz I:Goto 1: S=X+M(BcosD+CcosE+CcosG+BcosH: T=Y+M(BsinD+CsinE+CsinG+BsinH WY %外移点计算子程序 Lbl 1:J=90:{J}:J=F+J"<":F=J:S=S+Rec(I,J:T=T+J: Prog"ZB":I=0:{I}:I"L"≠0=>Goto 1 WZ %位置显示子程序 "KJ":K:Pause 1:J◢ ZB %坐标显示子程序 "XY":S:Pause 1:T◢ YC %异常处理子程序 U=1=>K=L:U=2Δ U=3=>K=M:U=4Δ

曲线拨正计算程序说明

曲线拨正计算程序 一、概述 曲线方向整正常用的方法有矢距法、偏角法和绳正法。前两种多应用于新建或改建的铁路上。在既有线上,由于行车的干扰,置镜困难,绳正法得以普遍应用。绳正法基本上是以一种试算性质的、称之为流水拨道的为主。过去,由于条件的限制,现场人员计算一条曲线要费好大的劲,因为数据量较大,一遍一遍的要算好几张纸,搞的头疼。现在,电脑得以广泛应用,为做好线路养护维修奠定了良好基础。根据绳正法整正曲线基本原理、公式,在Windows平台上编写了这个计算程序。希望给我的同行带来方便,节约时间,又快又好的把铁路曲线拨正,拨圆,让火车跑的稳,跑的快,适应提速的需要。同时,也借此机会交流经验,向专家,老师学习。 二、适用范围与主要功能 本程序适用于直线型超高顺坡的缓和曲线,不能计算复心曲线,不适用于曲线型超高顺坡的缓和曲线拨正计算;对无头、无尾、无资料的“三无”曲线可自动初步判别曲线半径及缓和曲线长度,通过试算找到较小的拨道量,曲线计算完毕后将结果输出到Word文档,同时输出缓和曲线两种检查表,一是以2m弦线测量,在缓和曲线上每1m量一处正矢的;二是以10m弦线测量,在缓和曲线上每5m一点的。等同于缓和曲线加设副矢检查点,主要是为了适应提速的需要,把缓和曲线做好。 三、操作过程

1、程序运行后开始出现的是登录画面,如下图:要求输入口令。 初始口令为“000000”,即6个0。以后你可以根据自己的习惯,修改呢称、口令。 2.主画面。上面的图就是主画面一角,共有5个主菜单:分别是:[计算],[输出],[设置],[退出],[说明]。其中后二项没有子菜单,前三项的子菜单如下三幅图。 [计算]项下一共是5个子菜单,分别是[填入现场正矢]、[确定半径、缓和线长]、[计算半拨量]、[修正、计算拨量]及[退出]。现在看到,填入正矢菜单是灰色的,表示里面已有曲线数据在计算,现场正矢、控制点和备注的内容都填好了,不能改了。只有点击[设置]里面的[计算新曲线开关],这个菜单才变得可操作,但同时也清空了现有的数据。 3.计算一条曲线的过程:

5800曲线道路全线坐标正反算(已验证)

CASIO fx-5800P线元法坐标正反算程序V2.0 说明:本程序适用于卡西欧计算器 CASIO fx-5800P,可对全线贯通坐标正反算、竖曲线高程计算。该程序可计算任意线型,包含(直线、圆曲线、缓和曲线、卵形曲线)等,还可以能通过坐标反推该点里程和距中线距离,适用测量员专用。 主程序名:ABCYT 第1步Deg:Fix 3:10→DimZ 第2步Lbl 3:"1.DK=>XY":"2.XY=>DK":"Q"?W:"K0+"?S:Prog"ABCYTSJ":If P=0:Then 10^(45)→P:IfEnd:If R=0:Then 10^(45)→R:IfEnd 第3步1÷P→C:(P-R)÷(2HPR)→D:180÷π→E:If W=1:Then Goto 1:Else Goto2:IfEnd 第4步Lbl 1:"E"?Z 90=N:Abs(S-O)→W:Prog "ABCYTZ" 第5步Cls:"F=":Locate 3,1,F°:"X=":Locate 3,2,X:"Y=":Locate 3,3,Y◢ 第6步Prog"ABCYTSQX":Cls:"H=":Locate 3,1,H◢ 第7步1→W:90→N:Goto 3 第8步Lbl 2:?X:?Y:X→I:Y→J:Prog"ABCYTF":O+W→S 第9步Cls:"K=":Locate 3,1,S:"E=":Locate 3,2,Z◢ 第10步2→W:Goto 3 正算子程序名:ABCYTZ 第1步0.1739274226→A:0.3260725774→B:0.0694318442→K:0.3300094782→L 第2步1-L→F:1-K→M 第3步U+W×(A×cos(G+Q×E×K×W×(C+K×W×D))+B×cos(G+Q×E×L×W×(C+L×W× D))+B×cos(G+Q×E×F×W×(C+F×W×D))+A×cos(G+Q×E×M×W×(C+M×W×D)))→X 第4步V+W×(A×sin(G+Q×E×K×W×(C+K×W×D))+B×sin(G+Q×E×L×W×(C+L×W× D))+B×sin(G+Q×E×F×W×(C+F×W×D))+A×sin(G+Q×E×M×W×(C+M×W×D)))→Y 第5步G+Q×E×W×(C+W×D)→F:F+ N→Z[1] 第6步X+Z×cos(Z[1])→X:Y+Z×sin(Z[1])→Y 反算子程序名:ABCYTF 第1步Lbl 2:(S-O)→W:0→Z:Prog "ABCYTZ":F-90→Z[9]:(J-Y)×cos(Z[9])-(I-X)×sin(Z[9])

坐标正反算程序计算器

一、 Lbl 3:"1→ZS,2→FS"?Q Q=1=>Goto 1:Q=2=>Goto 2 Lbl 1:"CE:X"?M:"CE:Y"?F:"JL"?L:"FWJ"?A:Rec(L,A):M+I→C:F+J→D Cls "X=":Locate 3,1,C:"Y=":Locate 3,2,D◢ Goto 3 Lbl 2::"CE:X"?G:"CE:Y"?H:"(HOU)FY:X"?N:"(HOU)FY:Y"?E Pol(N-G,E-H) If J<0:Then J+360→Y:Else J→Y:IfEnd Cls "FY JL=":Locate 10,1,I:"FY FWJ=":Y◆DMS◢ Goto 3 进入程序运行如下: 1→ZS,2→FS? 输入1为正算,2为反算. 以输入1为例: CE:X? 测站点X(5796.717) CE:Y? 测站点Y(5212.569) JL? 仪器测得的距离(321.889) FWJ? 仪器测得的方位角(193-41-07) 得到:X=5483.966 Y=5136.414 再按EXE,输2为例: CE:X? 测站点X(5796.717) CE:Y? 测站点Y(5212.569) (HOU)FY:X? 后视或放样的X(5483.966) (HOU)FY:Y? 后视或放样的Y(5136.414) 得到:FY JL=321.889 FY FWJ=193-41-6.79 二、 Deg : Fix 3 : “XZ→0:YZ→1”?A : If A = 1: Then Goto 1 : IfEnd ↙ If A = 0 : Then “BS→0:XY→1:AND→2:DK→3:L(I)→4 ”?O : IfEnd ↙ If O = 4: Then Goto 1 : IfEnd ↙ If O = 3: Then Prog “F.2 ”: If X= 0 : Then Goto 1 : IfEnd : IfEnd ↙ If O≠1: Then “X1 ”?X : “Y1”?Y : X→Z[11]: Y→Z[12]: “X2 ”?P : “Y2”?Q : Pol( P-X , Q-Y) : If J﹤0 : Then J + 360→J : IfEnd : Cls : “S12= ”: Locate 6 ,1, I : “B12= ”: J ?DMS◣

5800计算器竖曲线程序

CASIO fx5800p全线高程计算程序 GAOCHEN 主程序 Lbl 1 “KM=,<0,Stop”:?K:K<0=>Stop:“PY=”?L:Prog”GK” C-D→E:Abs(RE/2)→T:R(Abs(E)/E)→R If K≤B-T:Then 0→H:Else:If K≥B+T Then 0→H:D→C:Else K-B+T→H:Ifend:Ifend A-(B-K)C-H2/(2R)-0.000→G:Cls “KM=”:Locate 4,1,K:Locate 10,1,“PY=”:Locate 13,1,L:Fix 3 “H=”:Locate 4,2,G Prog “PODU”:(E-B)/(D-A)(K-A)+B→I:(F-C)/(D-A)(K-A)+C→J “HL=”:G+I(L-1)→X:Locate 4,3,X:Locate 11,3,“I=”:Locate 13,3,I*100 “HR=”:G+J(L-1)→Y:Locate 4,4,Y:Locate 11,4,“I=”:Locate 13,4,J*100◢显示中边桩高程 Cls:Norm 2:“BM+HS≤0,Goto 1”?Z:Z≤0=> Goto 1:Cls (输入视线高) “KM=”:Locate 4,1,K:Locate 10,1,“PY=”:Locate 13,1,L:Fix 3 “QSM=”: Locate 6,2,Z-G (显示中桩读数) “QSL=”: Locate 6,3,Z-X (显示左桩读数) “QSR=”: Locate 6,4,Z-Y◢(显示右桩读数) Norm 2:Cls:Goto1 (后面可加已知视线高计算读数部分,不想计算读数则视线高输入0或负数如不想显示麻烦,可将Locate语句去掉) 以下两个子程序不需运行,只是两个独立的数据库赋值程序,字母重复不影响计算结果 GK 数据库子程序 If K≤第二曲线起点桩号:Then 第一曲线交点高程→A:第一曲线交点桩号→B:第

5800公路坐标正反算程序

坐标正反算程序 程序变量说明: D:选线。E、F:置仪点坐X、Y。K:待算点桩号。B:待算点距离。Q:待算点与线路交角(以顺时针方向)L:线元起点至待算点长度。0:待算点方位角。S:线元长度。U:线元起点半径。V:线元终点半径。 X、Y:正算结果。Z、计算序列。C、I、J T:内部运算。A、G、H、M、N、P、R、W未用变量。 ZB- Deg:Norm 2 Z[1]T Z:”两个空格ZS=1 Or FS=2Z If Z M 1 And Z M2:Then Cls:Locate 5,2,”NO 10r 2”:Locate 6,3 !Stop!”: Stop:Else Z Z[1]:lfEnd Z[10]T D:四个空格XL T 1 T 2T3九个空格XL N=N”D If D M 1 And D M 2 And D M 3:Then Cls:Locate 5,2,'XL r 1 T2T3”:Locate 5,3 !Stop!”: Stop: Else D T Z[9]: IfEnd If D=Z[10]:The n Cls:Do:Locate 3,1,"[EXE] GO!GO!':Locate 8,2,9-I ntg(Z/7) Locate 4,3,"10S T DAT":Locate 12,3,D:Isz Z:Z=70=>Goto 1:Lpwhile Getkey M 47:Goto 2:IfE nd Lbl 1 D=1=>Prog” ”:D=2=>Prog” ”:D=3=>Prog” ”:D=X=>Prog‘ D T Z[7]:For 1 T Z To Z[7]-1 Cls: Locate 9,2,Z[7]-Z Z[10Z+11]-Z[10Z+1]T L Prog" TQSJ:Next Lbl 2 Z[9] T Z[10] Cls:Z[1]=2=>Prog”FS' Z[2]T E: (X)=”E:E T Z[2]:Z[3] T F:”(Y)仝F:F T Z[3]:Prog ”ZS'

竖曲线自动计算表格

竖曲线自动计算表格 篇一:Excel竖曲线计算 利用Excel表格进行全线线路竖曲线的统一计算 高速公路纵断面线型比较复杂,竖曲线数量比较多。由于相当多的竖曲线分段造成了设计高程计算的相对困难,为了方便直接根据里程桩号计算设计高程,遂编制此计算程序。程序原理: 1、根据设计图建立竖曲线参数库; 2、根据输入里程智能判断该里程位于何段竖曲线上; 3、根据得到的竖曲线分段标志调取该分段的曲线参数到计算表格中; 4、把各曲线参数带入公式进行竖曲线高程的计算; 5、对程序进<0 = J=0; M-P=0 = J=1 B: K<=D =B=-M ; KD = B=P 程序特色: 1、可以无限添加竖曲线,竖曲线数据库不限制竖曲线条数; 2、直接输入里程就可以计算设计高程,不需考虑该里程所处的竖曲线分段;

3、对计算公式进行保护,表格中不显示公式,不会导致公式被错误修改或恶意编辑。 程序的具体编制步骤: 1、新建Excel工作薄,对第一第二工作表重新命名为“参数库”和“计算程序”,根据设计图建立本标段线路竖曲线的参数库,需要以下条目: (1)、竖曲线编号; (2)、竖曲线的前后坡度(I1、I2)不需要把坡度转换为小数; (3)、竖曲线半径、切线长(不需要考虑是凸型或凹型);(4)、竖曲线交点里程、交点高程; (5)、竖曲线起点里程、终点里程(终点里程不是必要参数,只作为复核检测用);如图1所示: 图1 2、进行计算准备: (1)、根据输入里程判断该里程所处的曲线编号: 需要使用lookup函数,函数公式为“LOOKUP(A2,参数库!H3:H25,参数库!A3:A25)”。如图2所示: 里程为K15+631的桩号位于第11个编号的竖曲线处,可以参照图1 进行对照 (2)、在工作表“程序计算”中对应“参数库”相应的格式建立表格

5800交点法正反算程序

5800 交点法正反算程序 自编5800 支距及偏角法正反算程序 该程序使用支距偏角法,正算速度一般,反算速度较辛普森公式反算速度稍快 计算范围从直缓到缓直,如若缓直后为直线则无需输入变量直接继续计算 此程序在正算循环里程超限上占用字节较多,适用公路路基临时输入变量放样 运行只需从主程序进入,请各位高手多多指正 主程序“ZS FS” 20→Dim Z “1→NEW,2→OLD”?Z ↙ IF Z=1:Then Goto 1: Else Goto 2 if end↙选择输入选一手动输入曲线要数选二提取数据库 输入交点X,Y LbI 1:”JDX”?T:“JDY”?B 输入切线1,2的长 “T1”?C:”T2”?D 输入前后缓和曲线的长 “L1”?E: “L2”?F “ZHL”?G 输入直缓里程 “FWJ”Q 输入直缓点切线方位角 “-PJ+”?S 输入偏角左负右正 ?R: 输入圆曲线半径 Goto 4↙ ↙ LbI2:prog “SJK”:goto 4 ↙输入观测点里程输入N值1为正算其他为反算 LbI4: “KCD”?K: ?N : If N=1: T hen Goto 5: Else prog “ZSXH” Goto 6: If end↙

LbI5: “X”?M: “Y”?Z Prog “FSXH”: Goto 7: If end↙选择反算后输入测点的X,Y 假设里程与正算输入一起,无需另输入 LbI6:“W”?W求边桩输入边距左-右+ X+WCos(P+90) →X: “X=”:X ◢显示所求X值 ◢显示所求Y值 Y+WSin(P+90) →Y: “Y=”:Y ◢显示所求点切线方位角 P<0 => P+360→P: “FW=”:P Goto 4 LbI7: “KCD=”:K ◢显示反算出的里程 “W=”:W◢显示反算出的边距 Goto 4↙ 子程序正算循环“ZSXH” ↙ R(Abs(S)-90E÷(∏R)-90F÷(∏R)) ∏÷180→J If K<=(说明:小于等于号)E+G+J: Then Goto 1: Else Goto 3: If end↙ LbI1: Q→H:T-C*Cos(H)→X:B-C*Sin(H)→Y: 根号(R∏) →A↙ If K<=G+E:Then K-G→L:prog “B” :P→P:prog “C”:Goto 6: Else E→L: prog “B”:P→P: prog “C”:X→X:Y→Y:Goto 2: If end↙ ↙ LbI2: K-G-E→L: prog “D”:P→P: prog“C”: Goto 6 根号(RF)→A↙ LbI3: Q+S→H:T+D*Cos(H)→X:B+D*Sin(H)→Y: If K<=G+E+J+F: Then G+E+J+F-K→L: prog “B”:

5800计算器公路坐标计算程序(全线)直缓和圆曲线程序

5800计算器公路坐标计算程序(全线) 原4850程序改编 Lb1 1 ”K”?K:”W”?W:”O”?O:”I”?I IF K<41490.879:Then 40776.825→A: 41490.879→ B: 3761346.715→ M: 505279.147→N:166°45′36.3″→F: 1/1045→D:1/1045→E :Goto 0 :Return:Ifend IF K<41690.879:Then 41490.879→A: 41690.879→ B: 3760651.641→ M: 505442.686→N:166°45′36.3″→F: 1/1045→D:1/1000→E :Goto 0 :Return:Ifend IF K<42242.154:Then 41690.879→A: 42242.154→ B: 3760455.626→ M: 505481.961→N:172°29′22.78″→F: 1000→ R:Goto 2: Return:Ifend IF K<42442.154:Then 42242.154→A: 42442.154→ B: 3759916.982→ M: 505403.549→N:204°04′31.62″→F: 1/1000→D: 1/1045→E: Goto 0 : Return:Ifend IF K<42673.884:Then 42442.154→A: 42673.884→ B: 3759740.299→ M: 505310.019→N :209°48′18.1″→F: 1/1045→D: =1/1045→E :Goto 0 : Return:Ifend IF K<42863.884:Then 42673.884→A: 42863.884→ B:3759539.223→ M:505194.838→N:209°48′18.1″→F:-1/1045→D:-1/800→E:Goto 0 : Return:Ifend IF K<43636.692:Then 42863.884→A: 43636.692→ B:3759370.853→ M:505107.051→N:203°00′04.15″→F:R=-800:Goto2 : Return:Ifend IF K<43826.692:Then 43636.692→A: 43826.692→ B:3758630.216→ M: 505167.591→N:147°39′10.35″→F: -1/800→D:E=-1/1045→E :Goto 0 : Return:Ifend IF K<44825.092:Then 43826.692→A: 44825.092→ B:3758478.338→ M: 505281.555→N:140°50′56.4″→F:-1/1045→D:-1/1045→E: Goto 0 : Return:Ifend IF K<45025.092:Then 44825.092→A: 45025.092→ B:3757704.093→ M: 505911.911→N:140°50′56.4″→F: 1/1045→D:1/1000→E:Goto 0 : Return:Ifend IF K<45300.109:Then 45025.092→A: 45300.109→ B:3757544.945→ M: 506032.892→N:146°34′42.88″→F:R=1000:Goto 2 : Return:Ifend IF K<45500.109:Then 45300.109→A: 45500.109→ B:3757297.588→ M: 506151.102→N:162°20′09.32″→F: 1/1000→D: 1/1045→E :Goto 0 : Return:Ifend IF K<45805.835:Then 45500.109→A: 45805.835→ B:3757103.485→ M: 506198.937→N:168°03′55.8″→F: 1/1045→D:1/1045→E: Goto 0 : Return:Ifend IF K<45980.835:Then 45805.835→A: 45980.835→ B:3756804.367→ M: 506262.160→N:168°03′55.8″→F: -1/1045→D: -1/1000→E:Goto 0 : Return:Ifend IF K<46136.333:Then 45980.835→A: 46136.333→ B:3756634.336→ M: 506303.312→N:163°03′07.63″→F:R=-1000:Goto 2 : Return:Ifend Lb1 0 (E-D)÷(Abs(B-A)) →P: Abs(K-A) →Q: F+(PQ+2D)Q×90÷∏→J F+(PQ÷4+2D)Q×45÷(2∏) →G F+(3PQ÷4+2D)Q×135÷(2∏) →H F+(PQ÷2+2D)Q×45÷∏→S:

与控制点程序结合坐标正反算通用程序

GAUSSLE坐标正反算fx-4850程序 源程序 1.正算主程序GSZS I"X0":S"Y0":O"K0":G"F0":H"KN":P"R0":R"RN":Q”Q(-Z +Y)” : D=(P-R)÷(2(H-O)PR):KL”L(-Z +Y)” :M”ANG(YJJ)”: J=Abs(K-O): Prog"SUB1":”FWJ=”:F=F-M:”X=”:X=X:Pause0: ”Y=”:Y=Y◢ 2. 反算主程序GSFS XY:Z[2]=X:Z[3] =Y: I"X0":S"Y0":O"K0":G"F0":H"KN":P"R0":R"RN":Q”Q(-Z +Y)” : D=(P-R)÷(2(H-O)PR): J=Abs((Y-S)cos(G-90)-(X-I)sin(G-90)): L=0:M”M(YJJ)”=90: Lbl 0:Prog "SUB1": L=(Z[3]-Y)cos(G-90+QJ(1÷P+JD)×180÷π)-(Z[2]-X)sin(G-90+QJ(1÷P +JD) ×180÷π):AbsL<1E-6=>Goto1:≠>J=J+L:Goto 0Δ←┘ Lbl 1:L=0:Prog "SUB1":L=(Z[3]-Y)÷sinF:”K=”:K=O+J:Pause0:”L=”:L=L◢ 3. 正算子程序(SUB1) Defm 4: A=0.1184634425:B=0.2393143352:Z[4]=0.2844444444:C=0.0469100770:E=0.230 7653449:Z[1]=0.5: X=I+J(Acos(G+QCJ(1÷P+C JD)×180÷π)+Bcos(G+Q EJ(1÷P+E JD)×180÷π)+Z[4]cos(G +QZ[1]J(1÷P+Z[1]JD)×180÷π)+Bcos(G+Q(1-E)J(1÷P+(1-E)JD)×180÷π)+Acos(G+Q (1-C)J(1÷P+(1-C)JD) ×180÷π)): Y=S+J(Asin(G+QCJ(1÷P+C JD)×180÷π)+Bsin(G+Q EJ(1÷P+E JD)×180÷π)+Z[4]sin(G +QZ[1]J(1÷P+Z[1]JD)×180÷π)+Bsin(G+Q(1-E)J(1÷P+(1-E)JD)×180÷π)+Asin(G+Q (1-C)J(1÷P+(1-C)JD) ×180÷π)): F=G+QJ(1÷P+JD) ×180÷π+M:X=X+LcosF:Y=Y+LsinF 4. 曲线元要素数据库:DAT-M K≥O=>K<H=> I=**:S=**:O=**:G=**:H=**:P=**:R=**:Q=**⊿⊿←┘ K≥O=>K<H=> I=**:S=**:O=**:G=**:H=**:P=**:R=**:Q=**⊿⊿←┘ …………………………… K≥O=>K≤H=> I=**:S=**:O=**:G=**:H=**:P=**:R=**:Q=**⊿⊿←┘ (注:如有多个曲线元要素继续添加入数据库DAT-M中) 5、M线(坐标正算)组合程序MG-ZB Prog”DAT-M”:Prog”GSZS” 6、M线(坐标计算-放样)组合程序MG-FY Prog”MG-ZB”: Prog”FY” 7、M线(坐标反算)组合程序M-GSFB Prog”DAT-M”:Prog”GSFS”

5800-9860计算器坐标正反算通用程序

5800-9860计算器坐标正反算通用程序 1. 坐标正算主程序(命名为ZBZS) 第1行:Lbl 0:”K=”?K:”BIAN=”? Z:”α=”?B 第2行:Prog “A” 第3行:”X=”:N+Zcos(F+B)◢ 第4行:”Y=”:E+Zsin(F+B)◢ 第5行:”F=”:F◢ 第6行:Goto 0 K——计算点的里程 BIAN——计算点到中桩的距离(左负右正) α——取前右夹角为正 2. 坐标反算桩号和偏距主程序(命名为ZBFS) 第1行:”X1=”? C:”Y1=”?D: ”K1=”?K 第2行:Lbl 0:Prog “A” 第3行:Pol(C-N,D-E) 第4行:List Ans[1]→I 第5行:List Ans[2]→J 第6行:Icos(F-J)→S:K+S→K 第7行:Abs(S)>0.0001=>Goto 0 第8行:”K1=”:K◢ 第9行:”BIAN=”:Isin(J-F)→Z◢ X1——取样点的X坐标 Y1——取样点的Y坐标 K1——输入时为计算起始点(在线路内即可),输出时为反算点的桩号 Z——偏距(左负右正) 3. 计算坐标子程序(命名为XYF) 为了简洁,本程序由数据库直接调用,上述中的正反算主程序不直接调用此程序第1行:K-A→S:(Q-P)÷L→I 第2行:N+∫(cos(F+X(2P+XI)×90÷π),0,S)→N 第3行:E+∫(sin(F+X(2P+XI)×90÷π),0,S)→E 第4行:F+S(2P+SI)×90÷π→F 4. 数据库(命名为A)

第1行:K≤175.191=>Stop 第2行: 175.191→A:428513.730→N:557954.037→E:92°26′40″→F:0→P:1/240→Q:70.417→L: K≤A+L =>GoTo 1(第一缓和曲线,圆半径为240) 第3行:245.607→A: 428507.298→N:558024.092→E: 100°50′59.4″→F: 1/240→P:1/240→Q: 72.915→L: K≤A+L =>Goto 1(第圆曲线,半径为240) 第4行:318.522→A: 428482.988→N:558092.538→E: 118°15′25.2″→F: 1/240→P: 0→Q: 55.104 →L: K≤A+L =>Goto 1(第二缓和曲线,圆半径为240) 第5行:373.627→A:428453.283→N:558138.912→E:124°50′4.5″→F:0→P:- 1/180→Q:67.222→L: K≤A+L=>Goto 1:Stop(第一缓和曲线,圆半径为180) 第6行:Lbl 1:Prog “XYF” A——曲线段起点的里程 N——曲线段起点的x坐标 E——曲线段起点的y坐标 F——曲线段起点的坐标方位角 P——曲线段起点的曲率(左负右正) Q——曲线段终点的曲率(左负右正) L——曲线段长度(尽量使用长度,为计算断链方便) 说明: (1)在9860中,程序中所有公式和部分函数结果均存储在List Ans列表数组中,要想多次调用最好随公式取出结果,并赋给变量。 (2)正算主程序可以计算一般边桩的坐标,如要计算类似涵洞端墙的坐标需增加第二偏距和转角两个变量。 (3)程序规定,左偏曲线曲率(半径倒数)输入负值,右偏曲线曲率输入正值,直线上点曲率输入0,例如直线段,线元起点和终点均输入0,第一缓和曲线分别输入0和圆半径的倒数,圆曲线均输入半径倒数,第二缓和曲线分别输入圆半径倒数和0,卵形曲线分别输 入对应圆半径的倒数 (4)若是从大里程向小里程的反方向计算,则曲率取正方向时的负值,方位角减去(或加上)180度。 (5)有多个匝道的项目,可随时更改正反算主程序中的红色字体部分来调用其它线路的数据 (6)反算桩号偏差为1mm (7)可以计算任意线型的任意点坐标

卡西欧fx-5800p计算器”单圆曲线计算“程序以及程序说明

单圆曲线(YQXJS) “KO”?O: “X0”?A:“Y0”?B:“JDX”?X:“JDY”?Y:“FWJ”?J:“FO”?F:?N:?R:6→DimZ←┘(K0为输入起算点桩号),(X0为输入起算点X坐标),(Y0为输入起算点Y坐标),(JDX输入曲线所在交点X坐标,无输入0),(JDY为输入曲线所在的Y坐标,无输入0),(FWJ为输入起算点的方位角),(F0为输入交点处的转角,带正负号,当左转时在转角前加-;右转时在转角前加+),(N为转角方向,正输入+1,负输入-1),(R为输入曲线半径)Abs(F)÷2→G◢“T=”:Rtan(G)→T◢(计算切线长) “L=”:GRπ÷90→L◢(计算圆曲线长) “E=”:R÷cos(G)-R→E◢(计算外距,即交点到QZ点的距离) LbI 1←┘ ?K:180N(K-O)÷(πR)→V:2Rsin(0.5NV)→M←┘(K为输入待求点的桩号)V为带求点与起算点间的弦长说对应的圆心角 “XZ=”:A+Mcos(J+0.5V)→Z[1]◢(计算出的中桩X坐标) “YZ=”:B+Msin(J+0.5V)→Z[2]◢(计算出的中桩Y坐标) tan-1((Z[2]-Y)÷(Z[1]-X))→U←┘ If U<0:Then U+360→U:Else U→U:If End←┘ “FW=”?U :U DMS◢(计算出的中桩与交点的方位角) ?W:“XL=”:Z[1]-NWcos(J+V+90)→Z[3]◢(W为输入路半宽,计算出的左边桩X坐标)“YL=”:Z[2]-NWsin(J+V+90)→Z[4]◢(计算出的左边桩Y坐标) “XR=”: Z [1]+NWcos(J+V+90)→Z[5]◢(计算出的右边桩X坐标) “YR=”:Z[2]+NWsin(J+V+90)→Z[6]◢(计算出的右边桩Y坐标) 特别注意: 1.进行反向计算(大桩号往小桩号计算)时,起算点桩号应设为0;待求桩号与起算点距离多远桩号就为多少; 3.起算点方位角应与起算点之前的线形所对应的方位角一致。

相关文档
相关文档 最新文档