1、主程序部分注:在本程序中0表示零, Sin 表示 Sin 的反函数,(A+B)表示根号下 A的平方加 B 的平方,角度输入时、比如输入253545.67只需要输入25.354567 。PQXY 极坐标向直角坐标转换Deg:Fix 4:Xo=?I:Yo=?J: 程序设置,输入起始点坐标Ldl 0 回车Rn=?R 回车 输入方位角)Pn=?P 回车 输入计算点边长If P 0:Then Goto 9:If End 回车 Pn=输入负数结束程序Prog ZDEG 回车 转子程序 DEGRQ : ProgZQ360 回车Prog ZPQ : Prog XYXS 回车 坐标计算和显示坐标Goto 0 回
2、车 Lbl 9 回车PQXYENDXYPQ 直角坐标向极坐标转换Deg:Fix 4:Xo=?I: 程序设置,输入起始点坐标Yo=?J 回车Lbl 0 回车Xn=?D 回车 输入计算点坐标 XIf D0:Then Goto 9:If End 回车 Xn=输入负数结束程序Yn=?G 回车 输入计算点坐标 YDIE :G-JF 回车 坐标增量计算、E 为x、F 为yProg ZPOL回车 转坐标计算子程序R=:RDMS 方位角计算结果显示P=:P 边长计算结果显示Goto 0 回车Lbl 9 回车XYPQENDKWXBP 开挖线边破偏距计算Deg:Fix 4:D=?D: 输入起算偏距Z=?Z:ZF:
3、 H=? H 回车 输入起算高程Z、实测高程HZH 显示HIf H0:Then Goto 1: 判断H 为正直挖方边跑If End 回车 H 为负直填方边跑DLBGKD? E: 输入道路边沟宽度D+EDP=?P:B=?B 回车 输入挖方破比FTGD? G: FTKD? J 回车 输入分台高度和宽度Lbl 0 回车H=?H:If H0: 循环输入实测高程H,判Then Goto 9:IfEnd 回车 H=输入负数结束程序If H-FG:Then F+GF:D+JD:IfEnd 回车Prog ZBPHS回车 转偏距增量计算子程序D=:DSD 显示新的偏距Goto 0 回车Lbl 1 回车P=? P
4、: B=? B 回车 输入填方破比FTGD? G: FTKD? J 回车 输入分台高度和宽度Lbl 2 回车H=?H:If H0: 循环输入实测高程H,判Then Goto 9:IfEnd 回车 H=输入负数结束程序If H-FG:Then F-GF:D+JD:IfEnd 回车Prog ZBPHS回车 转偏距增量计算子程序D=DSD 显示新的偏距Goto 2 回车Lbl 9 回车KWXBPENDDJDJS 已知矩形两对角点和长宽,计算另外两点坐标Lbl 0 回车Deg:Fix 4:Xo=?I 回车 输入起算点 XIf I0:Then Goto 9:IfEnd 回车 Xo=输入负数结束程序Yo=
5、? J: Xd=? D: 输入起算点 Y 和对角点 X、YYd=? G 回车DIE:GJF 回车 坐标增量计算Prog ZPOL回车 直角坐标转极坐标P2=? S 回车 输入对边 边长Sin(SP)C 回车 点 2 点 DR+CQ: ProgZQ360: P2P1=? P 回车 输入邻边边长 点 O P1 点 1Prog ZPQ: Prog XYXS回车 计算并显示点 1 的坐标Q90Q: ProgZQ360:P2=? P 回车 输入对边边长Prog ZPQ: Prog XYXS回车 计算并显示点 2 的坐标Goto 0 回车Lbl 9 回车DJDJSENDABDXY AB 坐标转地方坐标De
6、g:Fix 4:Xo=? I:Yo= 输入起始点坐标和? J:Ro=? R: 0 L 回车 起算方位角Prog ZDEG回车Lbl 2 回车0 M 回车Ln=? G 回车 Ln=输入AB坐标纵向曾值If G0:Then Goto 9:If End 回车 Ln=输入负数接受程序LGL 回车Lbl 1 回车Mn=? H 回车 Mn=输入AB坐标横向曾值If H0:Then Goto 2:If End 回车 H 0 返回“输入AB坐标纵向曾值”M+HM 回车 (AB)输入纵向偏心值A=? A 回车 A值靠近起始点If A0:Then Goto 1:If End 回车 A0 返回“输入AB坐标横向曾值
7、”B=? B:C=? C:D=? D 回车 (CD)输入横向偏心值(A+B) 2-AA:(C+D) 2-CC 回车 C值靠近起始点(LA) (MC)P 回车If L+A=0:Then 0.000001A:IfEnd 回车tan (MC) (LA) Q 回车R+QQ 回车 控制点 1 控制点 2: ProgZQ360Prog ZPQ: Prog XYXS回车 显示坐标 P1 P2Goto 1 回车Lbl 9 回车 测站点ABDXYENDJLHFJH 距离后方交会计算Deg:Fix 4:X1=?I: 程序设置,输入控制点 1 坐标Y1=?J 回车 左边为控制点 1X2=?D :Y2=?G 回车 输
8、入控制点 2 坐标DIE :GJF 回车 坐标增量计算、E 为x、F 为yProg ZPOL回车 转坐标计算子程序P1=?A:P2=?B 回车Cos (APB) (2AP) Q 回车RQQ:AP 回车: ProgZQ360: 转子程序并显ProgZPQ: Prog XYXS回车 示测站点坐标JLHFJHENDZxfycx 直线放样程序Deg:Fix 4: X1=? I: Y1=? J: X1=Y1=输入直线起点坐标PD? S: If S=0:Then Goto 1:IfEnd: PD用方位角计算时输入 0 X2=? D: Y2=? G:D IE:GJF: 用终点坐标计算时输入 0 的值Prog
9、 ZPOL: If S0:Then Goto 0: X2=Y2=输入直线终点坐标IfEnd:Lbl 1R? R:Prog ZDEG: A=输入直线前进方向的距离,Lbl 0: A=? A:If A0:Then Goto 9: 当 A0 时结束程序IfEnd: B=? B:ProgZXJS B=输入直线垂直方向的距离:ProgZPQ: 左边为-右边+Prog XYXS:Goto 0: (A+B)表示根号下 A 的平方Lbl 9:ZXFYCXEND 加 B 的平方Z-Y-Z 直线、圆曲线、直线坐标正算程序PD? S: If S0:Then Goto 0 :IfEnd: PD输入零表示重新输入计算J
10、DGS5? N:QDX? List 11: 参数,PD输入零的数字QDY? List 21: QDK? List 31: 表示调用原来的数据进行计算。1I:1J: QDX起点 x、QDY起点 y、Lbl 8 QDK起点里程、JD:J JDGS5输入交点个数5X? List 1I1: Y? List 2I1: ZYDK直圆点里程、ZYDK?List 3I1: YZDK? List 3I2: YZDk圆直点里程、ZJ? List 1I2: BJ? List 2I2: ZJ转角 左负右正I2I:J1J: BJ半径、ZDX终点 xIf JN:Then Goto 8:IfEnd 回车ZDX? List
11、1I1: ZDY K输入需要计算点的里程? List 2I1 : ZDK? List 3I1 回车 PJ输入需要计算点的偏距偏距 左负 右正Lbl 0 : Deg:Fix 6: K?K: If KList 31:Then Goto 9:IfEnd 回车 注:If KList 3N22:Then Goto 9:IfEnd 回车 此程序角度输入时、比如输入2535 45.67 If K List 32:Then List 11 I:List 21 只需要输入25.354567。J:List 12 D:List 22 G:KList 31K:ProgZX1:Goto 0:IfEnd 回车If KLi
12、st 33:Then List 11 I:List 21 J: List 12 IE :List 22 JF: ProgZPOL:RL:List 12I:List 22J:List 13 R:Prog ZDEG:RC:List 23O:KList 32 K: List 33 List 32 A:ProgYQXJS: Goto 0:IfEnd 回车 If KList 34:Then List 13 R:Prog ZDEG:RC:List 23 O: List 33 List 32 A:List 12 I:List 22J:List 14 D:List 24 G:KList 33K:ProgZX2
13、:Goto 0:IfEnd 回车If KList 35:Then List 12 I:List 22 J:List 14 IE:List 24 JF:ProgZPOL:RL:List 14 I:List 24 J:List 15 R:ProgZDEG:RC:List 25 O:KList 34 K: List 35 List 34 A:ProgYQXJS:Goto 0:IfEnd 回车If KList 36:Then List 15 R:ProgZDEG:RC:List 25 O: List 35 List 34 A:List 14 I:List 24 J:List 16 D:List 26
14、G:KList 35 K:ProgZX2:Goto 0:IfEnd 回车If KList 37:Then List 14 I:List 24 J:List 16 IE:List 26 JF:ProgZPOL:RL:List 16 I:List 26 J:List 17 R:ProgZDEG:RC:List 27 O:KList 36 K: List 37 List 36 A:ProgYQXJS:Goto 0:IfEnd 回车If KList 38:Then List 17 R:ProgZDEG:RC:List 27 O: List 37 List 36 A:List 16 I:List 26
15、J:List 18 D:List 28 G:KList 37 K:ProgZX2:Goto 0:IfEnd 回车If KList 39:Then List 16 I:List 26 J:List 18 IE:List 28 JF:ProgZPOL:RL:List 18 I:List 28 J:List 19 R:ProgZDEG:RC:List 29 O:KList 38 K: List 39 List 38 A:ProgYQXJS:Goto 0:IfEnd 回车If KList 310:Then List 19 R:ProgZDEG:RC:List 29 O: List 39 List 38
16、 A:List 18 I:List 28 J:List 110 D:List 210 G:KList 39 K:ProgZX2:Goto 0:IfEnd 回车If KList 311:Then List 18 I:List 28 J:List 110 IE:List 210 JF:ProgZPOL:RL:List 110 I:List 210 J:List 111 R:ProgZDEG:RC:List 211 O:KList 310 K: List 311 List 310 A:ProgYQXJS:Goto 0:IfEnd 回车If KList 312:Then List 111 R:Prog
17、ZDEG:RC:List 211 O: List 311 List 310 A:List 110 I:List 210 J:List 112 D:List 212 G:KList 311 K:ProgZX2:Goto 0:IfEnd 回车Lbl 9:ZYZENDRYQXZFS 9750 计数器 线元发任意曲线坐标 正、反 算程序Deg:Fix 6 回车(=1),Goto 1:( 2),Goto 2 输入0表示重新输入计算参数,? C 回车 输入1转到主点坐标计算,If C=1:Then Goto 1:IfEnd 回车 输入2转到任意点坐标正反算,If C2:Then Goto 2:IfEnd
18、回车XYGS,N=? N 回车 输入线元个数NQD,K(m)=? List 51 回车 输入起点里程KQD,FWJ? R:Prog ZDEG: 输入起点方位角如 3414939.83RList 121 回车 只需输入 341.493983QD,X(m)=? List 61 回车 输入起点坐标 X米为单位QD,Y(m)=? List 71 回车 输入起点坐标 Y米为单位For 1I To N 回车n=:I 显示需要输入的线元号BJ1,R(m)=? List 8I 回车 输入线元起点半径BJ1米为单位List 8I=01*1030List 8I 回车 如果半径无穷大时输入0BJ2,R(m)=? L
19、ist 9I 回车 输入线元终点半径BJ2米为单位List 9I=01*1030List )I 回车 如果半径无穷大时输入0XY,K(m)=? List 10I 回车 输入线元长度K米为单位If List 8I 1*1030 Or BJ1或者BJ2不等于 0 时输入List 9I 1*1030:Then L(-1),R(1)= 偏转系数 左转输入-1? list 11I:Else 0list 11I:IfEnd 回车 右转输入 1Next 回车Lbl 1 回车0 I:For 1I To N 回车 循环计算主点坐标List 5I+Rep (List 10I) List 5I+1 回车List 5
20、I+1 Z 回车If List 8I=List 9I And List 8I=1*1030:Then 0S: 0T:List 10I D:Prog ZRYQX4:Goto 0:IfEnd 回车If List 8I=List 9I And List 8IList 5N+1Break 回车 输入小于起点里程或者大于终点里程For 1I To N 回车 时结束程序ZList 5I+1Goto N 回车 PJ=输入偏距 线路左边输入Z-List 5I L 回车 负值中线输入零线路右边输If List 8I=List 9I And List 8I= 入正值1*1030:Then 0S: 0T:LD:Pr
21、og ZRYQX4:ProgZRYQX6:Break:IfEnd 回车If List 8I=List 9I And list 8I0:Goto 9 回车Lbl 3:Fix 6: 坐标反算程序开始XJ(m),0Goto 4 输入反算点所在的线元号? I:I0Goto 4 回车 线元号输入小于0时自动Abs(X+Ii-List 61-List 71i) C 回车 搜索线元号List 51+CZ 回车For 1S To N 回车ZList 5S And ZNI-NI 回车If List 8I=List 9I And List 8I=1*1030:Then tan(List 12I) T 回车(X+T
22、 2 List 6I-T(List 7I-Y) (T 2 +1) U 回车U+(Y-(U-X) T)iU:List 12I T 回车U-List 6I-List 7IiF 回车Arg FH:H150-1J 回车List 5I+J Abs FZ 回车If ZList 5I And ZList 5I+1:Then Goto Z:Else I+1NGoto 4:IfEnd:IfEnd 回车If List 8I=List 9I And List 8IList 9I:Then 2 List 9I R:Else 2 List 8I R:IfEnd 回车(R 2 -S 2 4) T 回车F+TGO 回车Si
23、n-1 (SR2) V: VR90J 回车(Rep(List 10I-J) JP 回车X+Yi-OV:Arg VJ 回车O+RJC:Abs(C-U) S 回车Sin -1 (SR2) V: VR90J 回车List 5I+J(1+P) Z 回车ProgZRYQX2 回车Do 回车X+Yi-UC:Abs CS 回车Arg CJ:J220:Then J-270J:-1F:Else 90-JJ:1F:IfEnd 回车If List 8IList 9I:Then J180(F List 11ILA 2 +S -1) E 回车Else J180(-F List 11ILA 2 +S -1) E:IfEn
24、d 回车Z+EZ 回车If ZList 5I+1:Then I+1I: Goto 4:IfEnd 回车ProgZRYQX2:tan T(Imp U Y)+Rep U-XC 回车LpWhile Abs C0.001 回车Fix 4: femto(LP)=:CFix 3:Lbl Z:ProgZRYQX5:Goto 3 回车Lbl 9 回车RYQXZFSENDDDJDF B 电力 档端角度发 程序Deg:Fix 3Lbl 0L=? L:If L0 Then Goto 9:IfEnd L=输入 L 的值,L 小于零时结束=? R:ProgZDEG:RB 程序。f=? F: =? A =,f=,=Tan
25、 B-(4F)- A) L) 分别输入其他参数。tanR(A+(L(tan B-tan R) ) )4K:R DMSsr:Fys:KGoto 0Lbl 9DDJDF BENDDWJDF 电力 档外角度发程序Deg:Fix 3Lbl 0L1=? L:If L0 :Then Goto 9 :IfEnd L1=输入 L1的值,L1 小于零时1=? R:Prog ZDEG:RD 结束程序。L=? M: 2=? R:ProgZDEG 1=,L=,2=,f=RC: f=? F 分别输入其他参数。Ltan DP(L+M) tan C-PH(2M)(4F-H)+(8F(LM) U(1M)(4F-H) -16PF) Utan-(-(U2)+ (U2) -V) R(14)( (P-Ltan R)+ (P-(L+M) tan R+(H)K:RDMSsy:Fys:KGoto 0Lbl 9DWJDFEND