整理CASIO5800计算器公路竖曲线全线高程计算程序.docx

上传人:b****5 文档编号:8268923 上传时间:2023-01-30 格式:DOCX 页数:10 大小:21.42KB
下载 相关 举报
整理CASIO5800计算器公路竖曲线全线高程计算程序.docx_第1页
第1页 / 共10页
整理CASIO5800计算器公路竖曲线全线高程计算程序.docx_第2页
第2页 / 共10页
整理CASIO5800计算器公路竖曲线全线高程计算程序.docx_第3页
第3页 / 共10页
整理CASIO5800计算器公路竖曲线全线高程计算程序.docx_第4页
第4页 / 共10页
整理CASIO5800计算器公路竖曲线全线高程计算程序.docx_第5页
第5页 / 共10页
点击查看更多>>
下载资源
资源描述

整理CASIO5800计算器公路竖曲线全线高程计算程序.docx

《整理CASIO5800计算器公路竖曲线全线高程计算程序.docx》由会员分享,可在线阅读,更多相关《整理CASIO5800计算器公路竖曲线全线高程计算程序.docx(10页珍藏版)》请在冰豆网上搜索。

整理CASIO5800计算器公路竖曲线全线高程计算程序.docx

整理CASIO5800计算器公路竖曲线全线高程计算程序

CASIO5800计算器公路竖曲线全线高程计算程序

新增加的六个内容是:

风险评价;公众参与;总量控制;清洁生产和循环经济;水土保持;社会环境影响评价。

“SQXJSCX”↙

Lb1  1↙

CLs:

Fix  3↙

“K=”?

k◢    (计算点里程输入)

If  k<67549.755  AND  K≥66894.3:

Then  -0.00052→A:

0→B:

67394.3→S:

67.37→G:

600000→R:

Goto  2:

IfEnd↙

If  k<68708.391  AND  K≥67549.755:

Then  -0.0048→A:

-0.00052→B:

68494.3→S:

66.8→G:

100000→R:

Goto  2:

IfEnd↙

If  k<本段竖曲线终点里程  AND  K≥前一竖曲线终点里程:

Then  -0.0048→前坡(大里程向)A:

-0.00052→后坡(小里程向)B:

68494.3→竖曲线交点里程S:

66.8→交点高程G:

100000→曲率半径R:

Goto  2:

IfEnd↙

………

依次类推,计算原始数据完成输入,坡度换算成小数。

Lb1  2↙

S-K→L:

A-B→W:

Abs(R*W/2)→T:

S-T→C:

S+T→D↙

If  K≤C:

Then  G-L*B→H:

Goto5:

Else  If  K≤S:

Then  Goto3:

Else  If  K≤D:

Then  Goto4  :

IfEnd:

IfEnd:

IfEnd↙

3.政府部门规章

1.法律大纲要求Lb1  3↙

If  W>0:

Then  G+(C-K)^2/2/R-L*B→H  :

Goto5:

Else  IfW<0:

Then  G-(C-K)^2/2/R-L*B→H  :

Goto5:

IfEnd:

IfEnd↙

Lb1  4↙

If  W>0:

Then  G+(K-D)^2/2/R-L*A→H  :

Goto5:

Else  IfW<0:

Then  G-(K-D)^2/2/R-L*A→H  :

Goto5:

IfEnd:

IfEnd↙

(3)对环境影响很小、不需要进行环境影响评价的建设项目,填报环境影响登记表。

2)应用环境质量标准时,应结合环境功能区和环境保护目标进行分级。

1.直接市场评估法1  5↙

H-0.304→H↙    (0.304为中心~路肩高差)

“H=”:

H◢

Goto1↙

2.环境保护行政法规

除了房地产市场外,在不同职业和地点的工资差别中也可以发现类似的情形。

Norm1:

50→C:

12345→J

"RESETPW"?

I:

