求5800交点计算(中、边桩)坐标程序,还有计算说明.

2个回答

  • 主程序名:5.JD

    24→Dimz↙

    Cls :"XC"?U :"YC"?V :"K(JD)"?K :"X(JD)"?X :

    "Y(JD)"?Y :"LS1"?B :"LS2"?C :R :

    "(ZH)FWJ°"?M :"α(Z-,Y+)°"?O :M+O→N :

    Prog "JDA"↙

    Cls :"T1=":"T2=":"L=":"LY=":Locate 4,1,S :Locate 4,2,T :Locate 4,3,L :Locate 4,4,Q◢

    Cls :"E=":"K(ZH)=":Locate 7,1,E :Locate 7,2,Z[1]◢

    Cls :"K(HY)=":"K(QZ)=":"K(YH)=":"K(HZ)=":Locate 7,1,Z[2] :Locate 7,2,Z[3] :Locate 7,3,Z[4] :Locate 7,4,Z[5]◢

    LbI 0 :"K×+×××"?P :"Z"?D :If D≠0 :Then "RJ"?H :IfEnd :Prog "JDB"↙

    If D<0 :Then Cls :"X(L)=":"Y(L)=":Locate 6,1,F :Locate 6,2,G◢

    Pol(F-U,G-V :Cls :"S(L)=":Locate 6,1,I :"F(L)=":

    360Frac((J+360)÷360▼DMS◢

    Goto 0 :IfEnd↙

    If D=0 :Then Cls :"X(Z)=":"Y(Z)=":Locate 6,1,F :Locate 6,2,G :"QXFWJ(Z)=":Z▼DMS◢

    Pol(F-U,G-V :Cls :"S(Z)=":Locate 6,1,I :"F(Z)=":

    360Frac((J+360)÷360▼DMS◢

    Goto 0 :IfEnd↙

    If D>0 :Then Cls :"X(R)=":"Y(R)=":Locate 6,1,F :Locate 6,2,G◢

    Pol(F-U,G-V :Cls :"S(R)=":Locate 6,1,I :"F(R)=":

    360Frac((J+360)÷360▼DMS◢

    Goto 0 :IfEnd↙

    子程序1名:JDA

    If O<0 :Then -1→W :Else 1→W :IfEnd :WO→A ↙

    B2 ÷24÷R-B^(4)÷2688÷R ^(3) →Z[6] ↙

    C2 ÷24÷R-C^(4)÷2688÷R ^(3) →Z[7] ↙

    B÷2-B^(3)÷240÷R2 →Z[8] ↙

    C÷2-C^(3)÷240÷R2 →Z[9] ↙

    Z[8]+((R+Z[7]-(R+Z[6])cos(A))÷sin(A))→S↙

    Z[9]+((R+Z[6]-(R+Z[7])cos(A))÷sin(A))→T↙

    RAπ÷180+(B+C) ÷2→L↙

    RAπ÷180-(B+C) ÷2→Q↙

    (R+(Z[6]+Z[7])÷2)÷cos(A÷2)-R→E↙

    K-S→Z[1] ↙↙

    Z[1]+B→Z[2] ↙↙

    Z[2]+Q÷2→Z[3]↙

    Z[1]+L-C→Z[4]↙

    Z[4]+C→Z[5]↙

    子程序2名:JDB

    X-Scos(M)→Z[19]:

    Y-Ssin(M)→Z[20]↙

    X+Tcos(N)→Z[21]:

    Y+Tsin(N)→Z[22]↙

    If P>Z[1]:Then Goto 1 :IfEnd↙

    Z[1]-P→L↙

    X-(S+L)cos(M)+Dcos(Z+H)→F↙

    Y-(S+L)sin(M)+Dsin(Z+H)→G↙

    M→Z :Goto 5↙

    LbI 1 :If P>Z[2]:Then Goto 2 :IfEnd↙

    P-Z[1]→L:L→Z[12]:B→Z[13]:Prog"JDC"↙

    Z[19]+Z[14]cos(M)-WZ[15]sin(M)+Dcos(Z+H)→F↙

    Z[20]+Z[14]sin(M)+WZ[15]cos(M)+Dsin(Z+H)→G↙

    M+90WL2 ÷(BRπ)→Z↙

    Goto 5↙

    LbI 2 :If P>Z[4]:Then Goto 3 :IfEnd↙

    P-Z[1]→L:90(2L-B)÷R÷π→Z[11]↙

    Rsin(Z[11])+Z[8]→Z[14]:R(1-cos(Z[11]))+Z[6]→Z[15]↙

    Z[19]+Z[14]cos(M)-WZ[15]sin(M)+Dcos(Z+H)→F↙

    Z[20]+Z[14]sin(M)+WZ[15]cos(M)+Dsin(Z+H)→G↙

    M+WZ[11]→Z↙

    Goto 5↙

    LbI 3 :If P>Z[5]:Then Goto 4 :IfEnd↙

    Z[5]-P→L:L→Z[12]:C→Z[13]:Prog"JDC"↙

    Z[21]-Z[14]cos(N)-WZ[15]sin(N)+Dcos(Z+H)→F↙

    Z[22]-Z[14]sin(N)+WZ[15]cos(N)+Dsin(Z+H)→G↙

    N-90WL2 ÷(CRπ)→Z↙

    Goto 5↙

    LbI 4 :P-Z[5]→L↙

    X+(T+L)cos(N)+Dcos(Z+H)→F↙

    Y+(T+L)sin(N)+Dsin(Z+H)→G↙

    N→Z↙

    Goto 5↙

    LbI 5 :360Frac((Z+360)÷360→Z↙

    子程序3名:JDC

    If Z[12]=0 :Then 0→Z[14]:0→Z[15]:Else↙

    Z[12]- Z[12]^(5)÷40÷(RZ[13])2+ Z[12]^(9)÷3456÷(RZ[13])^(4) →Z[14]↙

    Z[12]^(3)÷6÷(RZ[13])-Z[12]^(7)÷336÷(RZ[13])^(3)+ Z[12]^(11) ÷42240÷(RZ[13])^(5)→Z[15] ↙

    IfEnd↙

    程序说明:

    已知数据输入:

    XC 测站X坐标

    YC 测站Y坐标

    K(JD)?交点桩号

    X(JD)?交点X坐标

    Y(JD)?交点Y坐标

    LS1 第一缓和曲线长度

    LS2 第二缓和曲线长度

    R 圆曲线半径

    (ZH)FWJ°?交点前(即前交点至本交点也即ZH点)的正切线方位角

    α(Z-,Y+)?本交点处线路转角(左转为负,右转为正,度分秒输入)

    K×+×××?待求桩号

    Z 待求桩号距中距离(左负值,右正值,中为0)

    RJ 斜交右角(线路切线前进方向与边桩右侧夹角)

    计算结果显示:

    T1=第一切线长

    T2=第二切线长

    L=曲线总长

    LY=圆曲线长

    E=曲线外距

    K(ZH)=直缓点桩号

    K(HY)=缓圆点桩号

    K(QZ)=曲中点桩号

    K(YH)=圆缓点桩号

    K(HZ)=缓直点桩号

    X= Y=待求点的坐标(其中:L-左 Z-中 R-右)

    QXFWJ(Z)=待求点的中桩切线方位角(当求中桩坐标时显示)

    S= F=测站至待求点的水平距离、方位角(其中L-左 Z-中 R-右)