1、1、 主程序程序名:1XY-KMLbI 0:5DimZ:Norm 2:1A:A:X,Y=1,KM,D=2?A:A=1=Goto 1:A=2=Goto 2: LbI 1:Prog DX:LbI A:ProgQX:90B:PJ?B:BZ1:LbI B:1F:KM?Z:Z= -1=Goto 0:Z=-2=Goto A:Z=-3=Goto X :ProgKM:?D: Prog Z:I+DCOS(Z2+Z1) X: J+DSin(Z2+Z1) Y: ix 3: =:Locate 6,4,: :Locate 6,4,:ProgJS:Goto BLbI 2:LbI A:ProgQX:90Z1:LbI C:2
2、F:KM?Z:Z= -1=Goto 0:Z=-2=Goto A:Z=-3=Goto X :ProgKM:?D:Prog ZX: Fix 3::Locate 6,4,:Locate 6,4,:Goto C:LbI X:Mat F Goto 02. 交点法正算子程序(Z)程序名:ZH2R24-H(4)2688R(3)A:H2-H(3)240R2B:(H2-N2)24R)Sin(Abs(P)-(H(4)-N(4)2688R(3) Sin(Abs(P)E:(R+A)tan(Abs(P)2)+B-ET:PAbs(P) W:0M:HC:If ZO-T:Then Z-OS:GZ2:Goto 2: IfEnd
3、: If ZO-T+H:Then Z-O+TS:Prog “HX”:G+WKZ2:Goto 4:IfEnd:If ZO-T+RAbs(P)180+H2-N2: Then 180(Z-O+T-0.5H) RS : A+R(1-Cos(S)B:H2-H(3) 240R2+Rsin(S)A:RM:G+WSZ2:Goto 4: IfEnd:O-T+RAbs(P)180+H2+N2-ZS:(R+N2R24-N(4)2688R(3)tan(Abs(P) 2)+N2-N(3) 240R2+ET :NH:Prog “HX”:G+PS:S-WKZ2:U+(T-A)Cos(S)-WBSin(S)I:V+(T-A)
4、Sin(S)+WBcos(S)J:Goto 3: LbI 4:U+(A-T)cos(G)-WBsin(G)I:V+(A-T)Sin(G)+WBcos(G) J: Goto 3: LbI 2:U+Scos(Z2)I:V+Ssin(Z2) J: LbI 3:CH3. 交点法缓和段转化子程序(HX)程序名:HXS-S(5) 40R2H2+S(9) 3456R(4) H(4)A:S(3) 6RH-S(7) 336R(3) H(3)+S(11) 42240R(5) H(5)B:90S2RHK:RHSM4. 交点法反算子程序(ZX)程序名:ZXZ:0D:LbI 0:Prog “Z”:Pol(X-I,Y-J
5、):J-Z2 J:Isin(J) S:Icos(J) I:If Abs(I)0.1:Then Z+IZ:SD:Goto 2:Else Goto 1: LbI 1:If M=0:Then Z+IZ:Goto 0:Eles Pol(M-WS,I):(JM)/180I:Z+IZ:Goto 0:IfEndLbI 25线路选择子程序(线路选择输0时。则输曲线参数(QX)程序名:QX1A:”QX:?=0,X1=1”?A:AZ3:If A=0:Then Goto 1:Else Goto 2: IfEnd:LbI 1:”JDKM”?O:”XJ”?U:”YJ”?V:”FW”?G:”LS1”?H:?“LS2”?N
6、:“JDPJ”?P:?R:LbI 26坐标计算参数转化子程序(F)程序名:FMat F1,1O: Mat F1,2U: Mat F1,3V: Mat F1,4G: Mat F1,5H: Mat F1,6N: Mat F1,7P: Mat F1,8R7导线点子程序(DX)程序名:DXZ4K:Z5L:“XZ”?K:”YZ”?L:KZ4:LZ58线路中线元段判别子程序(KM)程序名:KMIf Z3=0:Then Goto 0:Else If Z3=1:Then Prog “X1”: LbI 09:极坐放样计算程序(计算放样点至置仪点方位角及距离)程序名:JSX:Y:Z4K:Z5L:Pol(X-K,
7、Y-L):IF J0:Then J+360J:IFEnd:Int(J)+0.01Int(60Frac(J)+0.006Frac(60Frac(J) J: Fix 4:” FWJ=”: Locate 6,4,J:Fix 3:” S=”:Locate 6,4,I10数据子程序(附后示例)程序名:X1(线路1坐标计算要素程序)If Z122269.856:Then 121656.952, 2603848.019, 508351.147, 985322.6,660,300, 414744.1, 1415.097Mat F:Goto 0: IfEnd:If Z125115.9:Then 123984.9
8、82, 2601974.464, 509885.441, 1404106.8,700,400, 393143.7,2800Mat F:Goto 0:IfEnd:LbI 0: Prog”F”说明:If Z交点HZ点桩号:Then交点桩号,交点X坐标,交点Y坐标,前交点至止交点方位角,交点前段缓和曲线长度,交点后段缓和曲线长度,交点总偏角,圆半径 Mat F:Goto 0: IfEnd:注:偏角分正负,左偏为负,右偏为正.加粗O为子母.输入部分:1、A:X,Y=1,KM,D=2? 选择正反算,输1为正算,输2为反算;2、XZ? YZ?输入置仪点X、Y坐标3、”QX:?=0,X1=1”? 选择手工输
9、入参数及调入参数,输0则手工输入交点线元参数,输1则调入子程序X1的线元参数。4、PJ? 路线方向中线向右夹角,默认为90度;5、JDKM?XJ?YJY?FW?LS1?LS2?JDPJ?R?分别输入:交点桩号,交点X坐标,交点Y坐标,前交点至止交点方位角,交点前段缓和曲线长度,交点后段缓和曲线长度,交点总偏角,圆半径6、KM? 输入计算段任意点桩号(主程序中输-1,返回选择正反算,输-2,返回选择输入参数、调用参数,输-3,输出计算段线元参数。7、D? 距中桩距离,左负,右正,中桩输0。输出部分:1、X=*正算时,计算得出的所求点的X坐标2、 Y=*正算时,计算得出的所求点的Y坐标3、FWJ=* 正算时,计算得出的所求点的至置仪点方位角(显示125.3258即是125度32分58秒)4、S=* 正算时,计算得出的所求点的至置仪点距离5、=*反算时,计算得出的所求点的里程6、=*反算时,计算得出的所求点的边距