I=J=>500→DimZ  为数据库增加额外变量500个,在SET、SETPFDYS程序根据实际再增减变量

50→Z[C+22]

"PASSWORDS"?

I:

I→Z[C+39]      重设要素保护密码

Cls:

Stop

FileName:

DATLOCK      要素保护密码确定认程序

Cls:

Norm1:

50→C

"PASSWORDS"?

J:

Cls:

J≠Z[C+39]=>Stop    2008-08-07修改

FileName:

SHELL(外壳程序)

50→C            ;在扩充变量预留前50个给别的程序用。

如不够就适量加大。

RESET,SHELL,SET,SETPFDYS,这几个程序中C值必需一致

Z[C+35]→I:

"STATION-N"?

I:

I→Z[C+35]      设置测站N坐标

Z[C+36]→I:

"STATION-E"?

I:

I→Z[C+36]      设置测站E坐标

Z[C+44]→I:

"STATION-Z"?

I:

I→Z[C+44]   设置测站Z坐标

Z[C+45]→I:

"STATION-HI"?

I:

I→Z[C+45]    设置仪高

Z[C+41]→I:

"GC-DH"?

I:

I→Z[C+41]    放样点高差常数

Norm1

Z[C+23]→N 当前分段要素N坐标

Z[C+24]→E 当前分段要素E坐标

Z[C+25]→M 当前分段要素起点桩号

Z[C+26]→H 当前分段要素起点方位角(正北)单位:

弧度

Z[C+27]→A 当前分段要素起点曲率有左偏负右偏正(注意不半径)

Z[C+28]→R 当前分段要素终点曲率有左偏负右偏正(注意不半径)

Z[C+29]→L 当前分段要素长度

Z[C+3]→W

Z[C+32]→I:

"DAT123"?

I:

I→Z[C+32]  平曲线要素数库类型选择1为内置式,2文件式,3实时输入(查看当前要素值)

0→I

Z[C+4]→I:

"123"?

I:

I→Z[C+4]  选择本程序模式默认为坐标正算,1坐标反算,2横向边仰坡放样,3,纵向边仰坡放样(隧道进出口用到)

Lbi1

Z[C+4]→I

I=1=>Prog"TURNZH"

I=2=>Prog"HXBYP"

I=3=>Prog"ZXBYP"

LbiA

Deg:

Norm1:

Cls

Z[C+1]→G:

"ZH"?

G:

G→Z[C+1]    ;G桩求桩号

Z[C+2]→B:

"JL"?

B:

B→Z[C+2]    ;B横向距离,左正右负

LbiB

Prog"ZBJS"    ;坐标正算

Prog"GCJS"    ;高程计算

Fix3:

Cls           ;设置三位小数

"ZH=":

Locate4,1,G    ;第一行显示桩号

"X=":

Locate3,2,X  ;第二行显示X(N)坐标

"Y=":

Locate3,3,Y    ;第三行显示Y(E)坐标

Prog"GCJS"    ;高程计算

"Z":

Locate2,4,Z+Z[C+41]    ;第四行显示Z坐标

Locate10,4,Z[C+2]        ;第四行显示横向距离

0→I

Do:

I+1→I:

I=1000=>Goto1:

LpWhileNot(Getkey=57OrGetkey=27);锁定键盘,并在几十秒后自动返回

Getkey=57=>Goto1

Z+Z[C+41]+Z[C+49]-Z[C+44]-Z[C+45]→Z[C+48]

Pol(Z[C+35]-X,Z[C+36]-Y)

Cls:

"DL":

Locate3,1,I:

Locate12,1,Z[C+45]

"DH":

Locate3,2,Z[C+48]:

Locate12,2,Z[C+49]

"FWJ"

J<0=>J+360→J:

J◤DMS◢  2008-08-07修改

J→Z[C+46]

I→Z[C+47]

Goto1

FileName:

ZBJS  坐标计算程序

Prog"READDAT"

