4800曲线任意里程中边桩坐标正反算

合集下载

曲线(含直线)任意里程中边桩坐标正反算

曲线(含直线)任意里程中边桩坐标正反算

曲线(含直线)任意里程中边桩坐标正反算(CASIO fx-4800p&fx-4850)J-SQX(竖曲线数据输入)“J-SQX”:{NHUVMQP}:Z[9]=N“SJD”:Z[10]=H“JDZ”:Z[11]=U“I1”:Z[12]=V“I2”:Z[13]=M“R”:Z[14]=Q“QD”:Z[15]=P“ZD”:“TO J-JSMS”J-PQX(平曲线数据输入,自动切换到J-JSMS)A“JD”B“JDX”C“JDY”F“FJ”O“ZJ:Z-,Y+”RE“LS1”K“LS2”:E<1=>E=1E-9⊿K<1=>K=1E-9⊿Z[1]=EE÷(24R)-E^4÷(2688RRR):Z[2]=E÷2-EEE÷(240RR):X=(EE-KK)÷(24R)÷sinAbsO:Z[3]“T1”=(R+Z[1])tan(AbsO÷2)+Z[2]-X▲Z[4]“T2”=(R+KK÷(24R)-K^4÷(2688RRR))tan(AbsO÷2)+K÷2-KKK÷(240RR)+X▲L=AbsOπR÷180+(E+K)÷2▲J=tan-1((R+Z[1])÷(Z[3]-Z[2])):X“E”=(R+Z[1])÷sinJ-R▲X=A-Z[3]:Y=X+E:E<1=>X“ZY”▲≠=>X“ZH”▲Y“HY”▲⊿Y“QZ”=X+(L-K-E)÷2+E▲Y=X+L-K:X=X+L:K<1=>X“YZ”▲≠=>Y“YH”▲X“HZ”▲⊿Prog“J-JSMS”J-JSMS(放样模式主程序)“1-ZS,2-FS,4-DMFY” Lb1 0:{Z}:Z“MS”≤1=>Goto 1:≠=>Z“MS”≤4=>Goto 2⊿⊿Lb1 1:{PDW}:PD“BZ”W“BJ”:Prog“JP”:X“X=”▲Y“Y=”▲Goto 0⊿Lb1 2:{XYW}:XYW“BJ”: Prog“JF”:P“P=”▲D“BZ=”▲Z=3=>Prog“JS”:Prog“DMFY”⊿(运行竖曲线高程计算程序)Z=4=>Z[26] “H”=12.417+(P-75360)*5.2/1000: Prog“DMFY”⊿(运行单面坡比高程计算,语句中12.417为起点桩号DK75+360的高程,可以根据实际情况进行调整;5.2/1000为单面上坡率,上坡输正值,下坡输负值)Goto 0JS(竖曲线计算主程序)P<Z[14] =>Prog“J-SQX”⊿P>Z[15] => Prog“J-SQX”⊿N=Z[9]:U=Z[11]:V=Z[12]:H=Z[13]:G=H Abs(U-V)÷200:P<N=>I=U:M=N-G:M>P=>M=P⊿≠=>I=V:M=N+G:M<P=>M=P⊿⊿J=(P-M)2÷(2H):U-V>0=>J=-J⊿H=Z[10]+(P-N)×I÷100+JZ[26] “H”=HJP(平曲线正算子程序)FixmLb1 1:J=F:X=B-Z[3]cosF:Y=C-Z[3]sinF:G=EP≤A-Z[3] =>I=A-Z[3]-P:M=-I:N=0:H=F+W:Goto5≠=>P≤A-Z[3]+E=>I=P-A+Z[3]:H=90II÷(REπ):O<0=>H=-H⊿H=H+W+F: Goto 3≠=>P≤A-Z[3]+L-K=>I=P-A+Z[3]-E: Goto 4:≠=>Goto 2⊿⊿Lb1 2:X=B+Z[4]cos(F+O):Y=C+Z[4]sin(F+O):J=F+O+180:G=KP≤A-Z[3]+L=>I= A-Z[3]+L-P:H=90II÷(REπ):O>0=>H=-H⊿H=H+J+W+180: Goto 3≠=>I=P-A+Z[3]-L:M=-I:N=0:H=J+W+180: Goto 5Lb1 3:M=I-I^5÷(40RRGG):N=III÷(6GR)-I^7÷(336RRRGGG): Goto 5Lb1 4:H=(E+2I)×90÷(πR):M=RsinH+Z[2]:N=R(1-cosH)+Z[1]:O<0=>H=-H⊿H=J+W+H: Goto 5Lb1 5:P≤A-Z[3]+L-K=>O<0=>N=-N⊿≠>O>0=>N=-N⊿⊿Goto 6Lb1 6:X=X+Mcos J-Nsin J+Dcos H:Y=Y+Msin J+N cosJ+Dsin HJF(平曲线反算子程序)FixmU=X:V=Y:D=0:J=F-W:P=A+(Y-C)cos J-(X-B)sin JLb1 1:Prog“JP”:J=H-180:I=(V-Y)cos J-(U-X)sin J:Abs I<1E-4=>Goto 2:≠=>P=P+I: Goto 1⊿Lb1 2:D=(V-Y)÷sin HDMFY隧道开挖断面(超欠挖情况)计算程序{HIJMNG}:Z[20]= H“C”:Z[21]=I“A”:Z[22]= J“H1”:Z[23]= G“GC”:Z[24]= M“R1”:Z[25]= N“R2”D≤2.3=>D“ZD”=Abs(D-2.3)▲≠=>D>2.3=>D“YD”= D-2.3▲⊿⊿(C为圆心O1与O2的高差值,A为圆心O1与O2的宽度差值,H1为圆心O1至设计高程的高度,GC为实测高程,R1为上部第1个半径,R2为下部第2个半径)(显示值ZD为至隧道中心线左边的宽度,YD为至隧道中心线右边的宽度,2.3为设计线路距隧道中心线的宽度,可以实际情况进行改变调整)Z[26]“H”▲(显示所求桩号点设计高程值)Z[27]“O1” =Z[26]+ Z[22](第1个圆心高程)Z[28]“O2”=Z[26]+ Z[22]+ Z[20] (第2个圆心高程)Z[29]= Z[24]×Sin 60▲(此数据为上半弧60度范围的宽度值,可根据实际情况调整;数值可不显示) D>Z[29] =>Goto 1⊿Z[30]=√((Z[24])2-D2)Z[31]= √(Abs((Z[24])2-(Z[23]-Z[27])2))Z[32] “HGD”=Z[27]+ Z[30]- Z[23] ▲Z[33] “SKD”=Z[31]-D ▲Prog“J-JSMS”Lb1 1Z[23]<Z[27] =>Goto 2⊿Z[31]= √((Z[25])2-(Z[23]-Z[28])2)Z[33] “SKD”=Z[21]+ Z[31]-D ▲Prog“J-JSMS”Lb1 2Z[31]=Z[25]-(Z[27]-Z[23])*0.35/(0.78+Z[20]+Z[22])(0.35为下边墙往边墙底内缩的距离,0.78为设计高程至边墙底部的高度)Z[33] “SKD”= Z[31]-D ▲Prog“J-JSMS”一、程序简介1、本套程序共有2个主程序,5个子程序。

4800平曲线坐标反算桩号程序(对称与非对称缓和曲线)概要

4800平曲线坐标反算桩号程序(对称与非对称缓和曲线)概要

4800-对称与非对称缓和曲线坐标计算程序主程序:XY=NH"X0"?M :"Y0"?N :0→TLbI 1:Prog" JD-X " :B∧2/24/A→P:B/2-B∧3/240/A∧2→Q:K- Z[1]→C :C+B →D :D+(AbsW-90(B+U)/π/A) πA /180→E:E+U→FIf W<0 : Then S= -1:Else 1→S:IfEndLbI 6:If L≤C: Then K-L→O:G-Ocos V→R:H-Osin V→U:V→Z:Goto 3:IfEhdIF L≥F: Then L-F→O: V+W→Z:G+Ocos Z→R:H+Osin Z→U:Goto 3: IfENDIF L<D:Then L-C→O:Prog"ZH--HY":V+SR→Z:G+(I- Z[1])cos V-SJsin V→R :H+(I- Z[1])sin V+JScos V→U:Goto 3:IFendIF L>E:Then F-L→O :U→B:Prog"ZH--HY" :V+W→O :O-SR→Z:G+(Z[2]-I)cos O-SJsin O→R :H+(Z[2]-I)sin O+JScos O→U:Goto 3:Ifend180(L-D+B/2)/ π/A→O:Asin O+Q→I:P+A(1-cos O)→J:V+SO→Z:G-(Z[1]-I)cos V-SJsin V→R :H-(Z[1]-I)sin V+SJcos V→ULbI 3:?T:If T=1:Then Goto 5 :Else 0→O : Ifend"X0":R◢"Y0":U◢"I":Z◢LbI 4:"S"?O:If O=0 : Then Goto 1:IFEndIf O=-1:Then Goto 5 : IfendR-Osin Z→X :U+Ocos Z→Y :0→J :0→I:Pol(X-M,Y-N):J<0=> J+360→J:Ifeng"X1":X◢"Y1": Y◢"G": J◢"L": I◢Goto 4:IfendLbI 5:"XF"?X:"YF"?YIf X=-1 : Then 0→T:Goto 4 : IfendPol(X-R,Y-U):Icos(J-Z)→O :If AbsO≤0.001: Then L+ O→L◢Isin(J-Z)→Z[3] "XF"◢Goto 5 : Else T=1:L=L+O : Goto 1 : Ifend子程序:ZH--HYAB→U:O-O∧5/40/U∧2→I:O∧3/6/U-O∧7/336/U∧3→J:90O∧2/πU→R数据库子程序:JD-X?L:L≥45250.23 And L<46500.29: Then 45635.294→K : 3303516.326→G: 34635482.418→H : 154°23′25.3″→V : -23°48′12.4″→W : ????→z[1] : ????→z[2] : 1100→A : 240→B :250→U : Ifend?L>.......... :Ifend:Ifend使用过程“显示”说明:1、M"X0"、N"Y0"为输入测站点坐标。

4850 4500 4800正反算程序

4850 4500 4800正反算程序

