5800坐标高程计算程序
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
CASIO5800计算器
公路测量计算程序
程序设计:魏加训
2009.2.28
Casio 5800计算器数据库型万能坐标正反算计算程序
一、主程序:1XY
Lbl 0:“1.ZS 2.FS”?→V↙
If V=1: Then “CZ X” ?H: “CZ Y” ?T:Goto 1: Else If V=2: Then Goto 2 :IfEnd: IfEnd
↙
Lbl 1: “K××+×××”?D:?Z: “RJ”?G↙
Prog “P.Z”↙(注:计算另一线路时修改替换此处和FS子程序中的P.Z为对应线路的数据库名称即可)
Prog “ZS” ↙
If Z<0: Then Cls:“X(L)=”: “Y(L)=”: Locate 6,1,X : Locate 6,2,Y◢
Pol(X-H,Y-T): Cls: “S(L)=”: Locate 6,1,I : "F(L)=":360Frac((J+360)÷360▼DMS◢
Goto 1:IfEnd↙
If Z=0: Then Cls:“X(Z)=”: “Y(Z)=”: Locate 6,1,X : Locate 6,2,Y : “QXFWJ (Z)=”: 360Frac((J+360)÷360▼DMS◢
Pol(X-H,Y-T): Cls: “S(Z)=”: Locate 6,1,I : "F(Z)=":360Frac((J+360)÷360▼DMS◢
Goto 1:IfEnd↙
If Z >0: Then Cls:“X(R)=”: “Y(R)=”: Locate 6,1,X : Locate 6,2,Y◢
Pol(X-H,Y-T): Cls: “S(R)=”: Locate 6,1,I : "F(R)=":360Frac((J+360)÷360▼DMS◢
Goto 1:IfEnd↙
Lbl 2: 0→Z:0→G:”X” ?M:”Y” ?I:Prog “FS”: Cls:“K=”:“Z=”:Locate 4,1,D : Locate 4,2,Z◢
Goto 2↙
二、正算子程序:ZS
5→N: U(E-1-R-1)÷Abs(K-F)→P: Abs(D-F)÷N→Q: 90Q÷π→S:
(注:此处5→N是控制计算精度可修改的,一般取值为4~6即可)
C+(NPQ+2UR-1)NS→J:1→L↙
A+Q÷6×(Cos (C)+Cos (J) +4∑(Cos (C+((L+0.5)PQ+2UR-1)×(L+0.5)S),L,0,(N-1))+2∑(Cos (C+((LPQ+2UR-1)LS,L,1,(N-1)))+ZCos(J+G) →X :
B+Q÷6×(Sin(C)+Sin( J) +4∑(Sin (C+((L+0.5)PQ+2UR-1)×(L+0.5)S),L,0,(N-1))+2∑(Sin (C+((LPQ+2UR-1)LS,L,1,(N-1)))+Z Sin(J+G)→Y ↙
三、反算子程序:FS
Lbl 0:Prog “P.Z”:Prog “ZS”↙
(注:计算另一线路时修改替换此处和1XY主程序中的P.Z为对应线路的数据库名称即可)
(I-Y)sin(J)+(M-X) cos(J)→ P :D+P→ D ↙
If Abs(P)≥0.001:Then Goto 0 : Else Goto 1 : IfEnd↙
Lbl 1: (I-Y)cos(J)-(M-X) sin(J) →Z
四、曲线元要素数据库格式
If D≥线元起点里程:Then线元起点里程→F:线元终点里程→K:线元起点X坐标→A:线元起点Y坐标→B:线元起点切线方位角→C:线元起点半径→R:线元终点半径→E:线元转向(注:左-1,右+1,直线为0) →U: IfEnd↙
五、曲线元要素数据库样例:P.Z
If D≥***:Then***→F:***→K: ***→A: ***→B: ***→C: ***→R: ***→E: ***→U: IfEnd↙
If D≥***:Then***→F:***→K: ***→A: ***→B: ***→C: ***→R: ***→E: ***→U: IfEnd↙
If D≥***:Then***→F:***→K: ***→A: ***→B: ***→C: ***→R: ***→E: ***→U: IfEnd↙...............…………………………………………………………
If D≥***:Then***→F:***→K: ***→A: ***→B: ***→C: ***→R: ***→E: ***→U: IfEnd↙(注:如一条路有多个曲线元要素则按顺序排列依次添加入数据库P.Z中)
六、程序说明:
程序线元判断原则:
(1) 以道路中线的前进方向(即里程增大的方向)区分左右;
(2) 当所求点位于中线时,Z=0;当位于中线左侧时,Z取负值;当位于中线右侧时,Z取正值。
(3) 当线元为直线时,其起点、终点的曲率半径为无穷大,以10的45次代替输入×10x45。
(4) 当线元为圆曲线时,无论其起点、终点与什么线元相接,其曲率半径均等于圆弧的半径。
(5) 当线元为完整缓和曲线时,起点与直线相接时,曲率半径为无穷大,以10的45次代替输入
×10x45;与圆曲线相接时,曲率半径等于圆曲线的半径。终点与直线相接时,曲率半径为无穷大,
以10的45次代替输入×10x45;与圆曲线相接时,曲率半径等于圆曲线的半径。
(6) 当线元为非完整缓和曲线时,起点与直线相接时,曲率半径等于设计规定的值;与圆曲线相
接时,曲率半径等于圆曲线的半径。终点与直线相接时,曲率半径等于设计规定的值;与圆曲线
相接时,曲率半径等于圆曲线的半径。
七、输入与显示说明
1.ZS时
CZ X ? CZ Y? 输入置镜点即测站的X,Y坐标
K××+×××? 输入所求的桩号
Z ?输入所求点距中线的边距(在中线输零)
RJ?输入边桩时左右边桩连线与线路前进中线的右交角
X(L) 、X(Z) 、X(R)=×××计算得出的所求点的左、中、右X坐标
Y(L) 、Y(Z) 、Y(R)=×××计算得出的所求点的左、中、右Y坐标
QXFWJ(Z)= ×××计算得出所求点的中桩切线方位角
F(L) 、F(Z) 、F(R)= ×××计算得出置镜点到测点即左、中、右的方位角
S(L) 、S(Z) 、S(R)= ×××计算得出置镜点到测点即左、中、右的水平距离
2.FS时
X=×××输入所求点的X坐标
Y=×××输入所求点的Y坐标
K=×××计算得出求点所对应的里程
Z=×××计算得出求点到所对应的里程的垂直距离(负就是左边,正就是右边)