5800计算器全线坐标计算放样程序.docx
《5800计算器全线坐标计算放样程序.docx》由会员分享,可在线阅读,更多相关《5800计算器全线坐标计算放样程序.docx(23页珍藏版)》请在冰豆网上搜索。
![5800计算器全线坐标计算放样程序.docx](https://file1.bdocx.com/fileroot1/2023-1/30/da793c52-5e0d-4466-85bc-8a233e34fdcc/da793c52-5e0d-4466-85bc-8a233e34fdcc1.gif)
5800计算器全线坐标计算放样程序
5800计算器全线坐标计算放样程序(修改版)
“XLZBJSCX”◢(第一个程序)
Lb10↙
Cls:
Fix4:
30→Dimz↙
“XHS="?
G(后视点X):
"YHS="?
L(后视点Y):
"XZJ="?
M(置镜点X):
"YZJ="?
N(置镜点Y):
Pol(G-M,L-N):
"DH=":
I(后视距)◢J<0=>J+360→J:
"FH=":
J►DMS◢(后视方位角)
Lbl1↙(If(如果的意思)And(和字的意思)Then(然后的意思))
“K=”?
K◢(计算里程)(下面有色的是数据库)
If(如果)K<51760.052本曲线缓直点桩号And(和)K≥51048.785上一个曲线缓直点桩号:
Then(然后)本曲线缓直点桩号51760.052→Z[1]:
上一个曲线缓直点桩号51048.785→Z[2]:
1-1→O(注:
左偏曲线输入-1→O,右偏曲线输入1→O):
偏角12’23’19.5’→A:
半径3289.486→R:
第一缓和曲线长度0→Z[6]:
第二缓和曲线长度0→Z[7]:
交点X坐标→B:
交点Y坐标→C:
小里程向交点方位角→E:
交点向大里程方位角→F:
Goto2:
IfEnd↙(重兰字是输入的数字)
…………(曲线段分段输入)
补充直线段输入如下
If(如果)K<本段直线终点里程And(和)K≥本段直线起点里程:
Then(然后)1→O:
本段直线终点里程→Z[3]:
终点坐标X→Z[16]:
终点坐标Y→Z[17]:
方位角→E:
Goto4:
IfEnd↙
Lb12↙(曲线要素计算)
Z[6]÷2-Z[6]^3÷(240R^2)+Z[6]^5÷(34560*R^4)→Z[8]↙(M1不输)
Z[7]÷2-Z[7]^3÷(240R^2)+Z[7]^5÷(34560R^4)→Z[9]↙(M2不输)
Z[6]^2÷(24R)-Z[6]^4÷(2688R^3)→Z[10]↙(P1不输)
Z[7]^2÷(24R)-Z[7]^4÷(2688R^3)→Z[11]↙(P2不输)
(πAR)÷180+0.5×(Z[6]+Z[7])→S↙(曲线总长)
90×Z[6]÷(R×π)→Z[14]↙(第一缓和曲线总偏角)(×÷以后自己改)
90×Z[7]÷(R×π)→Z[15]↙(第二缓和曲线总偏角,可以省略)
Z[8]+(R+Z[10])TAN(A/2)-(Z[10]-Z[11])/SINA→Z[12]↙(切线T1)
Z[9]+(R+Z[11])TAN(A/2)+(Z[10]-Z[11])/SINA→Z[13]↙(切线T2)
B+Z[12]*COS(E+180)→Z[16]↙(ZH点X)
C+Z[12]*SIN(E+180)→Z[17]↙(ZH点Y)
Z[1]-S→Z[3]↙(ZH点里程)
Z[3]+Z[6]→Z[4]↙(HY点里程)
Z[1]-Z[7]→Z[5]↙(YH点里程)
GOTO3↙
LB13↙(判断里程点与曲线关系)
IfK≤Z[3]AndK>Z[2]:
ThenGoto4:
IfEnd↙
IfK≤Z[4]AndK>Z[3]:
ThenGoto5:
IfEnd↙
IfK≤Z[5]AndK>Z[4]:
ThenGoto6:
IfEnd↙
IfK≤Z[1]AndK>Z[5]:
ThenGoto7:
IfEnd↙
LB14↙(里程小于直缓点直线独立坐标)
K-Z[3]→X:
0→Y:
E→T:
Prog“TYZBCX”:
Goto1↙
Lb15↙(第一缓和曲线独立坐标)
K-Z[3]→H↙
H-H^5/(40*R^2*Z[6]^2)+H^9/(3456*R^4*Z[6]^4)→X↙
H^3/(6*R*Z[6])-H^7/(336*R^3*Z[6]^3)→Y↙
90*H^2/(R*π*Z[6])→T↙
IFO>0:
ThenT+E→T:
ElseE-T→T:
T<0=>360+T→T:
IfEnd↙
PRrog“TYZBCX”:
Goto1↙
Lb16↙(圆曲线独立坐标)
K-Z[4]→H↙
H*180/(R*π)+Z[14]→T↙
R*SIN(T)+Z[8]→X↙
R*(1-COS(T))+Z[10]→Y↙
IFO>0:
ThenT+E→T:
ElseE-T→T:
T<0=>360+T→T:
IfEnd↙
Prog“TYZBCX”:
Goto1↙
Lb17↙(第二缓和曲线独立坐标)
Z[1]-K→H↙
H-H^5/(40*R^2*Z[7]^2)+H^9/(3456*R^4*Z[7]^4)→U↙
H^3/(6*R*Z[7])-H^7/(336*R^3*Z[7]^3)→V↙
90*H^2/(R*π*Z[7])→T↙
Z[13]COS(A)+Z[12]-U*COS(A)-V*SIN(A)→X↙
Z[13]*SIN(A)-U*SIN(A)+V*COS(A)→Y↙
IFO>0:
ThenF-T→T:
T<0=>360+T→T:
ElseF+T→T:
IfEnd↙
Prog“TYZBCX”:
Goto1↙
子程序:
“TYZBCX”↙(统一坐标计算)(第2个程序)
IFO<0:
Then-Y→Y:
IfEnd↙
“QXJ=”:
T◢(计算里程点切线方位角,可以不显示)
Z[16]+X*COS(E)-Y*SIN(E)→Z[18]↙
Z[17]+X*SIN(E)+Y*COS(E)→Z[19]↙
“XI=”:
Z[18]◢(XI中线X)
“YI=”:
Z[19]◢(YI中线Y)
Pol(Z[18]-M,Z[19]-N):
"DI=":
I◢(中桩放样距)J<0=>J+360→J:
"FI=":
J►DMS◢(中桩放样方位角)
“PJ=”?
P◢(输入边桩与线路夹角PJ,左偏–90右+90)
“PD=”?
D◢(输入边桩距PD)
Z[18]+D*COS(T+P)→Z[20]↙
Z[19]+D*SIN(T+P)→Z[21]↙
“XP=”:
Z[20]◢(XP边桩X)
“YP=”:
Z[21]◢(YP边桩Y)
Pol(Z[20]-M,Z[21]-N):
"DP=":
I◢(边桩放样距)J<0=>J+360→J:
"FP=":
J►DMS◢(边桩放样方位角)
Return↙(以上都要输进计算器)注解不输
K里程XI中线XYI中线YPD输入边桩距XP边桩X坐标
YP边桩Y坐标I边桩放样距PJ输入边桩与线路夹角,左偏–90右+90)I中桩放样距T计算里程点切线方位角,可以不显示
卡西欧FX5800全线贯通万能正、反算程序
FX5800计算器的积分程序(正反算、全线贯通、新线路)终极版
ZHUCHENGXU 主程序
"1.ZS,2.FS"?
→Q 输入1正算,输入2反算
“NEW=0,OLD ≠0”?
Z
If Z=0:
Then “X0=”?
A:
“Y0=”?
B:
“C0=”?
C:
“1/R0=”?
D:
“1/RI=”?
E:
“SP=”?
F:
“EP=”?
G:
Ifend:
Q=2=>Goto2
Lbl 1:
“KM=,<0Stop”?
H:
H<0=>Stop:
“PJ=”?
O:
“PY=”?
L
Lbl Z:
Z=1=>Prog“01”:
Z=2=>Prog“02” 选择数据库文件,可增加
H-F→X:
0.5(E-D)÷(G-F)→N
C+(XD+NX2)*180÷π→P:
P<0=>P+360→P:
P>360=>P-360→P
A+∫(cos(C+(XD+NX2)*180÷π),0,X)+Lcos(P+O)→U
B+∫(sin(C+(XD+NX2)*180÷π),0,X)+Lsin(P+O)→V
Q=2=>Goto 4:
Cls:
Fix3
"Xn=":
Locate 4,1,U:
"Yn=":
Locate 5,2,V:
“FWJ=”:
P▶DMS◢
Norm2:
Cls:
Goto 1
Lbl 2:
“XD=,<0,STOP”?
R:
R<0=>Stop:
“YD=”?
S
“KMDG=”?
H:
90→O:
0→L:
Goto Z (H线路范围内的任意桩号)
Lbl 4:
Pol(R-U,S-V):
J<0=>J+360→J
While abs(Icos(J-P))≤0.001:
P-J>180=>J+360→J:
P-J<-180=>P+360→P:
IFP-J>0:
then-I→L:
elseI→Lifend
Goto 3:
Whileend:
H+Icos(J-P)→H:
Goto Z
Lbl 3:
Cls:
Fix3
“KM=”:
Locate 4,1,H:
“PY=”:
Locate 4,2,L◢
Norm2:
Cls:
Goto 2
01(数据库子程序)
IfH<=第一曲线终点桩号:
then 第一曲线起点X→A:
第一曲线起点Y→B:
第一曲线起点方位角→C:
起点曲率→D:
终点曲率→E:
起点桩号→F:
终点桩号→G:
return:
ifend
……………
程序说明:
1、该程序可以计算任意线形(直线、圆曲线、缓和曲线、不完整曲线)任意桩号的坐标(正算,输入1),也可根据坐标计算该点到线路的距离及垂足桩号(反算,输入2);
2、(NEW=0,OLD≠0)?
如果要计算的点为数据库线路中的点,则输入数据库编号(以整数1、2、3…代替输入);如果在数据库中没有要计算线路的数据,则输入曲线要素
X0:
曲线起点X坐标;
Y0:
曲线起点Y坐标;
C0:
曲线起点方位角;
R0-1、RI-1:
曲线起点、终点曲率,直线为0,曲线左偏输入负值,右偏输入正值;
SP、EP:
曲线起点桩号,终点桩号;
KM:
待求点桩号;
PJ:
正斜交的设定;
PY:
偏中距离,线路上的点输入0,右偏输入+值,左偏输入-值;
3、正算显示坐标及切线方位角;反算输入线路的任意桩号(此桩号越接近真实值计算速度越快)、待求点坐标,显示待求点桩号及偏中距离;
4、正算子程序为积分公式编写而成;反算子程序为角度趋近的方法编写,计算速度有点慢。
5、此程序显示较直观,结果在同一屏幕显示。
注*:
程序中乘号用*标示,其余为X。
CASIOfx5800P公路施工放线测量公式及程序
一、已知座标,求平距和方位角(座标反算):
公式:
D=√(Xp-Xo)2+(Yp-Yo)2α=arctg(Yp-Yo)/(Xp-Xo)程序:
“A”?
→A:
“B”?
→B:
Lbl0:
“X”?
→X:
“Y”?
→Y:
(X-A)→M:
(Y-B)→N:
“D=”:
√(M2+N2)⊿tan-1(N/M)→C:
IfM<0:
Then“Q=”:
180+C→Q⊿ElseIfN>0:
Then“Q=”:
C→Q⊿Else“Q=”:
360+C→Q⊿IfEnd:
IfEnd:
Goto0说明:
(A,B)为测站点坐标,(X,Y)为所求点坐标。
输出:
D为平距,Q为方位角。
二、已知直线的坐标方位角Q和直线起点坐标(Xo,Yo),求直线上任一点的中桩坐标(X,Y),左右边桩坐标(XL,YL)、(XR,YR):
公式:
X=Xo+LcosQY=Yo+LsinQ程序:
“C”?
→C:
“D”?
→D:
“Q”?
→Q:
“Z”?
→Z:
“U”?
→U:
“T”?
→T:
“V”?
→V:
Lbl1:
“L”?
→L:
Abs(L-Z)→W:
“X=”:
C+W*cos(Q)→X⊿“Y=”:
D+W*sin(Q)→Y⊿IfU≤0:
ThenGoto1:
Else“XL=”:
X+U*cos(Q-V)→A⊿“YL=”:
Y+U*sin(Q-V)→B⊿“XR=”:
X+T*cos(Q+V)→E⊿“YR=”:
Y+T*sin(Q+V)→F⊿Goto1说明:
(C,D)为直线起点坐标,Q为直线方位角,Z为起点桩号,L为所求坐标点桩号。
“U”为左边距,“T”为右边距,“V”为偏角;U=0时不算边桩坐标。
输出:
(X,Y)为中桩坐标,(XL,YL)为左边桩坐标,(XR,YR)为右边桩坐标。
三、已知圆曲线起点坐标(U,V),切线方位角Q,桩号Z和圆半径R,求圆曲线上桩号为L的点中桩坐标(X,Y),左右边桩坐标(XL,YL)、(XR,YR):
公式:
ψ=90L/(лR)(偏角公式)C=2Rsinψ(对应弧的弦长公式)弦的方位角:
Q=Qo±ψ(曲线左转时为“-”)程序:
“U”?
→U:
“V”?
→V:
“Q”?
→Q:
“R”?
→R:
“Z”?
→Z:
“W=-1,1”:
?
→W:
“ZJ=”:
?
→Z[1]:
“YJ=”:
?
→Z[2]:
“PIANJIAO”:
?
→T:
Lbl2:
“L”?
→L:
180*(L-Z)/(2π*R)→J:
R*2sin(J)→K:
IfW=-1:
Then“X=”:
U+K*cos(Q-J)→X⊿“Y=”:
V+K*sin(Q-J)→Y⊿“Q=”:
Q-180*(L-Z)/(πR)→O⊿ElseIfW=1:
Then“X=”:
U+K*cos(Q+J)→X⊿“Y=”:
V+K*sin(Q+J)→Y⊿“Q=”:
Q+180*(L-Z)/(πR)→O⊿IfEnd:
IfEnd:
T=0=>Goto2:
“XL=”:
X+Z[1]*cos(O-T)→F⊿“YL=”:
Y+Z[1]*sin(O-T)→P⊿“XR=”:
X+Z[2]*cos(O+T)⊿“YR=”:
Y+Z[2]*sin(O+T)⊿Goto2说明:
W=-1时曲线左转,W=1时曲线右转。
“ZJ=”为左边距,“YJ=”为右边距,“PIANJIAO”为偏角,偏角输0时不算边桩坐标。
输出:
(X,Y)为中桩坐标,“Q=”为所求点方位角,(XL,YL)为左边桩坐标,(XR,YR)为右边桩坐标。
四、已知直缓点坐标(M,N)、方位角Q、桩号Z,缓和曲线全长S和连接圆半径R,求缓和曲线上任一点(桩号为L)的中桩坐标(X,Y),左右边桩坐标(XL,YL)、(XR,YR):
公式:
θ=30L2/(πRLs)C=L-L5/(90R2Ls2)α=α±90Ls2/(πA2)程序:
“M”?
→M:
“N”?
→N:
“R”→R:
“A”?
→A:
“S”?
→S:
“Z”?
→Z:
“Q”?
→Q:
“W=-1,1”:
?
→W:
“ZJ=”?
→Z[1]:
“YJ=”?
→Z[2]:
“PIANJIAO”:
?
→T:
Lbl3:
“L”?
→L:
Abs(L-Z)→H:
30*H2/(πRS)→D:
H-H5/(90R2S2)→C:
IfW=-1:
Then“X=”:
M+C*cos(Q-D)→X⊿“Y=”:
N+C*sin(Q-D)→Y⊿A=0=>Goto3:
“Q=”:
Q-90H/(πA)→E⊿ElseIfW=1:
Then“X=”:
M+C*cos(Q+D)→X⊿“Y=”:
N+C*sin(Q+D)→Y⊿A=0=>Goto3:
“Q=”:
Q+90*H/(πA)→E⊿IfEnd:
IfEnd:
T=0=>Goto3:
“XL=”:
X+Z[1]*cos(E-T)⊿“YL=”:
Y+Z[1]*sin(E-T)⊿“XR=”:
X+Z[2]*cos(E+T)⊿“YR=”:
Y+Z[2]*sin(E+T)⊿Goto3说明:
“A”为缓和曲线参数,W=-1时曲线左转,W=1时曲线右转。
“ZJ=”为左边距,“YJ=”为右边距,“PIANJIAO”为偏角,偏角输0时不算边桩坐标。
输出:
(X,Y)为中桩坐标,“Q=”为所求点方位角,(XL,YL)为左边桩坐标,(XR,YR)为右边桩坐标。
五、已知卵形曲线(即非完整缓和曲线)大圆半径R,小圆半径r,缓和曲线参数A,以大圆的圆缓点为起点,其坐标为(C,D),其方位角为Q,其桩号为Z,求桩号为L的点的中桩坐标(X,Y),左、右边桩坐标(XL,YL)、(XR,YR)。
公式:
偏角:
θ=arctg[(Yp-Yo)/(Xp-Xo)]-90LR/(πR)Xj=Lj-Lj5/(40A4)+Lj9/3456A8-……,Yj=Lj3/(6A2)-Lj7/(336A6)+Lj11/(42240A10)-……Lj=A/Rj(Rj为曲率半径)S=√(Xp-Xo)2+(Yp-Yo)2(弦长公式)α=Q±θ(弦线方位角公式)Xp=Xo+S*cosα,Yp=Yo+sinα程序:
“A”?
→A:
“C”?
→C:
“D”?
→D:
“R”?
→R:
“Q”?
→Q:
“Z”?
→Z:
“W=-1,1”?
→W:
A/R→J:
J-J5/(40*A4)+J9/(3456*A8)→E:
J3/(6*A2)-J7/(336*A6)+J11/(42240*A10)→F:
90*J/(πR)→B:
“ZJ=”?
→Z[1]:
“YJ=”?
→Z[2]:
“PIANJIAO”:
?
→T:
Lbl4:
“L”?
→L:
J+Abs(L-Z)→S:
S-S5/(40*A4)+S9/(3456*A8)→M:
S3/(6*A2)-S7/(336*A6)+S11/(42240*A10)→N:
Abs(M-E)→G:
Abs(N-F)→H:
√(G2+H2)→K:
arctg(H/G)→I:
IfI<0:
ThenI+360→U:
ElseI→U:
IfEnd:
IfW=-1:
ThenQ-(U-B)→V:
“X=”:
C+K*cos(V)→X⊿“Y=”:
D+K*sin(V)→Y⊿“Q=”:
Q-90*S2/(πA2)-90*J2/(πA2)→O⊿ElseIfW=1:
ThenQ+(U-B)→V:
“X=”:
C+K*cos(V)→X⊿“Y=”:
D+K*sin(V)→Y⊿“Q=”:
Q+90*S2/(πA2)-90*J2/(πA2)→O⊿IfEnd:
IfEnd:
T=0=>Goto4:
“XL=”:
X+Z[1]*cos(O-T)⊿“YL=”:
Y+Z[1]*sin(O-T)⊿“XR=”:
X+Z[2]*cos(O+T)⊿“YR=”:
Y+Z[2]*sin(O+T)⊿Goto4说明:
“A”为缓和曲线参数,W=-1时曲线左转,W=1时曲线右转。
“ZJ=”为左边距,“YJ=”为右边距,“PIANJIAO”为偏角,偏角输0时不计算边桩坐标。
输出:
(X,Y)为中桩坐标,“Q=”为所求点方位角,(XL,YL)为左边桩坐标,(XR,YR)为右边桩坐标。
六、竖曲线计算公式:
H=X2/(2R)程序:
“A”?
→A:
“H”?
→H:
“D”?
→D:
“T”?
→T:
“R”?
→R:
“I1”?
→U:
“I2”?
→V:
“K(ZHONG-DIAN)”:
D+T→B⊿“LY=”:
B-A→E⊿Lbl6:
“K”?
→K:
V>U=>1→G:
V<U=>-1→G:
IfK≤A:
ThenD-K→L:
H-LU→P:
IfEnd:
IfK>AAndK<D:
ThenK-A→L:
H-U(D-K)+GL2/(2R)→P:
IfEnd:
IfK>DAndK<B:
ThenB-K→L:
H+V(K-D)+GL2/(2*R)→P:
IfEnd:
IfK≥B:
ThenK-D→L:
“H(SHEJI)=”:
P⊿Goto6说明:
“A”为竖曲线起点桩号,“H”为起点高程,“D”为交点桩号,“T”为切线长,“R”为竖曲线半径,“I1”、“I2”为第一、二坡度。
输出:
“H(SHEJI)=”为设计高程。
注意的是:
计算范围不能超出到下一个竖曲线范围内。
卡西欧计算器FX-5800正反算、隧道超欠挖计算程序
正算主程序(ZS):
Lb10:
FIX4:
?
S:
?
Z:
Prog“PM-SJ”:
Abs(S-O)→W:
Prog"SUB1":
"XS=":
X◢"YS=":
Y◢F-90→F(需要时可以让他显示,不要时不必输入):
Prog“SQX-SJ”:
Prog“SQX”:
“H=”:
H◢Goto0
反算主程序(FS)
Lb10:
FIX4:
?
S:
?
X:
?
Y:
Prog“PM-SJ”:
X→I:
Y→J:
Prog"SUB2":
"S=":
O+W→S◢"Z=":
Z◢
Prog“SQX-SJ”:
Prog“SQX”:
“H=”:
H◢Goto0
隧道3心圆放样主程序(SD-3XY)
Lb10:
Prog“FS”:
1.5→A:
1.65→B:
0.89→G:
2.27→C:
3.3→D:
2.41→E:
0.51→J:
“H1”:
F:
ifF≤H+A:
thenE-AbsZ→W:
IfEnd:
ifF>H+AAndF≤H+A+B:
then√(D²-(F-H-A)²)-G-AbsZ→W:
IfEnd:
ifF>H+A+B:
then√(C²-(F-H-A-J)²)-AbsZ→W:
IfEnd:
“W=”:
W◢(水平方向的超欠挖:
正为欠,负为超)Goto0
正算子程序(SUB1)
1÷P→C:
(P-R)÷(2HPR)→D:
180÷π→E:
0.1739274226→A:
0.3260725774→B:
0.0694318442→K:
0.3300094782→L:
1-L→F:
1-K→M:
U+W(Acos(G+QEKW(C+KWD))+Bcos(G+QELW(C+LWD))+Bcos(G+QEFW(C+FWD))+Acos(G+QEMW(C+MWD)))→X:
V+W(Asin(G+QEKW(C+KWD))+Bsin(G+QELW(C+LWD))+Bsin(G+QEFW(C+FWD))+Asin(G+QEMW(C+MWD)))→Y:
G+QEW(C+WD)+90→F:
X+ZcosF→X:
Y+ZsinF→Y反算子程序(SUB2)
G-90→T:
Abs((Y-V)cosT-(X-U)sin(T))→W:
0→Z:
Lbl0:
Prog