1.中边桩计算程序<1>主程序名—XYLbl 1:{KM}:K:M:Prog”3”:X=C+Mcos(W-90:Y=D+Msin(W-90:”X=”:X:Pause 0:”Y=”:Y▲Goto1<2>子程序—3PrOg”QX”:Prog”20”<3>曲线要素—QX数据实例:某高速公路中线设计如下图所示K<2000=>B:E:F:O:P:Q:R: K≤4570=>B=25:E=1000:F=1000:O=100P=66:Q=4000:R=800: K≤5040=>B=-17:E=1086.4378:F=1555.1451:O=90:P=91:Q=4570:R=800: K≤5670=>B=35:E=1168.2556:F=2016.0909:O=120:P=74:Q=5040:R=1000: B=-25:E=1180.9927:F=2636.2334:O=150:P=109:Q=5670:R=1500注:无缓和曲线时,O=0.00001当输入里程小于2000时,为新曲线要素输入,可修改值域范围<4> 计算过程—20Z=O:Prog”8”:A=B/AbsB:L=ABπR/180+O:T=(D+RcosN)tan(AB/2)+C-RsinN:K≤Q-T=>C=(K-Q)cosP+E:D=(K-Q)sinP+F:W=P: K≤Q-T+O=>Z=K-Q+T:Prog”9”:K≤Q-T+L-O=>Z=O: Prog”9”:V=90(K-Q+T-O)/ πR:S=2R sinV:N=W+AV:C= C+S cosN:D=D+S sinN:W=W+2AV: Z=Q-T+L-K: Prog”8”:V=P+B-180-AV:W=P+B-AN :C=S cosV+E+T cos(P+B:D=S sinV+F+T sin(P+B: Z=K-Q+2T-L:W=P+B:C=E+ZcosW:D=F+Z sinW△△△△N=Z[3]<5> 缓和曲线方程式—8V=RO:C=Z-Z^5/40V2+Z^9/3456V^4:D=Z^3/6V-Z^7/336V^3+Z^11/42240V^5:N= 90Z^2/πV:V=tan-1(D/C:S=(D^2+C^2)^0.5<6> 子程序—9Prog”8”:C=Scos(P+AV)+E-TcosP:D=Ssin(P+AV)+F-TsinP:W=P+AN2.桩号、边桩距返算程序—KM方式一:试算法(速度慢,程序简单)Fixm:K=Q-T+L-O:Prog”20”Lbl 1:{XY}Lbl 2:POL(X-C,Y-D:K=Isin(J-W+90)+K:Abs sin(J-W+90)<0.0001=>”K=”:K:Pause0:”M=”:M=Icos(J-W+90▲≠>Prog”20”:Goto2△方式二:解算法(程序复杂,计算速度快)Defm5: Lbl 1:Fixm:{XY}:Pol(X-E,Y-F:Z[1]=I:Z[2]=J:cos(J-P<0=>K=Q+Icos(J-P: ≠>K=Q+Icos(J-P-B)+2T+L△K≤Q-T=>M=Icos(J-P+90:Goto5≠>Goto2△△Lbl 2:Z=O:Porg”8”:U=(D+RcosN)+cos(B/2):Z=P+B/2+90A:C=UcosZ+E:D=UsinZ+F:Pol(X-C,Y-D:Asin(J-P-AN+90 A<0=>K=K-AZ[1]cos(Z[2]-P+90)tan(90 (K-Q+T)^2/πRO):Goto3:≠>Asin(J-P-B+AN+90A>0 =>K=K-AZ[1]cos(Z[2]-P-B-90 )tan(90(K-Q+T-L)^2/πRO):Goto4:≠>K=Q-T+O+Asin-1(sin(J-P-AN+90 A))×πR/180 :M=A(I-R:Goto5△△Lbl 3:Z=K-Q+T:Prog”9”Pol(X-C,Y-D:K=K+Isin(J-W+90 :Abs sin(J-W+90<.001=>M=Icos(J-W+90 :Goto5: ≠>Goto3△Lbl 4:Z=Q-T+L-K:Prog”8”:V=P+B-180-AV:W=P+B-AN:C=cosV+E+Tcos(P+B:Pol(X-C,Y-D:K=K+Isin(J-W+90 :Abs sin(J-W+90 <.001=>M=Icos(J-W+90:Goto5: ≠>Goto4△Lbl 5:”K=”:K:Pause0:”M=”:M▲注:程序“20”为中桩计算程序Q—直缓点里程;T—切线长,L—曲线长;O—缓和曲线长;W—切线方位角Pol—极坐标转换,为涵数特别注意数字0和字母O的区别一、程序功能本程序由一个主程序(TYQXjs)和两个子程——正算子程序(SUB1)、反算子程序(SUB2)序构成,可以根据曲线段——直线、圆曲线、缓和曲线(完整或非完整型)的线元要素(起点坐标、起点里程、起点切线方位角、线元长度、起点曲率半径、止点曲率半径)及里程边距或坐标,对该曲线段范围内任意里程中边桩坐标进行正反算。

CASIO-4800完整缓和曲线任意中边桩坐标计算(绝对正确实用)

CASIO-4800完整缓和曲线任意中边桩坐标计算(绝对正确实用)

Lbl3:Q”X(Z1)”=C+T*COS(A+180) ▲V”Y(Z1)” =D+T*SIN(A+180) ▲K=A: GOTO D
Lbl 4: Z≤Z【2】=>GOTO 5: ≠=>Z>Z【2】=>GOTO 7
Lbl 5: F=(Z- Z【1】)-( Z- Z【1】)^5/(40R^2Y^2)
I=(Z- Z【1】)^3/(6RY)- (Z- Z【1】)^7/(336R^3Y^3):M=A+30*J*( Z- Z【1】)^2/(∏RY)
Lbl A: Z﹤Z【4】=>GOTO B: ≠=>Z≥Z【4】=> Q”X(Z2)”=C+T*COS B▲V”Y(Z2)” =D+T*SIN B▲K=B: GOTO D
Lbl B: F=(Z【4】- Z)-( Z【4】- Z)^5/(40R^2Y^2) :I=( Z【4】- Z)^3/(6RY): M=B-30*J*( Z【4】- Z)^2/(∏RY)
Lbl 6: Q”X(H1)”=C+T*COS(A+180)+ ABS(F^2+I^2)^1/2*COS M▲V”Y(H1)” =D+T*SIN(A+180) + ABS(F^2+I^2)^1/2*SIN M▲K=A+90*J( Z- Z【1】)^2/(∏RY): GOTO D
Lbl 7: Z≤Z【3】=>GOTO 8: ≠=>Z>Z【3】=>GOTO A
CASIO-4800完整缓和曲线任意中边桩坐标计算(绝对正确实用)
DEFM 4
Lbl 0:{Z,S,O,U}
A:B:C”JDX”:D”JDY”:E”JD”:R:Y”LS”:T”LC”:L:J

4800计算器曲线计算程序

4800计算器曲线计算程序

线路测设坐标计算程序(Casio fx-4800p)在铁路、公路工程勘测和施工测量中,相对复杂的线路测设工作占了很大比重,且传统线路测设公式已不能满足现代化曲线测设的需要。

为此,笔者根据工程测量的特点,严格定义了坐标系,推导了线路测设的通用计算公式。

该公式不但可以计算单交点平曲线坐标,同时还可以计算复曲线坐标,如不完整缓和曲线等。

根据该公式,笔者编写了Casio fx-4800p 计算器上的单交点平曲线中桩、边桩坐标计算程序。

该程序可以判断已知数据输入的正确性,并可限制输入的测设点里程。

在程序编制过程中,已考虑了零溢出问题。

一.使用说明1.起动名为“ZXZB”的计算程序。

2.输入已知数据:X(QD)—起点纵坐标(EXE)Y(QD)—起点横坐标(EXE)X(JD)—交点纵坐标(EXE)Y(JD)—交点横坐标(EXE)S(JD)—交点里程(EXE)X(ZD)—终点纵坐标(EXE)Y(ZD)—终点横坐标(EXE)RY —圆曲线半径(EXE)L1 —前缓和曲线长度(EXE)RS —前缓和曲线起始半径(0表示无穷大)(EXE)L2 —后缓和曲线长度(EXE)RE —后缓和曲线结束半径(0表示无穷大)(EXE)S(HZ1) —起点缓直点里程(EXE)S(ZH1) —交点直缓点里程(EXE)S(HZ2) —交点缓直点里程(EXE)S(ZH2) —终点直缓点里程(EXE)S? —测设点里程(EXE)X=*** —显示测设点纵坐标(EXE)Y=*** —显示测设点横坐标(EXE)I? —边桩距(左负右正)(EXE)XB=*** —显示边桩纵坐标(EXE)YB=*** —显示边桩横坐标(EXE)I? —输入0结束边桩计算,继续下一测设点计算。

二.计算举例1.已知数据:X(QD)=2175.199 Y(QD)=1015.467X(JD)=2000 Y(JD)=2000S(JD)=6000X(ZD)=2621.088 Y(ZD)=2783.741RY=600L1=220 RS=5800L2=180 RE=3300S(HZ1)=5200 S(ZH1)=5631.047S(HZ2)=6311.047 S(ZH2)=67002.求:各测设点中桩坐标及左边桩10M、右边桩20M坐标3.计算结果三.源程序清单ZXZB1. Defm 15:Rad:Norm↙2. A"X(QD)":B"Y(QD)":C"X(JD)":D"Y(JD)":Z"S(JD)":E"X(ZD)":F"Y(ZD)":N"RY"↙3. Q"L1":R"RS":V"L2":W"RE":G"S(HZ1)":H"S(ZH1)":K"S(HZ2)":L"S(ZH2)":Fixm↙4. O=H+Q:P=K-V:M=Pol (C-A,D-B):T=J:Z[3]=J: Z[1]=C+Rec (Z-H,J+π):Z[2]=D+J↙5. M=Pol(E-C,F-D):Z [12]=J:T=J-T:Abs T>π=>T>π=>T=T-2π: ≠>T=T+2π△△↙6. T>0=>Z[13]=1:≠>Z[13]=-1△↙7. R=0=>Z[14]=0:≠>Z[14]=QN÷(R-N)△↙8. W=0=>Z[15]=0:≠>Z[15]=VN÷(W-N)△↙9.Q=0=>I=0:≠>I=(2QZ[14]+Q²) ÷2÷N÷( Z[14]+Q)△↙10.V=0=>J=0:≠>J=(2V(Z[15]+V)-V²)÷2÷N÷( Z[15]+V)△↙11.Z[6]=Z[3]+I Z[13]: Z[9]=Z[12]-JZ[13] ↙12.T=Abs T-I-J:J=TN:Abs(P-O-J)>0.05=>"ERROR"▲Goto 1△↙13.M=Q:Prog "ZHD":Z[4]=X:Z[5]=Y:M=J:Porg "HYD":Z[7]=X:Z[8]=Y:M=V:Prog "YHD": Z[10]=X:Z[11]=Y↙14.Prog "ZXZS"↙15.Lbl 1:0:"":Pause 0ZXZS1.Rad:Norm:Fixm2.Lbl 2:{S}:S<G=>"RANGE OUT"▲Goto 5△↙3.S>L=>"RANGE OUT"▲Goto 5△↙4.S<H=>M=Z[3]:X=Z[1]+Rec(S-H,M):Y=Z[2]+J:Goto 3△↙5.S<O=>M=S-H:Prog "ZHD":Goto 3△↙6.S<P=>M=S-O:Prog "HYD":Goto 3△↙7.S<K=>M=S-P:Prog "YHD":Goto 3△↙8.M=Z[12]:X=Z[10]+Rec(S-K,M):Y=Z[11]+J↙9.Lbl 3:I"X"=Int (1000X+0.5)÷1000▲J"Y"=Int(1000Y+0.5)÷1000▲10.Lb1 4:I=0:{I}:I>0=>Goto 2△↙11.T=X+Rec(I,M+π÷2):U=Y+J:T"XB"=Int (1000T+0.5)÷1000▲U"YB"=Int(1000U+0.5)÷1000▲Goto 4↙12.Lbl 5:0:"":Pause 0ZHD1.Fixm:M<0.001=>T=0:U=0:M=Z[3]:Goto 6△↙2.I=Z[14]:X=N(I+Q):Y=Z[13]:T=M-(20I²+15IM+3M²)M^3÷120÷X²:T=T+((1008I+1680M)I^3+1080I²M²+(315I+35M)M^3)M^5÷120960÷X^4↙3.U=((70I+84M)I²+(35I+5M)M²)M^4÷1680÷X^3:U=(3I+M)M²÷6÷X-U:U=U+((3696I+7920M)I^4+(6930I+3080M)I²M²+(693I+63M)M^4)M^6÷2661120÷X^5:U=UY↙4.M=(2IM+M²)÷2÷X:I=Z[3]:M=I+MY↙5.Lbl 6:X=Z[1]+Tcos I-Usin I:Y=Z[2]+Tsin I+Ucos IHYD1.Fixm:M=M÷N:I=Z[6]:Y=Z[13]:T=Nsin M:U=(N-Ncos M)Y:M=I+MY2.X=Z[4]+Tcos I-Usin I:Y=Z[5]+Tsin I+Ucos IYHD1.Fixm:M<0.001=>T=0:U=0:M=Z[9]:Goto 7△↙2.I=Z[15] +V:X=NI:Y=Z[13]:T=M-(20I²-15IM+3M²)M^3÷120÷X²:T=T+((1008I-1680M)I^3+1080I²M²-(315I-35M)M^3)M^5÷120960÷X^4↙3.U=((70I-84M)I²+(35I-5M)M²)M^4÷1680÷X^3:U=(3I-M)M²÷6÷X-U:U=U+((3696I-7920M)I^4+(6930I-3080M)I²M²+(693I-63M)M^4)M^6÷2661120÷X^5:U=UY↙4.M=(2IM-M²)÷2÷X:I=Z[9]:M=I+MY↙5.Lbl 7:X=Z[7]+Tcos I-Usin I:Y=Z[8]+Tsin I+UCos I注: 1.由于本计算器程序容量为4500步,本程序只能计算单交点平曲线;2.当已知数据输入存在错误时,程序能够自动判断错误后退出;3.当输入的测设点里程超出范围时,计算自动终止;4.编制程序过程中已经考虑了零溢出问题。

4800公路中边桩高程计算程序

4800公路中边桩高程计算程序

4800公路中边桩高程计算程序4800公路中边桩高程计算程序fx-4800高等级公路中边桩标高程计算程序(适用超高方式为有分隔带绕左内侧旋转,无分隔绕线路中心旋转)随着高等级公路建设的不断发展,对路基施工高程控制要求不断提高,经常在现场要对路基中边桩高程进行测量,由于施工线路较长,高程数据较多,而且只提供设计桩号的高程,对非设计断面的横坡及高程计算相当复杂,因此利用fx-4800计算器的编程功能及扩展变量的储存功能,编制一个程序,可以预先输入整条线路的曲线要素,使用时,只要输入任意点桩号就可以计算中边桩高程。

程序由中桩高程计算主程序和横坡计算子程序组成,程序如下:1、中桩高程计算程序文件名(ZZGC)程序说明Lb1 0Fix 3(输入变坡点数) N=?(输入扩展变量位置数) V=?M=V(输入待求桩号) {K}Lb1 1K>Z[2+M]-Z[3N+3+M]=> (确定待求桩号在哪个竖曲线内)M=M+1:Goto 1(读取该竖曲线半径) R=Z[2N+2+M](读取该竖曲线切线长) T=Z[3N+2+M](读取该变坡点前坡率)I=Z[4N+2+M]÷100(读取该变坡点后坡率)L=Z[4N+3+M]÷100(计算待求桩号与该竖曲线起点距离)S=K-Z[1+M]+Z[3N+2+M]M=V=> (如果桩号在起点与第1竖曲线起点之间,转Lb1 5 )Goto 5⊿(计算坡率差) A=I-L(判断竖曲线凹凸)J=AbsA÷AS (如果距离在前半曲线内,计算改正值)Y=S^2÷2R :Goto 2 ⊿S<2T=> (如果距离在后半曲线内,计算改正值)Y=(2T-S)^2÷2R :Goto 3 ⊿Goto4Lb1 2H=Z[N+2+M]-I(T-S)- YJD"H" =D ◢Goto 6Lb1 3H= Z[N+2+M]+L(S-T)- YJD"H" =D ◢Goto 6Lb1 4(在直线内,计算高程) H=Z[N+2+M]+L(K-Z[1+M])D"H" =D ◢Goto 6Lb1 5I=Z[V+4N+3] ÷100H=Z[V+N+3]-I(Z[V+2]-K)D"H" =D ◢Lb1 6(输入边桩距离,右正,左负) {B}Prog "HP js" (转横坡计算子程序,应与横坡计算文件名相同)Fix 3B<0=> D=D-QAbsB÷100 :Goto 7 ⊿B>0=> D=D-PAbsB÷100 :Goto 8 ⊿Lb1 7D"ZBH" =D ◢(显示左边桩高程)Goto 0Lb1 8D"YBH" =D ◢(显示右边桩高程)Norm:1Goto 0中桩高程计算程序扩展变量设置表起点第1变坡点第2变坡点第3变坡点第n变坡点终点里程Z[V+1]Z[V+2]Z[V+3]Z[V+4]Z[V+n+1] Z[V+n+2]高程Z [V+n+3]Z[V+n+4]Z[V+n+5]Z[V+2n+2]R 竖曲线半径Z[V+2n+3] Z[V+2n+4] Z[V+2n+5] Z[V+3n+2] T(竖曲线切线长)Z[V+3n+3] Z[V+3n+4] Z[V+3n+5] Z[V+4n+2]I (坡率)Z[V+4n+3] Z[V+4n+4] Z[V+4n+5] Z[V+5n+2] Z[V+5n+3]2、横坡计算程序文件名(HP js)程序说明Lb1 0(输入平曲线交点数) N=?(输入标准横坡值) I=?(输入LC值) T=?(输入扩展变量位置) V=?M=V(输入桩号,如作为子程序使用则无此行) {K}Lb1 1K>Z[2+M] => M=M+1 :Goto 1 ⊿(读取平曲线全长) L=Z[N+2+M](读取LS1) E=Z[2N+2+M](读取LS2) F=Z[3N+2+M](读取标准超高值) H=Z[4N+2+M](读取线路偏向,右=1,左=-1) A=Z[5N+2+M]S=K-Z[M+1]M=V=> P=I :Q=I :Goto 7 ⊿E=0=> (无LS则不设超高) P=I :Q=I :Goto 7 ⊿S≤T=> (如果该点在第1 Lc内,转Lb2) S=S :Goto 2 ⊿S≤E=> (如果该点在 Lc-Ls1终点,转Lb3) S=S-T :Goto 3 ⊿S≤L-F=> (如果该点在圆曲线内,转Lb4)Goto 4 ⊿S≤L-T=> (如果该点在Ls2起点-Lc,转Lb 5)S=S-(L-F) :Goto 5 ⊿S≤L=> (如果该点在第2Lc内,转Lb6) S=T-(L-S) :Goto 6 ⊿(在直线) P=I :Q=I : Goto 7Lb1 2A=1=> (右偏) P=I :Q=I-2IS÷T :Goto 7 ⊿A=-1=> (左偏) P= I-2IS÷T :Q=I :Goto 7 ⊿Lb1 3A=1=> P=I+S(H-I) ÷(E-T) :Q=-P :Goto 7 ⊿A=-1=> P=-I- S(H-I) ÷(E-T) :Q=-P :Goto 7 ⊿Lb1 4A=1=> P=H :Q=-H :Goto 7 ⊿A=-1=> P=-H :Q=H :Goto 7 ⊿Lb1 5A=1=> P=H-S(H-I) ÷(F-T):Q=-P :Goto 7 ⊿A=-1=> P=-H+S(H-I) ÷(F-T):Q=-P :Goto 7 ⊿Lb1 6A=1=> P=I:Q=-I+2IS÷T :Goto 7 ⊿A=-1=> P=-I+2IS÷T :Q=I :Goto 7 ⊿Lb1 7Fix 3P"YI"=P ◢(显示右横坡,如不需显示则无“◢”)Q"ZI"=Q ◢(显示左横坡,如不需显示则无“◢”)Norm :1(如作为子程序使用则无此行) Goto 0横坡计算程序扩展变量设置表起点第1交点第2交点第3交点第Z交点终点线路起点、曲线起点、线路终点桩号Z[V+1] Z[V+2] Z[V+3] Z[V+4] Z[V+Z+1] Z[V+Z+2]L (平曲线全长) Z[V+Z+3] Z[V+Z+4] Z[V+Z+5] Z[V+2Z+2]LS1 Z[V+2Z+3] Z[V+2Z+4] Z[V+2Z+5] Z[V+3Z+2]LS2 Z[V+3Z+3] Z[V+3Z+4] Z[V+3Z+5] Z[V+4Z+2]i (标准超高值) Z[V+4Z+3] Z[V+4Z+4] Z[V+4Z+5] Z[V+5Z+2]偏转方向(右偏=1,左偏=-1) Z[V+5Z+3] Z[V+5Z+4] Z[V+5Z+5] Z[V+6Z+2]3、使用说明把上述程序输入到fx-4800内,然后扩展足够的变量个数,即至少为5N+3+6Z+2个,N为变坡点个数,Z 为平曲线交点数。

卡西欧Casiofx-4800P道路中边桩坐标计算程序

卡西欧Casiofx-4800P道路中边桩坐标计算程序

卡西欧Casiofx-4800P道路中边桩坐标计算程序程序清单如下:Casio fx-4800P道路中边桩坐标计算程序程序目的:依平曲线要素计算直线、圆曲线、缓和曲线的任意中桩、左、右桩坐标。

程序说明:K0:起始桩号X0:起始X坐标Y0:起始Y坐标ALF:起始方位角R:半径LS:缓和曲线长N:曲线左转N=1,右转N=2K:待求桩号LL、LR:左、右桩距离Q:左、右桩与中线斜交角求得XZ、YZ、XL、YL、XR、YR分别为中桩、左、右桩坐标。

一、直线段文件名:ZX (COMP)程式:L”K0”:O”X0”:P”Y0”:W”ALF”:Lbl 0:{K}:X”XZ”=O+(K-L)cosW◢Y”YZ”=P+(K-L)sinW◢{B}:S”XL”=X-B”LL”cos(W+Q) ◢T”YL”=Y-Bsin(W+Q) ◢{C}:U”XR”=X+C”LR”cos(W+Q) ◢V”YR”=Y+Csin(W+Q) ◢Goto 0注:在程序执行过程中,赋给的要素变数的值被固定不变,可对变数(K、LL、LR)赋予不同值,迅速求得所需坐标。

二、圆曲线段文件名:YQX (COMP)程式:L”K0”:O”X0”:P”Y0”:W”ALF”: Lbl 1:{K}:J=(-1)^N (K-L)÷R×180÷π:D=2Rsin((-1)^N J÷2):X”XZ”=O+Dcos(W+J÷2) ◢Y”YZ”=P+Dsin(W+J÷2) ◢{B}:S”XL”=X-B”LL”cos(W+J+Q) ◢T”YL”=Y-Bsin(W+J+Q) ◢{C}:U”XR”=X+C”LR”cos(W+J+Q) ◢V”YR”=Y+Csin(W+J+Q) ◢Goto 1注:若没有直接HY点方位角,则ALFHY=ALFZH±Ls/2/R×180/π,(左转-,右转+)。

三、缓和曲线文件名:HHQX (COMP)程式:L”K0”:O”X0”:P”Y0”:W”ALF”: M”LS”:Lbl 3:{K}:I=(-1)^N×(K-L)^2÷M÷R÷6×180÷π:D=(K-L)-(K-L)^5÷90÷(RM)^2:X”XZ”=O+Dcos(W+I)◢Y”YZ”=P+Dsin(W+I) ◢{B}:S”XL”=X-B”LL”cos(W+3I+Q) ◢T”YL”=Y-Bsin(W+3I+Q) ◢{C}:U”XR”=X+C”LR”cos(W+3I+Q) ◢V”YR”=Y+Csin(W+3I+Q) ◢Goto 3注:1、坐标计算方法是根据偏角法原理;2、缓和曲线(ZH~HY或YH~HZ)以ZH(或HZ)为起始点;3、平曲线左转(ZH~HY段N=1,YH~HZ段N=2),曲线右转(ZH~HY段N=2,YH~HZ段N=1)。

卡西欧计算器坐标的正反算

卡西欧计算器坐标的正反算

可以算任意斜交涵洞轴线的坐标,增加T为斜交角度,规定T为涵轴右侧方向与“线路前进方向切线”之间的夹角,当涵轴与线路正交时,T=90,其他操作与原程序一样;1. 正算子程序(SUB1) [color=Red]A=0.26:B=0.74:K=0.02:L=0.82:F=1-L:M=1-K:X=U+W(Acos(G+57.2958QKW(1/P+KWD))+Bcos(G+57.2958QLW(1/P+LW D))+Bcos(G+57.2958QFW(1/P+FWD))+Acos(G+57.2958QMW(1/P+MWD))):Y=V+W(Asin(G+57.2958QKW(1/ P+KWD))+Bsin(G+57.2958QLW(1/P+LWD))+Bsin(G+57.2958QFW(1/P+FWD))+Asin(G+57.2958QMW (1/P+MWD))):F=G+57.2958QW(1/P+WD)+90:X=X+Zcos(F-90+T):Y=Y+Zsin(F-90+T)2. 反算子程序(SUB2)W=Abs((Y-V)cos(G-90)-(X-U)sin(G-90)):Z=0:Lbl 0:Prog "SUB1":L=(G-90)+5 7.2958QW(1/P+WD):Z=(J-Y)cosL-(I-X)sinL:AbsZ<1E-6=>Goto1:≠>W=W+Z:Goto 0Δ←┘Lbl 1:Z=0:Prog "SUB1":Z=(J-Y)÷sinF二.增设数据库程序(SJK主程序)Lb1 4:"1.SZ => XY":"2.XY => SZ":{NS}:S∠下一线元起点里程=>O =本线元起点里程:U=本线元起点X:V=本线元起点Y:G=本线元起算方位角:H =本线元长度:P=起点曲率半径:R=终点曲率半径:Q=0或1、-1:Prog“TYQXJS”:Goto0Δ←┘(第一线元数据要素)S∠下一线元起点里程=>O=本线元起点里程:U=本线元起点X:V=本线元起点Y:G=本线元起算方位角:H=本线元长度:P=起点曲率半径:R=终点曲率半径:Q=0或1、-1:Goto0Δ←┘(第二线元数据要素)S∠下一线元起点里程=>O=本线元起点里程:U=本线元起点X:V=本线元起点Y:G=本线元起算方位角:H=本线元长度:P=起点曲率半径:R=终点曲率半径:Q=0或1、-1:Goto0Δ←┘(第三线元数据要素)。

卡西欧4800坐标正反算通用程序(终极篇)

卡西欧4800坐标正反算通用程序(终极篇)

卡西欧4800坐标正反算通用程序(终极篇)1. 坐标正算主程序(命名为ZBZS)第1行:Lbl 0:{W,T,B}:W”K=”:T”LEN=”:B第2行:Prog “A”第3行:X=D+Tcos(F+B)◢第4行:Y=E+Tsin(F+B)◢第5行:F=F◢第6行:Goto 0K——计算点的里程LEN——计算点到中桩的距离(左负右正)B——取前右夹角为正2. 坐标反算桩号和偏距主程序(命名为ZBFS)第1行:{U,V,K}:U”X1”:V”Y1”: W”K1”第2行:I=0:J=0第3行:Lbl 0:Prog “A”第4行:Pol(U-D,V-E):S=Icos(F-J):W=W+S第5行:Abs(S)>0.0001=>Goto 0△第6行:T=Isin(J-F)第7行:K=W◢第8行:T”LEN”=T◢X1——取样点的X坐标Y1——取样点的Y坐标K1——输入时为计算起始点(在线路内即可),输出时为反算点的桩号T——偏距(左负右正)3. 计算坐标子程序(命名为XYF)为了简洁,本程序由数据库直接调用,上述中的正反算主程序不直接调用此程序第1行:S=W-A:I=(Q-P)÷L第2行:D=D+∫(cos(F+X(2P+XI)×90÷π),0,S,4)第3行:E=E+∫(sin(F+X(2P+XI)×90÷π),0,S,4)第4行:F=F+S(2P+SI)×90÷π4. 数据库(命名为A)第1行:W≤175.191=> GoTo 2△第2行:A=175.191:D=428513.730:E=557954.037:F=92°26′40″:P=0:Q=1/240:L=70.417: W≤A+L =>GoTo 1△第3行:A=245.607: D=428507.298:E=558024.092:F=100°50′59.4″:P=1/240:Q=1/240: L=72.915: W≤A+L =>Goto 1△第4行:A=318.522: D=428482.988:E=558092.538:F=118°15′25.2″:P=1/240:Q=0:L=55.104: W≤A+L =>Goto 1△第5行:A=373.627:D=428453.283:E=558138.912:F=124°50′4.5″0:P=0:Q=-1/180:L=67.222:W≤A+L=>Goto 1△Goto 2第6行:Lbl 1:Prog “XYF”: Goto 3第7行:Lbl 2:D=0:E=0:F=0第8行:Lbl 3A——曲线段起点的里程D——曲线段起点的x坐标E——曲线段起点的y坐标F——曲线段起点的坐标方位角P——曲线段起点的曲率(左负右正)Q——曲线段终点的曲率(左负右正)L——曲线段长度(尽量使用长度,为计算断链方便)说明:(1)正算主程序可以计算一般边桩的坐标,如要计算类似涵洞端墙的坐标需增加两个变量,具体方法参考本程序集中的第1篇辛普生公式的坐标计算通用程序(2)程序规定,左偏曲线曲率(半径倒数)输入负值,右偏曲线曲率输入正值,直线上点曲率输入0。

任意里程中边桩坐标进行正反算(改版1).pdf

任意里程中边桩坐标进行正反算(改版1).pdf

任意里程中边桩坐标进行正反算一、程序功能本程序可以根据曲线段——直线、圆曲线、缓和曲线(完整或非完整型)的线元要素(起点坐标、起点里程、止点里程、起点切线方位角、起点曲率、止点曲率、道路中线的前进方向)及里程边距夹角或坐标,对该曲线段范围内(如不在该范围则自动转入下一线元)任意里程中边桩坐标进行正反算。

二、源程序1. 主程序(FQXZB) 453字节Lbl0:N"1.LC=>XY,XY=>LC":S:“LC”:prog“QXYS”:U"X0":V"Y0":O"LC1":H"LC2":G"Fi":P"R1":R"R2":Q"ZX[Z:0,L:-1,R:+1]":Z[1]=(1/R-1/P)/(2Abs(H-O)):Z[2]=180/π:N=1=>Goto 1:≠>Goto 3⊿←┘Lbl 1:{ABK}:S"LC":A"B-L":B“B-R””K"KJ[Q(+),H(-)":W"JA":D"PC[L(-1),R (+1)]":S≥H=>S=H ⊿ Z[3]=Abs(S-O):Prog"SUB1":“X=”:X◢“Y=”:Y◢“i=”:F=G+Q Z[2]Z[3](1/P+Z[1]Z [3]):F≥0=>F→DM S◢Z: ≠>F=F+360:F→DMS◢Prog"DXD":Goto 2←┘≠>F=F+360: F→DMS⊿Prog"DXD":Goto 2Lbl 2:"X[L]=":I=X-Acos(F+W)+KcosF+Dcos(F+90) ◢"Y[L]=":J=Y-Asin(F+W)+KsinF+Dsin(F+90) ◢Pol(I-E,J-L):J<0=>J=J+360 ⊿ "FWJ[L]=":J→DMS ◢"S[L]=":I ◢"X[Z]=":I=X+KcosF+Dcos(F+90) ◢"Y[Z]=":I=X+KsinF+Dcos(F+90) ◢Pol(I-E,J-L):J<0=>J=J+360 ⊿ "FWJ[Z]=":J→DMS ◢"S[Z]=":I ◢"X[R]=":I=X+Bcos(F+W)+KcosF+Dcos(F+90) ◢"Y[R]=":J=Y+Bsin(F+W)+KsinF+Dsin(F+90) ◢Pol(I-E,J-L):J<0=>J=J+360 ⊿ "FWJ[R]=":J→DMS ◢"S[R]=":I ◢S=H ≠> Goto 4←┘Lbl 3:{XY}:XY:I=X:J=Y:Prog"SUB2":"LC=":S=O+Z[3]◢"B[L(-1),R(+1)]= ":Z◢Goto 3Lbl 4:U=X:V=Y:O=H:G=G+180Q(Z[1]Z[3] +1/P)Z[3]/π:P=RGoto 02. 子程序(SUB1) 414字节Z[4]=0.1739274226:Z[5]=0.3260725774:Z[6]=0.0694318442:Z[7]=0.3300094782:F=1-Z[7]:M=1-Z[6]:Z[8]=G+QZ[2]MZ[3](1/P+MZ[1]Z[3]):X=U+Z[3](Z[4]cos(G+QZ[2]Z[3]Z[6](1/P+Z[1]Z[3]Z[6]))+Z[5]cos(G+QZ[2]Z[3]Z[7](1/P+Z[1]Z[3]Z[7]))+Z[5]cos(G+QZ[2]FZ[3](1/P+FZ[1]Z[3]))+Z[4]cosZ[8]):Y=V+Z[3](Z[4]sin(G+QZ[2]Z[3]Z[6](1/P+Z[1]Z[3]Z[6]))+Z[5]sin(G+QZ[2]Z[3]Z[7](1/P+Z[1]Z[3]Z[7]))+Z[5]sin(G+QZ[2]FZ[3](1/P+FZ[1]Z[3]))+Z[4]sin Z[8]) 3. 子程序(SUB2) 180字节T=G-90:Z[3]=Abs((Y-V)cosT-(X-U)sinT):Z=0:Lbl 0:Prog"SUB3":Z[7]=T+QZ[2]Z[3](1/P+Z[1]Z[3]):Z=(J-Y)cosZ[7]-(I-X)sinZ[7]:AbsZ<1E-6=>Goto1:≠>Z[3]=Z[3]+Z:Goto 0⊿←┘Lbl 1:Z=0:Prog"SUB3":Z=(J-Y)÷sinF4. 子程序(SUB3) 55字节Prog "SUB1":F=G+QZ[2]Z[3](1/P+Z[1]Z[3])+90:X=X+ZcosF:Y=Y+ZsinF5. 子程序(QXYS)S≥0=>GOTO 0←┘Lbl 0:S≤313.137=>U=555357.153:V=4797782.079:O=0:H=313.137:G =106°6′35.8″:P= 10^45:R=10^45:Q=0:Got o 1:⊿ S<443.137=>U=555270.263:V=480082.919:O=313.137:H=443.137:G=106°5′35.8″: P=10^45:R=500:Q=-1: Goto 1:⊿Goto 1◢Lbl 16. 子程序(DXD)C"DXD":C=1=>"X[ZD-5]=":E=491893.218 ◢"Y[ZD-5]=":L=410802.542 ◢"H[ZD-5]=":11.239 ◢⊿C=2=>"X[ZD-9]=":E=491883.398 ◢"Y[ZD-9]=":L=410730.632 ◢"H[ZD-5]=":10.896 ◢⊿C=3=>"X[ZX-5]=":E=492673.735 ◢"Y[ZX-5]=":L=410471.185 ◢"H[ZX-5]=":9.574 ◢⊿。

4850和4800曲线坐标正算程序

4850和4800曲线坐标正算程序

★★★缓和曲线、圆曲线、直线段坐标计算程序★★★一:程序适用于计算器CASVO fx-4800P和CASVO fx-4850。

本程序可计算与线路中心成任意夹角的缓和曲线、圆曲线、直线段中、边桩坐标及切线方位角。

二:程序(在CASVO fx-4800P中输入,所有“:“后面都没有空格。

)1 A:R:C“LS”:D“JD”2 P=C∧2/24/R-C∧4/2688/R∧33 Q=C/2-C∧3/240/R∧24 B=90C/兀/R5 T=(R+P)tan(AbsA/2)+Q◢若在“4850”中输入则改为“T=”:T=(R+P)tan(AbsA/2)+Q◢6 W=(R+P)/cos(A/2)-R◢若在“4850”中输入则改为“W=”:W=(R+P)/cos(A/2)-R◢7 L=((AbsA)-2B)兀R/180+2C◢若在“4850”中输入则改为“L=”:L=((AbsA)-2B)兀R/180+2C◢8 G=D-T◢若在“4850”中输入则改为“G=”:G=D-T◢9 H=G+C◢若在“4850”中输入则改为“H=”:H=G+C◢10 I=G+L/2◢若在“4850”中输入则改为“I=”:I=G+L/2◢11 K=G+L-C◢若在“4850”中输入则改为“K=”:K=G+L-C◢12 M=G+L◢若在“4850”中输入则改为“M”:M=G+L◢13 N:E:F:J14 A<0=>S=-1:≠=>S=1⊿15 U=F+A/2+90S16 V=W+R17 B=N+VcosU18 O=E+VsinU19 Lbl 120 {Z}21 Z≤G=>L=T+G-Z22 V=F+18023 U=F24 Goto 2⊿25 Z≤H=>L=Z-G26 V=L-L∧5/(90R∧2C∧2)27 L=30L∧2S/(兀RC)28 P=F+18029 Q=F+L30 U“FW”=F+3L◢若在“4850”中输入则改为“FW=”:U=F+3L◢31 Goto 4⊿32 Z≤K=>L=F+A/2+90S+180+180(Z-I)S/R/兀33 U“FW”=L+90S◢若在“4850”中输入则改为“FW=”:U= L+90S◢34 Goto 5⊿35 Z≤M=>L=M-Z36 V=L-L∧5/(90R∧2C∧2)37 L=30SL∧2/(兀RC)38 P=F+A39 Q=F+A+180-L40 U=F-3L+A41 Goto4⊿42 Z>M=>L=Z-M+T43 U=F+A44 V=U45 Goto 246 Lbl 247 X=N+LcosV◢48 Y=E+LsinV◢49 Goto 6⊿50 Lbl 351 {W}:若在“4850”中输入则改为{W}:{O}52 P“XL”=X+Wcos(U-90) ◢若在“4850”中输入时不改变,计算结果不显示XL=53 Q“YL”=Y+Wsin(U-90) ◢若在“4850”中输入则改为“YL=”:Q=Y+Wsin(U-O) ◢54 P“XR”=X+Wcos(U+90) ◢若在“4850”中输入则改为“XR=”:P=X+Wcos(U+180-O) ◢55 Q“YR”=Y+Wsin (U+90)◢若在“4850”中输入则改为“YR=”:Q=Y+Wsin (U+180-O)◢56 Goto 157 Lbl 458 X=N+TcosP+VcosQ◢若在“4850”中输入则改为”X=”:X=N+TcosP+VcosQ◢59 Y=E+TsinP+VsinQ◢若在“4850”中输入则改为”Y=”:Y=E+TsinP+VsinQ◢60 Goto 661 Lbl 562 X=B+R cosL◢63 Y=O+RsinL◢64 Goto 665 Lbl 666 J=1=> Goto 3⊿67 Goto 1~~完~~直线正算程序(放样程序)。

任意曲线坐标放样正反算程序(4800,4850,5800均可以用)

任意曲线坐标放样正反算程序(4800,4850,5800均可以用)

任意曲线坐标放样正反算程序(fx-4800p)正算ZSLbl 0↙{K,L,Q,S}:K:L:Q:Prog“FXL”:Prog“SUB”↙“X=”:X=X:Pause0:Y=Y◢K=S+K↙Goto0↙反算FSLbl 0:{PT}:P“X0”:T“Y0”↙Lbl 1:{K}:L=0:Q=0:Prog“FXL”: Prog“SUB”↙U=I-90↙V=(T-Y)CosU-(P-X)SinU↙AbsV≥0.001=>K=K+V:Goto1:≠>“K0=”:K=K:Pause0:W“L0”=(T-Y)CosI-(P-X)SinI◢Goto0↙子程序SUBNorm↙Deg↙U=(E-D)÷Abs(G-F):V=Abs(K-F):W=UV↙J=C+90V(W+2D)÷π:J<0=>J=J+360⊿J≥360=>J=J-360⊿↙M=C+45V(W÷4+2D)÷(2π):N=C+135V(3W÷4+2D)÷(2π):O=C+45V(W÷2+2D)÷π↙I=J+Q↙Fix3↙X=A+V÷12×(CosC+4(CosM+CosN)+2CosO+CosJ)+L CosI↙Y=B+V÷12×(SinC+4(SinM+SinN)+2SinO+SinJ)+L SinI↙数据库FXLK≥0=>K≤1211.753=>A=9764.547:B=3344.148:C=142,6,26,:D=0:E=0:F=0:G=1211.753⊿⊿↙K≥1211.753=>K≤1406.455=>A=8808.279:B=4088.39:C=142,6,26,:D=1÷700:E=1÷700:F=1211.753:G=1406.455⊿⊿↙使用说明:K-里程桩号; A,B-每段线元的起点X,Y坐标; C-每段线元的起点的切线方位角; F-每段线元的起点桩号;G-每段线元的终点桩号;D-每段线元的起点半径曲率;E-每段线元的终点半径曲率; (左转取-1÷半径曲率,右转取1÷半径曲率,直线为下一个桩号(例: 赋值20确认,即上个桩号加20)D,E取值说明:当线元为直线段,不论其起,止与何线元相接, D,E都取0.当线元为圆曲线,不论其起,止与何线元相接, D,E都取(右偏)1/(左偏)-1÷该圆曲线的半径.当线元为缓和段, 起,止与直线相接, D,E都取0. 与圆曲线相接, D,E都取(右偏)1/(左偏)-1÷该圆曲线的半径. 与缓和段相接, D,E都取0.任意点的切线方位角C说明:编数据库时,若两曲线相接,例:先编ZH至HY段,运行算出HY点的切线方位角,(即求HY点的坐标,然后终止程序调出C值),然后再以计算出的C编HY至YH段.依此类推.反算桩号时需多次确认所输入的X,Y坐标,程序运算至桩号误差小于允许值时,会同时显示结果:K0-桩号,L0-距离.坐标反算程序:ZBFSC“X1”:D“Y1”:E“X2”:F“Y2”:Fixm:Pol(E-C,F-D:I“S=”◢J≤0=>J=J+360⊿J“J=”↙坐标正算程序ZBZSC“X1”:D“Y1”:L:O“J”:Fixm:X=C+Rec(L,O◢Y=D+J↙竖曲线SQXJ“BPD”:B“BPH”:C“I1”:D“I2”:RW=D-C◢A=W÷AbsW:T=Abs(0.5RW)◢L=2T↙E=T2÷2R◢X“QD”=J-T◢Y“ZD”=J+T◢Lbl1:P“K”:H=B+C(P-J)+A(P-J+T)2÷2R◢W“CONT”:W=1=>Goto1:≠>Goto2:⊿↙Lbl2↙说明:BPD-变坡点桩号BPH-变坡点高程I1-前一个坡度(上“+”,下“-”)I2-后一个坡度(上“+”,下“-”)R-半径E-外距QD-该竖曲线起点桩号ZD-该竖曲线终点桩号K-要求的桩号H-要求桩号的高程任意曲线坐标放样正反算程序(fx-4850p)正算ZSLbl 0↙{K,L,Q,S}:K:L:Q:Prog“FXL”:Prog“SUB”↙“X=”:X=X:Pause0:“Y=”:Y=Y◢K=S+K↙Goto0↙反算FSLbl 0:{PT}:P“X0”:T“Y0”↙Lbl 1:{K}:L=0:Q=0:Prog“FXL”: Prog“SUB”↙U=I-90↙V=(T-Y)CosU-(P-X)SinU↙AbsV≥0.001=>“K0=”:K=K+V:Goto1:≠>“K0=”:K=K:Pause0:W=(T-Y)CosI-(P-X)SinI ↙“L0=”:W=W◢Goto0↙子程序SUBNorm↙Deg↙U=(E-D)÷Abs(G-F):V=Abs(K-F):W=UV↙J=C+90V(W+2D)÷π:J<0=>J=J+360⊿J≥360=>J=J-360⊿↙M=C+45V(W÷4+2D)÷(2π):N=C+135V(3W÷4+2D)÷(2π):O=C+45V(W÷2+2D)÷π↙I=J+Q↙Fix3↙X=A+V÷12×(CosC+4(CosM+CosN)+2CosO+CosJ)+L CosI↙Y=B+V÷12×(SinC+4(SinM+SinN)+2SinO+SinJ)+L SinI↙数据库FXLK≥0=>K≤1211.753=>A=9764.547:B=3344.148:C=142,6,26,:D=0:E=0:F=0:G=1211.753⊿⊿↙K≥1211.753=>K≤1406.455=>A=8808.279:B=4088.39:C=142,6,26,:D=1÷700:E=1÷700:F=1211.753:G=1406.455⊿⊿↙使用说明:K-里程桩号; A,B-每段线元的起点X,Y坐标; C-每段线元的起点的切线方位角;D-每段线元的起点半径曲率;E-每段线元的终点半径曲率; (左转取-1÷半径曲率,右转取1÷半径曲率,直线为0. );L-距中桩距离(左负,右正,中桩为0); Q-与线路前进方向的右交角(正交为90); S-赋值加上一个桩号放下一个桩号(例: 赋值20确认,即上个桩号加20)D,E取值说明:当线元为直线段,不论其起,止与何线元相接, D,E都取0.当线元为圆曲线,不论其起,止与何线元相接, D,E都取(右偏)1/(左偏)-1÷该圆曲线的半径.当线元为缓和段, 起,止与直线相接, D,E都取0. 与圆曲线相接, D,E都取(右偏)1/(左偏)-1÷该圆曲线的半径. 与缓和段相接, D,E都取0.任意点的切线方位角C说明:编数据库时,若两曲线相接,例:先编ZH至HY段,运行算出HY点的切线方位角,(即求HY点的坐标,然后终止程序调出C值),然后再以计算出的C编HY至YH段.依此类推.反算桩号时需多次确认所输入的X,Y坐标,程序运算至桩号误差小于允许值时,会同时显示结果:K0-桩号,L0-距离.任意曲线坐标放样正反算程序(fx-4800p)任意曲线坐标放样正反算程序(fx-4850p)。

CASIO fx-4800P程序编制(里程中边桩计算坐标及反算)

CASIO fx-4800P程序编制(里程中边桩计算坐标及反算)

一、源程序(SZ-XY-SZ)"1.SZ => XY":"2. XY => SZ":NU"X0"V"Y0"O"S0"G"F0"Q:Q=0=>R=1E-45:≠>R△J=0:M=AbsQ:K=1-M:N=1=>Goto 1:≠>Goto 2△←┙Lbl 1:{SZ}:SZ:L=S-O:B=90QL÷π÷R:F=G+B:E=F+B+90:C=LK+2MRsinQB:X"XS" = U+Rec(C,F)+ZcosE◢Y"YS"=V+J+ZsinE◢Goto 1←┙Lbl 2:W=G+90Q:E=U+Rec(R,W):F=V+J←┙Lbl 3:{XY}:XY:D=Pol(X-E,Y-F):T=J:J<0=>T=J+360△B=T-W-180M:P=Abs B:S"S"=O+ DKcosP+ MπRP÷180◢Z"Z"=DKsinB+MQ(R-D)◢Goto 3←┙二、使用说明1.由里程、中边桩计算坐标启动程序后按以下提示输入数据:N ?1 (N=1,由里程中边桩计算坐标;N≠1,由坐标反算里程及中边桩)X0 ?142.353 (直线或圆曲线起点的X坐标)Y0 ?368.166 (直线或圆曲线起点的Y坐标)S0 ?155.252 (直线或圆曲线起点的里程)F0 ?60°54′03″(直线或圆曲线起点的切线方位角)Q ?-1 (当线元为直线时Q=0;当线元为圆曲线且左偏时Q=-1;当线元为圆曲线且右偏时Q=1)R ?100 (圆曲线的半径)S ?194.016 (中线里程)Z ?-5.251 (中线左侧5.251m的边桩;在中线上Z=0,在左侧<0,在右侧Z>0)显示计算结果XS=172.7467767YS=395.23168072.由坐标反算里程、中边桩启动程序后按以下提示输入数据:N ?2 (N=1,由里程中边桩计算坐标;N≠1,由坐标反算里程及中边桩)X0 ?142.353 (直线或圆曲线起点的X坐标)Y0 ?368.166 (直线或圆曲线起点的Y坐标)S0 ?155.252 (直线或圆曲线起点的里程)F0 ?60°54′03″(直线或圆曲线起点的切线方位角)Q ?-1 (当线元为直线时Q=0;当线元为圆曲线且左偏时Q=-1;当线元为圆曲线且右偏时Q=1)R ?100 (圆曲线的半径)X ?172.7467767 (待求里程及中边桩的点的X坐标)Y ?395.2316807 (待求里程及中边桩的点的Y坐标)显示计算结果S=194.016Z=-5.251三、注意事项1.本程序主要是针对市政道路工程中的直线和圆曲线而编制的,未考虑缓和曲线等曲线的计算;2.程序中“R=1E-45”的意思为10的-45次方,输入程序时切莫输错。

4800P公路中桩坐标计算(按线路前进方向执行)

4800P公路中桩坐标计算(按线路前进方向执行)

公路中桩坐标计算(按线路前进方向执行)主程序MAIN----------CDA”X[0]“:B“Y[0]”:F“F[0]”:E“K[0]”⍓P=1=>Prog“ZX”:≠>P=2=> Prog“YQX”: ≠>P=3=> Prog“HHQX1”: ≠>P=4=> Prog“HHQX2”X[0]---起点坐标XY[0]---起点坐标YF[0]---起点方位角K[0]---起点桩号P-----线形判断(P=1直线段、P=2圆曲线段、P=3第一段缓和曲线、P=4第二段缓和曲线)子程序1ZX-------------CDLbI 0:{K}:X=A+Rec((K-E),F) ⍓Y=B+J⍓Goto 0K---计算点桩号E---起算点桩号子程序2YQX-------------CDLb1 1:{K}:Q=180(K-E)÷(ЛR):W=0=>X=A+Rec((2Rsin(Q÷2)),(F-Q÷2))⍓Y=B+J⍓H=F-(K-E)×180÷(ЛR)⍓Goto1⍓≠>W=1=>X=A+Rec((2Rsin(Q÷2)),(F+Q÷2))⍓Y=B+J⍓H=F+(K-E)×180÷(ЛR)⍓Goto1W---判断曲线偏向(W=0偏右、W=1偏左)H---计算点该点的切线方位角子程序3HHQX1------------CDLbl2{K}:S=K-E-(K-E)^5/(40R^2L^2)+(K-E)^9/(3456(R^4L^4):T=(K-E) ^3/(6RL)-(K-E)^7/(336(R^3L^3)+(K-E)^11/(42240R^5L^5)G=180(K-E)^2/(6ЛRL)W=0=>X=A+ScosF+TsinF⍓Y=B+SsinF-TcosF⍓H=F-3G⍓Goto2≠>W=1=>X=A+ScosF-TsinF⍓Y=B+SsinF+TcosF⍓H=F+3G⍓Goto2子程序4HHQX2------------CDLbl3:{K}:S=(K-E)-(K-E)^3/(6R^2)+(K-E)^4/(8R^2L)+(L^2-3R^2)(K-E)^5/( 120R^4L^2)-(K-E)^6/(72R^4L)+(K-E)^7/(112R^4L^2)-(K-E)^8/(384R^ 4L^3)+(K-E)^9/(3456R^4L^4)T=(K-E)^2/(2R)-(K-E)^3/(6RL)-(K-E)^4/(24R^3)+(K-E)^5/(20R^3L)+( L^2-15R^2)(K-E)^6/(720R^5L^2)+(R^2-L^2)(K-E)^7/(336R^5L^3)+(K-E)^8/(384R^5L^2)-(K-E)^9/(864R^5L^3)+(K-E)^10/(3840R^5L^4)-(K-E)^11/(42240R^5L^5)G=180(K-E)^2/(6ЛRL)W=0=>X=A+ScosF+TsinF⍓Y=B+SsinF+TcosF⍓H=F-3G⍓Goto3≠>W=1=>X=A+ScosF-TsinF⍓Y=B+SsinF+TcosF⍓H=F+3G⍓Goto3符号同上本程序适应自由边桩,边桩程序由各人习惯而定,在子程序后加上边桩程序即可。

精简4800坐标正反算程序多线贯通可手动输

精简4800坐标正反算程序多线贯通可手动输

精简4800坐标正反算程序多线贯通可手动输(线元法)测量 2008-08-14 20:50 阅读27 评论0字号:大中小功能简介及特点:1、选用高斯-勒让德公式作计算内核,保证精度,模块化设计,便于扩充功能。

2、线元数据可自动从数据库调用,也可手工输入。

3、可管理多条线路,如里程不在线路或线元范围,将警告里程偏大、偏小。

4、边桩计算设计为导线式递推方式,可用于由一个中桩推出结构物所有角点坐标。

5、反算实现了智能化操作,只需输入线路号(或手工输线元资料)、坐标,不需近似里程,即可自动从起点向后开始试算出里程、位置,如对算出里程、位置表示怀疑,还可以让计算器从终点起再向前试算下一个可能的位置(匝道、回头曲线同一坐标可能会有一个以上结果)。

第三次及以后试算才要求输入近似里程。

6、程序代码规范简洁,便于阅读、理解。

完整程序清单:ZFS %正反算主程序Lbl 1:B=.1739274226:C=.5-B:U"0 ZS 1 FS"=0=>Prog"ZS":≠>U=1=>Prog"FS":≠>Goto 1ZS %正算子程序{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:I=Rec(I,J:K=K+I:AbsI<1m=>Prog"WZ":≠>Goto2ΔM=0:{M}:M"0 NEXT"=0=>U=U+1:Goto 2:≠>U=1ZZ %高斯法中桩子程序(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+BsinHWY %外移点计算子程序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 1WZ %位置显示子程序"KJ":K:Pause 1:J◢ZB %坐标显示子程序"XY":S:Pause 1:T◢YC %异常处理子程序U=1=>K=L:U=2ΔU=3=>K=M:U=4ΔU=5=>{K}:U=4ΔK<L=>"<<!":Z=1ΔK>M=>">>!":Z=1DL %断链处理子程序"DL":K=L:I>0=>K=L+Q-------------------------以上为程序运算部分,以下为数据库部分-----------------XL %线路数据库选择子程序Lbl 1:Z=0:N"0 SD"=0=>Prog"0"△N=1=>Prog"1"△N=2=>Prog"2"△有几条线路仿上行格式输几行Z=1=>{NLXYOPQRK}:Goto 10 %手工输入子程序L"K0"XYAQ"LS"P"R0"R"RN":M=L+Q:Prog"YC"1 %线路一数据库子程序①Lbl B:L=线路起点里程:M=线路终点里程:Prog"YC":Z=1=>Got o EΔ②Q=线元长:K≤L+Q=>X=起点X坐标:Y=起点Y坐标:A=起点方位角:P=起点半径:R=终点半径:GotoEΔL=L+Q:③......④Q=短链长:K<L+Q=>Prog "DL":Goto BΔL=L+Q:⑤Q=线元长:K≤L+Q=>X=起点X坐标:Y=起点Y坐标:A=起点方位角:P=起点半径:R=终点半径:GotoEΔL=L+Q:⑥......⑦Q=线元长:X=起点X坐标:Y=起点Y坐标:A=起点方位角:P=起点半径:R=终点半径:LblE2 %线路二数据库子程序输入要求和线路一相同。

4800全线坐标正反算程序

4800全线坐标正反算程序

线路中边桩任意里程坐标正、反算改编程序(CASIO fx-5800P)1. 正算子程序(SUB1)A=0.26:B=0.74:K=0.02:L=0.3300094782:F=1-L:M=1-K:X=U+W(Acos(G+57.2958QKW(1/P+KWD))+B cos(G+57.2958QLW(1/P+LWD))+Bcos(G+57.2958QFW(1/P+FWD))+ Acos(G+57.2958QMW(1/P+MWD))):Y=V+W(Asin(G+57.2958QKW(1 /P+KWD))+Bsin(G+57.2958QLW(1/P+LWD))+Bsin(G+57.2958QFW(1 /P+FWD))+Asin(G+57.2958QMW(1/P+MWD))):F=G+57.2958QW(1/ P+WD)+90:X=X+Zcos(F-90+T):Y=Y+Zsin(F-90+T)2. 反算子程序(SUB2)W=Abs((Y-V)cos(G-90)-(X-U)sin(G-90)):Z=0:Lbl 0:Prog "SUB1 ":L=(G-90)+57.2958QW(1/P+WD):Z=(J-Y)cosL-(I-X)sinL:AbsZ<1 E-6=>Goto1:≠>W=W+Z:Goto 0Δ←┘Lbl 1:Z=0:Prog "SUB1":Z=(J-Y)÷sinF二数据库程序(SJK主程序)Lb1 4:"1.SZ => XY":"2.XY => SZ":{NS}:S<75685.656 =>O=75172.813:U=10257.769:V=615287.070:G=325-46-1.5:H =512.843:P=2600:R=2600:Q=1:Goto0Δ←┘(JD65)S<75884.442=>O=75685.656:U=10707.383:V=615042.113:G= 337-04-06.6:H=198.786:P=2600:R=1E45:Q=0:Goto0Δ←┘(直线)S<76044.442=>O=75884.442:U=10890.459:V=614964.660:G=337-04-06.6:H=160:P=1E45:R=1050:Q=-1:Goto0Δ←┘(JD66第一缓和段)S<76392.111=>O=76044.442:U=11036.146:V=614898.615:G= 332-42-11.19:H=347.669:P=1050:R=1050:Q=-1:Goto0Δ←┘(J D66圆曲线段)S<76552.111=>O=76392.111:U=11313.328:V=614691.387:G= 313-43-54.11:H=160:P=1050:R=1E45:Q=-1:Goto0Δ←┘(JD66第二缓和段)S<78271.813=>O=76552.111:U=11417.893:V=614570.338:G= 309-21-58.7:H=1719.702:P=1E45:R=1E45:Q=0:Goto0Δ←┘(直线段)S<78431.813=>O=78271.813:U=12508.659:V=613240.824:G= 309-21-58.7:H=160:P=1E45:R=1050:Q=-1:Goto0Δ←┘(JD67第一缓和段)S<78810.831=>O=78431.813:U=12606.944:V=613114.623:G= 305-00-3.29:H=379.018:P=1050:R=1050:Q=-1:Goto0Δ←┘(JD 67圆曲线段)S<78970.831=>O=78810.831:U=12764.225:V=612772.038:G= 284-19-7.91:H=160:P=1050:R=1E45:Q=-1:Goto0Δ←┘(JD67第二缓和段)S<79284.977=>O=78970.831:U=12795.865:V=612615.240:G= 279-57-12.5:H=314.146:P=1E45:R=1E45:Q=0:Goto0Δ←┘(直线段)S<79444.977=>O=79284.977:U=12850.165:V=612305.822:G= 279-57-12.5:H=160:P=1E45:R=750:Q= 1:Goto0Δ←┘(JD68第一缓和段)S<79607.747=>O=79444.977:U=12883.388:V=612149.392:G= 286-03-54.08:H=162.77:P=750:R=750:Q= 1:Goto0Δ←┘(JD6 8圆曲线段)S<79767.747=>O=79607.747:U=12944.985:V=611999.072:G= 298-29-59.22:H=160:P=750:R=1E45:Q= 1:Goto0Δ←┘(JD68第二缓和段)S<79927.747=>O=79767.747:U=13031.084:V=611864.310:G= 304-36-40.8:H=160:P=1E45:R=750:Q=-1:Goto0Δ←┘(JD69第一缓和段)S<80152.430=>O=79927.747:U=13117.183:V=611729.547:G= 298-29-59.22:H=224.683:P=750:R=750:Q=-1:Goto0Δ←┘(JD6 9圆曲线段)S<80312.430=>O=80152.430:U=13193.440:V=611519.093:G= 281-20-6.98:H=160:P=750:R=1E45:Q=-1:Goto0Δ←┘(JD69第二缓和段)S<80472.430=>O=80312.430:U=13213.651:V=611360.456:G= 275-13-25.4:H=160:P=1E45:R=920:Q= 1:Goto0Δ←┘(JD70A 第一缓和段)S<80764.750=>O=80472.430:U=13232.840:V=611201.665:G= 280-12-21.47:H=292.320:P=920:R=920:Q= 1:Goto0Δ←┘(JD7 0A圆曲线段)S<80924.750=>O=80764.750:U=13329.149:V=610926.967:G= 301-56-13.33:H=160:P=920:R=1E45:Q= 1:Goto0Δ←┘(JD70 A第二缓和段)S<=>O=75018.789:U=10119.920:V=615344.580:G=325-46-1. 5:H=591.742:P=3000:R=3000:Q= 1:Goto0Δ←┘(Z JD2圆曲线段)S<75868.894=>O=75610.531:U=10638.706:V=615061.939:G= 337-04-6.6:H=258.363:P=3000:R=1E45:Q=0:Goto0Δ←┘(直线段)S<76028.894=>O=75868.894:U=10876.651:V=614961.272:G= 337-04-6.6:H=160:P=1E45:R=900:Q=-1:Goto0Δ←┘(Z JD3第一缓和段)S<76304.04=>O=76028.894:U=11022.044:V=614894.617:G= 331-58-31.95:H=275.146:P=900:R=900:Q=-1:Goto0Δ←┘(Z J D3圆曲线段)S<76464.04=>O=76304.04:U=11241.555:V=614730.506:G= 314-27-33.35:H=160:P=900:R=1E45:Q=-1:Goto0Δ←┘(Z JD3第二缓和段)S<78325.868=>O=76464.04:U=11346.622:V=614609.911:G= 309-21-58.7:H=1861.828:P=1E45:R=1E45:Q=0:Goto0Δ←┘(直线段)S<78485.868=>O=78325.868:U=12527.535:V=613170.519:G= 309-21-58.7:H=160:P=1E45:R=1000:Q=-1:Goto0Δ←┘(Z JD4第一缓和段)S<78839.218=>O=78485.868:U=12625.657:V=613044.196:G= 304-46-57.52:H=353.350:P=1000:R=1000:Q=-1:Goto0Δ←┘(Z JD4圆曲线段)S<78999.218=>O=78839.218:U=12772.319:V=612724.740:G= 284-32-13.68:H=160:P=1000:R=1E45:Q=-1:Goto0Δ←┘(Z JD4第二缓和段)S<80472.391=>O=80312.391:U=13213.651:V=611360.455:G= 275-13-25.4:H=160:P=1E45:R=936.13:Q= 1:Goto0Δ←┘(Z JD 1A第一缓和段)S<80707.393=>O=80472.391:U=13232.720:V=611201.648:G= 280-07-12.42:H=235.002:P=936.13:R=936.13:Q= 1:Goto0Δ←┘(Z JD1A圆曲线段)S<80867.397=>O=80707.393:U=13302.398:V=610977.859:G= 297-27-38.28:H=160:P=936.13:R=1E45:Q= 1:Goto0Δ←┘(Z J D1A第二缓和段)LB1 0:D=(P-R)÷(2HPR):N=1=>Goto 1:≠>Goto 2Δ←┘Lbl 1:{TZ}:Z:W=Abs(S-O):Prog "SUB1":X"XS"=X◢Y"YS"=Y◢F"FS"=F-90◢C“XC”:E“YC”:I=0:J=0:Pol(X-C,Y-E):I“I=” ◢J∠0=>J“J=”+360◢≠>J“J=” ◢ΔGoto4←┘Lbl 2:{XY}:XY:I=X:J=Y:Prog "SUB2":S"S"=O+W◢Z"Z"=Z◢G o t o4。

Casio4800平曲线坐标计算教学资料

Casio4800平曲线坐标计算教学资料

C a s i o4800平曲线坐标计算Casio fx-4800P平曲线坐标计算程序湖南新光工程有限公司三板溪项目部李甲生程序目的:依平曲线要素计算直线、圆曲线、缓和曲线的任意中桩、左、右桩坐标。

程序说明:K0:起始桩号X0:起始X坐标Y0:起始Y坐标ALF:起始方位角R:半径LS:缓和曲线长N:曲线左转N=1,右转N=2 K:待求桩号LL、LR:左、右桩距离Q:左、右桩与中线斜交角求得XZ、YZ、XL、YL、XR、YR分别为中桩、左、右桩坐标。

一、直线段文件名:ZX (COMP)程式:L”K0”:O”X0”:P”Y0”:W”ALF”:Lbl 0:{K}:X”XZ”=O+(K-L)cosW◢Y”YZ”=P+(K-L)sinW◢{B}:S”XL”=X-B”LL”cos(W+Q)◢T”YL”=Y-Bsin(W+Q) ◢{C}:U”XR”=X+C”LR”cos(W+Q)◢V”YR”=Y+Csin(W+Q)◢Goto 0注:在程序执行过程中,赋给的要素变数的值被固定不变,可对变数(K、LL、LR)赋予不同值,迅速求得所需坐标。

二、圆曲线段文件名:YQX (COMP)程式:L”K0”:O”X0”:P”Y0”:W”ALF”:Lbl 1:{K}:J=(-1)^N (K-L)÷R×180÷π:D=2Rsin((-1)^N J÷2):X”XZ”=O+Dcos(W+J÷2)◢Y”YZ”=P+Dsin(W+J÷2)◢{B}:S”XL”=X-B”LL”cos(W+J+Q)◢T”YL”=Y-Bsin(W+J+Q) ◢{C}:U”XR”=X+C”LR”cos(W+J+Q)◢V”YR”=Y+Csin(W+J+Q) ◢Goto 1注:若没有直接HY点方位角,则ALFHY=ALFZH±Ls/2/R×180/π,(左转-,右转+)。

三、缓和曲线文件名:HHQX (COMP)程式:L”K0”:O”X0”:P”Y0”:W”ALF”:M”LS”:Lbl3:{K}:I=(-1)^N×(K-L)^2÷M÷R÷6×180÷π:D=(K-L)-(K-L)^5÷90÷(RM)^2:X”XZ”=O+Dcos(W+I)◢Y”YZ”=P+Dsin(W+I)◢{B}:S”XL”=X-B”LL”cos(W+3I+Q)◢T”YL”=Y-Bsin(W+3I+Q) ◢{C}:U”XR”=X+C”LR”cos(W+3I+Q)◢V”YR”=Y+Csin(W+3I+Q)◢Goto 3注:1、坐标计算方法是根据偏角法原理;2、缓和曲线(ZH~HY或YH~HZ)以ZH(或HZ)为起始点;3、平曲线左转(ZH~HY段N=1,YH~HZ段N=2),曲线右转(ZH~HY段N=2,YH~HZ段N=1)。

有缓和曲线或无缓和曲线任意桩号中、边桩坐标4800计算程序_

有缓和曲线或无缓和曲线任意桩号中、边桩坐标4800计算程序_

有缓和曲线或无缓和曲线任意桩号中、边桩坐标4800 计算程序有缓和曲线或无缓和曲线任意桩号中、边桩坐标4800 计算程序四、QXZB(曲线坐标A”ZH(ZH=〃:B”X(ZH=〃:C”Y(ZH=〃”X(HZ=〃:E”Y(HZ=〃:F ”FW-J1= 〃:G”FW-J2=〃:H”R=〃:I ”L1〃= :J ”L〃=:K”L2=〃:L”ZJ(Z=1,Y=-1=〃O=180/pi (pi 为圆周率,电脑中找不到此符号以此代替LbI A{MN}M”ZHUANG HAO=〃P=M-AMM>(A+I+J+K?GOTO A /N” ZHUANG JU(Z+,Y-=〃M>(A+I+J?GOTO D /M>(A+I?GOTO C /Lbl B(第一缓和曲线X=B+(P-(P5 凶0+12十I2COSF+(P3£H H十I-P7 $364d3±l3LSINF Y=C+(P- (P5 +0+H2+2SINF-(P3 6+H-I-P7 +36+I3+3LCOSF X=X+NCOS(F-(P2-2++IOL-90丄Y=Y+NSIN(F-(P2 +2+H-IOL-90 丄GOTO ALbl C(圆曲线X=B+(HSIN(((P-I H+I 吃H HO+(I 吃-13 240牛I2COSF-(H(1-COS(((P-I -Hl+I 222HO+ I2 224 2H(-1LSINFY=C+(HSIN(((P-I H+l -2 -HO+(I -2-13 240 -H2SINF+(H(1-COS(((P-I H+I 2 HO+I2 24 H(-1LCOSFX=X+NCOS(F-((P-I -H+I-2 -HOL-90 丄Y=Y+NSIN(F-((P-I H+I-2 -HOL-90 丄GOTO ALbI D(第二缓和曲线Q=A+I+J+K-MX=D-(Q-Q5 40 H2 K2COSG+(Q3 6 H K-Q7 336 H3 K3LSING Y=E-(Q-Q5 40 H2 K2SING-(Q3 6 H K-Q7 336 H3 K3LCOSG X=X+NCOS(F-(I 2- -H+J 卄1+心 2 -H-Q2-2 -H-KOL-90 丄Y=Y+NSIN(F-(I -2 -H+J -H+K^ 2 -H-Q2-2 -H -KOL-90 丄GOTO A变量说明:以上变量依次为:ZH(ZH=直缓点桩号,无缓和曲线则为直圆点;X(ZH=直缓点X坐标;无缓和曲线则为直圆点;丫(ZH=直缓点丫坐标,无缓和曲线则为直圆点;X(HZ=缓直点X坐标,无缓和曲线则为圆直点;丫(HZ=缓直点丫坐标,无缓和曲线则为圆直点;FWJ-仁第一切线方位角;FWJ-2=第二切线方位角;R=半径;L仁第一缓和曲线长;L=圆曲线长;L2=第二缓和曲线长;ZJ(Z=1,丫二仁转角形式(左=1,右=-1ZHUANG HAO= 所求点桩号ZHUANG JU(Z+,Y-=边桩桩距,左边桩为正,右为负,中桩0 我已经用过了,没发现什么问题,请大家提意见。

CASIO fx4800P曲线任意里程中边桩坐标正反算程序

CASIO fx4800P曲线任意里程中边桩坐标正反算程序
X0 ?线元起点的X坐标
Y0 ?线元起点的Y坐标
S0 ?线元起点里程
F0 ?线元起点切线方位角
LS ?线元长度
R0 ?线元起点曲率半径
RN ?线元止点曲率半径
Q ? 线 元左右偏标志(左偏Q=-1,右偏Q=1,直线段Q=0)
S=700 Z= 5 计算得 XS=19823.25398 YS=28503.95084
S=780 Z=-5 计算得 XS=19785.25749 YS=28575.02270
S=780 Z=0 计算得 XS=19781.15561 YS=28572.16358
X=19742.686 Y=28652.914 计算得 S=870.0003175 Z=- 0.00041814
X=19737.837 Y=28651.697 计算得 S=870.0002748 Z= 4.999808656
X=19741.5912 Y=28722.0580 计算得 S=939.9999786 Z= -5.123024937 80.0000016 Z= 4.99999578
X=19747.536 Y=28654.131 计算得 S=870.0001137 Z= -4.99941049
919.527 19736.072 28701.893 91 17 30.63 80.285 221.75 9579.228 -1
999.812 19744.038 28781.659 80 40 50.00 100.000 1E45 1E45 0
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 "SUB1":L=T+QEW(C+
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

曲线任意里程中边桩坐标正反算(CASIO fx-4800P计算器)程序
曲线任意里程中边桩坐标正反算(CASIO fx-4800P计算器)程序
一、程序功能
本程序由一个主程序(TYQXJS)和两个子程——正算子程序(SUB1)、反算子程序( SUB2)序构成,可以根据曲线段——直线、圆曲线、缓和曲线(完整或非完整型)的线
元要素(起点坐标、起点里程、起点切线方位角、线元长度、起点曲率半径、止点曲
率半径)及里程边距或坐标,对该曲线段范围内任意里程中边桩坐标进行正反算。


外也可以将本程序中核心算法部分的两个子程序移植到其它相关的程序中,用于对曲
线任意里程中边桩坐标进行正反算。

本程序也可以在CASIO fx-4500P计算器及 CASIO
fx-4850P计算器上运行。

特别申明:(1). 适用于弧长小于2倍半径的各种线元坐标正反算,精度优
于1mm;
(2). 在引用该核心计算部分时,请注明来源。

二、源程序
1.主程序(TYQXJS)
"1.SZ => XY":"2.XY => SZ":N:U"X0":V"Y0":O"S0":G"F0":H"LS":P"R0":R" RN":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 "SUB1":X"XS"=X◢
Y"YS"=Y◢
F"FS"=F-90◢
Goto 1←┘
Lbl 2:{XY}:XY:I=X:J=Y:Prog "SUB2":S"S"=O+W◢
Z"Z"=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 "SUB1":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 "SUB1":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表示由坐标反算里程和边距。

X0 ?线元起点的X坐标
Y0 ?线元起点的Y坐标
S0 ?线元起点里程
F0 ?线元起点切线方位角
LS ?线元长度
R0 ?线元起点曲率半径
RN ?线元止点曲率半径
Q ?线元左右偏标志(左偏Q=-1,右偏Q=1,直线段Q=0)
S ?正算时所求点的里程
Z ?正算时所求点距中线的边距(左侧取负,值右侧取正值,在中线上取零)
X ?反算时所求点的X坐标
Y ?反算时所求点的Y坐标
显示部分:
XS=×××正算时,计算得出的所求点的X坐标
YS=×××正算时,计算得出的所求点的Y坐标
FS=×××正算时,所求点对应的中线点的切线方位角
S=×××反算时,计算得出的所求点的里程
Z=×××反算时,计算得出的所求点的边距。

相关文档
最新文档