道路的CASI 5800P 万能曲线 计算程序.docVIP

  • 32
  • 0
  • 约8.2千字
  • 约 5页
  • 2016-10-14 发布于贵州
  • 举报
道路的CASI 5800P 万能曲线 计算程序

道的CASIO 5800P 万能曲线 计算程序 曲线任意里程中边桩坐标正反算 (CASIO fx-5800P计算器)程序 程序功能 ????????本程序由一个主程序(ZHUCHENXU)和几个子程序——正算子程序(SUB1)、反算子程序(SUB2)、数据库(SUB3)、算方位角程序(FA)、使用方位角算坐标(NE)、边坡放样程序(BIANPO)、隧道圆心放样程序(SDYX)构成,可以根据直线、圆曲线、缓和曲线(完整或非完整型)的线元要素(起点坐标、起点里程、起点切线方位角、线元长度、起点曲率半径、止点曲率半径)及里程边距或坐标,对该曲线段范围内任意里程中边桩坐标进行正反算。 源程序 增加变量→DimZ 1.主程序() (P-R)÷(2HPR) →D:180÷π→E:1.SZ → XY,2.XY → SZ,3.SDYX,4. BIANPO ?N: Lbl 1:””?S: Prog SUB3: N≥2=Goto 2: Abs(S-O)→W:”=”?→Z:Prog SUB1: XS=”:X→XYS=”:Y→Y◢FS=”:(F-90) →F:F?DMS◢Prog FA:Goto 1: Lbl 2:”CX=”?X: X→I:”CY=”?Y: Y→J:”DMG=”?→Z[7]:Prog SUB2: S=:(O+W) →SZ=:Z→Z◢If N=3:Then Prog”SDYX”: IfEnd :If N=4:Then Prog”BIANPO”:IfEnd:Goto 2 2. 正算子程序(SUB1) 0.1739274226 →Z[1]: 0.3260725774→B: 0.0694318442→K: 0.3300094782→L: (1-L) →F: (1-K)→M: U+W(Z[1]cos(G+QEKW(C+KWD))+Bcos(G+QELW(C+LWD))+Bcos(G+QEFW (C+FWD))+Z[1]cos(G+QEMW(C+MWD))) →X: V+W(Z[1]sin(G+QEKW(C+KWD))+Bsin(G+QELW(C+LWD)) +Bsin(G+QEFW(C+FWD))+Z[1]sin(G+QEMW(C+MWD))) →Y: G+QEW(C+WD)+90→F: X+ZcosF→X: Y+ZsinF→Y ? ? 3. 反算子程序(SUB2) G-90 →Z[2]: Abs((Y-V)cosZ[2]-(X-U)sinZ[2]) →W: 0→Z:Lbl 0:Prog SUB1: Z[2]+QEW(C+WD) →L: (J-Y)cosL-(I-X)sinL→Z: If Abs(Z)1E-6:Then Goto1:Else W+Z→W:Goto 0: IfEnd Lbl 1: 0→Z:Prog SUB1: (J-Y)÷sinF→Z 4. 数据库(SUB3) If S226100Then Cls:Stop: IfEnd If S226255.833:(圆曲线起点里程)Then 226100→O: 99037.9736→U: 4282.3590→V: 201.3266304→G: 1045→P: 1045→R: 253.543→H: 0→Q: Goto 1:IfEnd …… …… If S236005.651:Then Cls:Stop: IfEnd Lbl 1: 1÷P→C:4、SUB3数据库说明: S待求桩号,O=曲线起点桩号,U曲线起点X坐标,V曲线起点Y坐标,G曲线起点切线方位角, P曲线起点半径, R曲线终点半径, H=曲线长度,Q转向(直线0,左转-1,右转1) 5. 算方位角程序(FA) ?LbI0:“XC=”? A : “YC=”? T :X:Y 0→J: POI(X-A,Y-T)→I:“BC=”:IIf J<0 Then 360+J→J:ElseJ→J :IfEnd “FW=”:J?DMS◢? Goto0 6. 使用方位角算坐标(NE) LbI0:“X=”? X: “Y=”? Y: “L=”? L:“F0”?F: L×Cos(F)+X→N: “N=”NL×Sin(F)+Y→E: “E=”E Goto0 7. 边坡放样程序(BIANPO) ?“QPDJL=”? → Z[3]: “QPDGD=”? → Z[4]: “PG=” ? → Z[5]:2→Z[6]: “P1=” ? → Z[8]: “P2=” ? → Z[9]: “P3=” ? → Z[10] (没有的话就删): Z[7]-Z[4] → Z[11]:If Z[11]〈0 Then ?AbsZ[11] →Z[11]: “T=”:Z[11] Else“W=”:Z[11] IfEnd Z[11]÷Z[5] →Z[12]:If Z[12]〈1 Then

文档评论(0)

1亿VIP精品文档

相关文档