5800曲线计算程序
卡西欧5800基本测量程序(完整版)
卡西欧5800基本测量程序(完整版)卡西欧5800 程序(完整版)说明:本程序适用于公路、桥梁、隧道测量。
本程序简单、方便、快捷、拓展功能宽,使用时只需按曲线要素表输入一次就可以计算整条线路(包括高程、超高段横坡),能正、反算,在已知坐标下可以反算出该点桩号及相对宽度,拓展功能有,放边、仰坡、隧道断面测量、开挖轮廓线等。
主程序:MAIN"ZH(θ) F(1)"?M↓ (0为正算、1为反算)If M=θ:Then "ZHUANG HAO"?A:"KUAN DU"?W:Else"X="?H:"Y="?W:"Z="?Q:IfEnd↓(第一个交点参数)(交点桩号)…→P:(切线长度)…→T:(曲线总长)…→S:(圆半径)…→R=:(缓和曲线长)…→L:(第一方位角)…→U:(第二方位角)…→V:(交点X坐标)…→N:(交点Y坐标)…→E:(第一直线长、无为0)…→D:(第一坡度)…→Z〔8〕:(第二坡度)…→ Z〔9〕: (缓和曲线超高段长度)…→Z〔10〕:(曲线偏向,右偏为+1,左偏为-1)…→K ↓If M=θ:Then If A<P-T:Then goto 1 :IfEnd:IfEnd↓Prog"ZFXZ"↓If K=θ:Then goto 2 :IfEnd↓………… (中间交点参数)Prog"ZFXZ"↓If K=θ:Then goto 2 :IfEnd↓………… (最后一个交点参数)If M=θ:Then If A>P-T+S+D:Then Goto 1 :IfEnd:IfEnd↓Prog"ZFXZ"↓If K=θ:Then goto 2 :IfEnd↓Lb1 1:"NO TASK"↓Lb1 2:If M=1:Then If A=1:Then "ZHUANG HAO":Z◢"SJ KUAN DU":B◢IfEnd:IfEnd↓"-------END-------"KUAN DU (拓展功能程序,用于反算)1→M:Prog"MAIN"↓Z→A:W→E:θ→W↓Prog"GAO CHENG"↓E→W↓Q-F→P↓If P≤……(从小至大):Then ……→D:Goto 1:IfEnd↓……(同上)Lb1 1↓"……":D◢(同上) ◢"----------END---------"YUANK(B÷(2R))→F↓2R Sin(K F r)→C ↓J+F r→J ↓Prog"XZBH"HHQXB-B^5÷(9θ(RL)2)→C ↓KB2÷(6RL)→F ↓J+ F r→J↓Prog"XZBH"PYJSIf O=θ:Then"YUAN":J+F r→J:IfEnd↓If O=1:Then"HHQX":J+2F r→J:IfEnd↓If O=2:Then"LINE":J+18θ→J:IfEnd↓W→C↓If A>P-T+S-L:Then J-9θ→J:Else J+9θ→J:IfEnd↓Prog"XZBH"↓"X=":X◢"Y=":Y◢QXCS(有改)Prog"QDZB"↓If A≤P-T+L:Then A-P+T→B:U→J:1→O: Prog"HHQX": Goto 1 :IfEnd↓If A≤P-T+S-L:Then A-P+T-L→B:θ→0:L-L^3÷(90R2)→C:KL÷(6R)→F:U+F r→J: Prog"XZBH":U+3F r→J: Prog"YUAN": Goto1:IfEnd↓If A≤P-T+S:Then P-T+S-A→B:1→O:-K→K:V+180→J: Prog"HHQX": Goto 1 :IfEnd↓If A≤P-T+S+D:Then 2→O:A-P+T-S→C: Prog"XZBH":IfEnd↓Lb1 1:↓Prog"PYJS"↓Prog"GA0 CHENG"QDZBN→X:E→Y:T→C↓If A>P-T+S-L:Then V→J: Else U+18θ→J:IfEnd↓Prog"XZBH"↓X→Z〔5〕:Y→Z〔6〕JDTZIf Z〔1〕< θ:Then Z〔1〕+ 36θ→Z[1]:IfEnd↓If Z〔1〕≥ 36θ:Then Z〔1〕- 36θ→Z[1]:IfEnd↓If Z〔2〕< θ:Then Z〔2〕+ 36θ→Z[2]:IfEnd↓If Z〔2〕≥ 36θ:Then Z〔2〕- 36θ→Z[2]:IfEnd↓FWJθ→I:θ→J↓Pol(H-G,W-Z) ↓J<θ⇒J+36θ→J↓J→FDOTLINEPol(H-X,W-Y):I→N↓Pol(G-H,Z-W):I→E ↓Pol(X-G,Y-Z):I→D↓(N+E+D)÷2→I↓√(I(I-N)(I-E)(I-D))→I ↓2I÷D→I ↓ZSPDIf A≤P-T+S+D:Then Prog"QXCS":θ→K:IfEnd ↓FSPDIf K=-1:Then If Z〔1〕< Z〔2〕:Then If F≤Z〔1〕:Then Goto 1 :IfEnd:If F≥Z〔2〕:Then Goto 1 :IfEnd:Else If F≤Z〔1〕:Then F≥Z〔2〕:Then Goto 1 :IfEnd:IfEnd:IfEnd:IfEnd↓If K=1:Then If Z〔1〕> Z〔2〕:Then If F≥Z〔1〕:Then Goto 1 :IfEnd :If F≤Z〔2〕:Then Goto 1 :IfEnd:Else If F≥Z〔1〕:Then If F≤Z[2]:Then Goto 1 :IfEnd:IfEnd:IfEnd:IfEnd↓θ→A: Goto 2↓Lb1 1↓If O=θ:Then Prog"FSYUAN":IfEnd↓If O=1:Then Prog"FSHHQX":IfEnd↓1→A↓Lb1 2FSTJU-90K→Z[1]↓V-90K→Z[2]↓Prog"JDTZ"↓P-T→A↓-1→O↓Prog"JDZB"↓Prog"FSPD"↓If A=θ:Then Goto 1 :IfEnd↓(有改)Z[1]→Z[1]: Z[1]+K(L÷(2R))r→Z[2]:1→O↓Prog"JDTZ"↓Prog"JDZB"↓Prog"FSPD"↓If A=1:Then θ→K: Goto 2 :IfEnd↓Z[5]→X:Z[6]→Y:(KL)÷(6R)→F:L-L^3÷(90R2)→C:U+F r→J↓Prog"XZBH"↓U+3F r+90K→J:R→C↓Prog"XZBH"↓X→G:Y→Z↓Prog"FWJ"↓Z[2]→Z[1]:Z[1]+K((S-2L)÷R)r→Z[2]:θ→0↓Prog"JDTZ"↓Prog"FSPD"↓If A=1:Then θ→K:Goto 2:IfEnd↓-K→K:V+9θK→Z[1]:Z[1]+K(L÷(2R))r→Z[2]:1→O↓Prog"JDTZ"↓P-T+S→A↓Prog"JDZB"↓Prog"FSPD"↓If A=1:Then θ→K:Goto 2:IfEnd↓Lb1 1↓If D>θ:Then P-T+S→A:Prog"FSLINE":If A=1:Then θ→K:IfEnd:IfEnd↓Lb1 2FSYUAN"YUAN"↓36θ+K(F-Z[1])→F ↓F≥36θ⇒F-36θ→F⊿↓P-T+L+πRF÷18θ→Z:If K=1:Then R-I→B: Else I-R→B:IfEnd↓FSHHQX"HHQX"↓Z[5]→X:Z[6]→Y ↓Z[1]+18θ→J:R→C↓Prog"XZBH"↓X→G:Y→Z↓Z[5]→X:Z[6]→Y ↓Prog"DOTLINE"↓If I<1:Then θ→B:Goto 3: Else I→B: Prog"FSHHQX1":I→Z[7]:B+I÷10→B: Prog"FSHHQX1":If I>Z[7] :Then Goto 1: Else:Goto 2:IfEnd:IfEnd↓Lb1 1↓B-I÷2→B: Prog"FSHHQX1"↓If I<1:Then -I→I:Goto 3: Else Goto 1:IfEnd↓Lb1 2↓B+I÷2→B: Prog"FSHHQX1"↓If I<1:Then Goto 3: Else Goto 2:IfEnd↓(有改)Lb1 3↓If A>P-T+L:Then P-T+S-B-I→Z: Else P-T+B+I→Z:IfEnd↓If K=1:Then If A<P-T+S-L:Then D-E→B: Else E-D→B:IfEnd:IfEnd ↓If K=-1:Then If A<P-T+S-L:Then E-D→B: Else D-E→B:IfEnd:IfEndFSHHQX1Z[5]→X:Z[6]→Y:Z[1]+9θK→J↓Prog"HHQX"↓X→Z[3]:Y→Z[4]↓R→C:J+2F r+9θK→J↓Prog"XZBH"↓X→G:Y→Z↓Z[3]→X:Z[4]→Y ↓Prog"DOTLINE"Prog"QDZB"↓Z[5]→Z[3]:Z[6]→Z[4] ↓If O=-1:Then P-T+S→A: Prog"QDZB":Z[3]→Z[5]:Z[4]→Z[6]: Else Z[1]+9θK+K(L÷(6R))r→J:L-L^3÷(9θR2)→C: Prog"XZBH":IfEnd ↓(Z[6]-Y+Xtan(Z[2])-Z[5]tan(Z[1]))÷(tan(Z[2])-tan(Z[1]))→G ↓tanZ[2](G-X)+Y→Z↓Prog"FWJ"ZFXZIf M=θ:Then Prog"ZSPD": Else Prog"FSTJ":IfEndFSLINEProg"QDZB"↓X→G:Y→Z:J→N↓Prog"FWJ"↓N→J:F-J→F↓Icos(F)→G↓If G≤D:Then If A>P-T+S-L:Then P-T+S+G→Z:Isin(F)→B:Else P-T-G→Z:-Isin(F)→B:IfEnd :1→A:2→O: Else θ→A:IfEndX+Ccos(J)→X↓Y+Csin(J)→YHENG POIf A≤P-T+L-Z[10] :Then Z[8]→V:Goto 1:IfEnd↓If A≤P-T+L:Then (Z[9]-Z[8])÷Z[10]→E:Z[8]+(A-P+T-L+Z[10])E→V: Goto 1:IfEnd↓If A≤P-T+S-L:Then Z[9]→V:Goto 1:IfEnd↓If A≤P-T+S-L+Z[10]:Then (Z[8]-Z[9])÷Z[10]→E:Z[9]+(A-P+T-S+L)E→V: Goto 1:IfEnd↓Z[8]→V ↓Lb1 1GAO CHENG……(交点桩号)→O:……(交点高程)→D:……(小桩号坡度)→N:……(切线长度)→G:……(圆曲线半径)→R ↓If A≤O-G:Then θ→K: Goto 1:IfEnd↓If A≤O+G:Then 1→K: Goto 1:IfEnd↓(K=0为直线、K=1为凸圆、K=-1为凹圆)……(同上)Lb1 1:Prog"HENG PO"↓K(A-O+G)2÷(2R)→P ↓D+N(A-O)-P+WV→F↓"DM":F◢FWJJS (测回法测坐标)A"XA": B"YA":C"XB": D"YB": K"CHANG DU": G"JIAO DU"↓I=0:J=0:Pol(C-A,D-B):J<0⇒J=J+360⊿↓E=J+G↓J"FWJ"◢X"X"=A+KcosE◢Y"Y"=B+KsinE◢"-------END-------"说明:"JIAO DU"顺时钟为正、逆时针为负,"XA"、"YA"为测站点坐标、"XB"、"YB"为后视点坐标,"X"、"Y"为前视即待测点坐标,"CHANG DU"为测站点到待测点距离。
卡西欧5800直线缓和曲线程序(1)
卡西欧5800直线、缓和曲线程序1. 主程序:TYQXJS″1.SZ=>XY″:″2.XY=>SZ″:″N″?N:″XA″?U:″YA″?V:″DKA″?O:″CA″?G:″LS″?H:″RA″?P:″RB″?R:″Q″?Q: 1÷P→C:(P-R)÷(2HPR)→D: 180÷π→E:If N=1: Then Goto1:Else Goto 2:ifEndLBI 1: ″DKI″?S: ″D″?Z:Abs(S-O)→W:Prog″SUB1″: ″XS″:X⊿″YS″:Y⊿″FS″:F-90⊿Goto 1LbI 2:″X″?X: ″Y″?Y:X→I:Y→J:Prog″SUB2″:O+W→S:″S″:S⊿″Z″:Z⊿Goto 22. 子程序:SUB10.1739274226→A:0.3260725774→B:0.0694318442→K:0.3300094782→L:1-L→F:1-K→M:U+(Acos(G+QEKW(C+KWD))+Bcos(G+QELW(C+LWD))+Bcos(G+QEFW(C+ FWD))+Acos(G+QEMW(C+MWD))→X:Y+W(Asin(G+QEKW(C+KWD))+Bsin(G+QELW(C+LWD))+Bsin(G+QEFW(C+FWD))+Asin(G+QEMW(C+MWD)))→Y:G+QEW(C+WD)+90→F:X+Zcos(F)→X:Y+Zsin(F)→Y3. 子程序:SUB2G-90→T: Abs((Y-V)cosT-(X-U)sin(T))→W:0→Z: Lbl 0:Prog″SUB1″:T +QEW(C+WD)→L :(J-Y)cos(L)-(I-X)sin(L)→Z:IfAbs(Z)<1*10-6: Then Goto1:ElseW+Z→W:Goto0:IfEndLbl 1: 0→Z: Prog″SUB1″: (J-Y) ÷sin(F)→Z4. 输入与显示说明N :选择计算方式,输入1表示进行由里程、边距计算坐标;输入2表示由坐标反算里程和边距。
fx5800平曲线竖曲线程序
PQX(5800平曲线程序) 算左、中、右任意角度及结构物坐标1、Lb1 0:Deg:Prog“A”2、E-D→J3、Arg (cos(J)+ i sin(J))→J4、Abs (J)÷J→H5、S 2÷(24R)-S4÷(2268R3)程序中有两个括弧+ i(S÷2-S3÷(240R2 ))→P6、JH÷2→M7、90÷(Rπ) →N8、(R+ReP (P))tan(M)+ImP (P)→T9、M÷N+S →L10、C-T →U11、A-T(cos(D)+ i sin(D))→B12、If K<U:Then C-K→I:0→F:A-I(cos(D)+i sin(D))→X:Goto1:Else IfK<U+S:Then K-U→W:Goto2:Else If K<U+L-S:Then GotoA:Else If K<U+L:Then U+L-K →W:Goto2:Else GotoB :IfEnd: IfEnd: IfEnd: IfEnd13、Lbl 2:NW 2÷S→F:W-W5÷(40R2S2)+W9÷(3456R6S6)程序中有两个括弧+ i(W3÷(6RS)-W 7÷(336R4S4)程序中有两个括弧→I: If K<U+S:Then Goto3:Else GOto4: IfEnd14、Lbl 3:B+Abs(I)(cos(D+H Arg(I))+ i sin(D+H Arg(I))→X:Goto115、Lbl A:K-U-S→W:2NW+NS→F:R sin(F)+Imp (P)+i(R-R cos(F)+Rep (P)) →I:Goto316、Lbl B:K-U-L→W: 0→F:A+(W+T)(cos(E)+ i sin(E))→X:E→D:Goto117、Lbl4:E-HArg(I)→V:E→D:-H→H:A+T(cos(E)+i sin(E))-Abs(I)(cos(V)+i sin(V))→X:Goto118、Lbl 1:D+HF+Z→Q:“X+Y i=”:X+G(cos(Q)+i sin(Q))+O(cos(Q-Y)+i sin(Q-Y))→X ▲19、Goto 0A(数据库)PQX子程序1、“DK”?K: “L-R”?G: “XJ”?Z:? O:?Y2、If K<141216.781(第二曲线起点):Then 1300(半径) →R: 165 (缓和曲线长) →S:73688.363+61082.739i(交点坐标X+Y i) →A: 140083.413(交点桩号)→C: 297 51 48.67(与前一交点方位角)→D: 236 24 44.84(与后一交点方位角) →E: Return:If End例题:1、”DK”?K:”L-R”?G:”XJ”?Z:O:?Y2、If K<424.235:Then 1000→R:120→S:43812.504+48756.851i→A:-33.942→C:103°3°30°→D:91°8°38°→E:Return:IfEnd3、If K<1663.769:Then 1000→R:120→S:43797.960+49485.331i→A:693.821→C:91°8°38°→D:114°48°17°→E:Return:IfEnd4、If K<3972.554:Then 2000→R: 0→S:43277.777+50610.861i→A:1927.535→C:114°48°17°→D:99°46°44°→E:Return:IfEnd5、If K<6129.653:Then 3000→R:0→S:42846.791+53111.511i→A:4462.027→C:99°46°44°→D:118°18°43°→E:Return:IfEnd6、If K<7223.231:Then 1000→R:120→S:41916.431+54838.510i→A:6415.133→C:118°18°43°→D:80°12°52°→E:Return:IfEndSQX(5800竖曲线程序)1、Lbl 0:Prog“B”2、(B-C)R÷200→T3、If K<J-T:Then H-0.01B(J-K) →X:Else If K<J+T:Then K-J+T→D:H-0.01B(T-D)-D2÷(2R) →X:ElseH+0.01C(K-J) →X:IfEnd:IfEnd:4、X-0→X:Prog“Z”:“Z+Xi=”:X+Z+Xi→Z▲“Y=”:X+Y→Y▲4、Goto 0B(数据库)1、“DK”?K:If K≦140815(下一个竖曲线起点):Then -1000(半径凸 +,凹 -)→R:-2.2(前一纵坡坡度) →B:2.9(后一纵坡坡度)→C: 140200(边坡点桩号)→J:219.755(边坡点高程)→H: Return:IfEnd例子:“DK”?K:If K≦2241.25:Then 8000→R: -0.4 →B: -2→C: 1920→J:31→H: Return:IfEnd If K≦2857:Then-5000→R: -2→B:0.35→C: 2300→J:23.4→H: Return:IfEndIf K≦2939.44:Then18000→R: 0.35→B:-0.35→C: 2650→J:24.625→H: Return:IfEnd If K≦3296.165:Then-10000→R: -0.35→B:0.861→C: 3000→J:23.4→H: Return:IfEnd If K≦3560:Then5000→R:0.861→B:-1.692→C: 3360→J:26.5→H: Return:IfEndIf K≦4117.9:Then-5000→R: -1.692→B:0.714→C: 3620→J:22.1→H: Return:IfEndIf K≦4955.317:Then12000→R:0.714→B:-0.321→C:4180→J:26.1→H: Return:IfEndIf K≦5255.341:Then-7000→R: -0.321→B:1.527→C: 5020→J:23.4→H: Return:IfEnd If K≦5594.478:Then4500→R: 1.527→B:-1.347→C:5320→J:27.98→H: Return:IfEnd If K≦5876.658:Then-7000→R: -1.347→B:0.525→C: 5660→J:23.4→H: Return:IfEnd If K≦6000:Then15000→R:0.525→B:-0.32→C: 5940→J:24.87→H: Return:IfEndZ (5800超高程序)1、Prog“C”:“B”?V2、0.04S÷(0.02+C) →D:A-T→E:E+D→F:E+S→G:G+L→I:I+S→M:M-D→J3、If K<E:Then -0.02V→Z:Z→Y::Goto1:Else If K<F:Then Goto2:Else If K<G:Then H((0.02+C)V(K-E)÷S-0.02V→Z:-Z→Y:Goto1:Else If K<I:Then HVC→Z:-Z→Y:Goto1:Else If K<J:Then H((0.02+C)V(M-K)÷S-0.02V→Z:-Z→Y:Goto1:Else If K<M:Then Goto3:Else -0.02V→Z:Z→Y:Goto1:IfEnd: IfEnd: IfEnd: IfEnd: IfEnd: IfEnd4、Lbl 2:IfH<0(零):Then0.02VH→Z:(0.02+C)V(K-E)/S-0.02V→Y:Else(0.02+C)V(K-E)/S-0.02V→Z:-0.02VH→Y: IfEnd: Goto15、Lbl 3:IfH<0:Then0.02VH→Z:(0.02+C)V(M-K)/S-0.02V→Y:Else(0.02+C)V(M-K)/S-0.02V→Z:-0.02VH→Y: IfEnd: Goto1: Lbl 1C程序If K≦141216.781:Then 140083.413→A:0.03→C:-1→H:130→S:1229.28→L:855.675→T: Return:IfEndIf K≦142472.319:Then 141700.107→A:0.03→C:1→H:130→S:608.144→L:483.326→T: Return:IfEndIf K≦143839.524:Then 142976.487→A:0.02→C:-1→H:105→S:634.484→L:504.168→T: Return:IfEndIf K≦145570.280:Then 144509.787→A:0.02→C: 1→H:105→S:928.816→L:670.263→T: Return:IfEndIf K≦148062.26:Then 146191.812→A:0.02→C:-1→H:105→S:822.148→L:621.531→T: Return:IfEndPQXZFS平曲线正反算( 主程序)Lbl 4:“1.SZ=>XY”: “2.SZ=>XY”:?N:?S:Prog “SUB0”1/P→C:(P-R)/(2HPR) →D:180/兀→E:N=1=>Goto1:Goto2:Lbl 1:?Z:Abs(S-O) →W: Prog “SUB1”: “XS=”:X▲“YS=”:Y▲F-90→F: “FS=”:F▲DMS▲Goto4Lbl 2:?X:?Y:X→I:Y→J: Prog “SUB2”:O+W→S: “S=”:S▲“Z=”:Z▲Goto4正算子程序SUB10.1739274226→A:0.3260725774→B:0.0694318442→K:0.3300094782→L:1-L→F:1-K→M:U+W(Acos(G+QEKW(C+KWD))+Bcos(G+QELW(C+LWD))+Bcos(G+QEFW(C+FWD))+Acos(G+QEMW(C +MWD))) →X:V+W(Asin(G+QEKW(C+KWD))+Bsin(G+QELW(C+LWD))+Bsin(G+QEFW(C+FWD))+Asin(G+QEMW(C +MWD))) →Y:G+QEW(C+WD)+90→F:X+Zcos(F) →X:Y+Zsin(F) →Y反算子程序SUB2G-90→T:Abs((Y-V)cosT-(X-U)sinT) →W:0 (零)→Z: Lbl 0: Prog “SUB1”:T+QEW(C+WD) →L:(J-Y)cosL-(I-X)sinL →Z:IfAbs(Z)<1**10-6:Then0 →Z: Prog “SUB1”:(J-Y)/sinF →Z:ElseW+Z→W:Goto0:IfEnd数据库子程序SUB0Goto1Lbl 1:If S<***(线元终点里程):Then***→G(线元起点方位角):***→O(线元起点里程):***→U(线元起点X):***→V(线元起点Y):***→P(线元起点曲率半径):***→R(线元终点曲率半径):***→H(线元起点至终点长度):0或1、-1→Q:Return:IfEndLbl 1:If S<***(线元终点里程):Then***→G(线元起点方位角):***→O(线元起点里程):***→U(线元起点X):***→V(线元起点Y):***→P(线元起点曲率半径):***→R(线元终点曲率半径):***→H(线元起点至终点长度):0或1、-1→Q:Return:IfEnd ………………使用说明:1、一道路中线的前进方向(即里程增大的方向)区分左右,当线元往左偏时,Q=-1;当线元往右偏时Q=1;当线元为直线时Q=02、当所求点位于中线时,Z=0;当所求点位于中线左侧时Z取负值;位于右侧时Z取正直3、当线元为直线时,其起点、止点的曲率半径为无穷大,以10的45次代替4、当线元为圆曲线时,无论其起点、止点与什么线元相接,其曲率半径均等于圆弧半径5、当线元为完整缓和曲线时,起点与直线相接时,曲率半径为无穷大,以10的45次代替;当与圆曲线相接时,曲率半径等于圆曲线的半径。
卡西欧5800测量坐标计算程序
一.使用说明:1.规定:(1)以道路中线的前进方向区分线路的左右偏转方向,线路左偏Q=-1,线路右偏Q=1,直线Q=0。
(2)当所求点位于线路中线时,Z=0;当位于左侧时,Z取负值;当位于右侧时,Z取正值。
(3)当线元为直线时,其起终点的曲率半径为无穷大,取10的45次方代替。
(4)当线元为圆曲线时,起终点曲率半径为圆曲线半径。
(5)当线元为缓和曲线时,起终点曲率半径与直线相接取10的45次方代替,与圆曲线相接取圆曲线半径。
2.输入与显示说明:(1)输入部分:N?:选择计算方式,输入1表示由里程边距计算坐标,输入2表示由坐标计算里程边距。
X0?线元起点X坐标。
Y0?线元起点Y坐标。
S0?线元起点里程。
F0?线元起点切线方位角。
LS?线元长度。
R0?线元起点曲率半径。
RN?线元终点曲率半径。
Q?线元左右偏标志(左偏=-1,右偏=1,直线=0)S?正算时所求点里程。
Z?正算时所求点距中线边距。
位于线路左侧输入负值,在右侧输入正值。
AR?斜交角度。
(为线路右角,在0-180度之间)X?反算时所求点X坐标。
Y?反算时所求点Y坐标。
(2)显示部分:XS=计算结果,所求点X坐标。
YS=计算结果,所求点Y坐标。
FS=计算结果,所求点切线方位角。
S=计算结果,反算时所求点里程Z=计算结果,反算时所求点边距。
二.程序清单1(用于任意曲线元的坐标计算)1.主程序(TYQXJS)″1.SZ=>XY″:″2.XY=>SZ″:?N:″X0″?U:″Y0″?V:″S0″?O: ″F0″?G:″LS″?H:″R0″?P:″RN″?R:?Q:1÷P→C:(P-R) ÷(2HPR) →D:180÷π→E:If N=1: THEN Goto 1:Else Goto 2:IfEnd:Lbl 1:?S:”D(Z-,Y+)=”?Z:90→T:”O=”?T:Abs(S-O) →W:Prog ″SUB1″:″XS″:X◢″YS″:Y◢″FS″:F◢Goto 1:Lbl 2:?X:?Y:I→X:J→Y:Prog ″SUB2″:″S″:O+W→S:◢″Z″:Z◢Goto 22.正算子程序(SUB1)0.1739274226→A:0.3260725774→B:0.0694318442→K:0.3300094782→L:1-L→F:1-K→M:U+W(Acos(G+QEKW(C+KWD))+Bcos(G+QELW(C+LWD))+Bcos(G+QEFW(C+FWD))+Acos(G+QEMW(C+MWD))) →X:V+W(Asin(G+QEKW(C+KWD))+Bsin(G+QELW(C+LWD))+Bsin(G+QEFW(C+FWD))+Asin(G+QEMW(C+MWD))) →Y:G+QEW(C+WD) →F:X+Zcos(F+T) →X:Y+Zsin(F+T) →Y3.反算子程序(SUB2)G-90→T:Abs((Y-V)cos(T)-(X-U)sin(T)) →W:0→Z:Lbl 0:Prog ″SUB1″:T+QEW(C+WD) →L:(J-Y)cos(L)-(I-X)sin(L)→Z:IF Abs(Z)<1E-6 :Then Goto 1:Else W+Z→W:Goto 0 : IfEnd:Lbl 1:0→Z:Prog ″SUB1″:(J-Y)÷sin(F)→Z 三.用于提前将曲线元要素输入子程序,计算时只输入里程桩号与边距。
5800平曲线和竖曲线计算程序。以验证过
5800平曲线和竖曲线计算程序。
以验证过5800平曲线程序1.主程序Lbl 4:"1.SZ => XY":"2.XY => SZ":?N:?S:Prog“SUB0”↙1÷P→C: (P-R)÷(2HPR) →D:180÷∏→E:N=1 => Goto1:Goto2:↙Lbl 1:? Z:Abs(S-O) →W:Prog "SUB1":"XS=":X◢"YS=":Y◢F-90→F:“FS=”:F▲DMS◢D:X+DCos(F)→X: "X=":X◢Y+DSin(F)→Y: "Y=":Y◢Goto4↙Lbl 2:?X:?Y:X→I:Y→J:Prog“SUB2”:O+W→S:“S=”:S◢“Z=”:Z◢Goto4↙2. 正算子程序(SUB1)0.1739274226→A:0.3260725774→B:0.0694318442→K:0.3300094782→L:1-L→F:1-K→M:U+W(Acos(G+QEKW(C+KWD))+Bcos(G+QELW(C+LWD))+B cos(G+QEFW(C+FWD))+Acos(G+QEMW(C+MWD))) →X:V+W(Asin(G+QEKW(C+KWD))+Bsin(G+QELW(C+LWD))+Bsin(G+QEFW(C+FWD))+Asin(G+QE MW(C+MW D))) →Y:G+QEW(C+WD)+90→F:X+Zcos(F)→X:Y+Zsin(F)→Y2. 反算子程序(SUB2)G-90→T:Abs((Y-V)cosT-(X-U)sinT) →W:0→Z:Lbl 0:Prog "SUB1":T+QEW(C+WD) →L:(J-Y)cos(L)-(I-X)sin(L)→Z:IF Abs (Z)<10-6:T hen Goto1:Else W+Z→W:Goto 0:IfEndLb1 1:0→Z:Prog "SUB1" :(J-Y)÷sin(F)→ZSUB0 数据库子程序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,每增加个工程增加一个文件。
5800全线竖曲线程序(带数据库)
5800全线竖曲线程序(带数据库)
Lbl 0:“DK”?L回车
If L﹤0:Then Goto 4:IfEnd回车
If L﹤下一线元起点里程(本线元终点里程):Then 本线元起点里程→E:本线元起点内轨顶面高程→K:本线元坡度→F:Goto 3:IfEnd 回车
If L﹤下一线元起点里程:Then 本线元起点里程→E:本线元起点内轨顶面高程→K:竖曲线半径→R:本线元坡度→F:Goto 2:IfEnd回车。
Goto 0:If End回车(第N-1线元数据要素)。
Goto 0:If End回车(第N线元数据要素)
注:1、有竖曲线时凸曲线时返回Goto 2:IfEd回车
2、有竖曲线时凹曲线时返回Goto 1:IfEd回车
3、一般坡度时返回Goto 3:IfEnd回车
Lbl 1:L-E→S:“H=”:S*tan(tan1-(F)+90*S÷(∏*R))+K→H▲Goto 4回车
Lbl 2:L-E→S:“H=”:S*tan(tan1-(F)-90*S÷(∏*R))+K→H▲Goto 4回车
Lbl 3:“H=”:K+(L-E)*F→H▲
Goto 4回车
Lbl 4:“LH=”?J:“I”?I:“D”?D:H+J+I*D→V回车
“BH=”:V→V▲
Lbl 5:Goto 0:IfEnd回车
说明:
输入部分:1、DK?为所求的里程;
2、LH?为所求点高程距内轨顶面的垂直距离;
3、I?为所求的横坡坡比;
4、D?为所求高程点距中线的边距。
显示结果:1、所求里程对应的内轨顶面高程;
2、BH=为所求点或边坡点的高程
席崇辉
2010年3月26日。
CASIO5800计算器公路竖曲线全线高程计算程序
“SQXJSCX”↙Lb1 1↙CLs:Fix 3↙(这句可以不要)“K=”?k◢ (计算点里程输入)If k<67549.755 AND K≥66894.3 :Then -0.00052→A : 0→B : 67394.3→S : 67.37→G : 600000→R : Goto 2 : IfEnd↙If k<68708.391 AND K≥67549.755 :Then -0.004 8→A : -0.00052→B : 68494.3→S :66.8→G : 100000→R : Goto 2 : IfEnd↙If k<本段竖曲线终点里程 AND K≥前一竖曲线终点里程:Then -0.0048→前坡(大里程向)A : -0.00052→后坡(小里程向)B : 68494.3→竖曲线交点里程S :66.8→交点高程G : 100000→曲率半径R : Goto 2 : IfEnd↙………依次类推,计算原始数据完成输入,坡度换算成小数。
Lb1 2↙S-K→L :A-B→W : Abs(R*W/2)→T : S-T→C : S+T→D ↙If K≤C : Then G-L*B →H : Goto 5 : Else If K≤S : Then Goto3 : Else If K≤D : Then Goto4 : IfEnd : IfEnd : IfEnd↙Lb1 3↙If W>0 : Then G+(C-K)^ 2/2/R-L*B→H : Goto 5 : Else If W<0 : Then G-(C-K) ^2/2/R-L*B→H : Goto 5 : IfEnd : IfEnd↙Lb1 4↙If W>0 : Then G+(K-D) ^2/2/R-L*A→H : Goto 5 : Else If W<0 : Then G-(K-D)^ 2/2/R-L*A→H : Goto 5 : IfEnd : IfEnd↙Lb1 5↙H-0.304→H↙ (0.304为中心~路肩高差) (H-0→H↙则计算出的为中桩设计高程)“H=”:H◢Goto 1↙If k<本段竖曲线终点里程《指的是本段圆曲线终点》 AND K≥前一竖曲线终点里程《指前一段圆曲线终点》:Then -0.0048→前坡(大里程向)A : -0.00052→后坡(小里程向)B : 68494.3→竖曲线交点里程S :66.8→交点高程G : 100000→曲率半径R : Goto 2 : IfEnd↙。
卡西欧5800测量实用程序(含直线、圆曲线、大地转施工程序)
卡西欧5800测量实用程序(含直线、圆曲线、大地转施工程序)卡西欧5800测量实用程序(含直线、圆曲线、大地转施工程序)一、直线计算程序0→I:0→J:”X0”?D:”Y0”?E:”X1”?B:”Y1”?C:Pol(B-D,C-E):J →A:If A<0:Then A+360→A:Else A→A:IfEnd:Lbl 0:?O:?S:If O≠0:Then Goto 1:IfEnd:D+Scos(A) →X:”X=”:X ◢E+Ssin(A) →Y:”Y=”:Y ◢Goto 0:Lbl 1:D+Scos(A)+Ocos(A+90) →X:”X=”:X ◢E+Ssin(A)+Osin(A+90) →Y:”Y=”:Y ◢Goto 0说明:输入程序时注意区别字母O 与数字0程序运行时符号说明X0? Y0? 分别输入直线起点的XY 坐标值X1? Y1? 分别输入直线终点的XY 坐标值O? 输入边桩与中桩的距离( 左边桩为负值, 右边桩为正值), 如计算中桩坐标输入0S? 输入所求点到直线起点的距离二、圆曲线计算程序0→I:0→J: ”X0”?C:”Y0”?D:”X1”?E:”Y1”?F:?R:”L:-1 R:1”?N:”ZY”?W:Lbl 0:”LN”?T:T-W→O:Pol(E-C,F-D):I→S:J→A: If A<0:Then A+360→A:Else A →A:IfEnd:sin-1(S÷(2R)) →K:2∏RK÷180→L:180O÷(2∏R) →G:(2R)sin(G) →H:C+Hcos(A-KN+GN) →X:”X=”:X ◢D+Hsin(A-KN+GN) →Y:”Y=”:Y ◢R-0.5√(4R2-H2) →Q:”Q=”:Q ◢“S=”?V:If V=0:Then Goto 0:IfEnd:”L:-90 R:90”?U:X+Vcos(A-KN+2GN+U) →X:”X=”:X ◢Y+Vsin(A-KN+2GN+U) →Y:”Y=”:Y ◢Goto 0说明:输入程序时注意区别字母O 与数字0程序运行时符号说明X0? Y0? 分别输入直线起点的XY 坐标值X1? Y1? 分别输入直线终点的XY 坐标值R? 输入圆曲线半径L:-1 R:1? 圆曲线向左转弯时输入-1, 向右转弯时输入1ZY? 输入起点桩号LN? 输入所求点桩号( 按下exe 键后显示中桩坐标)S? 输入所要求的边桩与中桩的距离L:-90 R:90 要求左边边桩输入-90, 右边边桩输入90( 按下exe 键后显示边桩坐标)三、大地转施工“QK=”?Z:“QX=”?A:“QY=”?B:“ZX=”?O :“ZY=”?Q ↙Pol( O -A,Q-B) ↙J<0=>J+360→J ↙J>360=>J-360→J ↙J→F:“JF=”:F ◆DMS ◢Lb1 0 ↙X:?Y ↙Pol (X-A,Y-B):I→D ↙J<0=>J+360→J ↙J>360=>J-360→J ↙J-F→T:T→G ↙T<0=>T+360→G ↙T>360=>T-360→G ↙Z+Dcos (G)→K:“K=”:K ◢Dsin (G)→C:“C=”:C ◢GoTo 0 ↙说明:QK-- 输入线路起始点里程QX-- 输入线路起始点中桩X 坐标QY-- 输入线路起始点中桩Y 坐标ZX-- 输入线路前进方向中桩X 坐标ZY-- 输入线路前进方向中桩Y 坐标JF=-- 显示线路测量坐标方位角X-- 输入线路附近任意点测量X 坐标Y-- 输入线路附近任意点测量Y 坐标K-- 显示计算结果:里程桩号,即工程X 坐标C-- 显示计算结果:左右偏距,即工程Y 坐标, 中桩=0 ,左偏= 负值,右偏= 正值。
5800计算器全线坐标计算放样正反算程序
5800计算器全线坐标计算放样正反算程序(定稿)彭赐明主程序坐标正反算程序名称:ZBZFSLB1 A↙Cls : Fix 4 : 30→Dim Z :"0=ZS,1=FS"?Z ↙If Z=0:Then Goto B:IfEnd↙(Z=0进入里程点坐标正算)If Z=1:Then Prog"FSLCBZ ": Goto A:IfEnd↙(Z=1进入反算里程边桩)Lb1 B ↙“K=”?K :(计算里程)Prog"SJK1 ":Prog”ZBFY” :Goto A↙子程序数据库 SJK1IF K<本段曲线终点里程 AND K≥上段曲线终点里程:THEN 本段终点里程→Z[1] : 上段曲线终点里程→Z[2] :1→O(注:左偏曲线输入-1→O,右偏曲线输入1→O): 半径→R : 曲线偏角→A:第一缓和曲线→Z[6] : 第二缓和曲线→Z[7] : 交点X→B :交点Y→C : 小里程向交点方位角→E : 交点向大里程方位角→F : Prog”XLZBJSCX”:Return: IFEND↙IF…………Prog”XLZBJSCX”:Return:IFEND(曲线段分段输入)↙补充直线段输入如下(单独直线段)IF K<本段直线终点里程AND K≥本段直线起点里程:THEN 本段直线终点里程→Z[3]:终点X→Z[16]:终点Y→Z[17]:方位角→E: Z[16]+ (K- Z[3])*COS E→Z[18]:Z[17]+ (K- Z[3])*SIN E→Z[19] : Return:IFEND子程序坐标正算,名称:XLZBJSCXLB1 2 ↙(曲线要素计算)Z[6]/2- Z[6]^3/(240*R^2)+ Z[6]^5/(34560*R^4) →Z[8] ↙(M1)Z[7]/2- Z[7]^3/(240*R^2)+ Z[7]^5/(34560*R^4) →Z[9] ↙(M2)Z[6]^2/(24*R)- Z[6]^4/(2688*R^3) →Z[10] ↙(P1)Z[7]^2/(24*R)- Z[7]^4/(2688*R^3) →Z[11] ↙(P2)π*A*R/180+0.5*( Z[6]+ Z[7])→Z[25] ↙(曲线总长)90* Z[6]/(R*π) →Z[14] ↙(第一缓和曲线总偏角)90* Z[7]/(R*π) →Z[15] ↙(第二缓和曲线总偏角,可以省略)Z[8]+(R+Z[10])TAN(A/2)-(Z[10]-Z[11] )/SIN A→Z[12]↙(切线T1)Z[9]+(R+Z[11])TAN(A/2)+(Z[10]-Z[11] )/SIN A→Z[13]↙(切线T2)B+ Z[12]*COS (E+180)→ Z[16] ↙(ZH点X)C+ Z[12]*SIN(E+180)→ Z[17] ↙(ZH点Y)Z[1]- Z[25]→Z[3] ↙(ZH点里程)Z[3]+ Z[6]→Z[4] ↙(HY点里程)Z[1]- Z[7]→Z[5] ↙(YH点里程)GOTO 3 ↙LB1 3 ↙(判断里程点与曲线关系)IF K≤Z[3] AND K> Z[2] : THEN GOTO 4 : IFEND ↙IF K≤Z[4] AND K> Z[3] : THEN GOTO 5 : IFEND ↙IF K≤Z[5] AND K> Z[4] : THEN GOTO 6 : IFEND ↙IF K≤Z[1] AND K> Z[5] : THEN GOTO 7 : IFEND ↙LB1 4 ↙(里程小于直缓点直线独立坐标)K- Z[3] →Z[23] : 0→Z[24] : E→T : GOTO 8↙LB1 5 ↙(第一缓和曲线独立坐标)K- Z[3] →H ↙H-H^5/(40*R^2* Z[6]^2)+H^9/(3456*R^4* Z[6]^4) →Z[23] ↙H^3/(6*R* Z[6])-H^7/(336*R^3* Z[6]^3) →Z[24] ↙90*H^2/( R*π* Z[6]) →T ↙IF O>0 :THEN T +E→T : ELSE E-T →T : T<0=>360+T→T : IFEND ↙GOTO 8 ↙LB1 6 ↙(圆曲线独立坐标)K- Z[4] →H ↙H*180/( R*π)+ Z[14]→T ↙R*SIN T+ Z[8]→Z[23] ↙R*(1-COS T)+ Z[10]→Z[24] ↙IF O>0 :THEN T +E→T : ELSE E-T →T : T<0=>360+T→T : IFEND ↙GOTO 8 ↙LB1 7 ↙(第二缓和曲线独立坐标)Z[1] -K →H ↙H-H^5/(40*R^2* Z[7]^2)+H^9/(3456*R^4* Z[7]^4) →U↙H^3/(6*R* Z[7])-H^7/(336*R^3* Z[7]^3) →V ↙90*H^2/( R*π* Z[7]) →T ↙Z[13]COS A+ Z[12]-U*COS A-V*S IN A→Z[23] ↙Z[13]*SIN A-U*SIN A+V*COS A→Z[24]↙IF O>0 :THEN F-T→T : T<0=>360+T→T : ELSE F+T →T : IFEND ↙GOTO 8 ↙LLb1 8IF O<0 : THEN - Z[24]→Z[24] : IFEND ↙Z[16]+Z[23]*COS E-Z[24]*SIN E→Z[18] ↙Z[17]+Z[23]*SIN E+Z[24]*COS E→Z[19] ↙ReTurn↙子程序反算里程边桩,名称:FSLCBZLb1 1↙"XK="?X:"YK="?Y↙(输入任意测点的XY坐标):“K=”?K (试算里程,任意输入标段内里程点即可,也可以输入大致的估算里程加快速度)↙Lb1 2↙Prog"SJK1 ":T-90 →W:W<0=>360+W→W:Abs((Y-Z[19])*Cos W-(X-Z[18])*Sin W)→S↙If S<0.0001:Then Goto 4:Else Goto 3:Ifend↙Lb1 3↙K+S→K: Prog"S JK1":T-90 →W:W<0=>360+W→W:Abs((Y-Z[19])*Cos W-(X-Z[18])*Sin W)→Q↙If Q<0.0001 :Then Q→S: Goto 4:Else IF Q<S: THEN K+Q→K: Goto 2 :Else IF Q>S :THEN K-Q→K:G oto 2:Ifend:Ifend:Ifend↙Lb1 4↙Pol (X-Z[18],Y-Z[19]:"DP(-Z+Y)=":I◢(偏距)(由于该程序不能准确判断边桩左右方向,暂作修改,取消左右边判定)"K=":K+S→K◢(里程)Return↙子程序坐标放样:ZBFYLB1 0 ↙“XHS="?G(后视点X):"YHS="?L(后视点Y):"XZJ="?M(置镜点X):"YZJ="?N(置镜点Y):Pol(G-M,L-N):"DH=":I(后视距)◢J<0=>J+360→J:"FH=":J→DMS◢(后视方位角) “QXJ=” :T◢(计算里程点切线方位角,可以不显示)“XI=” : Z[18] ◢(中线X)“YI=” : Z[19] ◢(中线Y)Pol(Z[18]-M,Z[19]-N):"DI=":I(中桩放样距)◢J<0=>J+360→J:"FI=":J→DMS◢(中桩放样方位角)“PJ=”?P◢(输入边桩与线路夹角,左-右+)“PD=”?D◢(输入边桩距)Z[18]+D*COS(T+P) →Z[20] ↙Z[19]+D*SI N(T+P) →Z[21] ↙“XP=”: Z[20] ◢(边桩X)“YP=”: Z[21] ◢(边桩Y)Pol(Z[20]-M,Z[21]-N):"DP=":I◢(边桩放样距)J<0=>J+360→J:"FP=":J→DMS◢(边桩放样方位角)Return↙。
卡西欧5800完整程序
卡西欧5800计算程序(请仔细核对)(程序输完毕后记得先在普通模式扩展变量,输入:35→Dimz,按EXE键,出现Done,扩展成功)ZHYHZ(不运行,该程序为主线坐标的计算程序)E2÷24÷R→Z[1]: E÷2-E^(3)÷(240R2) →Z[2]: F2÷24÷R→Z[3]: F÷2-F^3÷(240R2) →Z[4]: (R+Z[1])tan(H÷2)+Z[2]-(Z[1]-Z[3])÷sin (H)→Z[5]: (R+Z[3])tan (H÷2)+Z[4]+(Z[1]-Z[3])÷sin (H)→Z[6]: tan-1 ((R+Z[1])÷(Z[5]-Z[2]))→ Z[7]: tan-1 ((R+Z[3])÷(Z[6]-Z[4])) →Z[8]: E÷R×90°÷π→Z[9]: F÷R×90°÷π→Z[10]: G+DH→Z[11]: A-Z[5]→Z[12]: Z[12]+E→Z[13]: Z[13]+( 90°-Z[7]-Z[9])Rπ÷180°→Z[14]: Z[13]+(H-Z[9]-Z[10]) Rπ÷180°→Z[15]: Z[15]+F→Z[16]: B+Z[5]cos (G-180°)→Z[17]: C+Z[5]sin (G-180°)→Z[18]: B+Z[6]cos (Z[11])→Z[19]: C+Z[6]sin (Z[11])→Z[20] ←┚If K≤Z[14]:Then E→Q: K-Z[12] →L: Else F→Q: Z[16]-K→L:IfEnd ←┚If K≤Z[12]: Then Goto 1:Else If K>Z[12] And K≤Z[13]: Then Goto 2: Else If K>Z[13] And K≤Z[14]: Then Goto 3: Else If K >Z[14] And K≤Z[15]: Then Goto 4: Else If K>Z[15] And K≤Z[16]: Then Goto 5: Else If K>Z[16]: Then Goto 6:IfEnd:IfEnd:IfEnd:IfEnd:IfEnd:IfEnd←┚LbI 1:G→Z[26]: Z[17]-Lcos (G-180°)→Z[21]: Z[18]-Lsin(G-180°) →Z[22]: Goto 9←┚LbI 2: L-L^5÷(40R2Q2) →Z[23]: L^(3)÷(6RQ)- L^(7)÷(336R^(3)Q^(3)) →Z[24]: G+DL2×90°÷(QRπ) →Z[26]: Goto 7←┚LbI 3: (L-Q)×180°÷(Rπ)+Z[9]→Z[25]: Rsin (Z[25])+Z[2]→Z[23]: R(1-cos (Z[25]))+Z[1]→Z[24]: G+DZ[25]→Z[26]: Goto 7←┚LbI 4: (L-Q)×180°÷(Rπ)+Z[10]→Z[25]: Rsin( Z[25])+Z[4]→Z[23]: R(1-cos (Z[25]))+Z[3]→Z[24]: Z[11]-DZ[25]→Z[26]: Goto 8←┚LbI 5: L-L^5÷(40R2Q2)→Z[23]: L^(3)÷(6RQ)- L^7÷(336R^(3)Q^(3))→Z[24]: Z[11]-DL2×90°÷(QRπ)→Z[26]: Goto 8←┚LbI 6: Z[11]→Z[26]: Z[19]-L×cosZ[11]→Z[21]: Z[20]-Lsin (Z[11])→Z[22]: Goto 9←┚LbI 7: Z[17]+Z[23]cos(G)+Z[24]cos(G+D×90°)→Z[21]: Z[18]+ Z[23]sin(G)+Z[24]sin(G+D×90°)→Z[22]: Goto 9←┚LbI 8: Z[19]+Z[23]cos(Z[11]+180°)+Z[24]cos(Z[11]+ D×90°)→Z[21]: Z[20]+Z[23]sin(Z[11]+180°)+Z[24]sin(Z[11]+D×90°)→Z[22]: Goto 9←┚LbI 9: "JJ"?N:"PJ"?P: "X=":Z[21]+Pcos(z[26]+N)→X◢"Y=": Z[22]+Psin(Z[26]+N)→Y◢"QXFWJ="DMS◢←┚ZXZB(该程序为主线程序,只运行该程序)"CZX"?S:"CZY"?W ←┚LbI 0: "K"?K: If K<54074.263(第1条曲线的终点桩号带大桩号,也就是是缓直点桩号,下面同上): Then Goto A:Else If K<56247.409 (第2条曲线的终点桩号带大桩号)And K≥54074.263(第1条曲线的终点桩号带大桩号): Then Goto B:Else If K<58007.266 And K ≥56247.409: Then Goto C:IfEnd:IfEnd:IfEnd←┚(有几条曲线就是几个IfEnd)LbI A: 53203.87266(第1条曲线的交点桩号)→ A: 3560815.660(第1条曲线交点的X坐标)→B:484158.7230(第1条曲线交点的Y 坐标)→ C:76°10'54.56"(计算方位角)→G: 16°49'2.2"(转角)→ H:-1(路线左右偏,左-,右+)→D:4500(半径)→R:430→(第1缓和曲线的长度)E:430(第2缓和曲线的长度)→F:Prog"ZHYHZ": GotoW←┚(下面同上)LbI B: 55278.9644→ A: 3561878.191→B: 485952.830→ C: 59°21'52.34"→G: 19°22'48.7"→ H:+1→D:4500→R:430→E:430→F:Prog"ZHYHZ": GotoW←┚LbI C: 57236.8579→ A: 3562263.305→B: 487888.000→ C: 78°44'41"→G:14°13'19.1"→ H:-1→D:4500→R:430→E:430→F:Prog"ZHYHZ": GotoW←┚LbI W:"PJ1"?T←┚If T=0:Then X→Z: Y→M: GotoP: Else GotoV: IfEnd←┚LbI V:"JJ1"?O←┚"X1=": X+Tcos(Z[26]+N+O)→U◢"Y1=":Y+Tsin(Z[26]+N+ O)→V◢U→Z: V→M: GotoP←┚LbI P:Pol(Z-S,M-W): If J≤0:Then J+360°→J: IfEnd←┚"JL=":I◢"FWJ="DMS◢Goto0显示:1、CZX?(输入仪站X坐标)2、CZY?(输入仪站Y坐标)3、K?(输入所求桩号,带大桩号)4、JJ?(输入夹角,正交输90°,斜交输夹角)5、PJ?(输入偏距,左负右正,中桩输0)6、X=(所求X坐标)7、Y=(所求Y坐标)8、QXFWJ(所求曲线方位角)9、PJ1?(输入左右边桩再偏距离,前负后正,不需要再偏输0)10、JJ1?(输入左右边桩再偏夹角,上面输0,该步不会显示)11、X1= (所求左右边桩再偏X坐标)12、Y1= (所求左右边桩再偏Y坐标)13、JL= (仪站点至所求点的距离)14、FWJ=(仪站点至所求点的方位角)再往下继续计算Z-ZBFSLbI 0"DQX"?W:"DQY"?S←┚"JDX"?A:"JDY"?B:"A0"?G:"ZJ"?H:"Z(-1)Y(1)"?D:"R"?R:"LS1"?E:"LS2"?F:"K"?K←┚LbI 1←┚Norm 1: Prog"ZHYHZ": Pol(W-Z[21],S-Z[22]): If J>0:Then J →J:I→I: Else J+360°→J: I=I:IfEnd←┚J-Z[26]→Z[27]:Icos(Z[27])→Z[28]:K+Z[28]→K: If Abs(Z[28]≥0.001:Then Goto1:Else Fix 3:IfEnd:Isin(Z[27])→Z[29]: Fix 3:"FSJL=":Z[29] ◢"FSK=":K◢Goto 0反算时要在反算区域正算一次,获取曲线要素显示1、DQX?(输入反算时的X坐标)2、DQY?(输入反算时的Y坐标)3、然后一直按"EXE"出现下面的字符4、FSJL= (所求反算左右偏距,左负右正)5、FSK= (所求反算的桩号)6、再按继续运算WN(不运行)"ZS=1,FS=2"?N: 1÷P→C:(P-R)÷(2HPH)→D:180÷π→E: If N=1: Then Goto 1: Else Goto 2: IfEnd←┚LbI 1:1→I:0→Z:Abs(K-O)→W: Prog"ZS"←┚F-90→F←┚"JJ"?K:"PJ"?L: "ZX=":Z[7]+Lcos(F+K)→Z[3]◢"ZY=": Z[8]+Lsin(F+K)→Z[4]◢"QXFWJ="DMS◢Abs(Z)→Z:Goto 8←┚LbI 2:"X"?I:"Y"?J: Prog"FS":"FSZH=":O+W→K◢"FSJL=":Z◢Lbl 8正算子程序(ZS)(不运行)1÷P→C:(P-R)÷(2HPR)→D: 180÷π→E0.1739274226→A:0.3260725774→B:0.0694318442→K:0.3300094782→L:1-L→F:1-K→M:U+W(Acos(G+QEKW(C+KWD))+Bcos(G+QELW(C+LWD))+Bcos(G+QEFW(C+FWD))+Acos(G+QEMW(C+MWD)))→Z[7]:V+W(Asin(G+QEKW(C+KWD))+Bsin(G+QELW(C+LWD))+Bsin(G+QEFW(C+FWD))+Asin(G+QEMW(C+MWD)))→Z[8]:G+QEW(C+WD)+90→F:Z[7]+ZcosF→Z[7]:Z[8]+ZsinF→Z[8]3反算子程序(FS)(不运行)G-90→T:Abs((Z[8]-V)cosT-(Z[7]-U)sinT)→W:0→Z←┚Lbl 0←┚prog"ZS":T+QEW(C+WD)→L:(J-Z[8])cosL-(I-Z[7])sinL→Z:If Abs(Z)<0.001: Then Goto1:Else W+Z→W:IfEnd :Goto 0←┚Lbl 1:0→Z:Prog"ZS":(J-Y)÷sinF→ZZX-WN(运行主程序,该程序适用于匝道,对全段完整非完整曲线计算太过麻烦)"CZX"?S(仪站X坐标):"CZY"?W(仪站Y坐标)LbI 0: "K"?K: If K≤218.50(第1条单一曲线的终点下面同上): Then Goto A:Else If K≤373.307 And K>218.50: Then Goto B:Else If K≤526.691 And K>373.307: Then Goto C:Else If K≤946.255 And K>526.691: Then Goto D IfEnd:IfEnd:IfEnd: IfEnd←┚LbI A:3803701.508(起点X坐标)→U:494281.813(起点Y坐标)→V:0起点桩号→O:293°47'49"(方位角)→G:218.50(曲线长度)→H:3990.75 (起点半径)→P:3990.75 (止点半径)→R:+1(路线左右偏,左负右正)→Q:Prog "WN":Goto WLbI B:3803795.099→U:494084.403→V:218.50→O:296°56'2.4"→G:154.807→H:10^45 →P:10^45 →R:0→Q:Prog "WN":Goto W LbI C:3803865.221→U:493946.388→V:373.307→O: 296°56'2.4"→G:153.384→H:10^45 →P:496.5 →R:+1→Q:Prog "WN":Goto W LbI D:3803941.562→U:493813.538→V:526.691→O: 305°47'3.15"→G:419.564→H:496.5 →P:496.5 →R:+1→Q:Prog "WN":Goto WLbI W:"PJ1"?T←┚(该项是只左右边桩再左右偏距,输0为不再左右偏,适用于桥梁桥台、盖梁、涵洞八字墙等放样,以路线前进方向,前-,后+)If T=0:Then Z[3]→Z: Z[4]→M: Goto P: Else Goto V: IfEnd←┚LbI V:"JJ1"?O←┚(左右边桩再偏夹角,用180°减去路线夹角)"X1=": Z[3]+Tcos(F+K+O)→U◢"Y1=" :Z[4]+Tsin(F+K+ O)→V◢U→Z: V→M: GotoP←┚LbI P:Pol(Z-S,M-W): If J≤0:Then J+360°→J: IfEnd←┚"JL=":I◢(仪站至测点的距离)"FWJ="DMS◢(仪站至测点的方位角)Goto01.规定以道路中线前进方向(即里程增大的方向)区分左右;当线元往左偏时Q=-1;当元线往右偏时,Q=1:当元线为直线时,Q=0°2.当所求点位于中线时,Z=0;当位于中线左侧时,Z取负值:当位于中线右侧时,Z取正值°当线元为直线时,其起点、止点的曲率半径为无穷大,以10的45次方代替°3.当线元为圆曲线时,无论其起点、止点与什么线元相接,其曲率半径均等于圆弧的半径°4.当线元为完整的缓和曲线时,起点与直线相接时,曲率半径为无穷大,以10的45次方代替°与圆曲线相接时,曲率半径等于圆曲线的半径,止点跟直线相接时,曲率半径为无穷大,以10的45次方代替;与圆曲线相接时,曲率半径等于圆曲线的半径°5.当线元为非完整缓和曲线时,起点与直线相接时,曲率半径等于设计规定的值;与圆曲线衔接时,曲率半径等于圆曲线的半径°止点与直线相接时,曲率半径等于设计规定的值;与圆曲线衔接时,曲率半径等于圆曲线的半径°二、输入与显示说明1.输入部分:2.. 输入3.ZS=1,FS=2,选择计算方式,输入1正算;输入2反算4.数据库的输入5.U?线元起点的X坐标6.V?线元起点的Y坐标7.O?线元起点的里程8.G?线元的起点切点方位角9.H?线元的长度10.P?线元起点的曲率的半径11.R?线元止点的曲率的半径.12.ZY?线元左右偏标志(左偏Q=-1,右偏Q=1,直线段Q=0)13.计算时:14.K?正算时所求的里程15.JJ?夹角,(正交90°,斜交直接输角度)16.PJ?偏距(左负右正)17..结果18.ZX=正算时,计算得出的测点的X坐标19.ZY=正算时,计算得出的测点的Y坐标20.QXFWJ=正算时,测点对应中线点的切线方位角21.PJ1?:左右桩号再偏距离,不需要时输022.JJ1? :左右边桩再偏角度23.JL=仪站与测点的距离24.FWJ=仪站与测点的方位角25.反算时输入:26.X?反算时所求点的X坐标27.Y?反算时所求点的Y坐标28.结果29.FSZH=反算时,计算得出的所求点的里程30.FSJL=反算时,计算得出的所求点的边距(负为左偏,正为右偏)GCJSAbs(C-D)×R÷2→Z[1]: A-Z[1]→Z[2]: A+Z[1]→Z[3]:If D-C>0:Then 1→E:Else -1→E:IfEnd←┚If K≤Z[2] :Then Goto 1:Else If K>Z[2] And K≤A: Then Goto 2: Else If K>A And K≤Z[3]: Then Goto 3: Else IF K>Z[3]:then Goto 4:IfEnd:IfEnd:IfEnd:IfEnd←┚LbI 1: Z[2]-K→L: B-(Z[1]+L)×C→H: Goto 5←┚LbI 2: K-Z[2]→L: B-(Z[1]-L)×C+E×L2÷R÷2→H: Goto 5←┚LbI 3: Z[3]-K→L: B+(Z[1]-L)×D+E×L2÷R÷2→H: Goto 5←┚LbI 4: K-Z[3]→L: B+(Z[1]+L)×D→H:Goto 5←┚LbI 5:"EL=":H◢←┚主线高程(ZXGC)LbI 0: "K"?K: If K≤552.156(第1条竖曲线的终点下面同上): Then Goto A:Else If K≤1352.805 And K>552.156: Then Goto B:Else If K≤2045.311 And K>1352.805: Then Goto C:Else If K≤2493.942 And K>2045.311: Then Goto D:Else If K≤3265.244 And K>2493.942: Then Goto E:IfEnd:IfEnd:IfEnd:IfEnd: IfEnd←┚LbI A: 501.436(边坡点桩号)→ A: 226.395(边坡点高程)→B: -0.0257(边坡点前坡比)→ C: -0.005(边坡点后坡比)→D:4900(半径)→R: Prog"GCJS": Goto F←┚(下面同上)LbI B: 1303.305→A: 222.386→B: -0.005→ C: 0.04→D:2200→R: Prog"GCJS": Goto F←┚LbI C: 1985.311→A: 249.666→B: 0.04→ C: -0.04→D:1500→R: Prog"GCJS": Goto F←┚LbI D: 2425.578→A: 232.055→B: -0.04→ C: -0.0218→D:7500→R: Prog"GCJS": Goto F←┚LbI E: 2849.694→A: 222.823→B: -0.0218→ C: -0.03→D:6000→R: Prog"GCJS": Goto F←┚LbI F:If K≤309.562(第1条曲线的终点): Then Goto 1:Else If K≤1053.022 (第2条曲线终点)And K>309.562: Then Goto 2:Else If K≤1354.954 And K>1053.022: Then Goto 3:Else If K≤1613.025 And K>1354.954: Then Goto 4:Else If K≤1863.124 And K>1613.025: Then Goto 5:Else If K≤2937.433 And K>2312.560: Then Goto 6:Else If K≤3145.553 And K>2937.433: Then Goto 7:IfEnd:IfEnd:IfEnd:IfEnd:IfEnd:IfEnd:IfEnd:←┚LbI 1: -0.015(直线段横坡)→ F: -0.02(圆曲线线段横坡)→G: 126.9(第1缓和曲线起点)→ I: 176.9(第1缓和曲线终点)→J:259.562(原曲线终点)→L: 309.562(第2缓和曲线终点)→M: 1(方向,左负右正)→N :Goto G←┚(下面同上)LbI 2: -0.015→ F: -0.02→G: 860.749→ I: 920.749→J:993.022→L: 1053.022→M:-1→N :Goto G←┚LbI 3: -0.015→F: -0.02→G: 1248.441→I: 1283.441→J:1319.954→L: 1354.954→M:+1→N :Goto G←┚LbI 4: -0.015→F: -0.02→G: 1439.731→I: 1489.731→J:1563.025→L: 1613.025→M:-1→N :Goto G←┚LbI 5: -0.015→ F: -0.02→G: 1712.165→ I: 1757.165→J:818.124→L: 1863.124→M: 1→N :Goto G←┚LbI 6: -0.015→F: -0.02→G: 2121.544→I: 2121.544→J:2312.560→L: 2312.560→M: 1→N :Goto G←┚LbI 7: -0.015→F: -0.02→G: 2752.223→I: 2812.223→J:2877.433→L: 2937.433→M: 1→N :Goto G←┚LbI 8: -0.015→F: -0.02→G: 3060.515→I: 3060.515→J:3145.553→L: 3145.553→M:-1→N :Goto G←┚LbI G:IfK≤I:Then Goto H :Else If K≤J And K>I: Then Goto I: Else If K≤L And K>J: Then Goto J: Else If K≤M And K>L: Then Goto K: Else If K>M: Then Goto L: IfEnd:IfEnd:IfEnd:IfEnd: IfEnd←┚LbI H:F→Z:F→Y: Goto 9LbI I:J=I=>Goto J:((K-I)× (Abs(F)+ Abs(G)))÷(J-I) -Abs(F)→Z[1]:If N=-1: Then Goto M: Else Goto N: IfEnd←┚LbI M:Z[1]→Y:If Z[1]≤-F:Then F→Z:Else –Z[1]→Z: IfEnd :Goto 9LbI N:Z[1]→Z:If Z[1]≤-F:Then F→Y:Else –Z[1]→Y: IfEnd :Goto 9LbI J:If N=-1:Then G→Z:-G→Y:Else -G→Z: G→Y: IfEnd: Goto 9←┚LbI K: M=L=>Goto L: (M-K)×(Abs(F)+ Abs(G))÷(M-L)- Abs(F)→Z[2]: If N=-1: Then Goto P: Else Goto Q: IfEnd←┚LbI P:Z[2]→Y:If Z[2]≤-F:Then F→Z:Else –Z[2]→Z: IfEnd :Goto 9LbI Q:Z[2]→Z:If Z[2]≤-F:Then F→Y:Else –Z[2]→Y: IfEnd :Goto 9LbI L:F→Z:F→Y: Goto 9Lbl 9:"ZC=1,YC=2"?X:If X=1:Then Goto V:EIse Goto W: IfEnd Ibl V:” BJZ”?J:”BHZ=”:H+J×Z◢Goto 0Ibl W:” BJY”?S:”BHY=”:H+S×Y◢Goto 0显示K?输入桩号显示结果:EL= 所求点中桩高程显示“ZC=1,YC=2”?左侧边桩输1,右侧边桩输2显示“BJZ”或“BJY”输入左右边桩的距离显示结果:“BHZ=”或“BHY=”所求点左右边桩的高程。
Fx5800计算器程序(对称平曲线)
Fx-5800计算器程序一、程序名称:B-D-PQX(对称平曲线)Prog “ZJZB”:“A”?→A:“R”?→R:“LS”?→L:“JDL”?→N:“JX”?→U:“JY”?→V:“F”?→F:180/π/R→Z:ZL/2→B:L2/24/R- L^(4)/2688/R^(3)+L^(6)/506880/R^(5)→P:L/2-L^(3)/240/R^(2)+L^(5)/34560/R^(4) →Q“T=”:(R+P)tan(Abs(A/2))+Q→T▲“L=”:(Abs(A)-2B)/Z+2L→o▲“E=”(R+P)/Cos(Abs(A/2))-R→E▲“ZH=”:N-T→E▲“HY=”:E+L→Z〔1〕▲“QZ=”:E+o/2→Z〔2〕▲“YH=”:E+o-L→Z〔3〕▲“HZ=”:E+o→Z〔4〕▲LbI 8: “XL”?→M:Prog“ZBJS”:Goto 8二、子程序:ZBJS180/π/R→Z:ZL/2→B:L^(2)/24/R-L^(4)/2688/R^(3) +L^(6)/506880/R^(5)→P:L/2-L^(3)/240/R^(2)+L^(5)/34560/R^(4)→Q(R+P)tan(Abs(A/2))+Q→T(Abs(A)-2B)/Z+2L→o(R+P)/Cos(Abs(A/2))-R→EN-T→EE+L→Z〔1〕E+o/2→Z〔2〕E+o-L→Z〔3〕E+o→Z〔4〕0→W:0→Y:If M≤E:Then M-E→X:Goto 3:IfEnd:If M≤Z〔1〕:Then Goto 1:IfEnd:If M≤Z〔3〕:Then Goto 2:IfEnd:If M<Z〔4〕:Then Goto 1:IfEnd: If M≥Z〔4〕:Then Z〔4〕-M→X:Goto 3:IfEndLbI 1:If M≤Z〔1〕:Then M-E→G:EIse Z〔4〕-M→G: IfEnd:G-G^(5)/(40R^(2)L^(2))+G^(9)/3456/(RL)^(4) →X:G^(3)-(6RL)-G^(7)/(336R^(3)L^(3))+G^(11)/42240/(RL)^(5)→Y:ZG^(2)/2/L →W:Goto 3LbI 2:M- Z〔1〕→G:RSin(B+GZ)+Q→X:R-RCos(B+GZ)+P→Y:B+ZG→WLbI 3:If M≥Z〔3〕:Then F+A→C:If A>0:Then C+90→D:IfEnd:EIse C-90→D:IfEnd:EIse F+180→C:If A>0:Then F+90→D:EIse F-90→D: IfEnd: IfEnd“X=”:U+(T-X)Cos(C)+YCos(D)→Z〔7〕▲“Y=”: V+(T-X)Sin(C)+Y Sin(D)→Z〔8〕▲Z〔7〕→Z〔5〕: Z〔8〕→Z〔6〕:Prog “J”LbI 4:“BZ”?→S:If M≤Z〔3〕:Then Goto 5:EIse Goto 6:IfEndLbI 5:F→C:If A<0:Then -W→W:EIse W→W:IfEnd:Goto 7LbI 6:F+A→C:If A>0:Then -W→W:EIse W→W:IfEndLbI 7:“X=”:Z〔7〕+SCos(C+W+90)→Z〔5〕▲“Y=”:Z〔8〕+SSin(C+W+90)→Z〔6〕▲Prog“J”三、子程序:JI=PoI(Z〔5〕-H, Z〔6〕-K):If J<0:Then J+360→J:EIse J→J: IfEnd“F=”:J◆DMS“D=”:I▲四、子程序:ZJZB30→Dim Z:“HX”?→Z〔5〕:“HY”?→Z〔6〕: “ZX”?→H: “ZY”?→K:Prog“J”五、B-D-PQX(对称平曲线)说明1、▲——代表计算器中显示符号(黑色实心三角符号,在计算器中输入方法:SHIFT+X2)。
5800坐标计算,竖曲线缓和曲线程序
A+Q(Cos(C) +4(Cos(M)+Cos(N))+2Cos(K)+Cos(J))÷12→U:
Lbl 4: "END″
说明:QZHAO:曲中点里程(竖曲线),QDHAO:起点里程,ZDHAO:终点里程,B—HB曲中点高程,SX:上下(路面标高下多少为水稳层面),I1:第一坡度,I2:第二坡度,R:半径,T切线长,L—DQHAO:待求点里程,PY:偏移(中桩到边桩的距离),XIELV:斜率(横坡的坡度,左负右正)o-YIGAO:仪器高a
Goto 1
Lbl 2
L<G Goto 4
"HL=″:B+0.01 (L-J)C+0.01UV+Q →H
"H0=″:o-H→H
Goto 1
Lab 3
L>K Goto 4
"HL=″:B+0.01 (L-J)D+0.01UV+Q →H
"HO=:o-H→Z
Goto 1
Lbl 1
"L—DQHAO=″?L:"PY=″?U:"XIELV=″?V
If L<X:Then Goto 2:Else If L>Y:Then Goto 3:If End:I End
"HL=″:B+0.01C(L-J)+A(L-J+T) ÷(2R)+0.01UV+Q→Q
5800万能程序
5800万能曲线计算程序(分段计算)一:ZBJS (母程序)Lb1 1: "DKI"?H:Prog"M"↓(E-D)÷Abs(G-F) →P: Abs(H-F) → Q: P×Q→I↓C+(I+2D)×Q×90÷π→J↓"J=":J▲C+(I÷8+2D)×Q×45÷(4π)→M↓C+(3I÷8+2D)×Q×135÷(4π)→N↓C+(5I÷8+2D)×Q×225÷(4π)→U↓C+(7I÷8+2D)×Q×315÷(4π)→V↓C+(I÷4+2D)×Q×45÷(2π)→K↓C+(I÷2+2D)×Q×45÷π→W ↓C+(3I÷4+2D)×Q×135÷(2π)→Z↓?T↓A+Q÷24×(cosC+4×(cosM+cosN+cosU+cosV)+2×(cosK+cosW+cosZ)+cosJ)→X↓B+Q÷24×(sinC+4×(sinM+sinN+sinU+sinV)+2×(sinK+sinW+sinZ)+sinJ)→Y↓"X=":X▲"Y=":Y▲"DL"?O: "DR"?R↓"XL=":X+Ocos(J-(180-T))▲"YL=":Y+Osin(J-(180-T)) ▲"XR=":X+Rcos(J+T) ▲"YR=":Y+Rsin(J+T) ▲Goto 1↓二、M(子程序)(数据库)If H≤19052.852(终点桩号):Then(起点桩号)18892.852→F:(终点桩号)19052.852→G:(起点X坐标)2521815.012→A:(起点Y坐标)405844.892→B:(起点切线方位角)181.2275833→C:起点曲率→D:终点曲率→E: Goto 0:If End换行If H≤19152.874(终点桩号):Then(起点桩号)19052.852→F:(终点桩号)19152.874→G:(起点X坐标)2521655.036→A:(起点Y坐标)405811.512→B:(起点切线方位角)177.9535388(弧度)→C:起点曲率→D:终点曲率→E: Goto 0:If End换行同上下一个线元要素。
CASIO5800圆曲线(已知两点及半径)坐标计算程序
CASIO5800圆曲线(已知两点及半径)坐标计算程序
圆曲线(已知两点和半径)座标计算fx-5800程序
作者:李艳阳
A:?B: ?C: ?D: ?R↙
Pol(C-A,D-B):J-Sin-1(I÷2÷R)→F↙
A+R Cos(F+90)→X↙
B+R Sin(F+90)→Y↙
Lbl 1:?L↙
F-90+(L÷R)( 180÷π) →T↙
“N=”:X+RCos(T)→N ◢
“E=”:Y+RSin(T)→E ◢
Goto 1↙
说明: 1. A、B为第一点X、Y
2. A、B为第二点X、Y
3. R为曲线半径,向左偏为负,向右偏为正
4. L输入待求点到A点的曲线长度
5. N、E为待求点的XY
ABCD分别输入X1、Y1、X2、Y2。
R按前进方向左-右+。
Fx-5800曲线坐标综合计算程序
名称:CAS58-ZHYQX
说明:
1、A:转角,左偏为“-A”;右偏为“+A”;
2、R:圆曲线半径;
3、LS:缓和曲线长度;
4、JD(DK):本个交点桩号;
5、X(JD)与Y(JD):本个交点X与Y的坐标;
6、FWJ:曲线起始边坐标方位角;
7、J:输0为只计算中桩坐标,输1为计算中桩与边桩坐标;
8、Z:待求点里程桩号;
9、W:边桩至中桩的偏距。
卡西欧5800圆曲线坐标计算程序
圆曲线段坐标计算YQXZBJS
单一圆曲线段任意里程位各点的坐标计算。
程序如下:
圆曲线起点里程→Q:
圆曲线起点X坐标→E:
圆曲线起点Y坐标→F:
圆曲线起点前进切线方位角→T:
圆曲线半径→R:
圆曲线转向方向(左转取-1,右转取+1)→P:
Lbl 0:
6→DimZ:
“KM=”?L: 待求点里程
“L-1,R+1”?K: 待求点位于前进方向左侧为-1,右侧为+1
“PJ=”?S: 待求点到线路设计中心的平距
Abs(L-Q)→Z[1]:
180Z[1]÷R÷π→Z[2]:
Pol(R sin(Z[2]),R(1-cos(Z[2]))):
J→Z[3]:
Rec(I,T+Z[3]P):
E+I→Z[4]:
F+J→Z[5]:
T+(Z[3]+90Z[1]÷R÷π)P+90→Z[6]:
If K=1:
Then Rec(S,Z[6]):
Else Rec(S,Z[6]+180):
IfEnd:
Z[4]+I→X:
Z[5]+J→Y:
Cls:
Fix 3:
“Xp=”: 计算的X坐标
“Yp=”: 计算的Y坐标
Locate 7,1,X: X坐标显示在第一行
Locate 7,2,Y◢Y坐标显示在第二行
Goto 0
注解:
如果本程序不需要反复计算其它里程位的坐标值,可以将Lbl 0和Goto 0删除掉。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
主程序:Q
7→Dim Z↙
“JD: ” ?S↙
If S≤交点号And S≥交点号:Then Prog “Q1”: IfEnd↙
If S≤交点号And S≥交点号:Then Prog “Q2”: IfEnd↙
L=1=> Goto6
“JD:K”?B: ”JD:X”?H: ”JD:Y”?Z: ”ZH~JD”?A: ”JD~HZ”?U:”R”?R:”L1”?T:“L2”?Q↙
0→X: 10^10→Y↙
Lbl 6: If U-A<0: Then -1→Z[3]: Else 1→Z[3]: IfEnd↙
T=0 =>1μ→T:Q=0=> 1μ→Q↙
T2/(24R)-T(4)/(2688R(3)→Z[6]: Q2/(24R)-Q(4)/(2688R(3)→Z[7]: T/2-T(3)/(240R2→M: Q/2-Q(3)/(240R2→N↙
Z[3] (R+Z[6])tag((U-A)/2) →D: D+M- Z[3] (Z[6]- Z[7])/sin(U-A→Z[1]: D+N+ Z[3] (Z[6]- Z[7])/tag(U-A→Z[2]: (tan-1((Z[1]-M)/(R+
Z[6]))+tan-1( (Z[2]-N)/(R+ Z[7]))) Rπ/180+T/2+Q/2→L↙
X→Z[6]: Y→Z[7]↙
“E”?E: “F”?F↙
Lbl 0: “K”?K:K<0=>Goto 5:If K< Z[6] or K> Z[7]: Then Goto 9: IfEnd↙
Prog “Y” :Prog “1”: Goto 0 ↙
Lbl 9: “ K:cao xian”◣Goto 0↙
Lbl 5: “ E N D”
子程序:Y
K≤B-Z[1]=>Goto 1↙
K≥B-Z[1]+L=>Goto 2↙
If K≤B-Z[1]+T: Then K- B+Z[1]→V: T→W: Goto3:IfEnd↙
If K≥B-Z[1]+L-Q: Then B-Z[1]+L-K→V: Q→W: Goto 3: IfEnd↙
1
K-B+Z[1] →V: 90(2V-T)/ (Rπ→W: Rsin (W)+T/2-T(3)/(240R2→X:
R-Rcos(W)+T2/(24R)-T(4)/(2688R(3)→Y: Pol(X,Y: H+Z[1]cos(180+A)+Icos(A+J Z[3] →X: Z+Z[1]sin(180+A)+Isin(A+J Z[3] →Y: A+W Z[3]→W:Goto5↙
Lbl 1: (B-K)cos(180+A)+H→X: (B-K)sin(180+A)+Z→Y: A→W: Goto 5↙
Lbl 2: (Z[2]+K-B+Z[1]-L)cos(U)+H→X: (Z[2]+K-B+Z[1]-L)sin(U)+Z→Y: U→W: Goto 5↙
Lbl 3: V-V(5)/(40R2W2 )+V(9)/(3456R(4)W(4)→X: V(3)/(6RW)-V(7)/(336R(3)W(3)→Y: Pol (X,Y: If K≤B-Z[1]+T: Then H+Z[1]cos(180+A)+Icos(A+J Z[3] →X:
Z+Z[1]sin(180+A)+Isin(A+J Z[3] →Y: A+90V2/(RTπZ[3] →W: Else
H+Z[2]cos(U)+Icos(180+U-J Z[3]→X: Z+Z[2]sin(U)+Isin(180+U-J Z[3]→Y:
U-90V2/(RQπZ[3]→W:IfEnd↙
Lbl 5:X→M: Y→N: Return
子程序:1
Lbl 7:”D”?D: D<0=> Goto8: “W”?W↙
M+Dcos(W→X: N+Dsin(W→Y↙
E<0=> Goto 4↙
W≥360=>W-360→W: Pol (X-E,Y-F: J<0=>360+J→J↙
Cls:“I=”:Locate 4,1,I↙
“J=”:J DMS◣Goto 7↙
Lbl 4:Cls:”X=”:Locate:4,1,X:”Y=”:Locate4,2,Y:”W=”:W DMS◣Goto 7↙
Lbl 8: Return
子程序:Q1
0→L
If S=交点编号: Then 交点里程→B: 交点X坐标→H: 交点Y坐标→Z: 直缓点至交点的方位角→A: 交点至缓直点的方位角→U: 半径→R: 第一段缓长→T: Q 第二段缓长→Q: 起算点里程→X: 终算点里程→Y: Isz L IfEnd
2
If S=交点编号: Then 短链处直线里程(两端的都可以)→B: 直线X坐标→H: 直线Y坐标→Z: 短链直线方位角→A: 短链直线方位角→U(因是同一条直线,A=U,但为了A-U不为零,要有很小的差): 10^10→R: 0→T: 0→Q: 起算点里程→X: 终算点里程→Y: Isz L IfEnd
Return
3。