本程序由一個(gè)主程序JD和三個(gè)子程序(JDA、JDB、JDC)構(gòu)成,運(yùn)行時(shí)只需運(yùn)行主程序即可!
本程序適用于單交點(diǎn)對(duì)稱型、不對(duì)稱型、無緩和曲線單圓曲線型一個(gè)交點(diǎn)范圍內(nèi)(含交點(diǎn)前后有直線段時(shí))的曲線要素核對(duì)和坐標(biāo)計(jì)算,手工輸入要素,對(duì)設(shè)計(jì)圖紙的“直線、曲線轉(zhuǎn)角表”中交點(diǎn)數(shù)據(jù)進(jìn)行復(fù)核驗(yàn)證,并為線元法程序提供起點(diǎn)坐標(biāo)起點(diǎn)切線方位角等數(shù)據(jù)!當(dāng)然本程序也可單獨(dú)逐交點(diǎn)輸入進(jìn)行放樣計(jì)算用!鑒于5800計(jì)算器的空間和以上所述本程序的主要目的,故此程序不修改為數(shù)據(jù)庫版本!需要的自行修改結(jié)合XY框架自己修改為數(shù)據(jù)庫反算程序等!
主程序名: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↙
程序說明:
已知數(shù)據(jù)輸入:
XC ? 測(cè)站X坐標(biāo)
YC ? 測(cè)站Y坐標(biāo)
K(JD)?交點(diǎn)樁號(hào)
X(JD)?交點(diǎn)X坐標(biāo)
Y(JD)?交點(diǎn)Y坐標(biāo)
LS1
?第一緩和曲線長度
LS2
?第二緩和曲線長度
R
? 圓曲線半徑
(ZH)FWJ°?交點(diǎn)前(即前交點(diǎn)至本交點(diǎn)也即ZH點(diǎn))的正切線方位角
α(Z-,Y+)?本交點(diǎn)處線路轉(zhuǎn)角(左轉(zhuǎn)為負(fù),右轉(zhuǎn)為正,度分秒輸入)
K×+×××? 待求樁號(hào)
Z ?待求樁號(hào)距中距離(左負(fù)值,右正值,中為0)
RJ ?斜交右角(線路切線前進(jìn)方向與邊樁右側(cè)夾角)
計(jì)算結(jié)果顯示:
T1=第一切線長
T2=第二切線長
L=曲線總長
LY=圓曲線長
E=曲線外距
K(ZH)=直緩點(diǎn)樁號(hào)
K(HY)=緩圓點(diǎn)樁號(hào)
K(QZ)=曲中點(diǎn)樁號(hào)
K(YH)=圓緩點(diǎn)樁號(hào)
K(HZ)=緩直點(diǎn)樁號(hào)
X= Y=待求點(diǎn)的坐標(biāo)(其中:L-左 Z-中 R-右)
QXFWJ(Z)=待求點(diǎn)的中樁切線方位角(當(dāng)求中樁坐標(biāo)時(shí)顯示)
S= F=測(cè)站至待求點(diǎn)的水平距離、方位角(其中L-左 Z-中 R-右)