曲线任意里程中边桩坐标正反算及放样fx-4850程序
- 格式:doc
- 大小:40.50 KB
- 文档页数:6
曲线(含直线)任意里程中边桩坐标正反算(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个子程序。
CASIO fx—4850(4800)型编写的公路工程三维坐标测量及放样程序一、简述高速公路、路网工程和新农村公路建设任务繁重,公路建设点多、线长、信息多的特点,迫切要求施工测量现场必须信息全面、快速、灵活、准确,能快捷应对线路长,受地形地物制约较大路段,无规则的斜交构造物、高挖高填路堑路堤边坡、各式各类的平面线型。
以下介绍CASIXfx——4850(4800)型编写的公路工程三维坐标测量及放样程序,该程序不受平面线型、独立单元、线路里程桩号、断面距离、断面斜交角度的限制,能方便快捷地得到施工线路的任何设计坐标值、高程值、断面超高值、断面加宽值、填挖高度、边坡超欠挖宽度、边坡线、对应坐标的里程和边距;只需通过对数据库的编辑,就能满足各种平面线型,且占用空间较小。
本套程序是共有1个主程序,11个子程序。
包括了路线坐标正反算、竖曲线、超高加宽、边坡放样、断面计算及数据库等程序。
适用于CASIO4850/4800,4800用户需要修改清单内结果显示的字段(例如:“X=”:X◢改为X“X=”◢ 或“Z=”:G=H+G◢改为G“Z”=H+G◢)。
二、程序功能及计算范围2.1程序功能根据不同需要,本程序共设置了6种计算模式Ling-ZCX:1-ZS,正算模式:适用于中、边桩计算,里程桩号及边距=>平面坐标。
2-FI,放样1模式:适用于路基、路面施工放样,里程桩号及边距=>平面坐标、路面高程。
3-FS,反算模式:适用于任意点里程、边距计算,任意点坐标=>里程、边距。
4-F2,放样2模式:适用于路基施工放样,任意点坐标=>里程、边距、填挖高度,边坡超欠挖宽度,最近平台高度(<1.5)。
5-Z0,设计高程计算,即竖曲线计算,里程桩号=>设计高程。
6-DM,断面计算,里程桩号、边距=>设计高程、加宽值、指定边桩的高程。
2.2计算范围平曲线:直线-缓和曲线(或无)-圆曲线-缓和曲线(或无)-直线中任意桩号,允许两缓和曲线不等长等标准曲线,也可以计算曲线元、卵形曲线,回头曲线,复曲线,匝道等复杂类型曲线。
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)序构成,可以根据曲线段——直线、圆曲线、缓和曲线(完整或非完整型)的线元要素(起点坐标、起点里程、起点切线方位角、线元长度、起点曲率半径、止点曲率半径)及里程边距或坐标,对该曲线段范围内任意里程中边桩坐标进行正反算。
卡西欧fx-4850P万能放线程序主程序:ZBJS↙◢“◢:H◢↙注:↙↙↙↙注:此程序可把全线路要素输入数据库,能执行直线、高程放线正反算。
卵形曲线。
卡西欧fx-4850P直线、各种曲线任意放中线(匝道)1:主程序:TYQXJS“1,KS=>XY”:“2,XY=>KS”:N:U“X0”:V“Y0”:o“K0”:G“FWJ”:H“LS”:P“R1”:R“R2”:Q“Y+1;0;Z-1”:C=P-1:D=(P-R)÷(2HPR):E=180÷π:N=1=>Goto 1:≠>Goto 2↙◢“Goto 1↙2:正算子程序:S U B1A=0.1739274226:B=0.3260725774:Z=0.0694318442:L=0.33 00094782:F=1-L:M=1-Z:X=U+W(Acos(G+QEZW(C+ZWD))+Bcos (G+QELW(C+LWD))+Bcos(G+QEFW(C+FWD))+Acos(G+QEMW(C+M WD))):Y=V+W(Asin(G+QEZW(C+ZWD))+Bsin(G+QELW(C+LWD)) +Bsin(G+QEFW(C+FWD))+Asin(G+QEMW(C+MWD))):F=G+QEW(C +WD)+90:X=X+Scos F :Y=Y+SsinF↙3坐标反算子程序 SUB2T=G-90:W=Abs((Y-V)cosT-(X-U)sinT) :S=0:Lbl 0: Prog “SUB1”:L=T+QEW(C+WD):S=(J-Y)cos L-(I-X)sin L : Abs S<10-6=>Goto 1: ≠>W=W+S:Goto 0↙Lbl 1:S=0:Prog“SUB1”:S=(J-Y)÷sin F↙注:o→代表:欧 0→代表零使用说明:1规定:⑴本程序可执行直线、圆曲线、缓和曲线(完整或非完整型)、复曲线、卵形曲线的任意里程中边桩坐标的正反算。
坐标正反算程序(4850)正算主程序:ZS1.Prog “SJ”2.Lbl 0: {ZS}3.Z<A=>Rec(sqrt(S2+(Z-Q)2),F+180-tan-1(S÷(Q-Z))):X=N+I:Pause 0:Y=E+J◢4.Goto 0◣第一直线5.Z<B=>L=Z-A:W=F+90GL2÷πRU+90:H=U:O=Z[5]:P=Z[6]:T=F+90G:Goto 1◣第一回旋线6.Z<C=>L=Z-B7.W=F+G((90U+180L)÷πR+270)8.Rec(R-GS,W):X=Z[9]+I: Pause 0:Y=Z[10]+J◢9.Goto 0◣圆曲线10.Z<D=>L=D-Z:W=F+G(K-90L2÷πR V)+90:H=V:O=Z[7]:P=Z[8]:T=F+G(K+90):Goto 1◣第二回旋线11.Lbl 1:X=L-L5÷40R2V2+L9÷3456R4V412.Y=L3÷6RV-L7÷336R3V3+L11÷42240R5V513.Rec(sqrt(X2+Y2),T):X=O+I:Y=P+J14.Rec(S,W): X=X+I: Pause 0:Y=Y+J◢15.Goto 0◣16.Z>D=>Rec(sqrt(S2+(Z-D+Z[4])2),F+G(K+tan-1(S÷(Z-D+Z[4])))):X=N+I: Pause 0:Y=E+I◢17.Goto 0◣第二直线反算主程序:FS1.Prog"SJ"2.H=90U÷πR第一回旋线所对圆心角β013.T=90V÷πR第二回旋线所对圆心角β024.Rec((Z[3] +Z[4]÷cosK)/tanK,F+90G):Z[11]=Z[5]+I:Z[12]=Z[6]+J ZH、HZ点垂线交点坐标5.Z[13]=F+90G+180 ZH点与ZH、HZ点垂线交点连线方位角6.Z[14]=Z[13]+GH HY点与圆心连线方位角7.Z[15]=Z[13]+G(K-H) YH点与圆心连线方位角8.Z[16]=Z[15]+GT HZ点与ZH、HZ点垂线交点连线方位角9.Lbl 0:{XY}10.Pol(X-Z[11],Y-Z[12]):J<0=>J=J+360◣11.GJ<GZ[13]=> Pol(N-X,E-Y):Rec(I,F-J): “Z”:Z=Q-I:Pause 0:“S”:J◢12.Goto 0◣第一直线13.GJ>GZ[16]=> Pol(X-N,Y-E):Rec(I,J-F-GK): “Z”:Z=I-Z[4]+D:Pause 0:“S”:J◢14.Goto 0◣第二直线15.GJ>GZ[13]=>Pol(X-Z[9],Y-Z[10]):J<0=>J=J+360◣16.GJ<GZ[14]=>P=Z[13]:H=U:M=A:T=1:Z[17]=Z[5]:Z[18]=Z[6]:Z[19]=F:Goto 1◣第一缓和曲线17.GJ<GZ[15]=> “Z”:Z=B+RG(J-Z[14]):Pause 0:“S”:S=G(R-I)◢18.Goto 0◣圆曲线19.GJ>GZ[15]=>P=Z[16]:H=V:M=D:T=-1:Z[17]=Z[7]:Z[18]=Z[8]:Z[19]=F+GK+180:Goto 1◣第二缓和曲线20.Lbl 1:Pol(X-Z[11],Y-Z[12]):J<0=>J=J+360:L= Abs(J-P) πR÷180 “L=H×Abs(J-P)÷2÷(90H÷πR)”21.Lbl 2:O=L-L5÷40R2H2+L9÷3456R4H4-L13÷599040R6H622.P=L3÷6RH-L7÷336R3H3+L11÷42240R5H5-L15÷9676800R7H723.Rec(sqrt(O2+P2),Z[19]+TGtan-1(P÷O)):O=Z[17]+I:P=Z[18]+J24.Pol(X-O,Y-P):Rec(I,J-(Z[19]+90TGL2÷πRH)):AbsI>0.001=>L=L+I:Goto 2:≠>“Z”:Z=M+TL: Pause 0: “S”:TJ◢25.Goto 0◣子程序(曲线要素数据):SJ1.Defm 19:M:M=1=>F=*:K“ZJ”=*:G=*:U(Ls1)=*:V(Ls2)=*:R=*:Q=*:N“XJ”=*:E“YJ”=*:Goto 1◣2.M=2=>F=*:K“ZJ”=*:G=*:U(Ls1)=*:V(Ls2)=*:R=*:Q=*:N“XJ”=*:E“YJ”=*:Goto 1◣3.………………4.Lbl 1:Z[1]=U2÷24R-U4÷2688R3+U6÷506880R5Z[1]第一回旋线内移值P15.Z[2]=V2÷24R-V4÷2688R3+V6÷506880R5Z[2]第二回旋线内移值P26.M=(R+Z[2]-(R+Z[1])cosK)÷sinK7.P=(R+Z[1]-(R+Z[2])cosK)÷sinK8.Z[3]= M+U÷2-U3÷240R2Z[3]第一回旋线切线长T19.Z[4]= P+V÷2-V3÷240R2Z[4]第二回旋线切线长T210.L=RKπ÷180+(U+V)÷2曲线长(Ls1+圆+Ls2)11.A=Q-Z[3]:B=A+U:D=A+L:C=D-V ZH,HY,HZ,YH里程桩号12.I=0:J=0:Rec(Z[3],F+180):Z[5]=N+I:Z[6]=E+J ZH点坐标增量计算,ZH点坐标13.Rec(Z[4],F+GK):Z[7]=N+I:Z[8]=E+J HZ点坐标增量计算,HZ点坐标14.Rec(sqrt(M2+(R+Z[1])2),F+G(K+tan-1((R+Z[2])÷P))):Z[9]=N+I:Z[10]=E+J 圆心坐标注:F-起始边方位角K-转角G-线路左转为-,右转为+U-第一回旋线长V-第二回旋线长R-半径Q-交点桩号N,E-交点坐标Z-待求点桩号S-偏距(左偏为-,右偏为+)sqrt为根号。
(计算包含该曲线以及该曲线两端的直线段)主程序J-PQX (平面数据输入,自行切换到J-JSMS)Prog“DAT05”:A“JD”B“JDX”C“JDY”F“FJ”O“ZJ:Z-,Y+”RE“LS1”K“LS2”:E<1=>E=1 E-9⊿K<1=>K=1E-9⊿Z[1]=EE÷24R-E∧4÷2688RRR:Z[2]=E÷2-EEE÷240RR:X=(EE-KK)÷24 R÷sin Abs O : T1=”:Z[3]“T1” =(R+Z[1])tan(Abs O ÷2)+Z[2]-X◢“T2=”:Z[4]“T2” =(R+KK÷24R-K∧4÷2688RRR)tan(Abs O ÷2)+K÷2-KKK÷240RR+X◢“L=”:L=Abs OπR÷180+(E+K)÷2◢J=tan-1((R+Z[1])÷(Z[3]-Z[2]): “E=”:X“E”=(R+Z[1])÷sin J-R◢X=A-Z[3]:Y=X+E:E<1=>X“ZY”◢≠=>“ZH=”:X“ZH”◢“HY=”:Y“HY”◢⊿“QZ=”:Y“QZ”=X+(L-K-E)÷2+E◢Y=X+L-K:X=X+L: “YH=”:Y◢“HZ=”:X◢⊿Prog“J-JSMS”←┚子程序J-JSMS“1-ZS,2-F1”:Lb1 0:{Z}: Z“MS”=1=>Goto1 : Z“MS”=2=>Goto2⊿⊿←┚Lb1 1 :{PDW}:PD“BZ”W“BJ”:Prog“JP”:“X=”:X◢“Y=”: Y◢{QS}:Q“X0”:S“Y0”:I=POL(X-Q,Y-S):“Z[7]=”:I◢J<0=>J=J+360:“Z[8]=”:J→DMS ◢≠=>J=J:“Z[8]=”:J→DMS ◢⊿Goto 0Lb1 2 :{XYW}:XYW“BJ”:Prog“JF”:“P=” :P◢“BZ=”:D◢Goto 0子程序JP(平曲线正算子程序Fixm←┚Lb1 1 :J=F:X= B-Z[3]cos F :Y= C-Z[3]sin F :G=E←┚P≤A-Z[3]=>I=A-Z[3]-P:M=-I:N=0:H=F+W:Goto 5←┚≠=>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=K←┚P≤A-Z[3]+L=>I=A-Z[3]+L-P:H=90II÷RKπ: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 5 ←┚Lb1 3 :M=I-I∧5÷40RRGG:N=III÷6GR-I∧7÷336RRRGGG:Goto 5 ←┚Lb1 4 :H=(E+2I)×90÷πR:M=R sin H+Z[2]:N=R(1-cos H)+Z[1]:O<0=>H=-H⊿H=J+H+W: Got o 5←┚Lb1 5 :P≤A-Z[3]+L-K=> O<0=>N=-N⊿≠=>O>0=>N=-N⊿⊿Goto 6←┚Lb1 6 :X =X+M cos J-N sin J+D cos H:Y =Y+M sin J+N cos J+D sin H子程序JF(平曲线反算子程序Fixm←┚U=X:V=Y:D=0:J=F-W:P=A+(Y-C)cos J-(X-B)sin J←┚Lb1 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⊿Lb2: D=(V-Y)÷sinH子程序DAT05(数据库)J=?=>A=?:B?:C=?:F=?:O=?:R=?:E=?:K=?:≠=> J=?=>A=?:B?:C=?:F=?:O=?:R=?:E=?:K=?:。
CASIO4850全线坐标正反算程序主程序:ZHANG LINGLbI 0:Deg:T“WJM”:C=20+40(T-1):T=0:N“1.SR,2.JS”:N=2=>Goto A△M“JZ-XX”:O“QD-ZH”:U“X0”:V“Y0”:G“FWJ”:LbI B:{HRQP}:P“QD-R”:H“XX-CD”:R“ZD-R”:Q“)-1,——0,(+1”:W=H:Z=0:Prog“S1”:Prog“S4”:U=X:V=Y:O=O+H:G=F-90:P=R:“…SR…NEXT…”:Isz T:Dsz M:Goto B△LbI A:Fixm:{XYSZN}:T=0:N“1.JS-XY,2.XY-FS”:N=2=>Goto 2△S“JS-ZH=”:Z“D=”:LbI 1:S>Z[8T+C+1]= >Isz T:Goto 1△Prog“S3”:W=S-O:Prog“S1”:“JS-X=”:X:Pause 0:“JS-Y=”:Y▲Goto A:LbI 2:X“X…”:Y“Y…”:I=X:J=Y:LbI 3:Prog“S3”:W=Abs((Y-V)Cos(G-90)-(X-U)Sin(G-90:W>H=>Isz T:Goto 3△Prog“S2”:“FS-ZH…”:S=O+W:Pause 0:“D…”:Z▲Goto A子程序S1A=0.1184634425:B=0.2393143352:Z[6]=0.2844444444:K=0.046910077:L=0.2307653449:D=Q r W2(P-R)÷2HPR:E=Q r WP-1:Z[1]=G+KE+K2D:Z[2]=G+LE+L2D:Z[3]=G+0.5E+0.25D:Z[4]=G+(1-L)2D+E(1-L:Z[5]=G+(1-K)2D+E(1-K:F=G+E+D+90:X=U+ZCosF+W(ACosZ[1]+BCosZ[2]+Z[6]CosZ[3]+BCosZ[4]+ACosZ[5]:Y=V+ZSinF+W(ASinZ[1]+BSinZ[2]+Z[6]SinZ[3]+BSinZ[4]+ASinZ[5]子程序S2W=Abs((Y-V)Cos(G-90)-(X-U)Sin(G-90:Z=0:LbI 4:Prog“S1”:L=G+E+D-90:Z=(J-Y) CosL-(I-X) SinL:AbsZ<E-6=>Goto 5:≠>W=W+Z:Goto4△LbI 5:Z=0:Prog“S1”:Z=(J-Y)÷SinF子程序S3H=Z[8T+C+6]:O=Z[8T+C+1]-H:U=Z[8T+C+2]:V= Z[8T+C+3]:G=[8T+C+4]:P=Z[8T+C+5]:R=Z[8T+C+7]:Q=Z[8T+C+8]子程序S4Z[8T+C+1]=O+H:Z[8T+C+2]=U:Z[8T+C+3]=V:[8T+C+4]=G:Z[8T+C+5]= P:Z[8T+C+6]=H:Z[8T+C+7]=R:Z[8T+C+8]=Q程序编制说明:1.本程序是为CASIO-fx4850p编制的。
★★★缓和曲线、圆曲线、直线段坐标计算程序★★★一:程序适用于计算器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~~完~~直线正算程序(放样程序)。
任意曲线坐标放样正反算程序(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)。
一般直线,曲线任意桩号放样程序A7QX(文件名)LbI3:Fixm:{L}:L≤53459.53=>Prog”7”:GotoAΔLbIA:Prog”2”:T≤0=>Goto7ΔT>E=>Goto0ΔProg”3”:Prog”4”:LbI1:{SU}:S=0=>Goto3ΔRec(S,Z+QF+U):Prog”5”:Goto1:LbI0:T>H-P-V=>Goto6Δprog”6”:Prog”4”:LbI2:{SU}:S=0=> Goto3ΔRec(S,Z+OF+U):Prog”5”:Goto2:LbI7:Rec(-T,Z+180):Prog”4”: LbI4:{SU}:S=0=> Goto3ΔRec(S,Z+U:Prog”5”: Goto4: LbI6:I=W:G=Z+180(H-P-(V+E)÷2)÷兀RF:Z=G+180: Rec(I,G:K=I+C:G=J+D:T ≥H-P=> Goto5ΔT=H-L:F=-F:E=V:Prog”3”:F=-F:N=K+I▲M=G+J▲LbI8:{SU}:S=0=>Goto3ΔRec(S,Z+180-QF+U:Prog”5”:Goto8: LbI5 :Rec(T-H+P,Z+180):N=K+I▲M=G+J▲LbI9: {SU}:S=0=>Goto3ΔRec(S,Z+180+U):Prog”5”:Goto92(文件名) T=L-P:Pol(C-A,D-B:Z=J3(文件名) W=ER:X=T-T^5÷40W^2+T^9÷3456W^4:Y=T^3÷6W-T^7÷336W^3: Pol(X,Y: Rec(I,Z+JF:Q=90T^2÷R÷E÷兀4(文件名) N=A+I▲M=B+J▲5(文件名) X=N+I▲Y=M+J▲6(文件名) V=E÷2-E^3÷240R^2:G=E^2÷24R-E^4÷2688R^3:O=180(T-0.5E)÷R兀:X=V+RsinO:Y=G+(1-CosO)R:Pol(X,Y:Rec(I,Z+JF7(文件名) (数据库)L=任意桩号 S=居中距离 U=左-90,右+90 A=ZH(ZY)点X坐标B= ZH(ZY)点Y坐标 C=交点X坐标 D=交点Y坐标 E=LS1 V=LS2 R=半径 H=YH(YZ)点桩号 P=ZH(ZY)点桩号 F=左转-1,右转+1 W=切线长如果两弯道间没有直线段:L≤ZY(YZ)点桩号 =>Prog”数据库文件名”如果有直线段:L≤下一弯道ZY点桩号 =>Prog”数据库文件名”一般直线,曲线任意桩号放样程序B HYQPXG(文件名)Prog”1”:LbI3:Fixm:{L}:Prog”2”:T≤0=>Goto7ΔT>E=>Goto0ΔProg”3”:Prog”4”:LbI1:{SU}:S=0=>Goto3ΔRec(S,Z+QF+U):Prog”5”:Goto1:LbI0:T>H-P-E=>Goto6Δprog”6”:Prog”4”:LbI2:{SU}:S=0=> Goto3ΔRec(S,Z+OF+U:Prog”5”:Goto2:LbI7:Rec(-T,Z+180:Prog”4”: LbI4:{SU}:S=0=> Goto3ΔRec(S,Z+U:Prog”5”: Goto4:LbI6: G=Z+180(H-P-E)÷兀RF:Z=G+180: Rec(I,G:K=I+C:G=J+D:T≥H-P=> Goto5ΔT=H-L:F=-F: Prog”3”:F=-F:N=K+I▲M=G+J▲LbI8:{SU}:S=0=>Goto3ΔRec(S,Z+180-QF+U:Prog”5”:Goto8: LbI5: Rec(T-H+P,Z+180:N=K+I▲M=G+J▲LbI9: {SU}:S=0=>Goto3ΔRec(S,Z+180+U:Prog”5”:Goto91(文件名) A”X1”B”Y1”C”X2”D”Y2”E”LS”H”HZ”RFP:2(文件名) T=L-P:Pol(C-A,D-B:Z=J3(文件名) W=ER:X=T-T^5÷40W^2+T^9÷3456W^4:Y=T^3÷6W-T^7÷336W^3: Pol(X,Y: Rec(I,Z+JF:Q=90T^2÷R÷E÷兀4(文件名) N=A+I▲M=B+J▲5(文件名) X=N+I▲Y=M+J▲6(文件名) V=E÷2-E^3÷240R^2:G=E^2÷24R-E^4÷2688R^3:O=180(T-0.5E)÷R兀:X=V+RsinO:Y=G+(1-CosO)R:Pol(X,Y:Rec(I,Z+JFL=任意桩号 S=居中距离 U=左-90,右+90 X1=ZH(ZY)点X坐标Y1= ZH(ZY)点Y坐标 X2=交点X坐标 Y2=交点Y坐标 E=LS1 V=LS2 R=半径 H=YH(YZ)点桩号 P=ZH(ZY)点桩号 F=左转-1,右转+1任意曲线坐标正反算CASIO-4850计算程序含数据库、测站放样计算(第五次修改-正式版)1.加编数据库及计算总调度程序,计算中不必逐项输入"线元要素",提高运算速度,避免现场忙中出错2.可加入多条线路的数据库,内业输入数据,外业一目了然3.计算直观,人性化4.正算直接输入里程和边距,反算输入近似里程便可5.增加了“计算点与测站点”的距离和方位角计算语句,方便直接放样6.愿收获与大家共享,同时也希望大家提出心得和宝贵建议7.核心计算程序摘自“yshf”一.改动后的程序清单,增设数据库程序,可输入n条线路的数据库1.(QXZDJS 计算总调度程序)M=1=>Prog "SJK1":Prog "SUBSJK"△←┘...........M=n=>Prog "SJKn":Prog "SUBSJK"△←┘2.(SJK1 数据库程序)"1.SZ => XY":"2.XY => SZ":{N,S}:N:S"DKI"←┘S≤本线元终点里程=>U=本线元起点X坐标:V=本线元起点Y坐标:G=本线元起点正切线方位角:P=本线元起点曲率半径:R=本线元终点曲率半径:O=本线元起点里程:H=本线元终点里程:Q=本线元左直右偏向(0或1、-1):Goto0Δ←┘S≤下一线元终点里程=>O=。
本程序是在yshf及hangniu1973两位师傅的成果上作的一次改动,修改内容主要有一下几点:1、在变量符号上修改,目的是更能与工地实际结合;2、把原主程序分为两个,更能灵活调用;3、加入放样程序,做到坐标计算到放样一体化;4、使得整个测量放样过程更加简单。
附件(点击下载):GAUSSLE坐标正反算fx-4850程序源程序1.正算主程序 GSZSI"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)”=90:(注:此处若不给M赋值,则可计算斜交点)J=Abs(K-O):Prog"SUB1":”FWJ=”:F=F-M:”X=”:X=X:Pause0: ”Y=”:Y=Y◢2. 反算主程序 GSFSXY: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.2307653449:Z[1] =0.5:X=I+J(Acos(G+QCJ(1÷P+CJD)×180÷π)+Bcos(G+QEJ(1÷P+EJD)×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+CJD)×180÷π)+Bsin(G+QEJ(1÷P+EJD)×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+LsinF4. 曲线元要素数据库:DA T-MK≥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=**⊿⊿←┘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=**⊿⊿←┘(注:如有多个曲线元要素继续添加入数据库DA T-M中)5、M线(坐标正算)组合程序 MG-ZBProg”DAT-M”:Prog”GSZS”6、M线(坐标计算-放样)组合程序 MG-FYProg”MG-ZB”:Prog”LTKZD”: Prog”FY”7、M线(坐标反算)组合程序 M-GSFBProg”DAT-M”:Prog”GSFS”说明:一、程序功能及原理1.功能说明:本程序由两个主程序——正算主程序(GSZS)、反算主程序(GSFS)和两个子程——正算子程序(SUB1)、线元数据库(DAT-M)构成,可以根据曲线段——直线、圆曲线、缓和曲线(完整或非完整型)的线元要素(起点坐标、起点里程、起点切线方位角、终点里程、起点曲率半径、止点曲率半径)及里程边距或坐标,对该曲线段范围内任意里程中边桩坐标进行正反算。
本程序可以在CASIO fx-4800P计算器及CASIO fx-4850P计算器上运行。
由于加入了数据库(DAT-M),可实现坐标正反算的全线贯通。
组合程序5可实现M线的正算贯通,组合程序7可实现M线的反算贯通,组合程序6可实现坐标计算到放样一体化。
2.计算原理:利用Gauss-Legendre 5点通用公式计算线路中边桩坐标并计算放样数据。
利用待求点至线元起点切线作垂线,逐次迭代趋近原理反算里程及边距。
二、使用说明1、规定(1) 以道路中线的前进方向(即里程增大的方向)区分左右;当线元往左偏时,Q=-1;当线元往右偏时,Q=1;当线元为直线时,Q=0。
(2) 当所求点位于中线时,L=0;当位于中线左侧时,L取负值;当位于中线右侧时,L 取正值。
(3) 当线元为直线时,其起点、止点的曲率半径为无穷大,以10的45次代替。
(4) 当线元为圆曲线时,无论其起点、止点与什么线元相接,其曲率半径均等于圆弧的半径。
(5) 当线元为完整缓和曲线时,起点与直线相接时,曲率半径为无穷大,以10的45次代替;与圆曲线相接时,曲率半径等于圆曲线的半径。
止点与直线相接时,曲率半径为无穷大,以10的45次代替;与圆曲线相接时,曲率半径等于圆曲线的半径。
(6) 当线元为非完整缓和曲线时,起点与直线相接时,曲率半径等于设计规定的值;与圆曲线相接时,曲率半径等于圆曲线的半径。
止点与直线相接时,曲率半径等于设计规定的值;与圆曲线相接时,曲率半径等于圆曲线的半径。
(7)曲线元要素数据库(DA T-M)可根据线型不同分为各个线元段输入到DAT-M中,即分为直线段、缓和曲线、圆曲线等。
(8)正算时可仅输入里程和边距及右交角可实现全线计算,但反算时只能通过首先输入里程K 值读取数据库DA T-M,计算器自动将里程K所在线元数据赋给反算主程序GSFS进行试算,试算出的里程和边距须带入正算主程序GSZS中计算坐标,若坐标吻合则反算正确。
2、输入与显示说明(1)输入部分:X0 ?线元起点的X坐标Y0 ?线元起点的Y坐标K0 ?线元起点里程F0 ?线元起点切线方位角KN ?线元终点里程R0 ?线元起点曲率半径RN ?线元止点曲率半径Q ?线元左右偏标志(左偏Q=-1,右偏Q=1,直线段Q=0)K ?正算时所求点的里程L ?正算时所求点距中线的边距(左侧取负值,右侧取正值,在中线上取零)ANG?正算边桩时左右边桩连线与线路中线的右交角X ?反算时所求点的X坐标Y ?反算时所求点的Y坐标M ? 斜交右角线元要素数据库中K≥O=>K<H=>中的O和H分别为该段线元起点里程和终点里程A、B、Z[4] 是Gauss-Legendre求积公式中的插值系数C 、E、Z[1] 是Gauss-Legendre求积公式中的求积节点(2)显示部分:X=×××正算时,计算得出的所求点的X坐标Y=×××正算时,计算得出的所求点的Y坐标K=×××反算时,计算得出的所求点的里程L=×××反算时,计算得出的所求点的边距三、算例某匝道的由五段线元(直线+完整缓和曲线+圆曲线+非完整缓和曲线+直线)组成,各段线元的要素(起点里程S0、起点坐标X0 Y0、起点切线方位角F0、线元长度LS、起点曲率半径R0、止点曲率半径RN、线元左右偏标志Q)如下:S0 X0 Y0 F0 LS R0 RN Q500.000 19942.837 28343.561 125 16 31.00 269.256 1E45 1E45 0769.256 19787.340 28563.378 125 16 31.00 37.492 1E45 221.75 -1806.748 19766.566 28594.574 120 25 54.07 112.779 221.75 221.75 -1919.527 19736.072 28701.893 91 17 30.63 80.285 221.75 9579.228 -1999.812 19744.038 28781.659 80 40 50.00 100.000 1E45 1E45 0(注:该算例中线元要素Ls为程序修改前须输入的线元长度,程序修改后改为输入线元终点里程KN)放样程序 FYU”XJ”:V”YJ”:W”XH”:Z”YH”:XY:I=W-U:J=Z-V:Pol(I,J):J<0=>J=J+360Δ“HSJL=”:I◢O”HF”=J:X=0=>U=U+LCos(J+P”μ”):V=V+LSin(J+P”μ”):”X=”:U:Pause0:”Y=”:V:≠>I=X-U:J=Y-V: Pol(I,J):J<0=>J=J+360:ΔH”QF”=J:J=H-O:J<0=>J=J+360:Δ“ANG=”:J→DMS (该处不输Pause0语句亦可实现“ANG=”和“QSJL=”的同时出现)“QSJL=”:I凌铁大桥控制点数据库 LTKZDA=21:B=22:C=23:D=24:E=25:F=26:G=27:H=28:I=29←┘T “ZJDH”:←┘T=11=>U=****:V=****⊿←┘T=12=>U=****:V=****⊿←┘T=13=>U=****:V=****⊿←┘T=15=>U=****:V=****⊿←┘T= 4 =>U=****:V=****⊿←┘T= A=>U=****:V=****⊿←┘T= B=>U=****:V=****⊿←┘T= C=>U=****:V=****⊿←┘……………………………(注:如有多个控制点继续添加入数据库LTKZD中)N “HSDH”:←┘N=11=>W=****:Z=****⊿←┘N=12=>W=****:Z=****⊿←┘N=13=>W=****:Z=****⊿←┘N=15=>W=****:Z=****⊿←┘N= 4 =>W=****:Z=****⊿←┘N= A=>W=****:Z=****⊿←┘N= B=>W=****:Z=****⊿←┘N= C=>W=****:Z=****⊿←┘……………………………(注:如有多个控制点继续添加入数据库LTKZD中)组合程式 LTFYProg ”LTKZD”: Prog ”FY”说明:一、程序功能及原理1、功能说明:FY程序有两个功能,当前视点坐标X输入为零时,程式执行转点功能,即首先通过全站仪测定任意转点距置镜点距离L及置镜点与转点连线和置镜点与后视点连线的夹角P”μ”并输入计算器,即可计算出任意转点坐标;另一功能是坐标放样,即输入放样点X、Y坐标,从而计算出与置镜点距离“QSJL=”以及全站仪归零放样拨角“ANG=”(前视方位角-后视方位角)。