卡西欧 5800程序

更新时间:2024-07-01 12:42:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

卡西欧FX5800全线贯通万能正、反算程序

时间:2010-01-27 23:56:25 来源:本站 作者:xdw_815101 我要投稿 我要收藏 投稿指南

FX5800计算器的积分程序(正反算、全线贯通、新线路)终极版 ZHUCHENGXU 主程序

\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=>Goto 2

Lbl 1 :“KM=,<0 Stop”?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:Fix 3

\,1,U:\,2,V:“FWJ=”:P?DMS◢ Norm 2: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:IF P-J>0:then -I→L:else I→L ifend

Goto 3: Whileend:H+Icos(J-P)→H:Goto Z Lbl 3:Cls:Fix 3

“KM=”: Locate 4,1,H:“PY=”: Locate 4,2,L◢ Norm 2:Cls:Goto 2 01(数据库子程序) If H<=第一曲线终点桩号: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。

高斯五线元法CASIO FX5800计算器任意线路中边桩正反算程序 中国中铁十局第二工程有限公司 作者:刘岩 KEYLOCK 锁键程序 可独立测试能正常运行 1 PRINT 可独立测试能正常运行 2

DAT-01 要素数据库文件 (请改为自己路线的要素) 3 ZS 坐标计算程序 4

MAIN 主程序、桩号、横距输入程序 5 FS 坐标反算程序 6

INPUT 实测坐标输入程序 7

如正确输入以上程序,运行MAIN,按“1”进行坐标反算,按“2”进行坐标正算。 程序名:MAIN

//:里程、横距输入程序:// Cls:Norm 1 7→DimZ

\ //输入桩号

\ //输入边桩距离,左负右正

\ //输入斜交右角,如计算垂直线路的边桩则默认输入为90 Cπ÷180→W Prog\Prog\

程序名:ZS坐标正算计算程序 Prog\Rad G-M→Q

0.5(R-A)÷L→K AQ→I KQ2→J

0.0469100770→P:H+IP+JP2→O 0.2307653449→P:H+IP+JP2→T 0.5→P:H+IP+JP2→D

0.7692346551→P:H+IP+JP2→F 0.9530899230→P:H+IP+JP2→P 0.1184634425→I 0.2393143352→J 0.2844444444→Y

N+Q(ICos(O)+JCos(T)+YCos(D)+JCos(F)+ICos(P))→X E+Q(ISin(O)+JSin(T)+YSin(D)+JSin(F)+ISin(P))→Y H+AQ+KQ2→F X+BCos(F+W)→X Y+BSin(F+W)→Y

文件名:FS(坐标反算) Prog\

0→B:M+L÷2→G:Prog\

LbL S:Rad U-X→I:V-Y→J

If I=0 And J=0 :Then Goto A:IfEnd Pol(I,J)

LbL A:Rec(I,J-F)

G+I→G:IF Abs(I)>0.0001 :Then Prog\:IfEnd:J→B

//文件名:INPUT实测坐标输入程序 LbLS

Norm 1:Cls X→U Y→V

\ //U输入待求点N坐标 \ //V输入待求点E坐标 Return

文件名:KEYLOCK

//本程序用于锁定键盘大部分按键,设定时间内无按键则反回默认健。只有“1”,“2”,这二个键可用,为了更方便说明程序,以后将分别定义这二个键为热键 1000→J LbL S 0→I

Do:I+1→I:I≥J=>Goto E:LpWhile Not(Getkey=35 Or Getkey=36 OrGetkey=37 OrGetkey=77 OrGetkey=73)

Getkey=73=>Stop //停止全部程序 Getkey=0=>Goto S Getkey→I:Return Lbl E 57→I

文件名:PRINT

//<主程序>,显示:桩号,N,E,B横向偏移。 热键功能

1快捷坐标反算 2快捷坐标正算

Z[1]→N 当前分段要素N坐标 Z[2]→E 当前分段要素E坐标 Z[3]→M 当前分段要素起点桩号

Z[4]→H 当前分段要素起点方位角(正北)单位:弧度

Z[5]→A 当前分段要素起点曲率有左偏负右偏正(注意不是半径) Z[6]→R 当前分段要素终点曲率有左偏负右偏正(注意不是半径) Z[7]→L 当前分段要素长度 LbL S:Cls

\\

\\Prog \

If I=35:Then Prog \定义1功能 If I=36:Then Prog \定义2功能 Goto S

//文件名:DAT-01 要素数据库文件 π÷180→J

If G<325598.325:Then Cls:Stop:IfEnd↙//判断待求桩号是否小于本要素起点,如小于就停止运行程序

If G≤325768.325(终点里程):Then 2935602.417(起点X)→N:515628.484(起点Y)→E:325598.325→M:131°47′4.62〃J(起点方位角)→H:0 (起点曲率左负右正)→A:1÷1800(终点曲率左负右正)→R:170(起点至终点长度)→L:Goto E:IfEnd↙

If G≤331072.783:Then

2935488.693→N:515754.843→E:325768.325→M:132°23′36.1870〃J→H:1÷8000→A:1÷8000→R:5304.458→L:Goto E:IfEnd↙ If G≤331072.783:Then

2935488.693→N:515754.843→E:325768.325→M:132°23′36.1870〃J→H:1÷8000→A:1÷8000→R:5304.458→L:Goto E:IfEnd↙ If G≤331242.783:Then

2930916.812→N:518248.696→E:331072.783→M:170°23′1.5683〃J→H:1÷8000→A:0→R:170→L:Goto E:IfEnd↙ If G≤331482.744:Then

2930749.004→N:518275.9058→E:331242.783→M:170°59′33.15〃J→H:0→A:0→R:293.961→L:Goto E:IfEnd↙ If G≤331822.744:Then

2930512.003→N:518313.475→E:331482.744→M:170°59′33.15〃J→H:0→A:-1÷4500→R:340→L:Goto E:IfEnd↙ If G≤332373.211:Then

2930176.914→N:518370.927→E:331822.744→M:168°49′41.0692〃J→H: -1÷4500→A:-1÷4500→R:550.466→L:Goto E:IfEnd↙ If G≤332713.211:Then

2929644.739→N:518510.305→E:332373.21→M:161°49′9.5566〃J→H: -1÷4500→A:0→R:340→L:Goto E:IfEnd↙

If G>331686.367:Then Cls:Stop:IfEnd↙//判断待求桩号是否大于本要素终点,如大于就停止运行程序 LbL E

N→Z[1]:E→Z[1]:M→Z[3]:H→[4]:A→Z[5]:R→Z[6]:L→Z[7] //记忆当前要素以免重复搜索

本文来源:https://www.bwwdw.com/article/m2c.html

Top