Rad

G-M→Q

IFAR=0:

ThenIfA=R:

Then1→J:

Else3→J:

IfEnd:

ElseIfA=R:

Then2→J:

Else3→J:

IfEnd:

IfEnd

IfJ=1:

ThenH→F:

N+QCos(H)→X:

E+QSin(H)→Y:

IfEnd  直线段直接计算

IfJ=2:

ThenH+QR→F:

Rec(Abs(2Sin(Abs(0.5QR))÷R),H+QR÷2):

N+I→X:

E+J→Y:

IfEnd  圆弧段直接计算

IfJ=3:

ThenGoto5:

IfEnd

X+BCos(F+W)→X

Y+BSin(F+W)→Y

Deg:

Return

Lbi5    用五点通用坐标计算计算缓和段

0.5(R-A)÷L→K

AQ→I

KQ2→J

0.0469100770→P:

H+IP+JP2→U

0.2307653449→P:

H+IP+JP2→V

0.5→P        :

H+IP+JP2→D

0.7692346551→P:

H+IP+JP2→F

0.9530899230→P:

H+IP+JP2→T

0.1184634425→I

0.2393143352→J

0.2844444444→O

N+Q(ICos(U)+JCos(V)+OCos(D)+JCos(F)+ICos(T))→X

E+Q(ISin(U)+JSin(V)+OSin(D)+JSin(F)+ISin(T))→Y

H+AQ+KQ2→F

X+BCos(F+W)→X

Y+BSin(F+W)→Y

Deg:

Return

FileName:

TURNZH(坐标反算)

Norm1

Z[C+37]→I:

"DQD-N"?

I:

I→Z[C+37]    输入待求点N坐标

I=-1=>Prog"INFWJDLDH"

Z[C+38]→I:

"DQD-E"?

I:

I→Z[C+38]    输入待求点E坐标

0→B:

M+L÷2→G:

Prog"ZBJS"

LbiS:

Rad

Z[C+37]-X→I:

Z[C+38]-Y→J

IfI=0AndJ=0:

ThenGotoA:

IfEnd

Pol(I,J)

LbiA:

Rec(I,J-F):

J→Z[C+2]

G+I→G:

IFAbs(I)>0.0001:

ThenProg"ZBJS":

GotoS↙    

G→Z[C+1]

FileName:

INFWJDLDH   实测坐标(用方位角,距离,高差)输入程序

Deg:

Norm1:

Cls

Z[C+46]→J:

"DQD-FWJ"?

J:

J→Z[C+46]

Z[C+47]→I:

"DQD-DL"?

I:

I→Z[C+47]

Z[C+48]→K:

"DQD-DZ"?

K:

K→Z[C+48]

Z[C+49]→P:

"RHT"?

P:

P→Z[C+49]

Rec(I,J)

Z[C+35]+I→Z[C+37]

Z[C+36]+J→Z[C+38]

Z[C+44]+Z[C+45]+K-P→Z[C+43]

FileName:

HXBYP  横向边仰坡放样程序

Cls:

Norm1

Z[C+40]→I:

"QPD-DL"?

I:

I→Z[C+40]    输入起坡点与中桩距离常数

Z[C+41]→I:

"QPD-DZ"?

I:

I→Z[C+41]      输入起坡点与中桩高差常数

Z[C+42]→I:

"i"?

I:

I→Z[C+42]            输入边仰坡坡度,左仰坡(路堑)为正,右仰坡(路堑)为负,左边坡为负,右边坡为正

Cls:

Z[C+43]→I:

"DQD-Z"?

I:

I→Z[C+43]    输入实测高程

Prog"TURNZH"

Prog"GCJS"

(Z[C+43]-Z-Z[C+41])Z[C+42]+Z[C+40]→B

Fix3:

B-Z[C+2]◢显示与上一次测点的偏差

B→Z[C+2]

FileName:

