卡西欧5800基本测量程序.docx
《卡西欧5800基本测量程序.docx》由会员分享,可在线阅读,更多相关《卡西欧5800基本测量程序.docx(9页珍藏版)》请在冰豆网上搜索。
卡西欧5800基本测量程序
卡西欧5800程序
(完整版)
说明:
本程序适用于公路、桥梁、隧道测量。
本程序简单、方便、快捷、拓展功能宽,使用时只需按曲线要素表输入一次就可以计算整条线路(包括高程、超高段横坡),能正、反算,在已知坐标下可以反算出该点桩号及相对宽度,拓展功能有,放边、仰坡、隧道断面测量、开挖轮廓线等。
主程序:
MAIN
"ZH(0)F
(1)HMJ(0为正算、1为反算)
IfM=0:
Then"ZHUANGHAOA:
“KUANDUW:
ElseHX=H
H:
HY=HW:
"Z=HQ:
IfEndJ
(第一个交点参数)
(交点桩号)…-P:
(切线长度)…-T:
(曲线总长)…-S:
(圆半径)…
-R=:
(缓和曲线长)…-L:
(第一方位角)…-U:
(第二方位角)•••-V:
(交点X坐标)N:
(交点丫坐标)E:
(第一直线长、无为0)…
-D:
(第一坡度)…-Z〔8〕:
(第二坡度)…-Z〔9〕:
(缓和曲线超高段长度)…-z〔10〕:
(曲线偏向,右偏为+1,左偏为-1)…-KJ
IfM=0:
ThenIfAThengoto1:
IfEnd:
IfEndJ
Prog"ZFXZ"J
IfK=0:
Thengoto2:
IfEndJ
…………(中间交点参数)
Prog"ZFXZ"J
IfK=0:
Thengoto2:
IfEndJ
(最后一个交点参数)
IfM=0:
ThenIfA>P-T+S+D:
ThenGoto1:
lfEnd:
lfEndJ
ProgHZFXZJ
IfK=0:
Thengoto2:
IfEndJ
Lb11:
"NOTASK"J
Lb12:
IfM=1:
ThenIfA=1:
Then"ZHUANGHAO:
Z丄
"SJKUANDU:
B丄
IfEnd:
IfEndJ
END
KUANDU(拓展功能程序,用于反算)
1—M:
Prog1'MAIN'J
Z—A:
gE:
0—WJ
ProgGAOCHENGJ
E—WJ
Q-F—PJ
IfP<……(从小至大):
Then……—D:
Goto1:
IfEndJ
……(同上)
Lb11J
'……':
D丄
(同上)丄
END
YUAN
K(B+(2R))—FJ
r
2RSin(KF)—CJ
J+Fr—JJ
Prog"XZBH"
HHQX
B-BA5-(90(RL)2)—CJ
KB"-(6RL)—FJ
r
J+F—JJ
Prog"XZBH"
PYJS
r
IfO=0:
Then"YUAN":
J+F—J:
IfEndJ
r
IfO=1:
Then"HHQ"X:
J+2F—J:
IfEndJ
IfO=2:
Then"LINE":
J+180—J:
IfEndJ
W—CJ
IfA>P-T+S-L:
ThenJ-90—J:
ElseJ+90—J:
IfEndJ
Prog"XZBH"J
"X=":
XA
"Y=":
YA
QXCS有改)
Prog"QDZB"J
IfAThenA-P+T—B:
U—J:
1—O:
Prog"HHQX:
Goto
1:
lfEndJ
IfAThenA-P+T-L—B:
0—0:
L-LA3-(90R2)—C:
KL+(6R)
rr
—F:
U+F—J:
Prog"XZBH":
U+3Fr—J:
Prog"YUAN":
Goto
1:
IfEndJ
IfAThenP-T+S-A—B:
1—O:
-K—K:
V+180—J:
Prog"
HHQX:
Goto1:
IfEndJ
IfAThen2—O:
A-P+T-S—C:
Prog"XZBH:
IfEndJ
Lb11:
J
Prog"PYJS"J
Prog"GA0CHENG
QDZB
N—X:
E—Y:
T—CJ
IfA>P-T+S-L:
ThenV—J:
ElseU+180—J:
IfEndJ
Prog"XZBH"J
X—Z〔5〕:
Y—Z〔6〕
JDTZ
IfZ〔1〕<0:
ThenZ〔1〕+360—Z[1]:
IfEndJ
IfZ〔1J>360:
ThenZ〔1〕-360—Z[1]:
IfEndJ
IfZ〔2〕<0:
ThenZ〔2〕+360—Z[2]:
IfEndJ
IfZ〔2J>360:
ThenZ〔2〕-360—Z[2]:
IfEndJ
FWJ
0^I:
0^JJ
Pol(H-G,W-Z)J
J<0?
J+360tJJ
J—F
DOTLINE
Pol(H-X,W-Y):
I—NJPol(G-H,Z-W):
I—EJPol(X-G,Y-Z):
I—DJ
(N+E+D)+2—IJ
V(l(l-N)(l-E)(l-D))—IJ
2I-D—IJ
ZSPD
IfAThenProgHQXCS:
0—K:
lfEndJ
FSPD
IfK=-1:
ThenIfZ〔1〕ThenlfF1〕:
ThenGoto
1:
lfEnd:
lfF>Z〔2〕:
ThenGoto1:
IfEnd:
ElseIfF1〕:
Then
F>Z〔2〕:
ThenGoto1:
IfEnd:
lfEnd:
IfEnd:
lfEndJ
IfK=1:
ThenIfZ〔1〕>Z〔2〕:
ThenIfF>Z〔1〕:
ThenGoto
1:
IfEnd:
lfFThenGoto1:
IfEnd:
ElseIfF>Z〔1〕:
Then
IfFThenGoto1:
lfEnd:
lfEnd:
lfEnd:
lfEnd0^A:
Goto2J
Lb11JlfO=0:
ThenProg"FSYUA"N:
lfEndJlfO=1:
ThenProg"FSHHQ"X:
lfEndJ
1tAJ
Lb12
FSTJ
U-90KtZ[1]J
V-90KtZ[2]J
Prog"JDTZ"J
P-TtAJ
-1tOJ
Prog"JDZB"J
Prog"FSPD"J
IfA=0:
ThenGoto1:
IfEndJ(有改)
Z[1]tZ[1]:
Z[1]+K(L-(2R))rtZ[2]:
1tO;
Prog"JDTZ"J
Prog"JDZB"J
Prog"FSPD"J
lfA=1:
Then0tK:
Goto2:
lfEndJ
2r
Z[5]tx:
Z[6]tY:
(KL)-(6R)tF:
L-La3-(90R)tc:
U+FtjJ
ProgHXZBHJ
U+3F+903J:
R—CJ
Prog"XZBH"J
X—G:
Y—ZJ
Prog"FWJ"J
r
Z[2]—Z[1]:
Z[1]+K((S-2L)-R)—Z[2]:
0—0J
Prog"JDTZ"J
Prog"FSPD"J
IfA=1:
Then0—K:
Goto2:
IfEndJ
r
-K—K:
V+90K—Z[1]:
Z[1]+K(L-(2R))—Z[2]:
1—Oj
Prog"JDTZ"J
P-T+S—AJ
Prog"JDZB"J
Prog"FSPD"J
IfA=1:
Then0—K:
Goto2:
IfEndJ
Lb11J
IfD>0:
ThenP-T+S—A:
Prog"FSLINE":
IfA=1:
Then0—
K:
IfEnd:
IfEndJ
Lb12
FSYUAN
"YUAN"J360+K(F-Z[1])—FJ
F>360?
F-36厂F/J
P-T+L+nRF+180—Z:
lfK=1:
ThenR-I—B:
ElseI-R—B:
lfEndJ
FSHHQX
"HHQ"XJ
Z[5]—X:
Z[6]—YJ
Z[1]+180—J:
R—CJ
Prog"XZBH"J
X—G:
Y—ZJ
Z[5]—X:
Z[6]—YJ
Prog"DOTLINE"J
IfI<1:
Then0—B:
Goto3:
ElseI—B:
Prog"FSHHQX"1:
I—
Z[7]:
B+I-10—B:
Prog"FSHHQX1:
Ifl>Z[7]:
ThenGoto1:
Else:
Goto2:
IfEnd:
IfEndJ
Lb11J
B-I-2—B:
Prog"FSHHQX1J
lfl<1:
Then-l—l:
Goto3:
ElseGoto1:
lfEndJ
Lb12J
B+I-2—B:
Prog"FSHHQX1J
IfI<1:
ThenGoto3:
ElseGoto2:
IfEndJ(有改)
Lb13J
IfA>P-T+L:
ThenP-T+S-B-I—Z:
ElseP-T+B+I—Z:
IfEndJ
IfK=1:
ThenIfAThenD-E—B:
ElseE-D—B:
IfEnd:
IfEnd
IfK=-1:
ThenIfAThenE-D—B:
Else
B:
IfEnd:
IfEnd
FSHHQX1
Z[5]—X:
Z[6]—Y:
Z[1]+90K—JJ
Prog"HHQ"XJ
X—Z[3]:
Y—Z[4]J
r
R—C:
J+2Fr+90K—JJ
Prog"XZBH"J
X—G:
Y—ZJ
Z[3]—X:
Z[4]—YJ
Prog"DOTLINE"
JDZB
Prog"QDZB"J
Z[5]—Z[3]:
Z[6]—Z[4]J
IfO=-1:
ThenP-T+S—A:
Prog"QDZB":
Z[3]—Z[5]:
Z[4]ElseZ[1]+90K+K(L-(6R))r—J:
L-LA3-(90R2)—C:
XZBH":
IfEndJ
(Z[6]-Y+Xtan(Z[2])-Z[5]tan(Z[1]))-(tan(Z[2])-tan(Z[1]))
GJ
D-E—
—Z[6]:
Prog"
—
tanZ[2](G-X)+Y—ZJ
Prog"FWJ"
ZFXZ
IfM=0:
ThenProg"ZSPD:
ElseProg"FSTJ':
lfEnd
FSLINE
ProgHQDZBJ
X—G:
Y—Z:
J—NJ
ProgHFWJJ
N—J:
F-J—FJ
Icos(F)—GJ
IfGThenIfA>P-T+S-L:
ThenP-T+S+G—Z:
Isin(F)—B:
ElseP-T-G—Z:
-Isin(F)—B:
IfEnd:
1—A:
2—O:
Else0—A:
IfEnd
XZBH
X+Ccos(J)—XJ
Y+Csin(J)—Y
HENGPO
IfAThenZ[8]—V:
Goto1:
IfEndJ
IfAThen(Z[9]-Z[8])-Z[10]—
E:
Z[8]+(A-P+T-L+Z[10])E—V:
Goto1:
IfEndJ
IfAThenZ[9]—V:
Goto1:
IfEndJ
IfAThen(Z[8]-Z[9])-Z[10]—
E:
Z[9]+(A-P+T-S+L)E—V:
Goto1:
lfEndJ
Z[8]—VJ
Lb11
GAOCHENG
……(交点桩号)—O:
……(交点高程)—D:
……(小桩号坡度)—
N:
……(切线长度)—G:
……(圆曲线半径)—RJ
IfAThen0—K:
Goto1:
IfEndJ
IfAThen1—K:
Goto1:
IfEndJ
(K=0为直线、K=1为凸圆、K=-1为凹圆)
……(同上)
Lb11:
Prog"HENGP"OJ
2
K(A-O+G+(2R)—PJ
D+N(A-O)-P+WV—FJ
"DM":
F丄
FWJJS(测回法测坐标)
A"XA":
B"YA":
C"XB":
D"YB":
K"CHANGDU":
G"JIAODU"
J
l=0:
J=0:
Pol(C-A,D-B):
J<0?
J二J+360/J
E=J+GJ
J"FWJA
XX二A+KcosEA
Y"Y'二B+KsinE丄
"END"
说明:
"JIAODU顺时钟为正、逆时针为负,'XA、'YA为测站点坐标、'XBi、'YB为后视点坐标,'X'、'Y'为前视即待测点坐标,'CHANGDU为测站点到待测点距离。