ZXBYP  纵向仰坡放样程序(隧道进口使用)

Cls:

Norm1:

Z[C+33]→I:

"QPD-ZH"?

I:

I→Z[C+33]    输入起坡点桩号

Z[C+34]→I:

"QPD-Z"?

I:

I→Z[C+34]      输入起坡点高程

Z[C+42]→I:

"i"?

I:

I→Z[C+42]            仰坡时(隧道进出口仰坡),进口为正,出口为负)

Cls:

Z[C+43]→I:

"DQD-Z"?

I:

I→Z[C+43]    输入实测高程

Prog"TURNZH"

Z[C+42](Z[C+43]-Z[C+34])+Z[C+33]→G

Fix3:

G-Z[C+1]◢显示与上一次测点的偏差

G→Z[C+1]

FileName:

SET设置程序

1\LbiS

2\Norm1

3\50→C

4\50→Z[C+22]

5\0→K

6\Z[C+5]→I:

"1Or2"?

I:

I→Z[C+5]  ;选择1线或者2线

7\180Z[C+3]÷π→J:

"XZJJ"?

J:

Jπ÷180→Z[C+3]      ;斜桩夹角

8\IfI=1:

ThenZ[C+8]→Z[C+6]:

Z[C+9]→Z[C+7]

9\Z[C+12]→Z[C+16]:

Z[C+13]→Z[C+17]:

Z[C+18]→Z[C+20]

10\ElseZ[C+10]→Z[C+6]:

Z[C+11]→Z[C+7]

11\Z[C+14]→Z[C+16]:

Z[C+15]→Z[C+17]:

Z[C+19]→Z[C+20]

12\IfEnd  

13\Z[C+7]+3→Z[C+31]

14\0→I:

"1PQX,2SQX,3YSDS"?

I  ;1输入平曲线要素,2输入竖曲线要素,3输入1、2线夹平竖曲线交点(变坡点)数量以让程序规划内存建立要素数据为,其它值退出本程序

15\I≠0=>Prog"DATLOCK"            2008-07-2818:

23修改

16\I=1=>Goto1:

I=2=>Goto2:

I=3=>Goto3  2008-07-2818:

23修改

17\Prog"SETPFDYS"

18\Stop

19\Lbi1                 ;平曲线要素输入部分

20\Z[C+6]→D

21\-1→Z[D+3]

22\For1→JToZ[C+16]

23\Cls:

"PQX":

Locate9,1,J

24\Z[D+1]→I:

"N"?

I:

I→Z[D+1]      ;请输入N坐标

25\Z[D+2]→I:

"E"?

I:

I→Z[D+2]  ;请输入E坐标

26\Z[D+3]→I:

"R"?

I:

I→Z[D+3]      ;请输入半径R

27\Z[D+4]→I:

"LS1"?

I:

I→Z[D+4]  ;请输入缓和曲线1长度

28\Z[D+5]→I:

"LS2"?

I:

I→Z[D+5]        ;请输入缓和曲线2长度

29\D+5→D

30\Next

31\1→Z[D-2]

32\GotoS

33\Lbi2                              ;竖曲线要素输入部分

34\Z[C+7]→D

35\-1→Z[D+3]

36\For1→JToZ[C+17]

37\Cls:

"SQX":

Locate9,1,J

38\Z[D+1]→I:

"BPDZH"?

I:

I→Z[D+1]    ;请输入变坡点桩号    2008-08-07修改

39\Z[D+2]→I:

"BPDGC"?

I:

I→Z[D+2]  ;请输入变坡点高程    2008-08-07修改

40\Z[D+3]→I:

"R"?

I:

I→Z[D+3]        ;请输入半径R    2008-08-07修改

41\D+3→D

42\Next

43\1→Z[D]

44\GotoS

45\Lbi3                            ;要素点数输入部分

46\Z[C+12]→I:

"1PQXDS"?

I:

I→Z[C+12]  ;输入1线平曲线点数,最小值为3

47\Z[C+13]→I:

"1SQXDS"?

I:

I→Z[C+13]  ;输入1线竖曲线点数,最小值为3

48\Z[C+18]→I:

"1JDZH"?

I:

I→Z[C+18]    ;输入1线平曲线第一个交点的交点桩号

49\Z[C+14]→I:

"2PQXDS"?

I:

I→Z[C+14]  ;输入2线平曲线点数,最小值为3

50\Z[C+15]→I:

"2SQXDS"?

I:

I→Z[C+15]  ;输入2线竖曲线点数,最小值为3

51\Z[C+19]→I:

"2JDZH"?

I:

I→Z[C+19]  ;输入2线平曲线第一个交点的交点桩号

52\C+Z[C+22]→Z[C+8]              1线路平曲线要素指针偏移基数

53\Z[C+8]+5Z[C+12]→Z[C+9]              1线路竖曲线要素指针偏移基数

54\Z[C+9]+3Z[C+13]→Z[C+10]        2线路平曲线要素指针偏移基数        

55\Z[C+10]+5Z[C+14]→Z[C+11]      2线路竖曲线要素指针偏移基数

56\Z[C+11]+3Z[C+15]→Z[C+21]    要素数据库结束指针

57\Z[C+21]+1→Z[C+30]

58\Z[C+21]→DimZ                增加额外变量

59\-1→K

60\GotoS

FileName:

SETPFDYS  交点要素=>分段要素

1\Norm1

2\50→C

3\Rad

4\Z[C+6]+5→D

5\Z[C+21]+1→F

6\F+6→DimZ

7\-1→Z[F]          设置分段要素开始标志

8\Z[C+20]→V        ;从数据库读入当前线第一个平曲线交点桩号

9\0→G

10\Pol(Z[D+1]-Z[D-4],Z[D+2]-Z[D-3])  ;计算第一条直线的距离I,计算方位角J

11\J→H 

12\Z[D-4]→Z[F+1]          直线段

13\Z[D-3]→Z[F+2]

14\V-I→Z[F+3]

15\For1→GToZ[C+16]-2  

16\Pol(Z[D+1]-Z[D-4],Z[D+2]-Z[D-3])   ;计算第本交点与下一交点的距离I,计算方位角J

17\J→H      2008-08-07修改

18\Pol(Z[D+6]-Z[D+1],Z[D+7]-Z[D+2])

19\I→W:

J-H→K                        ;计算转角K,负值是左转角,正值是右转角  2008-08-07修改

20\IFAbs(K)>π:

ThenIfK>0:

ThenK-2π→K:

ElseK+2π→K:

IfEnd:

IfEnd

21\Z[D+3]→R  ;从数据库读入半径R

22\Z[D+4]→L  ;从数据库读入缓和曲线1长度

23\Z[D+5]→M  ;从数据库读入缓和曲线2长度

24\L÷2÷R→B  ;计算缓和曲线1的B0角

25\M÷2÷R→O  ;计算缓和曲线2的B0角

26\(Abs(K)-B-O)R→P  ;计算圆曲线长度

27\L2÷24÷R-L^(4)÷2384÷R^(3)→Q      ;内移值计算方法2

28\L÷2-L^(3)÷240÷R2→S    ;切线增长值计算方法2

29\M2÷24÷R-M^(4)÷2384÷R^(3)→J      ;内移值计算方法2

30\M÷2-M^(3)÷240÷R2→I    ;切线增长值计算方法2

31\Abs(π÷2-Abs(K))→A

32\Rtan(Abs(K÷2))+S+J÷Cos(A)-QTan(A)→T ;计算切线1

33\Rtan(Abs(K÷2))+I+Q÷Cos(A)-JTan(A)→U ;计算切线2

34\H<0=>H+2π→H

35\1→A

36\K<0=>-1→A

37\H→Z[F+4]

38\0→Z[F+5]

39\0→Z[F+6]

40\F+6→F

41\F+6→DimZ

42\Rec(T,H)        缓和段1

43\Z[D+1]-I→N

44\Z[D+2]-J→E

45\N→Z[F+1]

46\E→Z[F+2]

47\V-T→Z[F+3]

48\L=0=>GotoA

49\H→Z[F+4]

50\0→Z[F+5]

51\A÷R→Z[F+6]

52\F+6→F

53\F+6→DimZ

54\LbiA          圆弧段

55\0→I:

0→J

56\L=0=>GotoB

57\Pol(L-L^(3)÷40÷R2,L2÷6÷R-L^(4)÷336÷R^(4))

58\LbiB

59\Rec(I,H+AJ)

60\N+I→N

61\E+J→E

62\N→Z[F+1]

63\E→Z[F+2]

64\V-T+L→Z[F+3]

65\H+AB→Z[F+4]

66\A÷R→Z[F+5]

67\A÷R→Z[F+6]

68\F+6→F

69\F+6→DimZ

70\M=0=>GotoC        缓和段2

71\Rec(2RSin(0.5P÷R),H+AB+AP÷R÷2)

72\N+I→N

73\E+J→E

74\N→Z[F+1]

75\E→Z[F+2]

76\V-T+L+P→Z[F+3]

77\H+AB+AP÷R→Z[F+4]

78\A÷R→Z[F+5]

79\0→Z[F+6]

          此处删除2008-08-06修改

80\F+6→F

81\F+6→DimZ

82\LbiC          此处插入2008-08-06修改

83\Rec(U,H+K)      

84\Z[D+1]+I→Z[F+1]        此处2008-08-07修改

85\Z[D+2]+J→Z[F+2]        此处2008-08-07修改

86\V-T+L+P+M→Z[F+3]

87\V-T+L+P+M-U+W→V        此处2008-08-07修改

88\D+5→D

89\Next

90\H+K→Z[F+4]

91\0→Z[F+5]

92\0→Z[F+6]

93\F+9→DimZ

94\1→Z[F+7]

95\V→Z[F+9]  要素终点桩号

96\Deg

FileName:

READDAT

Z[C+32]→I

I=3=>Prog"READDAT3"

If GM+L  :

Then;验证要素是否可用,否则重设要素

I=1=>Prog"READDAT1"

I=2=>Prog"READDAT2"

Prog"REALDAT3"  

IfEnd

FileName:

READDAT1平曲线分段要素读取程序1

Z[C+30]→F

0→J

Lbi1          搜索要素

IfG

Then

-1=Z[F]=>GotoE:

F-6→F:

-1→J:

Goto1

Else1=Z[F+1]=>GotoE:

-1=J=>Goto2:

1→J:

F+6→F:

Goto1

IfEnd

Lbi2

F→Z[C+30]

Z[F+1]→Z[C+23] 当前分段要素N坐标

Z[F+2]→Z[C+24] 当前分段要素E坐标

Z[F+3]→Z[C+25] 当前分段要素起点桩号

Z[F+4]→[C+26] 当前分段要素起点方位角(正北)

Z[F+5]→Z[C+27] 当前分段要素起点曲率有左偏负右偏正(注意不半径)

Z[F+6]→Z[C+28]  当前分段要素终点曲率有左偏负右偏正(注意不半径)

Z[F+9]-Z[F+3]→Z[C+29]  当前分段要素长度

Return

LbiE

Cls

"ERROR"

Stop

READDAT2 文件请输入内容为以下内容以便测试结果与本文一致。

π÷180→J

Goto1

Lbi1

IfG<30008.396:

ThenCls:

Stop:

IfEnd↙;判断待求桩号是否小于本要素起点,如小于就停止运行程序

IfG<30661.038(终点里程):

Then2

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 农林牧渔 > 林学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1